blob: 5949a4dc0fcaccdb75258ee532cfe55f1c654d7e (
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
|
<% include('elements/svc_Common.html',
'table' => $table,
'post_url' => popurl(1). "process/svc_Common.html",
%opt,
)
%>
<%init>
die "access denied"
unless $FS::CurrentUser::CurrentUser->access_right('Provision customer service'); #something else more specific?
# false laziness w/view/svc_Common.html
$cgi->param('svcdb') =~ /^(svc_\w+)$/ or die "unparsable svcdb";
my $table = $1;
require "FS/$table.pm";
my %opt;
if ( UNIVERSAL::can("FS::$table", 'table_info') ) {
$opt{'name'} = "FS::$table"->table_info->{'name'};
my $fields = "FS::$table"->table_info->{'fields'};
my %labels = map { $_ => ( ref($fields->{$_})
? $fields->{$_}{'label'}
: $fields->{$_}
);
}
keys %$fields;
$opt{'labels'} = \%labels;
#transform FS::svc_* table_info's structure into one edit.html likes
delete $fields->{svcnum};
$opt{'fields'} = [ map { ref $fields->{$_}
? { field => $_,
%{ $fields->{$_} }
}
: $_
} keys %$fields
];
}
</%init>
|