self-service improvements: DIDs, RT10885
[freeside.git] / httemplate / elements / select-did.html
1 <%doc>
2
3 Example:
4
5   include('/elements/select-did.html',
6             #can't actuall change from phonenum yet# 'field'   => 'phonenum',
7
8             'svcpart' => 5,
9             #OR
10             'object' => $svc_phone,
11          );
12
13 </%doc>
14 % if ( $use_selector ) {
15
16     <TABLE>
17
18       <TR>
19         <TD>
20           <% include('/elements/select-state.html',
21                        'prefix'        => 'phonenum_', #$field.'_',
22                        'country'       => $country,
23                        'disable_empty' => 0,
24                        'empty_label'   => 'Select state',
25                     )
26           %>
27         </TD>
28         <TD>
29           <% include('/elements/select-areacode.html',
30                        'state_prefix' => 'phonenum_', #$field.'_',
31                        'svcpart'      => $svcpart,
32                        'empty'        => 'Select area code',
33                     )
34           %>
35         </TD>
36         <TD>
37           <% include('/elements/select-exchange.html',
38                        'svcpart' => $svcpart,
39                        'empty'   => 'Select exchange',
40                     )
41           %>
42         </TD>
43         <TD>
44           <% include('/elements/select-phonenum.html',
45                        'svcpart' => $svcpart,
46                        'empty'   => 'Select phone number',
47                        'bulknum' => $bulknum,
48                     )
49           %>
50         </TD>
51       </TR>
52
53       <TR>
54         <TD><FONT SIZE="-1">State</FONT></TD>
55         <TD><FONT SIZE="-1">Area code</FONT></TD>
56         <TD><FONT SIZE="-1">City / Exchange</FONT></TD>
57         <TD><FONT SIZE="-1">Phone number</FONT></TD>
58       </TR>
59
60     </TABLE>
61 %       if ( $bulknum ) {
62             <div id="bulkdid" style="padding-top: 11px">
63 %               my $i;
64 %               for($i=0; $i < $bulknum; $i++) {
65                     <div id="bulkdid_<%$i%>" style="display: none">
66                         <input type="checkbox" id="checkbox_bulkdid_<%$i%>"
67                             name="bulkdid" value="">
68                         <label for="checkbox_bulkdid_<%$i%>" 
69                             id="label_bulkdid_<%$i%>"></label>
70                     </div>
71 %               }
72             </div>
73 %       }
74
75 % } else {
76
77     <% include( '/elements/input-text.html', %opt, 'type'=>'text' ) %>
78
79 % }
80 <%init>
81
82 my %opt = @_;
83
84 my $conf = new FS::Conf;
85 my $country = $conf->config('countrydefault') || 'US';
86
87 #false laziness w/tr-select-did.html
88 #XXX make sure this comes through on errors too
89 my $svcpart  = $opt{'svcpart'}
90             || $opt{'object'}->svcpart
91             || $opt{'object'}->cust_svc->svcpart;
92
93 my $part_svc = qsearchs('part_svc', { 'svcpart'=>$svcpart } );
94 die "unknown svcpart $svcpart" unless $part_svc;
95
96 my @exports = $part_svc->part_export_did;
97 if ( scalar(@exports) > 1 ) {
98   die "more than one DID-providing export attached to svcpart $svcpart";
99 }
100
101 my $use_selector = scalar(@exports) ? 1 : 0;
102
103 my $bulknum = $opt{'bulknum'} || 0;
104
105 #my $field = $opt{'field'} || 'phonenum';
106
107 </%init>