[LON-CAPA-cvs] cvs: loncom /interface lonhelp.pm

raeburn raeburn at source.lon-capa.org
Tue Dec 17 20:23:21 EST 2013


raeburn		Wed Dec 18 01:23:21 2013 EDT

  Modified files:              
    /loncom/interface	lonhelp.pm 
  Log:
  - Don't show link to bug reporting site if domain is configured to hide it.
  - Use fieldset for search box.
  - Exclude any query string by extracting filenames of help files from $r->uri
    instead of $ENV{'REQUEST_URI'}.
  - Add second arg -- $uri -- to args passed to &servetext().
  
  
Index: loncom/interface/lonhelp.pm
diff -u loncom/interface/lonhelp.pm:1.41 loncom/interface/lonhelp.pm:1.42
--- loncom/interface/lonhelp.pm:1.41	Mon Jul 15 17:42:11 2013
+++ loncom/interface/lonhelp.pm	Wed Dec 18 01:23:21 2013
@@ -1,6 +1,6 @@
 # The LearningOnline Network with CAPA
 #
-# $Id: lonhelp.pm,v 1.41 2013/07/15 17:42:11 raeburn Exp $
+# $Id: lonhelp.pm,v 1.42 2013/12/18 01:23:21 raeburn Exp $
 #
 # .tex help system web server handler
 #
@@ -57,13 +57,23 @@
 
 # Serve out the text
 sub servetext {
-    my ($r,$text,$is_mobile,$firstfile) = @_;
-    my $bugs=&Apache::loncommon::help_open_bug('Documentation',&mt('Report a documentation bug'));
-    my $morehelp;#=&Apache::loncommon::help_open_menu(undef,undef,1,undef,undef,undef,undef,'Help and Assistance Menu');
-    my $header=&mt('LON-CAPA Help');
+    my ($r,$uri,$text,$is_mobile,$firstfile) = @_;
+    my $bugs;
+    my %helpconfig = &Apache::lonnet::get_dom('configuration',['helpsettings'],
+                                              $env{'request.role.domain'});
+    if (ref($helpconfig{'helpsettings'}) eq 'HASH') {
+        if ($helpconfig{'helpsettings'}{'submitbugs'} eq '1') {
+            $bugs = &Apache::loncommon::help_open_bug('Documentation',&mt('Report a documentation bug'));
+        }
+    }
+    my %lt = &Apache::lonlocal::texthash(
+                                           header  => 'LON-CAPA Help',
+                                           search  => 'Search LON-CAPA help',
+                                           query   => 'Search',
+                                        );
     $r->print(<<HEADER);
     <h3 style="font: sans-serif"><img align="right" alt="help logo"
-    src="/adm/help/gif/lonhelpheader.gif"/>$header</h3><hr />
+    src="/adm/help/gif/lonhelpheader.gif" />$lt{'header'}</h3><hr />
     <!-- BEGIN -->
 HEADER
     if ($is_mobile) {
@@ -83,18 +93,20 @@
     }
 
     if (&Apache::lonnavmaps::advancedUser()) {
-	my $search=&mt('Search LON-CAPA help');
-        my $query=&mt('Search');
-	my $uri = $r->uri;
-	$r->print(<<FOOTER);
-    <hr /><form action="$uri" method="post">
-<label>$search: <input type="text" name="searchterm" size="40" /></label><input type="submit" value="$query" />
-</form>
-<br />
+        $r->print(<<FOOTER);
+    <hr /><div class="LC_left_float">
+    <form action="$uri" method="post">
+    <fieldset><legend>$lt{'search'}</legend>
+    <input type="text" name="searchterm" size="40" />
+    <input type="submit" value="$lt{'query'}" />
+    </fieldset>
+    </form>
+    </div>
+    <div class=""LC_left_float">
+    </div>
+    <div style="padding:0;clear:both;margin:0;border:0"></div>
 $bugs
-$morehelp
 FOOTER
- 
     }
 
     $r->print(<<ENDBODY);
@@ -227,6 +239,7 @@
      my $start_page=
 	 &Apache::loncommon::start_page('LON-CAPA Help',undef,$starthash);
      my $text='';
+     my $uri = $r->uri;
      if ($env{'form.searchterm'}=~/\w/) {
 	 ($text,my $matches)=&listmatches($docroot,$env{'form.searchterm'},&Apache::lonlocal::current_language().'/');
          if ($matches) {
@@ -238,8 +251,7 @@
              $text=&listmatches($docroot,$env{'form.searchterm'}); 
          }
      } else {
-	 my $filenames = &unescape(substr($ENV{'REQUEST_URI'} , 
-					  rindex($ENV{'REQUEST_URI'}, '/') + 1, -4));
+         my $filenames = &unescape(substr($uri,rindex($uri,'/')+1,-4));
 	 
 	 # Security check on the file; the whole filename must consist
 	 # of nothing but alphanums, ' ,, or ., or the file
@@ -274,7 +286,7 @@
 
      $r->send_http_header;
      $r->print($start_page);
-     &servetext($r,$text,$env{'browser.mobile'},$firstfile);
+     &servetext($r,$uri,$text,$env{'browser.mobile'},$firstfile);
      $r->print(&Apache::loncommon::end_page());
 
      return OK;




More information about the LON-CAPA-cvs mailing list