--- loncom/interface/lonhtmlcommon.pm 2004/04/23 17:49:25 1.67
+++ loncom/interface/lonhtmlcommon.pm 2004/07/03 18:49:42 1.79
@@ -1,7 +1,7 @@
# The LearningOnline Network with CAPA
# a pile of common html routines
#
-# $Id: lonhtmlcommon.pm,v 1.67 2004/04/23 17:49:25 matthew Exp $
+# $Id: lonhtmlcommon.pm,v 1.79 2004/07/03 18:49:42 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -163,9 +163,15 @@ sub textbox {
##############################################
##############################################
sub checkbox {
- my ($name,$value) = @_;
- my $Str = '';
+ my ($name,$checked,$value) = @_;
+ my $Str = ''.$prefix.'/';
+ my $output='';
+ unless ($noformat) { $output.='
'; }
+ $output.=''.$prefix.'/';
if ($ENV{'user.adv'}) {
my $path=$prefix.'/';
foreach (split('/',$uri)) {
@@ -856,43 +864,90 @@ sub crumbs {
$output.=$uri;
}
unless ($uri=~/\/$/) { $output=~s/\/$//; }
- return $output.'
';
+ return $output.''.($noformat?'':'
');
}
# ------------------------------------------------- Output headers for HTMLArea
sub htmlareaheaders {
- unless (&htmlareablocked()) { return ''; }
+ if (&htmlareablocked()) { return ''; }
+ unless (&htmlareabrowser()) { return ''; }
my $lang='en';
+ if (&mt('htmlarea_lang') ne 'htmlarea_lang') {
+ $lang=&mt('htmlarea_lang');
+ }
return (<
- _editor_url="/htmlarea/";
+_editor_url='/htmlarea/';
+_editor_lang='$lang';
-
-
-
ENDHEADERS
}
-# ---------------------------------------------------------- Script to activate
+# ------------------------------------------------- Activate additional buttons
-sub htmlareaactive {
- unless (&htmlareablocked()) { return ''; }
- return (<
- HTMLArea.replaceAll();
-
-ENDSCRIPT
+sub htmlareaaddbuttons {
+ if (&htmlareablocked()) { return ''; }
+ unless (&htmlareabrowser()) { return ''; }
+ return (<\$','\$');
+ }
+ );
+ config.registerButton('ed_math_eqn','LaTeX Equation',
+ '/htmlarea/images/ed_math_eqn.gif',false,
+ function(editor,id) {
+ editor.surroundHTML(
+ '\\\\[','\\\\]');
+ }
+ );
+ config.toolbar.push(['ed_math','ed_math_eqn']);
+ENDADDBUTTON
+}
+
+# ----------------------------------------------------------------- Preferences
+
+sub disablelink {
+ my @fields=@_;
+ if (defined($#fields)) {
+ unless ($#fields>=0) { return ''; }
+ }
+ return ''.&mt('Disable WYSIWYG Editor').'';
+}
+
+sub enablelink {
+ my @fields=@_;
+ if (defined($#fields)) {
+ unless ($#fields>=0) { return ''; }
+ }
+ return ''.&mt('Enable WYSIWYG Editor').'';
+}
+
+# ----------------------------------------- Script to activate only some fields
+
+sub htmlareaselectactive {
+ my @fields=@_;
+ unless (&htmlareabrowser()) { return ''; }
+ if (&htmlareablocked()) { return '
'.&enablelink(@fields); }
+ my $output='
".
+ &disablelink(@fields);
+ return $output;
}
# --------------------------------------------------------------------- Blocked
sub htmlareablocked {
- unless (&htmlareabrowser()) { return ''; }
- return 1;
+ unless ($ENV{'environment.wysiwygeditor'} eq 'on') { return 1; }
+ return 0;
}
# ---------------------------------------- Browser capable of running HTMLArea?
@@ -969,23 +1024,34 @@ returns: nothing
# The last breadcrumb does not have a link, so handle it separately.
my $last = pop(@Crumbs);
#
- # The first one should be the course, I guess.
+ # The first one should be the course or a menu link
if (!defined($menulink)) { $menulink=1; }
- if ($menulink && exists($ENV{'request.course.id'}) && $ENV{'request.course.id'} ne '') {
- my $cid = $ENV{'request.course.id'};
+ if ($menulink) {
+ my $description = 'Menu';
+ if (exists($ENV{'request.course.id'}) &&
+ $ENV{'request.course.id'} ne '') {
+ $description =
+ $ENV{'course.'.$ENV{'request.course.id'}.'.description'};
+ }
unshift(@Crumbs,{
- href=>'/adm/menu',
- title=>'Go to main menu',
- text=>$ENV{'course.'.$cid.'.description'},
- });
+ href =>'/adm/menu',
+ title =>'Go to main menu',
+ target =>'_top',
+ text =>$description,
+ });
}
my $links .=
join('->',
map {
$faq = $_->{'faq'} if (exists($_->{'faq'}));
$bug = $_->{'bug'} if (exists($_->{'bug'}));
- ''.
- &mt($_->{'text'}).''
+ my $result = '{'target'}) && $_->{'target'} ne '') {
+ $result .= 'target="'.$_->{'target'}.'" ';
+ }
+ $result .='title="'.&mt($_->{'title'}).'">'.
+ &mt($_->{'text'}).'';
+ $result;
} @Crumbs
);
$links .= '->' if ($links ne '');
@@ -994,12 +1060,13 @@ returns: nothing
my $icons = '';
$faq = $last->{'faq'} if (exists($last->{'faq'}));
$bug = $last->{'bug'} if (exists($last->{'bug'}));
- if ($faq ne '') {
- $icons .= &Apache::loncommon::help_open_faq($faq);
- }
- if ($bug ne '') {
- $icons .= &Apache::loncommon::help_open_bug($bug);
- }
+# if ($faq ne '') {
+# $icons .= &Apache::loncommon::help_open_faq($faq);
+# }
+# if ($bug ne '') {
+# $icons .= &Apache::loncommon::help_open_bug($bug);
+# }
+ $icons .= &Apache::loncommon::help_open_menu($color,$component,$component_help,$function,$faq,$bug);
if ($icons ne '') {
$Str .= $icons.' ';
}