version 1.196.4.28.2.6, 2024/03/03 01:57:35
|
version 1.247, 2025/03/05 05:24:42
|
Line 165 sub texenginechanger {
|
Line 165 sub texenginechanger {
|
my %mathchoices=('' => 'Default', |
my %mathchoices=('' => 'Default', |
'tth' => 'tth (TeX to HTML)', |
'tth' => 'tth (TeX to HTML)', |
#'ttm' => 'TeX to MathML', |
#'ttm' => 'TeX to MathML', |
'MathJax' => 'MathJax', |
'MathJax' => 'MathJax', |
'mimetex' => 'mimetex (Convert to Images)', |
'mimetex' => 'mimetex (Convert to Images)', |
'raw' => 'Raw (Screen Reader)' |
'raw' => 'Raw (Screen Reader)' |
); |
); |
Line 182 sub texenginechanger {
|
Line 182 sub texenginechanger {
|
'change' => 'Save', |
'change' => 'Save', |
'exmpl' => 'Examples', |
'exmpl' => 'Examples', |
'mathjax' => 'MathJax:', |
'mathjax' => 'MathJax:', |
'mathjaxinfo' => 'MathJax provides rendered equations whose source code can be extracted in TeX and MathML formats by right clicking the equation.', |
'mathjaxinfo' => 'MathJax provides rendered equations whose source code can be extracted in TeX and MathML formats by right clicking the equation.', |
'tth' => 'tth (TeX to HTML):', |
'tth' => 'tth (TeX to HTML):', |
'mimetex' => 'mimetex (Convert to Images):', |
'mimetex' => 'mimetex (Convert to Images):', |
); |
); |
Line 280 sub rolesprefchanger {
|
Line 280 sub rolesprefchanger {
|
my $hotlist_n=$userenv{'recentrolesn'}; |
my $hotlist_n=$userenv{'recentrolesn'}; |
my ($checkedon,$checkedoff); |
my ($checkedon,$checkedoff); |
if ($hotlist_flag) { |
if ($hotlist_flag) { |
$checkedon = 'checked="checked"'; |
$checkedon = 'checked="checked"'; |
} else { |
} else { |
$checkedoff = 'checked="checked"'; |
$checkedoff = 'checked="checked"'; |
} |
} |
Line 491 sub screennamechanger {
|
Line 491 sub screennamechanger {
|
text => 'Change Screen Name'}); |
text => 'Change Screen Name'}); |
$r->print(Apache::loncommon::start_page('Personal Data')); |
$r->print(Apache::loncommon::start_page('Personal Data')); |
$r->print(Apache::lonhtmlcommon::breadcrumbs('Change Screen Name')); |
$r->print(Apache::lonhtmlcommon::breadcrumbs('Change Screen Name')); |
$r->print('<p>' |
$r->print('<div class="LC_landmark" role="main"><p>' |
.&mt('Change the name that is displayed in your posts.') |
.&mt('Change the name that is displayed in your posts.') |
.'</p>' |
.'</p>' |
); |
); |
$r->print('<form name="prefs" action="/adm/preferences" method="post">' |
$r->print('<form name="prefs" action="/adm/preferences" method="post">' |
.'<input type="hidden" name="action" value="verify_and_change_screenname" />' |
.'<input type="hidden" name="action" value="verify_and_change_screenname" />' |
.&Apache::lonhtmlcommon::start_pick_box() |
.&Apache::lonhtmlcommon::start_pick_box() |
.&Apache::lonhtmlcommon::row_title(&mt('Screenname').' '.&mt('(shown if you post anonymously)')) |
.&Apache::lonhtmlcommon::row_title('<label for="screenname">'.&mt('Screenname').'</label> '.&mt('(shown if you post anonymously)')) |
.'<input type="text" size="20" value="'.$screenname.'" name="screenname" />' |
.'<input type="text" size="20" value="'.$screenname.'" name="screenname" id="screenname" />' |
.&Apache::lonhtmlcommon::row_closure() |
.&Apache::lonhtmlcommon::row_closure() |
.&Apache::lonhtmlcommon::row_title(&mt('Nickname').' '.&mt('(shown if you post non-anonymously)')) |
.&Apache::lonhtmlcommon::row_title('<label for="nickname">'.&mt('Nickname').'</label> '.&mt('(shown if you post non-anonymously)')) |
.'<input type="text" size="20" value="'.$nickname.'" name="nickname" />' |
.'<input type="text" size="20" value="'.$nickname.'" name="nickname" id="nickname" />' |
.&Apache::lonhtmlcommon::row_closure() |
.&Apache::lonhtmlcommon::row_closure() |
.&Apache::lonhtmlcommon::row_title() |
.&Apache::lonhtmlcommon::row_title('<span class="LC_visually_hidden">'.&mt('Submit').':</span>','','','',1) |
.'<input type="submit" value="'.&mt('Save').'" />' |
.'<input type="submit" value="'.&mt('Save').'" />' |
.&Apache::lonhtmlcommon::row_closure(1) |
.&Apache::lonhtmlcommon::row_closure(1) |
.&Apache::lonhtmlcommon::end_pick_box() |
.&Apache::lonhtmlcommon::end_pick_box() |
.'</form>' |
.'</form></div>' |
); |
); |
} |
} |
|
|
Line 683 sub verify_and_change_clicker {
|
Line 683 sub verify_and_change_clicker {
|
my $r = shift; |
my $r = shift; |
my $user = $env{'user.name'}; |
my $user = $env{'user.name'}; |
my $domain = $env{'user.domain'}; |
my $domain = $env{'user.domain'}; |
|
my $uhome = $env{'user.home'}; |
my $newclickers = $env{'form.clickers'}; |
my $newclickers = $env{'form.clickers'}; |
|
my $message; |
$newclickers=~s/[^\w\:\-]+/\,/gs; |
$newclickers=~s/[^\w\:\-]+/\,/gs; |
$newclickers=~tr/a-z/A-Z/; |
$newclickers=~tr/a-z/A-Z/; |
$newclickers=~s/[\:\-]+/\-/g; |
$newclickers=~s/[\:\-]+/\-/g; |
$newclickers=~s/\,+/\,/g; |
$newclickers=~s/\,+/\,/g; |
$newclickers=~s/^\,//; |
$newclickers=~s/^\,//; |
$newclickers=~s/\,$//; |
$newclickers=~s/\,$//; |
&Apache::lonnet::put('environment',{'clickers' => $newclickers}); |
my @oldclickers = split(/,/,$env{'environment.clickers'}); |
&Apache::lonnet::appenv({'environment.clickers' => $newclickers}); |
my @newclickers = split(/,/,$newclickers); |
my $message=&Apache::lonhtmlcommon::confirm_success(&mt('Registering clickers: [_1]',$newclickers)); |
my %newuniq; |
|
map { $newuniq{$_} = 1; } @newclickers; |
|
@newclickers = sort(keys(%newuniq)); |
|
my @differences = &Apache::loncommon::compare_arrays(\@oldclickers,\@newclickers); |
|
if (@differences) { |
|
my $putres = &Apache::lonnet::put('environment',{'clickers' => $newclickers}); |
|
if ($putres eq 'ok') { |
|
my @adds = (); |
|
my @dels = (); |
|
foreach my $item (@differences) { |
|
if (grep(/^\Q$item\E$/,@newclickers)) { |
|
push(@adds,$item); |
|
} else { |
|
push(@dels,$item); |
|
} |
|
} |
|
if (@dels) { |
|
my %delclicker; |
|
map { $delclicker{$_} = $user; } @dels; |
|
my $putresult = &Apache::lonnet::iddel($domain,\%delclicker,$uhome,'clickers'); |
|
} |
|
if (@adds) { |
|
my %addclicker; |
|
map { $addclicker{$_} = $user; } @adds; |
|
my $putresult = &Apache::lonnet::updateclickers($domain,'add',\%addclicker,$uhome,1); |
|
} |
|
&Apache::lonnet::appenv({'environment.clickers' => $newclickers}); |
|
$message=&Apache::lonhtmlcommon::confirm_success(&mt('Registering clickers: [_1]',$newclickers)); |
|
} else { |
|
$message=&Apache::lonhtmlcommon::confirm_success(&mt('Error saving clicker ID').1); |
|
} |
|
} else { |
|
$message='<span class="LC_info">'.&mt('Clicker information unchanged').'</span>'; |
|
} |
$message=&Apache::loncommon::confirmwrapper($message); |
$message=&Apache::loncommon::confirmwrapper($message); |
&print_main_menu($r, $message); |
&print_main_menu($r, $message); |
} |
} |
Line 829 sub msgforwardchanger {
|
Line 864 sub msgforwardchanger {
|
my $validatescript = &Apache::lonhtmlcommon::javascript_valid_email(); |
my $validatescript = &Apache::lonhtmlcommon::javascript_valid_email(); |
my $jscript = qq| |
my $jscript = qq| |
<script type="text/javascript" language="JavaScript"> |
<script type="text/javascript" language="JavaScript"> |
|
// <![CDATA[ |
function validate() { |
function validate() { |
for (var i=0; i<document.prefs.numnotify.value; i++) { |
for (var i=0; i<document.prefs.numnotify.value; i++) { |
var checkaddress = 0; |
var checkaddress = 0; |
Line 881 function modify_address(adnum) {
|
Line 917 function modify_address(adnum) {
|
} |
} |
|
|
$validatescript |
$validatescript |
|
|
|
// ]]> |
</script> |
</script> |
|; |
|; |
$r->print(<<ENDMSG); |
$r->print(<<ENDMSG); |
Line 1142 sub colorschanger {
|
Line 1180 sub colorschanger {
|
foreach my $item (sort(keys(%colortypes))) { |
foreach my $item (sort(keys(%colortypes))) { |
my $curcol=&Apache::loncommon::designparm($function.'.'.$item,$domain); |
my $curcol=&Apache::loncommon::designparm($function.'.'.$item,$domain); |
$chtable.=&Apache::loncommon::start_data_table_row(). |
$chtable.=&Apache::loncommon::start_data_table_row(). |
'<td>'.$colortypes{$item}.'<td><input name="'.$item. |
'<td>'.$colortypes{$item}.'<td><input name="'.$item. |
'" class="colorchooser" size="10" value="'.$curcol. |
'" class="colorchooser" size="10" value="'.$curcol. |
'" /></td>'. |
'" /></td>'. |
&Apache::loncommon::end_data_table_row()."\n"; |
&Apache::loncommon::end_data_table_row()."\n"; |
} |
} |
my $end_data_table = &Apache::loncommon::end_data_table(); |
my $end_data_table = &Apache::loncommon::end_data_table(); |
my $pjump_def = &Apache::lonhtmlcommon::pjump_javascript_definition(); |
my $pjump_def = &Apache::lonhtmlcommon::pjump_javascript_definition(); |
Line 1154 sub colorschanger {
|
Line 1192 sub colorschanger {
|
my $resetbuttondesc = &mt('Reset All Colors to Default'); |
my $resetbuttondesc = &mt('Reset All Colors to Default'); |
my $colorchooser=&Apache::lonhtmlcommon::color_picker(); |
my $colorchooser=&Apache::lonhtmlcommon::color_picker(); |
$r->print('<script type="text/javascript" language="JavaScript"> |
$r->print('<script type="text/javascript" language="JavaScript"> |
' . $colorchooser . ' |
// <![CDATA[' ."\n". $colorchooser . "\n". ' |
|
// ]]> |
</script> |
</script> |
'); |
'); |
$r->print(<<ENDCOL); |
$r->print(<<ENDCOL); |
Line 1197 sub verify_and_change_colors {
|
Line 1236 sub verify_and_change_colors {
|
my $message=''; |
my $message=''; |
foreach my $item (keys(%colortypes)) { |
foreach my $item (keys(%colortypes)) { |
my $color=$env{'form.'.$item}; |
my $color=$env{'form.'.$item}; |
if (!($color =~ /^#/)) { |
if (!($color =~ /^#/)) { |
$color = '#' . $color; |
$color = '#' . $color; |
} |
} |
my $entry='color.'.$function.'.'.$item; |
my $entry='color.'.$function.'.'.$item; |
if (($color=~/^\#[0-9A-Fa-f]{6}$/) && (!$env{'form.resetall'})) { |
if (($color=~/^\#[0-9A-Fa-f]{6}$/) && (!$env{'form.resetall'})) { |
&Apache::lonnet::put('environment',{$entry => $color}); |
&Apache::lonnet::put('environment',{$entry => $color}); |
Line 1237 sub passwordchanger {
|
Line 1276 sub passwordchanger {
|
text => 'Change Password'}); |
text => 'Change Password'}); |
unless ($caller eq 'reset_by_email') { |
unless ($caller eq 'reset_by_email') { |
$r->print(Apache::loncommon::start_page('Personal Data')); |
$r->print(Apache::loncommon::start_page('Personal Data')); |
$r->print(Apache::lonhtmlcommon::breadcrumbs('Change Password')); |
$r->print(Apache::lonhtmlcommon::breadcrumbs('Change Password'). |
|
'<div class="LC_landmark" role="main">'); |
} |
} |
if ((!defined($caller)) || ($caller eq 'preferences')) { |
if ((!defined($caller)) || ($caller eq 'preferences')) { |
$user = $env{'user.name'}; |
$user = $env{'user.name'}; |
Line 1285 sub passwordchanger {
|
Line 1325 sub passwordchanger {
|
} else { |
} else { |
$r->print( |
$r->print( |
'<p class="LC_warning">' |
'<p class="LC_warning">' |
.&mt('Sorry, the URL generated when you requested reset of' |
.&mt('Sorry, the URL generated when you requested reset of' |
.' your password contained incomplete information.') |
.' your password contained incomplete information.') |
.'</p>' |
.'</p>' |
); |
); |
return; |
return; |
} |
} |
Line 1336 sub passwordchanger {
|
Line 1376 sub passwordchanger {
|
$r->print(<<ENDFORM); |
$r->print(<<ENDFORM); |
$errormessage |
$errormessage |
|
|
<p> |
<p></p> |
<!-- We separate the forms into 'server' and 'client' in order to |
<!-- We separate the forms into 'server' and 'client' in order to |
ensure that unencrypted passwords will not be sent out by a |
ensure that unencrypted passwords will not be sent out by a |
crappy browser --> |
crappy browser --> |
Line 1402 sub jscript_send {
|
Line 1442 sub jscript_send {
|
var posspass = this.document.client.elements.newpass_1.value; |
var posspass = this.document.client.elements.newpass_1.value; |
if (min > 0) { |
if (min > 0) { |
if (posspass.length < min) { |
if (posspass.length < min) { |
errors.push("$js_lt{'short'}"); |
errors.push("$js_lt{'short'}"); |
} |
} |
} |
} |
if (currauth == 'internal:') { |
if (currauth == 'internal:') { |
Line 1431 sub jscript_send {
|
Line 1471 sub jscript_send {
|
} else if (rules[i] == 'spec') { |
} else if (rules[i] == 'spec') { |
var pattern = /^[!@#$%^&*()_+\\-=\\[\\]{};':"\\\|,.<a>\\/?]/; |
var pattern = /^[!@#$%^&*()_+\\-=\\[\\]{};':"\\\|,.<a>\\/?]/; |
if (!posspass.match(pattern)) { |
if (!posspass.match(pattern)) { |
errors.push("$js_lt{'spec'}"); |
errors.push("$js_lt{'spec'}"); |
} |
} |
} |
} |
} |
} |
Line 1445 sub jscript_send {
|
Line 1485 sub jscript_send {
|
ENDJS |
ENDJS |
my $output = qq| |
my $output = qq| |
<script type="text/javascript" language="JavaScript"> |
<script type="text/javascript" language="JavaScript"> |
|
// <![CDATA[ |
function send() { |
function send() { |
$passwdcheck |
$passwdcheck |
uextkey=this.document.client.elements.ukey_cpass.value; |
uextkey=this.document.client.elements.ukey_cpass.value; |
Line 1484 $passwdcheck
|
Line 1524 $passwdcheck
|
this.document.pserver.submit(); |
this.document.pserver.submit(); |
} |
} |
|
|
|
// ]]> |
</script> |
</script> |
|; |
|; |
} |
} |
Line 1522 sub client_form {
|
Line 1563 sub client_form {
|
} else { |
} else { |
$output .= &Apache::lonhtmlcommon::row_title( |
$output .= &Apache::lonhtmlcommon::row_title( |
'<label for="currentpass">'.$lt{'currentpass'}.'</label>') |
'<label for="currentpass">'.$lt{'currentpass'}.'</label>') |
.'<input type="password" name="currentpass" size="20"/>' |
.'<input type="password" name="currentpass" id="currentpass" size="20" />' |
.&Apache::lonhtmlcommon::row_closure(); |
.&Apache::lonhtmlcommon::row_closure(); |
} |
} |
$output .= &Apache::lonhtmlcommon::row_title( |
$output .= &Apache::lonhtmlcommon::row_title( |
'<label for="newpass_1">'.$lt{'newpass'}.'</label>') |
'<label for="newpass_1">'.$lt{'newpass'}.'</label>') |
.'<input type="password" name="newpass_1" size="20" />' |
.'<input type="password" name="newpass_1" id="newpass_1" size="20" />' |
.&Apache::lonhtmlcommon::row_closure() |
.&Apache::lonhtmlcommon::row_closure() |
.&Apache::lonhtmlcommon::row_title( |
.&Apache::lonhtmlcommon::row_title( |
'<label for="newpass_2">'.$lt{'confirmpass'}.'</label>') |
'<label for="newpass_2">'.$lt{'confirmpass'}.'</label>') |
.'<input type="password" name="newpass_2" size="20" />' |
.'<input type="password" name="newpass_2" id="newpass_2" size="20" />' |
.&Apache::lonhtmlcommon::row_closure(1) |
.&Apache::lonhtmlcommon::row_closure(1) |
.&Apache::lonhtmlcommon::end_pick_box(); |
.&Apache::lonhtmlcommon::end_pick_box(); |
if ($caller eq 'reset_by_email') { |
if ($caller eq 'reset_by_email') { |
Line 1546 sub client_form {
|
Line 1587 sub client_form {
|
<input type="hidden" name="ukey_npass2" value="$hexkey->{'ukey_npass2'}" /> |
<input type="hidden" name="ukey_npass2" value="$hexkey->{'ukey_npass2'}" /> |
<input type="hidden" name="lkey_npass2" value="$hexkey->{'lkey_npass2'}" /> |
<input type="hidden" name="lkey_npass2" value="$hexkey->{'lkey_npass2'}" /> |
</form> |
</form> |
</p> |
|
|; |
|; |
return $output; |
return $output; |
} |
} |
Line 1725 ENDERROR
|
Line 1765 ENDERROR
|
} else { |
} else { |
my $warning = &Apache::loncommon::check_passwd_rules($domain,$newpass1); |
my $warning = &Apache::loncommon::check_passwd_rules($domain,$newpass1); |
if ($warning) { |
if ($warning) { |
&passwordchanger($r,'<span class="LC_warning">'. |
&passwordchanger($r,'<span class="LC_warning">'. |
$warning. |
$warning. |
&mt('Please try again.').'</span>', |
&mt('Please try again.').'</span>', |
$caller,$mailtoken,$timelimit,$extrafields); |
$caller,$mailtoken,$timelimit,$extrafields); |
if ($caller eq 'reset_by_email') { |
if ($caller eq 'reset_by_email') { |
return 'rules'; |
return 'rules'; |
} else { |
} else { |
Line 2337 sub authoring_settings_titles {
|
Line 2377 sub authoring_settings_titles {
|
); |
); |
} |
} |
|
|
|
sub expanded_authoring_settings { |
|
my $reqdmajor = 2; |
|
my $reqdminor = 12; |
|
my $loncaparev = &Apache::lonnet::get_server_loncaparev($env{'user.domain'},$env{'user.home'}); |
|
my ($major,$minor) = ($loncaparev =~ /^\'?(\d+)\.(\d+)\.[\w.\-]+\'?$/); |
|
unless (($major eq '' && $minor eq '') || |
|
($reqdmajor > $major) || (($reqdmajor == $major) && ($reqdminor > $minor))) { |
|
return 1; |
|
} |
|
return; |
|
} |
|
|
sub daxe_permitted { |
sub daxe_permitted { |
my ($aurolesref) = @_; |
my ($aurolesref) = @_; |
my $hasdaxe; |
my $hasdaxe; |
Line 2364 sub daxe_permitted {
|
Line 2416 sub daxe_permitted {
|
return $hasdaxe; |
return $hasdaxe; |
} |
} |
|
|
sub expanded_authoring_settings { |
|
my $reqdmajor = 2; |
|
my $reqdminor = 11; |
|
my $reqddotnum = 4; |
|
my $reqddotlett= 'B'; |
|
my $reqdreldate = '2024030109'; |
|
my $reqletterfail; |
|
my $loncaparev = &Apache::lonnet::get_server_loncaparev($env{'user.domain'},$env{'user.home'}); |
|
my ($major,$minor,$dotrel,$reldate) = ($loncaparev =~ /^\'?(\d+)\.(\d+)\.([\w.]+)\-(\d+)\'?$/); |
|
my ($dotnum,$dotlett) = split(/\./,$dotrel); |
|
my %lettdig = &Apache::lonnet::letter_to_digits(); |
|
if ((exists($lettdig{$dotlett})) && (exists($lettdig{$reqddotlett}))) { |
|
if ($lettdig{$reqddotlett} > $lettdig{$dotlett}) { |
|
$reqletterfail = 1; |
|
} |
|
} |
|
unless (($major eq '' && $minor eq '') || |
|
($reqdmajor > $major) || (($reqdmajor == $major) && ($reqdminor > $minor)) || |
|
(($reqdmajor == $major) && ($reqdminor == $minor) && ($reqddotnum > $dotnum)) || |
|
(($reqdmajor == $major) && ($reqdminor == $minor) && ($reqddotnum == $dotnum) && $reqletterfail) || |
|
(($reqdmajor == $major) && ($reqdminor == $minor) && ($reqddotnum == $dotnum) && ($reqdreldate > $reldate))) { |
|
return 1; |
|
} |
|
return; |
|
} |
|
|
|
sub lockednameschanger { |
sub lockednameschanger { |
my $r = shift; |
my $r = shift; |
my %userenv = &Apache::lonnet::get('environment',['lockedname']); |
my %userenv = &Apache::lonnet::get('environment',['lockedname']); |
Line 2592 my @menu=
|
Line 2618 my @menu=
|
permission => $permissions{'aboutme'}, |
permission => $permissions{'aboutme'}, |
#help => 'Prefs_About_Me', |
#help => 'Prefs_About_Me', |
icon => 'system-users.png', |
icon => 'system-users.png', |
|
alttext => 'About Me Icon', |
linktitle => 'Edit information about yourself that should be displayed on your public profile.' |
linktitle => 'Edit information about yourself that should be displayed on your public profile.' |
}, |
}, |
{ linktext => 'Screen Name', |
{ linktext => 'Screen Name', |
Line 2599 my @menu=
|
Line 2626 my @menu=
|
permission => 'F', |
permission => 'F', |
#help => 'Prefs_Screen_Name_Nickname', |
#help => 'Prefs_Screen_Name_Nickname', |
icon => 'preferences-desktop-font.png', |
icon => 'preferences-desktop-font.png', |
|
alttext => 'Nickname Icon', |
linktitle => 'Change the name that is displayed in your posts.' |
linktitle => 'Change the name that is displayed in your posts.' |
}, |
}, |
] |
] |
Line 2610 my @menu=
|
Line 2638 my @menu=
|
permission => 'F', |
permission => 'F', |
#help => 'Prefs_Language', |
#help => 'Prefs_Language', |
icon => 'preferences-desktop-locale.png', |
icon => 'preferences-desktop-locale.png', |
|
alttext => 'Language Icon', |
linktitle => 'Choose the default language for this user.' |
linktitle => 'Choose the default language for this user.' |
}, |
}, |
{ linktext => $role.' Page', |
{ linktext => $role.' Page', |
Line 2617 my @menu=
|
Line 2646 my @menu=
|
permission => 'F', |
permission => 'F', |
#help => '', |
#help => '', |
icon => 'role_hotlist.png', |
icon => 'role_hotlist.png', |
|
alttext => 'Switch Role Icon', |
linktitle => 'Configure the roles hotlist.' |
linktitle => 'Configure the roles hotlist.' |
}, |
}, |
{ linktext => 'Math display settings', |
{ linktext => 'Math display settings', |
Line 2624 my @menu=
|
Line 2654 my @menu=
|
permission => 'F', |
permission => 'F', |
#help => '', |
#help => '', |
icon => 'dismath.png', |
icon => 'dismath.png', |
|
alttext => 'Math Icon', |
linktitle => 'Change how math is displayed.' |
linktitle => 'Change how math is displayed.' |
}, |
}, |
{ |
{ |
Line 2632 my @menu=
|
Line 2663 my @menu=
|
permission => $permissions{'timezone'}, |
permission => $permissions{'timezone'}, |
#help => '', |
#help => '', |
icon => 'timezone.png', |
icon => 'timezone.png', |
|
alttext => 'Clock Icon', |
linktitle => 'Set your time zone.', |
linktitle => 'Set your time zone.', |
} |
} |
] |
] |
Line 2643 my @menu=
|
Line 2675 my @menu=
|
permission => 'F', |
permission => 'F', |
#help => 'Change_Colors', |
#help => 'Change_Colors', |
icon => 'preferences-desktop-theme.png', |
icon => 'preferences-desktop-theme.png', |
|
alttext => 'Colors Icon', |
linktitle => 'Change LON-CAPA default colors.' |
linktitle => 'Change LON-CAPA default colors.' |
}, |
}, |
{ linktext => 'Menu Display', |
{ linktext => 'Menu Display', |
Line 2650 my @menu=
|
Line 2683 my @menu=
|
permission => 'F', |
permission => 'F', |
#help => '', |
#help => '', |
icon => 'preferences-system-windows.png', |
icon => 'preferences-system-windows.png', |
|
alttext => 'Menus Icon', |
linktitle => 'Change whether the menus are displayed with icons or icons and text.' |
linktitle => 'Change whether the menus are displayed with icons or icons and text.' |
} |
} |
] |
] |
Line 2661 my @menu=
|
Line 2695 my @menu=
|
permission => 'F', |
permission => 'F', |
#help => 'Prefs_Messages', |
#help => 'Prefs_Messages', |
icon => 'mail-reply-all.png', |
icon => 'mail-reply-all.png', |
|
alttext => 'Notifications Icon', |
linktitle => 'Change messageforwarding or notifications settings.' |
linktitle => 'Change messageforwarding or notifications settings.' |
}, |
}, |
{ linktext => 'Discussion Display', |
{ linktext => 'Discussion Display', |
Line 2668 my @menu=
|
Line 2703 my @menu=
|
permission => 'F', |
permission => 'F', |
#help => 'Change_Discussion_Display', |
#help => 'Change_Discussion_Display', |
icon => 'chat.png', |
icon => 'chat.png', |
|
alttext => 'Discussions Icon', |
linktitle => 'Set display preferences for discussion posts for both discussion boards and individual resources in all your courses.' |
linktitle => 'Set display preferences for discussion posts for both discussion boards and individual resources in all your courses.' |
}, |
}, |
] |
] |
Line 2682 if (keys(%author_coauthor_roles) > 0) {
|
Line 2718 if (keys(%author_coauthor_roles) > 0) {
|
url => '/adm/preferences?action=authorsettings', |
url => '/adm/preferences?action=authorsettings', |
permission => 'F', |
permission => 'F', |
icon => 'codemirror.png', |
icon => 'codemirror.png', |
|
alttext => 'Coding Icon', |
linktitle => 'Settings for your authoring space.', |
linktitle => 'Settings for your authoring space.', |
}, |
}, |
] |
] |
Line 2694 if (keys(%author_coauthor_roles) > 0) {
|
Line 2731 if (keys(%author_coauthor_roles) > 0) {
|
permission => 'F', |
permission => 'F', |
#help => '', |
#help => '', |
icon => 'system-lock-screen.png', |
icon => 'system-lock-screen.png', |
|
alttext => 'Lock Icon', |
linktitle => 'Restrict domain coordinator access.', |
linktitle => 'Restrict domain coordinator access.', |
}); |
}); |
} |
} |
Line 2706 push(@menu,
|
Line 2744 push(@menu,
|
permission => 'F', |
permission => 'F', |
#help => '', |
#help => '', |
icon => 'network-workgroup.png', |
icon => 'network-workgroup.png', |
|
alttext => 'Clicker Icon', |
linktitle => 'Register your clicker.' |
linktitle => 'Register your clicker.' |
}, |
}, |
] |
] |
}, |
}, |
); |
); |
|
|
if ($currentauth =~ /^(unix|internal):/) { |
if ($currentauth =~ /^(unix|internal):/) { |
push(@{ $menu[0]->{items} }, { |
push(@{ $menu[0]->{items} }, { |
Line 2719 push(@menu,
|
Line 2758 push(@menu,
|
permission => 'F', |
permission => 'F', |
#help => 'Change_Password', |
#help => 'Change_Password', |
icon => 'emblem-readonly.png', |
icon => 'emblem-readonly.png', |
|
alttext => 'Secure Icon', |
linktitle => 'Change your password.', |
linktitle => 'Change your password.', |
}); |
}); |
} |
} |
if ($env{'environment.remote'} eq 'off') { |
|
push(@{ $menu[1]->{items} }, { |
|
linktext => 'Launch Remote Control', |
|
url => '/adm/remote?url=/adm/preferences&action=launch', |
|
permission => 'F', |
|
#help => '', |
|
icon => 'remotecontrol.png', |
|
linktitle => 'Launch the remote control for LON-CAPA.', |
|
}); |
|
}else{ |
|
push(@{ $menu[1]->{items} }, { |
|
linktext => 'Collapse Remote Control', |
|
url => '/adm/remote?url=/adm/preferences&action=collapse', |
|
permission => 'F', |
|
#help => '', |
|
icon => 'remotecontrol.png', |
|
linktitle => 'Collapse the remote control for LON-CAPA.', |
|
}); |
|
} |
|
|
|
if (&can_toggle_namelocking()) { |
if (&can_toggle_namelocking()) { |
push(@{ $menu[0]->{items} }, { |
push(@{ $menu[0]->{items} }, { |
Line 2749 push(@{ $menu[1]->{items} }, {
|
Line 2770 push(@{ $menu[1]->{items} }, {
|
permission => 'F', |
permission => 'F', |
#help => '', |
#help => '', |
icon => 'system-lock-screen.png', |
icon => 'system-lock-screen.png', |
|
alttext => 'Screen Lock Icon', |
linktitle => 'Allow/disallow propagation of name changes from institutional directory service', |
linktitle => 'Allow/disallow propagation of name changes from institutional directory service', |
}); |
}); |
} |
} |
Line 2762 push(@{ $menu[-1]->{items} }, {
|
Line 2784 push(@{ $menu[-1]->{items} }, {
|
permission => 'F', |
permission => 'F', |
#help => '', |
#help => '', |
icon => 'course_ini.png', |
icon => 'course_ini.png', |
|
alttext => 'Course Launch Icon', |
linktitle => 'Set the default page to be displayed when you select a course role.', |
linktitle => 'Set the default page to be displayed when you select a course role.', |
}); |
}); |
|
|
Line 2774 push(@{ $menu[-1]->{items} }, {
|
Line 2797 push(@{ $menu[-1]->{items} }, {
|
permission => 'F', |
permission => 'F', |
#help => '', |
#help => '', |
icon => 'blog.png', |
icon => 'blog.png', |
|
alttext => 'Debugging Icon', |
linktitle => 'Toggle Debug Messages.', |
linktitle => 'Toggle Debug Messages.', |
}); |
}); |
} |
} |
|
|
$r->print(&Apache::loncommon::start_page('My Space')); |
$r->print(&Apache::loncommon::start_page('My Space')); |
$r->print(Apache::lonhtmlcommon::breadcrumbs('Change Preferences')); |
$r->print(Apache::lonhtmlcommon::breadcrumbs('Change Preferences')); |
$r->print($message); |
$r->print('<div class="LC_landmark" role="main">'."\n".$message); |
$r->print(Apache::lonhtmlcommon::generate_menu(@menu)); |
$r->print(Apache::lonhtmlcommon::generate_menu(@menu)."\n".'</div>'); |
$r->print(Apache::loncommon::end_page()); |
$r->print(Apache::loncommon::end_page()); |
} |
} |
|
|
Line 2830 sub handler {
|
Line 2854 sub handler {
|
text => $brtxt, |
text => $brtxt, |
help => $brhelp,}); |
help => $brhelp,}); |
if(!exists $env{'form.action'}) { |
if(!exists $env{'form.action'}) { |
&print_main_menu($r); |
&print_main_menu($r); |
$ended = 1; |
$ended = 1; |
}elsif($env{'form.action'} eq 'changepass'){ |
}elsif($env{'form.action'} eq 'changepass'){ |
&passwordchanger($r); |
&passwordchanger($r); |
|
$r->print('</div>'); |
}elsif($env{'form.action'} eq 'verify_and_change_pass'){ |
}elsif($env{'form.action'} eq 'verify_and_change_pass'){ |
&verify_and_change_password($r,'preferences','','','',\$ended); |
&verify_and_change_password($r,'preferences','','','',\$ended); |
}elsif($env{'form.action'} eq 'changescreenname'){ |
}elsif($env{'form.action'} eq 'changescreenname'){ |