projects
/
freeside.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
start adding package locations, RT#4499
[freeside.git]
/
FS
/
FS
/
agent.pm
diff --git
a/FS/FS/agent.pm
b/FS/FS/agent.pm
index
4158341
..
ff0a2b1
100644
(file)
--- a/
FS/FS/agent.pm
+++ b/
FS/FS/agent.pm
@@
-10,7
+10,7
@@
use FS::agent_type;
use FS::reg_code;
use FS::TicketSystem;
use FS::reg_code;
use FS::TicketSystem;
-@ISA = qw( FS::Record );
+@ISA = qw( FS::
m2m_Common FS::
Record );
=head1 NAME
=head1 NAME
@@
-48,17
+48,23
@@
from FS::Record. The following fields are currently supported:
=item agent - Text name of this agent
=item agent - Text name of this agent
-=item typenum - Agent type
. See L<FS::agent_type>
+=item typenum - Agent type
(see L<FS::agent_type>)
-=item
prog - For future use.
+=item
ticketing_queueid - Ticketing Queue
-=item freq - For future use.
+=item invoice_template - Invoice template name
+
+=item agent_custnum - Optional agent customer (see L<FS::cust_main>)
=item disabled - Disabled flag, empty or 'Y'
=item disabled - Disabled flag, empty or 'Y'
-=item username - Username for the Agent interface
+=item prog - Deprecated (never used)
+
+=item freq - Deprecated (never used)
-=item _password - Password for the Agent interface
+=item username - (Deprecated) Username for the Agent interface
+
+=item _password - (Deprecated) Password for the Agent interface
=back
=back
@@
-117,6
+123,8
@@
sub check {
|| $self->ut_number('typenum')
|| $self->ut_numbern('freq')
|| $self->ut_textn('prog')
|| $self->ut_number('typenum')
|| $self->ut_numbern('freq')
|| $self->ut_textn('prog')
+ || $self->ut_textn('invoice_template')
+ || $self->ut_foreign_keyn('agent_custnum', 'cust_main', 'custnum' )
;
return $error if $error;
;
return $error if $error;
@@
-155,6
+163,18
@@
sub agent_type {
qsearchs( 'agent_type', { 'typenum' => $self->typenum } );
}
qsearchs( 'agent_type', { 'typenum' => $self->typenum } );
}
+=item agent_cust_main
+
+Returns the FS::cust_main object (see L<FS::cust_main>), if any, for this
+agent.
+
+=cut
+
+sub agent_cust_main {
+ my $self = shift;
+ qsearchs( 'cust_main', { 'custnum' => $self->agent_custnum } );
+}
+
=item pkgpart_hashref
Returns a hash reference. The keys of the hash are pkgparts. The value is
=item pkgpart_hashref
Returns a hash reference. The keys of the hash are pkgparts. The value is
@@
-322,6
+342,17
@@
sub num_pkg_sql {
$sth->fetchrow_arrayref->[0];
}
$sth->fetchrow_arrayref->[0];
}
+=item num_inactive_cust_pkg
+
+Returns the number of inactive customer packages (one-time packages otherwise
+unsuspended/uncancelled) for this agent.
+
+=cut
+
+sub num_inactive_cust_pkg {
+ shift->num_pkg_sql(FS::cust_pkg->inactive_sql);
+}
+
=item num_susp_cust_pkg
Returns the number of suspended customer packages for this agent.
=item num_susp_cust_pkg
Returns the number of suspended customer packages for this agent.