X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=rt%2Flib%2FRT%2FGroups.pm;h=29f12a5a0941eeee5e7b57cb3213beca7c282540;hp=f44f1fdb3b39fb3d59f2ab8dc24adbe2a55ad0ae;hb=945721f48f74d5cfffef7c7cf3a3d6bc2521f5dd;hpb=3ef62a0570055da710328937e7f65dbb2c027c62 diff --git a/rt/lib/RT/Groups.pm b/rt/lib/RT/Groups.pm index f44f1fdb3..29f12a5a0 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;