implemented RFEs for the manage committed versions screen for pagination and sorting the versions by date committed

This commit is contained in:
Colin Kuskie 2007-03-13 03:11:17 +00:00
parent 63337dcfb3
commit 2223ce8749
2 changed files with 29 additions and 23 deletions

View file

@ -42,6 +42,8 @@
- Wiki page revisions were not in order (perlDreamer Consulting, LLC) - Wiki page revisions were not in order (perlDreamer Consulting, LLC)
- Spectre misses Sundays (thanks to Todor Kouyoumdjiev, ECoCoMS Ltd.) - Spectre misses Sundays (thanks to Todor Kouyoumdjiev, ECoCoMS Ltd.)
- fix: RollbackVersion (Thanks to Erik Svanberg for the patch) - fix: RollbackVersion (Thanks to Erik Svanberg for the patch)
- rfe: Paginate "manageCommittedVersions" (perlDreamer Consulting, LLC)
- rfe: manageCommittedVersions in reverse chronological order (perlDreamer Consulting, LLC)
7.3.11 7.3.11
- Added an option for enabling coverage tests to testCodebase.pl. - Added an option for enabling coverage tests to testCodebase.pl.

View file

@ -20,6 +20,7 @@ use WebGUI::AdminConsole;
use WebGUI::International; use WebGUI::International;
use WebGUI::VersionTag; use WebGUI::VersionTag;
use WebGUI::HTMLForm; use WebGUI::HTMLForm;
use WebGUI::Paginator;
=head1 NAME =head1 NAME
@ -269,30 +270,33 @@ A reference to the current session.
=cut =cut
sub www_manageCommittedVersions { sub www_manageCommittedVersions {
my $session = shift; my $session = shift;
return $session->privilege->adminOnly() unless ($session->user->isInGroup(3)); return $session->privilege->adminOnly() unless ($session->user->isInGroup(3));
my $ac = WebGUI::AdminConsole->new($session,"versions"); my $ac = WebGUI::AdminConsole->new($session,"versions");
my $i18n = WebGUI::International->new($session,"VersionTag"); my $i18n = WebGUI::International->new($session,"VersionTag");
my $rollback = $i18n->get('rollback'); my $rollback = $i18n->get('rollback');
my $rollbackPrompt = $i18n->get('rollback version tag confirm'); my $rollbackPrompt = $i18n->get('rollback version tag confirm');
$ac->addSubmenuItem($session->url->page('op=editVersionTag'), $i18n->get("add a version tag")); $ac->addSubmenuItem($session->url->page('op=editVersionTag'), $i18n->get("add a version tag"));
$ac->addSubmenuItem($session->url->page('op=manageVersions'), $i18n->get("manage versions")); $ac->addSubmenuItem($session->url->page('op=manageVersions'), $i18n->get("manage versions"));
$ac->addSubmenuItem($session->url->page('op=managePendingVersions'), $i18n->get("manage pending versions")) if ($session->user->isInGroup(3)); $ac->addSubmenuItem($session->url->page('op=managePendingVersions'), $i18n->get("manage pending versions")) if ($session->user->isInGroup(3));
my $output = '<table width="100%" class="content"> my $output = '<table width="100%" class="content">
<tr><th>'.$i18n->get("version tag name").'</th><th>'.$i18n->get("committed on").'</th><th>'.$i18n->get("committed by").'</th><th></th></tr> '; <tr><th>'.$i18n->get("version tag name").'</th><th>'.$i18n->get("committed on").'</th><th>'.$i18n->get("committed by").'</th><th></th></tr> ';
my $sth = $session->db->read("select tagId,name,commitDate,committedBy from assetVersionTag where isCommitted=1"); my $paginator = WebGUI::Paginator->new($session, $session->url->page("op=manageCommittedVersions"));
while (my ($id,$name,$date,$by) = $sth->array) { $paginator->setDataByQuery('select tagId,name,commitDate,committedBy from assetVersionTag where isCommitted=1 ORDER BY commitDate DESC');
my $u = WebGUI::User->new($session,$by); my @versionTagFields = qw/tagId name commitDate committedBy /;
$output .= '<tr> foreach my $versionData (@{ $paginator->getPageData }) {
<td><a href="'.$session->url->page("op=manageRevisionsInTag;tagId=".$id).'">'.$name.'</a></td> my ($id,$name,$date,$by) = @{ $versionData }{@versionTagFields};
<td>'.$session->datetime->epochToHuman($date).'</td> my $u = WebGUI::User->new($session,$by);
<td>'.$u->username.'</td> $output .= '<tr>
<td><a href="'.$session->url->page("proceed=manageCommittedVersions;op=rollbackVersionTag;tagId=".$id).'" onclick="return confirm(\''.$rollbackPrompt.'\');">'.$rollback.'</a></td></tr>'; <td><a href="'.$session->url->page("op=manageRevisionsInTag;tagId=".$id).'">'.$name.'</a></td>
} <td>'.$session->datetime->epochToHuman($date).'</td>
$sth->finish; <td>'.$u->username.'</td>
$output .= '</table>'; <td><a href="'.$session->url->page("proceed=manageCommittedVersions;op=rollbackVersionTag;tagId=".$id).'" onclick="return confirm(\''.$rollbackPrompt.'\');">'.$rollback.'</a></td></tr>';
$ac->setHelp('manage committed versions', 'VersionTag'); }
return $ac->render($output,$i18n->get("committed versions")); $output .= '</table>';
$output .= $paginator->getBarTraditional();
$ac->setHelp('manage committed versions', 'VersionTag');
return $ac->render($output,$i18n->get("committed versions"));
} }
#------------------------------------------------------------------- #-------------------------------------------------------------------