--- loncom/interface/lonannounce.pm 2003/05/21 19:15:41 1.10
+++ loncom/interface/lonannounce.pm 2003/05/21 20:10:53 1.11
@@ -1,7 +1,7 @@
# The LearningOnline Network
# Announce
#
-# $Id: lonannounce.pm,v 1.10 2003/05/21 19:15:41 www Exp $
+# $Id: lonannounce.pm,v 1.11 2003/05/21 20:10:53 www Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -78,7 +78,8 @@ sub normalcell {
if ($_) {
my ($courseid,$start,$end,@msg)=split(/\@/,$_);
my $msg=join('@',@msg);
- my $fullmsg=$ENV{'course.'.$courseid.'.description'}.': '.$msg;
+ my $fullmsg=$ENV{'course.'.$courseid.'.description'}.
+ ', '.localtime($start).' - '.localtime($end).': '.$msg;
if ($courseid eq $ENV{'request.course.id'}) {
if (&Apache::lonnet::allowed('srm',$ENV{'request.course.id'})) {
$output.=''.
- substr($msg,0,20).'...
';
+ substr($msg,0,20).'...
';
}
}
return '
'.$day.' '.$output.' | ';
}
+sub plaincell {
+ my ($text)=@_;
+ my $output='';
+ foreach (split(/\_\_\_\&\&\&\_\_\_/,$text)) {
+ if ($_) {
+ my ($courseid,$start,$end,@msg)=split(/\@/,$_);
+ my $msg=join('@',@msg);
+ my $fullmsg=$ENV{'course.'.$courseid.'.description'}.
+ ', '.localtime($start).' - '.localtime($end).': '.$msg;
+ $output.=''.
+ substr($msg,0,40).'...
';
+ }
+ }
+ return $output;
+}
+
+sub listcell {
+ my ($text)=@_;
+ my $output='';
+ foreach (split(/\_\_\_\&\&\&\_\_\_/,$text)) {
+ if ($_) {
+ my ($courseid,$start,$end,@msg)=split(/\@/,$_);
+ my $msg=join('@',@msg);
+ my $fullmsg=localtime($start).' to '.localtime($end).':
'.
+ $msg.'';
+ $output.=''.$fullmsg.'';
+ }
+ }
+ return $output;
+}
+
sub nextday {
my %th=@_;
$th{'day'}++;
@@ -99,7 +131,7 @@ sub nextday {
}
sub showday {
- my ($tk,%allcal)=@_;
+ my ($tk,$mode,%allcal)=@_;
my %th=&Apache::loncommon::timehash($tk);
my ($nextday,$nextmonth)=&nextday(%th);
my $outp='';
@@ -111,7 +143,17 @@ sub showday {
$allcal{$_};
}
}
- return ($nextday,$nextmonth,&normalcell($th{'day'},$outp));
+ unless ($mode) {
+ return ($nextday,$nextmonth,&normalcell($th{'day'},$outp));
+ } elsif ($outp) {
+ if ($mode==1) {
+ return '
'.&plaincell($outp);
+ } else {
+ return '';
+ }
+ } else {
+ return '';
+ }
}
sub handler {
@@ -230,7 +272,7 @@ ENDDOCUMENT
$r->print('');
for (my $i=0;$i<$weekday;$i++) { $r->print(&emptycell); }
for (my $i=$weekday;$i<=6;$i++) {
- ($tk,$nm,$outp)=&showday($tk,%allcal);
+ ($tk,$nm,$outp)=&showday($tk,0,%allcal);
$r->print($outp);
}
$r->print('
');
@@ -238,7 +280,7 @@ ENDDOCUMENT
for (my $k=0;$k<=3;$k++) {
$r->print('');
for (my $i=0;$i<=6;$i++) {
- ($tk,$nm,$outp)=&showday($tk,%allcal);
+ ($tk,$nm,$outp)=&showday($tk,0,%allcal);
if ($month!=$nm) { $outp=&emptycell; }
$r->print($outp);
}