blob: ef9ef17e739ea1ea5a0a81821d0ea3f07d691993 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
% if ( $hide ) {
<tr style="display: none"><td>
<INPUT TYPE="hidden" NAME="<% $opt{field} %>" VALUE="<% $opt{curr_value}%>">
</td></tr>
% } else {
<& tr-select-table.html,
'table' => 'svc_acct', # for now
'name_col' => 'email',
'order_by' => 'order by username',
'empty_label' => ' ',
%select_hash,
%opt
&>
% }
<%init>
my %opt = @_;
my $pkgnum = $opt{pkgnum};
my $svcpart = $opt{svcpart};
my $field = $opt{'field'} ||= 'forward_svcnum';
my $part_svc = FS::part_svc->by_key($svcpart);
# kludgey assumptions for now:
# - this is only used to route DIDs to their real destinations
# - which is a svc_acct
# - in the same package (part_export::svc_with_role assumes this)
# - and shares an export
my $cust_pkg = FS::cust_pkg->by_key($pkgnum);
my @svcparts;
foreach my $part_export ( $part_svc->part_export ) {
foreach my $export_svc ( $part_export->export_svc ) {
push @svcparts, $export_svc->svcpart;
}
}
$pkgnum =~ /^(\d+)$/ or die "bad pkgnum $pkgnum";
my %select_hash = (
'addl_from' => ' JOIN cust_svc USING (svcnum) ',
'extra_sql' => "WHERE pkgnum = $pkgnum AND svcpart IN(".
join(',', @svcparts) . ")"
);
my $hide = 0;
$hide = 1 if $part_svc->part_svc_column($field) eq 'F';
$hide = 1 if !@svcparts;
</%init>
|