');
+ var lenienttypes = ['Correct (checked)','Correct (unchecked)','Incorrect (checked)','Incorrect (unchecked)'];
+ for (var i=0; i
'+lenienttypes[i]+'
'+
+ '
');
+ }
+ choicewrite('
');
}
if (pscat=='discussvote') {
tablestart('Discussion Voting');
@@ -1022,7 +1096,7 @@ function draw() {
if (pscat=='ip') {
var currallow = new Array;
var currdeny = new Array;
- if ((svalue != '') && (svalue != null)) {
+ if ((svalue != '') && (typeof(svalue) != 'undefined')) {
var patternComma = /,/;
var patternAllow = /^([\[\]a-zA-Z\.\d\*\-]+)$/;
var patternDeny = /^\!([\[\]a-zA-Z\.\d\*\-]+)$/;
@@ -1104,18 +1178,18 @@ 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|ltid|key):(\w+)$/;
+ var ltikeyRegExp = /^(ltic:\d+|ltid:\d+|key:[a-zA-Z\d_.!@#$%^&*()+=-]+)$/;
var dlinkkeysty = 'hidden';
var dlinkkeyval = '';
var dlinklticdivsty = 'none';
var dlinkltiddivsty = 'none';
var dlinkmenusdivsty = 'none';
- if ((svalue != '') && (svalue != null)) {
+ if ((svalue != '') && (typeof(svalue) != 'undefined')) {
deeplinkvals = svalue.split(',');
if (ltikeyRegExp.test(deeplinkvals[4])) {
linkprotectparts = deeplinkvals[4].split(':');
@@ -1212,7 +1286,7 @@ function draw() {
choicewrite(' ');
var possmenus = new Array();
- if ((pextra != '') && (pextra != null)) {
+ if ((pextra != '') && (typeof(pextra) != 'undefined')) {
var lticRegExp = /^ltic_/;
var ltidRegExp = /^ltid_/;
var menusRegExp = /^menus_/;
@@ -1313,7 +1387,7 @@ function draw() {
choicewrite(' checked="checked"');
}
choicewrite(' /> Standard (all menus) ');
- if (possmenus.length >= 1) {
+ if (possmenus.length >= 1) {
choicewrite('