--- loncom/interface/lonannounce.pm 2006/01/12 23:36:45 1.43
+++ loncom/interface/lonannounce.pm 2006/04/22 16:35:31 1.50
@@ -1,7 +1,7 @@
# The LearningOnline Network
# Announce
#
-# $Id: lonannounce.pm,v 1.43 2006/01/12 23:36:45 albertel Exp $
+# $Id: lonannounce.pm,v 1.50 2006/04/22 16:35:31 albertel Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -64,7 +64,7 @@ $help
$lt{'end'}: | $enddateform |
-
+
ENDFORM
}
@@ -106,15 +106,21 @@ sub readcalendar {
my $realm=&mt('All Resources');
if ($middle=~/^(.+)\_\_\_\(all\)$/) {
my $map_url=$1;
+ if (!$can_see_hidden && !$navmap) {
+ next;
+ }
if (!$can_see_hidden) {
my $res = $navmap->getResourceByUrl($map_url);
- if ($res->randomout()) { next; }
+ if ($res && $res->randomout()) { next; }
}
$realm=&mt('Folder/Map').': '.&Apache::lonnet::gettitle($map_url);
} elsif ($middle) {
+ if (!$can_see_hidden && !$navmap) {
+ next;
+ }
if (!$can_see_hidden) {
my $res = $navmap->getBySymb($middle);
- if ($res->randomout()) { next; }
+ if ($res && $res->randomout()) { next; }
}
$realm=&mt('Resource').': '.&Apache::lonnet::gettitle($middle);
}
@@ -149,7 +155,7 @@ sub readcalendar {
}
sub emptycell {
- return ' | ';
+ return ' | ';
}
sub normalcell {
@@ -183,15 +189,16 @@ sub normalcell {
$fullmsg=~s/[\n\r]/\\n/gs;
$fullmsg=&HTML::Entities::encode($fullmsg,'<>&"\'');
$fullmsg=~s/&/\\&/g;
+ my $short_msg = substr($msg,0,20).((length($msg) > 20)?'...':'');
$output.=''.
- substr($msg,0,20).'...
';
+ $short_msg.'
';
}
}
- return ''.&tfont(''.&picklink($day,$day,$month,$year).' '.$output).' | ';
+ ($year eq $todayhash{'year'}))?'_current':'').
+ '" >'.&picklink($day,$day,$month,$year).'
'.$output.'';
}
sub plaincell {
@@ -289,15 +296,6 @@ sub showday {
}
}
-sub tfont {
- my $text=shift;
- if ($env{'form.pickdate'} eq 'yes') {
- return ''.$text.'';
- } else {
- return $text;
- }
-}
-
sub picklink {
my ($text,$day,$month,$year)=@_;
if ($env{'form.pickdate'} eq 'yes') {
@@ -336,8 +334,7 @@ sub handler {
my $today=time;
%todayhash=&Apache::loncommon::timehash($today);
# ----------------------------------------------------------------- Check marks
- %showedcheck=();
- undef %showedcheck;
+ undef(%showedcheck);
# ---------------------------------------------------------- Get month and year
&Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},
['month','year','pickdate','formname','element']);
@@ -360,12 +357,8 @@ sub handler {
'dlsav' => -1 ));
my $weekday=$firstday{'weekday'};
# ------------------------------------------------------------ Print the screen
- my $html=&Apache::lonxml::xmlbegin();
- $r->print(<
-The LearningOnline Network with CAPA
-
-
ENDDOCUMENT
+
if ($pickdatemode) {
# no big header in pickdate mode
- $r->print(&Apache::loncommon::bodytag("Pick a Date",'','',1).
+ $r->print(&Apache::loncommon::start_page("Pick a Date",$js,
+ {'only_body' => 1,}).
&dialscript().
'');
} else {
- $r->print(&Apache::loncommon::bodytag("Announcements and Calendar"));
+ $r->print(&Apache::loncommon::start_page("Announcements and Calendar",
+ $js));
}
# does this user have privileges to post, etc?
my $allowed=0;
@@ -482,7 +477,7 @@ SERVERANNOUNCE
}
# ----------------------------------------------------- Summarize all calendars
my %allcal=();
- foreach my $course (&Apache::loncommon::findallcourses()) {
+ foreach my $course (sort(&Apache::loncommon::findallcourses())) {
%allcal=(%allcal,&readcalendar($course));
}
@@ -501,9 +496,15 @@ SERVERANNOUNCE
if (($year<1970) || ($year>2037)) {
$r->print('No calendar available for this date.
'.
'Current Month