--- rat/client/parameter.html 2019/01/06 15:27:57 1.80 +++ rat/client/parameter.html 2020/12/23 21:20:36 1.85 @@ -5,7 +5,7 @@ The LearningOnline Network with CAPA Parameter Input Window // -// $Id: parameter.html,v 1.80 2019/01/06 15:27:57 raeburn Exp $ +// $Id: parameter.html,v 1.85 2020/12/23 21:20:36 raeburn Exp $ // // Copyright Michigan State University Board of Trustees // @@ -45,6 +45,7 @@ var pextravaltwo=''; var preturn=''; var pcode=''; var pscat=''; +var psmap=''; var pmarker=''; var pmodal=''; var pname=''; @@ -402,7 +403,7 @@ function validateInterval() { if (sform.donebutton[i].value == '_done_proctor') { if ((sform.donebutton_proctorkey.value == '') || (sform.donebutton_proctorkey.value == null)) { - alert('Please provide a key for a proctor to enter when a student uses the "Done" button.'); + alert('Please enter a key for a proctor to enter when a student uses the "Done" button.'); return; } } @@ -417,6 +418,8 @@ function validateDeepLink() { var sform=choices.document.forms.sch; svalue = sform.deeplinklisted.options[sform.deeplinklisted.selectedIndex].value+','; svalue += sform.deeplinkacc.options[sform.deeplinkacc.selectedIndex].value+','; + var keyRegExp = /^[a-zA-Z\d_.!@#$%^&*()+=-]+$/; + var numRegExp = /^\d+$/; if (sform.deeplinktypes.length) { for (var i=0; i 0)) { svalue += ':'+posslti; + } else { + alert('Please select an LTI launcher, or choose a different supported link type.'); + return; + } + } + break; + } + } + } + svalue += ','; + if (sform.deeplinkmenus.length) { + for (var i=0; i 0)) { + svalue += posscoll; + } else { + alert("Please select either a numbered collection or check 'Standard (all menus)'."); + return; } } break; @@ -441,9 +469,9 @@ function validateDeepLink() { assemble(); } -function toggleDeepLink() { +function toggleDeepLink(caller) { var sform=choices.document.forms.sch; - if (sform.deeplinktypes.length) { + if ((caller == 'types') && (sform.deeplinktypes.length)) { var frame = window.frames["choices"]; for (var i=0; iValue:'); @@ -1036,17 +1079,17 @@ function draw() { choicewrite(' /> No
'); } if (pscat=='ip') { - var currallow = new Array; + 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)) { + if (patternComma.test(svalue)) { current = svalue.split(','); } else { - current = (svalue); + current = [svalue]; } for (var i=0; i Yes, and the scope of student selected slot is a single resource.
'); + 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(''); } if (pscat=='deeplink') { @@ -1127,8 +1170,9 @@ function draw() { var linktypeparts = new Array(); var ltikeyRegExp = /^(lti|key):(\w+)$/; var dlinkkeysty = 'hidden'; - var dlinkltidivsty = 'none'; var dlinkkeyval = ''; + var dlinkltidivsty = 'none'; + var dlinkmenusdivsty = 'none'; if ((svalue != '') && (svalue != null)) { deeplinkvals = svalue.split(','); if (ltikeyRegExp.test(deeplinkvals[2])) { @@ -1138,11 +1182,14 @@ function draw() { dlinkkeysty = 'text'; dlinkkeyval = linktypeparts[1]; } else if (linktypeparts[0] == 'lti') { - dlinkltidivsty = 'inline-block'; + dlinkltidivsty = 'block'; } } + if (deeplinkvals[3] >= 1) { + dlinkmenusdivsty = 'inline-block'; + } } else { - deeplinkvals = ['full','res','any']; + deeplinkvals = ['full','res','any','0']; } var deeplinklisting = new Array(); deeplinklisting = ['full','absent','grades','details','datestatus']; @@ -1155,7 +1202,7 @@ function draw() { var deeplinkurls = new Array(); deeplinkurls = ['any','only','key','lti']; tablestart('Deep-linked items'); - choicewrite('In Contents or Gradebook?'); + choicewrite('In Contents + Gradebook?'); choicewrite(' regular + deep
'); choicewrite('
'); choicewrite(''); - choicewrite(''); + choicewrite(''); choicewrite('
'); + + var possmenus = new Array(); 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(' deep with LTI launch'); + choicewrite('
'); + choicewrite('

'); } - choicewrite('

'); } + } else if (menusRegExp.test(extras[i])) { + extras[i] = extras[i].replace(menusRegExp,''); + possmenus = extras[i].split(','); } } } + choicewrite('Menu Items Displayed'); + choicewrite('
'); + if (possmenus.length >= 1) { + choicewrite(''); + choicewrite('
'); + choicewrite('

'); + } choicewrite(''); } } @@ -1414,6 +1502,7 @@ function init() { } } } + psmap = ismap; if (ptype=='date' && pscat == 'interval') { @@ -1588,7 +1677,7 @@ function init() { if (precursive != 1) { selwrite('checked="checked" '); } - selwrite('onclick="parent.recursechange();" />No'); + selwrite('onclick="parent.recursechange();" />No'); selwrite('
'); } } @@ -1628,15 +1717,22 @@ function init() { selwrite(''); this.window.selector.document.close(); + if (pscat == 'deeplink') { + if (psmap==1) { + document.getElementById("LCparampopup").rows="100,*"; + } else { + document.getElementById("LCparampopup").rows="60,*"; + } + } draw(); - + } // ]]> - +