Diff for /loncom/interface/lonhelpmenu.pm between versions 1.21 and 1.27

version 1.21, 2005/06/03 15:47:29 version 1.27, 2006/06/26 22:06:19
Line 32  use Apache::Constants qw(:common); Line 32  use Apache::Constants qw(:common);
 use Apache::loncommon();  use Apache::loncommon();
 use Apache::lonlocal;  use Apache::lonlocal;
 use Apache::lonnet;  use Apache::lonnet;
   use lib '/home/httpd/lib/perl/';
   use LONCAPA;
   
 sub handler {  sub handler {
     my ($r) = @_;      my ($r) = @_;
     &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},['page','color','function','faq','bug','topic','component_help','origurl','stayonpage']);      &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},['page','function','faq','bug','topic','component_help','origurl','stayonpage']);
     &Apache::loncommon::content_type($r,'text/html');      &Apache::loncommon::content_type($r,'text/html');
     $r->send_http_header;      $r->send_http_header;
   
     if ($r->header_only) {      if ($r->header_only) {
         return OK;          return OK;
     }      }
     my $color = $env{'form.color'};  
     my $faq = $env{'form.faq'};      my $faq = $env{'form.faq'};
     my $bug = $env{'form.bug'};      my $bug = $env{'form.bug'};
     my $topic = $env{'form.topic'};      my $topic = $env{'form.topic'};
Line 62  sub handler { Line 63  sub handler {
     my $faqbaseurl = $Apache::lonnet::perlvar{'FAQHost'};      my $faqbaseurl = $Apache::lonnet::perlvar{'FAQHost'};
     my $requestmail = $Apache::lonnet::perlvar{'lonSupportEMail'};      my $requestmail = $Apache::lonnet::perlvar{'lonSupportEMail'};
     if ($env{'form.page'} eq 'banner') {      if ($env{'form.page'} eq 'banner') {
         &display_help_banner($r,$color,$function,$faq,$bug,$topic,$component_url,$origurl,$bugurl,$faqbaseurl,$requestmail,$stayOnPage);          &display_help_banner($r,$function,$faq,$bug,$topic,$component_url,$origurl,$bugurl,$faqbaseurl,$requestmail,$stayOnPage);
     } elsif ($env{'form.page'} eq 'body') {      } elsif ($env{'form.page'} eq 'body') {
         &display_help_mainpage($r,$color,$function,$faq,$bug,$topic,$component_url,$origurl,$bugurl,$faqbaseurl,$requestmail);          &display_help_mainpage($r,$function,$faq,$bug,$topic,$component_url,$origurl,$bugurl,$faqbaseurl,$requestmail);
     }      }
     return OK;      return OK;
 }  }
   
 sub display_help_banner {  sub display_help_banner {
     my ($r,$color,$function,$faq,$bug,$topic,$component_url,$origurl,$bugurl,$faqbaseurl,$requestmail,$stayOnPage) = @_;      my ($r,$function,$faq,$bug,$topic,$component_url,$origurl,$bugurl,$faqbaseurl,$requestmail,$stayOnPage) = @_;
     my $bodytag = &Apache::loncommon::bodytag('',$function,'rightmargin="0" leftmargin="0" marginwidth="0" topmargin="1" marginheight="1"',1);  
     $bodytag=~s/[\n\r]/ /g;  
     my $fontcolor = &Apache::loncommon::designparm($function.'.font');  
     my $alinkcolor = &Apache::loncommon::designparm($function.'.alink');  
     my $vlinkcolor = &Apache::loncommon::designparm($function.'.vlink');  
     my $pagecolor = &Apache::loncommon::designparm($function.'.pgbg');  
     my $tablecolor = &Apache::loncommon::designparm($function.'.tabbg');  
     my $location=&Apache::loncommon::lonhttpdurl("/adm");      my $location=&Apache::loncommon::lonhttpdurl("/adm");
     if (($tablecolor eq '') || ($tablecolor eq '#FFFFFF')) {  
         $tablecolor = '#EEEE99';  
     }  
     my $scripttag = '';      my $scripttag = '';
     if ($requestmail =~ m/^[^\@]+\@[^\@]+$/) {      if ($requestmail =~ m/^[^\@]+\@[^\@]+$/) {
         my $displayurl = &Apache::lonnet::escape($origurl);          my $displayurl = &escape($origurl);
         $scripttag = (<<"SCRIPT_ONE");          $scripttag = (<<"SCRIPT_ONE");
 <script>  <script>
 function gohelpdesk() {  function gohelpdesk() {
Line 118  function validmail(field) { Line 109  function validmail(field) {
     var str = field.value;      var str = field.value;
     if (window.RegExp) {      if (window.RegExp) {
         var reg1str = "(@.*@)|(\\.\\.)|(@\\.)|(\\.@)|(^\\.)";          var reg1str = "(@.*@)|(\\.\\.)|(@\\.)|(\\.@)|(^\\.)";
         var reg2str = "^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$";          var reg2str = "^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$"; //"
         var reg1 = new RegExp(reg1str);          var reg1 = new RegExp(reg1str);
         var reg2 = new RegExp(reg2str);          var reg2 = new RegExp(reg2str);
         if (!reg1.test(str) && reg2.test(str)) {          if (!reg1.test(str) && reg2.test(str)) {
Line 138  function validmail(field) { Line 129  function validmail(field) {
 </script>  </script>
 SCRIPT_TWO  SCRIPT_TWO
     }      }
     my $html=&Apache::lonxml::xmlbegin();  
     $r->print(<<END);      my %body_layout = 
 $html   ('rightmargin'  => "0",
 <head>   'leftmargin'   => "0",
 <title>Help Banner</title>   'marginwidth'  => "0",
 <style type="text/css">   'topmargin'    => "1",
 <!--   'marginheight' => "1");
  a:link {text-decoration: none; color: $fontcolor; }      my $start_page = 
  a:visited {text-decoration: none; color: $fontcolor; }   &Apache::loncommon::start_page('',$scripttag,
  a:active {text-decoration: none; color: $fontcolor; }         {'function'    => $function,
  a:hover {text-decoration: underline; color: $vlinkcolor; }   'add_entries' => \%body_layout,
 -->   'only_body'   => 1,});
 </style>      $r->print($start_page);
 $scripttag  
 </head>      my $width = ($stayOnPage) ? '700' : '600';
 $bodytag  
 END      $r->print('<table id="LC_helpmenu" width="'.$width.'">');
     if ($stayOnPage) {  
         $r->print('<table width="700" border="0" cellspacing="0" cellpadding="0" height="55">');  
     } else {  
         $r->print('<table width="600" border="0" cellspacing="0" cellpadding="0" height="55">');  
     }  
     $r->print(<<END);      $r->print(<<END);
   <tr height="50">    <tr height="50">
    <td width='5'>&nbsp;</td>     <td width='5'>&nbsp;</td>
    <td>     <td>
     <fieldset><legend><img src="$location/lonIcons/minilogo.gif" height='20' width='29' valign='bottom' />&nbsp;&nbsp;<b><font size="+1">LON-CAPA help/support</font></b></legend>      <fieldset><legend><img src="$location/lonIcons/minilogo.gif" height='20' width='29' valign='bottom' />&nbsp;&nbsp;LON-CAPA help/support</legend>
  <table width="100%" border="0" cellpadding="0" cellspacing="0" bgcolor="#000000">   <table id="LC_helpmenu_links">
   <tr>     <tr>
    <td>  
     <table width="100%" border="0" cellpadding="0" cellspacing="1" bgcolor="#000000">  
      <tr>  
       <td>  
        <table width="100%" border="0" cellpadding="0" cellspacing="0" bgcolor="#ffffff">  
         <tr>  
          <td>  
   <table width="100%" border="0" cellpadding="0" cellspacing="1" bgcolor="#ffffff">  
            <tr bgcolor="$tablecolor">  
 END  END
     if ($component_url) {      if ($component_url) {
  $r->print("<td align=\"center\"><b><a href=\"$component_url\" target=\"bodyframe\">".   $r->print("<td align=\"center\"><b><a href=\"$component_url\" target=\"bodyframe\">".
Line 207  END Line 185  END
 END  END
     }      }
     $r->print(<<END);      $r->print(<<END);
            </tr>  
           </table>  
          </td>  
         </tr>  
        </table>  
       </td>  
      </tr>  
     </table>  
    </td>  
   </tr>    </tr>
  </table>   </table>
 </fieldset>  </fieldset>
Line 226  END Line 195  END
   <td colspan='3' height='5'>&nbsp;</td>    <td colspan='3' height='5'>&nbsp;</td>
  </tr>   </tr>
 </table>  </table>
 </body>  
 </html>  
 END  END
       $r->print(&Apache::loncommon::end_page());
 }  }
   
 sub display_help_mainpage {  sub display_help_mainpage {
     my ($r,$color,$function,$faq,$bug,$topic,$component_url,$origurl,$bugurl,$faqbaseurl,$requestmail) = @_;      my ($r,$function,$faq,$bug,$topic,$component_url,$origurl,$bugurl,$faqbaseurl,$requestmail) = @_;
     my $bodytag = &Apache::loncommon::bodytag('',$function,'topmargin="0" marginheight="0"',1);  
     $bodytag=~s/[\n\r]/ /g;  
     my %lt =&Apache::lonlocal::texthash(      my %lt =&Apache::lonlocal::texthash(
         'heco' => 'Help Content',  
         'topp' => 'Topic Page',          'topp' => 'Topic Page',
         'chen' => 'Choose an entry below to go directly to a relevant help page',          'chen' => 'Choose an entry below to go directly to a relevant help page',
         'orto' => 'or to submit a help request to the LON-CAPA support staff at your institution.',          'orto' => 'or to submit a help request to the LON-CAPA support staff at your institution.',
Line 255  sub display_help_mainpage { Line 221  sub display_help_mainpage {
         'crea' => 'Create an account for yourself in the LON-CAPA Bugzilla tracking system, if you wish to report bugs you have encountered in the LON-CAPA software,or if you have suggestions for improvements in LON-CAPA.',          'crea' => 'Create an account for yourself in the LON-CAPA Bugzilla tracking system, if you wish to report bugs you have encountered in the LON-CAPA software,or if you have suggestions for improvements in LON-CAPA.',
         'suim' => ' Suggested improvements may include additional functionality, improved usability, or changes to wording used in LON-CAPA pages, including the embedded help system.'          'suim' => ' Suggested improvements may include additional functionality, improved usability, or changes to wording used in LON-CAPA pages, including the embedded help system.'
     );      );
     my $html=&Apache::lonxml::xmlbegin();  
     $r->print(<<END);      my %body_layout = 
 $html   ('topmargin'    => "0",
  <head>   'marginheight' => "0");
   <title>$lt{'heco'}</title>      my $start_page =
  </head>   &Apache::loncommon::start_page('Help Content',undef,
 $bodytag         {'function'    => $function,
 END   'add_entries' => \%body_layout,
    'only_body'   => 1,});
       $r->print($start_page);
     $r->print($lt{'chen'});      $r->print($lt{'chen'});
     if ($requestmail =~ m/^[^\@]+\@[^\@]+$/) {      if ($requestmail =~ m/^[^\@]+\@[^\@]+$/) {
         $r->print(', '.$lt{'orto'});          $r->print(', '.$lt{'orto'});
Line 289  END Line 257  END
     if ($requestmail =~ m/^[^\@]+\@[^\@]+$/) {      if ($requestmail =~ m/^[^\@]+\@[^\@]+$/) {
         $r->print("          $r->print("
           <ul>            <ul>
            <li><a href=\"/adm/support?origurl=".&Apache::lonnet::escape($origurl)."&function=$function\">$lt{'cont'}</a></li>             <li><a href=\"/adm/support?origurl=".&escape($origurl)."&function=$function\">$lt{'cont'}</a></li>
           </ul>            </ul>
           <p>$lt{'suhr'}");            <p>$lt{'suhr'}");
          unless ($env{'user.adv'}) {           unless ($env{'user.adv'}) {
Line 317  END Line 285  END
           <p>$lt{'crea'} $lt{'suim'}</p>            <p>$lt{'crea'} $lt{'suim'}</p>
         ");          ");
     }      }
     $r->print(<<END);      $r->print(&Apache::loncommon::end_page());
  </body>  
 </html>  
 END  
 }  }
   
 1;  1;

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


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