Diff for /loncom/interface/lonhelp.pm between versions 1.27 and 1.32

version 1.27, 2006/05/30 12:46:09 version 1.32, 2006/07/18 21:55:24
Line 58  sub processLabelName { Line 58  sub processLabelName {
 # Serve out the text  # Serve out the text
 sub servetext {  sub servetext {
     my ($r,$text) = @_;      my ($r,$text) = @_;
     my $bugs=&Apache::loncommon::help_open_bug('Documentation');      my $bugs=&Apache::loncommon::help_open_bug('Documentation','Report a documentation bug');
       my $morehelp;#=&Apache::loncommon::help_open_menu(undef,undef,1,undef,undef,undef,undef,'Help and Assistance Menu');
     my $start_page=      my $start_page=
  &Apache::loncommon::start_page('LON-CAPA Help',undef,   &Apache::loncommon::start_page('LON-CAPA Help',undef,
        {'only_body' => 1,});         {'only_body' => 1,});
Line 68  sub servetext { Line 69  sub servetext {
     $r->print(<<HEADER);      $r->print(<<HEADER);
     $start_page      $start_page
     <h3 style="font: sans-serif"><img align="right" alt="help logo"      <h3 style="font: sans-serif"><img align="right" alt="help logo"
     src="/adm/help/gif/lonhelpheader.gif"/>$header</h3><hr />$bugs      src="/adm/help/gif/lonhelpheader.gif"/>$header</h3><hr />
     <!-- BEGIN -->      <!-- BEGIN -->
 HEADER  HEADER
   
Line 76  HEADER Line 77  HEADER
   
     if (&Apache::lonnavmaps::advancedUser()) {      if (&Apache::lonnavmaps::advancedUser()) {
  my $search=&mt('Search LON-CAPA help');   my $search=&mt('Search LON-CAPA help');
  my $about=&mt('About LON-CAPA help and More Help');  
         my $query=&mt('Search');          my $query=&mt('Search');
  my $uri = $r->uri;   my $uri = $r->uri;
  $r->print(<<FOOTER);   $r->print(<<FOOTER);
Line 84  HEADER Line 84  HEADER
 $search: <input type="text" name="searchterm" size="40" /><input type="submit" value="$query" />  $search: <input type="text" name="searchterm" size="40" /><input type="submit" value="$query" />
 </form>  </form>
 <br />  <br />
 <a href="/adm/help/abouthelp.html">$about</a>  $bugs
   $morehelp
 FOOTER  FOOTER
     
     }      }
Line 111  sub render { Line 112  sub render {
     # absolute paths for use with help.loncapa.org      # absolute paths for use with help.loncapa.org
     $tex =~ s|  \\ref\{([^}]*)\}      $tex =~ s|  \\ref\{([^}]*)\}
              |               |
               if (not(exists($fragmentLabels{$1}))) {                my $label=$1;
           &Apache::lonnet::logthis("ERROR: $1 not a valid help label");                if ($1!~/\.hlp$/) {
               };                    if ((!exists($fragmentLabels{$1})) && ($1!~/\.hlp$/)) {
                &Apache::lonnet::logthis("ERROR: $1 not a valid help label");
                        $label='Error';
                     } else {
                        $label=substr($fragmentLabels{$1}, 0, -4);
     }
         } else {
     $label=~s/\.hlp$//;
         }
              '\\begin{html}<a href="http://' . $serverroot ."/adm/help/".               '\\begin{html}<a href="http://' . $serverroot ."/adm/help/".
               substr($fragmentLabels{$1}, 0, -4) .                $label .
               '.hlp#' . &processLabelName($1) .                 '.hlp#' . &processLabelName($1) . 
              '"><img src="http://' . $serverroot . '/adm/help/gif/smallHelp.gif" border="0" /></a>' .               '"><img src="http://' . $serverroot . '/adm/help/gif/smallHelp.gif" border="0" /></a>' .
              '\\end{html}'               '\\end{html}'
Line 164  sub listmatches { Line 173  sub listmatches {
     $line=~s/\{//gs;      $line=~s/\{//gs;
     $line=~s/\}//gs;      $line=~s/\}//gs;
     $line=~s/\\/ /gs;      $line=~s/\\/ /gs;
     $line=~s/(\Q$term\E)/\<b\>$1\<\/b\>/gsi;  
                     $line=~s/\</\&lt\;/gs;                      $line=~s/\</\&lt\;/gs;
                     $line=~s/\>/\&gt\;/gs;                      $line=~s/\>/\&gt\;/gs;
       $line=~s/(\Q$term\E)/\<b\>$1\<\/b\>/gsi;
     $quote.='<br />...'.$line.'...';      $quote.='<br />...'.$line.'...';
  }   }
     }      }
Line 191  sub handler { Line 200  sub handler {
      my $serverroot = $ENV{'HTTP_HOST'};       my $serverroot = $ENV{'HTTP_HOST'};
   
      &Apache::lonlocal::get_language_handle($r);       &Apache::lonlocal::get_language_handle($r);
        &Apache::loncommon::content_type($r,"text/html");
      my $text='';       my $text='';
      if ($env{'form.searchterm'}=~/\w/) {       if ($env{'form.searchterm'}=~/\w/) {
  &Apache::loncommon::content_type($r,"text/html");  
  ($text,my $matches)=&listmatches($docroot,$env{'form.searchterm'},&Apache::lonlocal::current_language().'/');   ($text,my $matches)=&listmatches($docroot,$env{'form.searchterm'},&Apache::lonlocal::current_language().'/');
          if ($matches) {           if ($matches) {
              my ($englishresult,$englishmatches)=&listmatches($docroot,$env{'form.searchterm'});               my ($englishresult,$englishmatches)=&listmatches($docroot,$env{'form.searchterm'});
Line 204  sub handler { Line 213  sub handler {
              $text=&listmatches($docroot,$env{'form.searchterm'});                $text=&listmatches($docroot,$env{'form.searchterm'}); 
          }           }
      } else {       } else {
  my $filenames = &unescape(substr ($ENV{'REQUEST_URI'} ,    my $filenames = &unescape(substr($ENV{'REQUEST_URI'} , 
    rindex($ENV{'REQUEST_URI'}, '/') + 1, -4));    rindex($ENV{'REQUEST_URI'}, '/') + 1, -4));
       
  # Security check on the file; the whole filename must consist   # Security check on the file; the whole filename must consist
  # of nothing but alphanums, ' ,, or ., or the file   # of nothing but alphanums, ' ,, or ., or the file
Line 233  sub handler { Line 242  sub handler {
          or return HTTP_NOT_FOUND;           or return HTTP_NOT_FOUND;
      $tex .= join('', <$file>);       $tex .= join('', <$file>);
  }   }
     
  if ($env{'browser.mathml'}) {  
      &Apache::loncommon::content_type($r,'text/xml');  
      &tth::ttminit();  
      if ($env{'browser.unicode'}) {  
  &tth::ttmoptions('-L -u1');  
      } else {  
  &tth::ttmoptions('-L -u0');  
      }  
  } else {  
      &Apache::loncommon::content_type($r,"text/html");  
      &tth::tthinit();  
      if ($env{'browser.unicode'}) {  
  &tth::tthoptions('-L -u1');  
      } else {  
  &tth::tthoptions('-L -u0');  
      }  
  }  
  $text = &render($tex, $docroot, $serverroot);   $text = &render($tex, $docroot, $serverroot);
      }       }
   

Removed from v.1.27  
changed lines
  Added in v.1.32


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