version 1.5, 2013/02/13 04:41:35
|
version 1.8, 2015/06/09 21:22:56
|
Line 59 sub handler {
|
Line 59 sub handler {
|
my ($supplementalflag,$updated,$output,$errormsg,$residx,$url,$title,$symb); |
my ($supplementalflag,$updated,$output,$errormsg,$residx,$url,$title,$symb); |
if (($env{'form.folderpath'} =~ /^supplemental/) && ($env{'form.suppurl'})) { |
if (($env{'form.folderpath'} =~ /^supplemental/) && ($env{'form.suppurl'})) { |
$supplementalflag = 1; |
$supplementalflag = 1; |
} |
} |
if (($supplementalflag) || ($env{'form.symb'} =~ /^uploaded/)) { |
if (($supplementalflag) || ($env{'form.symb'} =~ /^uploaded/)) { |
($updated,$output,$errormsg,$residx,$url,$title,$symb) = |
($updated,$output,$errormsg,$residx,$url,$title,$symb) = |
&process_changes($supplementalflag,$cdom,$cnum,$chome); |
&process_changes($supplementalflag,$cdom,$cnum,$chome); |
if ($supplementalflag) { |
if ($supplementalflag) { |
if ($url ne $env{'form.suppurl'}) { |
if ($url ne $env{'form.suppurl'}) { |
Line 308 sub display_editor {
|
Line 308 sub display_editor {
|
(my $map,$residx,my $res) = |
(my $map,$residx,my $res) = |
&Apache::lonnet::decode_symb($symb); |
&Apache::lonnet::decode_symb($symb); |
$title = &Apache::lonnet::gettitle($symb); |
$title = &Apache::lonnet::gettitle($symb); |
my $path = &Apache::lonnet::getdocspath($symb); |
my $path = &Apache::loncommon::symb_to_docspath($symb); |
$pathitem = '<input type="hidden" name="folderpath" value="'.&HTML::Entities::encode($path,'<>&"').'" />'; |
$pathitem = '<input type="hidden" name="folderpath" value="'.&HTML::Entities::encode($path,'<>&"').'" />'; |
} |
} |
my $js = &Apache::lonhtmlcommon::scripttag(&extedit_javascript()); |
my $js = &Apache::lonhtmlcommon::scripttag(&extedit_javascript()); |
Line 321 sub display_editor {
|
Line 321 sub display_editor {
|
} |
} |
|
|
sub extedit_javascript { |
sub extedit_javascript { |
my %lt = &Apache::lonlocal::texthash( |
my %js_lt = &Apache::lonlocal::texthash( |
invurl => 'Invalid URL', |
invurl => 'Invalid URL', |
titbl => 'Title is blank', |
titbl => 'Title is blank', |
); |
); |
|
&js_escape(\%js_lt); |
|
|
my $urlregexp = <<'ENDREGEXP'; |
my $urlregexp = <<'ENDREGEXP'; |
/^([a-z]([a-z]|\d|\+|-|\.)*):(\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?((\[(|(v[\da-f]{1,}\.(([a-z]|\d|-|\.|_|~)|[!\$&'\(\)\*\+,;=]|:)+))\])|((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=])*)(:\d*)?)(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*|(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)|((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)|((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)){0})(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i |
/^([a-z]([a-z]|\d|\+|-|\.)*):(\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?((\[(|(v[\da-f]{1,}\.(([a-z]|\d|-|\.|_|~)|[!\$&'\(\)\*\+,;=]|:)+))\])|((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=])*)(:\d*)?)(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*|(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)|((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)|((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)){0})(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i |
Line 340 function setExternal(extform,residx) {
|
Line 341 function setExternal(extform,residx) {
|
String.prototype.trim = function() {return this.replace(\/^\\s+|\\s+$\/g, "");}; } |
String.prototype.trim = function() {return this.replace(\/^\\s+|\\s+$\/g, "");}; } |
var url=extform.exturl.value; |
var url=extform.exturl.value; |
if (title == null || title.trim()=="") { |
if (title == null || title.trim()=="") { |
alert("$lt{'titbl'}"); |
alert("$js_lt{'titbl'}"); |
extform.exttitle.focus(); |
extform.exttitle.focus(); |
return; |
return; |
} |
} |
if (regexp.test(url)) { |
if (regexp.test(url)) { |
url = escape(url); |
url = escape(url); |
|
title = escape(title); |
if (residx > 0) { |
if (residx > 0) { |
eval("extform.importdetail.value=title+'='+url+'='+residx;extform.submit();"); |
eval("extform.importdetail.value=title+'='+url+'='+residx;extform.submit();"); |
} else { |
} else { |
eval("extform.importdetail.value=title+'='+url;extform.submit();"); |
eval("extform.importdetail.value=title+'='+url;extform.submit();"); |
} |
} |
} else { |
} else { |
alert("$lt{'invurl'}"); |
alert("$js_lt{'invurl'}"); |
extform.exturl.focus(); |
extform.exturl.focus(); |
return; |
return; |
} |
} |
Line 378 function extUrlPreview(caller) {
|
Line 380 function extUrlPreview(caller) {
|
if (regexp.test(url)) { |
if (regexp.test(url)) { |
openMyModal(url,500,400,'yes'); |
openMyModal(url,500,400,'yes'); |
} else { |
} else { |
alert("$lt{'invurl'}"); |
alert("$js_lt{'invurl'}"); |
} |
} |
} |
} |
} |
} |