'+intervaldis()+' | ',
@@ -490,7 +657,33 @@ function draw() {
'',
'
',
].join("\n"));
- } else {
+ tablestart('Provide a "Done" button to students?');
+ choicewrite('Value: | ');
+ choicewrite(' ');
+ choicewrite(' ');
+ choicewrite(''+
+ '');
+ choicewrite(' '+
+ ''+
+ ' '+
+ 'Button text:'+
+ ' ');
+ choicewrite(' |
');
+ } else {
choicewrite(''
+cdate.toString()+
' |
Date: | ');
@@ -571,7 +764,7 @@ function draw() {
}
if (ptype=='string') {
- if ((pscat=='any') || (pscat=='') || (pscat=='default') ||
+ if ((pscat=='any') || (pscat=='') || (pscat=='default') ||
(typeof(pscat)=='undefined')) {
tablestart('Text');
choicewrite(' |
Value: | ');
@@ -707,10 +900,51 @@ function draw() {
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('
');
+ }
+ choicewrite('
');
}
if (pscat=='fileext') {
tablestart('Allowed File Extensions');
@@ -741,15 +975,15 @@ function draw() {
choicewrite('
');
+ choicewrite(' /> Yes, and the scope of the slot is a single resource.
');
choicewrite('
');
+ choicewrite(' /> Yes, and the scope of the slot is the enclosing map/folder. When checking in, it applies to only one resource.
');
choicewrite('
');
+ choicewrite(' /> Yes, and the scope of the slot is the enclosing map/folder. When checking in, all resources in the map/folder are checked in.
');
choicewrite('');
}
}
@@ -841,6 +1075,10 @@ function assemble() {
function init() {
var i;
var subs=new Array();
+ 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);
@@ -870,6 +1108,47 @@ function init() {
if (pair[0]=='defsec' && pair[1] >= 0 && pair[1] < 60) { defsec=pair[1]; }
}
+ 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') &&
@@ -991,8 +1270,12 @@ function init() {
var targ='parent.opener';
if (pmodal==1) {
targ='parent.parent';
- }
- selwrite('