version 1.149, 2013/12/03 16:39:45
|
version 1.153.2.1, 2017/10/04 13:00:41
|
Line 134 package Apache::edit;
|
Line 134 package Apache::edit;
|
|
|
use strict; |
use strict; |
use Apache::lonnet; |
use Apache::lonnet; |
|
use Apache::loncommon; |
use HTML::Entities(); |
use HTML::Entities(); |
use Apache::lonlocal; |
use Apache::lonlocal; |
use lib '/home/httpd/lib/perl/'; |
use lib '/home/httpd/lib/perl/'; |
Line 164 sub tag_start {
|
Line 165 sub tag_start {
|
$description=&mt(&Apache::lonxml::description($token)); |
$description=&mt(&Apache::lonxml::description($token)); |
if (!$description) { $description="<$tag>"; } |
if (!$description) { $description="<$tag>"; } |
} |
} |
$result.= &start_table($token)."<tr><td>$description</td> |
$result.= &start_table($token)."<tr><td>".&Apache::loncommon::insert_folding_button(). |
<td>".&mt('Delete?').' '. |
" $description</td><td>".&mt('Delete?')." ".&deletelist($target,$token). |
&deletelist($target,$token) |
"</td><td>".&insertlist($target,$token); |
."</td> |
|
<td>". |
|
&insertlist($target,$token); |
|
#<td>". |
#<td>". |
# &movebuttons($target,$token). |
# &movebuttons($target,$token). |
# "</tr><tr><td colspan=\"3\">\n"; |
# "</tr><tr><td colspan=\"3\">\n"; |
Line 232 sub end_table {
|
Line 230 sub end_table {
|
return $result; |
return $result; |
} |
} |
|
|
sub start_spanning_row { return '<tr><td colspan="5" bgcolor="#F0F0F0">';} |
sub start_spanning_row { |
|
return '<tr name="foldblock_'.$Apache::lonxml::curdepth. |
|
'" style="visibility: \'\'"><td colspan="5" bgcolor="#F0F0F0">'; |
|
} |
sub start_row { return '<tr><td bgcolor="#DDDDDD">'; } |
sub start_row { return '<tr><td bgcolor="#DDDDDD">'; } |
sub end_row { return '</td></tr>'; } |
sub end_row { return '</td></tr>'; } |
|
|
Line 296 sub get_insert_list {
|
Line 297 sub get_insert_list {
|
my $descrip=$Apache::lonxml::insertlist{"$tag.description"}; |
my $descrip=$Apache::lonxml::insertlist{"$tag.description"}; |
my $tagnum =$Apache::lonxml::insertlist{"$tag.num"}; |
my $tagnum =$Apache::lonxml::insertlist{"$tag.num"}; |
$options{$descrip} ="<option value=\"$tagnum\">". |
$options{$descrip} ="<option value=\"$tagnum\">". |
$descrip."</option>\n"; |
&mt($descrip)."</option>\n"; |
} |
} |
foreach my $option (sort(keys(%options))) {$result.=$options{$option};} |
foreach my $option (sort(keys(%options))) {$result.=$options{$option};} |
if ($result) { $result='<option selected="selected"></option>'.$result; } |
if ($result) { $result='<option selected="selected"></option>'.$result; } |
Line 788 sub element_change_detection {
|
Line 789 sub element_change_detection {
|
|
|
sub submit_ask_anyway { |
sub submit_ask_anyway { |
my ($extra_action) = @_; |
my ($extra_action) = @_; |
return ' onclick="still_ask=true;'.$extra_action.'" '; |
my $resource = &Apache::loncommon::escape_single($env{'request.ambiguous'}); |
|
return ' onclick="saveScrollPosition(\''.$resource.'\');still_ask=true;'.$extra_action.';" '; |
} |
} |
|
|
sub submit_dont_ask { |
sub submit_dont_ask { |
my ($extra_action) = @_; |
my ($extra_action) = @_; |
return ' onclick="is_submit=true;'.$extra_action.'" '; |
my $resource = &Apache::loncommon::escape_single($env{'request.ambiguous'}); |
|
return ' onclick="saveScrollPosition(\''.$resource.'\');is_submit=true;'.$extra_action.';" '; |
} |
} |
|
|
|
sub js_update_linknum { |
|
return (<<SCRIPT); |
|
<script type="text/javascript"> |
|
// <![CDATA[ |
|
function updateNumber(name,index,caller,textprompt) { |
|
var pickitem = document.getElementById(name+'_'+index); |
|
var picknumtext = document.getElementById(name+'_numtext_'+index); |
|
if (pickitem.checked) { |
|
var showval = ''; |
|
if (pickitem.value != 'nochoice') { |
|
showval = pickitem.value; |
|
} |
|
var picknum=prompt(textprompt,showval); |
|
if (picknum == '' || picknum == null) { |
|
if (caller == 'check') { |
|
pickitem.checked=false; |
|
pickitem.value='nochoice'; |
|
} |
|
} else { |
|
picknum.toString(); |
|
var regexdigit=/^\\d+\$/; |
|
if (regexdigit.test(picknum)) { |
|
pickitem.value = picknum; |
|
picknumtext.innerHTML = ' <a href="javascript:updateNumber(\\''+name+'\\',\\''+index+'\\',\\'link\\',\\''+textprompt+'\\');">'+picknum+'</a>'; |
|
} else { |
|
if (caller == 'check') { |
|
pickitem.checked=false; |
|
pickitem.value='nochoice'; |
|
} |
|
return; |
|
} |
|
} |
|
} else { |
|
pickitem.value = ''; |
|
picknumtext.innerHTML = ''; |
|
} |
|
} |
|
|
|
// ]]> |
|
</script> |
|
SCRIPT |
|
|
|
} |
|
|
sub textarea_sizes { |
sub textarea_sizes { |
my ($data)=@_; |
my ($data)=@_; |
Line 941 sub hidden_arg {
|
Line 987 sub hidden_arg {
|
} |
} |
|
|
sub checked_arg { |
sub checked_arg { |
my ($description,$name,$list,$token) = @_; |
my ($description,$name,$list,$token,$onclick,$useid) = @_; |
my $result; |
my $result; |
my $optionlist=""; |
my $optionlist=""; |
my $allselected=$token->[2]{$name}; |
my $allselected=$token->[2]{$name}; |
Line 950 sub checked_arg {
|
Line 996 sub checked_arg {
|
my ($value,$text); |
my ($value,$text); |
if ( ref($option) eq 'ARRAY') { |
if ( ref($option) eq 'ARRAY') { |
$value='value="'.$$option[0].'"'; |
$value='value="'.$$option[0].'"'; |
$text=$$option[1]; |
$text=&mt($$option[1]); |
$option=$$option[0]; |
$option=$$option[0]; |
} else { |
} else { |
$text=$option; |
$text=&mt($option); |
$value='value="'.$option.'"'; |
$value='value="'.$option.'"'; |
} |
} |
$result.=' <span class="LC_edit_opt"><label><input type="checkbox" '.$value.' name="'. |
$result.=' <span class="LC_edit_opt"><label><input type="checkbox" '.$value.' name="'. |
Line 964 sub checked_arg {
|
Line 1010 sub checked_arg {
|
last; |
last; |
} |
} |
} |
} |
$result.=&element_change_detection().' />'.$text.'</label></span>'."\n"; |
if ($useid) { |
|
$result .= ' id="'.&html_element_name($name).'" '; |
|
} |
|
$result.=&element_change_detection().$onclick.' />'.$text.'</label></span>'."\n"; |
} |
} |
return $result; |
return $result; |
} |
} |