'.
+ &Apache::loncommon::end_page());
+ return;
+ }
+ }
+ my $ip = &Apache::lonnet::get_requestor_ip($r);
+ my %setters;
+ my ($startblock,$endblock,$triggerblock,$by_ip,$blockdom) =
+ &Apache::loncommon::blockcheck(\%setters,'com',$ip);
+ my @ENVvars = ('HTTP_HOST','HTTP_USER_AGENT','SERVER_ADDR','SERVER_NAME');
my @envvars = ('browser.os','browser.type','browser.version','user.home','request.role');
my @loncvars = ('user.name','user.domain','request.course.sec','request.course.id');
- my @cookievars = ('lonID');
+ my @cookievars;
+ if ($ENV{'SERVER_PORT'} == 443) {
+ @cookievars = ('lonLinkID');
+ } else {
+ @cookievars = ('lonID');
+ }
my $admin = $Apache::lonnet::perlvar{'lonAdminMail'};
- my $to = $Apache::lonnet::perlvar{'lonSupportEMail'};
+ my $origmail = $Apache::lonnet::perlvar{'lonSupportEMail'};
+ my $defdom = &get_domain();
my $from = $admin;
+ my %helpform;
+ my %domconfig =
+ &Apache::lonnet::get_dom('configuration',['contacts'],$defdom);
+ if (ref($domconfig{'contacts'}) eq 'HASH') {
+ if (ref($domconfig{'contacts'}{'helpform'}) eq 'HASH') {
+ %helpform = %{$domconfig{'contacts'}{'helpform'}};
+ }
+ }
my $reporttime = &Apache::lonlocal::locallocaltime(time);
- my $fontcolor = &Apache::loncommon::designparm($function.'.font');
- my $vlinkcolor = &Apache::loncommon::designparm($function.'.vlink');
- my $tablecolor = &Apache::loncommon::designparm($function.'.tabbg');
- my @formvars = ('username','email','uname','udom','sourceurl','phone','section','coursecode','title','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'};
- }
- }
- my $supportmsg = qq|
-Name: $env{'form.username'}
-Email: $env{'form.email'}
-Username/domain: $env{'form.uname'} - $env{'form.udom'}
-Tel: $env{'form.phone'}
-Course Information: $env{'form.title'} - $coursecode - section: $env{'form.section'}
-Subject: $env{'form.subject'}
-Description: $env{'form.description'}
-URL: $env{'form.sourceurl'}
-Date/Time: $reporttime
-
- |;
- my $descrip = $env{'form.description'};
- $descrip =~ s#\n# #g;
- my $displaymsg = qq|
-Name: $env{'form.username'}
-Email: $env{'form.email'}
-Username/domain: $env{'form.uname'} - $env{'form.udom'}
-Tel: $env{'form.phone'}
-Course Information: $env{'form.title'} - $coursecode - section: $env{'form.section'}
-Subject: $env{'form.subject'}
-Description: $descrip
-URL: $env{'form.sourceurl'}
-Date/Time: $reporttime
- |;
-
- my $start_page =
- &Apache::loncommon::start_page('Support request recorded',undef,
- {'function' => $function,
- 'add_entries' => {
- topmargin => "0",
- marginheight => "0",
- },
- 'only_body' => 1,});
+ my %formvars = (
+ email => 1,
+ sourceurl => 1,
+ subject => 1,
+ description => 1,
+ );
+ unless ($helpform{'username'} eq 'no') {
+ $formvars{'username'} = 1;
+ }
+ unless ($helpform{'user'} eq 'no') {
+ $formvars{'uname'} = 1;
+ $formvars{'udom'} = 1;
+ }
+ unless ($helpform{'phone'} eq 'no') {
+ $formvars{'phone'} = 1;
+ }
+ unless (($helpform{'section'} eq 'no') || ($env{'request.lti.login'})) {
+ $formvars{'section'} = 1;
+ }
+ unless (($helpform{'course'} eq 'no') || ($env{'request.lti.login'})) {
+ $formvars{'course'} = 1;
+ }
+ unless (($helpform{'cc'} eq 'no') || ($by_ip)) {
+ $formvars{'cc'} = 1;
+ }
+ unless ($helpform{'screenshot'} eq 'no') {
+ $formvars{'screenshot'} = 1;
+ }
+ my ($coursecode,$sourceurl);
+ if ($formvars{'course'}) {
+ $coursecode = $env{'form.coursecode'};
+ if ($coursecode eq '') {
+ my $totcodes = 0;
+ my $instcats = &Apache::lonnet::get_dom_instcats($defdom);
+ if (ref($instcats) eq 'HASH') {
+ if (ref($instcats->{'codes'}) eq 'HASH') {
+ $totcodes = scalar(keys(%{$instcats->{'codes'}}));
+ }
+ }
+ my @standardnames = &Apache::loncommon::get_standard_codeitems();
+ if ($totcodes > 0) {
+ my $noregexps = 1;
+ $coursecode =
+ &Apache::courseclassifier::instcode_from_selectors($defdom,$noregexps);
+ }
+ if ($coursecode eq '') {
+ foreach my $item (@standardnames) {
+ if ((defined($env{'form.'.$item})) && ($env{'form.'.$item} ne '-1')) {
+ $coursecode .= $env{'form.'.$item};
+ }
+ }
+ }
+ }
+ }
+ my %lt = &Apache::lonlocal::texthash (
+ username => 'Name',
+ email => 'E-mail',
+ cc => 'Cc',
+ user => 'Username/domain',
+ phone => 'Phone',
+ crsi => 'Course Information',
+ subject => 'Subject',
+ description => 'Description',
+ sourceurl => 'URL',
+ date => 'Date/Time',
+ secn => 'Section',
+ warn => 'Warning: Problem with support e-mail address',
+ your => 'Your support request contained the following information',
+ belo => 'Below is your support request which could not be sent',
+ ifyk => 'If you know an IT support address for your institution, you could copy this information and send it to that email address.',
+ sect => 'section',
+ info => 'Information supplied',
+ adin => 'Additional information recorded',
+ );
+
+ my (@ok_ccs,@bad_ccs,$badccmsg,$okcclist,$homeserver);
+ unless ($public) {
+ if (($env{'user.name'} ne '') && ($env{'user.domain'} ne '')) {
+ $homeserver = &Apache::lonnet::homeserver($env{'user.name'},
+ $env{'user.domain'});
+ }
+ }
+ my ($cid,$cdom,$cnum,$sectionlist,$ccode);
+ if ($homeserver) {
+ $cid = $env{'request.course.id'};
+ }
+ if ($cid) {
+ $cdom = $env{'course.'.$cid.'.domain'};
+ $cnum = $env{'course.'.$cid.'.num'};
+ }
+ if ($cdom && $cnum) {
+ my %csettings = &Apache::lonnet::get('environment',['description','internal.coursecode','internal.sectionnums'],$cdom,$cnum);
+ $ccode = $csettings{'internal.coursecode'};
+ $sectionlist = $csettings{'internal.sectionnums'};
+ }
+ if (($homeserver) && (defined($env{'form.cc'})) && ($formvars{'cc'})) {
+ my @ccs;
+ if ($env{'form.cc'} =~ /,/) {
+ @ccs = split(/,/,$env{'form.cc'});
+ } else {
+ $env{'form.cc'} =~ s/^\s+//;
+ $env{'form.cc'} =~ s/\s+$//;
+ @ccs = $env{'form.cc'};
+ }
+ foreach my $cc (@ccs) {
+ $cc =~ s/^\s+//g;
+ $cc =~ s/\s+$//g;
+ if ($cc =~ m/^[^\@]+\@[^\@]+$/) {
+ if (!(grep(/^\Q$cc\E$/,@ok_ccs))) {
+ push(@ok_ccs,$cc);
+ }
+ } elsif ($cc ne '') {
+ if (!(grep(/^\Q$cc\E$/,@bad_ccs))) {
+ push(@bad_ccs,$cc);
+ }
+ }
+ }
+ if (@ok_ccs > 0) {
+ $okcclist = join(', ',@ok_ccs);
+ }
+ if (@bad_ccs == 1) {
+ if ($bad_ccs[0] ne '') {
+ $badccmsg .= ' '.&mt('The following Cc e-mail address is invalid: ').&Apache::loncommon::cleanup_html($bad_ccs[0]);
+ }
+ } elsif (@bad_ccs > 1) {
+ $badccmsg .= ' '.&mt('The following Cc e-mail addresses are invalid: '). &Apache::loncommon::cleanup_html(join(', ',@bad_ccs));
+ }
+ }
+ if ($env{'request.lti.login'}) {
+ if (($env{'user.name'} ne '') && ($env{'user.domain'} ne '')) {
+ $env{'form.user'} = "'".$env{'user.name'}.':'.$env{'user.domain'}."'";
+ }
+ $sourceurl = &Apache::lonnet::absolute_url().$url;
+ } else {
+ $env{'form.user'} = "'".$env{'form.uname'}.':'.$env{'form.udom'}."'";
+ $sourceurl = $env{'form.sourceurl'};
+ }
+ if ($formvars{'course'}) {
+ $env{'form.crsi'} = $env{'form.title'};
+ if ($coursecode ne '') {
+ $env{'form.crsi'} .= ' - '.$coursecode;
+ }
+ }
+ if ($formvars{'section'}) {
+ my $section;
+ if ($sectionlist) {
+ if ($coursecode eq $ccode) {
+ $section = $env{'form.sectionsel'}
+ } else {
+ $section = $env{'form.sectiontxt'};
+ }
+ } else {
+ $section = $env{'form.section'};
+ }
+ $env{'form.crsi'} .= ' - '.$lt{'sect'}.': '.$section;
+ }
+ my $supportmsg;
+ if ($formvars{'username'}) {
+ $supportmsg .= "$lt{'username'}: $env{'form.username'}\n";
+ }
+ $supportmsg .= "$lt{'email'}: $env{'form.email'}\n";
+ if (($homeserver) && (defined($env{'form.cc'})) && ($formvars{'cc'})) {
+ $supportmsg .= "$lt{'cc'}: $okcclist\n";
+ }
+ if ($formvars{'user'}) {
+ $supportmsg .= "$lt{'user'}: $env{'form.user'}\n";
+ }
+ if ($formvars{'phone'}) {
+ $supportmsg .= "$lt{'phone'}: $env{'form.phone'}\n";
+ }
+ if ($formvars{'course'}) {
+ $supportmsg .= "$lt{'crsi'}: $env{'form.crsi'}\n";
+ }
+ $supportmsg .= "$lt{'subject'}: $env{'form.subject'}
+$lt{'description'}: $env{'form.description'}
+$lt{'sourceurl'}: $sourceurl
+$lt{'date'}: $reporttime
+";
+
+ my $displaymsg;
+ foreach my $item ('username','email','cc','user','phone','crsi','subject','description','sourceurl') {
+ if ($env{'form.'.$item} ne '') {
+ if ($item eq 'description') {
+ my $descrip = $env{'form.description'};
+ $descrip = &Apache::loncommon::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 = &Apache::loncommon::cleanup_html($showurl);
+ $displaymsg .=
+ ''.
+ "$lt{$item}: $showurl \n";
+ } elsif ($item eq 'cc') {
+ next if ($helpform{'cc'} eq 'no');
+ if ($okcclist) {
+ my $showcclist = &Apache::loncommon::cleanup_html($okcclist);
+ $displaymsg .=
+ ''.
+ "$lt{$item}: $showcclist \n";
+ }
+ } else {
+ if (($item eq 'username') || ($item eq 'user') || ($item eq 'phone')) {
+ next if ($helpform{$item} eq 'no');
+ }
+ next if (($item eq 'crsi') && ($helpform{'course'} eq 'no'));
+ next if (($item eq 'user') && ($env{'request.lti.login'}));
+ my $showitem = $env{'form.'.$item};
+ $showitem = &Apache::loncommon::cleanup_html($showitem);
+ $displaymsg .=
+ ''.
+ "$lt{$item}: $showitem \n";
+ }
+ }
+ }
+ my ($requname,$requdom,$reqemail);
+ foreach my $field ('uname','udom','email') {
+ $env{'form.'.$field} =~ s/^\s+//;
+ $env{'form.'.$field} =~ s/\s+$//;
+ }
+ if ($env{'form.uname'} =~ /^$match_username$/) {
+ $requname = $env{'form.uname'};
+ }
+ if ($env{'form.udom'} =~ /^$match_domain$/) {
+ $requdom = $env{'form.udom'};
+ }
+ if ($env{'form.email'} =~ m/^[^\@]+\@[^\@]+$/) {
+ $reqemail = $env{'form.email'};
+ }
+
+ my $dom_in_effect;
+ unless ($env{'user.domain'} eq 'public') {
+ $dom_in_effect = $env{'user.domain'};
+ }
+ if ($dom_in_effect eq '') {
+ $dom_in_effect = $requdom;
+ }
+ if ($dom_in_effect eq '') {
+ $dom_in_effect = $defdom;
+ }
+
+ $displaymsg .= ''.
+ $lt{'date'}.': '.$reporttime.' '."\n";
+ my $args = {'function' => $function,
+ 'add_entries' => {
+ topmargin => "0",
+ marginheight => "0",
+ },
+ 'only_body' => 1,};
+ (undef,undef,undef,my $clientmathml,my $clientunicode) =
+ &Apache::loncommon::decode_user_agent();
+ if ($clientunicode && !$clientmathml) {
+ $args->{'browser.unicode'} = 1;
+ }
+ $r->print(&Apache::loncommon::start_page('Support request recorded',undef,$args));
$r->print(<<"END");
-$start_page
-
-
+
+
END
if ($r->uri eq '/adm/helpdesk') {
&print_header($r,$url,'process');
}
- if ($to =~ m/^[^\@]+\@[^\@]+$/) {
- $r->print("
A support request has been sent to $to
");
+ my $bad_email = 0;
+ my ($to,$bcc,$addtext) =
+ &Apache::loncommon::build_recipient_list(undef,'helpdeskmail',
+ $dom_in_effect,$origmail,
+ $requname,$requdom,
+ $reqemail);
+ if ($to =~ /,/) {
+ my @ok_email;
+ foreach my $email (split(/,/,$to)) {
+ if ($email =~ m/^[^\@]+\@[^\@]+$/) {
+ if (!grep(/^\Q$email\E$/,@ok_email)) {
+ push(@ok_email,$email);
+ }
+ }
+ }
+ if (@ok_email > 0) {
+ $to = join(',',@ok_email);
+ } elsif ($admin =~ m/^[^\@]+\@[^\@]+$/) {
+ $to = $admin;
+ } else {
+ $bad_email = 1;
+ }
+ } elsif ($to !~ m/^[^\@]+\@[^\@]+$/) {
+ if ($admin =~ m/^[^\@]+\@[^\@]+$/) {
+ $to = $admin;
+ } else {
+ $bad_email = 1;
+ }
+ }
+
+ my $message;
+ if (!$bad_email) {
+ $message = &mt('A support request has been sent to [_1]',''.$to.'');
} else {
- $to = $admin;
- if ($to =~ m/^[^\@]+\@[^\@]+$/) {
- $r->print("
A support request has been sent to $to
");
-END
+ $message = $lt{'warn'}.' ';
+ if ($to eq '') {
+ $message .= &mt('For this LON-CAPA server no e-mail address has been configured to receive support requests, so your support request has [_1]not[_2] been sent to the LON-CAPA support staff or administrator at your institution.','','');
} else {
- $r->print(<Warning: Problem with support e-mail address
-As the e-mail address provided for this LON-CAPA server ($to) does not appear to be a valid e-mail address, your support request has not been sent to the LON-CAPA support staff or administrator at your institution. Instead a copy has been sent to the LON-CAPA support team at Michigan State University.
-END
- $to = 'helpdesk@lon-capa.org';
+ $message .= &mt('As the e-mail address provided for this LON-CAPA server ([_1]) does not appear to be a valid e-mail address, your support request has [_2]not[_3] been sent to the LON-CAPA support staff or administrator at your institution.',''.$to.'','','');
}
}
- if (defined($env{'form.email'})) {
- if ($env{'form.email'} =~ m/^[^\@]+\@[^\@]+$/) {
- $from = $env{'form.email'};
+ $r->print('
');
+ if ($bad_email) {
+ $r->print(&Apache::loncommon::confirmwrapper(&Apache::lonhtmlcommon::confirm_success($message,$bad_email)).' ');
+ }
+ if ($reqemail ne '') {
+ $from = $reqemail;
+ }
+
+ if (defined($env{'form.cc'})) {
+ if ($badccmsg) {
+ $displaymsg .= $badccmsg;
}
}
my $subject = $env{'form.subject'};
- $subject =~ s#(`)#'#g;
- $subject =~ s#\$#\(\$\)#g;
- $supportmsg =~ s#(`)#'#g;
- $supportmsg =~ s#\$#\(\$\)#g;
- $displaymsg =~ s#(`)#'#g;
- $displaymsg =~ s#\$#\(\$\)#g;
+ $subject =~ s/(`)/'/g;
+ $subject =~ s/\$/\(\$\)/g;
+ $supportmsg =~ s/(`)/'/g;
+ $supportmsg =~ s/\$/\(\$\)/g;
+ $displaymsg =~ s/(`)/'/g;
+ $displaymsg =~ s/\$/\(\$\)/g;
my $fname;
my $attachmentpath = '';
- my $attachmentsize = '';
- if (defined($env{'user.name'})) {
- if ($env{'form.screenshot.filename'}) {
- $attachmentsize = length($env{'form.screenshot'});
- if ($attachmentsize > 131072) {
- $displaymsg .= " The uploaded screenshot file ($attachmentsize bytes) included with your request exceeded the maximum allowed size - 128 KB, and has therefore been discarded.";
- } else {
- $attachmentpath=&Apache::lonnet::userfileupload('screenshot',undef,'helprequests');
+ my $showsize = '';
+
+ if ((defined($env{'user.name'})) && (!$public)) {
+ if ($homeserver && $env{'form.screenshot.filename'}) {
+ unless ($helpform{'screenshot'} eq 'no') {
+ my $attachmentsize = length($env{'form.screenshot'});
+ my $max = 1048576;
+ my $showmax = 1.00;
+ if ($helpform{'maxsize'} =~ /^\d+\.\d*$/) {
+ $max *= $helpform{'maxsize'};
+ $showmax = $helpform{'maxsize'};
+ }
+ $showmax = '('.sprintf("%.2f",$showmax).' MB)';
+ $showsize = $attachmentsize/1048576;
+ $showsize = '('.sprintf("%.2f",$showsize).' MB)';
+ if ($attachmentsize > $max) {
+ $displaymsg .= ' '.
+ &mt('The uploaded screenshot file [_1] included with your request exceeded the maximum allowed size [_2], and has therefore been discarded.',$showsize,$showmax).'';
+ } else {
+ $attachmentpath=&Apache::lonnet::userfileupload('screenshot',undef,'helprequests');
+ }
}
}
}
- my %cookies = ();
+ my %cookies;
my $cookie=CGI::Cookie->parse($r->header_in('Cookie'));
- if ($$cookie{'lonID'} =~ /lonID=(\w+);/) {
+ if ($$cookie{'lonID'} =~ /lonID=($LONCAPA::handle_re);/) {
$cookies{'lonID'} = $1;
}
-
+ if ($$cookie{'lonLinkID'} =~ /lonLinkID=([a-f0-9]+_linked);/) {
+ $cookies{'lonLinkID'} = $1;
+ }
+ my $lti_info;
+ if (($env{'request.lti.login'}) && ($env{'request.course.id'})) {
+ my $ltidom = $env{'course.'.$env{'request.course.id'}.'.domain'};
+ if ($ltidom) {
+ my %lti = &Apache::lonnet::get_domain_lti($ltidom,'provider');
+ if (ref($lti{$env{'request.lti.login'}}) eq 'HASH') {
+ if ($lti{$env{'request.lti.login'}}{'consumer'}) {
+ $lti_info = "LTI consumer: ".$lti{$env{'request.lti.login'}}{'consumer'}."\n";
+ }
+ }
+ }
+ }
if ($attachmentpath =~ m-/([^/]+)$-) {
$fname = $1;
- $displaymsg .= " 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 .= ' '
+ .&mt('An uploaded screenshot file [_1] was included in the request sent by [_2].'
+ ,''.$fname.' '.$showsize,
+ ,$env{'user.name'}.':'.$env{'user.domain'}
+ );
$supportmsg .= "\n";
- foreach (@cookievars) {
- $supportmsg .= "$_: $cookies{$_}\n";
+ foreach my $var (@cookievars) {
+ $supportmsg .= "$var: $cookies{$var}\n";
+ }
+ foreach my $var(@ENVvars) {
+ $supportmsg .= "$var: $ENV{$var}\n";
}
- foreach (@ENVvars) {
- $supportmsg .= "$_: $ENV{$_}\n";
+ $supportmsg .= "REMOTE_ADDR: $ip\n";
+ foreach my $var (@envvars) {
+ $supportmsg .= "$var: $env{$var}\n";
}
- foreach (@envvars) {
- $supportmsg .= "$_: $env{$_}\n";
+ if ($lti_info) {
+ $supportmsg .= $lti_info;
}
}
-
- my $msg = MIME::Lite->new(
- From => $from,
- To => $to,
- Subject => $subject,
- Type =>'TEXT',
- Data => $supportmsg,
- );
-
- if ($attachmentpath) {
- my ($type, $encoding) = MIME::Types::by_suffix($attachmentpath);
- $msg->attach(Type => $type,
- Path => $attachmentpath,
- Filename => $fname
- );
- } else {
- my $envdata = '';
- foreach (@cookievars) {
- $envdata .= "$_: $cookies{$_}\n";
+ my $cc_string;
+ if ($homeserver) {
+ if (@ok_ccs > 0) {
+ $cc_string = join(', ',@ok_ccs);
+ }
+ }
+
+ my $attachment_text = '';
+ unless ($homeserver && $attachmentpath) {
+ foreach my $var (@cookievars) {
+ $attachment_text .= "$var: $cookies{$var}\n";
}
- foreach (@ENVvars) {
- $envdata .= "$_: $ENV{$_}\n";
+ foreach my $var (@ENVvars) {
+ $attachment_text .= "$var: $ENV{$var}\n";
}
- foreach (@envvars) {
- $envdata .= "$_: $env{$_}\n";
+ $attachment_text .= "REMOTE_ADDR: $ip\n";
+ foreach my $var (@envvars) {
+ $attachment_text .= "$var: $env{$var}\n";
}
- foreach (@loncvars) {
- $envdata .= "$_: $env{$_}\n";
+ foreach my $var (@loncvars) {
+ $attachment_text .= "$var: $env{$var}\n";
+ }
+ if ($lti_info) {
+ $attachment_text .= $lti_info;
}
- $msg->attach(Type => 'TEXT',
- Data => $envdata);
}
-### Send it:
- $msg->send('sendmail');
+ if ($addtext) {
+ my ($addloc,$addstr) = split(/:/,$addtext,2);
+ $addstr = &unescape($addstr);
+ if ($addloc eq 's') {
+ $subject = $addstr.' '.$subject;
+ } elsif ($addloc eq 'b') {
+ $supportmsg = $addstr."\n".$supportmsg;
+ }
+ }
- if ($attachmentpath =~ m#$Apache::lonnet::perlvar{'lonDaemons'}/tmp/helprequests/(\d+)/[^/]+#) {
+ if ($bad_email) {
+ $r->print(''.$lt{'belo'}.' '.
+ $lt{'ifyk'}."\n");
+ } else {
+ # Compose and send a MIME email
+ &Apache::loncommon::mime_email($from,'',$to,$subject,$supportmsg,$cc_string,
+ $bcc,$attachmentpath,$fname,$attachment_text);
+ $r->print(''.$lt{'your'}.':'."\n");
+ }
+ if ($attachmentpath =~ m|$Apache::lonnet::perlvar{'lonDaemons'}/tmp/helprequests/(\d+)/[^/]+|) {
unlink($attachmentpath);
}
- $r->print(qq|
- Your support request contained the following information:
|;
+ $reviewtext = &mt('Please review the information in "Log-in help" and the "Getting started" guide if you are unable to log-in.');
+ } else {
+ $reviewtext = &mt('Please review the information in "Log-in help" if you are unable to log-in.');
}
- $r->print(<
+END
+ if ($command ne 'process') {
+ my $stuwarn = &mt('Do [_1]not[_2] use this form to ask about course content.',
+ '','');
+ $r->print(<<"END");
+
+ $reviewtext
+ $lt{'ifyo'}
+
+ $lt{'stud'}:
+ $stuwarn $lt{'cont'}
+
+
END
- unless ($action eq 'process') {
- $r->print('
-
-
'.&mt('
-Please review the information in "Log-in help"').$getstarttext.' '.&mt('if you are unable to log-in').'. '.&mt('If your problem is still unresolved, the form below can be used to send a question to the LON-CAPA helpdesk').'. '.&mt('Note').': '.&mt('Student questions about course content should be directed to the course instructor').'.