[system] / trunk / webwork / system / scripts / HTMLglue.pl Repository:
ViewVC logotype

View of /trunk/webwork/system/scripts/HTMLglue.pl

Parent Directory Parent Directory | Revision Log Revision Log


Revision 85 - (download) (as text) (annotate)
Tue Jul 3 16:43:47 2001 UTC (18 years, 7 months ago) by apizer
File size: 6043 byte(s)
initial setNumber to '' if not defined to prevent a pink screen

    1 #!/usr/local/bin/webwork-perl
    2 
    3 ## $Id$
    4 
    5 #strings for HTML display in webwork
    6 
    7 use lib '.'; use webworkInit; # WeBWorKInitLine
    8 use strict;
    9 
   10 use Global;
   11 
   12 sub htmlTOP {
   13     my ($title, $bg_url, @headers) = @_;
   14     my $background_url = $bg_url || $Global::background_plain_url;
   15 
   16     my $out = <<ENDhtmlTOP;
   17 content-type: text/html
   18 @headers
   19 
   20 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
   21 <HTML>
   22 <HEAD>
   23 <TITLE>$title</TITLE>
   24 </HEAD>
   25 <BODY BACKGROUND="$background_url"><p>
   26 <P>
   27 <P ALIGN="CENTER"><IMG SRC="$Global::headerImgUrl" BORDER=1 ALT="WeBWorK"></P>
   28 <P>
   29 ENDhtmlTOP
   30     $out;
   31 }
   32 
   33 sub sessionKeyInputs {
   34     my($inputsref) = @_;  # Argument is a pointer to the hash %inputs
   35     my $out = qq!
   36     <INPUT TYPE="HIDDEN" NAME="course" VALUE="$$inputsref{'course'}">
   37     <INPUT TYPE="HIDDEN" NAME="user"  VALUE="$$inputsref{'user'}">
   38     <INPUT TYPE="HIDDEN" NAME="key"   VALUE="$$inputsref{'key'}">
   39 !;
   40 
   41     $out;
   42 }
   43 
   44 sub htmlBOTTOM {
   45     my ($scriptName,$inputsref, $helpFile) = @_;
   46     my ($studentLogin, $studentID, $studentName, $studentEmail, $setNumber, $sectionName,$recitationName) = ('','','','','','','');
   47 
   48     my ($psvn,$probNum);
   49     $psvn   =  ( defined($$inputsref{'probSetKey'}) ) ? $$inputsref{'probSetKey'}: "";
   50     $probNum = ( defined($$inputsref{'probNum'}   ) ) ? $$inputsref{'probNum'}   : "";
   51     my $mode = $$inputsref{'Mode'};
   52     $mode = $Global::htmlModeDefault unless $mode;
   53     if ($psvn) {
   54       attachProbSetRecord($psvn);
   55       $studentLogin = getStudentLogin($psvn);
   56       attachCLRecord($studentLogin);
   57 
   58       $studentID      = CL_getStudentID($studentLogin);
   59       $studentEmail   = CL_getStudentEmailAddress($studentLogin);
   60       $studentName    = CL_getStudentName($studentLogin);
   61       $setNumber  = getSetNumber($psvn);
   62       $setNumber  = '' unless defined($setNumber);
   63       $sectionName =  CL_getClassSection($studentLogin);
   64       $sectionName = '' unless defined($sectionName);
   65       $recitationName =  CL_getClassRecitation($studentLogin);
   66       $recitationName = '' unless defined($recitationName);
   67     }
   68 
   69 
   70     #This put in to work with the old stuff (before EmailAddress was added to DB)
   71 #  unless (defined($studentEmail)) {
   72 # $studentEmail = $$inputsref{'user'} . '@uhura.cc.rochester.edu';
   73 #}
   74 
   75     my $out = '<HR><TABLE><TR>';
   76 
   77     $out .= '<TD valign="top">' . qq{
   78     <FORM ACTION="$Global::logout_CGI" METHOD="POST">
   79     <INPUT TYPE="image" SRC="$Global::logoutGifUrl"  ALT="[Logout]" Value="Logout">
   80         <INPUT TYPE="HIDDEN" NAME="user"   VALUE="$$inputsref{user}">
   81         <INPUT TYPE="HIDDEN" NAME="key"    VALUE="$$inputsref{key}">
   82         <INPUT TYPE="HIDDEN" NAME="course" VALUE="$$inputsref{course}">
   83     </FORM>
   84     } . '</TD>' if $$inputsref{user} && $$inputsref{key} && $$inputsref{course};
   85 
   86     my $To = $Global::feedbackAddress;
   87     $To =~ s/\s//g;
   88     $out .= '<TD valign="top">' . qq{
   89       <FORM ACTION="${Global::cgiWebworkURL}feedback.pl?$To" METHOD="POST">
   90       <INPUT TYPE="image" SRC="$Global::feedbackGifUrl"  ALT="[Feedback]"  VALUE="Feedback">
   91       <INPUT TYPE="HIDDEN" NAME="probSetKey"    VALUE="$psvn">
   92       <INPUT TYPE="HIDDEN" NAME="section"    VALUE="$sectionName">
   93       <INPUT TYPE="HIDDEN" NAME="recitation"    VALUE="$recitationName">
   94       <INPUT TYPE="HIDDEN" NAME="probNum" VALUE="$probNum">
   95       <INPUT TYPE="HIDDEN" NAME="setnum"  VALUE="$setNumber">
   96       <INPUT TYPE="HIDDEN" NAME="id"       VALUE="$studentID">
   97       <INPUT TYPE="HIDDEN" NAME="name"    VALUE="$studentName">
   98       <INPUT TYPE="HIDDEN" NAME="email"   VALUE="$studentEmail">
   99       <INPUT TYPE="HIDDEN" NAME="Mode"   VALUE="$mode">
  100     };
  101 
  102     $out .= &sessionKeyInputs($inputsref) . "</FORM> </TD>\n";
  103 
  104     $out .= qq{
  105     <TD valign="top">
  106     <A HREF = "${Global::helpURL}$helpFile" TARGET = 'help_page'><IMG SRC="$Global::helpGifUrl"  ALT="[Help]"></A>
  107     </TD>
  108     } if (defined $helpFile);
  109 
  110     $out .= qq{
  111         <TD valign ="top">
  112       <FORM METHOD=POST ACTION=\"${Global::cgiWebworkURL}welcome.pl\"><P>
  113             <INPUT TYPE="HIDDEN" NAME="user"   VALUE="$$inputsref{user}">
  114             <INPUT TYPE="HIDDEN" NAME="key"    VALUE="$$inputsref{key}">
  115             <INPUT TYPE="HIDDEN" NAME="course" VALUE="$$inputsref{course}">
  116 
  117               <INPUT TYPE=SUBMIT VALUE="Problem Sets">
  118              </FORM>
  119              </TD>
  120     } unless($0 =~ /welcome.pl/) ;  # don't put this on the probSet.pl page
  121 #             <INPUT TYPE=HIDDEN NAME="probSetKey" VALUE="$$inputsref{probSetKey}">
  122 #  removed the above line from 7 lines up. It's not needed and is sometimes undefined
  123 #  giving a warning message.
  124 
  125   # put link to Professor's page if user is a professor
  126 
  127   my $User = $$inputsref{user} if defined $$inputsref{user};
  128   my $Course = $$inputsref{course} if defined $$inputsref{course};
  129   my $permissions = 0;
  130   if (defined $User and defined $Course) {
  131     my $permissionsFile = &Global::getCoursePermissionsFile($Course);
  132     $permissions = &get_permissions($User, $permissionsFile);
  133   }
  134 
  135   if ($permissions == $Global::instructor_permissions) {
  136 
  137       $out .= qq{
  138         <TD valign ="top">
  139       <FORM METHOD=POST ACTION=\"${Global::cgiWebworkURL}profLogin.pl\"><P>
  140             <INPUT TYPE="HIDDEN" NAME="user"   VALUE="$$inputsref{user}">
  141             <INPUT TYPE="HIDDEN" NAME="key"    VALUE="$$inputsref{key}">
  142             <INPUT TYPE="HIDDEN" NAME="course" VALUE="$$inputsref{course}">
  143               <INPUT TYPE=SUBMIT VALUE="Enter Professor's Page">
  144              </FORM>
  145              </TD>
  146       };
  147   };
  148     $out .= '</TR></TABLE>';
  149 
  150     $out .= qq!<TT>Problem Set Version Number: $$inputsref{'probSetKey'}</TT>\n!
  151     if $$inputsref{'probSetKey'};
  152 
  153     $out .= qq{
  154     <BR><TT> Page produced by script: $scriptName</TT>
  155 
  156 
  157     } if $scriptName;
  158     $out .= qq{<H4> Compiler warnings:</H4>$Global::WARNINGS} if $Global::WARNINGS;
  159     $out .= '</body></html>';
  160 }
  161 
  162 sub html_NO_PERMISSION {
  163     my $out = &htmlTOP;
  164     $out .=qq~
  165     <H1> NO PERMISSION </H1>
  166         Sorry, you do not have permission to use this script!
  167     ~;
  168     $out .= &htmlBOTTOM;
  169     $out;
  170     }
  171 1;

aubreyja at gmail dot com
ViewVC Help
Powered by ViewVC 1.0.9