[vhffs-dev] [1775] No more HTML::Template in cvs/index |
[ Thread Index |
Date Index
| More vhffs.org/vhffs-dev Archives
]
Revision: 1775
Author: beuss
Date: 2011-05-19 13:10:00 +0200 (Thu, 19 May 2011)
Log Message:
-----------
No more HTML::Template in cvs/index
Modified Paths:
--------------
trunk/vhffs-panel/cvs/index.pl
Modified: trunk/vhffs-panel/cvs/index.pl
===================================================================
--- trunk/vhffs-panel/cvs/index.pl 2011-05-19 11:09:53 UTC (rev 1774)
+++ trunk/vhffs-panel/cvs/index.pl 2011-05-19 11:10:00 UTC (rev 1775)
@@ -32,12 +32,12 @@
use utf8;
use POSIX qw(locale_h);
-use HTML::Template;
use locale;
use Locale::gettext;
use strict;
use lib '%VHFFS_LIB_DIR%';
+use Vhffs::Group;
use Vhffs::Panel::Main;
use Vhffs::Panel::Cvs;
@@ -47,26 +47,31 @@
exit 0 unless $session;
my $vhffs = $panel->{vhffs};
-my $cgi = $panel->{'cgi'};
+my $cgi = $panel->{cgi};
+my $user = $panel->{user};
my $group = Vhffs::Group::get_by_groupname( $vhffs , $cgi->param('group') );
if( ! defined($group) ) {
- $panel->set_title( gettext('Error') );
- $panel->add_error( gettext('You have to select a group first') );
- $panel->build;
- $panel->display;
+ $panel->render('misc/message.tt', { message => gettext('You have to select a group first') });
} else {
- # Group is in session => access is granted for user and group is activated
- # no need to check
+ if($group->get_status != Vhffs::Constants::ACTIVATED) {
+ $panel->render( 'misc/message.tt', { message => gettext('This group is not activated yet') } );
+ } elsif( ! $user->can_modify( $group ) ) {
+ $panel->render('misc/message.tt', { message => gettext( 'You\'re not allowed to do this (ACL rights)' ) } );
+ }
+
$panel->set_title( sprintf(gettext('CVS repositories for %s'), $group->get_groupname) );
my $cvs = Vhffs::Panel::Cvs::getall_per_group( $vhffs, $group->get_gid );
if($cvs < 0) {
- $panel->add_error( gettext('Unable to get CVS repositories') );
- $panel->build;
- $panel->display;
+ $panel->render('misc/message.tt', { message => gettext('Unable to get CVS repositories') } );
} else {
- $panel->build( $panel->create_service_index('cvs', $cvs ) );
- $panel->display;
+ $panel->render( 'misc/service-index.tt', {
+ label => 'CVS repositories',
+ group => $group,
+ list => $cvs,
+ help_url => $vhffs->get_config->get_service('cvs')->{url_doc},
+ type => 'cvs'
+ });
}
}