RT# 82949 - changes section name from fees to pricing, better opiton
[freeside.git] / httemplate / edit / process / svc_phone.html
index c1d4b75..09398fd 100644 (file)
@@ -1,4 +1,64 @@
-<%= include( 'elements/svc_Common.html',
-               'table'    => 'svc_phone',
-           )
-%>
+<& elements/svc_Common.html,
+               'table'          => 'svc_phone',
+               'args_callback'  => $args_callback,
+              'value_callback' => $value_callback,
+               'edit_callback'  => $edit_callback,
+               %opt,
+&>
+<%init>
+
+my %opt = ();
+if ( $cgi->param('bulk') ) {
+  $opt{'bulk'}     = 'phonenum';
+
+  my $cust_pkg = qsearchs('cust_pkg', { pkgnum=>scalar($cgi->param('pkgnum')) })
+    or die "unknown pkgnum";
+  my $custnum = $cust_pkg->custnum;
+
+  my $show =
+    $FS::CurrentUser::CurrentUser->default_customer_view =~ /^(jumbo|packages)$/
+      ? ''
+      : ';show=packages';
+  #my $frag = "cust_pkg$pkgnum"; #hack for IE ignoring real #fragment
+  $opt{'redirect'}= popurl(3)."view/cust_main.cgi?custnum=$custnum$show;dummy=";
+}
+
+my $right = $opt{'bulk'} ? 'Bulk provision customer service'
+                         :      'Provision customer service';
+
+die "access denied"
+  unless $FS::CurrentUser::CurrentUser->access_right($right);
+
+$cgi->param('phonenum', $cgi->param('phonenum_manual') )
+  if $cgi->param('phonenum_which') eq 'phonenum_manual';
+
+my $tollfreephonenum = $cgi->param('tollfreephonenum');
+$cgi->param('phonenum',$tollfreephonenum) if $tollfreephonenum =~ /^\d+$/;
+
+my $args_callback = sub {
+  my( $cgi, $object ) = @_;
+
+  my %opt = ();
+  if ( $cgi->param('locationnum') == -1 ) {
+    my $cust_location = FS::cust_location->new({
+      map { $_ => scalar($cgi->param($_)) }
+          qw( custnum address1 address2 city county state zip country )
+    });
+    $opt{'cust_location'} = $cust_location;
+  }
+
+  %opt;
+
+};
+
+my $value_callback = sub {
+  my ($field, $value) = @_;
+  ($field =~ /_date$/) ? parse_datetime($value) : $value;
+};
+
+my $edit_callback = sub {
+  my( $new, $old ) = @_;
+  $new->sip_password( $old->sip_password ) if $new->sip_password eq '*HIDDEN*';
+};
+
+</%init>