version 1.41, 2002/10/11 20:09:36
|
version 1.46, 2002/12/30 14:10:58
|
Line 166 sub user_crit_msg_raw {
|
Line 166 sub user_crit_msg_raw {
|
'put:'.$domain.':'.$user.':critical:'. |
'put:'.$domain.':'.$user.':critical:'. |
&Apache::lonnet::escape($msgid).'='. |
&Apache::lonnet::escape($msgid).'='. |
&Apache::lonnet::escape($message),$homeserver); |
&Apache::lonnet::escape($message),$homeserver); |
|
if ($ENV{'request.course.id'}) { |
|
&user_normal_msg_raw( |
|
$ENV{'course.'.$ENV{'request.course.id'}.'.num'}, |
|
$ENV{'course.'.$ENV{'request.course.id'}.'.domain'}, |
|
'Critical ['.$user.':'.$domain.']', |
|
$message); |
|
} |
} else { |
} else { |
$status='no_host'; |
$status='no_host'; |
} |
} |
Line 210 sub user_crit_received {
|
Line 217 sub user_crit_received {
|
&user_normal_msg($contents{'sendername'},$contents{'senderdomain'}, |
&user_normal_msg($contents{'sendername'},$contents{'senderdomain'}, |
'Receipt: '.$ENV{'user.name'}.' at '.$ENV{'user.domain'}, |
'Receipt: '.$ENV{'user.name'}.' at '.$ENV{'user.domain'}, |
'User '.$ENV{'user.name'}.' at '.$ENV{'user.domain'}. |
'User '.$ENV{'user.name'}.' at '.$ENV{'user.domain'}. |
' acknowledged receipt of message "'. |
' acknowledged receipt of message'."\n".' "'. |
$contents{'subject'}.'" dated '.$contents{'time'}.".\n\n" |
$contents{'subject'}.'"'."\n".'dated '. |
.'Message ID: '.$contents{'msgid'}):'no msg req'); |
$contents{'time'}.".\n" |
|
):'no msg req'); |
$status.=' trans: '. |
$status.=' trans: '. |
&Apache::lonnet::put( |
&Apache::lonnet::put( |
'nohist_email',{$contents{'msgid'} => $message{$msgid}}); |
'nohist_email',{$contents{'msgid'} => $message{$msgid}}); |
Line 525 sub compout {
|
Line 533 sub compout {
|
'<table>'); |
'<table>'); |
unless (($broadcast eq 'group') || ($broadcast eq 'upload')) { |
unless (($broadcast eq 'group') || ($broadcast eq 'upload')) { |
my $domform = &Apache::loncommon::select_dom_form($defdom,'recdomain'); |
my $domform = &Apache::loncommon::select_dom_form($defdom,'recdomain'); |
|
my $selectlink=&Apache::loncommon::selectstudent_link |
|
('compemail','recuname','recdomain'); |
$r->print(<<"ENDREC"); |
$r->print(<<"ENDREC"); |
<table> |
<table> |
<tr><td>Username:</td><td><input type=text size=12 name=recuname value="$ENV{'form.recname'}"></td></tr> |
<tr><td>Username:</td><td><input type=text size=12 name=recuname value="$ENV{'form.recname'}"></td><td rowspan="2">$selectlink</td></tr> |
<tr><td>Domain:</td> |
<tr><td>Domain:</td> |
<td>$domform</td></tr> |
<td>$domform</td></tr> |
ENDREC |
ENDREC |
Line 578 ENDUPLOAD
|
Line 587 ENDUPLOAD
|
$r->print('</form>'); |
$r->print('</form>'); |
} |
} |
|
|
|
# ---------------------------------------------------- Display all face to face |
|
|
|
sub disfacetoface { |
|
my ($r,$user,$domain)=@_; |
|
unless ($ENV{'request.course.id'}) { return; } |
|
unless (&Apache::lonnet::allowed('srm',$ENV{'request.course.id'})) { |
|
return; |
|
} |
|
my %records=&Apache::lonnet::dump('nohist_email', |
|
$ENV{'course.'.$ENV{'request.course.id'}.'.domain'}, |
|
$ENV{'course.'.$ENV{'request.course.id'}.'.num'}, |
|
'%255b'.$user.'%253a'.$domain.'%255d'); |
|
my $result=''; |
|
foreach (sort keys %records) { |
|
my %content=&unpackagemsg($records{$_}); |
|
next if ($content{'senderdomain'} eq ''); |
|
$content{'message'}=~s/\n/\<br\>/g; |
|
if ($content{'subject'}=~/^Record/) { |
|
$result.='<h3>Record</h3>'; |
|
} else { |
|
$result.='<h3>Sent Message</h3>'; |
|
%content=&unpackagemsg($content{'message'}); |
|
$content{'message'}= |
|
'<b>Subject: '.$content{'subject'}.'</b><br />'. |
|
$content{'message'}; |
|
} |
|
$result.='By: <b>'. |
|
&Apache::loncommon::aboutmewrapper( |
|
&Apache::loncommon::plainname($content{'sendername'},$content{'senderdomain'}),$content{'sendername'},$content{'senderdomain'}).'</b> ('. |
|
$content{'sendername'}.'@'. |
|
$content{'senderdomain'}.') '.$content{'time'}. |
|
'<br><blockquote>'. |
|
&Apache::lontexconvert::msgtexconverted($content{'message'}). |
|
'</blockquote>'; |
|
} |
|
# Check to see if there were any messages. |
|
if ($result eq '') { |
|
$r->print("<p><b>No notes, face-to-face discussion records, or critical messages in this course.</b></p>"); |
|
} else { |
|
$r->print($result); |
|
} |
|
} |
|
|
|
# ---------------------------------------------------------------- Face to face |
|
|
|
sub facetoface { |
|
my ($r,$stage)=@_; |
|
unless (&Apache::lonnet::allowed('srm',$ENV{'request.course.id'})) { |
|
return; |
|
} |
|
# from query string |
|
if ($ENV{'form.recname'}) { $ENV{'form.recuname'}=$ENV{'form.recname'}; } |
|
if ($ENV{'form.recdom'}) { $ENV{'form.recdomain'}=$ENV{'form.recdom'}; } |
|
|
|
my $defdom=$ENV{'user.domain'}; |
|
# already filled in |
|
if ($ENV{'form.recdomain'}) { $defdom=$ENV{'form.recdomain'}; } |
|
# generate output |
|
my $domform = &Apache::loncommon::select_dom_form($defdom,'recdomain'); |
|
my $stdbrws = &Apache::loncommon::selectstudent_link |
|
('stdselect','recuname','recdomain'); |
|
$r->print(<<"ENDTREC"); |
|
<h3>User Notes, Records of Face-To-Face Discussions, and Critical Messages in Course</h3> |
|
<form method="post" action="/adm/email" name="stdselect"> |
|
<input type="hidden" name="recordftf" value="retrieve" /> |
|
<table> |
|
<tr><td>Username:</td><td><input type=text size=12 name=recuname value="$ENV{'form.recuname'}"></td> |
|
<td rowspan="2"> |
|
$stdbrws |
|
<input type="submit" value="Retrieve discussion and message records"></td> |
|
</tr> |
|
<tr><td>Domain:</td> |
|
<td>$domform</td></tr> |
|
</table> |
|
</form> |
|
ENDTREC |
|
if (($stage ne 'query') && |
|
($ENV{'form.recdomain'}) && ($ENV{'form.recuname'})) { |
|
chomp($ENV{'form.newrecord'}); |
|
if ($ENV{'form.newrecord'}) { |
|
&user_normal_msg_raw( |
|
$ENV{'course.'.$ENV{'request.course.id'}.'.num'}, |
|
$ENV{'course.'.$ENV{'request.course.id'}.'.domain'}, |
|
'Record ['.$ENV{'form.recuname'}.':'.$ENV{'form.recdomain'}.']', |
|
$ENV{'form.newrecord'}); |
|
} |
|
$r->print('<h3>'.&Apache::loncommon::plainname($ENV{'form.recuname'}, |
|
$ENV{'form.recdomain'}).'</h3>'); |
|
&disfacetoface($r,$ENV{'form.recuname'},$ENV{'form.recdomain'}); |
|
$r->print(<<ENDRHEAD); |
|
<form method="post" action="/adm/email"> |
|
<input name="recdomain" value="$ENV{'form.recdomain'}" type="hidden" /> |
|
<input name="recuname" value="$ENV{'form.recuname'}" type="hidden" /> |
|
ENDRHEAD |
|
$r->print(<<ENDBFORM); |
|
<hr />New Record (record is visible to course faculty and staff)<br /> |
|
<textarea name="newrecord" cols="80" rows="10" wrap="hard"></textarea> |
|
<br /> |
|
<input type="hidden" name="recordftf" value="post" /> |
|
<input type="submit" value="Post this record" /> |
|
</form> |
|
ENDBFORM |
|
} |
|
} |
|
|
# ===================================================================== Handler |
# ===================================================================== Handler |
|
|
sub handler { |
sub handler { |
Line 593 sub handler {
|
Line 707 sub handler {
|
# --------------------------- Get query string for limited number of parameters |
# --------------------------- Get query string for limited number of parameters |
&Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'}, |
&Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'}, |
['display','replyto','forward','markread','markdel','markunread', |
['display','replyto','forward','markread','markdel','markunread', |
'sendreply','compose','sendmail','critical','recname','recdom']); |
'sendreply','compose','sendmail','critical','recname','recdom', |
|
'recordftf']); |
|
|
# ------------------------------------------------------ They checked for email |
# ------------------------------------------------------ They checked for email |
&Apache::lonnet::put('email_status',{'recnewemail'=>0}); |
&Apache::lonnet::put('email_status',{'recnewemail'=>0}); |
# --------------------------------------------------------------- Render Output |
# --------------------------------------------------------------- Render Output |
|
|
$r->print('<html><head><title>EMail and Messaging</title></head>'. |
$r->print('<html><head><title>EMail and Messaging</title>'. |
|
&Apache::loncommon::studentbrowser_javascript().'</head>'. |
&Apache::loncommon::bodytag('EMail and Messages')); |
&Apache::loncommon::bodytag('EMail and Messages')); |
if ($ENV{'form.display'}) { |
if ($ENV{'form.display'}) { |
my $msgid=$ENV{'form.display'}; |
my $msgid=$ENV{'form.display'}; |
Line 621 $content{'sendername'},$content{'senderd
|
Line 737 $content{'sendername'},$content{'senderd
|
'"><b>Forward</b></a></td>'. |
'"><b>Forward</b></a></td>'. |
'<td><a href="/adm/email?markunread='.&Apache::lonnet::escape($msgid). |
'<td><a href="/adm/email?markunread='.&Apache::lonnet::escape($msgid). |
'"><b>Mark Unread</b></a></td>'. |
'"><b>Mark Unread</b></a></td>'. |
|
'<td><a href="/adm/email?markdel='.&Apache::lonnet::escape($msgid). |
|
'"><b>Delete</b></a></td>'. |
'<td><a href="/adm/email"><b>Display all Messages</b></a></td>'. |
'<td><a href="/adm/email"><b>Display all Messages</b></a></td>'. |
'</tr></table><p><pre>'. |
'</tr></table><p><pre>'. |
&Apache::lontexconvert::msgtexconverted($content{'message'}). |
&Apache::lontexconvert::msgtexconverted($content{'message'}). |
Line 688 $content{'sendername'},$content{'senderd
|
Line 806 $content{'sendername'},$content{'senderd
|
&disall($r); |
&disall($r); |
} elsif ($ENV{'form.compose'}) { |
} elsif ($ENV{'form.compose'}) { |
&compout($r,'',$ENV{'form.compose'}); |
&compout($r,'',$ENV{'form.compose'}); |
|
} elsif ($ENV{'form.recordftf'}) { |
|
&facetoface($r,$ENV{'form.recordftf'}); |
} elsif ($ENV{'form.sendmail'}) { |
} elsif ($ENV{'form.sendmail'}) { |
my %content=(); |
my %content=(); |
undef %content; |
undef %content; |