[freeside-commits] freeside/httemplate/elements location.html, 1.10, 1.11 tr-select-cust_location.html, 1.10, 1.11
Erik Levinson
levinse at wavetail.420.am
Sun Dec 5 22:36:04 PST 2010
Update of /home/cvs/cvsroot/freeside/httemplate/elements
In directory wavetail.420.am:/tmp/cvs-serv15417/httemplate/elements
Modified Files:
location.html tr-select-cust_location.html
Log Message:
-tr-select-cust_location.html and elements/location.html: optionally support alternate address format and
optional address
-nearly finished qualifications, RT7111
Index: tr-select-cust_location.html
===================================================================
RCS file: /home/cvs/cvsroot/freeside/httemplate/elements/tr-select-cust_location.html,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -w -d -r1.10 -r1.11
--- tr-select-cust_location.html 4 Dec 2010 03:52:32 -0000 1.10
+++ tr-select-cust_location.html 6 Dec 2010 06:36:02 -0000 1.11
@@ -25,18 +25,26 @@
function locationnum_changed(what) {
var locationnum = what.options[what.selectedIndex].value;
+ if ( locationnum == -2 ) {
+% for (@location_fields, 'city_select') {
+ what.form.<%$_%>.disabled = true;
+ var ftype = what.form.<%$_%>.tagName;
+ if( ftype == 'SELECT') changeSelect(what.form.<%$_%>, '');
+ else what.form.<%$_%>.value = '';
+ what.form.<%$_%>.style.backgroundColor = '#dddddd';
+% }
+ return;
+ }
+
if ( locationnum == -1 ) {
% for (@location_fields, 'city_select') {
what.form.<%$_%>.disabled = false;
what.form.<%$_%>.style.backgroundColor = '#ffffff';
+ var ftype = what.form.<%$_%>.tagName;
+ if( ftype == 'INPUT' ) what.form.<%$_%>.value = '';
% }
- what.form.address1.value = '';
- what.form.address2.value = '';
- what.form.city.value = '';
- what.form.zip.value = '';
-
changeSelect(what.form.country, <% $countrydefault |js_string %>);
country_changed( what.form.country,
@@ -147,6 +155,9 @@
<TD COLSPAN=7>
<SELECT NAME="locationnum" onChange="locationnum_changed(this);">
<OPTION VALUE=""><% $opt{'empty_label'} || '(default service address)' |h %>
+% if ( $opt{'is_optional'} ) {
+ <OPTION VALUE="-2" <% $locationnum == -2 ? 'SELECTED' : ''%>><% $opt{'optional_label'} || '(not required)' |h %>
+% }
% my @locations = $cust_main ? $cust_main->cust_location : ();
% push @locations, $cust_location
% if !$cust_main && $cust_location && $cust_location->locationnum>0;
@@ -170,14 +181,10 @@
'disabled' => $disabled,
'no_asterisks' => 1,
'no_bold' => $opt{'no_bold'},
+ 'alt_format' => $opt{'alt_format'},
)
%>
-<%once>
-
-my @location_fields = qw( address1 address2 city county state zip country );
-
-</%once>
<%init>
my $conf = new FS::Conf;
@@ -206,8 +213,13 @@
my $editable = $cust_main ? 0 : 1; #could use explicit control
my $addnew = $cust_main ? 1 : ( $locationnum>0 ? 0 : 1 );
+my @location_fields = qw( address1 address2 city county state zip country );
+if ( $opt{'alt_format'} ) {
+ push @location_fields, qw( location_type location_number location_kind );
+}
+
my $cust_location;
-if ( $locationnum && $locationnum != -1 ) {
+if ( $locationnum && $locationnum > 0 ) {
$cust_location = qsearchs('cust_location', { 'locationnum' => $locationnum } )
or die "unknown locationnum";
} else {
@@ -230,7 +242,7 @@
or lc($a->address2) cmp lc($b->address2)
};
-my $disabled = ( $locationnum == -1 || ($editable && $locationnum) )
+my $disabled = ( $locationnum < 0 || ($editable && $locationnum) )
? ''
: 'DISABLED';
Index: location.html
===================================================================
RCS file: /home/cvs/cvsroot/freeside/httemplate/elements/location.html,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -w -d -r1.10 -r1.11
--- location.html 12 Mar 2010 03:36:36 -0000 1.10
+++ location.html 6 Dec 2010 06:36:02 -0000 1.11
@@ -31,7 +31,6 @@
>
</TD>
</TR>
-
<TR>
<TD ALIGN="right"><FONT ID="<% $pre %>address2_required" color="#ff0000" <% $address2_label_style %>>*</FONT> <FONT ID="<% $pre %>address2_label" <% $address2_label_style %>><B>Unit #</B></FONT></TD>
<TD COLSPAN=7>
@@ -47,6 +46,46 @@
</TD>
</TR>
+
+% if ( $opt{'alt_format'} ) {
+<TR>
+ <<%$th%> ALIGN="right">Location Type</<%$th%>>
+ <TD><INPUT TYPE="text"
+ NAME="location_type"
+ ID="location_type"
+ VALUE="<% $object->get('location_type') |h %>"
+ SIZE="10"
+ <% $disabled %>
+ <% $style %>
+ >
+ </TD>
+ <TD></TD>
+ <<%$th%> ALIGN="right">Number</<%$th%>>
+ <TD><INPUT TYPE="text"
+ NAME="location_number"
+ ID="location_number"
+ VALUE="<% $object->get('location_number') |h %>"
+ SIZE="5"
+ <% $disabled %>
+ <% $style %>
+ >
+ </TD>
+ <<%$th%> ALIGN="right">Kind</<%$th%>>
+ <TD>
+ <% include('/elements/select.html',
+ 'cgi' => $cgi,
+ 'field' => 'location_kind',
+ 'disabled' => $disabled,
+ 'style' => $style,
+ 'options' => \@location_kind_options,
+ 'labels' => $location_kind_labels,
+ 'curr_value' => $cgi->param('location_kind'),
+ )
+ %>
+ </TD>
+</TR>
+% }
+
<TR>
<<%$th%> ALIGN="right"><%$r%>City</<%$th%>>
<TD WIDTH="1"><% include('/elements/city.html', %select_hash) %></TD>
@@ -155,4 +194,7 @@
my $th = $opt{'no_bold'} ? 'TD' : 'TH';
+my @location_kind_options = ( '', 'R', 'B' );
+my $location_kind_labels = { '' => '', 'R' => 'Residential', 'B' => 'Business' };
+
</%init>
More information about the freeside-commits
mailing list