summaryrefslogtreecommitdiff
path: root/httemplate/edit/process/svc_phone.html
blob: 27e975568bca6478534940a152f6d46f983699a3 (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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
<& 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 = new FS::cust_location {
      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>