Merge branch 'master' of git.freeside.biz:/home/git/freeside
[freeside.git] / httemplate / edit / process / reg_code.cgi
1 %unless ( ref($error) ) {
2 %  $cgi->param('error'. $error );
3 <% $cgi->redirect(popurl(3). "edit/reg_code.cgi?". $cgi->query_string ) %>
4 % } else { 
5
6 <% include("/elements/header.html","$num registration codes generated for ". $agent->agent, menubar(
7   'View all agents' => popurl(3). 'browse/agent.cgi',
8 ) ) %>
9
10 <PRE><FONT SIZE="+1">
11 % foreach my $code ( @$error ) { 
12   <% $code %>
13 % } 
14 </FONT></PRE>
15
16 <% include('/elements/footer.html') %>
17 % } 
18 <%init>
19
20 die "access denied"
21   unless $FS::CurrentUser::CurrentUser->access_right('Configuration');
22
23 $cgi->param('agentnum') =~ /^(\d+)$/
24   or errorpage('illegal agentnum '. $cgi->param('agentnum'));
25 my $agentnum = $1;
26 my $agent = qsearchs('agent', { 'agentnum' => $agentnum } );
27
28 my $error = '';
29
30 my $num = 0;
31 if ( $cgi->param('num') =~ /^\s*(\d+)\s*$/ ) {
32   $num = $1;
33 } else {
34   $error = 'Illegal number of codes: '. $cgi->param('num');
35 }
36
37 my @pkgparts = 
38   map  { /^pkgpart(.*)$/; $1 }
39   grep { $cgi->param($_) }
40   grep { /^pkgpart/ }
41   $cgi->param;
42
43 $error ||= $agent->generate_reg_codes($num, \@pkgparts);
44
45 </%init>