Merge branch 'master' of https://github.com/jgoodman/Freeside
[freeside.git] / FS / FS / part_referral.pm
index c94c57e..e4a5823 100644 (file)
@@ -1,9 +1,9 @@
 package FS::part_referral;
+use base qw(FS::Record);
 
 use strict;
 use vars qw( @ISA $setup_hack );
-use FS::Record qw( qsearch qsearchs dbh );
-use FS::agent;
+use FS::Record qw( dbh qsearch ); #qsearchs );
 
 @ISA = qw( FS::Record );
 $setup_hack = 0;
@@ -115,13 +115,6 @@ sub check {
 
 Returns the associated agent for this referral, if any, as an FS::agent object.
 
-=cut
-
-sub agent {
-  my $self = shift;
-  qsearchs('agent', { 'agentnum' => $self->agentnum } );
-}
-
 =back
 
 =head1 CLASS METHODS
@@ -163,10 +156,16 @@ simply using rather than editing advertising sources).
 
 sub all_part_referral {
   my $self = shift;
+  my $global = @_ ? shift : '';
+  my $disabled = @_ ? shift : '';
+
+  my $hashref = $disabled ? {} : { 'disabled' => '' };
+  my $and = $disabled ? ' WHERE ' : ' AND ';
 
   qsearch({
     'table'     => 'part_referral',
-    'extra_sql' => ' WHERE '. $self->acl_agentnum_sql(@_). ' ORDER BY refnum ',
+    'hashref'   => $hashref,
+    'extra_sql' => $and. $self->acl_agentnum_sql($global). ' ORDER BY refnum ',
   });
 
 }