');
+ var lenienttypes = ['Correct (checked)','Correct (unchecked)','Incorrect (checked)','Incorrect (unchecked)'];
+ for (var i=0; i
'+lenienttypes[i]+'
'+
+ '
');
+ }
+ choicewrite('
');
}
if (pscat=='discussvote') {
tablestart('Discussion Voting');
@@ -1065,14 +1036,14 @@ function draw() {
choicewrite(' /> No ');
}
if (pscat=='ip') {
- var currallow = new Array;
+ var currallow = new Array;
var currdeny = new Array;
- if ((svalue != '') && (typeof(svalue) != 'undefined')) {
+ 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)) {
+ if (patternComma.test(svalue)) {
current = svalue.split(',');
} else {
current = [svalue];
@@ -1084,7 +1055,7 @@ function draw() {
} else {
if (patternAllow.test(current[i])) {
currallow.push(current[i]);
- }
+ }
}
}
}
@@ -1149,61 +1120,30 @@ 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 linkprotectparts = new Array();
- var ltikeyRegExp = /^(ltic:\d+|ltid:\d+|key:[a-zA-Z\d_.!@#$%^&*()+=-]+)$/;
- var linkexitparts = new Array();
- var dlinkexitRegExp = /^(yes|url|no)(|:[^:,;'"]+)$/;
+ var linktypeparts = new Array();
+ var ltikeyRegExp = /^(lti|key):(\w+)$/;
var dlinkkeysty = 'hidden';
+ var dlinkltidivsty = 'none';
var dlinkkeyval = '';
- var dlinklticdivsty = 'none';
- var dlinkltiddivsty = 'none';
- var dlinkmenusdivsty = 'none';
- var dlinkexitdivsty = 'none';
- var dlinkexittextval = '';
- if ((svalue != '') && (typeof(svalue) != 'undefined')) {
+ if ((svalue != '') && (svalue != null)) {
deeplinkvals = svalue.split(',');
- if (ltikeyRegExp.test(deeplinkvals[4])) {
- linkprotectparts = deeplinkvals[4].split(':');
- deeplinkvals[4] = linkprotectparts[0];
- if (linkprotectparts[0] == 'key') {
+ if (ltikeyRegExp.test(deeplinkvals[2])) {
+ linktypeparts = deeplinkvals[2].split(':');
+ deeplinkvals[2] = linktypeparts[0];
+ if (linktypeparts[0] == 'key') {
dlinkkeysty = 'text';
- dlinkkeyval = linkprotectparts[1];
- } else if (linkprotectparts[0] == 'ltic') {
- dlinklticdivsty = 'block';
- } else if (linkprotectparts[0] == 'ltid') {
- dlinkltiddivsty = 'block';
- }
- }
- if (deeplinkvals[5] >= 1) {
- dlinkmenusdivsty = 'inline-block';
- }
- if (dlinkexitRegExp.test(deeplinkvals[7])) {
- linkexitparts = deeplinkvals[7].split(':');
- deeplinkvals[7] = linkexitparts[0];
- if (deeplinkvals[7] != 'no') {
- dlinkexitdivsty = 'inline-block';
- if (!linkexitparts[1]) {
- dlinkexittextval = 'Exit Tool';
- } else {
- dlinkexittextval = linkexitparts[1];
- }
+ dlinkkeyval = linktypeparts[1];
+ } else if (linktypeparts[0] == 'lti') {
+ dlinkltidivsty = 'inline-block';
}
}
} else {
- deeplinkvals = ['off','unhide','full','res','','0','_self','no'];
+ deeplinkvals = ['full','res','any'];
}
- var deeplinkstate = new Array();
- deeplinkstate = ['only','off','both'];
- var deeplinkstatetxt = new Array();
- deeplinkstatetxt = ['deep only','deeplink off','regular + deep'];
- var deeplinkothers = new Array();
- deeplinkothers = ['hide','unhide'];
- var deeplinkotherstxt = new Array();
- deeplinkotherstxt = ['Hidden','Unhidden'];
var deeplinklisting = new Array();
deeplinklisting = ['full','absent','grades','details','datestatus'];
var deeplinklisttxt = new Array();
@@ -1212,229 +1152,95 @@ function draw() {
deeplinkscopes = ['res','map','rec'];
var deeplinkscopetxt = new Array();
deeplinkscopetxt = ['resource only','enclosing map/folder','recursive map/folder'];
- var deeplinkprotect = new Array();
- deeplinkprotect = ['none','key','ltic','ltid'];
- var deeplinktarget = new Array();
- deeplinktarget = ['_self','_top'];
- var deeplinktargettxt = new Array();
- deeplinktargettxt = ['Embedded','Not embedded'];
- var deeplinkexit = ['yes','url','no'];
+ var deeplinkurls = new Array();
+ deeplinkurls = ['any','only','key','lti'];
tablestart('Deep-linked items');
- choicewrite('
Access status?
');
- choicewrite('
');
- choicewrite('
Hide other resources?
');
- choicewrite('
');
- choicewrite('
In Contents + Gradebook?
');
+ choicewrite('
In Contents or Gradebook?
');
choicewrite('
');
- choicewrite('
Access scope for link
');
+ choicewrite('
Access scope via deep-link
');
choicewrite('
');
- choicewrite('
Link protection
');
+ choicewrite('
Supported Link Types
');
+ choicewrite(' ');
choicewrite('');
- choicewrite(' key access');
- choicewrite('');
+ choicewrite(' deep only ');
+ choicewrite('');
+ choicewrite('');
choicewrite(' ');
-
- var possmenus = new Array();
- if ((pextra != '') && (typeof(pextra) != 'undefined')) {
- var lticRegExp = /^ltic_/;
- var ltidRegExp = /^ltid_/;
- var menusRegExp = /^menus_/;
- var extras = pextra.split('&');
- for (var i=0; i= 1) {
- var lticnums = new Array();
- var ltictitles = new Array();
- for (var j=0; j');
- choicewrite('
');
- choicewrite('
');
- }
+ if ((pextra != '') && (pextra != null)) {
+ var ltiRegExp = /^lti_/;
+ if (ltiRegExp.test(pextra)) {
+ pextra = pextra.replace(ltiRegExp,'');
+ var posslti = pextra.split(',');
+ if (posslti.length >= 1) {
+ var ltinums = new Array();
+ var ltititles = new Array();
+ for (var i=0; i= 1) {
- var ltidnums = new Array();
- var ltidtitles = new Array();
- for (var j=0; j');
+ choicewrite('