Diff for /loncom/interface/lonsupportreq.pm between versions 1.24 and 1.25

version 1.24, 2005/04/07 03:58:02 version 1.25, 2005/04/07 06:56:23
Line 47  sub handler { Line 47  sub handler {
     if ($r->uri eq '/adm/helpdesk') {      if ($r->uri eq '/adm/helpdesk') {
         &Apache::loncommon::get_posted_cgi($r);          &Apache::loncommon::get_posted_cgi($r);
     }      }
     my $function = $ENV{'form.function'};      my $function = $env{'form.function'};
     my $origurl = &Apache::lonnet::unescape($ENV{'form.origurl'});      my $origurl = &Apache::lonnet::unescape($env{'form.origurl'});
     my $action = $ENV{'form.action'};      my $action = $env{'form.action'};
   
     if ($action eq 'process') {      if ($action eq 'process') {
         &print_request_receipt($r,$origurl,$function);          &print_request_receipt($r,$origurl,$function);
Line 68  sub print_request_form { Line 68  sub print_request_form {
         $tablecolor = '#EEEE99';          $tablecolor = '#EEEE99';
     }      }
     $ccode = '';      $ccode = '';
     $os = $ENV{'browser.os'};      $os = $env{'browser.os'};
     $browser = $ENV{'browser.type'};      $browser = $env{'browser.type'};
     $bversion = $ENV{'browser.version'};      $bversion = $env{'browser.version'};
     $uhost = $ENV{'request.host'};      $uhost = $env{'request.host'};
     $uname = $ENV{'user.name'};      $uname = $env{'user.name'};
     $udom = $ENV{'user.domain'};      $udom = $env{'user.domain'};
     $uhome = $ENV{'user.home'};      $uhome = $env{'user.home'};
     $urole = $ENV{'request.role'};      $urole = $env{'request.role'};
     $usec = $ENV{'request.course.sec'};      $usec = $env{'request.course.sec'};
     $cid = $ENV{'request.course.id'};      $cid = $env{'request.course.id'};
     if ($origurl =~ m-^http://-) {      if ($origurl =~ m-^http://-) {
         $server = $origurl;          $server = $origurl;
     } else {      } else {
Line 113  function validmail(field) { Line 113  function validmail(field) {
     }      }
 }  }
 END  END
       #" stupid emacs
     if ($cid =~ m/_/) {      if ($cid =~ m/_/) {
         ($cdom,$cnum) = split/_/,$cid;          ($cdom,$cnum) = split/_/,$cid;
     }      }
Line 122  END Line 123  END
         $ccode = $csettings{'internal.coursecode'};          $ccode = $csettings{'internal.coursecode'};
         $sectionlist = $csettings{'internal.sectionnums'};          $sectionlist = $csettings{'internal.sectionnums'};
     }      }
     if ($ENV{'environment.critnotification'}) {      if ($env{'environment.critnotification'}) {
         $email = $ENV{'environment.critnotification'};          $email = $env{'environment.critnotification'};
     }      }
     if (!$email && $ENV{'environment.notification'}) {      if (!$email && $env{'environment.notification'}) {
         $email = $ENV{'environment.notification'};          $email = $env{'environment.notification'};
     }      }
     if ($ENV{'environment.lastname'}) {      if ($env{'environment.lastname'}) {
         $lastname = $ENV{'environment.lastname'};          $lastname = $env{'environment.lastname'};
     }      }
     if ($ENV{'environment.firstname'}) {      if ($env{'environment.firstname'}) {
         $firstname = $ENV{'environment.firstname'};          $firstname = $env{'environment.firstname'};
     }      }
     my @sections = split/,/,$sectionlist;      my @sections = split/,/,$sectionlist;
     my %groupid = ();      my %groupid = ();
Line 142  END Line 143  END
     }      }
     my $codedom = $Apache::lonnet::perlvar{'lonDefDomain'};      my $codedom = $Apache::lonnet::perlvar{'lonDefDomain'};
     &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},['codedom']);      &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},['codedom']);
     if (exists($ENV{'form.codedom'})) {      if (exists($env{'form.codedom'})) {
         $codedom = $ENV{'form.codedom'};          $codedom = $env{'form.codedom'};
     }      }
     my $details_title;      my $details_title;
     if ($codedom) {      if ($codedom) {
Line 564  END Line 565  END
     </td>      </td>
    </tr>     </tr>
 END  END
     if (defined($ENV{'user.name'})) {      if (defined($env{'user.name'})) {
         $r->print(<<END);          $r->print(<<END);
            <tr>             <tr>
             <td width="140" bgcolor="$tablecolor">              <td width="140" bgcolor="$tablecolor">
Line 650  sub print_request_receipt { Line 651  sub print_request_receipt {
     my @formvars = ('username','email','uname','udom','sourceurl','phone','section','coursecode','title','subject','description','screenshot');      my @formvars = ('username','email','uname','udom','sourceurl','phone','section','coursecode','title','subject','description','screenshot');
   
     &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},\@formvars);      &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},\@formvars);
     my $coursecode = $ENV{'form.coursecode'};      my $coursecode = $env{'form.coursecode'};
     if ($coursecode eq '') {      if ($coursecode eq '') {
         if (defined($ENV{'form.Year'})) {          if (defined($env{'form.Year'})) {
             $coursecode .= $ENV{'form.Year'};              $coursecode .= $env{'form.Year'};
         }          }
         if (defined($ENV{'form.Semester'})) {          if (defined($env{'form.Semester'})) {
             $coursecode .= $ENV{'form.Semester'};              $coursecode .= $env{'form.Semester'};
         }          }
         if (defined($ENV{'form.Department'})) {          if (defined($env{'form.Department'})) {
             $coursecode .= $ENV{'form.Department'};              $coursecode .= $env{'form.Department'};
         }          }
         if (defined($ENV{'form.Number'})) {          if (defined($env{'form.Number'})) {
             $coursecode .= $ENV{'form.Number'};              $coursecode .= $env{'form.Number'};
         }          }
     }      }
     my $supportmsg = qq|      my $supportmsg = qq|
 Name: $ENV{'form.username'}  Name: $env{'form.username'}
 Email: $ENV{'form.email'}  Email: $env{'form.email'}
 Username/domain: $ENV{'form.uname'} - $ENV{'form.udom'}  Username/domain: $env{'form.uname'} - $env{'form.udom'}
 Tel: $ENV{'form.phone'}  Tel: $env{'form.phone'}
 Course Information: $ENV{'form.title'} - $coursecode - section: $ENV{'form.section'}  Course Information: $env{'form.title'} - $coursecode - section: $env{'form.section'}
 Subject: $ENV{'form.subject'}  Subject: $env{'form.subject'}
 Description: $ENV{'form.description'}  Description: $env{'form.description'}
 URL: $ENV{'form.sourceurl'}  URL: $env{'form.sourceurl'}
 Date/Time: $reporttime  Date/Time: $reporttime
   
     |;      |;
     my $descrip = $ENV{'form.description'};      my $descrip = $env{'form.description'};
     $descrip =~ s#\n#<br />#g;      $descrip =~ s#\n#<br />#g;
     my $displaymsg = qq|      my $displaymsg = qq|
 <font color="$fontcolor">Name:</font><font color="$vlinkcolor"> $ENV{'form.username'}</font><br />  <font color="$fontcolor">Name:</font><font color="$vlinkcolor"> $env{'form.username'}</font><br />
 <font color="$fontcolor">Email: </font><font color="$vlinkcolor">$ENV{'form.email'}</font><br />  <font color="$fontcolor">Email: </font><font color="$vlinkcolor">$env{'form.email'}</font><br />
 <font color="$fontcolor">Username/domain: </font><font color="$vlinkcolor">$ENV{'form.uname'} - $ENV{'form.udom'}</font><br />  <font color="$fontcolor">Username/domain: </font><font color="$vlinkcolor">$env{'form.uname'} - $env{'form.udom'}</font><br />
 <font color="$fontcolor">Tel: </font><font color="$vlinkcolor">$ENV{'form.phone'}</font><br />  <font color="$fontcolor">Tel: </font><font color="$vlinkcolor">$env{'form.phone'}</font><br />
 <font color="$fontcolor">Course Information: </font><font color="$vlinkcolor">$ENV{'form.title'} - $coursecode - section: $ENV{'form.section'}</font><br />  <font color="$fontcolor">Course Information: </font><font color="$vlinkcolor">$env{'form.title'} - $coursecode - section: $env{'form.section'}</font><br />
 <font color="$fontcolor">Subject: </font><font color="$vlinkcolor">$ENV{'form.subject'}</font><br />  <font color="$fontcolor">Subject: </font><font color="$vlinkcolor">$env{'form.subject'}</font><br />
 <font color="$fontcolor">Description: </font><font color="$vlinkcolor">$descrip</font><br />  <font color="$fontcolor">Description: </font><font color="$vlinkcolor">$descrip</font><br />
 <font color="$fontcolor">URL: </font><font color="$vlinkcolor">$ENV{'form.sourceurl'}</font><br />  <font color="$fontcolor">URL: </font><font color="$vlinkcolor">$env{'form.sourceurl'}</font><br />
 <font color="$fontcolor">Date/Time: </font><font color="$vlinkcolor">$reporttime</font><br />  <font color="$fontcolor">Date/Time: </font><font color="$vlinkcolor">$reporttime</font><br />
     |;      |;
     my $html=&Apache::lonxml::xmlbegin();      my $html=&Apache::lonxml::xmlbegin();
Line 719  END Line 720  END
             $to = 'helpdesk@lon-capa.org';              $to = 'helpdesk@lon-capa.org';
         }          }
     }      }
     if (defined($ENV{'form.email'})) {      if (defined($env{'form.email'})) {
         if ($ENV{'form.email'} =~ m/^[^\@]+\@[^\@]+$/) {          if ($env{'form.email'} =~ m/^[^\@]+\@[^\@]+$/) {
             $from = $ENV{'form.email'};              $from = $env{'form.email'};
         }          }
     }      }
   
     my $subject = $ENV{'form.subject'};      my $subject = $env{'form.subject'};
     $subject =~ s#(`)#'#g;      $subject =~ s#(`)#'#g;
     $subject =~ s#\$#\(\$\)#g;      $subject =~ s#\$#\(\$\)#g;
     $supportmsg =~ s#(`)#'#g;      $supportmsg =~ s#(`)#'#g;
Line 736  END Line 737  END
   
     my $attachmentpath = '';      my $attachmentpath = '';
     my $attachmentsize = '';      my $attachmentsize = '';
     if (defined($ENV{'user.name'})) {      if (defined($env{'user.name'})) {
         if ($ENV{'form.screenshot.filename'}) {          if ($env{'form.screenshot.filename'}) {
             $attachmentsize = length($ENV{'form.screenshot'});              $attachmentsize = length($env{'form.screenshot'});
             if ($attachmentsize > 131072) {              if ($attachmentsize > 131072) {
                 $displaymsg .= "<br />The uploaded screenshot file ($attachmentsize bytes) included with your request exceeded the maximum allowed size - 128 KB, and has therefore been discarded.";                  $displaymsg .= "<br />The uploaded screenshot file ($attachmentsize bytes) included with your request exceeded the maximum allowed size - 128 KB, and has therefore been discarded.";
             } else {              } else {
Line 749  END Line 750  END
   
     if ($attachmentpath =~ m-/([^/]+)$-) {      if ($attachmentpath =~ m-/([^/]+)$-) {
         $fname = $1;          $fname = $1;
         $displaymsg .= "<br />An uploaded screenshot file - $fname ($attachmentsize bytes) was included in the request sent by $ENV{'user.name'} from LON-CAPA domain: $ENV{'user.domain'}";          $displaymsg .= "<br />An uploaded screenshot file - $fname ($attachmentsize bytes) was included in the request sent by $env{'user.name'} from LON-CAPA domain: $env{'user.domain'}";
         $supportmsg .= "\n";          $supportmsg .= "\n";
         foreach (@envvars) {          foreach (@envvars) {
             $supportmsg .= "$_: $ENV{$_}\n";              $supportmsg .= "$_: $env{$_}\n";
         }          }
     }      }
     
Line 774  END Line 775  END
     } else {      } else {
         my $envdata = '';          my $envdata = '';
         foreach (@envvars) {          foreach (@envvars) {
             $envdata .= "$_: $ENV{$_}\n";              $envdata .= "$_: $env{$_}\n";
         }          }
         foreach (@loncvars) {          foreach (@loncvars) {
             $envdata .= "$_: $ENV{$_}\n";              $envdata .= "$_: $env{$_}\n";
         }          }
         $msg->attach(Type => 'TEXT',          $msg->attach(Type => 'TEXT',
                      Data => $envdata);                       Data => $envdata);
     }      }
   
 ### Send it:  ### Send it:
     # ->send can cause an sh launch which can pass all of %ENV along      # ->send can cause an sh launch which can pass all of %env along
     # which can be to large for /bin/sh's little mind      # which can be to large for /bin/sh's little mind
     my %oldENV=%ENV;  
     undef(%ENV);  
     $msg->send('sendmail');      $msg->send('sendmail');
     %ENV=%oldENV;  
     undef(%oldENV);  
   
     if ($attachmentpath =~ m#$Apache::lonnet::perlvar{'lonDaemons'}/tmp/helprequests/(\d+)/[^/]+#) {      if ($attachmentpath =~ m#$Apache::lonnet::perlvar{'lonDaemons'}/tmp/helprequests/(\d+)/[^/]+#) {
         unlink($attachmentpath);          unlink($attachmentpath);
Line 844  END Line 841  END
                <td>                 <td>
     |);      |);
     foreach (@envvars) {      foreach (@envvars) {
         unless($ENV{$_} eq '') {           unless($env{$_} eq '') { 
             $r->print("$_:&nbsp;<font color='$vlinkcolor'>$ENV{$_}</font>, ");              $r->print("$_:&nbsp;<font color='$vlinkcolor'>$env{$_}</font>, ");
         }          }
     }      }
     $r->print("      $r->print("

Removed from v.1.24  
changed lines
  Added in v.1.25


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