[LON-CAPA-cvs] cvs: loncom /interface lonwhatsnew.pm
raeburn
lon-capa-cvs@mail.lon-capa.org
Mon, 11 Apr 2005 13:14:00 -0000
This is a MIME encoded message
--raeburn1113225240
Content-Type: text/plain
raeburn Mon Apr 11 09:14:00 2005 EDT
Modified files:
/loncom/interface lonwhatsnew.pm
Log:
Simplify interface. Add breadcrumbs. Work in progress.
--raeburn1113225240
Content-Type: text/plain
Content-Disposition: attachment; filename="raeburn-20050411091400.txt"
Index: loncom/interface/lonwhatsnew.pm
diff -u loncom/interface/lonwhatsnew.pm:1.6 loncom/interface/lonwhatsnew.pm:1.7
--- loncom/interface/lonwhatsnew.pm:1.6 Mon Apr 11 08:20:23 2005
+++ loncom/interface/lonwhatsnew.pm Mon Apr 11 09:14:00 2005
@@ -1,5 +1,5 @@
#
-# $Id: lonwhatsnew.pm,v 1.6 2005/04/11 12:20:23 raeburn Exp $
+# $Id: lonwhatsnew.pm,v 1.7 2005/04/11 13:14:00 raeburn Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -45,6 +45,11 @@
sub handler {
my $r = shift;
+ if ($r->header_only) {
+ &Apache::loncommon::content_type($r,'text/html');
+ $r->send_http_header;
+ return OK;
+ }
&Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'},['command']);
my $command = $env{'form.command'};
@@ -53,6 +58,8 @@
$command = "info";
}
+ &Apache::loncommon::content_type($r,'text/html');
+ $r->send_http_header;
$r->print(&display_header());
if (! (($env{'request.course.fn'}) && (&Apache::lonnet::allowed('vsa',$env{'request.course.id'})))) {
# Not in a course, or not allowed to modify parms
@@ -60,6 +67,20 @@
return HTTP_NOT_ACCEPTABLE;
}
+ &Apache::lonhtmlcommon::clear_breadcrumbs();
+ if ($command eq 'config') {
+ &Apache::lonhtmlcommon::add_breadcrumb
+ ({href=>'/adm/whatsnew?command=config',
+ text=>"Configure display"});
+ $r->print(&Apache::lonhtmlcommon::breadcrumbs
+ (undef,'Course Action Items','Course_Action_Items_Config'));
+ } else {
+ &Apache::lonhtmlcommon::add_breadcrumb
+ ({href=>'/adm/whatsnew?command=info',
+ text=>"Display Action Items"});
+ $r->print(&Apache::lonhtmlcommon::breadcrumbs
+ (undef,'Course Action Items','Course_Action_Items_Display'));
+ }
&display_main_box($r,$command);
}
@@ -73,63 +94,32 @@
my ($r,$command) = @_;
my $domain=&Apache::loncommon::determinedomain();
my $tabbg=&Apache::loncommon::designparm('coordinator.tabbg',$domain);
- $r->print(<<END_OF_BLOCK);
-<br />
-<br />
-<table width="100%" border="0" cellpadding="0" cellspacing="0">
- <tr>
- <td width="100%" bgcolor="#000000">
- <table width="100%" border="0" cellpadding="1" cellspacing="0">
- <tr>
- <td width="100%" bgcolor="#000000">
- <table width="100%" border="0" cellpadding="0" cellspacing="1" bgcolor="#ffffff">
- <tr>
- <td colspan="2" width="100%" bgcolor="$tabbg">
- <table width="100%" border="0" cellpadding="5" cellspacing="0">
- <tr>
- <td width="100%">
- <table width="100%" border="0" cellpadding="0" cellspacing="0">
- <tr>
- <td>
- <font face="arial,verdana" size="3"><b>Course Action Items</b></font></td>
- </td>
- <td align="right">
- </td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- <tr>
- <td width="100" valign="top" bgcolor="#dddddd" height="100%">
- <table width="100" border="0" cellpadding="0" cellspacing="0" height="100%">
- <tr>
- <td valign="top" height="100%">
-END_OF_BLOCK
- &display_nav_box($r,$command);
- $r->print('</td></tr></table></td>');
- $r->print('<td width="100%" bgcolor="#ffffff"><table width="100%" border="0" cellpadding="5" cellspacing="0"><tr><td width="100%">');
-
+ my $selconfig;
+ my $selinfo;
if ($command eq 'config') {
- &display_config_box($r);
+ $selinfo = 'selected="selected"';
} else {
- &display_actions_box($r);
+ $selconfig = 'selected="selected"';
+ }
+ my $picker = ('
+<form>
+ <nobr>
+ <input type="submit" value="'.&mt('Change page to:').'" />
+ <select name="command">
+ <option value="info" '.$selinfo.'">'.&mt('Display Action Items').'</option>
+ <option value="" '.$selconfig.'">'.&mt('Configure Settings').'</option>
+ </select>
+ </nobr>
+</form>');
+
+ $r->print('<table width="100%" border="0" cellpadding="5" cellspacing="0"><tr><td width="100%">');
+
+ if ($command eq 'config') {
+ &display_config_box($r,$picker);
+ } else {
+ &display_actions_box($r,$picker);
}
$r->print(<<END_OF_BLOCK);
- </td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
- </td>
- </tr>
- </table>
</td>
</tr>
</table><br />
@@ -138,37 +128,6 @@
END_OF_BLOCK
}
-#------------------------------
-# display_nav_box
-#
-# Display the navigation box
-#------------------------------
-
-sub display_nav_box {
- my ($r,$command) = @_;
- $r->print('<table width="100" border="0" cellpadding="3" cellspacing="0">'."\n");
- if ($command eq "info") {
- $r->print('<tr><td bgcolor="#ffffff">');
- $r->print('<small><b>Action Items</b></small><br />');
- $r->print('</td></tr>');
- } else {
- $r->print('<tr><td>');
- $r->print('<small><a href="/adm/whatsnew?command=info">Current Action Items</a></small><br />');
- $r->print('</td></tr>');
- }
- $r->print('<tr><td> </td></tr>');
- if ($command eq "config") {
- $r->print('<tr><td bgcolor="#ffffff">');
- $r->print('<small><b>Display options</b></small><br />');
- $r->print('</td></tr>');
- } else {
- $r->print('<tr><td>');
- $r->print('<small><a href="/adm/whatsnew?command=config">Display options</a></small><br />');
- $r->print('</td></tr>');
- }
- $r->print('</table>');
-}
-
#-------------------------------
# display_header
#
@@ -196,7 +155,7 @@
#-------------------------------
sub display_actions_box() {
- my $r = shift;
+ my ($r,$picker) = @_;
my $rowColor1 = "#ffffff";
my $rowColor2 = "#eeeeee";
@@ -231,7 +190,7 @@
return;
}
- $r->print('<b>Course Action Items</b><br /><hr width="100%" /><table border="0" width="100%" cellpadding="2" cellspacing="4" bgcolor="#ffffff"><tr><td align="left" valign="top" width="45%">');
+ $r->print('<b>'.$picker.'</b><br /><hr width="100%" /><table border="0" width="100%" cellpadding="2" cellspacing="4"><tr><td align="left" valign="top" width="45%">');
## UNREAD COURSE DISCUSSION POSTS ##
$r->print(<<"END");
@@ -247,11 +206,16 @@
END
if (@newdiscussions > 0) {
+ $r->print('<tr bgcolor="#cccccc"><td><b><small>Location</small></b></td><td><b><small>Type</small></b><td align="right"><b><small>Number of new posts</small></b></td></tr>');
# @newdiscussions = sort { &cmp_title($a,$b) } @newdiscussions;
my $rowNum = 0;
foreach my $ressymb (@newdiscussions) {
my $forum_title = $unread{$ressymb}{'title'};
+ my $type = 'Resource';
my $feedurl=&Apache::lonfeedback::get_feedurl($ressymb);
+ if ($feedurl =~ /bulletinboard/) {
+ $type = 'Bulletin Board';
+ }
my $unreadnum = keys(%{$unread{$ressymb}});
$unreadnum = $unreadnum - 2;
if ($unreadnum > 0) {
@@ -260,7 +224,7 @@
} else {
$rowColor = $rowColor2;
}
- $r->print('<tr><td bgcolor="'.$rowColor.'"><small><a href="'.$feedurl.'?symb='.$unread{$ressymb}{symb}.'">'.$forum_title.':</a> </td><td bgcolor="'.$rowColor.'" align="right">'.$unreadnum.' </td></tr>');
+ $r->print('<tr bgcolor="'.$rowColor.'"><td><small><a href="'.$feedurl.'?symb='.$unread{$ressymb}{symb}.'">'.$forum_title.':</a> </td><td><small>'.$type.'</small></td><td align="right">'.$unreadnum.' </td></tr>');
$rowNum ++;
}
}
@@ -282,7 +246,7 @@
END
if (@tograde > 0) {
- $r->print('<tr><th bgcolor="#cccccc">Problem Name</th><th>Number ungraded</th></tr>');
+ $r->print('<tr bgcolor="#cccccc"><td><b><small>Problem Name</small></b></td><td align="right"><b><small>Number ungraded</small></b></td></tr>');
my $rowNum = 0;
foreach my $res (@tograde) {
if ($rowNum %2 == 1) {
@@ -290,14 +254,48 @@
} else {
$rowColor = $rowColor2;
}
-
- $r->print('<tr bgcolor="'.$rowColor.'"><td>'.$ungraded{$res}{title}.'</td><td>'.$ungraded{$res}{count}.'</td></tr>');
+ my ($map,$id,$url)=&Apache::lonnet::decode_symb($res);
+ my $linkurl=&Apache::lonnet::clutter($url);
+ $linkurl .= '?symb='.&Apache::lonnet::escape($res);
+
+ $r->print('<tr bgcolor="'.$rowColor.'"><td><a href="'.$linkurl.'"><small>'.$ungraded{$res}{title}.'</small></a></td><td align="right"><small>'.$ungraded{$res}{count}.'</small></td></tr>');
$rowNum ++;
}
} else {
$r->print('<tr><td bgcolor="#ffffff"><br><center><i><b><small> No problems require handgrading </small><br><br></b></i></td></tr>');
}
$r->print('</table></td></tr></table></td></tr></table><br />');
+
+## BOMBS ##
+ $r->print(<<"END");
+ <table border="0" cellpadding="0" cellspacing="0" bgcolor="#000000" width="100%">
+ <tr>
+ <td>
+ <table border="0" cellpadding="1" cellspacing="1" bgcolor="#000000" width="100%">
+ <tr>
+ <td bgcolor="$tabbg"><b>Problems with errors</b></td>
+ </tr>
+ <tr>
+ <td bgcolor="#ffffff">
+ <table width="100%" cellspacing="0" cellpadding="0" border="0">
+END
+ my $bombnum = 0;
+ if (@bombs > 0) {
+# @bombs = sort { &cmp_title($a,$b) } @bombs;
+ foreach my $bomb (@bombs) {
+ if ($bombnum %2 == 1) {
+ $rowColor = $rowColor1;
+ } else {
+ $rowColor = $rowColor2;
+ }
+ $r->print('<tr bgcolor="'.$rowColor.'"><td>'.$bombed{$bomb}{errorlink}.'</td></tr>');
+ $bombnum ++;
+ }
+ } else {
+ $r->print('<tr><td bgcolor="#ffffff"><br /><center><b><i><small>No problems with errors</small></i></b></center><br /></td></tr>');
+ }
+ $r->print('</table></td></tr></table></td></tr></table><br />');
+
$r->print('</td><td width="5%"> </td><td align="left" valign="top" width-"50%">');
## MESSAGES ##
@@ -314,6 +312,7 @@
<table width="100%" cellspacing="0" cellpadding="0" border="0">
END
if ($msgcount > 0) {
+ $r->print('<tr bgcolor="#cccccc"><td><b><small>'.&mt('Number').'</small></b></td><td><b><small>'.&mt('Subject').'</small></b></td><td><b><small>'.&mt('Sender').'</small></b></td><td><b><small>'.&mt('Date/Time').'</small></b></td></tr>');
my $rowNum = 0;
my $mailcount = 1;
foreach my $msg (@newmsgs) {
@@ -322,7 +321,7 @@
} else {
$rowColor = $rowColor2;
}
- $r->print('<tr><td bgcolor="'.$rowColor.'" valign="top"><small>'.$mailcount.'. <small></td><td valign="top"><small><a href="/adm/mail?">'.$msg->{'shortsub'}.'</a> </small></td><td valign="top"><small> '.$msg->{'from'}.'@'.$msg->{'fromdom'}.' </small></td><td valign="top"><small>'.$msg->{'sendtime'}.'</small></td></tr>');
+ $r->print('<tr bgcolor="'.$rowColor.'"><td valign="top"><small>'.$mailcount.'. <small></td><td valign="top"><small><a href="/adm/mail?">'.$msg->{'shortsub'}.'</a> </small></td><td valign="top"><small> '.$msg->{'from'}.'@'.$msg->{'fromdom'}.' </small></td><td valign="top"><small>'.$msg->{'sendtime'}.'</small></td></tr>');
$rowNum ++;
$mailcount ++;
}
@@ -345,6 +344,7 @@
END
if ($critmsgcount > 0) {
+ $r->print('<tr bgcolor="#cccccc"><td><b><small>Number</small></b></td><td><b><small>Subject</small></b></td><td><b><small>Sender</small></b></td><td><b><small>Date/Time</small></b></td></tr>');
my $rowNum = 0;
my $mailcount = 1;
foreach my $msg (@critmsgs) {
@@ -353,7 +353,7 @@
} else {
$rowColor = $rowColor2;
}
- $r->print('<tr><td bgcolor="'.$rowColor.'" valign="top"><small>'.$mailcount.'. <small></td><td valign="top"><small><a href="/adm/mail?">'.$msg->{'shortsub'}.'</a> </small></td><td valign="top"><small> '.$msg->{'from'}.'@'.$msg->{'fromdom'}.' </small></td><td valign="top"><small>'.$msg->{'sendtime'}.'</small></td></tr>');
+ $r->print('<tr bgcolor="'.$rowColor.'"><td valign="top"><small>'.$mailcount.'. <small></td><td valign="top"><small><a href="/adm/mail?">'.$msg->{'shortsub'}.'</a> </small></td><td valign="top"><small> '.$msg->{'from'}.'@'.$msg->{'fromdom'}.' </small></td><td valign="top"><small>'.$msg->{'sendtime'}.'</small></td></tr>');
$rowNum ++;
$mailcount ++;
}
@@ -363,35 +363,6 @@
$r->print('</table></td></tr></table></td></tr></table><br />');
-## BOMBS ##
- $r->print(<<END);
- <table border="0" cellpadding="0" cellspacing="0" bgcolor="#000000" width="100%">
- <tr>
- <td>
- <table border="0" cellpadding="1" cellspacing="1" bgcolor="#000000" width="100%">
- <tr>
- <td bgcolor="$tabbg"><b>Problems with errors</b></td>
- </tr>
- <tr>
- <td bgcolor="#ffffff">
- <table width="100%" cellspacing="0" cellpadding="0" border="0">
-END
- my $bombnum = 0;
- if (@bombs > 0) {
-# @bombs = sort { &cmp_title($a,$b) } @bombs;
- foreach my $bomb (@bombs) {
- if ($bombnum %2 == 1) {
- $rowColor = $rowColor1;
- } else {
- $rowColor = $rowColor2;
- }
- $r->print('<tr bgcolor="'.$rowColor.'"><td>'.$bombed{$bomb}{errorlink}.'</td></tr>');
- $bombnum ++;
- }
- } else {
- $r->print('<tr><td bgcolor="#ffffff"><br /><center><b><i><small>No problems with errors</small></i></b></center><br /></td></tr>');
- }
- $r->print('</table></td></tr></td></tr></table>');
$r->print('
</table>
</td>
@@ -428,7 +399,6 @@
if ($ressymb =~ m-___adm/\w+/\w+/\d+/bulletinboard$-) {
$ressymb = $resource->wrap_symb();
}
-
# Check for unread discussion postings
if (defined($discussiontime{$ressymb})) {
push(@discussions,$ressymb);
@@ -559,3 +529,4 @@
return $atitle cmp $btitle;
}
+1;
--raeburn1113225240--