version 1.128, 2023/12/13 22:12:17
|
version 1.134, 2025/03/15 01:03:33
|
Line 372 sub handler {
|
Line 372 sub handler {
|
|
|
my %values=&Apache::lonnet::dump('environment',$cdom,$cnum); |
my %values=&Apache::lonnet::dump('environment',$cdom,$cnum); |
my %linkprot=&Apache::lonnet::dump('lti',$cdom,$cnum,undef,undef,undef,1); |
my %linkprot=&Apache::lonnet::dump('lti',$cdom,$cnum,undef,undef,undef,1); |
|
my %domdefs = &Apache::lonnet::get_domain_defaults($cdom); |
|
unless ($phase eq 'process') { |
|
if (ref($domdefs{'linkprotsuggested'}) eq 'HASH') { |
|
$values{'suggested'} = $domdefs{'linkprotsuggested'}; |
|
} |
|
} |
my %ltienc = &Apache::lonnet::dump('nohist_ltienc',$cdom,$cnum,undef,undef,undef,1); |
my %ltienc = &Apache::lonnet::dump('nohist_ltienc',$cdom,$cnum,undef,undef,undef,1); |
my %ltitools = &Apache::lonnet::dump('ltitools',$cdom,$cnum,undef,undef,undef,1); |
my %ltitools = &Apache::lonnet::dump('ltitools',$cdom,$cnum,undef,undef,undef,1); |
my %ltitoolsenc = &Apache::lonnet::dump('nohist_toolsenc',$cdom,$cnum,undef,undef,undef,1); |
my %ltitoolsenc = &Apache::lonnet::dump('nohist_toolsenc',$cdom,$cnum,undef,undef,undef,1); |
Line 793 sub print_config_box {
|
Line 799 sub print_config_box {
|
<tr> |
<tr> |
<td> |
<td> |
<table class="LC_nested">'; |
<table class="LC_nested">'; |
|
if ($action eq 'linkprot') { |
|
if ((ref($settings) eq 'HASH') && (ref($settings->{'suggested'}) eq 'HASH')) { |
|
my $hints; |
|
my $hintcount = 0; |
|
foreach my $key (sort { $a <=> $b } keys(%{$settings->{'suggested'}})) { |
|
if ((ref($settings->{'suggested'}->{$key}) eq 'HASH')) { |
|
if (($settings->{'suggested'}->{$key}-{'name'} ne '') && |
|
($settings->{'suggested'}->{$key}-{'info'} ne '')) { |
|
my $css_class = $hintcount%2?' class="LC_odd_row"':' class="LC_even_row"'; |
|
$hints .= '<tr '.$css_class.'><td class="LC_left_item">'. |
|
$settings->{'suggested'}->{$key}->{'name'}.'</td>'. |
|
'<td class="LC_right_item"><pre>'. |
|
$settings->{'suggested'}->{$key}->{'info'}. |
|
'</pre></td></tr>'; |
|
$hintcount ++; |
|
} |
|
} |
|
} |
|
if ($hintcount) { |
|
$output .= '<tr class="LC_info_row">'. |
|
'<td colspan="2" class="LC_left_item">'.&mt('Recommendation(s) for specific launcher application(s)').'</td>'. |
|
'</tr>'."\n". |
|
'<tr class="LC_info_row">'. |
|
'<td class="LC_left_item"><span class="LC_nobreak">'.&mt('Launcher Application').'</span></td>'. |
|
'<td class="LC_right_item">'.&mt('Recommendation(s)').'</td></tr>'."\n". |
|
$hints; |
|
} |
|
} |
|
} |
if (exists $item->{'header'}->[0]->{'col1'} || |
if (exists $item->{'header'}->[0]->{'col1'} || |
exists $item->{'header'}->[0]->{'col2'}) { |
exists $item->{'header'}->[0]->{'col2'}) { |
$output .= ' |
$output .= ' |
<tr class="LC_info_row"> |
<tr class="LC_info_row"> |
<td class="LC_left_item" valign="top">'.&mt($item->{'header'}->[0]->{'col1'}).'</td>'; |
<td class="LC_left_item" valign="top">'.&mt($item->{'header'}->[0]->{'col1'}).'</td>'; |
if (($action eq 'courseinfo') || ($action eq 'localization') || |
if (($action eq 'courseinfo') || ($action eq 'localization') || |
Line 1991 sub process_ltitools {
|
Line 2026 sub process_ltitools {
|
} else { |
} else { |
$ltitools{$newid}{'display'}{'target'} = 'iframe'; |
$ltitools{$newid}{'display'}{'target'} = 'iframe'; |
} |
} |
foreach my $item ('passback','roster') { |
foreach my $item ('passback','roster','returnurl') { |
if ($env{'form.ltitools_'.$item.'_add'}) { |
if ($env{'form.ltitools_'.$item.'_add'}) { |
$ltitools{$newid}{$item} = 1; |
$ltitools{$newid}{$item} = 1; |
if ($env{'form.ltitools_'.$item.'valid_add'} ne '') { |
if ($item eq 'returnurl') { |
|
if ($env{'form.ltitools_crs'.$item.'_add'}) { |
|
$ltitools{$newid}{'crsconf'}{$item} = 1; |
|
} |
|
} elsif ($env{'form.ltitools_'.$item.'valid_add'} ne '') { |
my $lifetime = $env{'form.ltitools_'.$item.'valid_add'}; |
my $lifetime = $env{'form.ltitools_'.$item.'valid_add'}; |
$lifetime =~ s/^\s+|\s+$//g; |
$lifetime =~ s/^\s+|\s+$//g; |
if ($lifetime =~ /^\d+\.?\d*$/) { |
if ($lifetime =~ /^\d+\.?\d*$/) { |
Line 2178 sub process_ltitools {
|
Line 2217 sub process_ltitools {
|
} else { |
} else { |
$haschanges{$itemid} = 1; |
$haschanges{$itemid} = 1; |
} |
} |
foreach my $extra ('passback','roster') { |
foreach my $extra ('passback','roster','returnurl') { |
if ($env{'form.ltitools_'.$extra.'_'.$i}) { |
if ($env{'form.ltitools_'.$extra.'_'.$i}) { |
$ltitools{$itemid}{$extra} = 1; |
$ltitools{$itemid}{$extra} = 1; |
if ($env{'form.ltitools_'.$extra.'valid_'.$i} ne '') { |
if ($extra eq 'returnurl') { |
|
if ($env{'form.ltitools_crs'.$extra.'_'.$i}) { |
|
$ltitools{$itemid}{'crsconf'}{$extra} = 1; |
|
if (ref($values->{$itemid}{'crsconf'}) eq 'HASH') { |
|
if (!$values->{$itemid}{'crsconf'}{$extra}) { |
|
$haschanges{$itemid} = 1; |
|
} |
|
} else { |
|
$haschanges{$itemid} = 1; |
|
} |
|
} |
|
} elsif ($env{'form.ltitools_'.$extra.'valid_'.$i} ne '') { |
my $lifetime = $env{'form.ltitools_'.$extra.'valid_'.$i}; |
my $lifetime = $env{'form.ltitools_'.$extra.'valid_'.$i}; |
$lifetime =~ s/^\s+|\s+$//g; |
$lifetime =~ s/^\s+|\s+$//g; |
if ($lifetime =~ /^\d+\.?\d*$/) { |
if ($lifetime =~ /^\d+\.?\d*$/) { |
Line 2700 sub store_changes {
|
Line 2750 sub store_changes {
|
$displayname = &mt('Recipients of '.$text.' questions'); |
$displayname = &mt('Recipients of '.$text.' questions'); |
} |
} |
} elsif ($item eq 'discussion') { |
} elsif ($item eq 'discussion') { |
if ($key =~ /^p(lc|ch)\.roles\.denied/) { |
if ($key =~ /^p(lc|ch|ac)\.roles\.denied/) { |
$displayname = &mt("$text (role-based)"); |
$displayname = &mt("$text (role-based)"); |
if ($displayval ne '') { |
if ($displayval ne '') { |
my @roles = split(',',$displayval); |
my @roles = split(',',$displayval); |
@roles = map { &Apache::lonnet::plaintext($_); } @roles; |
@roles = map { &Apache::lonnet::plaintext($_); } @roles; |
$displayval = join(', ',@roles); |
$displayval = join(', ',@roles); |
} |
} |
} elsif ($key =~ /^p(lc|ch)\.users\.denied/) { |
} elsif ($key =~ /^p(lc|ch|ac)\.users\.denied/) { |
$displayname = &mt("$text (specific user(s))"); |
$displayname = &mt("$text (specific user(s))"); |
} else { |
} else { |
if ($key eq 'allow_discussion_post_editing') { |
if ($key eq 'allow_discussion_post_editing') { |
Line 3285 sub store_ltitools {
|
Line 3335 sub store_ltitools {
|
} |
} |
} |
} |
} |
} |
$output .= '<li>'.&mt('Configurable in course:'); |
$output .= '<li>'; |
|
if ($context eq 'domain') { |
|
$output .= &mt('Configurable in course'); |
|
} else { |
|
$output .= &mt('Configurable for each instance of tool in course'); |
|
} |
|
$output .= ':'; |
my @possconfig = ('label','title','target','linktext','explanation','append'); |
my @possconfig = ('label','title','target','linktext','explanation','append'); |
my $numconfig = 0; |
my $numconfig = 0; |
if (ref($changes->{$itemid}{'crsconf'}) eq 'HASH') { |
if (ref($changes->{$itemid}{'crsconf'}) eq 'HASH') { |
Line 3300 sub store_ltitools {
|
Line 3356 sub store_ltitools {
|
$output .= ' '.&mt('None'); |
$output .= ' '.&mt('None'); |
} |
} |
$output .= '</li>'; |
$output .= '</li>'; |
foreach my $item ('passback','roster') { |
foreach my $item ('passback','roster','returnurl') { |
$output .= '<li>'.$lt{$item}.' '; |
$output .= '<li>'.$lt{$item}.' '; |
if ($changes->{$itemid}{$item}) { |
if ($changes->{$itemid}{$item}) { |
$output .= &mt('Yes'); |
$output .= &mt('Yes'); |
if ($changes->{$itemid}{$item.'valid'}) { |
if ($item eq 'returnurl') { |
|
if (ref($changes->{$itemid}{'crsconf'}) eq 'HASH') { |
|
$output .= ' ['.&mt('Configurable in course').': '; |
|
if ($changes->{$itemid}{'crsconf'}{$item}) { |
|
$output .= &mt('Yes'); |
|
} else { |
|
$output .= &mt('No'); |
|
} |
|
$output .= ']'; |
|
} |
|
} elsif ($changes->{$itemid}{$item.'valid'}) { |
if ($item eq 'passback') { |
if ($item eq 'passback') { |
$output .= ' '.&mt('valid for at least [quant,_1,day] after launch', |
$output .= ' '.&mt('valid for at least [quant,_1,day] after launch', |
$changes->{$itemid}{$item.'valid'}); |
$changes->{$itemid}{$item.'valid'}); |
Line 5257 sub update_releasereq {
|
Line 5323 sub update_releasereq {
|
} |
} |
$modified_courses = []; |
$modified_courses = []; |
} |
} |
undef($registered_cleanup); |
return OK; |
return; |
|
} |
} |
|
|
sub show_autocoowners { |
sub show_autocoowners { |
Line 6587 sub print_ltitools {
|
Line 6652 sub print_ltitools {
|
'<div class="LC_left_float">'.$lt{'linktext'}.'<br />'. |
'<div class="LC_left_float">'.$lt{'linktext'}.'<br />'. |
'<input type="text" name="ltitools_linktext_'.$i.'" size="25" value="'.$currdisp{'linktext'}.'" /></div>'. |
'<input type="text" name="ltitools_linktext_'.$i.'" size="25" value="'.$currdisp{'linktext'}.'" /></div>'. |
'<div class="LC_left_float">'.$lt{'explanation'}.'<br />'. |
'<div class="LC_left_float">'.$lt{'explanation'}.'<br />'. |
'<textarea name="ltitools_explanation_'.$i.'" rows="5" cols="40">'.$currdisp{'explanation'}. |
'<textarea name="ltitools_explanation_'.$i.'" rows="5" cols="30">'.$currdisp{'explanation'}. |
'</textarea></div><div style=""></div><br />'; |
'</textarea></div><div style=""></div><br />'; |
my %units = ( |
my %units = ( |
'passback' => 'days', |
'passback' => 'days', |
'roster' => 'seconds', |
'roster' => 'seconds', |
); |
); |
foreach my $extra ('passback','roster') { |
my %courseconfig; |
|
if (ref($settings->{$item}) eq 'HASH') { |
|
if (ref($settings->{$item}->{'crsconf'}) eq 'HASH') { |
|
%courseconfig = %{$settings->{$item}->{'crsconf'}}; |
|
} |
|
} |
|
foreach my $extra ('passback','roster','returnurl') { |
my $validsty = 'none'; |
my $validsty = 'none'; |
my $currvalid; |
my $currvalid; |
my $checkedon = ''; |
my $checkedon = ''; |
my $checkedoff = ' checked="checked"'; |
my $checkedoff = ' checked="checked"'; |
|
my $crscheckedon = ''; |
|
my $crscheckedoff = ' checked="checked"'; |
if ($settings->{$item}->{$extra}) { |
if ($settings->{$item}->{$extra}) { |
$checkedon = $checkedoff; |
$checkedon = $checkedoff; |
$checkedoff = ''; |
$checkedoff = ''; |
$validsty = 'inline-block'; |
$validsty = 'inline-block'; |
if ($settings->{$item}->{$extra.'valid'} =~ /^\d+\.?\d*$/) { |
if ($extra eq 'returnurl') { |
|
if ($courseconfig{$extra}) { |
|
$crscheckedon = ' checked="checked"'; |
|
$crscheckedoff = ''; |
|
} |
|
} elsif ($settings->{$item}->{$extra.'valid'} =~ /^\d+\.?\d*$/) { |
$currvalid = $settings->{$item}->{$extra.'valid'}; |
$currvalid = $settings->{$item}->{$extra.'valid'}; |
} |
} |
} |
} |
Line 6611 sub print_ltitools {
|
Line 6689 sub print_ltitools {
|
'<label><input type="radio" name="ltitools_'.$extra.'_'.$i.'" value="0"'.$checkedoff.$onclick.' />'. |
'<label><input type="radio" name="ltitools_'.$extra.'_'.$i.'" value="0"'.$checkedoff.$onclick.' />'. |
&mt('No').'</label>'.(' 'x2). |
&mt('No').'</label>'.(' 'x2). |
'<label><input type="radio" name="ltitools_'.$extra.'_'.$i.'" value="1"'.$checkedon.$onclick.' />'. |
'<label><input type="radio" name="ltitools_'.$extra.'_'.$i.'" value="1"'.$checkedon.$onclick.' />'. |
&mt('Yes').'</label></span></div>'. |
&mt('Yes').'</label></span></div>'; |
'<div class="LC_floatleft" style="display:'.$validsty.';" id="ltitools_'.$extra.'time_'.$i.'">'. |
if ($extra eq 'returnurl') { |
'<span class="LC_nobreak">'. |
$datatable .= '<div class="LC_floatleft" style="display:'.$validsty.';" id="ltitools_course'.$extra.'_'.$i.'">'. |
&mt("until at least [_1] $units{$extra} after launch", |
'<span class="LC_nobreak"> -- '.&mt('configurable in course').': '. |
'<input type="text" name="ltitools_'.$extra.'valid_'.$i.'" value="'.$currvalid.'" />'). |
'<label><input type="radio" name="ltitools_crs'.$extra.'_'.$i.'" value="0"'.$crscheckedoff.' />'. |
'</span></div><div style="padding:0;clear:both;margin:0;border:0"></div>'; |
&mt('No').'</label>'.(' 'x2). |
|
'<label><input type="radio" name="ltitools_crs'.$extra.'_'.$i.'" value="1"'.$crscheckedon.' />'. |
|
&mt('Yes').'</label>'; |
|
} else { |
|
$datatable .= '<div class="LC_floatleft" style="display:'.$validsty.';" id="ltitools_'.$extra.'time_'.$i.'">'. |
|
'<span class="LC_nobreak">'. |
|
&mt("until at least [_1] $units{$extra} after launch", |
|
'<input type="text" name="ltitools_'.$extra.'valid_'.$i.'" value="'.$currvalid.'" />'); |
|
} |
|
$datatable .= '</span></div><div style="padding:0;clear:both;margin:0;border:0"></div>'; |
} |
} |
$datatable .= '<span class="LC_nobreak">'.$lt{'icon'}.': '; |
$datatable .= '<span class="LC_nobreak">'.$lt{'icon'}.': '; |
if ($imgsrc) { |
if ($imgsrc) { |
Line 6702 sub print_ltitools {
|
Line 6789 sub print_ltitools {
|
} |
} |
$datatable .= '</select></td>'; |
$datatable .= '</select></td>'; |
} |
} |
$datatable .= '</tr></table></fieldset>'; |
$datatable .= '</tr></table></fieldset>'."\n". |
my %courseconfig; |
'<fieldset><legend>'; |
if (ref($settings->{$item}) eq 'HASH') { |
if ($context eq 'domain') { |
if (ref($settings->{$item}->{'crsconf'}) eq 'HASH') { |
$datatable .= &mt('Configurable in course'); |
%courseconfig = %{$settings->{$item}->{'crsconf'}}; |
} else { |
} |
$datatable .= &mt('Configurable for each instance of tool in course'); |
} |
} |
$datatable .= '<fieldset><legend>'.&mt('Configurable in course').'</legend><span class="LC_nobreak">'; |
$datatable .= '</legend><span class="LC_nobreak">'; |
foreach my $item ('label','title','target','linktext','explanation','append') { |
foreach my $item ('label','title','target','linktext','explanation','append') { |
my $checked; |
my $checked; |
if ($courseconfig{$item}) { |
if ($courseconfig{$item}) { |
Line 6730 sub print_ltitools {
|
Line 6817 sub print_ltitools {
|
'<label><input type="checkbox" name="ltitools_customdel_'.$i.'" value="'. |
'<label><input type="checkbox" name="ltitools_customdel_'.$i.'" value="'. |
$key.'" />'.&mt('Delete').'</label></span></td><td>'.$key.'</td>'. |
$key.'" />'.&mt('Delete').'</label></span></td><td>'.$key.'</td>'. |
'<td><input type="text" name="ltitools_customval_'.$key.'_'.$i.'"'. |
'<td><input type="text" name="ltitools_customval_'.$key.'_'.$i.'"'. |
' value="'.$custom{$key}.'" /></td></tr>'; |
' value="'.$custom{$key}.'" size="35" /></td></tr>'; |
} |
} |
} |
} |
} |
} |
$datatable .= '<tr><td><span class="LC_nobreak">'. |
$datatable .= '<tr><td><span class="LC_nobreak">'. |
'<label><input type="checkbox" name="ltitools_customadd" value="'.$i.'" />'. |
'<label><input type="checkbox" name="ltitools_customadd" value="'.$i.'" />'. |
&mt('Add').'</label></span></td><td><input type="text" name="ltitools_custom_name_'.$i.'" />'. |
&mt('Add').'</label></span></td><td><input type="text" name="ltitools_custom_name_'.$i.'" />'. |
'</td><td><input type="text" name="ltitools_custom_value_'.$i.'" /></td></tr>'; |
'</td><td><input type="text" name="ltitools_custom_value_'.$i.'" size="35" /></td></tr>'; |
$datatable .= '</table></fieldset></td></tr>'."\n"; |
$datatable .= '</table></fieldset></td></tr>'."\n"; |
$itemcount ++; |
$itemcount ++; |
} |
} |
Line 6811 sub print_ltitools {
|
Line 6898 sub print_ltitools {
|
'passback' => '7', |
'passback' => '7', |
'roster' => '300', |
'roster' => '300', |
); |
); |
foreach my $extra ('passback','roster') { |
foreach my $extra ('passback','roster','returnurl') { |
my $onclick = ' onclick="toggleLTITools(this.form,'."'$extra','add'".');"'; |
my $onclick = ' onclick="toggleLTITools(this.form,'."'$extra','add'".');"'; |
$datatable .= '<div class="LC_floatleft"><span class="LC_nobreak">'.$lt{$extra}.' '. |
$datatable .= '<div class="LC_floatleft"><span class="LC_nobreak">'.$lt{$extra}.' '. |
'<label><input type="radio" name="ltitools_'.$extra.'_add" value="0" checked="checked"'.$onclick.' />'. |
'<label><input type="radio" name="ltitools_'.$extra.'_add" value="0" checked="checked"'.$onclick.' />'. |
&mt('No').'</label></span>'.(' 'x2).'<span class="LC_nobreak">'. |
&mt('No').'</label></span>'.(' 'x2).'<span class="LC_nobreak">'. |
'<label><input type="radio" name="ltitools_'.$extra.'_add" value="1"'.$onclick.' />'. |
'<label><input type="radio" name="ltitools_'.$extra.'_add" value="1"'.$onclick.' />'. |
&mt('Yes').'</label></span></div>'. |
&mt('Yes').'</label></span></div>'; |
'<div class="LC_floatleft" style="display:none;" id="ltitools_'.$extra.'time_add">'. |
if ($extra eq 'returnurl') { |
'<span class="LC_nobreak">'. |
$datatable .= '<div class="LC_floatleft" style="display:none;" id="ltitools_course'.$extra.'_add">'. |
&mt("until at least [_1] $units{$extra} after launch", |
'<span class="LC_nobreak"> -- '.&mt('configurable in course').': '. |
'<input type="text" name="ltitools_'.$extra.'valid_add" value="'.$defaulttimes{$extra}.'" />'). |
'<label><input type="radio" name="ltitools_crs'.$extra.'_add" value="0" checked="checked" />'. |
'</span></div><div style="padding:0;clear:both;margin:0;border:0"></div>'; |
&mt('No').'</label>'.(' 'x2). |
|
'<label><input type="radio" name="ltitools_crs'.$extra.'_add" value="1" />'. |
|
&mt('Yes').'</label>'; |
|
} else { |
|
$datatable .= '<div class="LC_floatleft" style="display:none;" id="ltitools_'.$extra.'time_add">'. |
|
'<span class="LC_nobreak">'. |
|
&mt("until at least [_1] $units{$extra} after launch", |
|
'<input type="text" name="ltitools_'.$extra.'valid_add" value="'.$defaulttimes{$extra}.'" />'); |
|
} |
|
$datatable .= '</span></div><div style="padding:0;clear:both;margin:0;border:0"></div>'; |
} |
} |
$datatable .= '<span class="LC_nobreak">'.$lt{'icon'}.': '. |
$datatable .= '<span class="LC_nobreak">'.$lt{'icon'}.': '. |
'('.&mt('if larger than 21x21 pixels, image will be scaled').') '; |
'('.&mt('if larger than 21x21 pixels, image will be scaled').') '; |
Line 6867 sub print_ltitools {
|
Line 6963 sub print_ltitools {
|
$datatable .= '</select></td>'; |
$datatable .= '</select></td>'; |
} |
} |
$datatable .= '</tr></table></fieldset>'. |
$datatable .= '</tr></table></fieldset>'. |
'<fieldset><legend>'.&mt('Configurable in course').'</legend><span class="LC_nobreak">'; |
'<fieldset><legend>'; |
|
if ($context eq 'domain') { |
|
$datatable .= &mt('Configurable in course'); |
|
} else { |
|
$datatable .= &mt('Configurable for each instance of tool in course'); |
|
} |
|
$datatable .= '</legend><span class="LC_nobreak">'; |
foreach my $item ('label','title','target','linktext','explanation','append') { |
foreach my $item ('label','title','target','linktext','explanation','append') { |
$datatable .= '<label>'. |
$datatable .= '<label>'. |
'<input type="checkbox" name="ltitools_add_courseconfig" value="'.$item.'" checked="checked" />'. |
'<input type="checkbox" name="ltitools_add_courseconfig" value="'.$item.'" checked="checked" />'. |
Line 6913 sub ltitools_names {
|
Line 7015 sub ltitools_names {
|
'explanation' => 'Default Explanation', |
'explanation' => 'Default Explanation', |
'passback' => 'Tool can return grades:', |
'passback' => 'Tool can return grades:', |
'roster' => 'Tool can retrieve roster:', |
'roster' => 'Tool can retrieve roster:', |
|
'returnurl' => 'Return URL sent on launch:', |
'crstarget' => 'Display target', |
'crstarget' => 'Display target', |
'crslabel' => 'Course label', |
'crslabel' => 'Course label', |
'crstitle' => 'Course title', |
'crstitle' => 'Course title', |
Line 7514 sub print_linkprotection {
|
Line 7617 sub print_linkprotection {
|
$onclickreturnurl.$checkedreturnurl{'no'}.$disabled.' />'.&mt('No').'</label> '. |
$onclickreturnurl.$checkedreturnurl{'no'}.$disabled.' />'.&mt('No').'</label> '. |
'<label><input type="radio" name="linkprot_returnurl_'.$i.'" value="1"'. |
'<label><input type="radio" name="linkprot_returnurl_'.$i.'" value="1"'. |
$onclickreturnurl.$checkedreturnurl{'yes'}.$disabled.' />'.&mt('Yes').'</label></span>'. |
$onclickreturnurl.$checkedreturnurl{'yes'}.$disabled.' />'.&mt('Yes').'</label></span>'. |
' </span><div id="linkprot_divurlparam_'.$i.'" style="display:none" />'. |
' <div id="linkprot_divurlparam_'.$i.'" style="display:none">'. |
'<span class="LC_nobreak">'.&mt('Parameter name').':'. |
'<span class="LC_nobreak">'.&mt('Parameter name').':'. |
'<input type="text" size="15" name="linkprot_urlparam_'.$i.'" value="'.$values{'returnurl'}.'" autocomplete="off"'.$disabled.' />'. |
'<input type="text" size="15" name="linkprot_urlparam_'.$i.'" value="'.$values{'returnurl'}.'" autocomplete="off"'.$disabled.' />'. |
'</span></div> '; |
'</span></div> '; |
Line 7586 sub print_linkprotection {
|
Line 7689 sub print_linkprotection {
|
$onclickpassback.$checkedpassback{'no'}.$disabled.' />'.&mt('No').'</label> '. |
$onclickpassback.$checkedpassback{'no'}.$disabled.' />'.&mt('No').'</label> '. |
'<label><input type="radio" name="linkprot_passback_add" value="1"'. |
'<label><input type="radio" name="linkprot_passback_add" value="1"'. |
$onclickpassback.$checkedpassback{'yes'}.$disabled.' />'.&mt('Yes').'</label></span>'. |
$onclickpassback.$checkedpassback{'yes'}.$disabled.' />'.&mt('Yes').'</label></span>'. |
'<br /><div id="linkprot_passbackparam_add" class="LC_floatleft" style="display:none" />'. |
'<br /><div id="linkprot_passbackparam_add" class="LC_floatleft" style="display:none">'. |
'<span class="LC_nobreak">'.&mt('Grade format'). |
'<span class="LC_nobreak">'.&mt('Grade format'). |
'<label><input type="radio" name="linkprot_passbackformat_add" value="1.1"'.$checkedpassbackfmt{'1p1'}.$disabled.' />'. |
'<label><input type="radio" name="linkprot_passbackformat_add" value="1.1"'.$checkedpassbackfmt{'1p1'}.$disabled.' />'. |
&mt('Outcomes Service (1.1)').'</label>'.(' 'x2). |
&mt('Outcomes Service (1.1)').'</label>'.(' 'x2). |
Line 7599 sub print_linkprotection {
|
Line 7702 sub print_linkprotection {
|
$onclickreturnurl.$checkedreturnurl{'no'}.$disabled.' />'.&mt('No').'</label> '. |
$onclickreturnurl.$checkedreturnurl{'no'}.$disabled.' />'.&mt('No').'</label> '. |
'<label><input type="radio" name="linkprot_returnurl_add" value="1"'. |
'<label><input type="radio" name="linkprot_returnurl_add" value="1"'. |
$onclickreturnurl.$checkedreturnurl{'yes'}.$disabled.' />'.&mt('Yes').'</label></span>'. |
$onclickreturnurl.$checkedreturnurl{'yes'}.$disabled.' />'.&mt('Yes').'</label></span>'. |
' </span><div id="linkprot_divurlparam_add" style="display:none" />'. |
' <div id="linkprot_divurlparam_add" style="display:none">'. |
'<span class="LC_nobreak">'.&mt('Parameter name').':'. |
'<span class="LC_nobreak">'.&mt('Parameter name').':'. |
'<input type="text" size="15" name="linkprot_urlparam_add" value="" autocomplete="off"'.$disabled.' />'. |
'<input type="text" size="15" name="linkprot_urlparam_add" value="" autocomplete="off"'.$disabled.' />'. |
'</span></div> '; |
'</span></div> '; |