version 1.23, 2017/12/18 22:56:45
|
version 1.28, 2019/05/02 02:12:18
|
Line 296 sub process_changes {
|
Line 296 sub process_changes {
|
|
|
sub update_exttool { |
sub update_exttool { |
my ($marker,$cdom,$cnum,$supplementalflag,$args) = @_; |
my ($marker,$cdom,$cnum,$supplementalflag,$args) = @_; |
my %toolhash=&Apache::lonnet::dump('exttool_'.$marker,$cdom,$cnum); |
|
my (%newhash,$changed,$newgradable,@deleted,$errormsg); |
my (%newhash,$changed,$newgradable,@deleted,$errormsg); |
($newhash{'target'},$newhash{'width'},$newhash{'height'},$newhash{'linktext'},$newhash{'explanation'}, |
($newhash{'target'},$newhash{'width'},$newhash{'height'},$newhash{'linktext'},$newhash{'explanation'}, |
$newhash{'crslabel'},$newhash{'crstitle'},$newhash{'crsappend'},$newhash{'gradable'}) = split(/:/,$args); |
$newhash{'crslabel'},$newhash{'crstitle'},$newhash{'crsappend'},$newhash{'gradable'}) = split(/:/,$args); |
Line 387 sub extedit_form {
|
Line 386 sub extedit_form {
|
$appendstyle,$gradablestyle,$legend,$urlelem,$toolelem,%toolattr); |
$appendstyle,$gradablestyle,$legend,$urlelem,$toolelem,%toolattr); |
$formname = 'new'.$type; |
$formname = 'new'.$type; |
$toggle = $type; |
$toggle = $type; |
$fieldsetid = 'upload'.$type.'form'; |
$fieldsetid = 'external'.$type.'form'; |
$urlid = $type.'url'; |
$urlid = $type.'url'; |
map { $toolattr{$_} = $type.$_; } ('dispdiv','dimendiv','dimenwidth','dimenheight', |
map { $toolattr{$_} = $type.$_; } ('dispdiv','dimendiv','dimenwidth','dimenheight', |
'crstitlediv','crslabeldiv','crsappenddiv', |
'crstitlediv','crslabeldiv','crsappenddiv', |
Line 406 sub extedit_form {
|
Line 405 sub extedit_form {
|
if ($supplementalflag) { |
if ($supplementalflag) { |
$formname = 'newsupp'.$type; |
$formname = 'newsupp'.$type; |
$toggle = 'supp'.$type; |
$toggle = 'supp'.$type; |
$fieldsetid = 'uploadsupp'.$type.'form'; |
$fieldsetid = 'externalsupp'.$type.'form'; |
$urlid = 'supp'.$type.'url'; |
$urlid = 'supp'.$type.'url'; |
map { $toolattr{$_} = 'supp'.$toolattr{$_}; } (keys(%toolattr)); |
map { $toolattr{$_} = 'supp'.$toolattr{$_}; } (keys(%toolattr)); |
} |
} |
Line 444 sub extedit_form {
|
Line 443 sub extedit_form {
|
$active = '<input type="hidden" name="active" value="'.$tabid.'" />'; |
$active = '<input type="hidden" name="active" value="'.$tabid.'" />'; |
} |
} |
$formname = 'edit'.$type.'_'.$residx; |
$formname = 'edit'.$type.'_'.$residx; |
$fieldsetid = 'upload'.$type.$residx; |
$fieldsetid = 'external'.$type.$residx; |
$urlid = $type.'url_'.$residx; |
$urlid = $type.'url_'.$residx; |
map { $toolattr{$_} .= '_'.$residx; } (keys(%toolattr)); |
map { $toolattr{$_} .= '_'.$residx; } (keys(%toolattr)); |
$srcclass = ' class="LC_nobreak"'; |
$srcclass = ' class="LC_nobreak"'; |
Line 459 sub extedit_form {
|
Line 458 sub extedit_form {
|
if ($type eq 'tool') { |
if ($type eq 'tool') { |
$link = $lt{'et'}; |
$link = $lt{'et'}; |
} |
} |
$link = '<a class="LC_menubuttons_link" href="javascript:toggleUpload('."'$toggle'".');">'.$link.'</a>'.$helpitem; |
$link = '<a class="LC_menubuttons_link" href="javascript:toggleExternal('."'$toggle'".');">'.$link.'</a>'.$helpitem; |
if ($type eq 'tool') { |
if ($type eq 'tool') { |
$legend = $lt{'te'}; |
$legend = $lt{'te'}; |
} else { |
} else { |
Line 768 sub extedit_javascript {
|
Line 767 sub extedit_javascript {
|
invurl => 'Invalid URL', |
invurl => 'Invalid URL', |
titbl => 'Title is blank', |
titbl => 'Title is blank', |
invtool => 'Please select an external tool', |
invtool => 'Please select an external tool', |
|
mixfra => 'Show preview in pop-up? (http in https page + no framing)', |
|
mixonly => 'Show preview in pop-up? (http in https page)', |
|
fraonly => 'Show preview in pop-up? (framing disallowed)', |
|
nopopup => 'Pop-up blocked', |
|
nopriv => 'Insufficient privileges to use preview', |
|
badurl => 'URL is not: http://hostname/path or https://hostname/path', |
); |
); |
&js_escape(\%js_lt); |
&js_escape(\%js_lt); |
|
|
Line 942 function setExternal(extform,residx,type
|
Line 947 function setExternal(extform,residx,type
|
} |
} |
|
|
function editext(residx,type) { |
function editext(residx,type) { |
if (document.getElementById('upload'+type+residx)) { |
if (document.getElementById('external'+type+residx)) { |
var curr = document.getElementById('upload'+type+residx).style.display; |
var curr = document.getElementById('external'+type+residx).style.display; |
if (curr == 'none') { |
if (curr == 'none') { |
disp = 'block'; |
disp = 'block'; |
} else { |
} else { |
disp = 'none'; |
disp = 'none'; |
} |
} |
document.getElementById('upload'+type+residx).style.display=disp; |
document.getElementById('external'+type+residx).style.display=disp; |
} |
} |
resize_scrollbox('contentscroll','1','1'); |
resize_scrollbox('contentscroll','1','1'); |
return; |
return; |
Line 960 function extUrlPreview(caller,protocol)
|
Line 965 function extUrlPreview(caller,protocol)
|
var url = document.getElementById(caller).value; |
var url = document.getElementById(caller).value; |
if (regexp.test(url)) { |
if (regexp.test(url)) { |
var http_regex = /^http\:\/\//gi; |
var http_regex = /^http\:\/\//gi; |
|
var mixed = 0; |
|
var noiframe = 0; |
|
var nopriv = 0; |
|
var badurl = 0; |
|
var name = "externalpreview"; |
if ((protocol == 'https') && (http_regex.test(url))) { |
if ((protocol == 'https') && (http_regex.test(url))) { |
window.open(url,"externalpreview","height=400,width=500,scrollbars=1,resizable=1,menubar=0,location=1"); |
mixed = 1; |
} else { |
|
openMyModal(url,500,400,'yes'); |
|
} |
} |
|
var http = new XMLHttpRequest(); |
|
var lcurl = "/adm/exturlcheck"; |
|
var params = "exturl="+url; |
|
http.open("POST",lcurl, true); |
|
http.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); |
|
http.onreadystatechange = function() { |
|
if (http.readyState == 4) { |
|
if (http.status == 200) { |
|
if (http.responseText == 1) { |
|
noiframe = 1; |
|
} else if (http.responseText == -1) { |
|
nopriv = 1; |
|
} else if (http.responseText == 0) { |
|
badurl = 1; |
|
} |
|
openPreviewWindow(url,name,noiframe,mixed,nopriv,badurl); |
|
} |
|
} |
|
} |
|
http.send(params); |
} else { |
} else { |
alert("$js_lt{'invurl'}"); |
alert("$js_lt{'invurl'}"); |
} |
} |
} |
} |
} |
} |
|
|
|
var previewLCWindow = null; |
|
function openPreviewWindow(url,name,noiframe,mixed,nopriv,badurl) { |
|
if (previewLCWindow !=null) { |
|
previewLCWindow.close(); |
|
} |
|
if (badurl) { |
|
alert("$js_lt{'badurl'}"); |
|
} else if (nopriv) { |
|
alert("$js_lt{'nopriv'}"); |
|
} else if ((noiframe == 1) || (mixed == 1)) { |
|
var encurl = encodeURI(url); |
|
var msg; |
|
if (mixed == 1) { |
|
if (noiframe == 1) { |
|
msg = "$js_lt{'mixfra'}"; |
|
} else { |
|
msg = "$js_lt{'mixonly'}"; |
|
} |
|
} else { |
|
msg = "$js_lt{'fraonly'}"; |
|
} |
|
if (confirm(msg)) { |
|
previewLCWindow = window.open(url,name,"height=400,width=500,scrollbars=1,resizable=1,menubar=0,location=1"); |
|
if (previewLCWindow != null) { |
|
previewLCWindow.focus(); |
|
} else { |
|
alert("$js_lt{'nopopup'}"); |
|
} |
|
} |
|
} else { |
|
openMyModal(url,500,400,'yes'); |
|
} |
|
} |
|
|
function updateExttool(caller,form,supplementalflag) { |
function updateExttool(caller,form,supplementalflag) { |
var prefix = ''; |
var prefix = ''; |
if (supplementalflag == 1) { |
if (supplementalflag == 1) { |