--- loncom/interface/lonpreferences.pm 2011/10/10 22:38:20 1.186.2.8
+++ loncom/interface/lonpreferences.pm 2012/08/27 16:30:31 1.196.4.5
@@ -1,7 +1,7 @@
# The LearningOnline Network
# Preferences
#
-# $Id: lonpreferences.pm,v 1.186.2.8 2011/10/10 22:38:20 raeburn Exp $
+# $Id: lonpreferences.pm,v 1.196.4.5 2012/08/27 16:30:31 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -227,6 +227,7 @@ sub texenginechanger {
'tth' => 'tth (TeX to HTML)',
#'ttm' => 'TeX to MathML',
'jsMath' => 'jsMath',
+ 'MathJax' => 'MathJax',
'mimetex' => 'mimetex (Convert to Images)',
'raw' => 'Raw (Screen Reader)'
);
@@ -236,12 +237,14 @@ sub texenginechanger {
$texengine,
'texengine',
\%mathchoices);
+ my $MathJax_start=&Apache::lontexconvert::MathJax_header();
my $jsMath_start=&Apache::lontexconvert::jsMath_header();
my %lt=&Apache::lonlocal::texthash(
'headline' => 'Change how math is displayed',
'preftxt' => 'Preferred method to display math',
'change' => 'Save',
'exmpl' => 'Examples',
+ 'mathjax' => 'MathJax:',
'jsmath' => 'jsMath:',
'tth' => 'tth (TeX to HTML):',
'mimetex' => 'mimetex (Convert to Images):',
@@ -276,6 +279,14 @@ $lt{'preftxt'}: $selectionbox
$lt{'exmpl'}
+$lt{'mathjax'}
+
+
+
+
+MathJax provides rendered equations whose source code can be extracted in TeX and MathML formats by right clicking the equation.
+
+
$lt{'jsmath'}
$jsMath_start
@@ -283,6 +294,7 @@ $jsMath_start
if (jsMath.nofonts == 1) {
document.writeln($jsMathWarning);
}
+
@@ -342,16 +354,25 @@ sub rolesprefchanger {
my $domain = $env{'user.domain'};
my %userenv = &Apache::lonnet::get
('environment',['recentroles','recentrolesn']);
+ my $brtext = 'Change '.$role.' Page Pref';
+ my $brtitle;
+ if ($env{'form.returnurl'} eq '/adm/roles') {
+ $brtext = 'Configure Hotlist';
+ } else {
+ $brtitle = $brtext;
+ }
Apache::lonhtmlcommon::add_breadcrumb(
{ href => '/adm/preferences?action=changerolespref',
- text => 'Change '.$role.' Page Pref'});
+ text => $brtext});
$r->print(Apache::loncommon::start_page('Content Display Settings'));
- $r->print(Apache::lonhtmlcommon::breadcrumbs('Change '.$role.' Page Pref'));
+ $r->print(Apache::lonhtmlcommon::breadcrumbs($brtitle));
my $hotlist_flag=$userenv{'recentroles'};
my $hotlist_n=$userenv{'recentrolesn'};
- my $checked;
+ my ($checkedon,$checkedoff);
if ($hotlist_flag) {
- $checked = 'checked="checked"';
+ $checkedon = 'checked="checked"';
+ } else {
+ $checkedoff = 'checked="checked"';
}
if (!$hotlist_n) { $hotlist_n=3; }
@@ -378,7 +399,7 @@ sub rolesprefchanger {
&Apache::loncommon::start_data_table().
&Apache::loncommon::start_data_table_header_row().
"".&mt('Freeze '.$role)." | ".
- "".&mt($role)."".
+ " | ".&mt($role)." | ".
&Apache::loncommon::end_data_table_header_row().
"\n";
my $count;
@@ -401,28 +422,51 @@ sub rolesprefchanger {
$roles_check_list .= "\n";
}
+ my $actionurl = '/adm/preferences';
+ if ($env{'form.returnurl'} eq '/adm/roles') {
+ $actionurl = '/adm/roles';
+ }
+ $r->print(''.&mt('Recent Roles Hotlist').'
');
+ unless ($checkedon) {
+ $r->print(&mt('LON-CAPA users with several '.$lc_role.'s may wish to enable the Hotlist.').'
');
+ }
$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.').'
-
-');
}
@@ -513,7 +557,11 @@ sub verify_and_change_rolespref {
}
}
$message=&Apache::loncommon::confirmwrapper($message);
- &print_main_menu($r, $message);
+ if ($env{'form.returnurl'} eq '/adm/roles') {
+ return $message;
+ } else {
+ &print_main_menu($r, $message);
+ }
}
@@ -620,7 +668,7 @@ sub iconchanger {
my ($inlinetools,$toolsorder) = &icon_previews();
if ((ref($inlinetools) eq 'HASH') && (ref($toolsorder) eq 'ARRAY')) {
foreach my $tool (@{$toolsorder}) {
- my ($command,$row,$col,$img,$top,$bot,$act,$desc) =
+ my ($command,$row,$col,$img,$top,$bot,$act,$desc) =
split(/\&/,$inlinetools->{$tool});
$iconic_preview .= '';
$iconsonly_preview .= '';
@@ -633,7 +681,7 @@ sub iconchanger {
$iconic_preview = '';
+ '';
$r->print(<
@@ -663,17 +711,16 @@ sub verify_and_change_icons {
}
sub icon_options {
- my %lt = &Apache::lonlocal::texthash(
- iconic => 'Use icons and text',
- iconsonly => 'Use icons only',
- );
- return %lt;
+ return &Apache::lonlocal::texthash(
+ iconic => 'Use icons and text',
+ iconsonly => 'Use icons only',
+ );
}
sub icon_previews {
my %icon_text = (
annotate => 'Notes',
- bookmark => 'Bookmark',
+ wishlist => 'Stored Links',
catalog => 'Info',
evaluate => 'Evaluate',
feedback => 'Communicate',
@@ -681,13 +728,13 @@ sub icon_previews {
);
my %inlinetools = (
printout => "s&8&3&prt.png&$icon_text{'printout'}&printout[_1]&gopost('/adm/printout',currentURL)&Prepare a printable document",
- bookmark => "s&9&1&sbkm.png&$icon_text{'bookmark'}&bookmark[_2]&set_bookmark()&Set a bookmark for this resource",
+ wishlist => "s&9&1&wishlist-link.png&$icon_text{'wishlist'}&wishlistlink[_2]&set_wishlistlink()&Save a link for this resource in your personal Stored Links repository",
evaluate => "s&8&1&eval.png&$icon_text{'evaluate'}&this[_1]&gopost('/adm/evaluate',currentURL,1)&Provide my evaluation of this resource",
feedback => "s&8&2&fdbk.png&$icon_text{'feedback'}&discuss[_1]&gopost('/adm/feedback',currentURL,1)&Provide feedback messages or contribute to the course discussion about this resource",
annotate => "s&9&3&anot.png&$icon_text{'annotate'}&tations[_1]&annotate()&Make notes and annotations about this resource",
catalog => "s&6&3&catalog.png&$icon_text{'catalog'}&info[_1]&catalog_info()&Show Metadata",
);
- my @toolsorder = qw(annotate bookmark evaluate feedback printout catalog);
+ my @toolsorder = qw(annotate wishlist evaluate feedback printout catalog);
return (\%inlinetools,\@toolsorder);
}
@@ -1196,16 +1243,10 @@ sub colorschanger {
$r->print(<
- function pclose() {
- parmwin=window.open("/adm/rat/empty.html","LONCAPAparms",
- "height=350,width=350,scrollbars=no,menubar=no");
- parmwin.close();
- }
-
$pjump_def
function psub() {
- pclose();
+ modalWindow.close();
if (document.parmform.pres_marker.value!='') {
if (document.parmform.pres_type.value!='') {
eval('document.prefs.'+
@@ -1326,7 +1367,7 @@ sub passwordchanger {
if (&Apache::lonnet::domain($domain) eq '') {
$domain = $r->dir_config('lonDefDomain');
}
- } else {
+ } else {
$r->print(&mt('Page requested in unexpected context').'
');
return;
}
@@ -2117,7 +2158,6 @@ push(@{ $menu[1]->{items} }, {
});
}
-
if (&can_toggle_namelocking()) {
push(@{ $menu[0]->{items} }, {
linktext => 'Automatic name changes',
@@ -2191,11 +2231,19 @@ sub handler {
['action','wysiwyg','returnurl','refpage']);
#
Apache::lonhtmlcommon::clear_breadcrumbs();
+ my ($brlink,$brtxt,$brhelp);
+ if (($env{'form.action'} eq 'changerolespref') && ($env{'form.returnurl'} eq '/adm/roles')) {
+ $brlink ='/adm/roles';
+ $brtxt = 'User Roles';
+ } else {
+ $brlink ='/adm/preferences';
+ $brtxt = 'Set User Preferences';
+ $brhelp = 'Prefs_About_Me,Prefs_Language,Prefs_Screen_Name_Nickname,Change_Colors,Change_Password,Prefs_Messages,Change_Discussion_Display';
+ }
Apache::lonhtmlcommon::add_breadcrumb
- ({href => '/adm/preferences',
- text => 'Set User Preferences',
- help =>
- 'Prefs_About_Me,Prefs_Language,Prefs_Screen_Name_Nickname,Change_Colors,Change_Password,Prefs_Messages,Change_Discussion_Display'});
+ ({href => $brlink,
+ text => $brtxt,
+ help => $brhelp,});
if(!exists $env{'form.action'}) {
&print_main_menu($r);
}elsif($env{'form.action'} eq 'changepass'){