af8d59513e4d608144fbed5983b287e6c5a1e989
[freeside.git] / httemplate / elements / select-did.html
1 <%doc>
2
3 Example:
4
5   include('/elements/select-did.html',
6             '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                        'country'       => $country,
22                        'disable_empty' => 0,
23                        'empty_label'   => 'Select state',
24                     )
25           %>
26         </TD>
27         <TD>
28           <% include('/elements/select-areacode.html',
29                        'svcpart' => $svcpart,
30                        'empty'   => 'Select area code',
31                     )
32           %>
33         </TD>
34         <TD>
35           <% include('/elements/select-exchange.html',
36                        'svcpart' => $svcpart,
37                        'empty'   => 'Select exchange',
38                     )
39           %>
40         </TD>
41         <TD>
42           <% include('/elements/select-phonenum.html',
43                        'svcpart' => $svcpart,
44                        'empty'   => 'Select phone number',
45                     )
46           %>
47         </TD>
48       </TR>
49
50       <TR>
51         <TD><FONT SIZE="-1">State</FONT></TD>
52         <TD><FONT SIZE="-1">Area code</FONT></TD>
53         <TD><FONT SIZE="-1">City / Exchange</FONT></TD>
54         <TD><FONT SIZE="-1">Phone number</FONT></TD>
55       </TR>
56
57     </TABLE>
58
59 % } else {
60
61     <% include( '/elements/input-text.html', %opt, 'type'=>'text' ) %>
62
63 % }
64 <%init>
65
66 my %opt = @_;
67
68 my $conf = new FS::Conf;
69 my $country = $conf->config('countrydefault') || 'US';
70
71 #false laziness w/tr-select-did.html
72 #XXX make sure this comes through on errors too
73 my $svcpart  = $opt{'svcpart'}
74             || $opt{'object'}->svcpart
75             || $opt{'object'}->cust_svc->svcpart;
76
77 my $part_svc = qsearchs('part_svc', { 'svcpart'=>$svcpart } );
78 die "unknown svcpart $svcpart" unless $part_svc;
79
80 my @exports = $part_svc->part_export_did;
81 if ( scalar(@exports) > 1 ) {
82   die "more than one DID-providing export attached to svcpart $svcpart";
83 }
84
85 my $use_selector = scalar(@exports) ? 1 : 0;
86
87 </%init>