projects
/
freeside.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
agent-virtualize credit card surcharge percentage, RT#72961
[freeside.git]
/
FS
/
FS
/
part_event
/
Action
/
cust_bill_send_agent.pm
diff --git
a/FS/FS/part_event/Action/cust_bill_send_agent.pm
b/FS/FS/part_event/Action/cust_bill_send_agent.pm
index
fcf0007
..
cb13b1f
100644
(file)
--- a/
FS/FS/part_event/Action/cust_bill_send_agent.pm
+++ b/
FS/FS/part_event/Action/cust_bill_send_agent.pm
@@
-7,6
+7,9
@@
sub description {
'Send invoice (email/print/fax) with alternate template, for specific agents';
}
'Send invoice (email/print/fax) with alternate template, for specific agents';
}
+# this event is just cust_bill_send_alternate + an implicit (and inefficient)
+# 'agent' condition
+
sub eventtable_hashref {
{ 'cust_bill' => 1 };
}
sub eventtable_hashref {
{ 'cust_bill' => 1 };
}
@@
-17,6
+20,9
@@
sub option_fields {
type => 'select-agent',
multiple => 1
},
type => 'select-agent',
multiple => 1
},
+ 'modenum' => { label => 'Invoice mode',
+ type => 'select-invoice_mode',
+ },
'agent_templatename' => { label => 'Template',
type => 'select-invoice_template',
},
'agent_templatename' => { label => 'Template',
type => 'select-invoice_template',
},
@@
-24,9
+30,7
@@
sub option_fields {
);
}
);
}
-sub default_weight {
- 50;
-}
+sub default_weight { 50; }
sub do_action {
my( $self, $cust_bill ) = @_;
sub do_action {
my( $self, $cust_bill ) = @_;
@@
-34,10
+38,15
@@
sub do_action {
#my $cust_main = $self->cust_main($cust_bill);
my $cust_main = $cust_bill->cust_main;
#my $cust_main = $self->cust_main($cust_bill);
my $cust_main = $cust_bill->cust_main;
+ my %agentnums = map { $_=>1 } split(/\s*,\s*/, $self->option('agentnum'));
+ if (keys(%agentnums) and !exists($agentnums{$cust_main->agentnum})) {
+ return;
+ }
+
+ $cust_bill->set('mode' => $self->option('modenum'));
$cust_bill->send(
$cust_bill->send(
- $self->option('agent_templatename'),
- [ split(/\s*,\s*/, $self->option('agentnum') ) ],
- $self->option('agent_invoice_from'),
+ 'template' => $self->option('agent_templatename'),
+ 'from' => $self->option('agent_invoice_from'),
);
}
);
}