[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'
+        });
     }
 }
 


Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/