service refactor!
[freeside.git] / httemplate / misc / link.cgi
1 %my %link_field = (
2 %  'svc_acct'    => 'username',
3 %  'svc_domain'  => 'domain',
4 %);
5 %
6 %my %link_field2 = (
7 %  'svc_acct'    => { label => 'Domain',
8 %                     field => 'domsvc',
9 %                     type  => 'select',
10 %                     select_table => 'svc_domain',
11 %                     select_key   => 'svcnum',
12 %                     select_label => 'domain'
13 %                   },
14 %);
15 %
16 %$cgi->param('pkgnum') =~ /^(\d+)$/ or die 'unparsable pkgnum';
17 %my $pkgnum = $1;
18 %$cgi->param('svcpart') =~ /^(\d+)$/ or die 'unparsable svcpart';
19 %my $svcpart = $1;
20 %
21 %my $part_svc = qsearchs('part_svc',{'svcpart'=>$svcpart});
22 %my $svc = $part_svc->getfield('svc');
23 %my $svcdb = $part_svc->getfield('svcdb');
24 %my $link_field = $link_field{$svcdb};
25 %my $link_field2 = $link_field2{$svcdb};
26 %
27
28 <% include("/elements/header.html","Link to existing $svc") %>
29 <FORM ACTION="<% popurl(1) %>process/link.cgi" METHOD=POST>
30 % if ( $link_field ) { 
31
32   <INPUT TYPE="hidden" NAME="svcnum" VALUE="">
33   <INPUT TYPE="hidden" NAME="link_field" VALUE="<% $link_field %>">
34   <% $link_field %> of existing service: <INPUT TYPE="text" NAME="link_value">
35   <BR>
36 % if ( $link_field2 ) { 
37
38     <INPUT TYPE="hidden" NAME="link_field2" VALUE="<% $link_field2->{field} %>">
39     <% $link_field2->{'label'} %> of existing service: 
40 % if ( $link_field2->{'type'} eq 'select' ) { 
41 % if ( $link_field2->{'select_table'} ) { 
42
43         <SELECT NAME="link_value2">
44         <OPTION> </OPTION>
45 % foreach my $r ( qsearch( $link_field2->{'select_table'}, {})) { 
46 % my $key = $link_field2->{'select_key'}; 
47 % my $label = $link_field2->{'select_label'}; 
48
49           <OPTION VALUE="<% $r->$key() %>"><% $r->$label() %></OPTION>
50 % } 
51
52         </SELECT>
53 % } else { 
54
55         Don't know how to process secondary link field for <% $svcdb %>
56         (type=>select but no select_table)
57 % } 
58 % } else { 
59
60       Don't know how to process secondary link field for <% $svcdb %>
61         (unknown type <% $link_field2->{'type'} %>)
62 % } 
63
64     <BR>
65 % } 
66 % } else { 
67
68   Service # of existing service: <INPUT TYPE="text" NAME="svcnum" VALUE="">
69 % } 
70
71
72 <INPUT TYPE="hidden" NAME="pkgnum" VALUE="<% $pkgnum %>">
73 <INPUT TYPE="hidden" NAME="svcpart" VALUE="<% $svcpart %>">
74 <BR><INPUT TYPE="submit" VALUE="Link">
75     </FORM>
76   </BODY>
77 </HTML>