--- loncom/interface/lonhtmlcommon.pm 2004/05/10 18:57:43 1.70 +++ loncom/interface/lonhtmlcommon.pm 2004/06/08 01:32:02 1.76 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # a pile of common html routines # -# $Id: lonhtmlcommon.pm,v 1.70 2004/05/10 18:57:43 matthew Exp $ +# $Id: lonhtmlcommon.pm,v 1.76 2004/06/08 01:32:02 www Exp $ # # Copyright Michigan State University Board of Trustees # @@ -868,37 +868,92 @@ sub crumbs { # ------------------------------------------------- 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 } +# ------------------------------------------------- Activate additional buttons + +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 { + return ''.&mt('Disable WYSIWYG Editor').''; +} + +sub enablelink { + return ''.&mt('Enable WYSIWYG Editor').''; +} + # ---------------------------------------------------------- Script to activate sub htmlareaactive { - unless (&htmlareablocked()) { return ''; } + unless (&htmlareabrowser()) { return ''; } + if (&htmlareablocked()) { return '
'.&enablelink(); } + my $addbuttons=&htmlareaaddbuttons(); + my $disable=&disablelink(); return (< - HTMLArea.replaceAll(); - + $addbuttons + HTMLArea.replaceAll(config); +
+$disable ENDSCRIPT } +# ----------------------------------------- Script to activate only some fields + +sub htmlareaselectactive { + my @fields=@_; + unless (&htmlareabrowser()) { return ''; } + if (&htmlareablocked()) { return '
'.&enablelink(); } + my $output='
". + &disablelink(); + 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?