');
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(' 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');
@@ -701,10 +1057,35 @@ function draw() {
' type="radio" '+callradiostringeval('map_map'));
if (svalue=='map_map') { choicewrite(' checked="checked"'); }
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('');
@@ -719,7 +1100,7 @@ function draw() {
colorfield(ir,ig,ib);
}
choicewrite('');
- }
+ }
}
choicewrite('
');
}
@@ -742,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];
}
@@ -820,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') {
@@ -840,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();
@@ -992,7 +1478,7 @@ function init() {
-
+