From 3ef62a0570055da710328937e7f65dbb2c027c62 Mon Sep 17 00:00:00 2001 From: ivan Date: Mon, 12 Aug 2002 06:17:09 +0000 Subject: import rt 2.0.14 --- rt/lib/RT/Groups.pm | 100 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 100 insertions(+) create mode 100755 rt/lib/RT/Groups.pm (limited to 'rt/lib/RT/Groups.pm') diff --git a/rt/lib/RT/Groups.pm b/rt/lib/RT/Groups.pm new file mode 100755 index 0000000..f44f1fd --- /dev/null +++ b/rt/lib/RT/Groups.pm @@ -0,0 +1,100 @@ +#$Header: /home/cvs/cvsroot/freeside/rt/lib/RT/Groups.pm,v 1.1 2002-08-12 06:17:07 ivan Exp $ + +=head1 NAME + + RT::Groups - a collection of RT::Group objects + +=head1 SYNOPSIS + + use RT::Groups; + my $groups = $RT::Groups->new($CurrentUser); + $groups->LimitToReal(); + while (my $group = $groups->Next()) { + print $group->Id ." is a group id\n"; + } + +=head1 DESCRIPTION + + +=head1 METHODS + + +=begin testing + +ok (require RT::TestHarness); +ok (require RT::Groups); + +=end testing + +=cut + +package RT::Groups; +use RT::EasySearch; +use RT::Groups; + +@ISA= qw(RT::EasySearch); + +# {{{ sub _Init + +sub _Init { + my $self = shift; + $self->{'table'} = "Groups"; + $self->{'primary_key'} = "id"; + + $self->OrderBy( ALIAS => 'main', + FIELD => 'Name', + ORDER => 'ASC'); + + + return ( $self->SUPER::_Init(@_)); +} +# }}} + +# {{{ LimitToReal + +=head2 LimitToReal + +Make this groups object return only "real" groups, which can be +granted rights and have members assigned to them + +=cut + +sub LimitToReal { + my $self = shift; + + return ($self->Limit( FIELD => 'Pseudo', + VALUE => '0', + OPERATOR => '=')); + +} +# }}} + +# {{{ sub LimitToPseudo + +=head2 LimitToPseudo + +Make this groups object return only "pseudo" groups, which can be +granted rights but whose membership lists are determined dynamically. + +=cut + + sub LimitToPseudo { + my $self = shift; + + return ($self->Limit( FIELD => 'Pseudo', + VALUE => '1', + OPERATOR => '=')); + +} +# }}} + +# {{{ sub NewItem +sub NewItem { + my $self = shift; + return (RT::Group->new($self->CurrentUser)); +} +# }}} + + +1; + -- cgit v1.1 From ded0451e9582df33cae6099a2fb72b4ea25076cf Mon Sep 17 00:00:00 2001 From: ivan Date: Tue, 15 Jul 2003 13:30:43 +0000 Subject: reverting to vendor branch rt 3.0.4, hopefully --- rt/lib/RT/Groups.pm | 135 +++++++++++++++++++++++++++++----------------------- 1 file changed, 75 insertions(+), 60 deletions(-) (limited to 'rt/lib/RT/Groups.pm') diff --git a/rt/lib/RT/Groups.pm b/rt/lib/RT/Groups.pm index f44f1fd..29f12a5 100755 --- a/rt/lib/RT/Groups.pm +++ b/rt/lib/RT/Groups.pm @@ -1,100 +1,115 @@ -#$Header: /home/cvs/cvsroot/freeside/rt/lib/RT/Groups.pm,v 1.1 2002-08-12 06:17:07 ivan Exp $ +# BEGIN LICENSE BLOCK +# +# Copyright (c) 1996-2003 Jesse Vincent +# +# (Except where explictly superceded by other copyright notices) +# +# This work is made available to you under the terms of Version 2 of +# the GNU General Public License. A copy of that license should have +# been provided with this software, but in any event can be snarfed +# from www.gnu.org. +# +# This work is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# Unless otherwise specified, all modifications, corrections or +# extensions to this work which alter its source code become the +# property of Best Practical Solutions, LLC when submitted for +# inclusion in the work. +# +# +# END LICENSE BLOCK +# Autogenerated by DBIx::SearchBuilder factory (by ) +# WARNING: THIS FILE IS AUTOGENERATED. ALL CHANGES TO THIS FILE WILL BE LOST. +# +# !! DO NOT EDIT THIS FILE !! +# + +use strict; -=head1 NAME - RT::Groups - a collection of RT::Group objects +=head1 NAME + RT::Groups -- Class Description + =head1 SYNOPSIS - use RT::Groups; - my $groups = $RT::Groups->new($CurrentUser); - $groups->LimitToReal(); - while (my $group = $groups->Next()) { - print $group->Id ." is a group id\n"; - } + use RT::Groups =head1 DESCRIPTION =head1 METHODS - -=begin testing - -ok (require RT::TestHarness); -ok (require RT::Groups); - -=end testing - =cut package RT::Groups; -use RT::EasySearch; -use RT::Groups; -@ISA= qw(RT::EasySearch); +use RT::SearchBuilder; +use RT::Group; -# {{{ sub _Init +use vars qw( @ISA ); +@ISA= qw(RT::SearchBuilder); -sub _Init { - my $self = shift; - $self->{'table'} = "Groups"; - $self->{'primary_key'} = "id"; - $self->OrderBy( ALIAS => 'main', - FIELD => 'Name', - ORDER => 'ASC'); +sub _Init { + my $self = shift; + $self->{'table'} = 'Groups'; + $self->{'primary_key'} = 'id'; - return ( $self->SUPER::_Init(@_)); + return ( $self->SUPER::_Init(@_) ); } -# }}} -# {{{ LimitToReal -=head2 LimitToReal +=item NewItem -Make this groups object return only "real" groups, which can be -granted rights and have members assigned to them +Returns an empty new RT::Group item =cut -sub LimitToReal { +sub NewItem { my $self = shift; + return(RT::Group->new($self->CurrentUser)); +} - return ($self->Limit( FIELD => 'Pseudo', - VALUE => '0', - OPERATOR => '=')); + eval "require RT::Groups_Overlay"; + if ($@ && $@ !~ qr{^Can't locate RT/Groups_Overlay.pm}) { + die $@; + }; -} -# }}} + eval "require RT::Groups_Vendor"; + if ($@ && $@ !~ qr{^Can't locate RT/Groups_Vendor.pm}) { + die $@; + }; -# {{{ sub LimitToPseudo + eval "require RT::Groups_Local"; + if ($@ && $@ !~ qr{^Can't locate RT/Groups_Local.pm}) { + die $@; + }; -=head2 LimitToPseudo -Make this groups object return only "pseudo" groups, which can be -granted rights but whose membership lists are determined dynamically. -=cut - - sub LimitToPseudo { - my $self = shift; - return ($self->Limit( FIELD => 'Pseudo', - VALUE => '1', - OPERATOR => '=')); +=head1 SEE ALSO -} -# }}} +This class allows "overlay" methods to be placed +into the following files _Overlay is for a System overlay by the original author, +_Vendor is for 3rd-party vendor add-ons, while _Local is for site-local customizations. -# {{{ sub NewItem -sub NewItem { - my $self = shift; - return (RT::Group->new($self->CurrentUser)); -} -# }}} +These overlay files can contain new subs or subs to replace existing subs in this module. +If you'll be working with perl 5.6.0 or greater, each of these files should begin with the line -1; + no warnings qw(redefine); + +so that perl does not kick and scream when you redefine a subroutine or variable in your overlay. +RT::Groups_Overlay, RT::Groups_Vendor, RT::Groups_Local + +=cut + + +1; -- cgit v1.1