[vhffs-dev] [1762] No more HTML::Template in mailinglist/index |
[ Thread Index |
Date Index
| More vhffs.org/vhffs-dev Archives
]
Revision: 1762
Author: beuss
Date: 2011-05-17 13:22:35 +0200 (Tue, 17 May 2011)
Log Message:
-----------
No more HTML::Template in mailinglist/index
Modified Paths:
--------------
trunk/vhffs-panel/mailinglist/index.pl
Modified: trunk/vhffs-panel/mailinglist/index.pl
===================================================================
--- trunk/vhffs-panel/mailinglist/index.pl 2011-05-16 20:51:19 UTC (rev 1761)
+++ trunk/vhffs-panel/mailinglist/index.pl 2011-05-17 11:22:35 UTC (rev 1762)
@@ -32,7 +32,6 @@
use utf8;
use POSIX qw(locale_h);
-use HTML::Template;
use locale;
use Locale::gettext;
use strict;
@@ -48,25 +47,30 @@
my $vhffs = $panel->{vhffs};
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('Mailing lists for %s'), $group->get_groupname) );
+
my $mls = Vhffs::Panel::MailingList::getall_per_group( $vhffs, $group->get_gid );
if($mls < 0) {
- $panel->add_error( gettext('Unable to get mailing lists') );
- $panel->build;
- $panel->display;
+ $panel->render( 'misc/message.tt', { message => gettext('Unable to get SVN repositories') } );
} else {
- $panel->build( $panel->create_service_index('mailinglist', $mls) );
- $panel->display;
+ $panel->render( 'misc/service-index.tt', {
+ label => 'SVN repositories',
+ group => $group,
+ list => $mls,
+ type => 'mailinglist'
+ });
}
}