version 1.212, 2008/06/06 05:24:28
|
version 1.213, 2008/09/13 02:37:26
|
Line 279 sub unpackmsgid {
|
Line 279 sub unpackmsgid {
|
|
|
|
|
sub sendemail { |
sub sendemail { |
my ($to,$subject,$body)=@_; |
my ($to,$subject,$body,$to_uname,$to_udom,$user_lh)=@_; |
my %senderemails=&Apache::loncommon::getemails(); |
my %senderemails=&Apache::loncommon::getemails(); |
my $senderaddress=''; |
my $senderaddress=''; |
foreach my $type ('notification','permanentemail','critnotification') { |
foreach my $type ('notification','permanentemail','critnotification') { |
Line 288 sub sendemail {
|
Line 288 sub sendemail {
|
} |
} |
} |
} |
$body= |
$body= |
"*** ".&mt('This is an automatic message generated by the LON-CAPA system.')."\n". |
"*** ".&mt_user($user_lh,'This is an automatic message generated by the LON-CAPA system.')."\n". |
"*** ".($senderaddress?&mt('You can reply to this message'):&mt('Please do not reply to this address.')."\n*** ". |
"*** ".($senderaddress?&mt_user($user_lh,'You can reply to this message'):&mt_user($user_lh,'Please do not reply to this address.')."\n*** ". |
&mt('A reply will not be received by the recipient!'))."\n\n".$body; |
&mt_user($user_lh,'A reply will not be received by the recipient!'))."\n\n".$body; |
my $msg = new Mail::Send; |
my $msg = new Mail::Send; |
$msg->to($to); |
$msg->to($to); |
$msg->subject('[LON-CAPA] '.$subject); |
$msg->subject('[LON-CAPA] '.$subject); |
Line 319 sub sendnotification {
|
Line 319 sub sendnotification {
|
my ($sendtime,$shortsubj,$fromname,$fromdomain,$status,$fromcid, |
my ($sendtime,$shortsubj,$fromname,$fromdomain,$status,$fromcid, |
$symb,$error) = &Apache::lonmsg::unpackmsgid($msgid); |
$symb,$error) = &Apache::lonmsg::unpackmsgid($msgid); |
my ($coursetext,$body,$bodybegin,$bodysubj,$bodyend); |
my ($coursetext,$body,$bodybegin,$bodysubj,$bodyend); |
|
my $user_lh = &user_lang($touname,$toudom,$fromcid); |
if ($fromcid ne '') { |
if ($fromcid ne '') { |
$coursetext = "\n".&mt('Course').': '; |
$coursetext = "\n".&mt_user($user_lh,'Course').': '; |
if ($env{'course.'.$fromcid.'.description'} ne '') { |
if ($env{'course.'.$fromcid.'.description'} ne '') { |
$coursetext .= $env{'course.'.$fromcid.'.description'}; |
$coursetext .= $env{'course.'.$fromcid.'.description'}; |
} else { |
} else { |
Line 333 sub sendnotification {
|
Line 334 sub sendnotification {
|
} |
} |
my @recipients = split(/,/,$to); |
my @recipients = split(/,/,$to); |
$bodybegin = $coursetext. |
$bodybegin = $coursetext. |
&mt('You received a'.$critical.' message from [_1] in LON-CAPA.',$sender).' '; |
&mt_user($user_lh, |
$bodysubj = &mt('The subject is |
'You received a'.$critical.' message from [_1] in LON-CAPA.',$sender).' '; |
|
$bodysubj = &mt_user($user_lh,'The subject is |
|
|
[_1] |
[_1] |
|
|
',$subj)."\n". |
',$subj)."\n". |
'=== '.&mt('Excerpt')." ============================================================ |
'=== '.&mt_user($user_lh,'Excerpt')." ============================================================ |
"; |
"; |
$bodyend = " |
$bodyend = " |
======================================================================== |
======================================================================== |
|
|
".&mt('Use |
".&mt_user($user_lh,'Use |
|
|
[_1] |
[_1] |
|
|
to access the full message.',$url); |
to access the full message.',$url); |
my %userenv = &Apache::lonnet::get('environment',['notifywithhtml'],$toudom,$touname); |
my %userenv = &Apache::lonnet::get('environment',['notifywithhtml'],$toudom,$touname); |
my $subject = &mt("'New' $critical message from ").$sender; |
my $subject = &mt_user($user_lh,"'New' $critical message from ").$sender; |
|
|
my ($blocked,$blocktext); |
my ($blocked,$blocktext); |
if (!$crit) { |
if (!$crit) { |
Line 361 to access the full message.',$url);
|
Line 363 to access the full message.',$url);
|
$blocked = 1; |
$blocked = 1; |
my $showstart = &Apache::lonlocal::locallocaltime($startblock); |
my $showstart = &Apache::lonlocal::locallocaltime($startblock); |
my $showend = &Apache::lonlocal::locallocaltime($endblock); |
my $showend = &Apache::lonlocal::locallocaltime($endblock); |
$blocktext = &mt('LON-CAPA messages sent to you between [_1] and [_2] will be inaccessible until the end of this time period, because you are a student in a course with an active communications block.',$showstart,$showend); |
$blocktext = &mt_user($user_lh,'LON-CAPA messages sent to you between [_1] and [_2] will be inaccessible until the end of this time period, because you are a student in a course with an active communications block.',$showstart,$showend); |
} |
} |
} |
} |
if ($userenv{'notifywithhtml'} ne '') { |
if ($userenv{'notifywithhtml'} ne '') { |
Line 376 to access the full message.',$url);
|
Line 378 to access the full message.',$url);
|
} |
} |
$body = $bodybegin.$bodysubj.$sendtext.$bodyend; |
$body = $bodybegin.$bodysubj.$sendtext.$bodyend; |
} |
} |
&sendemail($addr,$subject,$body); |
&sendemail($addr,$subject,$body,$touname,$toudom,$user_lh); |
} |
} |
} else { |
} else { |
if ($blocked) { |
if ($blocked) { |
Line 385 to access the full message.',$url);
|
Line 387 to access the full message.',$url);
|
$text =~ s/\<\/*[^\>]+\>//gs; |
$text =~ s/\<\/*[^\>]+\>//gs; |
$body = $bodybegin.$bodysubj.$text.$bodyend; |
$body = $bodybegin.$bodysubj.$text.$bodyend; |
} |
} |
&sendemail($to,$subject,$body); |
&sendemail($to,$subject,$body,$touname,$toudom,$user_lh); |
} |
} |
} |
} |
# ============================================================= Check for email |
# ============================================================= Check for email |
Line 922 sub decide_receiver {
|
Line 924 sub decide_receiver {
|
return ($typestyle,%to); |
return ($typestyle,%to); |
} |
} |
|
|
|
sub user_lang { |
|
my ($touname,$toudom,$fromcid) = @_; |
|
my @userlangs; |
|
if (($fromcid ne '') && ($env{'course.'.$fromcid.'.languages'} ne '')) { |
|
@userlangs=(@userlangs,split(/\s*(\,|\;|\:)\s*/, |
|
$env{'course.'.$fromcid.'.languages'})); |
|
} else { |
|
my %langhash = &Apache::lonnet::get('environment',['languages'],$toudom,$touname); |
|
if ($langhash{'languages'} ne '') { |
|
@userlangs = split(/\s*(\,|\;|\:)\s*/,$langhash{'languages'}); |
|
} else { |
|
my %domdefs = &Apache::lonnet::get_domain_defaults($toudom); |
|
if ($domdefs{'lang_def'} ne '') { |
|
@userlangs = ($domdefs{'lang_def'}); |
|
} |
|
} |
|
} |
|
my @languages=&Apache::loncommon::get_genlanguages(@userlangs); |
|
my $user_lh = Apache::localize->get_handle(@languages); |
|
return $user_lh; |
|
} |
|
|
=pod |
=pod |
|
|
=back |
=back |