Changeset 6550
- Timestamp:
- Dec 22, 2017, 2:28:53 PM (3 years ago)
- Location:
- classroom-assembly/trunk/fuentes
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
classroom-assembly/trunk/fuentes/classroom-assembly/src/components/weekday/weekday.css
r6494 r6550 133 133 134 134 .weekdayConfigRow{ 135 border: 1px solid #cccccc;135 /*border: 1px solid #cccccc;*/ 136 136 border-radius: 2px; 137 137 margin-bottom: 5px; 138 opacity: 0.3; 139 filter: grayscale(80%); 138 140 } 139 141 … … 143 145 } 144 146 145 .weekdayConfigRow.weekdayStatusActive:after{ 146 background-image: url("../../css/images/icons/check.png"); 147 148 .weekdayConfigRow.weekdayStatusActive{ 149 filter: grayscale(0%); 150 opacity: 1; 151 } 152 153 /*.weekdayConfigRow.weekdayStatusActive:after{ 154 / *background-image: url("../../css/images/icons/check.png");* / 155 background-image: url("../../css/images/icons/eye.png"); 147 156 background-size: 24px 24px; 148 157 background-position: center; … … 155 164 margin-top: -12px; 156 165 right: 10px; 166 }*/ 167 168 169 .configureComponentButton{ 170 background-image: url("../../css/images/icons/options.png"); 171 width: 32px; 172 height:32px; 173 background-position: center; 174 margin-top:12px; 175 background-size: cover; 157 176 } 158 177 159 178 160 161 -
classroom-assembly/trunk/fuentes/classroom-assembly/src/components/weekday/weekday.js
r6494 r6550 285 285 for (var weekday in self.config){ 286 286 var configRow=$(document.createElement("div")).addClass("weekdayConfigRow").addClass("col-md-4 col-md-offset-4").attr("weekday_data", weekday); 287 288 /**/ 289 var configRowDay=$(document.createElement("div")).addClass("col-md-10").attr("weekday_data", weekday); 290 287 291 if (self.config[weekday]) $(configRow).addClass("weekdayStatusActive"); 288 292 … … 290 294 291 295 var icon=$(document.createElement("div")).addClass(weekday).addClass("weekdayConfigIcon modifyable").attr("title", i18n.gettext("click.change.img")); 296 292 297 var text=$(document.createElement("div")).html(weekdayText).addClass("weekdayConfigText"); 293 298 /*var selected=$(document.createElement("input")).attr("type","checkbox");*/ 294 299 295 $(configRow).append(icon); 296 $(configRow).append(text); 300 var iconConfigBt=$(document.createElement("div")).addClass("configureComponentButton col-md-1").attr("title", i18n.gettext("click.set.actions")).attr("weekday", weekday).attr("actions",""); 301 302 /**/ 303 $(configRowDay).append(icon); 304 $(configRowDay).append(text); 305 $(configRow).append(configRowDay); 306 $(configRow).append(iconConfigBt); 307 297 308 /*$(configRow).append(selected);*/ 298 309 $(input).append(configRow); … … 309 320 else $(this).addClass("weekdayStatusActive"); 310 321 }); 322 323 $(".configureComponentButton").on("click", function (event) { 324 event.stopPropagation(); 325 event.preventDefault(); 326 //console.log($(event.target).parent().attr("weekday_data")); 327 var weekday=$(event.target).attr("weekday"); 328 console.log(self.config[weekday]); 329 if (self.hasOwnProperty("actions")) 330 self.showConfigActions(weekday); 331 }); 311 332 312 333 // Calling to parent class method to bind click event on icon for change its image … … 330 351 }; 331 352 353 354 weekdayComponentClass.prototype.createFormRadios=function createFormRadios(data){ 355 356 357 var ret=$(document.createElement("div")).addClass("custom-controls-stacked"); 358 var legend=$(document.createElement("legend")).html(data.name); 359 360 $(ret.append(legend)); 361 362 for (radio in data.radios){ 363 console.log(data.radios[radio].id); 364 365 // WIP 366 // https://getbootstrap.com/docs/4.0/components/forms/#default-stacked 367 var div=$(document.createElement("div")).addClass("form-check"); 368 var input=$(document.createElement("input")).attr("id", data.radios[radio].id).attr("type","radio").attr("name", data.name).addClass("form-check-input"); 369 var label=$(document.createElement("label")).addClass("form-check-label"); 370 var spanlabel=$(document.createElement("span")).html(data.radios[radio].label).css("margin-left", "20px"); 371 372 var divtext=$(document.createElement("div")).addClass("col-md-8 col-md-offset-2"); 373 var labeltext=$(document.createElement("span")).addClass("col-md-4").html("Text"); 374 var text=$(document.createElement("input")).attr("type", "text").addClass("col-md-6"); 375 $(divtext).append(labeltext, text); 376 377 378 $(label).append(input, spanlabel); 379 $(div).append(label, divtext); 380 $(ret).append(div); 381 } 382 383 return ret; 384 385 } 386 387 weekdayComponentClass.prototype.showConfigActions=function showConfigActions(weekday){ 388 389 var self=this; 390 // WIP: Construir-ho com a javascript per poder posar les traduccions 391 // Mirar també els laber for i tal de bootstrap i els form-control... 392 393 //var input=""; 394 /*var form=document.createElement("div"); 395 var hdr1=$(document.createElement("h3")).html(i18n.gettext("actions.on.show")); 396 $(form).append(hdr1);*/ 397 398 var form; 399 var input=""; 400 401 form=self.createFormRadios({ 402 "name":"Action.on.show", 403 "radios":{ 404 "r1":{ 405 "id": "speakOnShow", 406 "type": "text", 407 "label": "Speak" 408 }, 409 "r2":{ 410 "id": "playOnShow", 411 "type": "file", 412 "label": "Play" 413 } 414 } 415 }); 416 417 /*var row1=$(document.createElement("div")).addClass("col-md-8 col-md-offset-2"); 418 var colShowSpeakRadio=$(document.createElement("div")).addClass("col-md-5"); 419 420 var label4inputShowSpeakRadio=$(document.createElement("label")).attr("for", "inputRadioOnShowSpeak").html("label.speak"); 421 422 var colShowSpeakText=$(document.createElement("div")).addClass("col-md-4"); 423 var inputShowSpeakRadio=$(document.createElement("input")).attr("type", "radio").attr("value", "speak").attr("id", "inputRadioOnShowSpeak"); 424 var inputTextOnShowSpeak=$(document.createElement("input")).attr("type", "text").attr("value", "aci el text").attr("id", "inputTextOnShowSpeak").addClass("col-md-4"); 425 $(colShowSpeakRadio).append(inputShowSpeakRadio, label4inputShowSpeakRadio); 426 $(colShowSpeakText).append(inputTextOnShowSpeak); 427 $(row1).append(colShowSpeakRadio, colShowSpeakText); 428 $(form).append(row1); 429 */ 430 431 432 433 console.log(form); 434 input=input+form.prop("outerHTML"); 435 436 437 438 //var row1=$(document.createElement("div")); 439 440 /*input='<h3>Actions on show</h3>\<div class="row" style="width: 60%">' 441 +'<div class="col-md-4"><input class="form-control" type="radio" name="onshow" value="speak" id="inputRadioOnShowSpeak"> Speak </div>' 442 +'<div class="col-md-4"><input type="text" value="text" id="inputTextOnShowSpeak"/></div></div>' 443 +'<div class="row" style="width: 60%">' 444 +'<div class="col-md-4"><input type="radio" name="onshow" value="audio" id="inputRadioOnShowAudio"> Audio</div>' 445 +'<div class="col-md-4"><input type="file" value="bb" id="inputFileOnShow"/></div></div>' 446 +'<div>Media player</div>' 447 +'<div class="row" style="width: 60%">' 448 +'<div class="col-md-4"><input type="radio" name="onplay" value="audio" id="inputRadioOnPlayAudio"> Audio File</div>' 449 +'<div class="col-md-4"><input type="file" value="bb" id="inputOnPlayAudio"/></div></div>' 450 +'<div class="row" style="width: 60%">' 451 +'<div class="col-md-4"><input type="radio" name="onplay" value="video" id="inputRadioOnPlayVideo"> Video File</div>' 452 +'<div class="col-md-4"><input type="file" value="bb" id="inputOnPlayVideo"/></div></div>' 453 +'<div class="row" style="width: 60%">' 454 +'<div class="col-md-4"><input type="radio" name="onplay" value="youtube" id="inputRadioOnPlayYoutube">Youtube Resource</div>' 455 +'<div class="col-md-4"><input type="text" value="text" id="inputOnPlayYoutube"/></div></div>'; 456 */ 457 458 459 460 vex.dialog.open({ 461 message: i18n.gettext(weekday), 462 input: input, 463 showCloseButton: true, 464 escapeButtonCloses: true, 465 /*buttons: {},*/ 466 overlayClosesOnClick: true, 467 callback: function(data){ alert("done"); } 468 }); 469 470 471 }; 472 473 474 332 475 weekdayComponentClass.prototype.getPlayableContent=function getPlayableContent(){ 333 476 var self=this; … … 335 478 var item=$(document.createElement("div")).addClass("PlayableContent"); 336 479 337 338 480 var toptext=$(document.createElement("div")).html(i18n.gettext("today is")).css("text-align","center").css("top", "0px").attr("fontzoom", "1.2").addClass("textfluid").css("z-index","1001").css("position", "absolute"); 339 481 var icon=$(document.createElement("div")).addClass(self.info.weekday+" playBigIcon"); … … 341 483 342 484 try{ 343 console.log("getting action: "+self.actions[self.info.weekday].onshow.action); 344 if(self.actions[self.info.weekday].onshow.action=="speech") { 485 console.log("Actions.."); 486 487 // pastafangà starts here 488 489 490 var defaultonshow=""; 491 var defaultonshowcontent=""; 492 var defaultonplay=""; 493 var defaultonplaycontent=""; 494 var defaultonplaytype=""; 495 496 /*console.log("1 "+self.hasOwnProperty("actions")); 497 console.log(self.actions[self.info.weekday]); 498 console.log(self.actions[self.info.weekday].onshow); 499 console.log("4 "+self.actions[self.info.weekday].onshow.action);*/ 500 501 502 503 if(self.hasOwnProperty("actions")){ 504 // actions is defined 505 506 // Setting default on show behaviour 507 if (typeof(self.actions.default!="undefined")) 508 { 509 defaultonshow=self.actions.default.onshow.action; 510 511 if(self.actions.default.onshow.action=="speech") { 512 console.log("DEFAULT ACTION IS SPEECH..."); 513 // Is content defined? 514 if (self.actions.default.onshow.content!==undefined && 515 self.actions.default.onshow.content!=="") 516 { defaultonshowcontent=self.actions.default.onshow.content; } 517 else {defaultonshowcontent=i18n.gettext("today is")+" "+i18n.gettext(self.info.weekday);} 518 } else { // action is not speech 519 defaultonshowcontent=self.actions.default.onshow.content; 520 } 521 522 // Setting default on play 523 defaultonplay=self.actions.default.onshow.action; 524 525 if(self.actions.default.onplay.action=="sound" || 526 self.actions.dedault.onplay.action=="video") { 527 528 if (self.actions.default.onplay.source!==undefined && 529 self.actions.default.onplay.source!=="") 530 { 531 defaultonplay=self.actions.default.onplay.action; 532 defaultonplaycontent=self.actions.default.onplay.source; 533 defaultonplaytype=self.actions.default.onplay.type; 534 } 535 } 536 } 537 538 539 540 /* Setting behaviour for component */ 541 542 // On Show 543 if (self.actions.hasOwnProperty(self.info.weekday)){ 544 if(typeof(self.actions[self.info.weekday].onshow.action)!=="undefined" && 545 (self.actions[self.info.weekday].onshow.action!=="default")) { 546 // Si hi ha acció definida per al dia de la setmana 547 if(self.actions[self.info.weekday].onshow.action=="speech") { 548 // Is content defined? 549 if (self.actions[self.info.weekday].onshow.content!==undefined && 550 self.actions[self.info.weekday].onshow.content!=="") 551 {$(item).attr("tts", self.actions[self.info.weekday].onshow.content);} 552 else {$(item).attr("tts", i18n.gettext("today is")+" "+i18n.gettext(self.info.weekday));} 553 } else { // action is not speech 554 $(item).attr("audiofile",self.actions[self.info.weekday].onshow.content ); 555 } 556 }} else{ 557 // No hi ha acció definida per al dia de la setmana, agafem els valor per defecte 558 console.log("Setting up default actions for show..."); 559 if (defaultonshow=="speech") {$(item).attr("tts", defaultonshowcontent);} 560 else {$(item).attr("audiofile", defaultonshowcontent);} 561 } 562 563 564 // On Play 565 if (self.actions.hasOwnProperty(self.info.weekday)){ 566 if(self.actions[self.info.weekday].onplay.action=="sound" || self.actions[self.info.weekday].onplay.action=="video") { 567 // Is content defined? 568 if (self.actions[self.info.weekday].onplay.source!==undefined && 569 self.actions[self.info.weekday].onplay.source!=="") 570 {$(item).attr("playmediasource", self.actions[self.info.weekday].onplay.source); 571 $(item).attr("playmediaaction", self.actions[self.info.weekday].onplay.action); 572 $(item).attr("playmediatype", self.actions[self.info.weekday].onplay.type); 573 } 574 }} else{ 575 // Action is default or is undefined 576 console.log(defaultonplay); 577 console.log(defaultonplaycontent); 578 console.log(defaultonplaytype); 579 if (defaultonplay!==""){ 580 $(item).attr("playmediasource", defaultonplaycontent); 581 $(item).attr("playmediaaction", defaultonplay); 582 $(item).attr("playmediatype", defaultonplaytype); } 583 } 584 585 586 } 587 588 // pastafangà ends here 589 590 /*if(self.actions[self.info.weekday].onshow.action=="speech") { 345 591 console.log("action is speech"); 346 592 // Is content defined? … … 351 597 } else { 352 598 $(item).attr("audiofile",self.actions[self.info.weekday].onshow.content ); 353 } 354 355 356 console.log("getting action: "+self.actions[self.info.weekday].onplay.action);599 }*/ 600 601 602 /* console.log("getting action: "+self.actions[self.info.weekday].onplay.action); 357 603 if(self.actions[self.info.weekday].onplay.action=="sound" || self.actions[self.info.weekday].onplay.action=="video") { 358 604 console.log("action is play media"); … … 364 610 $(item).attr("playmediatype", self.actions[self.info.weekday].onplay.type); 365 611 } 366 } 612 }*/ 367 613 368 614 -
classroom-assembly/trunk/fuentes/classroom-assembly/src/js/main.js
r6494 r6550 203 203 204 204 $(closebutton).on("click", function(){ 205 /*console.log($("#youtubeplayer").css("display")); 206 console.log($("#mediaplayer").css("display")); 207 console.log($("#youtubeplayer")); 208 console.log($("#mediaplayer"));*/ 205 209 206 210 if ($("#youtubeplayer").css("display")!=="none") … … 209 213 $("#youtubeplayer").remove(); 210 214 }); 211 else if ($("#mediaplayer").css("display")!=="none") 215 216 if ($("#mediaplayer").css("display")!=="none") 212 217 $("#mediaplayer").fadeOut(function(){ 213 218 $("#mediaplayer").remove(); -
classroom-assembly/trunk/fuentes/classroom-assembly/src/locale/ca_ES.UTF-8.json
r6424 r6550 30 30 "sunday":"Diumenge", 31 31 "click.change.img":"Feu click per canviar la imatge", 32 "click.set.actions":"Feu clic per configurar les accions", 32 33 33 34 "month.component.title":"En quin mes estem?", -
classroom-assembly/trunk/fuentes/classroom-assembly/src/locale/en_US.UTF-8.json
r6424 r6550 30 30 "sunday":"Sunday", 31 31 "click.change.img":"Click to change image", 32 "click.set.actions":"Clic to configure actions", 32 33 33 34 "month.component.title":"In wich month we are?", -
classroom-assembly/trunk/fuentes/classroom-assembly/src/locale/es_ES.UTF-8.json
r6424 r6550 30 30 "sunday":"Domingo", 31 31 "click.change.img":"Clic para cambiar la imagen", 32 "click.set.actions":"Clic para configurar acciones", 32 33 33 34 "month.component.title":"¿En qué mes estamos?", -
classroom-assembly/trunk/fuentes/config_examples/oo/config.json
r6494 r6550 60 60 "componentdata": "{\"weekday\":\"monday\"}", 61 61 "componentconfig": "{\"monday\":true,\"tuesday\":true,\"wednesday\":true,\"thursday\":true,\"friday\":true,\"saturday\":true,\"sunday\":true}", 62 "componentactions": "{\" monday\":{\"onshow\":{\"action\":\"speech\",\"content\":\"Estem a dilluns, i tornem al cole\"},\"onplay\":{\"action\":\"sound\",\"type\":\"file\",\"source\":\"bondia.mp3\"}},\"tuesday\":{\"onshow\":{\"action\":\"sound\",\"content\":\"sound.mp3\"},\"onplay\":{\"action\":\"sound\",\"type\":\"file\",\"source\":\"sound.wav\"}},\"wednesday\":{\"onshow\":{\"action\":\"speech\",\"content\":\"\"},\"onplay\":{\"action\":\"video\",\"type\":\"youtube\",\"source\":\"BF7w-xJUlwM\"}},\"thursday\":{\"onshow\":{\"action\":\"speech\",\"content\":\"\"},\"onplay\":{\"action\":\"video\",\"type\":\"file\",\"source\":\"video.ogv\"}}}",62 "componentactions": "{\"default\":{\"onshow\":{\"action\":\"speech\",\"content\":\"\"},\"onplay\":{\"action\":\"sound\",\"type\":\"file\",\"source\":\"bondia.mp3\"}},\"monday\":{\"onshow\":{\"action\":\"speech\",\"content\":\"Estem a dilluns, i tornem al cole\"},\"onplay\":{\"action\":\"sound\",\"type\":\"file\",\"source\":\"bondia.mp3\"}},\"tuesday\":{\"onshow\":{\"action\":\"sound\",\"content\":\"sound.mp3\"},\"onplay\":{\"action\":\"sound\",\"type\":\"file\",\"source\":\"sound.wav\"}},\"wednesday\":{\"onshow\":{\"action\":\"speech\",\"content\":\"\"},\"onplay\":{\"action\":\"video\",\"type\":\"youtube\",\"source\":\"BF7w-xJUlwM\"}},\"thursday\":{\"onshow\":{\"action\":\"speech\",\"content\":\"\"},\"onplay\":{\"action\":\"video\",\"type\":\"file\",\"source\":\"video.ogv\"}}}", 63 63 "componentvisibility": "true", 64 64 "col": 1,
Note: See TracChangeset
for help on using the changeset viewer.