');
+ var lenienttypes = ['Correct (checked)','Correct (unchecked)','Incorrect (checked)','Incorrect (unchecked)'];
+ for (var i=0; i
'+lenienttypes[i]+'
'+
+ '
');
+ }
+ choicewrite('
');
}
if (pscat=='discussvote') {
tablestart('Discussion Voting');
@@ -706,10 +1079,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; i
Allow from
Deny from
');
+ var acctypes = ['allow','deny'];
+ for (var i=0; i'+
+ '
'+
+ '
');
+ for (var j=0; j');
+ choicewrite('Remove');
+ choicewrite('
');
+ }
+ choicewrite('
');
+ }
+ choicewrite('
');
}
if (pscat=='fileext') {
tablestart('Allowed File Extensions');
@@ -749,10 +1163,172 @@ function draw() {
' type="radio" '+callradiostringeval('map_map'));
if (svalue=='map_map') { choicewrite(' checked="checked"'); }
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('');
- }
+ choicewrite('');
+ }
+ if (pscat=='deeplink') {
+ var deeplinkvals = new Array();
+ var linktypeparts = new Array();
+ var ltikeyRegExp = /^(lti|key):(\w+)$/;
+ var dlinkkeysty = 'hidden';
+ var dlinkkeyval = '';
+ var dlinkltidivsty = 'none';
+ var dlinkmenusdivsty = 'none';
+ if ((svalue != '') && (svalue != null)) {
+ deeplinkvals = svalue.split(',');
+ if (ltikeyRegExp.test(deeplinkvals[2])) {
+ linktypeparts = deeplinkvals[2].split(':');
+ deeplinkvals[2] = linktypeparts[0];
+ if (linktypeparts[0] == 'key') {
+ dlinkkeysty = 'text';
+ dlinkkeyval = linktypeparts[1];
+ } else if (linktypeparts[0] == 'lti') {
+ dlinkltidivsty = 'block';
+ }
+ }
+ if (deeplinkvals[3] >= 1) {
+ dlinkmenusdivsty = 'inline-block';
+ }
+ } else {
+ deeplinkvals = ['full','res','any','0'];
+ }
+ var deeplinklisting = new Array();
+ deeplinklisting = ['full','absent','grades','details','datestatus'];
+ var deeplinklisttxt = new Array();
+ deeplinklisttxt = ['Listed (linked) in both','Not listed','Listed in grades only','Listed (unlinked) in both','Listed (unlinked) inc. status in both'];
+ var deeplinkscopes = new Array();
+ deeplinkscopes = ['res','map','rec'];
+ var deeplinkscopetxt = new Array();
+ deeplinkscopetxt = ['resource only','enclosing map/folder','recursive map/folder'];
+ var deeplinkurls = new Array();
+ deeplinkurls = ['any','only','key','lti'];
+ tablestart('Deep-linked items');
+ choicewrite('
In Contents + Gradebook?
');
+ choicewrite('
');
+ choicewrite('
Access scope via deep-link
');
+ choicewrite('
');
+ choicewrite('
Supported Link Types
');
+ choicewrite(' ');
+ choicewrite(' ');
+ choicewrite('');
+ choicewrite('');
+ choicewrite(' ');
+
+ var possmenus = new Array();
+ if ((pextra != '') && (pextra != null)) {
+ var ltiRegExp = /^lti_/;
+ var menusRegExp = /^menus_/;
+ var extras = pextra.split('&');
+ for (var i=0; i= 1) {
+ var ltinums = new Array();
+ var ltititles = new Array();
+ for (var j=0; j');
+ choicewrite('