--- rat/client/parameter.html 2015/09/13 21:48:37 1.68 +++ rat/client/parameter.html 2016/05/15 17:40:34 1.72 @@ -5,7 +5,7 @@ The LearningOnline Network with CAPA Parameter Input Window // -// $Id: parameter.html,v 1.68 2015/09/13 21:48:37 raeburn Exp $ +// $Id: parameter.html,v 1.72 2016/05/15 17:40:34 raeburn Exp $ // // Copyright Michigan State University Board of Trustees // @@ -40,6 +40,8 @@ Parameter Input Window var ptype=''; var pvalue=''; var pmodval=''; +var pextraval=''; +var pextravaltwo=''; var preturn=''; var pcode=''; var pscat=''; @@ -242,58 +244,66 @@ function month() { function intminute() { var thisminutes=cmins; var i; - choicewrite(''; for (i=0;i<=59;i++) { - choicewrite(''); + result += '>'+i+''; } - choicewrite(''); + result += ''; + return result; } function inthour() { var thishours=chours; var i; - choicewrite(''; for (i=0;i<=23;i++) { - choicewrite(''); + result += '>'+i+''; } - choicewrite(''); -} + result += ''; + return result; +} function intsecond() { - var thisseconds=csecs; + var thisseconds=csecs; var i; - choicewrite(''; for (i=0;i<=59;i++) { - choicewrite(''); + result += '>'+i+''; } - choicewrite(''); + result += ''; + return result; } function intday() { var thisdate=cdays; var i; - choicewrite(''; for (i=0;i<=31;i++) { - choicewrite(''); + result += '>'+i+''; } - choicewrite(''); + result += ''; + return result; } function intcalc() { @@ -304,25 +314,100 @@ function intcalc() { sform.seconds.options[sform.seconds.selectedIndex].value*1; if ((ptype=='date') && (pscat=='interval')) { var newpmodval = ''; + var newpextraval = ''; + var newpextravaltwo = 'Done'; if (sform.donebutton.length) { for (var i=0; i'); - intervaldis(); - choicewrite('Time:' - +''); - intday();choicewrite('days '); - inthour();choicewrite('hours '); - intminute(); choicewrite('mins '); intsecond(); - choicewrite('secs'); - choicewrite('
'); + choicewrite( [ + ''+intervaldis()+'', + 'Time:', + ''+intday()+' days ', + ''+inthour()+' hours', + ''+intminute()+' mins', + ''+intsecond()+' secs', + '', + '', + '
', + ].join("\n")); tablestart('Provide a "Done" button to students?'); choicewrite('Value:'); + choicewrite('
'); choicewrite('
'); - choicewrite(''); + choicewrite(' 
'+ + '
'+ + '
'+ + 'Button text:'+ + '
'); choicewrite(''); } else { choicewrite('' @@ -699,20 +848,50 @@ function draw() { choicewrite(' /> Library
'); } if (pscat=='lenient') { + var patternLenientStd = /^(yes|no|default)$/; + var patternLenientRel = /^([\-\d\.]+)\,([\-\d\.]+)\,([\-\d\.]+)\,([\-\d\.]+)$/; + var lenientweighted = 'none'; + var relatives = new Array; tablestart('Lenient Grading (Partial Credit)'); choicewrite('Value:'); choicewrite('
'); choicewrite('
'); choicewrite('
'); + choicewrite('

'+ + '
'+ + ''+ + ''); + var lenienttypes = ['Correct (checked)','Correct (unchecked)','Incorrect (checked)','Incorrect (unchecked)']; + for (var i=0; i'+ + ''); + } + choicewrite('
Foil submission statusPoints
'+lenienttypes[i]+'
'); } if (pscat=='discussvote') { tablestart('Discussion Voting'); @@ -865,7 +1044,10 @@ function assemble() { function init() { var i; var subs=new Array(); - var doneRegExp = /_done/; + var doneRegExp = /_done(|\:[^\:]+\:)/; + var doneproctorRegExp = /_done(|\:[^\:]+\:)_proctor/; + var proctorkeyRegExp = /^(\d+)_(.+)$/; + var donetextRegExp = /\:([^\:]+)\:/; var namevalue=this.window.location.search.split('&'); namevalue[0]=namevalue[0].substr(1,namevalue[0].length-1); @@ -896,10 +1078,44 @@ function init() { } if (ptype=='date' && pscat == 'interval') { - if (doneRegExp.test(pvalue)) { - var pnumval = pvalue.replace(doneRegExp,''); - pmodval = pvalue.match(doneRegExp); - pvalue = pnumval; + if (doneproctorRegExp.test(pvalue)) { + var current = pvalue.match(doneproctorRegExp); + if (current.length == 2) { + var textstr = current[1]; + if (textstr != '') { + var textvals = textstr.match(donetextRegExp); + if (textvals.length == 2) { + pextravaltwo = textvals[1]; + } + } + } + var intervalwithkey = pvalue.replace(doneproctorRegExp,''); + if (proctorkeyRegExp.test(intervalwithkey)) { + var currvals = intervalwithkey.match(proctorkeyRegExp); + if (currvals.length == 3) { + pvalue = currvals[1]; + pextraval = currvals[2]; + pmodval = '_done_proctor'; + } else { + pmodval = ''; + } + } + } else { + if (doneRegExp.test(pvalue)) { + var current = pvalue.match(doneRegExp); + if (current.length == 2) { + var textstr = current[1]; + if (textstr != '') { + var textvals = textstr.match(donetextRegExp); + if (textvals.length == 2) { + pextravaltwo = textvals[1]; + } + } + } + var pnumval = pvalue.replace(doneRegExp,''); + pmodval = '_done'; + pvalue = pnumval; + } } } svalue=pvalue; @@ -1023,8 +1239,12 @@ function init() { var targ='parent.opener'; if (pmodal==1) { targ='parent.parent'; - } - selwrite('