Diff for /loncom/interface/lonhtmlcommon.pm between versions 1.161 and 1.168

version 1.161, 2007/09/05 05:00:24 version 1.168, 2007/11/02 23:41:01
Line 481  ENDJS Line 481  ENDJS
     return $result;      return $result;
 }  }
   
   
   sub build_url {
       my ($base, $fields)=@_;
       my $url;
       $url = $base.'?';
       foreach my $key (keys(%$fields)) {
           $url.=&escape($key).'='.&escape($$fields{$key}).'&';
       }
       $url =~ s/&$//;
       return $url;
   }
   
   
 ##############################################  ##############################################
 ##############################################  ##############################################
   
Line 682  Returns: a perl string as described. Line 695  Returns: a perl string as described.
 ##############################################  ##############################################
 ##############################################  ##############################################
 sub StatusOptions {  sub StatusOptions {
     my ($status, $formName,$size,$onchange)=@_;      my ($status, $formName,$size,$onchange,$mult)=@_;
     $size = 1 if (!defined($size));      $size = 1 if (!defined($size));
     if (! defined($status)) {      if (! defined($status)) {
         $status = 'Active';          $status = 'Active';
Line 691  sub StatusOptions { Line 704  sub StatusOptions {
   
     my $Str = '';      my $Str = '';
     $Str .= '<select name="Status"';      $Str .= '<select name="Status"';
       if (defined($mult)){
           $Str .= ' multiple="multiple" ';
       }
     if(defined($formName) && $formName ne '' && ! defined($onchange)) {      if(defined($formName) && $formName ne '' && ! defined($onchange)) {
         $Str .= ' onchange="document.'.$formName.'.submit()"';          $Str .= ' onchange="document.'.$formName.'.submit()"';
     }      }
Line 1006  sub crumbs { Line 1022  sub crumbs {
     }          }    
             my $href_path = &HTML::Entities::encode($path,'<>&"');              my $href_path = &HTML::Entities::encode($path,'<>&"');
     &Apache::loncommon::inhibit_menu_check(\$href_path);      &Apache::loncommon::inhibit_menu_check(\$href_path);
     $output.=qq{<a href="$href_path" $target>$dir</a>/};      if ($form) {
           my $href = 'javascript:'.$form.".action='".$href_path."';".$form.'.submit();';
           $output.=qq{<a href="$href" $target>$dir</a>/};
       } else {
           $output.=qq{<a href="$href_path" $target>$dir</a>/};
       }
  }   }
     } else {      } else {
  foreach my $dir (split('/',$uri)) {   foreach my $dir (split('/',$uri)) {
Line 1080  ENDLINK Line 1101  ENDLINK
 }  }
   
 sub htmlareaheaders {  sub htmlareaheaders {
     if (&htmlareablocked()) { return ''; }      return if (&htmlareablocked());
     unless (&htmlareabrowser()) { return ''; }      return if (!&htmlareabrowser());
     my $lang='en';  
     if (&mt('htmlarea_lang') ne 'htmlarea_lang') {  
  $lang=&mt('htmlarea_lang');  
     }  
     return (<<ENDHEADERS);      return (<<ENDHEADERS);
 <script type="text/javascript">  <script type="text/javascript" src="/fckeditor/fckeditor.js"></script>
 _editor_url='/htmlarea/';  
 _editor_lang='$lang';  
 </script>  
 <script type="text/javascript" src="/htmlarea/htmlarea.js"></script>  
 <link rel="stylesheet" type="text/css" href="/htmlarea/htmlarea.css" />  
 ENDHEADERS  ENDHEADERS
 }  }
   
 # ------------------------------------------------- Activate additional buttons  
   
 sub htmlareaaddbuttons {  
     if (&htmlareablocked()) { return ''; }  
     unless (&htmlareabrowser()) { return ''; }  
     return (<<ENDADDBUTTON);  
     var config=new HTMLArea.Config();  
     config.registerButton('ed_math','LaTeX Inline',  
   '/htmlarea/images/ed_math.gif',false,  
     function(editor,id) {  
       editor.surroundHTML('&nbsp;<m>\$','\$</m>&nbsp;');  
     }  
   );  
     config.registerButton('ed_math_eqn','LaTeX Equation',  
   '/htmlarea/images/ed_math_eqn.gif',false,  
     function(editor,id) {  
       editor.surroundHTML(  
      '&nbsp;\\n<center><m>\\\\[','\\\\]</m></center>\\n&nbsp;');  
     }  
   );  
     config.toolbar.push(['ed_math','ed_math_eqn']);  
 ENDADDBUTTON  
 }  
   
 # ----------------------------------------------------------------- Preferences  # ----------------------------------------------------------------- Preferences
   
 sub disablelink {  sub disablelink {
Line 1138  sub enablelink { Line 1126  sub enablelink {
     return '<a href="'.&HTML::Entities::encode('/adm/preferences?action=set_wysiwyg&wysiwyg=on&returnurl=','<>&"').&escape($ENV{'REQUEST_URI'}).'">'.&mt('Enable WYSIWYG Editor').'</a>';      return '<a href="'.&HTML::Entities::encode('/adm/preferences?action=set_wysiwyg&wysiwyg=on&returnurl=','<>&"').&escape($ENV{'REQUEST_URI'}).'">'.&mt('Enable WYSIWYG Editor').'</a>';
 }  }
   
   # ------------------------------------------------- lang to use in html editor
   sub htmlarea_lang {
       my $lang='en';
       if (&mt('htmlarea_lang') ne 'htmlarea_lang') {
    $lang=&mt('htmlarea_lang');
       }
       return $lang;
   }
   
 # ----------------------------------------- Script to activate only some fields  # ----------------------------------------- Script to activate only some fields
   
 sub htmlareaselectactive {  sub htmlareaselectactive {
     my @fields=@_;      my @fields=@_;
     unless (&htmlareabrowser()) { return ''; }      unless (&htmlareabrowser()) { return ''; }
     if (&htmlareablocked()) { return '<br />'.&enablelink(@fields); }      if (&htmlareablocked()) { return '<br />'.&enablelink(@fields); }
     my $output='<script type="text/javascript" defer="1">'.      my $output='<script type="text/javascript" defer="1">';
  &htmlareaaddbuttons();      my $lang = &htmlarea_lang();
     foreach(@fields) {      foreach my $field (@fields) {
  $output.="\nHTMLArea.replace('$_',config);";   $output.="
   {
       var oFCKeditor = new FCKeditor('$field');
       oFCKeditor.Config['CustomConfigurationsPath'] = 
    '/fckeditor/loncapaconfig.js';    
       oFCKeditor.ReplaceTextarea();
       oFCKeditor.Config['AutoDetectLanguage'] = false;
       oFCKeditor.Config['DefaultLanguage'] = '$lang';
   }";
     }      }
     $output.="\nwindow.status='Activated Editfields';\n</script><br />".      $output.="\nwindow.status='Activated Editfields';\n</script><br />".
  &disablelink(@fields);   &disablelink(@fields);

Removed from v.1.161  
changed lines
  Added in v.1.168


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>