--- loncom/interface/lonsupportreq.pm 2009/06/05 12:49:50 1.53
+++ loncom/interface/lonsupportreq.pm 2010/12/02 13:12:11 1.55.6.2
@@ -1,5 +1,5 @@
#
-# $Id: lonsupportreq.pm,v 1.53 2009/06/05 12:49:50 bisitz Exp $
+# $Id: lonsupportreq.pm,v 1.55.6.2 2010/12/02 13:12:11 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -301,7 +301,7 @@ function initialize_codes() {
$udomform .= &Apache::loncommon::select_dom_form($codedom,'udom');
}
if ($unameform eq '') {
- $unameform= ''.$lt{'unme'}.' : ';
+ $unameform= ''.$lt{'unme'}.' : ';
}
$output .= $unameform.$udomform;
}
@@ -311,115 +311,119 @@ function initialize_codes() {
$output .= &Apache::lonhtmlcommon::row_title("$lt{'urlp'}",undef,$css[$i]).
$showserver.' &').'" />'.
- &Apache::lonhtmlcommon::row_closure().
- &Apache::lonhtmlcommon::row_title("$lt{'phon'}",undef,'LC_evenrow_value').
- ' '.
&Apache::lonhtmlcommon::row_closure();
- $num ++;
- $i = $num%2;
- $output .= &Apache::lonhtmlcommon::row_title("$lt{'crsd'}$details_title",undef,$css[$i]);
- if ($cnum) {
- if ($coursecodes{$cnum}) {
- foreach my $item (@codetitles) {
- $output .= ''.$item.' : '.$codes{$cnum}{$item}.'; ';
+ if (&Apache::loncommon::check_for_gci_dc()) {
+ $output .= &Apache::lonhtmlcommon::row_title("$lt{'phon'}",undef,
+ 'LC_evenrow_value').
+ ' '.
+ &Apache::lonhtmlcommon::row_closure();
+ $num ++;
+ $i = $num%2;
+ $output .= &Apache::lonhtmlcommon::row_title("$lt{'crsd'}$details_title",undef,$css[$i]);
+ if ($cnum) {
+ if ($coursecodes{$cnum}) {
+ foreach my $item (@codetitles) {
+ $output .= ''.$item.' : '.$codes{$cnum}{$item}.'; ';
+ }
+ $output .= ' &').'" />';
+ } else {
+ $output .= $lt{'enin'}.':
+ ';
}
- $output .= ' &').'" />';
} else {
- $output .= $lt{'enin'}.':
- ';
- }
- } else {
- if ($totcodes > 0) {
- my $numtitles = @codetitles;
- if ($numtitles == 0) {
- $output .= $lt{'enin'}.':
- ';
- } else {
- my $lasttitle = $numtitles;
- if ($numtitles > 4) {
- $lasttitle = 4;
- }
- $output .= '
'.$codetitles[0].' '."\n".
- ''."\n".
- ' '.$lt{'sele'}."\n";
- my @items = ();
- my @longitems = ();
- if ($idlist{$codetitles[0]} =~ /","/) {
- @items = split(/","/,$idlist{$codetitles[0]});
+ if ($totcodes > 0) {
+ my $numtitles = @codetitles;
+ if ($numtitles == 0) {
+ $output .= $lt{'enin'}.':
+ ';
} else {
- $items[0] = $idlist{$codetitles[0]};
- }
- if (defined($idlist_titles{$codetitles[0]})) {
- if ($idlist_titles{$codetitles[0]} =~ /","/) {
- @longitems = split(/","/,$idlist_titles{$codetitles[0]});
+ my $lasttitle = $numtitles;
+ if ($numtitles > 4) {
+ $lasttitle = 4;
+ }
+ $output .= ''.$codetitles[0].' '."\n".
+ ''."\n".
+ ' '.$lt{'sele'}."\n";
+ my @items = ();
+ my @longitems = ();
+ if ($idlist{$codetitles[0]} =~ /","/) {
+ @items = split(/","/,$idlist{$codetitles[0]});
} else {
- $longitems[0] = $idlist_titles{$codetitles[0]};
+ $items[0] = $idlist{$codetitles[0]};
}
- for (my $i=0; $i<@longitems; $i++) {
- if ($longitems[$i] eq '') {
- $longitems[$i] = $items[$i];
+ if (defined($idlist_titles{$codetitles[0]})) {
+ if ($idlist_titles{$codetitles[0]} =~ /","/) {
+ @longitems = split(/","/,$idlist_titles{$codetitles[0]});
+ } else {
+ $longitems[0] = $idlist_titles{$codetitles[0]};
+ }
+ for (my $i=0; $i<@longitems; $i++) {
+ if ($longitems[$i] eq '') {
+ $longitems[$i] = $items[$i];
+ }
}
+ } else {
+ @longitems = @items;
+ }
+ for (my $i=0; $i<@items; $i++) {
+ $output .= ' '.$longitems[$i].' '."\n";
+ }
+ $output .= ' ';
+ for (my $i=1; $i<$numtitles; $i++) {
+ $output .= ''.$codetitles[$i].' '."\n".
+ ''."\n".
+ '<-'.$lt{'pick'}.' '.$codetitles[$i-1].' '."\n".
+ ' '."\n".
+ ' '."\n";
+ }
+ $output .= '
';
+ if ($numtitles > 4) {
+ $output .= ' '.$codetitles[$numtitles].' '."\n".
+ ''."\n".
+ '<-'.$lt{'pick'}.' '.$codetitles[$numtitles-1].' '."\n".
+ ' '."\n";
}
- } else {
- @longitems = @items;
- }
- for (my $i=0; $i<@items; $i++) {
- $output .= ' '.$longitems[$i].' '."\n";
- }
- $output .= ' ';
- for (my $i=1; $i<$numtitles; $i++) {
- $output .= ''.$codetitles[$i].' '."\n".
- ''."\n".
- '<-'.$lt{'pick'}.' '.$codetitles[$i-1].' '."\n".
- ' '."\n".
- ' '."\n";
- }
- $output .= '
';
- if ($numtitles > 4) {
- $output .= ' '.$codetitles[$numtitles].' '."\n".
- ''."\n".
- '<-'.$lt{'pick'}.' '.$codetitles[$numtitles-1].' '."\n".
- ' '."\n";
}
+ } else {
+ $output .= $lt{'enin'}.':
+ ';
}
+ }
+ $output .= ' ';
+ if ($ctitle) {
+ $output .= ''.$lt{'titl'}.' : '.$ctitle.
+ ' &').'" />'."\n";
} else {
- $output .= $lt{'enin'}.':
- ';
+ $output .= $lt{'enct'}.':
+ '."\n";
}
- }
- if ($ctitle) {
- $output .= ''.$lt{'titl'}.' : '.$ctitle.
- ' &').'" />'."\n";
- } else {
- $output .= ' '.$lt{'enct'}.':
- '."\n";
- }
- $output .= &Apache::lonhtmlcommon::row_closure();
- $num ++;
- $i = $num%2;
- $output .= &Apache::lonhtmlcommon::row_title($lt{'secn'},undef,$css[$i]);
- if ($sectionlist) {
- $output .= "".
- " $lt{'sele'} \n";
- foreach my $id (sort(keys(%groupid))) {
- if ($id eq $groupid{$id} || $groupid{$id} eq '') {
- $output .= " &').
- " >$id \n";
- } else {
- $output .= " &').
- " >$id - ($lt{'lsec'}: $groupid{$id}) \n";
+ $output .= &Apache::lonhtmlcommon::row_closure();
+ $num ++;
+ $i = $num%2;
+ $output .= &Apache::lonhtmlcommon::row_title($lt{'secn'},undef,$css[$i]);
+ if ($sectionlist) {
+ $output .= "".
+ " $lt{'sele'} \n";
+ foreach my $id (sort(keys(%groupid))) {
+ if ($id eq $groupid{$id} || $groupid{$id} eq '') {
+ $output .= " &').
+ " >$id \n";
+ } else {
+ $output .= " &').
+ " >$id - ($lt{'lsec'}: $groupid{$id}) \n";
+ }
}
+ $output .= " ";
+ } else {
+ $output .= ' ';
}
- $output .= " ";
- } else {
- $output .= ' ';
+ $output .= &Apache::lonhtmlcommon::row_closure();
}
- $output .= &Apache::lonhtmlcommon::row_closure();
$num ++;
- $i = $num%2;
+ $i = $num%2;
$output .= &Apache::lonhtmlcommon::row_title($lt{'subj'},undef,'LC_oddrow_value').
' '."\n".
&Apache::lonhtmlcommon::row_closure().
@@ -475,22 +479,27 @@ sub print_request_receipt {
$defdom,$origmail);
my $from = $admin;
my $reporttime = &Apache::lonlocal::locallocaltime(time);
- my @formvars = ('username','email','uname','udom','sourceurl','phone','section','coursecode','title','subject','description','screenshot');
-
+ my @formvars = ('username','email','uname','udom','sourceurl');
+ if (&Apache::loncommon::check_for_gci_dc()) {
+ push(@formvars,('phone','section','coursecode','title'));
+ }
+ push(@formvars,('subject','description','screenshot'));
&Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},\@formvars);
my $coursecode = $env{'form.coursecode'};
- if ($coursecode eq '') {
- if (defined($env{'form.Year'})) {
- $coursecode .= $env{'form.Year'};
- }
- if (defined($env{'form.Semester'})) {
- $coursecode .= $env{'form.Semester'};
- }
- if (defined($env{'form.Department'})) {
- $coursecode .= $env{'form.Department'};
- }
- if (defined($env{'form.Number'})) {
- $coursecode .= $env{'form.Number'};
+ if (&Apache::loncommon::check_for_gci_dc()) {
+ if ($coursecode eq '') {
+ if (defined($env{'form.Year'})) {
+ $coursecode .= $env{'form.Year'};
+ }
+ if (defined($env{'form.Semester'})) {
+ $coursecode .= $env{'form.Semester'};
+ }
+ if (defined($env{'form.Department'})) {
+ $coursecode .= $env{'form.Department'};
+ }
+ if (defined($env{'form.Number'})) {
+ $coursecode .= $env{'form.Number'};
+ }
}
}
my %lt = &Apache::lonlocal::texthash (
@@ -547,14 +556,22 @@ sub print_request_receipt {
}
}
$env{'form.user'} = "'".$env{'form.uname'}.':'.$env{'form.udom'}."'";
- $env{'form.csri'} = $env{'form.title'}.' - '.$coursecode.' - '.$lt{'sect'}.': '.$env{'form.section'};
+ if (&Apache::loncommon::check_for_gci_dc()) {
+ $env{'form.csri'} = $env{'form.title'}.' - '.$coursecode.' - '.$lt{'sect'}.': '.$env{'form.section'};
+ }
my $supportmsg = < |g;
+ $descrip = &cleanup_html($descrip);
+ $descrip =~ s|[\n\r\f]| |g;
$displaymsg .=
''.
"$lt{$item} : $descrip \n";
} elsif ($item eq 'sourceurl') {
my $showurl = $env{'form.sourceurl'};
$showurl =~ s/\?.*$//;
+ $showurl = &cleanup_html($showurl);
$displaymsg .=
''.
"$lt{$item} : $showurl \n";
@@ -581,9 +605,11 @@ END
''.
"$lt{$item} : $okcclist \n";
} else {
+ my $showitem = $env{'form.'.$item};
+ $showitem = &cleanup_html($showitem);
$displaymsg .=
''.
- "$lt{$item} : $env{'form.'.$item} \n";
+ "$lt{$item}: $showitem \n";
}
}
}
@@ -746,7 +772,8 @@ END
unlink($attachmentpath);
}
$r->print(''.$lt{'your'}.' : '."\n");
- $r->print(&Apache::lonhtmlcommon::start_pick_box('LC_helpform_receipt').
+ $r->print(''.
+ &Apache::lonhtmlcommon::start_pick_box().
&Apache::lonhtmlcommon::row_title($lt{'info'},undef,'LC_oddrow_value')."\n".$displaymsg."\n".
&Apache::lonhtmlcommon::row_closure().
&Apache::lonhtmlcommon::row_title($lt{'adin'},undef,'LC_evenrow_value'));
@@ -772,7 +799,8 @@ END
$envmsg =~ s/, $//;
$r->print($envmsg."\n".
&Apache::lonhtmlcommon::row_closure(1)."\n".
- &Apache::lonhtmlcommon::end_pick_box()."\n".
+ &Apache::lonhtmlcommon::end_pick_box().
+ "
\n".
&Apache::loncommon::end_page());
}
@@ -798,6 +826,9 @@ sub print_header {
} else {
$reviewtext = &mt('Please review the information in "Log-in help" if you are unable to log-in.');
}
+ if ($origurl eq '') {
+ $origurl = 'javascript:history.go(-1)';
+ }
$r->print(<
@@ -846,9 +877,27 @@ sub get_domain {
} elsif ($env{'request.role.domain'}) {
$codedom = $env{'request.role.domain'};
} else {
- $codedom = $Apache::lonnet::perlvar{'lonDefDomain'};
+ $codedom = &Apache::lonnet::default_login_domain();
}
return $codedom;
}
+sub cleanup_html {
+ my ($incoming) = @_;
+ my $outgoing;
+ if ($incoming ne '') {
+ $outgoing = $incoming;
+ $outgoing =~ s/\#/#/g;
+ $outgoing =~ s/\&/&/g;
+ $outgoing =~ s/</g;
+ $outgoing =~ s/>/>/g;
+ $outgoing =~ s/\(/(/g;
+ $outgoing =~ s/\)/)/g;
+ $outgoing =~ s/"/"/g;
+ $outgoing =~ s/'/'/g;
+ $outgoing =~ s/\$/$/g;
+ }
+ return $outgoing;
+}
+
1;