%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /opt/bitnami/apps/moodle/moodledata/localcache/js/
Upload File :
Create Path :
Current File : /opt/bitnami/apps/moodle/moodledata/localcache/js/7fba6a4a85cbd65a75cce0919ecc54f0bad61017

M.gradingform_rubriceditor={'templates':{},'eventhandler':null,'name':null,'Y':null};M.gradingform_rubriceditor.init=function(Y,options){M.gradingform_rubriceditor.name=options.name
M.gradingform_rubriceditor.Y=Y
M.gradingform_rubriceditor.templates[options.name]={'criterion':options.criteriontemplate,'level':options.leveltemplate}
M.gradingform_rubriceditor.disablealleditors()
Y.on('click',M.gradingform_rubriceditor.clickanywhere,'body',null)
YUI().use('event-touch',function(Y){Y.one('body').on('touchstart',M.gradingform_rubriceditor.clickanywhere);Y.one('body').on('touchend',M.gradingform_rubriceditor.clickanywhere)})
M.gradingform_rubriceditor.addhandlers()};M.gradingform_rubriceditor.addhandlers=function(){var Y=M.gradingform_rubriceditor.Y
var name=M.gradingform_rubriceditor.name
if(M.gradingform_rubriceditor.eventhandler)M.gradingform_rubriceditor.eventhandler.detach()
M.gradingform_rubriceditor.eventhandler=Y.on('click',M.gradingform_rubriceditor.buttonclick,'#rubric-'+name+' input[type=submit]',null)}
M.gradingform_rubriceditor.disablealleditors=function(){var Y=M.gradingform_rubriceditor.Y
var name=M.gradingform_rubriceditor.name
Y.all('#rubric-'+name+' .level').each(function(node){M.gradingform_rubriceditor.editmode(node,!1)});Y.all('#rubric-'+name+' .description').each(function(node){M.gradingform_rubriceditor.editmode(node,!1)})}
M.gradingform_rubriceditor.clickanywhere=function(e){if(e.type=='touchstart')return
var el=e.target
if(el.get('tagName')=='INPUT'&&el.get('type')=='submit'){return}
var focustb=!1
while(el&&!(el.hasClass('level')||el.hasClass('description'))){if(el.hasClass('score'))focustb=!0
el=el.get('parentNode')}
if(el){if(el.one('textarea').hasClass('hiddenelement')){M.gradingform_rubriceditor.disablealleditors()
M.gradingform_rubriceditor.editmode(el,!0,focustb)}
return}
M.gradingform_rubriceditor.disablealleditors()}
M.gradingform_rubriceditor.editmode=function(el,editmode,focustb){var ta=el.one('textarea')
if(!editmode&&ta.hasClass('hiddenelement'))return;if(editmode&&!ta.hasClass('hiddenelement'))return;var pseudotablink='<input type="text" size="1" class="pseudotablink"/>',taplain=ta.get('parentNode').one('.plainvalue'),tbplain=null,tb=el.one('.score input[type=text]')
if(!taplain){ta.get('parentNode').append('<div class="plainvalue">'+pseudotablink+'<span class="textvalue">&nbsp;</span></div>')
taplain=ta.get('parentNode').one('.plainvalue')
taplain.one('.pseudotablink').on('focus',M.gradingform_rubriceditor.clickanywhere)
if(tb){tb.get('parentNode').append('<span class="plainvalue">'+pseudotablink+'<span class="textvalue">&nbsp;</span></span>')
tbplain=tb.get('parentNode').one('.plainvalue')
tbplain.one('.pseudotablink').on('focus',M.gradingform_rubriceditor.clickanywhere)}}
if(tb&&!tbplain)tbplain=tb.get('parentNode').one('.plainvalue')
if(!editmode){var value=ta.get('value')
if(value.length)taplain.removeClass('empty')
else{value=(el.hasClass('level'))?M.util.get_string('levelempty','gradingform_rubric'):M.util.get_string('criterionempty','gradingform_rubric')
taplain.addClass('empty')}
taplain.one('.textvalue').set('innerHTML',Y.Escape.html(value));if(tb)tbplain.one('.textvalue').set('innerHTML',Y.Escape.html(tb.get('value')));taplain.removeClass('hiddenelement')
ta.addClass('hiddenelement')
if(tb){tbplain.removeClass('hiddenelement')
tb.addClass('hiddenelement')}}else{try{var width=parseFloat(ta.get('parentNode').getComputedStyle('width')),height
if(el.hasClass('level'))height=parseFloat(el.getComputedStyle('height'))-parseFloat(el.one('.score').getComputedStyle('height'))
else height=parseFloat(ta.get('parentNode').getComputedStyle('height'))
ta.setStyle('width',Math.max(width-16,50)+'px')
ta.setStyle('height',Math.max(height,20)+'px')}catch(err){}
taplain.addClass('hiddenelement')
ta.removeClass('hiddenelement')
if(tb){tbplain.addClass('hiddenelement')
tb.removeClass('hiddenelement')}}
if(editmode){if(tb&&focustb)tb.focus();else ta.focus()}}
M.gradingform_rubriceditor.buttonclick=function(e,confirmed){var Y=M.gradingform_rubriceditor.Y
var name=M.gradingform_rubriceditor.name
if(e.target.get('type')!='submit')return;M.gradingform_rubriceditor.disablealleditors()
var chunks=e.target.get('id').split('-'),action=chunks[chunks.length-1]
if(chunks[0]!=name||chunks[1]!='criteria')return;var elements_str
if(chunks.length>4||action=='addlevel'){elements_str='#rubric-'+name+' #'+name+'-criteria-'+chunks[2]+'-levels .level'}else{elements_str='#rubric-'+name+' .criterion'}
var newlevid=0;var newid=0;if(action=='addcriterion'||action=='addlevel'||action=='duplicate'){newid=M.gradingform_rubriceditor.calculatenewid('#rubric-'+name+' .criterion');newlevid=M.gradingform_rubriceditor.calculatenewid('#rubric-'+name+' .level')}
var dialog_options={'scope':this,'callbackargs':[e,!0],'callback':M.gradingform_rubriceditor.buttonclick};if(chunks.length==3&&action=='addcriterion'){var levelsscores=[0],levidx=1
var parentel=Y.one('#'+name+'-criteria')
if(parentel.one('>tbody'))parentel=parentel.one('>tbody')
if(parentel.all('.criterion').size()){var lastcriterion=parentel.all('.criterion').item(parentel.all('.criterion').size()-1).all('.level')
for(levidx=0;levidx<lastcriterion.size();levidx++)levelsscores[levidx]=lastcriterion.item(levidx).one('.score input[type=text]').get('value')}
for(levidx;levidx<3;levidx++)levelsscores[levidx]=parseFloat(levelsscores[levidx-1])+1
var levelsstr='';for(levidx=0;levidx<levelsscores.length;levidx++){levelsstr+=M.gradingform_rubriceditor.templates[name].level.replace(/\{LEVEL-id\}/g,'NEWID'+(newlevid+levidx)).replace(/\{LEVEL-score\}/g,levelsscores[levidx]).replace(/\{LEVEL-index\}/g,levidx+1)}
var newcriterion=M.gradingform_rubriceditor.templates[name].criterion.replace(/\{LEVELS\}/,levelsstr)
parentel.append(newcriterion.replace(/\{CRITERION-id\}/g,'NEWID'+newid).replace(/\{.+?\}/g,''))
M.gradingform_rubriceditor.assignclasses('#rubric-'+name+' #'+name+'-criteria-NEWID'+newid+'-levels .level')
M.gradingform_rubriceditor.addhandlers();M.gradingform_rubriceditor.disablealleditors()
M.gradingform_rubriceditor.assignclasses(elements_str)
M.gradingform_rubriceditor.editmode(Y.one('#rubric-'+name+' #'+name+'-criteria-NEWID'+newid+'-description-cell'),!0)}else if(chunks.length==5&&action=='addlevel'){var newscore=0;parent=Y.one('#'+name+'-criteria-'+chunks[2]+'-levels')
var levelIndex=1;parent.all('.level').each(function(node){newscore=Math.max(newscore,parseFloat(node.one('.score input[type=text]').get('value'))+1);levelIndex++});var newlevel=M.gradingform_rubriceditor.templates[name].level.replace(/\{CRITERION-id\}/g,chunks[2]).replace(/\{LEVEL-id\}/g,'NEWID'+newlevid).replace(/\{LEVEL-score\}/g,newscore).replace(/\{LEVEL-index\}/g,levelIndex).replace(/\{.+?\}/g,'');parent.append(newlevel)
M.gradingform_rubriceditor.addhandlers();M.gradingform_rubriceditor.disablealleditors()
M.gradingform_rubriceditor.assignclasses(elements_str)
M.gradingform_rubriceditor.editmode(parent.all('.level').item(parent.all('.level').size()-1),!0)}else if(chunks.length==4&&action=='moveup'){el=Y.one('#'+name+'-criteria-'+chunks[2])
if(el.previous())el.get('parentNode').insertBefore(el,el.previous())
M.gradingform_rubriceditor.assignclasses(elements_str)}else if(chunks.length==4&&action=='movedown'){el=Y.one('#'+name+'-criteria-'+chunks[2])
if(el.next())el.get('parentNode').insertBefore(el.next(),el)
M.gradingform_rubriceditor.assignclasses(elements_str)}else if(chunks.length==4&&action=='delete'){if(confirmed){Y.one('#'+name+'-criteria-'+chunks[2]).remove()
M.gradingform_rubriceditor.assignclasses(elements_str)}else{dialog_options.message=M.util.get_string('confirmdeletecriterion','gradingform_rubric')
M.util.show_confirm_dialog(e,dialog_options)}}else if(chunks.length==4&&action=='duplicate'){var levelsdef=[],levelsscores=[0],levidx=null;var parentel=Y.one('#'+name+'-criteria');if(parentel.one('>tbody')){parentel=parentel.one('>tbody')}
var source=Y.one('#'+name+'-criteria-'+chunks[2]);if(source.all('.level')){var lastcriterion=source.all('.level');for(levidx=0;levidx<lastcriterion.size();levidx++){levelsdef[levidx]=lastcriterion.item(levidx).one('.definition .textvalue').get('innerHTML')}
for(levidx=0;levidx<lastcriterion.size();levidx++){levelsscores[levidx]=lastcriterion.item(levidx).one('.score input[type=text]').get('value')}}
for(levidx;levidx<3;levidx++){levelsscores[levidx]=parseFloat(levelsscores[levidx-1])+1}
var levelsstr='';for(levidx=0;levidx<levelsscores.length;levidx++){levelsstr+=M.gradingform_rubriceditor.templates[name].level.replace(/\{LEVEL-id\}/g,'NEWID'+(newlevid+levidx)).replace(/\{LEVEL-score\}/g,levelsscores[levidx]).replace(/\{LEVEL-definition\}/g,levelsdef[levidx])}
var description=source.one('.description .textvalue');var newcriterion=M.gradingform_rubriceditor.templates[name].criterion.replace(/\{LEVELS\}/,levelsstr).replace(/\{CRITERION-description\}/,description.get('innerHTML'));parentel.append(newcriterion.replace(/\{CRITERION-id\}/g,'NEWID'+newid).replace(/\{.+?\}/g,''));M.gradingform_rubriceditor.assignclasses('#rubric-'+name+' #'+name+'-criteria-NEWID'+newid+'-levels .level');M.gradingform_rubriceditor.addhandlers();M.gradingform_rubriceditor.disablealleditors();M.gradingform_rubriceditor.assignclasses(elements_str);M.gradingform_rubriceditor.editmode(Y.one('#rubric-'+name+' #'+name+'-criteria-NEWID'+newid+'-description-cell'),!0)}else if(chunks.length==6&&action=='delete'){if(confirmed){Y.one('#'+name+'-criteria-'+chunks[2]+'-'+chunks[3]+'-'+chunks[4]).remove()
M.gradingform_rubriceditor.assignclasses(elements_str)}else{dialog_options.message=M.util.get_string('confirmdeletelevel','gradingform_rubric')
M.util.show_confirm_dialog(e,dialog_options)}}else{return}
e.preventDefault()}
M.gradingform_rubriceditor.assignclasses=function(elements_str){var elements=M.gradingform_rubriceditor.Y.all(elements_str)
for(var i=0;i<elements.size();i++){elements.item(i).removeClass('first').removeClass('last').removeClass('even').removeClass('odd').addClass(((i%2)?'odd':'even')+((i==0)?' first':'')+((i==elements.size()-1)?' last':''))
elements.item(i).all('input[type=hidden]').each(function(node){if(node.get('name').match(/sortorder/))node.set('value',i)});if(elements.item(i).hasClass('level'))elements.item(i).set('width',Math.round(100/elements.size())+'%')}}
M.gradingform_rubriceditor.calculatenewid=function(elements_str){var newid=1
M.gradingform_rubriceditor.Y.all(elements_str).each(function(node){var idchunks=node.get('id').split('-'),id=idchunks.pop();if(id.match(/^NEWID(\d+)$/))newid=Math.max(newid,parseInt(id.substring(5))+1)});return newid}

Zerion Mini Shell 1.0