Diff for /loncom/interface/lonhelpmenu.pm between versions 1.7 and 1.8

version 1.7, 2004/07/03 20:45:23 version 1.8, 2004/07/12 17:02:07
Line 33  use Apache::loncommon(); Line 33  use Apache::loncommon();
   
 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']);      &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},['page','color','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;
   
Line 47  sub handler { Line 47  sub handler {
     my $function = $ENV{'form.function'};      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 $component_url = $component_help;      my $component_url = $component_help;
     if ($component_url) {      if ($component_url) {
         $component_url = '/adm/help/'.$component_url.'.hlp';          $component_url = '/adm/help/'.$component_url.'.hlp';
Line 59  sub handler { Line 60  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);          &display_help_banner($r,$color,$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,$color,$function,$faq,$bug,$topic,$component_url,$origurl,$bugurl,$faqbaseurl,$requestmail);
     }      }
Line 67  sub handler { Line 68  sub handler {
 }  }
   
 sub display_help_banner {  sub display_help_banner {
     my ($r,$color,$function,$faq,$bug,$topic,$component_url,$origurl,$bugurl,$faqbaseurl,$requestmail) = @_;      my ($r,$color,$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);      my $bodytag = &Apache::loncommon::bodytag('',$function,'rightmargin="0" leftmargin="0" marginwidth="0" topmargin="1" marginheight="1"',1);
     $bodytag=~s/[\n\r]/ /g;      $bodytag=~s/[\n\r]/ /g;
     my $fontcolor = &Apache::loncommon::designparm($function.'.font');      my $fontcolor = &Apache::loncommon::designparm($function.'.font');
Line 76  sub display_help_banner { Line 77  sub display_help_banner {
     my $pagecolor = &Apache::loncommon::designparm($function.'.pgbg');      my $pagecolor = &Apache::loncommon::designparm($function.'.pgbg');
     my $tablecolor = &Apache::loncommon::designparm($function.'.tabbg');      my $tablecolor = &Apache::loncommon::designparm($function.'.tabbg');
   
       if (($tablecolor eq '') || ($tablecolor eq '#FFFFFF')) {
           $tablecolor = '#CCCCFF';
       }
   
     $r->print(<<END);      $r->print(<<END);
 <html>  <html>
 <head>  <head>
Line 88  sub display_help_banner { Line 93  sub display_help_banner {
  a:hover {text-decoration: underline; color: $vlinkcolor; }   a:hover {text-decoration: underline; color: $vlinkcolor; }
 -->  -->
 </style>  </style>
 <script type="text/javascript">  
 function noTopic () {   
     bodyframe.document.write("<html><head><title>Topic Page</title></head>")  
     bodyframe.document.write('$bodytag')  
     bodyframe.document.write("The LON-CAPA help system does not currently include a specific pop-up help item for this topic. You may wish to consult the LON-CAPA <a href='/adm/help/author.manual.pdf'>Authoring Manual</a> or the <a href='/adm/help/course.manual.pdf'>Course Coordinator Manual</a>.")  
     bodyframe.document.write("</body></html>")  
     body.document.close()  
 }  
 </script>  
 </head>  </head>
 $bodytag  $bodytag
  <table width="600" border="0" cellspacing="0" cellpadding="0" height="55">  END
       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);
   <tr height="50">    <tr height="50">
    <td width='5'>&nbsp;</td>     <td width='5'>&nbsp;</td>
    <td>     <td>
Line 120  END Line 122  END
         if ($component_url) {          if ($component_url) {
             $r->print("              $r->print("
             <td align=\"center\">&nbsp;<b><a href=\"$component_url\" target=\"bodyframe\">");              <td align=\"center\">&nbsp;<b><a href=\"$component_url\" target=\"bodyframe\">");
     $r->print('          } elsif ($ENV{'user.adv'}) {
    <image src="/adm/help/gif/smallHelp.gif" border="0" alt="(Topic help)" valign="middle" />&nbsp;Topic help</a></b>&nbsp;</td>');              $r->print('<td align="center">&nbsp;<b><a href="/adm/help/nohelptopic.html" target="bodyframe">');
         } elsif (0 && $ENV{'user.adv'}) {  
     #FIXME doing this in JS is problematic since JS can't control frames that go to outside sites  
             $r->print('<td align="center">&nbsp;<b><a href="javascript:noTopic()" target="bodyframe">');  
         }          }
           $r->print('
     <image src="/adm/help/gif/smallHelp.gif" border="0" alt="(Topic help)" valign="middle" />&nbsp;Topic help</a></b>&nbsp;</td>');
     }      }
     if ($requestmail) {      if ($requestmail) {
         $r->print('          $r->print('
Line 143  END Line 144  END
             <td align="center">&nbsp;<b><a href="$bugurl" target="bodyframe"><image src="/adm/lonMisc/smallBug.gif" border="0" alt="(Report a bug)" valign="middle" />&nbsp;Report a bug</a>&nbsp;</b></td>              <td align="center">&nbsp;<b><a href="$bugurl" target="bodyframe"><image src="/adm/lonMisc/smallBug.gif" border="0" alt="(Report a bug)" valign="middle" />&nbsp;Report a bug</a>&nbsp;</b></td>
 END  END
     }      }
       if ($stayOnPage) {
           $r->print(<<END);
               <td align="center">&nbsp;<b><a href="$origurl" target="_top"><image src="/adm/lonIcons/move_up.gif" border="0" alt="(Return to last location)" valign="middle" />&nbsp;Return to last location</a></b>&nbsp;</td>
   END
       } else {
           $r->print(<<END);
               <td align="center">&nbsp;<b><a href="javascript:window.close()" target="_top"><image src="/adm/lonIcons/closepage.gif" border="0" alt="(Close window)" valign="bottom" />&nbsp;Close</a></b>&nbsp;</td>
   END
       }
     $r->print(<<END);      $r->print(<<END);
             <td align="center">&nbsp;<b><a href="javascript:window.close()" target="_top"><image src="/adm/lonIcons/move_up.gif" border="0" alt="(Close window)" valign="middle" />Close</a></b>&nbsp;</td>  
            </tr>             </tr>
           </table>            </table>
          </td>           </td>
Line 173  sub display_help_mainpage { Line 182  sub display_help_mainpage {
     my ($r,$color,$function,$faq,$bug,$topic,$component_url,$origurl,$bugurl,$faqbaseurl,$requestmail) = @_;      my ($r,$color,$function,$faq,$bug,$topic,$component_url,$origurl,$bugurl,$faqbaseurl,$requestmail) = @_;
     my $bodytag = &Apache::loncommon::bodytag('',$function,'topmargin="0" marginheight="0"',1);      my $bodytag = &Apache::loncommon::bodytag('',$function,'topmargin="0" marginheight="0"',1);
     $bodytag=~s/[\n\r]/ /g;      $bodytag=~s/[\n\r]/ /g;
       my %lt =&Apache::lonlocal::texthash(
           'heco' => 'Help Content',
           'topp' => 'Topic 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.',
           'vthp' => 'Visit the help page for ',
           '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.',
           'inhs' => 'Inline help system for',
           'coth' => 'Consult the inline help system for this topic.',
           'cont' => 'Contact the LON-CAPA support team',
           'suhr' => 'Submit a help request to the team responsible for LON-CAPA support at this institution.',
           'faqo' => 'FAQ-O-Matic Help system',
           'tfaq' => 'The FAQ-O-Matic is a compendium of answers provided to common questions asked by users of LON-CAPA over the past couple of years.',
           'lbug' => 'LON-CAPA Bugzilla bug/feature request tracking system',
           '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.'
       );
   
     $r->print(<<END);      $r->print(<<END);
 <html>  <html>
  <head>   <head>
   <title>Help Content</title>    <title>$lt{'heco'}</title>
   <script type="text/javascript">  
 function noTopic() {  
     bodyframe.document.write('<html><head><title>Topic Page</title></head>$bodytag')  
     bodyframe.document.write("The LON-CAPA help system does not currently include a specific pop-up help item for this topic. You may wish to consult the LON-CAPA <a href='/adm/help/author.manual.pdf'>Authoring Manual</a> or the <a href='/adm/help/course.manual.pdf'>Course Coordinator Manual</a>.")  
     bodyframe.document.write("</body></html>")  
     body.document.close()  
 }  
   </script>  
  </head>   </head>
 $bodytag  $bodytag
 Choose an entry below to go directly to a relevant help page  
 END  END
       $r->print($lt{'chen'});
     if ($requestmail) {      if ($requestmail) {
         $r->print(", or to submit a help request to the LON-CAPA support staff at you institution.");          $r->print(', '.$lt{'orto'});
     } else {      } else {
         $r->print(".");          $r->print(".");
     }      }
Line 199  END Line 219  END
             if ($component_url) {              if ($component_url) {
                 $r->print("                  $r->print("
           <ul>            <ul>
            <li><a href=\"$component_url\">Visit the help page for $topic</a></li>             <li><a href=\"$component_url\">$lt{'vthp'} $topic</a></li>
           </ul>            </ul>
           <p>Display the page in the inline help system that covers this topic.</p>            <p>$lt{'disp'}</p>
                 ");                  ");
             } elsif ($ENV{'user.adv'}) {              } elsif ($ENV{'user.adv'}) {
                 $r->print("                  $r->print("
               <ul>                <ul>
                <li><td align=\"center\">&nbsp;<a href=\"javascript:noTopic()\">Inline help system for $topic</a></li></ul>                 <li><td align=\"center\">&nbsp;<a href=\"/adm/help/nohelptopic.html\">$lt{'inhs'} $topic</a></li></ul>
                <p>Consult the inline help system for this topic.</p>");                 <p>$lt{'coth'}</p>");
             }              }
         }          }
     }      }
     if ($requestmail) {      if ($requestmail) {
         $r->print("          $r->print("
           <ul>            <ul>
            <li><a href=\"/adm/support?origurl=$origurl&function=$function\" target=\"bodyframe\">Contact the LON-CAPA support team</a></li>             <li><a href=\"/adm/support?origurl=$origurl&function=$function\">$lt{'cont'}</a></li>
           </ul>            </ul>
           <p>Submit a help request to the team responsible for LON-CAPA support at this institution.</p>            <p>$lt{'suhr'}</p>
           <ul>            <ul>
         ");          ");
     }      }
Line 225  END Line 245  END
             $faq = '1';              $faq = '1';
         }          }
         $r->print("          $r->print("
            <li><a href=\"$faqbaseurl/fom/cache/$faq.html\">FAQ-O-Matic Help system</a></li>             <li><a href=\"$faqbaseurl/fom/cache/$faq.html\">$lt{'faqo'}</a></li>
           </ul>            </ul>
           <p>The FAQ-O-Matic is a compendium of answers provided to common questions asked by users of LON-CAPA over the past couple of years.</p>            <p>$lt{'tfaq'}</p>
         ");          ");
     }      }
     if ($bugurl && $ENV{'user.adv'}) {      if ($bugurl && $ENV{'user.adv'}) {
         $bugurl .= '?'.$bug;          $bugurl .= '?'.$bug;
         $r->print("          $r->print("
           <ul>            <ul>
            <li><a href=\"$bugurl\">LON-CAPA Bugzilla bug/feature request tracking             <li><a href=\"$bugurl\">$lt{'lbug'}</a></li>
 system</a></li>  
           </ul>            </ul>
           <p>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,            <p>$lt{'crea'} $lt{'suim'}</p>
 or if you have suggestions for improvements in LON-CAPA.  Suggested improvements may include additional functionality, improved usability, or changes to wording used in LON-CAPA pages, including the embedded help system.</p>  
         ");          ");
     }      }
     $r->print(<<END);      $r->print(<<END);

Removed from v.1.7  
changed lines
  Added in v.1.8


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