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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
|
<& /elements/header-popup.html, mt($title) &>
<& /elements/error.html &>
%# use unsusp_pkg.cgi, the same target as a direct "unsuspend package" link
<FORM NAME="UnholdForm" ACTION="process/unhold_pkg.html" METHOD=POST>
<INPUT TYPE="hidden" NAME="pkgnum" VALUE="<% $pkgnum %>">
<BR>
<% emt('Start billing [_1]', $part_pkg->pkg_comment(cust_pkg => $cust_pkg)) %>
<UL STYLE="padding-left: 3ex; list-style: none; background-color: #cccccc">
<LI>
<& /elements/radio.html,
field => 'when',
id => 'when_now',
value => 'now',
curr_value => $when,
&>
<label for="when_now"><% emt('Immediately') %></label>
</LI>
% if ( $next_bill_date ) {
<LI>
<& /elements/radio.html,
field => 'when',
id => 'when_next_bill_date',
value => 'next_bill_date',
curr_value => $when,
&>
<label for="when_next_bill_date">
<% emt('On the next bill date: [_1]',
time2str($date_format, $next_bill_date) ) %>
</label>
</LI>
% }
<LI>
<& /elements/radio.html,
field => 'when',
id => 'when_date',
value => 'date',
curr_value => $when,
&>
<label for="when_date"> <% emt('On this date:') %> </label>
<& /elements/input-date-field.html,
{ name => 'start_date',
value => $cgi->param('start_date'),
}
&>
</LI>
</UL>
<INPUT TYPE="submit" NAME="submit" VALUE="<% emt('Start billing') %>">
</FORM>
</BODY>
</HTML>
<%init>
my $curuser = $FS::CurrentUser::CurrentUser;
die "access denied"
unless $curuser->access_right('Unsuspend customer package');
my $pkgnum;
if ( $cgi->param('pkgnum') =~ /^(\d+)$/ ) {
$pkgnum = $1;
} else {
die "illegal query ". $cgi->keywords;
}
my $conf = new FS::Conf;
my $date_format = $conf->config('date_format') || '%m/%d/%Y';
my $title = 'Start billing package';
my $cust_pkg = qsearchs({
table => 'cust_pkg',
addl_from => ' JOIN cust_main USING (custnum) ',
hashref => { 'pkgnum' => $pkgnum },
extra_sql => ' AND '. $curuser->agentnums_sql,
}) or die "Unknown pkgnum: $pkgnum";
my $next_bill_date = $cust_pkg->cust_main->next_bill_date;
my $part_pkg = $cust_pkg->part_pkg;
my $when = $cgi->param('when'); # on error
if (!$when) {
if ($next_bill_date) {
$when = 'next_bill_date';
} else {
$when = 'now';
}
}
</%init>
|