--- loncom/interface/lonpreferences.pm 2008/05/20 18:19:31 1.120
+++ loncom/interface/lonpreferences.pm 2009/02/26 16:17:29 1.147
@@ -1,7 +1,7 @@
# The LearningOnline Network
# Preferences
#
-# $Id: lonpreferences.pm,v 1.120 2008/05/20 18:19:31 www Exp $
+# $Id: lonpreferences.pm,v 1.147 2009/02/26 16:17:29 schafran Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -98,6 +98,12 @@ sub des_decrypt {
sub wysiwygchanger {
my $r = shift;
+ Apache::lonhtmlcommon::add_breadcrumb(
+ { href => '/adm/preferences?action=changewysiwyg',
+ text => '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
('environment',['wysiwygeditor']);
my $onselect='checked="checked"';
@@ -108,14 +114,19 @@ sub wysiwygchanger {
}
my $switchoff=&mt('Disable WYSIWYG editor');
my $switchon=&mt('Enable WYSIWYG editor');
+ my $warning='';
+ if ($env{'user.adv'}) {
+ $warning.="
".&mt("The WYSIWYG editor only supports simple HTML and is in many cases unsuited for advanced authoring. In a number of cases, it may destroy advanced authoring involving LaTeX and script function calls.")."
');
}
################################################################
@@ -132,6 +145,12 @@ sub verify_and_change_wysiwyg {
################################################################
sub languagechanger {
my $r = shift;
+
+ Apache::lonhtmlcommon::add_breadcrumb(
+ { href => '/adm/preferences?action=changelanguages',
+ text => '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'};
my %userenv = &Apache::lonnet::get
@@ -153,7 +172,7 @@ sub languagechanger {
$pref: $selectionbox
ENDLSCREEN
- $r->print(' ');
+ $r->print(' ');
}
@@ -171,12 +190,14 @@ sub verify_and_change_languages {
$message=&mt('Set new preferred languages to ').'"'.$newlanguage.'".';
} else {
&Apache::lonnet::del('environment',['languages']);
- &Apache::lonnet::delenv('environment\.languages');
+ &Apache::lonnet::delenv('environment.languages');
$message=&mt('Reset preferred language.');
}
- $r->print(<print(< '/adm/preferences?action=changetexenginepref',
+ text => 'Change How Math Equations Are Displayed'});
+ $r->print(Apache::loncommon::start_page('Content Display Settings'));
+ $r->print(Apache::lonhtmlcommon::breadcrumbs('Change How Math Equations Are Displayed'));
my $user = $env{'user.name'};
my $domain = $env{'user.domain'};
my %userenv = &Apache::lonnet::get('environment',['texengine']);
my $texengine=$userenv{'texengine'};
- my $pref=&mt('Preferred method to display Math');
my %mathchoices=('' => 'Default',
- 'tth' => 'TeX to HTML',
+ 'tth' => 'tth (TeX to HTML)',
#'ttm' => 'TeX to MathML',
'jsMath' => 'jsMath',
- 'mimetex' => 'Convert to Images'
+ 'mimetex' => 'mimetex (Convert to Images)'
);
my $selectionbox=&Apache::loncommon::select_form($texengine,'texengine',
%mathchoices);
my $jsMath_start=&Apache::lontexconvert::jsMath_header();
- my $change=&mt('Change');
- $r->print(<
+ my %lt=&Apache::lonlocal::texthash(
+ 'headline' => 'Change Math Preferences',
+ 'preftxt' => 'Preferred method to display Math',
+ 'change' => 'Save',
+ 'exmpl' => 'Examples',
+ 'jsmath' => 'jsMath:',
+ 'tth' => 'tth (TeX to HTML):',
+ 'mimetex' => 'mimetex (Convert to Images):',
+ );
+ $r->print(<$lt{'headline'}
-Examples:
-
TeX to HTML
-
+
+$lt{'preftxt'}: $selectionbox
+
+
-
jsMath
+
+
+
+$lt{'exmpl'}
+
+
$lt{'jsmath'}
+
$jsMath_start
-
+
+
+
$lt{'mimetex'}
+
+
-
Convert to Images
-
-
+
+
$lt{'tth'}
+
+
ENDLSCREEN
if ($env{'environment.texengine'} ne 'jsMath') {
@@ -265,14 +307,15 @@ sub verify_and_change_texengine {
$message=&mt('Set new preferred math display to ').'"'.$newtexengine.'".';
} else {
&Apache::lonnet::del('environment',['texengine']);
- &Apache::lonnet::delenv('environment\.texengine');
+ &Apache::lonnet::delenv('environment.texengine');
$message=&mt('Reset preferred math display.');
}
- $r->print(<print(< '/adm/preferences?action=changerolespref',
+ text => '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'};
my $checked;
@@ -355,7 +403,7 @@ sub rolesprefchanger {
'.$roles_check_list.'
-
+
');
}
@@ -404,7 +452,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) {
@@ -449,9 +497,10 @@ sub verify_and_change_rolespref {
}
$message .= " \n";
- $r->print(<print(< 'New screenname (shown if you post anonymously):',
- text_nickname => 'New nickname (shown if you post non-anonymously):',
- text_submit => 'Change',
- );
- $r->print(<
-
- $lt{'text_screenname'}
-
- $lt{'text_nickname'}
-
-
-
-
-ENDSCREEN
+ Apache::lonhtmlcommon::add_breadcrumb(
+ { href => '/adm/preferences?action=changescreenname',
+ text => 'Change Screen Name'});
+ $r->print(Apache::loncommon::start_page('Personal Data'));
+ $r->print(Apache::lonhtmlcommon::breadcrumbs('Change Screen Name'));
+ $r->print('
'
+ .&mt('Change the name that is displayed in your posts.')
+ .'
'
+ );
+ $r->print(''
+ );
}
sub verify_and_change_screenname {
@@ -499,7 +556,7 @@ sub verify_and_change_screenname {
$message=&mt('Set new screenname to ').'"'.$newscreen.'.".';
} else {
&Apache::lonnet::del('environment',['screenname']);
- &Apache::lonnet::delenv('environment\.screenname');
+ &Apache::lonnet::delenv('environment.screenname');
$message=&mt('Reset screenname.');
}
# Nickname
@@ -512,13 +569,14 @@ sub verify_and_change_screenname {
$message.=&mt('Set new nickname to ').'"'.$newscreen.'".';
} else {
&Apache::lonnet::del('environment',['nickname']);
- &Apache::lonnet::delenv('environment\.nickname');
+ &Apache::lonnet::delenv('environment.nickname');
$message.=&mt('Reset nickname.');
}
&Apache::lonnet::devalidate_cache_new('namescache',$user.':'.$domain);
- $r->print(<print(< '/adm/preferences?action=changeicons',
+ text => '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'};
my $domain = $env{'user.domain'};
my %userenv = &Apache::lonnet::get
@@ -544,7 +608,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(<
@@ -564,7 +628,8 @@ sub verify_and_change_icons {
&Apache::lonnet::put('environment',{'icons' => $newicons});
&Apache::lonnet::appenv({'environment.icons' => $newicons});
- $r->print(&mt('Set menu mode to [_1].',$newicons));
+# $r->print(&mt('Set menu mode to [_1].',$newicons));
+ print_main_menu($r, &mt('Set menu mode to [_1].',$newicons));
}
################################################################
@@ -573,6 +638,11 @@ sub verify_and_change_icons {
sub clickerchanger {
my $r = shift;
+ Apache::lonhtmlcommon::add_breadcrumb(
+ { href => '/adm/preferences?action=changeclicker',
+ text => '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'};
my %userenv = &Apache::lonnet::get
@@ -606,7 +676,8 @@ sub verify_and_change_clicker {
$newclickers=~s/\,$//;
&Apache::lonnet::put('environment',{'clickers' => $newclickers});
&Apache::lonnet::appenv({'environment.clickers' => $newclickers});
- $r->print(&mt('Registering clickers: [_1]',$newclickers));
+# $r->print(&mt('Registering clickers: [_1]',$newclickers));
+ print_main_menu($r, &mt('Registering clickers: [_1]',$newclickers));
}
################################################################
@@ -615,6 +686,11 @@ sub verify_and_change_clicker {
sub domcoordchanger {
my $r = shift;
+ Apache::lonhtmlcommon::add_breadcrumb(
+ { href => '/adm/preferences?action=changedomcoord',
+ text => 'Restrict Domain Coordinator Access'});
+ $r->print(Apache::loncommon::start_page('Restrict Domain Coordinator Access'));
+ $r->print(Apache::lonhtmlcommon::breadcrumbs('Restrict Domain Coordinator Access'));
my $user = $env{'user.name'};
my $domain = $env{'user.domain'};
my %userenv = &Apache::lonnet::get
@@ -625,7 +701,7 @@ sub domcoordchanger {
}
my $text=&mt('By default, the Domain Coordinator can enter your construction space.');
my $construction=&mt('Block access to construction space');
- my $change=&mt('Change');
+ my $change=&mt('Save');
$r->print(<
@@ -644,7 +720,8 @@ sub verify_and_change_domcoord {
if ($env{'form.construction'}) { $domcoord{'domcoord.author'}='blocked'; }
&Apache::lonnet::put('environment',\%domcoord);
&Apache::lonnet::appenv({'environment.domcoord.author' => $domcoord{'domcoord.author'}});
- $r->print(&mt('Registering Domain Coordinator access restrictions.'));
+# $r->print(&mt('Registering Domain Coordinator access restrictions.'));
+ print_main_menu($r, &mt('Registering Domain Coordinator access restrictions.'));
}
#################################################################
@@ -700,14 +777,20 @@ sub msgforwardchanger {
foad => 'Forwarding Address(es)',
noti => 'Notification E-mail Address(es)',
foad_exmpl => 'e.g. userA:domain1,userB:domain2,...',
- mnot => 'Email Address(es) which should be notified about new LON-CAPA messages', # old: 'Message Notification Email Address(es)',
+ mnot => 'E-mail Address(es) which should be notified about new LON-CAPA messages',
+ # old: 'Message Notification Email Address(es)',
mnot_exmpl => 'e.g. joe@doe.com',
- chg => 'Change',
+ chg => 'Save',
email => 'The e-mail address entered in row ',
notv => 'is not a valid e-mail address',
toen => "To enter multiple addresses, enter one address at a time, click 'Change' and then add the next one",
- prme => 'Back to preferences menu',
+ prme => 'Back',
);
+ Apache::lonhtmlcommon::add_breadcrumb(
+ { href => '/adm/preferences?action=changemsgforward',
+ text => 'Change Message Forwarding/Notification'});
+ $r->print(Apache::loncommon::start_page('Message Management'));
+ $r->print(Apache::lonhtmlcommon::breadcrumbs('Change Message Forwarding/Notification'));
my $forwardingHelp = &Apache::loncommon::help_open_topic("Prefs_Forwarding");
my $notificationHelp = &Apache::loncommon::help_open_topic("Prefs_Notification");
my $criticalMessageHelp = &Apache::loncommon::help_open_topic("Course_Critical_Message");
@@ -873,8 +956,8 @@ ENDMSG
$r->print(qq|
-
+
|);
@@ -920,7 +1003,7 @@ sub verify_and_change_msgforward {
.' ';
} else {
&Apache::lonnet::del('environment',['msgforward']);
- &Apache::lonnet::delenv('environment\.msgforward');
+ &Apache::lonnet::delenv('environment.msgforward');
$message.= &mt("Set message forwarding to 'off'.").' ';
}
my $critnotification;
@@ -960,7 +1043,7 @@ sub verify_and_change_msgforward {
$message.=&mt('Set non-critical message notification address(es) to ').'"'.$notification.'". ';
} else {
&Apache::lonnet::del('environment',['notification']);
- &Apache::lonnet::delenv('environment\.notification');
+ &Apache::lonnet::delenv('environment.notification');
$message.=&mt("Set non-critical message notification to 'off'.").' ';
}
if ($critnotification) {
@@ -969,7 +1052,7 @@ sub verify_and_change_msgforward {
$message.=&mt('Set critical message notification address(es) to ').'"'.$critnotification.'". ';
} else {
&Apache::lonnet::del('environment',['critnotification']);
- &Apache::lonnet::delenv('environment\.critnotification');
+ &Apache::lonnet::delenv('environment.critnotification');
$message.=&mt("Set critical message notification to 'off'.").' ';
}
if ($critnotification || $notification) {
@@ -979,7 +1062,7 @@ sub verify_and_change_msgforward {
$message.=&mt('Set address(es) to receive excerpts with html retained ').'"'.$notify_with_html.'".';
} else {
&Apache::lonnet::del('environment',['notifywithhtml']);
- &Apache::lonnet::delenv('environment\.notifywithhtml');
+ &Apache::lonnet::delenv('environment.notifywithhtml');
if ($totaladdresses == 1) {
$message.=&mt("Set notification address to receive excerpts with html stripped.");
} else {
@@ -988,7 +1071,7 @@ sub verify_and_change_msgforward {
}
} else {
&Apache::lonnet::del('environment',['notifywithhtml']);
- &Apache::lonnet::delenv('environment\.notifywithhtml');
+ &Apache::lonnet::delenv('environment.notifywithhtml');
}
if ($message) {
$message .= ' ';
@@ -1003,6 +1086,11 @@ sub verify_and_change_msgforward {
sub colorschanger {
my $r = shift;
+ Apache::lonhtmlcommon::add_breadcrumb(
+ { href => '/adm/preferences?action=changecolors',
+ text => 'Change Colors'});
+ $r->print(Apache::loncommon::start_page('Page Display Settings'));
+ $r->print(Apache::lonhtmlcommon::breadcrumbs('Change Colors'));
# figure out colors
my $function=&Apache::loncommon::get_users_function();
my $domain=&Apache::loncommon::determinedomain();
@@ -1028,6 +1116,9 @@ sub colorschanger {
}
my $end_data_table = &Apache::loncommon::end_data_table();
my $pjump_def = &Apache::lonhtmlcommon::pjump_javascript_definition();
+ my $save = &mt('Save');
+ my $rstall = &mt('Reset All');
+ my $resetdefault = &mt('Reset All Colors to Default');
$r->print(<
@@ -1066,8 +1157,8 @@ $start_data_table
$chtable
$end_data_table
-
-
+
+
ENDCOL
}
@@ -1095,7 +1186,7 @@ sub verify_and_change_colors {
$message.=&mt('Set '.$colortypes{$item}.' to ').'"'.$color.'". ';
} else {
&Apache::lonnet::del('environment',[$entry]);
- &Apache::lonnet::delenv('environment\.'.$entry);
+ &Apache::lonnet::delenv('environment.'.$entry);
$message.=&mt('Reset '.$colortypes{$item}.'.').' ';
}
}
@@ -1103,12 +1194,13 @@ sub verify_and_change_colors {
&Apache::lonnet::put('environment',{'color.timestamp' => $now});
&Apache::lonnet::appenv({'environment.color.timestamp' => $now});
- $r->print(<
-
-
-ENDVCCOL
+ print_main_menu($r, $message);
+# $r->print(<
+#
+#
+#ENDVCCOL
}
######################################################
@@ -1120,6 +1212,13 @@ sub passwordchanger {
# Passwords are encrypted using londes.js (DES encryption)
$errormessage = ($errormessage || '');
my ($user,$domain,$currentpass,$defdom);
+ Apache::lonhtmlcommon::add_breadcrumb(
+ { href => '/adm/preferences?action=changepass',
+ text => 'Change Password'});
+ unless ($caller eq 'reset_by_email') {
+ $r->print(Apache::loncommon::start_page('Personal Data'));
+ $r->print(Apache::lonhtmlcommon::breadcrumbs('Change Password'));
+ }
if ((!defined($caller)) || ($caller eq 'preferences')) {
$user = $env{'user.name'};
$domain = $env{'user.domain'};
@@ -1245,7 +1344,7 @@ sub client_form {
'currentpass' => 'Current Password',
'newpass' => 'New Password',
'confirmpass' => 'Confirm Password',
- 'changepass' => 'Change Password');
+ 'changepass' => 'Save');
my $output = qq|
-END
+
+ $r->print('
'.&mt('Note').': '.$lt{'thde'}.'');
}
sub verify_and_change_discussion {
@@ -1584,7 +1692,7 @@ sub verify_and_change_discussion {
} else {
$message .= &mt('In discussions: all posts will be displayed.').' ';
&Apache::lonnet::del('environment',['discdisplay']);
- &Apache::lonnet::delenv('environment\.discdisplay');
+ &Apache::lonnet::delenv('environment.discdisplay');
}
}
if (defined($env{'form.discmark'}) ) {
@@ -1596,12 +1704,13 @@ sub verify_and_change_discussion {
} else {
$message.=&mt('In discussions: posts will be identified as "NEW" until marked as read by the reader.').' ';
&Apache::lonnet::del('environment',['discmarkread']);
- &Apache::lonnet::delenv('environment\.discmarkread');
+ &Apache::lonnet::delenv('environment.discmarkread');
}
}
- $r->print(<print(< '/adm/preferences?action=changecourseinit',
+ text => 'Change Course Init. Pref.'});
+ $r->print(Apache::loncommon::start_page('Change Course Initialization Preference'));
+ $r->print(Apache::lonhtmlcommon::breadcrumbs('Change Course Init. Pref.'));
my $user = $env{'user.name'};
my $domain = $env{'user.domain'};
my %userenv = &Apache::lonnet::get('environment',['course_init_display']);
@@ -1622,14 +1736,21 @@ sub coursedisplaychanger {
$whatsnewselect = '';
}
}
- my %pagenames = (
+ my %pagenames = &Apache::lonlocal::texthash(
firstres => 'First resource',
- whatsnew => "What's new page",
+ whatsnew => "What's New Page",
);
- my $whatsnew_off=&mt('Display the [_1] in the course.','first resource');
- my $whatsnew_on=&mt('Display the "[_1]" page - a summary of items in the course which require attention.',"What's New");
+ my $whatsnew_off=&mt('Display the [_1]first resource[_2] in the course.','','');
+ my $whatsnew_on=&mt("Display the [_1]What's New Page[_2] - a summary of items in the course which require attention.",'','');
- $r->print(' '.&mt('Set the default page to be displayed when you select a course role').' '.&mt('(Currently: [_1])',$pagenames{$currvalue}).' '.&mt('The global user preference you set for your courses can be overridden in an individual course by setting a course specific setting via the "[_1]" page in the course',"What's New").'
');
+ $r->print(' '
+ .&mt('Set the default page to be displayed when you select a course role')
+ .' '
+ .&mt('(Currently: [_1])',$pagenames{$currvalue})
+ .' '
+ .&mt("The global user preference you set for your courses can be overridden in an individual course by setting a course specific setting via the [_1]What's New Page[_2] in the course.",'','')
+ .'