');
if (ptype=='tolerance') {
@@ -464,16 +679,54 @@ function draw() {
tablestart('Date and time');
}
if (pscat=='interval') {
+ var proctorkeytype = 'hidden';
+ var donebuttontext = 'none';
+ if (pmodval == '_done_proctor') {
+ proctorkeytype = 'text';
+ donebuttontext = 'block';
+ }
+ if (pmodval == '_done') {
+ donebuttontext = 'block';
+ }
tablestart('Time interval');
- choicewrite('');
- intervaldis();
- choicewrite(' Time:'
- +' ');
- intday();choicewrite('days ');
- inthour();choicewrite('hours ');
- intminute(); choicewrite('mins '); intsecond();
- choicewrite('secs ');
- } else {
+ choicewrite( [
+ ''+intervaldis()+' ',
+ 'Time: ',
+ ''+intday()+' days ',
+ ''+inthour()+' hours ',
+ ''+intminute()+' mins ',
+ ''+intsecond()+' secs ',
+ ' ',
+ '',
+ ' ',
+ ].join("\n"));
+ tablestart('Provide a "Done" button to students?');
+ choicewrite('Value: ');
+ choicewrite(' No ');
+ choicewrite(' Yes ');
+ choicewrite(''+
+ ' Yes, with proctor key ');
+ choicewrite(' '+
+ ''+
+ ''+
+ 'Button text:'+
+ '
');
+ choicewrite(' ');
+ } else {
choicewrite(''
+cdate.toString()+
' Date: ');
@@ -535,7 +788,7 @@ function draw() {
if (ptype=='float') {
if (pscat=='default') {
tablestart('Default value or none');
- choicewrite('');
+ choicewrite('');
} else {
if (pscat=='pos') {
tablestart('Positive floating point number or zero');
@@ -623,7 +876,7 @@ function draw() {
choicewrite(' Exam ');
+ choicewrite(' /> Bubblesheet Exam ');
// choicewrite(' Anonymous Survey (credit for submission) ');
-
+ choicewrite(' New Randomization Each N Tries (default N=1) ');
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(' Yes ');
+ choicewrite(' No ');
+ choicewrite(' Default (only bubblesheet grading is lenient) ');
+ choicewrite(' Yes, weighted (optionresponse in checkbox mode) '+
+ '');
+ }
+ if (pscat=='discussvote') {
+ tablestart('Discussion Voting');
+ choicewrite(' Value: ');
+ choicewrite(' Yes ');
+ choicewrite(' Yes, unless discussion ended ');
+ choicewrite(' No ');
+ }
if (pscat=='ip') {
- tablestart('IP Number/Name');
- choicewrite(' Value: ');
- choicewrite(' ');
+ var currallow = new Array;
+ var currdeny = new Array;
+ if ((svalue != '') && (svalue != null)) {
+ var patternComma = /,/;
+ var patternAllow = /^([\[\]a-zA-Z\.\d\*\-]+)$/;
+ var patternDeny = /^\!([\[\]a-zA-Z\.\d\*\-]+)$/;
+ var current = new Array;
+ if (patternComma.test(svalue)) {
+ current = svalue.split(',');
+ } else {
+ current = (svalue);
+ }
+ for (var i=0; iAllow from Deny from ');
+ var acctypes = ['allow','deny'];
+ for (var i=0; i'+
+ ''+
+ '
');
+ }
+ choicewrite('
Add item ');
+ }
+ choicewrite(' ');
}
if (pscat=='fileext') {
tablestart('Allowed File Extensions');
@@ -671,8 +1030,9 @@ function draw() {
' type="radio" '+callradiostringeval('png,jpg,jpeg,gif'));
if (svalue=='png,jpg,jpeg,gif') { choicewrite(' checked="checked"'); }
choicewrite(' /> Picture File ');
- choicewrite(' Office Document ');
choicewrite(' Yes, and the scope of student selected slot is the enclosing map/folder. When checking in, all resources in the map/folder are checked in. ');
- choicewrite('');
+ choicewrite('');
+ }
+ if (pscat=='deeplink') {
+ tablestart('Deep-linked items');
+ choicewrite('Value: ');
+ choicewrite(' Displayed (linked) in Contents and Grades. ');
+ choicewrite(' Not displayed in Contents or Grades. ');
+ choicewrite(' Displayed in Grades only. ');
+ choicewrite(' Displayed (unlinked) in Contents and Grades. ');
+ choicewrite(' Displayed (with date status) but unlinked in Contents and Grades. ');
+ choicewrite(' ');
}
}
-
+
if (ptype=='color') {
tablestart('Choose a Color');
choicewrite('');
@@ -715,7 +1100,7 @@ function draw() {
colorfield(ir,ig,ib);
}
choicewrite('');
- }
+ }
}
choicewrite('
');
}
@@ -738,6 +1123,22 @@ function catchange() {
draw();
}
+function recursechange() {
+ var rform=selector.document.forms.frec;
+ var count = rform.recurse.length;
+ if (count > 0) {
+ for (var i=0; i= 0 && pair[1] < 24 ) {
defhour=pair[1];
}
@@ -816,10 +1223,88 @@ function init() {
if (pair[0]=='defsec' && pair[1] >= 0 && pair[1] < 60) { defsec=pair[1]; }
}
+ var tablecol = '';
+ var ismap = '';
+ if (markerRegExp.test(pmarker)) {
+ var markerinfo = pmarker.match(markerRegExp);
+ if (markerinfo.length == 4) {
+ pmarkerst = markerinfo[1];
+ pparm = markerinfo[2];
+ tablecol = markerinfo[3];
+ if (tablecol == 17 || tablecol == 16) {
+ ismap = 1;
+ if (tablecol == 17) {
+ precursive = 1;
+ }
+ pnonreccol = 16;
+ } else if (tablecol == 11 || tablecol == 10) {
+ ismap = 1;
+ if (tablecol == 11) {
+ precursive = 1;
+ }
+ pnonreccol = 10;
+ } else if (tablecol == 7 || tablecol == 6) {
+ ismap = 1;
+ if (tablecol == 7) {
+ precursive = 1;
+ }
+ pnonreccol = 6;
+ } else if (tablecol == 3 || tablecol == 2) {
+ ismap = 1;
+ if (tablecol == 3) {
+ precursive = 1;
+ }
+ pnonreccol = 2;
+ }
+ }
+ }
+
+
+ if (ptype=='date' && pscat == 'interval') {
+ 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;
if (((ptype=='float') || (ptype=='string') || (ptype=='int')) &&
- (pscat=='default') &&
- (typeof(svalue)!="undefined") &&
+ (pscat=='default') &&
+ (typeof(svalue)!="undefined") &&
(svalue!=0) && (svalue!='')) { pscat='any'; }
if (ptype=='tolerance') {
@@ -836,9 +1321,12 @@ function init() {
}
}
- this.window.selector.document.clear();
- selwrite('');
+ this.window.selector.document.open();
+ selwrite('');
+ selwrite('');
selwrite('');
+ selwrite(' ');
+ selwrite('LON-CAPA ');
selwrite('');
selwrite('');
- selwrite(' ');
+ }
+ }
+ var targ='parent.opener';
+ if (pmodal==1) {
+ targ='parent.parent';
+ }
+ if ((ptype=='date') && (pscat=='interval')) {
+ selwrite('Save ');
selwrite('Delete ');
- selwrite('Cancel ');
-
selwrite('');
this.window.selector.document.close();
draw();
@@ -988,7 +1478,7 @@ function init() {
-
+
500 Internal Server Error
Internal Server Error
The server encountered an internal error or
misconfiguration and was unable to complete
your request.
Please contact the server administrator at
root@localhost to inform them of the time this error occurred,
and the actions you performed just before this error.
More information about this error may be available
in the server error log.