X"; }
choicewrite(''+selection+' | ');
-
-}
+}
function draw() {
choicestart();
@@ -788,7 +851,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');
@@ -1057,10 +1120,127 @@ 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') {
+ var deeplinkvals = new Array();
+ var linktypeparts = new Array();
+ var ltikeyRegExp = /^(lti|key):(\w+)$/;
+ var dlinkkeysty = 'hidden';
+ var dlinkltidivsty = 'none';
+ var dlinkkeyval = '';
+ 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 = 'inline-block';
+ }
+ }
+ } else {
+ deeplinkvals = ['full','res','any'];
+ }
+ 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 or Gradebook? | ');
+ choicewrite(' |
');
+ choicewrite('Access scope via deep-link | ');
+ choicewrite(' |
');
+ choicewrite('Supported Link Types | ');
+ choicewrite(' ');
+ choicewrite(' ');
+ choicewrite('');
+ 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');
+ choicewrite('');
+ choicewrite(' ');
+ }
+ }
+ }
+ }
+ choicewrite(' |
');
+ }
}
-
+
if (ptype=='color') {
tablestart('Choose a Color');
choicewrite('');
@@ -1075,7 +1255,7 @@ function draw() {
colorfield(ir,ig,ib);
}
choicewrite('');
- }
+ }
}
choicewrite('
');
}
@@ -1108,7 +1288,7 @@ function recursechange() {
if (rform.recurse[i].value == 1) {
colnum++;
}
- pmarker = pmarkerst+'_'+pparm+'&'+colnum;
+ pmarker = pmarkerst+'_'+pparm+'&'+colnum;
}
}
}
@@ -1168,7 +1348,7 @@ function init() {
var doneproctorRegExp = /_done(|\:[^\:]+\:)_proctor/;
var proctorkeyRegExp = /^(\d+)_(.+)$/;
var donetextRegExp = /\:([^\:]+)\:/;
- var markerRegExp = /^(.+)_([A-Za-z0-9]+)\&(\d+)$/;
+ var markerRegExp = /^(.+)_([A-Za-z0-9]+)\&(\d+)$/;
var namevalue=this.window.location.search.split('&');
namevalue[0]=namevalue[0].substr(1,namevalue[0].length-1);
@@ -1179,10 +1359,10 @@ function init() {
if (pair[0]=='type') { subs=pair[1].split('_');
ptype=subs[0];
pscat=subs[1];
- if (typeof(subs[2])!="undefined") {
- pscat+='_'+subs[2];
+ if (typeof(subs[2])!="undefined") {
+ pscat+='_'+subs[2];
}
- if ((pscat=='') || (typeof(pscat)=="undefined")) {
+ if ((pscat=='') || (typeof(pscat)=="undefined")) {
pscat='default';
}
}
@@ -1196,23 +1376,24 @@ function init() {
}
if (pair[0]=='defmin' && pair[1] >= 0 && pair[1] < 60) { defmin=pair[1]; }
if (pair[0]=='defsec' && pair[1] >= 0 && pair[1] < 60) { defsec=pair[1]; }
+ if (pair[0]=='extra') { pextra=pair[1]; }
}
- var tablecol = '';
+ 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];
+ tablecol = markerinfo[3];
if (tablecol == 17 || tablecol == 16) {
ismap = 1;
if (tablecol == 17) {
precursive = 1;
}
pnonreccol = 16;
- } else if (tablecol == 11 || tablecol == 10) {
+ } else if (tablecol == 11 || tablecol == 10) {
ismap = 1;
if (tablecol == 11) {
precursive = 1;
@@ -1260,7 +1441,7 @@ function init() {
}
} else {
if (doneRegExp.test(pvalue)) {
- var current = pvalue.match(doneRegExp);
+ var current = pvalue.match(doneRegExp);
if (current.length == 2) {
var textstr = current[1];
if (textstr != '') {
@@ -1278,8 +1459,8 @@ function init() {
}
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') {
@@ -1355,7 +1536,7 @@ function init() {
months[10]='November';
months[11]='December';
}
-
+
if (ptype=='int') {
sopt('default','Default');
sopt('pos','Positive Integer, Not Zero');
@@ -1384,8 +1565,9 @@ function init() {
else if (pscat == 'ip') { sopt('ip','IP Number/Name'); }
else if (pscat == 'fileext') { sopt('fileext','File Extension'); }
else if (pscat == 'useslots') { sopt('useslots','Slots control access'); }
+ else if (pscat == 'deeplink') { sopt('deeplink','Deep-linked items'); }
else { pscat = 'any'; }
- sopt('any','String Value');
+ if (pscat != 'deeplink') { sopt('any','String Value'); }
}
if (ptype=='color') {
@@ -1416,6 +1598,8 @@ function init() {
}
if ((ptype=='date') && (pscat=='interval')) {
selwrite('