X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fedit%2Fpart_svc.cgi;h=b2862f5a3b4ebe0dd7f77f9e1f6695844207a706;hb=8965012fa53fd05d851d2f5abed4e056ab758797;hp=3292a9b9b3e38391d1f1f910e29b248b6b22ea5f;hpb=f96adaf19c0097ef8c9d6f29a5541b75381cc05d;p=freeside.git
diff --git a/httemplate/edit/part_svc.cgi b/httemplate/edit/part_svc.cgi
index 3292a9b9b..b2862f5a3 100755
--- a/httemplate/edit/part_svc.cgi
+++ b/httemplate/edit/part_svc.cgi
@@ -1,10 +1,17 @@
<%
my $part_svc;
+ my $clone = '';
if ( $cgi->param('error') ) { #error
$part_svc = new FS::part_svc ( {
map { $_, scalar($cgi->param($_)) } fields('part_svc')
} );
+ } elsif ( $cgi->param('clone') && $cgi->param('clone') =~ /^(\d+)$/ ) {#clone
+ #$cgi->param('clone') =~ /^(\d+)$/ or die "malformed query: $query";
+ $part_svc = qsearchs('part_svc', { 'svcpart'=>$1 } )
+ or die "unknown svcpart: $1";
+ $clone = $part_svc->svcpart;
+ $part_svc->svcpart('');
} elsif ( $cgi->keywords ) { #edit
my($query) = $cgi->keywords;
$query =~ /^(\d+)$/ or die "malformed query: $query";
@@ -43,9 +50,9 @@ Disable new orders
svc_acct - Shell accounts, POP mailboxes, SLIP/PPP and ISDN accounts
svc_domain - Domains
-
svc_acct_sm - deprecated (use svc_forward for new installations) Virtual domain mail aliasing.
svc_forward - mail forwarding
svc_www - Virtual domain website
+
svc_broadband - Broadband/High-speed Internet service
@@ -86,15 +93,14 @@ my %defs = (
select_key => 'svcnum',
select_label => 'domain',
},
+ 'usergroup' => {
+ desc =>'ICRADIUS/FreeRADIUS groups',
+ type =>'radius_usergroup_selector',
+ },
},
'svc_domain' => {
'domain' => 'Domain',
},
- 'svc_acct_sm' => {
- 'domuser' => 'domuser@virtualdomain.com',
- 'domuid' => 'UID where domuser@virtualdomain.com mail is forwarded',
- 'domsvc' => 'svcnum from svc_domain for virtualdomain.com',
- },
'svc_forward' => {
'srcsvc' => 'service from which mail is to be forwarded',
'dstsvc' => 'service to which mail is to be forwarded',
@@ -111,11 +117,21 @@ my %defs = (
#'recnum' => '',
#'usersvc' => '',
},
+ 'svc_broadband' => {
+ 'actypenum' => 'This is the actypenum that refers to the type of AC that can be provisioned for this service. This field must be set fixed.',
+ 'speed_down' => 'Maximum download speed for this service in Kbps. 0 denotes unlimited.',
+ 'speed_up' => 'Maximum upload speed for this service in Kbps. 0 denotes unlimited.',
+ 'acnum' => 'acnum of a specific AC that this service is restricted to. Not required',
+ 'ip_addr' => 'IP address. Leave blank for automatic assignment.',
+ 'ip_netmask' => 'Mask length, aka. netmask bits. (Eg. 255.255.255.0 == 24)',
+ 'mac_addr' => 'MAC address which is used by some ACs for access control. Specified by 6 colon seperated hex octets. (Eg. 00:00:0a:bc:1a:2b)',
+ 'location' => 'Defines the physically location at which this service was installed. This is not necessarily the billing address',
+ },
);
my @dbs = $hashref->{svcdb}
? ( $hashref->{svcdb} )
- : qw( svc_acct svc_domain svc_acct_sm svc_forward svc_www );
+ : qw( svc_acct svc_domain svc_forward svc_www svc_broadband );
tie my %svcdb, 'Tie::IxHash', map { $_=>$_ } @dbs;
my $widget = new HTML::Widgets::SelectLayers(
@@ -128,12 +144,36 @@ my %defs = (
'form_checkbox' => [ 'disabled' ],
'layer_callback' => sub {
my $layer = shift;
- my $html = qq!!.
- table(). "
Field
Modifier
";
+ my $html = qq!!;
+
+ my $columns = 3;
+ my $count = 0;
+ my @part_export =
+ map { qsearch( 'part_export', {exporttype => $_ } ) }
+ keys %{FS::part_export::export_info($layer)};
+ $html .= '