+
+
$pathitem
$hiddenelem
@@ -834,7 +882,8 @@ sub extedit_javascript {
" var ltitoolsExplain = new Array();\n".
" var ltitoolsLabel = new Array();\n".
" var ltitoolsTitle = new Array();\n".
- " var ltitoolsAppend = new Array();\n";
+ " var ltitoolsAppend = new Array();\n".
+ " var ltitoolsReturnUrl = new Array();\n";
$exttoolnums = " var ltitoolsnum = new Array();\n".
" var tooloptval = new Array();\n".
" var toolopttxt = new Array();\n";
@@ -854,7 +903,8 @@ sub extedit_javascript {
" ltitoolsExplain[$idx] = new Array($num);\n".
" ltitoolsLabel[$idx] = new Array($num);\n".
" ltitoolsTitle[$idx] = new Array($num);\n".
- " ltitoolsAppend[$idx] = new Array($num);\n";
+ " ltitoolsAppend[$idx] = new Array($num);\n".
+ " ltitoolsReturnUrl[$idx] = new Array($num);\n";
my $i=0;
foreach my $key (sort { $a <=> $b } keys(%{$toolsref->{$type}})) {
if (ref($toolsref->{$type}->{$key}) eq 'HASH') {
@@ -893,6 +943,8 @@ sub extedit_javascript {
$toolsjs .= " ltitoolsTitle[$idx][$i] = '$title';\n";
my $append = $toolsref->{$type}->{$key}->{'crsconf'}->{'append'};
$toolsjs .= " ltitoolsAppend[$idx][$i] = '$append';\n";
+ my $returnurl = $toolsref->{$type}->{$key}->{'crsconf'}->{'returnurl'};
+ $toolsjs .= " ltitoolsReturnUrl[$idx][$i] = '$returnurl';\n";
}
}
$i++;
@@ -1050,10 +1102,12 @@ function setExternal(extform,residx,type
var labelinput = prefix+'toolcrslabel';
var titleinput = prefix+'toolcrstitle';
var appendinput = prefix+'toolcrsappend';
+ var customreturnurl = prefix+'customreturnurl';
if (residx > 0) {
labelinput += '_'+residx;
titleinput += '_'+residx;
- appendinput += '_'+residx;
+ appendinput += '_'+residx;
+ customreturnurl += '_'+residx;
}
if (document.getElementById(labelinput)) {
var crslabel = document.getElementById(labelinput).value;
@@ -1102,6 +1156,33 @@ function setExternal(extform,residx,type
} else {
info += ':';
}
+ var returnurldiv = prefix+'toolreturnurldiv';
+ if (residx > 0) {
+ returnurldiv += '_'+residx;
+ }
+ if (document.getElementById(returnurldiv)) {
+ if (document.getElementById(returnurldiv).style.display == 'inline') {
+ if (extform.exttoolreturnurl.length) {
+ for (var i=0; i 0) {
eval("extform.importdetail.value=title+'='+info+'='+residx;extform.submit();");
@@ -1284,6 +1365,7 @@ function updateExttool(caller,form,suppl
titlediv = prefix+'toolcrstitlediv';
appenddiv = prefix+'toolcrsappenddiv';
gradablediv = prefix+'toolgradablediv';
+ returnurldiv = prefix+'toolreturnurldiv';
providerurl = prefix+'toolproviderurl';
labelinput = prefix+'toolcrslabel';
titleinput = prefix+'toolcrstitle';
@@ -1324,6 +1406,9 @@ function updateExttool(caller,form,suppl
if (document.getElementById(gradablediv)) {
document.getElementById(gradablediv).style.display = 'none';
}
+ if (document.getElementById(returnurldiv)) {
+ document.getElementById(returnurldiv).style.display = 'none';
+ }
} else {
var tooltype = '';
var typeelem = form.elements[prefix+'exttooltype'];
@@ -1360,7 +1445,7 @@ function updateExttool(caller,form,suppl
if ((ltitoolsDisplay[i][j]) && (ltitoolsTarget[i][j] == 'window')) {
dimen = 'block';
dimenwidth = ltitoolsWidth[i][j];
- dimenheight = ltitoolsHeight[i][j];
+ dimenheight = ltitoolsHeight[i][j];
}
if (document.getElementById(dimendiv)) {
document.getElementById(dimendiv).style.display = dimen;
@@ -1387,7 +1472,7 @@ function updateExttool(caller,form,suppl
}
if (document.getElementById(linktextinput)) {
if (ltitoolsLink[i][j]) {
- document.getElementById(linktextinput).value = ltitoolsLinkDef[i][j];
+ document.getElementById(linktextinput).value = ltitoolsLinkDef[i][j];
} else {
document.getElementById(linktextinput).value = '';
}
@@ -1441,6 +1526,13 @@ function updateExttool(caller,form,suppl
document.getElementById(gradablediv).style.display = 'inline';
}
}
+ if (document.getElementById(returnurldiv)) {
+ if (ltitoolsReturnUrl[i][j]) {
+ document.getElementById(returnurldiv).style.display = 'inline';
+ } else {
+ document.getElementById(returnurldiv).style.display = 'none';
+ }
+ }
break;
}
}
@@ -1450,6 +1542,30 @@ function updateExttool(caller,form,suppl
}
}
+function updateReturnUrl(form,typeid,divid,radioname) {
+ if ((document.getElementById(typeid)) &&
+ (document.getElementById(divid))) {
+ if (document.getElementById(divid).style.display == 'inline') {
+ var radelem = form.elements[radioname];
+ var inputtype = 'hidden';
+ if (radelem.length) {
+ for (var i=0; i