'table' => 'svc_phone',
'fields' => [],
'begin_callback' => $begin_callback,
- 'svc_new_callback' => sub {
- my( $cgi, $svc_x, $part_svc, $cust_pkg, $fields, $opt ) = @_;
- $svc_x->locationnum($cust_pkg->locationnum) if $cust_pkg;
- },
- 'svc_edit_callback' => sub {
- my( $cgi, $svc_x, $part_svc, $cust_pkg, $fields, $opt) = @_;
- my $conf = new FS::Conf;
- $svc_x->sip_password('*HIDDEN*') unless $conf->exists('showpasswords');
- },
+ 'svc_new_callback' => $svc_callback,
+ 'svc_edit_callback' => $svc_callback,
+ 'svc_error_callback' => $svc_callback,
&>
<%init>
+my $conf = new FS::Conf;
my $begin_callback = sub {
my( $cgi, $fields, $opt ) = @_;
die "access denied"
unless $FS::CurrentUser::CurrentUser->access_right($right);
- my $conf = new FS::Conf;
-
push @$fields,
'countrycode',
{ field => 'phonenum',
type => 'text',
maxlength => $conf->config('svc_phone-phone_name-max_length'),
},
+ { field => 'forward_svcnum',
+ type => 'select-svc_phone-forward',
+ },
'forwarddst',
'email',
);
},
},
+ { field => 'e911_class',
+ type => 'select',
+ options => [ keys(%{ FS::svc_phone->e911_classes }) ],
+ labels => FS::svc_phone->e911_classes,
+ },
+ { field => 'e911_type',
+ type => 'select',
+ options => [ keys(%{ FS::svc_phone->e911_types }) ],
+ labels => FS::svc_phone->e911_types,
+ },
{ field => 'custnum', type=> 'hidden' }, #for new cust_locations
;
}
type => 'tablebreak-tr-title',
colspan => 8,
},
- { field => 'lnp_status',
- type => 'select-lnp_status',
- },
'lnp_reject_reason',
{ field => 'portable',
type => 'checkbox',
value => 'Carrier Information',
colspan => 8,
},
+ { field => 'sip_server',
+ type => 'select-sip_server',
+ },
{ field => 'sms_carrierid',
label => 'SMS Carrier',
type => 'select-cdr_carrier',
}
-};
+}; # begin_callback
+
+# svc_edit_callback / svc_new_callback
+my $svc_callback = sub {
+ my ($cgi, $svc_x, $part_svc, $cust_pkg, $fields, $opt) = @_;
+
+ push @$fields, {
+ field => 'circuit_svcnum',
+ type => 'select-svc_circuit',
+ cust_pkg => $cust_pkg,
+ part_svc => $part_svc,
+ };
+ if ( $cust_pkg and not $svc_x->svcnum ) {
+ # new service, default to package location
+ $svc_x->set('locationnum', $cust_pkg->locationnum);
+ }
+ if ( not $conf->exists('showpasswords') and $svc_x->svcnum ) {
+ $svc_x->sip_password('*HIDDEN*');
+ }
+};
</%init>