--- loncom/interface/lonextresedit.pm 2025/03/15 03:10:09 1.8.2.4.4.4 +++ loncom/interface/lonextresedit.pm 2023/07/11 23:43:03 1.33 @@ -1,7 +1,7 @@ # The LearningOnline Network # Documents # -# $Id: lonextresedit.pm,v 1.8.2.4.4.4 2025/03/15 03:10:09 raeburn Exp $ +# $Id: lonextresedit.pm,v 1.33 2023/07/11 23:43:03 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -284,10 +284,8 @@ sub process_changes { if ($ferr) { $errormsg = &mt('Reload failed: [_1].',$ferr); } else { - unless ($supplementalflag) { - &Apache::loncommon::update_content_constraints($cdom,$cnum,$chome, - $cdom.'_'.$cnum); - } + &Apache::loncommon::update_content_constraints($cdom,$cnum,$chome, + $cdom.'_'.$cnum); } } if (($type eq 'tool') && ($newgradable)) { @@ -311,13 +309,12 @@ sub update_exttool { my ($marker,$cdom,$cnum,$supplementalflag,$args) = @_; my (%newhash,$changed,$newgradable,@deleted,$errormsg); ($newhash{'target'},$newhash{'width'},$newhash{'height'},$newhash{'linktext'},$newhash{'explanation'}, - $newhash{'crslabel'},$newhash{'crstitle'},$newhash{'crsappend'},$newhash{'gradable'}, - $newhash{'returnurl'},$newhash{'backtourl'}) = split(/:/,$args); - foreach my $item ('linktext','explanation','crslabel','crstitle','crsappend','backtourl') { + $newhash{'crslabel'},$newhash{'crstitle'},$newhash{'crsappend'},$newhash{'gradable'}) = split(/:/,$args); + foreach my $item ('linktext','explanation','crslabel','crstitle','crsappend') { $newhash{$item} = &unescape($newhash{$item}); } my %toolhash=&Apache::lonnet::dump('exttool_'.$marker,$cdom,$cnum); - foreach my $item ('target','width','height','linktext','explanation','crslabel','crstitle','crsappend','gradable','returnurl','backtourl') { + foreach my $item ('target','width','height','linktext','explanation','crslabel','crstitle','crsappend','gradable') { $newhash{$item} =~ s/^\s+//; $newhash{$item} =~ s/\s+$//; if (($item eq 'width') || ($item eq 'height') || ($item eq 'linktext') || ($item eq 'explanation')) { @@ -332,10 +329,6 @@ sub update_exttool { unless ($newhash{$item} == 1) { $newhash{$item} = ''; } - } elsif ($item eq 'backtourl') { - unless ($newhash{'returnurl'} eq 'custom') { - $newhash{$item} = ''; - } } if ($toolhash{$item} ne $newhash{$item}) { if (($item eq 'gradable') && (!$supplementalflag)) { @@ -359,7 +352,7 @@ sub update_exttool { } } else { $toolhash{$item} = $newhash{$item}; - $changed = 1; + $changed = 1; } } } @@ -403,17 +396,16 @@ sub extedit_form { } my ($formname,$formid,$toggle,$fieldsetid,$urlid,$subdivid,$dispdivstyle,$dimendivstyle, $windivstyle,$linktextstyle,$explanationstyle,$labelstyle,$titlestyle, - $appendstyle,$gradablestyle,$returnurlstyle,$subdivstyle,$legend,$urlelem, - $toolelem,%toolattr); + $appendstyle,$gradablestyle,$subdivstyle,$legend,$urlelem,$toolelem,%toolattr); $formname = 'new'.$type; $toggle = $type; - $fieldsetid = 'upload'.$type.'form'; + $fieldsetid = 'external'.$type.'form'; $urlid = $type.'url'; map { $toolattr{$_} = $type.$_; } ('dispdiv','dimendiv','dimenwidth','dimenheight', 'crstitlediv','crslabeldiv','crsappenddiv', - 'gradablediv','returnurldiv','crstitle','crslabel', - 'crsappend','windiv','linktextdiv','explanationdiv', - 'linktext','explanation','providerurl','customreturnurl'); + 'gradablediv','crstitle','crslabel','crsappend', + 'windiv','linktextdiv','explanationdiv', + 'linktext','explanation','providerurl'); $dispdivstyle = 'display:none'; $dimendivstyle = 'display:none'; $windivstyle = 'display:none'; @@ -423,19 +415,17 @@ sub extedit_form { $titlestyle = 'display:none'; $appendstyle = 'display:none'; $gradablestyle = 'display:none'; - $returnurlstyle = 'display:none'; $subdivstyle = 'display:block'; if ($supplementalflag) { $formname = 'newsupp'.$type; $toggle = 'supp'.$type; - $fieldsetid = 'uploadsupp'.$type.'form'; + $fieldsetid = 'externalsupp'.$type.'form'; $urlid = 'supp'.$type.'url'; map { $toolattr{$_} = 'supp'.$toolattr{$_}; } (keys(%toolattr)); } my ($link,$legend,$active,$srcclass,$extsrc,$preview,$title,$save,$crstitle,$crslabel, $crsappend,$fieldsetstyle,$action,$hiddenelem,$form,$width,$height,$tooltarget, - $linktext,$explanation,$providerurl,$returnurl,$chkgrd,$chknogrd,%chkstate, - $chknoreturn,$chkreturndef,$chkreturncust,$customreturn,$backtourl); + $linktext,$explanation,$providerurl,$chkgrd,$chknogrd,%chkstate); $fieldsetstyle = 'display: none;'; $action = '/adm/coursedocs'; my $protocol = ($ENV{'SERVER_PORT'} == 443?'https':'http'); @@ -467,7 +457,7 @@ sub extedit_form { $active = ''; } $formname = 'edit'.$type.'_'.$residx; - $fieldsetid = 'upload'.$type.$residx; + $fieldsetid = 'external'.$type.$residx; $urlid = $type.'url_'.$residx; map { $toolattr{$_} .= '_'.$residx; } (keys(%toolattr)); $srcclass = ' class="LC_nobreak"'; @@ -482,7 +472,7 @@ sub extedit_form { if ($type eq 'tool') { $link = $lt{'et'}; } - $link = ''.$link.''.$helpitem; + $link = ''.$link.''.$helpitem; if ($type eq 'tool') { $legend = $lt{'te'}; } else { @@ -586,21 +576,6 @@ sub extedit_form { if ($ltihash->{'crsconf'}->{'explanation'}) { $explanationstyle = 'padding:0;display:inline'; } - if ($ltihash->{'crsconf'}->{'returnurl'}) { - $returnurl = $toolhash{'returnurl'}; - $returnurlstyle = 'display:inline'; - $backtourl = $toolhash{'backtourl'}; - if ($returnurl eq 'none') { - $chknoreturn = ' checked="checked"'; - $customreturn = 'hidden'; - } elsif (($returnurl eq 'custom') && ($backtourl ne '')) { - $chkreturncust = ' checked="checked"'; - $customreturn = 'text'; - } else { - $chkreturndef = ' checked="checked"'; - $customreturn = 'hidden'; - } - } } $toolelem = ''.$image.' '.$tooltitle.'
'; $gradablestyle = 'display:inline'; @@ -683,15 +658,8 @@ sub extedit_form { $crslabel = $env{'course.'.$cdom.'_'.$cnum.'.internal.coursecode'}; $crstitle = $env{'course.'.$cdom.'_'.$cnum.'.description'}; $crsappend = ''; - $returnurl = ''; - $backtourl = ''; - $customreturn = 'hidden'; $chknogrd = ' checked="checked"'; - $chknoreturn = ''; - $chkreturndef = ' checked="checked"'; - $chkreturncust = ''; } - my $onclickreturl = ' onclick="updateReturnUrl('."this.form,'$toolattr{'customreturnurl'}','$toolattr{'returnurldiv'}','exttoolreturnurl'".');"'; $toolelem .= '
'. ''.&mt('Display target:').' '. '
'."\n". + ''. '
'. ''.&mt('Course title:').' '. '
'. - '
'."\n". + ''. '
'. ''.&mt('Append to URL[_1]', ' ('.$providerurl.')
'). '

'. - '
'."\n". + ''. '
'. ''.&mt('Gradable').' '. ''.(' 'x2). '
'."\n". - '
'. - ''.&mt('Include return URL').': '. - ''.(' 'x2). - ''.(' 'x2). - '
'."\n". - ''. - '
'."\n"; + ' />'.&mt('No').''; } my $chooser = $toolelem; if ($type eq 'ext') { @@ -758,17 +716,13 @@ $preview "; } - my $idattr; - unless ($subdivid eq '') { - $idattr = 'id="'.$subdivid.'"'; - } $form = <
$legend $active $chooser -
+
$title @@ -880,8 +834,7 @@ sub extedit_javascript { " var ltitoolsExplain = new Array();\n". " var ltitoolsLabel = new Array();\n". " var ltitoolsTitle = new Array();\n". - " var ltitoolsAppend = new Array();\n". - " var ltitoolsReturnUrl = new Array();\n"; + " var ltitoolsAppend = new Array();\n"; $exttoolnums = " var ltitoolsnum = new Array();\n". " var tooloptval = new Array();\n". " var toolopttxt = new Array();\n"; @@ -901,8 +854,7 @@ 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". - " ltitoolsReturnUrl[$idx] = new Array($num);\n"; + " ltitoolsAppend[$idx] = new Array($num);\n"; my $i=0; foreach my $key (sort { $a <=> $b } keys(%{$toolsref->{$type}})) { if (ref($toolsref->{$type}->{$key}) eq 'HASH') { @@ -941,8 +893,6 @@ 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++; @@ -1100,12 +1050,10 @@ 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; - customreturnurl += '_'+residx; } if (document.getElementById(labelinput)) { var crslabel = document.getElementById(labelinput).value; @@ -1154,33 +1102,6 @@ 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();"); @@ -1191,14 +1112,14 @@ function setExternal(extform,residx,type } function editext(residx,type) { - if (document.getElementById('upload'+type+residx)) { - var curr = document.getElementById('upload'+type+residx).style.display; + if (document.getElementById('external'+type+residx)) { + var curr = document.getElementById('external'+type+residx).style.display; if (curr == 'none') { disp = 'block'; } else { disp = 'none'; } - document.getElementById('upload'+type+residx).style.display=disp; + document.getElementById('external'+type+residx).style.display=disp; } resize_scrollbox('contentscroll','1','1'); return; @@ -1363,7 +1284,6 @@ 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'; @@ -1404,9 +1324,6 @@ 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']; @@ -1524,13 +1441,6 @@ 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; } } @@ -1540,30 +1450,6 @@ 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