Diff for /loncom/interface/lonhelpmenu.pm between versions 1.22 and 1.34

version 1.22, 2006/03/21 18:37:51 version 1.34, 2008/03/24 01:11:36
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','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'};
     my $function = $env{'form.function'};  
     my $component_help = $env{'form.component_help'};      my $component_help = $env{'form.component_help'};
     my $origurl = $env{'form.origurl'};      my $origurl = $env{'form.origurl'};
     my $stayOnPage = $env{'form.stayonpage'};      my $stayOnPage = $env{'form.stayonpage'};
Line 62  sub handler { Line 62  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,$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,$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,$faq,$bug,$topic,$component_url,$origurl,$bugurl,$faqbaseurl,$requestmail,$stayOnPage) = @_;
     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 91  function gohelpdesk() { Line 83  function gohelpdesk() {
         actiontype = parent.bodyframe.document.logproblem.action.value;          actiontype = parent.bodyframe.document.logproblem.action.value;
     }      }
     catch(error) {      catch(error) {
         parent.bodyframe.location = "/adm/support?origurl=$displayurl&function=$function";          parent.bodyframe.location = "/adm/support?origurl=$displayurl";
         return;          return;
     }      }
     if (actiontype) {      if (actiontype) {
Line 106  function gohelpdesk() { Line 98  function gohelpdesk() {
                 return;                  return;
             }              }
         }          }
         parent.bodyframe.location = "/adm/support?origurl=$displayurl&function=$function";          parent.bodyframe.location = "/adm/support?origurl=$displayurl";
         return;          return;
     }      }
 }  }
Line 137  function validmail(field) { Line 129  function validmail(field) {
 SCRIPT_TWO  SCRIPT_TWO
     }      }
   
     my $html=&Apache::lonxml::xmlbegin();      my %body_layout = 
     my $body_layout = 'rightmargin="0" leftmargin="0" marginwidth="0" topmargin="1" marginheight="1"';   ('rightmargin'  => "0",
    'leftmargin'   => "0",
    'marginwidth'  => "0",
    'topmargin'    => "1",
    'marginheight' => "1");
     my $start_page =       my $start_page = 
  &Apache::loncommon::start_page('',$scripttag,   &Apache::loncommon::start_page('',$scripttag,
        {'function'    => $function,         {'add_entries' => \%body_layout,
  'add_entries' => $body_layout,  
  'only_body'   => 1,});   'only_body'   => 1,});
     $r->print($start_page);      $r->print($start_page);
   
     if ($stayOnPage) {      my $width = ($stayOnPage) ? '95%' : '600';
         $r->print('<table width="700" border="0" cellspacing="0" cellpadding="0" height="55">');      $r->print('<table id="LC_helpmenu" width="'.$width.'">');
     } else {  
         $r->print('<table width="600" border="0" cellspacing="0" cellpadding="0" height="55">');      my $general_help = &Apache::loncommon::general_help();
     }  
     $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>   <td><span class="LC_nobreak"><a href="/adm/help/$general_help.hlp" target="bodyframe">
     <table width="100%" border="0" cellpadding="0" cellspacing="1" bgcolor="#000000">    <img src="/res/adm/pages/help.png" border="0" alt="(General help)" valign="middle" />&nbsp;General Help</a>&nbsp;</span></td>
      <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><span class=\"LC_nobreak\"><a href=\"$component_url\" target=\"bodyframe\">".
   '<img src="'.$location.'/help/gif/smallHelp.gif" border="0" alt="(Topic help)" valign="middle" />&nbsp;Topic help</a></b>&nbsp;</td>');    '<img src="/res/adm/pages/help.png" border="0" alt="(Topic help)" valign="middle" />&nbsp;'.$topic.'</a>&nbsp;</span></td>');
     }      }
     if ($requestmail =~ m/^[^\@]+\@[^\@]+$/) {      if ($requestmail =~ m/^[^\@]+\@[^\@]+$/) {
         $r->print('          $r->print('
             <td align="center">&nbsp;<b><a href="javascript:gohelpdesk()"><img src="'.$location.'/lonIcons/helpdesk.gif" border="0" alt="(Ask helpdesk)" valign="middle" />&nbsp;Ask helpdesk</a></b>&nbsp;</td>');              <td><span class="LC_nobreak">&nbsp;<a href="javascript:gohelpdesk()"><img src="'.$location.'/lonIcons/helpdesk.gif" border="0" alt="(Ask helpdesk)" valign="middle" />&nbsp;Ask helpdesk</a>&nbsp;</span></td>');
     }      }
     if ($faq && $env{'user.adv'}) {      if ($faq && $env{'user.adv'}) {
         $r->print(<<END);          $r->print(<<END);
             <td align="center">               <td><span class="LC_nobreak">&nbsp;<a href="$faqbaseurl/fom/cache/$faq.html" target="bodyframe"><img src="$location/lonMisc/smallFAQ.gif" border="0" alt="(FAQ)" valign="middle" />&nbsp;FAQ</a>&nbsp;</span>
              &nbsp;<b><a href="$faqbaseurl/fom/cache/$faq.html" target="bodyframe"><img src="$location/lonMisc/smallFAQ.gif" border="0" alt="(FAQ)" valign="middle" />&nbsp;FAQ</a></b>&nbsp;  
             </td>              </td>
 END  END
     }      }
     if ($env{'user.adv'}) {      if ($env{'user.adv'}) {
         $r->print(<<END);          $r->print(<<END);
             <td align="center">&nbsp;<b><a href="$bugurl" target="bodyframe"><img src="$location/lonMisc/smallBug.gif" border="0" alt="(Report a bug)" valign="middle" />&nbsp;Report a bug</a>&nbsp;</b></td>              <td><span class="LC_nobreak"&nbsp;<b><a href="$bugurl" target="bodyframe"><img src="$location/lonMisc/smallBug.gif" border="0" alt="(Report a bug)" valign="middle" />&nbsp;Report a bug</a>&nbsp;</b></span></td>
 END  END
     }      }
     if ($stayOnPage) {      if ($stayOnPage) {
         $r->print(<<END);          $r->print(<<END);
             <td align="center">&nbsp;<b><a href="$origurl" target="_top"><img src="$location/lonIcons/move_up.gif" border="0" alt="(Return to last location)" valign="middle" />&nbsp;Return to last location</a></b>&nbsp;</td>              <td><span class="LC_nobreak">&nbsp;<a href="$origurl" target="_top"><img src="$location/lonIcons/move_up.gif" border="0" alt="(Return to last location)" valign="middle" />&nbsp;Return to last location</a>&nbsp;</span></td>
 END  END
     } else {      } else {
         $r->print(<<END);          $r->print(<<END);
             <td align="center">&nbsp;<b><a href="javascript:window.close()" target="_top"><img src="$location/lonIcons/closepage.gif" border="0" alt="(Close window)" valign="bottom" />&nbsp;Close</a></b>&nbsp;</td>              <td><span class="LC_nobreak"&nbsp;<a href="javascript:window.close()" target="_top"><img src="$location/lonIcons/closepage.gif" border="0" alt="(Close window)" valign="bottom" />&nbsp;Close</a>&nbsp;</span></td>
 END  END
     }      }
     $r->print(<<END);      $r->print(<<END);
            </tr>  
           </table>  
          </td>  
         </tr>  
        </table>  
       </td>  
      </tr>  
     </table>  
    </td>  
   </tr>    </tr>
  </table>   </table>
 </fieldset>  </fieldset>
   </td>    </td>
   <td width='5'>&nbsp;</td>    <td width='100%'>&nbsp;</td>
  </tr>   </tr>
  <tr height='5'>   <tr height='5'>
   <td colspan='3' height='5'>&nbsp;</td>    <td colspan='3' height='5'>&nbsp;</td>
Line 222  END Line 199  END
 }  }
   
 sub display_help_mainpage {  sub display_help_mainpage {
     my ($r,$color,$function,$faq,$bug,$topic,$component_url,$origurl,$bugurl,$faqbaseurl,$requestmail) = @_;      my ($r,$faq,$bug,$topic,$component_url,$origurl,$bugurl,$faqbaseurl,$requestmail) = @_;
   
     my %lt =&Apache::lonlocal::texthash(      my %lt =&Apache::lonlocal::texthash(
         'topp' => 'Topic Page',          'topp' => 'Topic Page',
Line 232  sub display_help_mainpage { Line 209  sub display_help_mainpage {
         'disp' => 'Display the page in the inline help system that covers this topic.',          'disp' => 'Display the page in the inline help system that covers this topic.',
         'crac' => '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.',          'crac' => '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.',
         'inhs' => 'Topical help system for',          'inhs' => 'Topical help system for',
  'noto' => 'There is no specific topical help item for',  
         'coth' => 'Consult the inline help system for this topic.',  
         'cont' => 'Contact the LON-CAPA support team',          'cont' => 'Contact the LON-CAPA support team',
         'suhr' => 'Submit a help request to the team responsible for LON-CAPA support at this institution.',          'suhr' => 'Submit a help request to the team responsible for LON-CAPA support at this institution.',
         'stuq' => 'Questions about course content should not be directed to the support team, but instead should be sent to the course instructor',          'stuq' => 'Questions about course content should not be directed to the support team, but instead should be sent to the course instructor',
Line 244  sub display_help_mainpage { Line 219  sub display_help_mainpage {
         '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 %body_layout = 
    ('topmargin'    => "0",
    'marginheight' => "0");
     my $start_page =      my $start_page =
  &Apache::loncommon::start_page('Help Content',undef,   &Apache::loncommon::start_page('Help Content',undef,
        {'function'    => $function,         {'add_entries' => \%body_layout,
  'add_entries' => 'topmargin="0" marginheight="0"',  
  'only_body'   => 1,});   'only_body'   => 1,});
     $r->print($start_page);      $r->print($start_page);
     $r->print($lt{'chen'});      $r->print('<b>'.$lt{'chen'});
     if ($requestmail =~ m/^[^\@]+\@[^\@]+$/) {      if ($requestmail =~ m/^[^\@]+\@[^\@]+$/) {
         $r->print(', '.$lt{'orto'});          $r->print(', '.$lt{'orto'});
     } else {      } else {
         $r->print(".");          $r->print(".");
     }      }
       $r->print('</b>');
     if ($topic) {      if ($topic) {
         if ( ($component_url) || ($env{'user.adv'}) ) {          if ( ($component_url) || ($env{'user.adv'}) ) {
             if ($component_url) {              if ($component_url) {
Line 265  sub display_help_mainpage { Line 243  sub display_help_mainpage {
           </ul>            </ul>
           <p>$lt{'disp'}</p>            <p>$lt{'disp'}</p>
                 ");                  ");
             } elsif ($env{'user.adv'}) {  
                 $r->print("  
               <ul>  
                <li><td align=\"center\">&nbsp;<a href=\"/adm/help/nohelptopic.html\">$lt{'noto'} $topic</a></li></ul>  
                <p>$lt{'coth'}</p>");  
             }              }
         }          }
     }      }
     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)."\">$lt{'cont'}</a></li>
           </ul>            </ul>
           <p>$lt{'suhr'}");            <p>$lt{'suhr'}");
          unless ($env{'user.adv'}) {           unless ($env{'user.adv'}) {

Removed from v.1.22  
changed lines
  Added in v.1.34


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