--- loncom/interface/lonpreferences.pm 2008/12/02 20:10:27 1.127 +++ loncom/interface/lonpreferences.pm 2009/12/02 18:33:27 1.179 @@ -1,7 +1,7 @@ # The LearningOnline Network # Preferences # -# $Id: lonpreferences.pm,v 1.127 2008/12/02 20:10:27 droeschl Exp $ +# $Id: lonpreferences.pm,v 1.179 2009/12/02 18:33:27 bisitz Exp $ # # Copyright Michigan State University Board of Trustees # @@ -42,6 +42,7 @@ use Apache::loncommon(); use Apache::lonhtmlcommon(); use Apache::lonlocal; use Apache::lonnet; +use LONCAPA::lonauthcgi(); use LONCAPA(); # @@ -101,7 +102,7 @@ sub wysiwygchanger { Apache::lonhtmlcommon::add_breadcrumb( { href => '/adm/preferences?action=changewysiwyg', text => 'Change WYSIWYG Preferences'}); - $r->print(Apache::loncommon::start_page('Change WYSIWYG Preferences')); + $r->print(Apache::loncommon::start_page('Content Display Settings')); $r->print(Apache::lonhtmlcommon::breadcrumbs('Change WYSIWYG Preferences')); my %userenv = &Apache::lonnet::get @@ -126,7 +127,7 @@ $warning
ENDLSCREEN - $r->print('
'); + $r->print('
'); } @@ -135,9 +136,9 @@ sub verify_and_change_wysiwyg { my $newsetting=$env{'form.wysiwyg'}; &Apache::lonnet::put('environment',{'wysiwygeditor' => $newsetting}); &Apache::lonnet::appenv({'environment.wysiwygeditor' => $newsetting}); -# $r->print('

'.&mt('Setting WYSIWYG editor to:').' '.&mt($newsetting).'

'); - print_main_menu($r,'

'.&mt('Setting WYSIWYG editor to:').' ' - .&mt($newsetting).'

'); + my $message=&Apache::lonhtmlcommon::confirm_success(&mt('Set [_1] to [_2]',''.&mt('WYSIWYG Editor').'',''.&mt($newsetting).'')); + $message=&Apache::loncommon::confirmwrapper($message); + &print_main_menu($r,$message); } ################################################################ @@ -149,7 +150,7 @@ sub languagechanger { Apache::lonhtmlcommon::add_breadcrumb( { href => '/adm/preferences?action=changelanguages', text => 'Change Language'}); - $r->print(Apache::loncommon::start_page('Change Language')); + $r->print(Apache::loncommon::start_page('Content Display Settings')); $r->print(Apache::lonhtmlcommon::breadcrumbs('Change Language')); my $user = $env{'user.name'}; my $domain = $env{'user.domain'}; @@ -165,14 +166,17 @@ sub languagechanger { = &Apache::loncommon::plainlanguagedescription($_); } } - my $selectionbox=&Apache::loncommon::select_form($language,'language', - %langchoices); + my $selectionbox= + &Apache::loncommon::select_form( + $language, + 'language', + &Apache::lonlocal::texthash(%langchoices)); $r->print(<
$pref: $selectionbox ENDLSCREEN - $r->print('
'); + $r->print('
'); } @@ -187,16 +191,15 @@ sub verify_and_change_languages { if ($newlanguage) { &Apache::lonnet::put('environment',{'languages' => $newlanguage}); &Apache::lonnet::appenv({'environment.languages' => $newlanguage}); - $message=&mt('Set new preferred languages to ').'"'.$newlanguage.'".'; + $message=&Apache::lonhtmlcommon::confirm_success(&mt('Set [_1] to [_2]',''.&mt('Preferred language').'','"'.$newlanguage.'".')); } else { &Apache::lonnet::del('environment',['languages']); - &Apache::lonnet::delenv('environment\.languages'); - $message=&mt('Reset preferred language.'); + &Apache::lonnet::delenv('environment.languages'); + $message=&Apache::lonhtmlcommon::confirm_success(&mt('Reset [_1]',''.&mt('Preferred language').'')); } - print_main_menu($r, $message); -# $r->print(< '/adm/preferences?action=changetexenginepref', - text => 'Change How Math Equations Are Displayed'}); - $r->print(Apache::loncommon::start_page('Change How Math Equations Are Displayed')); - $r->print(Apache::lonhtmlcommon::breadcrumbs('Change How Math Equations Are Displayed')); + text => 'Math display settings'}); + $r->print(Apache::loncommon::start_page('Content Display Settings')); + $r->print(Apache::lonhtmlcommon::breadcrumbs('Math display settings')); my $user = $env{'user.name'}; my $domain = $env{'user.domain'}; my %userenv = &Apache::lonnet::get('environment',['texengine']); @@ -218,28 +221,48 @@ sub texenginechanger { 'tth' => 'tth (TeX to HTML)', #'ttm' => 'TeX to MathML', 'jsMath' => 'jsMath', - 'mimetex' => 'mimetex (Convert to Images)' + 'mimetex' => 'mimetex (Convert to Images)', + 'raw' => 'Raw (Screen Reader)' ); - my $selectionbox=&Apache::loncommon::select_form($texengine,'texengine', - %mathchoices); + my $selectionbox= + &Apache::loncommon::select_form( + $texengine, + 'texengine', + &Apache::lonlocal::texthash(%mathchoices)); my $jsMath_start=&Apache::lontexconvert::jsMath_header(); my %lt=&Apache::lonlocal::texthash( - 'headline' => 'Change Math Preferences', - 'preftxt' => 'Preferred method to display Math', - 'change' => 'Change', + 'headline' => 'Change how math is displayed', + 'preftxt' => 'Preferred method to display math', + 'change' => 'Save', 'exmpl' => 'Examples', 'jsmath' => 'jsMath:', 'tth' => 'tth (TeX to HTML):', 'mimetex' => 'mimetex (Convert to Images):', ); + my $jsMathWarning='

' + .'

' + .&mt("It looks like you don't have the TeX math fonts installed.") + .'
' + .'
' + .&mt('The jsMath example on this page may not look right without them. ' + .'The [_1]jsMath Home Page[_2] has information on how to download the ' + .'needed fonts. In the meantime, jsMath will do the best it can ' + .'with the fonts you have, but it may not be pretty and some equations ' + .'may not be rendered correctly.' + ,'' + ,'') + .'
' + .'

'; + $r->print(<$lt{'headline'}

-$lt{'preftxt'}:
-$selectionbox +$lt{'preftxt'}: $selectionbox +
+


@@ -249,20 +272,9 @@ $lt{'exmpl'}

$lt{'jsmath'}

$jsMath_start - @@ -275,11 +287,11 @@ if (jsMath.nofonts == 1) {

$lt{'tth'}

- +

ENDLSCREEN if ($env{'environment.texengine'} ne 'jsMath') { - $r->print(''); + $r->print(''); } } @@ -302,18 +314,14 @@ sub verify_and_change_texengine { if ($newtexengine) { &Apache::lonnet::put('environment',{'texengine' => $newtexengine}); &Apache::lonnet::appenv({'environment.texengine' => $newtexengine}); - $message=&mt('Set new preferred math display to ').'"'.$newtexengine.'".'; + $message=&Apache::lonhtmlcommon::confirm_success(&mt('Set [_1] to [_2]',''.&mt('Preferred method to display Math').'','"'.$newtexengine.'"')); } else { &Apache::lonnet::del('environment',['texengine']); - &Apache::lonnet::delenv('environment\.texengine'); - $message=&mt('Reset preferred math display.'); + &Apache::lonnet::delenv('environment.texengine'); + $message=&Apache::lonhtmlcommon::confirm_success(&mt('Reset [_1]',''.&mt('Preferred method to display Math').'')); } - - -# $r->print(< '/adm/preferences?action=changerolespref', text => 'Change '.$role.' Page Pref'}); - $r->print(Apache::loncommon::start_page('Change '.$role.' Page Pref')); + $r->print(Apache::loncommon::start_page('Content Display Settings')); $r->print(Apache::lonhtmlcommon::breadcrumbs('Change '.$role.' Page Pref')); my $hotlist_flag=$userenv{'recentroles'}; my $hotlist_n=$userenv{'recentrolesn'}; @@ -371,13 +379,13 @@ sub rolesprefchanger { my $checked = ""; my $value = $recent_roles{$role_key}; if ($frozen_roles{$role_key}) { - $checked = "checked=\"checked\""; + $checked = ' checked="checked"'; } $count++; $roles_check_list .= &Apache::loncommon::start_data_table_row(). ''. - "". "". @@ -389,10 +397,10 @@ sub rolesprefchanger { $r->print('

'.&mt('Some LON-CAPA users have a long list of '.$lc_role.'s. The Recent '.$role.'s Hotlist feature keeps track of the last N '.$lc_role.'s which have been visited and places a table of these at the top of the '.$lc_role.'s page. People with very few '.$lc_role.'s should leave this feature disabled.').'

-
+
+
'.&mt('Number of '.$role.'s in Hotlist:').' +
'); } @@ -450,7 +458,7 @@ sub verify_and_change_rolespref { $message=&mt('Recent '.$role.'s Hotlist is Enabled'); } else { &Apache::lonnet::del('environment',['recentroles']); - &Apache::lonnet::delenv('environment\.recentroles'); + &Apache::lonnet::delenv('environment.recentroles'); $message=&mt('Recent '.$role.'s Hotlist is Disabled'); } if ($hotlist_n) { @@ -480,7 +488,7 @@ sub verify_and_change_rolespref { # Unset any roles that were previously frozen but aren't in list foreach my $role_key (sort(keys(%recent_roles))) { if (($frozen_roles{$role_key}) && (!exists($freeze{$role_key}))) { - $message .= "
".&mt('Unfreezing '.$role.': [_1]',$role_text{$role_key})."\n"; + $message .= "
".&Apache::lonhtmlcommon::confirm_success(&mt('Unfreezing '.$role.': [_1]',''.$role_text{$role_key}.'')); &Apache::lonhtmlcommon::store_recent('roles',$role_key,' ',0); } } @@ -488,17 +496,14 @@ sub verify_and_change_rolespref { # Freeze selected roles foreach my $role_key (@freeze_list) { if (!$frozen_roles{$role_key}) { - $message .= "
".&mt('Freezing '.$role.': [_1]',$role_text{$role_key})."\n"; + $message .= "
". + &Apache::lonhtmlcommon::confirm_success(&mt('Freezing '.$role.': [_1]',''.$role_text{$role_key}.'')); &Apache::lonhtmlcommon::store_recent('roles', $role_key,' ',1); } } - $message .= "

\n"; - -# $r->print(< 'New screenname (shown if you post anonymously):', - text_nickname => 'New nickname (shown if you post non-anonymously):', - text_submit => 'Change', - ); Apache::lonhtmlcommon::add_breadcrumb( { href => '/adm/preferences?action=changescreenname', text => 'Change Screen Name'}); - $r->print(Apache::loncommon::start_page('Change Screen Name')); + $r->print(Apache::loncommon::start_page('Personal Data')); $r->print(Apache::lonhtmlcommon::breadcrumbs('Change Screen Name')); - $r->print(< - -
$lt{'text_screenname'} - -
$lt{'text_nickname'} - -
- - -ENDSCREEN + $r->print('

' + .&mt('Change the name that is displayed in your posts.') + .'

' + ); + $r->print('
' + .'' + .&Apache::lonhtmlcommon::start_pick_box() + .&Apache::lonhtmlcommon::row_title(&mt('Screenname').' '.&mt('(shown if you post anonymously)')) + .'' + .&Apache::lonhtmlcommon::row_closure() + .&Apache::lonhtmlcommon::row_title(&mt('Nickname').' '.&mt('(shown if you post non-anonymously)')) + .'' + .&Apache::lonhtmlcommon::row_closure() + .&Apache::lonhtmlcommon::row_title() + .'' + .&Apache::lonhtmlcommon::row_closure(1) + .&Apache::lonhtmlcommon::end_pick_box() + .'
' + ); } sub verify_and_change_screenname { @@ -548,11 +556,11 @@ sub verify_and_change_screenname { if ($newscreen) { &Apache::lonnet::put('environment',{'screenname' => $newscreen}); &Apache::lonnet::appenv({'environment.screenname' => $newscreen}); - $message=&mt('Set new screenname to ').'"'.$newscreen.'.".'; + $message=&Apache::lonhtmlcommon::confirm_success(&mt('Set [_1] to [_2]',''.&mt('Screenname').'','"'.$newscreen.'"')); } else { &Apache::lonnet::del('environment',['screenname']); - &Apache::lonnet::delenv('environment\.screenname'); - $message=&mt('Reset screenname.'); + &Apache::lonnet::delenv('environment.screenname'); + $message=&Apache::lonhtmlcommon::confirm_success(&mt('Reset [_1]',''.&mt('Screenname').'')); } # Nickname $message.='
'; @@ -561,17 +569,15 @@ sub verify_and_change_screenname { if ($newscreen) { &Apache::lonnet::put('environment',{'nickname' => $newscreen}); &Apache::lonnet::appenv({'environment.nickname' => $newscreen}); - $message.=&mt('Set new nickname to ').'"'.$newscreen.'".'; + $message.=&Apache::lonhtmlcommon::confirm_success(&mt('Set [_1] to [_2]',''.&mt('Nickname').'','"'.$newscreen.'"')); } else { &Apache::lonnet::del('environment',['nickname']); - &Apache::lonnet::delenv('environment\.nickname'); - $message.=&mt('Reset nickname.'); + &Apache::lonnet::delenv('environment.nickname'); + $message.=&Apache::lonhtmlcommon::confirm_success(&mt('Reset [_1]',''.&mt('Nickname').'')); } &Apache::lonnet::devalidate_cache_new('namescache',$user.':'.$domain); -# $r->print(< '/adm/preferences?action=changeicons', text => 'Change Main Menu'}); - $r->print(Apache::loncommon::start_page('Change Main Menu')); + $r->print(Apache::loncommon::start_page('Page Display Settings')); $r->print(Apache::lonhtmlcommon::breadcrumbs('Change Main Menu')); my $user = $env{'user.name'}; @@ -603,7 +609,7 @@ sub iconchanger { my $useicons=&mt('Use icons and text'); my $usebuttons=&mt('Use buttons and text'); my $useicononly=&mt('Use icons only'); - my $change=&mt('Change'); + my $change=&mt('Save'); $r->print(< @@ -619,12 +625,13 @@ sub verify_and_change_icons { my $r = shift; my $user = $env{'user.name'}; my $domain = $env{'user.domain'}; - my $newicons = $env{'form.menumode'}; + my $newicons = $env{'form.menumode'}; &Apache::lonnet::put('environment',{'icons' => $newicons}); &Apache::lonnet::appenv({'environment.icons' => $newicons}); -# $r->print(&mt('Set menu mode to [_1].',$newicons)); - print_main_menu($r, &mt('Set menu mode to [_1].',$newicons)); + my $message=&Apache::lonhtmlcommon::confirm_success(&mt('Set [_1] to [_2]',''.&mt('Menu Display').'',''.$newicons.'')); + $message=&Apache::loncommon::confirmwrapper($message); + &print_main_menu($r, $message); } ################################################################ @@ -633,10 +640,10 @@ sub verify_and_change_icons { sub clickerchanger { my $r = shift; - Apache::lonhtmlcommon::add_breadcrumb( + &Apache::lonhtmlcommon::add_breadcrumb( { href => '/adm/preferences?action=changeclicker', text => 'Register Clicker'}); - $r->print(Apache::loncommon::start_page('Register Clicker')); + $r->print(Apache::loncommon::start_page('Other')); $r->print(Apache::lonhtmlcommon::breadcrumbs('Register Clicker')); my $user = $env{'user.name'}; my $domain = $env{'user.domain'}; @@ -645,14 +652,15 @@ sub clickerchanger { my $clickers=$userenv{'clickers'}; $clickers=~s/\,/\n/gs; my $text=&mt('Enter response device ("clicker") numbers'); - my $change=&mt('Register'); + my $change=&mt('Save'); my $helplink=&Apache::loncommon::help_open_topic('Clicker_Registration',&mt('Locating your clicker ID')); $r->print(< -