Diff for /loncom/interface/lonsupportreq.pm between versions 1.69 and 1.70

version 1.69, 2012/08/27 06:28:06 version 1.70, 2013/01/04 16:57:38
Line 39  use Apache::lonacc(); Line 39  use Apache::lonacc();
 use Apache::lonauth();  use Apache::lonauth();
 use Apache::courseclassifier;  use Apache::courseclassifier;
 use LONCAPA qw(:DEFAULT :match);  use LONCAPA qw(:DEFAULT :match);
    use HTML::Entities;
   
 sub handler {  sub handler {
     my ($r) = @_;      my ($r) = @_;
Line 57  sub handler { Line 57  sub handler {
     if ($r->uri eq '/adm/helpdesk') {      if ($r->uri eq '/adm/helpdesk') {
         &Apache::lonacc::get_posted_cgi($r);          &Apache::lonacc::get_posted_cgi($r);
     }      }
     my $function = $env{'form.function'};      my $function;
       if ($env{'form.function'}) {
           if (($env{'form.function'} eq 'norole')  ||
               ($env{'form.function'} eq 'student') ||
               ($env{'form.function'} eq 'admin')   ||
               ($env{'form.function'} eq 'author')) {
               $function = $env{'form.function'};
           }
       }
     my $origurl = $env{'form.origurl'};      my $origurl = $env{'form.origurl'};
       $origurl =~ s{^https?://}{};
       $origurl =~ s/(`)//g;
       $origurl =~ s/\$/\(\$\)/g;
     my $command = $env{'form.command'};      my $command = $env{'form.command'};
   
     if ($command eq 'process') {      if ($command eq 'process') {
Line 102  sub print_request_form { Line 113  sub print_request_form {
     }      }
     $formname = 'logproblem';      $formname = 'logproblem';
     my $machine = &Apache::lonnet::absolute_url();      my $machine = &Apache::lonnet::absolute_url();
     if ($origurl =~ m-^https?://-) {      my $sourceurl = $machine.$origurl;
         $server = $origurl;      $server = $machine.&cleanup_html($origurl);
     } else {      $server =~ s/\?.*$//;
         $server = $machine.$origurl;  
     }  
     my $showserver = $server;  
     $showserver =~ s/\?.*$//;  
     my %lt = &Apache::lonlocal::texthash (      my %lt = &Apache::lonlocal::texthash (
                   email => 'The e-mail address you entered',                    email => 'The e-mail address you entered',
                   notv => 'is not a valid e-mail address',                    notv => 'is not a valid e-mail address',
Line 358  ENDJS Line 365  ENDJS
     $num ++;      $num ++;
     $i = $num%2;      $i = $num%2;
     $output .= &Apache::lonhtmlcommon::row_title("$lt{'urlp'}",undef,$css[$i]).      $output .= &Apache::lonhtmlcommon::row_title("$lt{'urlp'}",undef,$css[$i]).
                $showserver."\n".'<input type="hidden" name="sourceurl" value="'.                 $server."\n".'<input type="hidden" name="sourceurl" value="'.
                &HTML::Entities::encode($server,'"<>&').'" />'."\n".                 &HTML::Entities::encode($sourceurl,'"<>&').'" />'."\n".
                &Apache::lonhtmlcommon::row_closure().                 &Apache::lonhtmlcommon::row_closure().
                &Apache::lonhtmlcommon::row_title("$lt{'phon'}",undef,'LC_evenrow_value').                 &Apache::lonhtmlcommon::row_title("$lt{'phon'}",undef,'LC_evenrow_value').
                '<input type="text" size="15" name="phone" /><br />'."\n".                 '<input type="text" size="15" name="phone" /><br />'."\n".
Line 951  sub print_header { Line 958  sub print_header {
     } else {      } else {
         $reviewtext = &mt('Please review the information in "Log-in help" if you are unable to log-in.');          $reviewtext = &mt('Please review the information in "Log-in help" if you are unable to log-in.');
     }      }
       my $linkback;
     if ($origurl eq '') {      if ($origurl eq '') {
         $origurl = 'javascript:history.go(-1)';          $linkback = 'javascript:history.go(-1)';
       } else {
           $linkback = &HTML::Entities::encode($origurl,'"<>&');
     }      }
     my $loginhelp = &Apache::lonauth::loginhelpdisplay();      my $loginhelp = &Apache::lonauth::loginhelpdisplay();
     if ($loginhelp eq '') {      if ($loginhelp eq '') {
Line 972  sub print_header { Line 982  sub print_header {
    <tr>     <tr>
     <td align="center"><span class="LC_nobreak"><img src="$location/help/help.png" border="0" alt="($lt{'login'})" style="vertical-align:middle" />&nbsp;<b><a href="$loginhelp">$lt{'login'}</a></b>&nbsp;</span></td>      <td align="center"><span class="LC_nobreak"><img src="$location/help/help.png" border="0" alt="($lt{'login'})" style="vertical-align:middle" />&nbsp;<b><a href="$loginhelp">$lt{'login'}</a></b>&nbsp;</span></td>
     <td align="center"><span class="LC_nobreak">&nbsp;<b>$helpdesk_link<img src="$location/lonIcons/helpdesk.gif" border="0" alt="($lt{'ask'})" style="vertical-align:middle" />&nbsp;$lt{'ask'}</a></b>&nbsp;</span></td>$getstartlink      <td align="center"><span class="LC_nobreak">&nbsp;<b>$helpdesk_link<img src="$location/lonIcons/helpdesk.gif" border="0" alt="($lt{'ask'})" style="vertical-align:middle" />&nbsp;$lt{'ask'}</a></b>&nbsp;</span></td>$getstartlink
     <td align="center"><span class="LC_nobreak">&nbsp;<b><a href="$origurl" target="_top"><img src="$location/lonIcons/move_up.gif" border="0" alt="($lt{'back'})" style="vertical-align:middle" />&nbsp;$lt{'back'}</a></b>&nbsp;</span></td>      <td align="center"><span class="LC_nobreak">&nbsp;<b><a href="$linkback" target="_top"><img src="$location/lonIcons/move_up.gif" border="0" alt="($lt{'back'})" style="vertical-align:middle" />&nbsp;$lt{'back'}</a></b>&nbsp;</span></td>
    </tr>     </tr>
  </table>   </table>
 </fieldset>  </fieldset>
Line 1005  END Line 1015  END
 sub get_domain {  sub get_domain {
     my $codedom;      my $codedom;
     if (exists($env{'form.codedom'})) {      if (exists($env{'form.codedom'})) {
         $codedom = $env{'form.codedom'};          if (&Apache::lonnet::domain($env{'form.codedom'}) ne '') {
     } elsif ($env{'request.course.id'}) {              return $env{'form.codedom'};
           }
       }
       if ($env{'request.course.id'}) {
         $codedom = $env{'course.'.$env{'request.course.id'}.'.domain'};          $codedom = $env{'course.'.$env{'request.course.id'}.'.domain'};
     } elsif ($env{'request.role.domain'}) {      } elsif ($env{'request.role.domain'}) {
         $codedom = $env{'request.role.domain'};          $codedom = $env{'request.role.domain'};
Line 1021  sub cleanup_html { Line 1034  sub cleanup_html {
     my $outgoing;      my $outgoing;
     if ($incoming ne '') {      if ($incoming ne '') {
         $outgoing = $incoming;          $outgoing = $incoming;
           $outgoing =~ s/;/&#059;/g;
         $outgoing =~ s/\#/&#035;/g;          $outgoing =~ s/\#/&#035;/g;
         $outgoing =~ s/\&/&#038;/g;          $outgoing =~ s/\&/&#038;/g;
         $outgoing =~ s/</&#060;/g;          $outgoing =~ s/</&#060;/g;
Line 1030  sub cleanup_html { Line 1044  sub cleanup_html {
         $outgoing =~ s/"/&#034;/g;          $outgoing =~ s/"/&#034;/g;
         $outgoing =~ s/'/&#039;/g;          $outgoing =~ s/'/&#039;/g;
         $outgoing =~ s/\$/&#036;/g;          $outgoing =~ s/\$/&#036;/g;
           $outgoing =~ s{/}{&#047;}g;
           $outgoing =~ s/=/&#061;/g;
           $outgoing =~ s/\\/&#092;/g
     }      }
     return $outgoing;      return $outgoing;
 }  }

Removed from v.1.69  
changed lines
  Added in v.1.70


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