use strict;
use FS::Record qw( qsearch qsearchs );
use FS::contact;
+use FS::phone_type;
=head1 NAME
qsearchs( 'contact', { 'contactnum' => $self->contactnum } );
}
+sub phone_type {
+ my $self = shift;
+ qsearchs('phone_type', { 'phonetypenum' => $self->phonetypenum } );
+}
+
+sub typename {
+ my $self = shift;
+ $self->phone_type->typename;
+}
+
=back
=head1 BUGS
</%def>
<%def phones>
- <TR>
- <TD ALIGN="right" VALIGN="top"><% mt('Phones') %></TD>
- <TD COLSPAN=6>
-
- <TABLE CELLSPACING=0 CELLPADDING=0>
- <TR>
- <TD>
- <INPUT TYPE="text" NAME="<%$pre%>daytime" VALUE="<% $cust_main->get($pre.'daytime') %>" SIZE=18 onChange="<% $onchange %>" <%$disabled%> <%$style%>>
- <BR><FONT SIZE=-1><% $daytime_label %></FONT>
- </TD>
- <TD> </TD>
- <TD>
- <INPUT TYPE="text" NAME="<%$pre%>night" VALUE="<% $cust_main->get($pre.'night') %>" SIZE=18 onChange="<% $onchange %>" <%$disabled%> <%$style%>>
- <BR><FONT SIZE=-1><% $night_label %></FONT>
- </TD>
- <TD> </TD>
- <TD>
- <INPUT TYPE="text" NAME="<%$pre%>mobile" VALUE="<% $cust_main->get($pre.'mobile') %>" SIZE=18 onChange="<% $onchange %>" <%$disabled%> <%$style%>>
- <BR><FONT SIZE=-1><% $mobile_label %></FONT>
- </TD>
- </TR>
- </TABLE>
- </TD>
- </TR>
+ <& /elements/tr-cust_main-phones.html,
+ 'prefix' => $pre,
+ 'cust_main' => $cust_main,
+ 'onchange' => $onchange,
+ 'disabled' => $disabled,
+ 'style' => $style,
+ &>
</%def>
<%def fax>
</%once>
<%shared>
-my( %opt, $cust_main, $pre, $onchange, $disabled, @style, $style,
- $daytime_label, $night_label, $mobile_label,
- );
+my( %opt, $cust_main, $pre, $onchange, $disabled, @style, $style );
</%shared>
<%init>
$opt{censustract} ||= $cust_main->censustract;
-$daytime_label = FS::Msgcat::_gettext('daytime') =~ /^(daytime)?$/
- ? 'Day'
- : FS::Msgcat::_gettext('daytime');
-$night_label = FS::Msgcat::_gettext('night') =~/^(night)?$/
- ? 'Night'
- : FS::Msgcat::_gettext('night') || 'Night';
-$mobile_label = FS::Msgcat::_gettext('mobile') =~/^(mobile)?$/
- ? 'Mobile'
- : FS::Msgcat::_gettext('mobile') || 'Mobile';
-
my $stateid_label = FS::Msgcat::_gettext('stateid') =~ /^(stateid)?$/
? 'Driver’s License'
: FS::Msgcat::_gettext('stateid') || 'Driver’s License';
--- /dev/null
+ <TR>
+ <TD ALIGN="right" VALIGN="top"><% mt('Phones') %></TD>
+ <TD COLSPAN=6>
+
+ <TABLE CELLSPACING=0 CELLPADDING=0>
+ <TR>
+ <TD>
+ <INPUT TYPE="text" NAME="<%$pre%>daytime" VALUE="<% $cust_main->get($pre.'daytime') %>" SIZE=18 onChange="<% $onchange %>" <%$disabled%> <%$style%>>
+ <BR><FONT SIZE=-1><% $daytime_label %></FONT>
+ </TD>
+ <TD> </TD>
+ <TD>
+ <INPUT TYPE="text" NAME="<%$pre%>night" VALUE="<% $cust_main->get($pre.'night') %>" SIZE=18 onChange="<% $onchange %>" <%$disabled%> <%$style%>>
+ <BR><FONT SIZE=-1><% $night_label %></FONT>
+ </TD>
+ <TD> </TD>
+ <TD>
+ <INPUT TYPE="text" NAME="<%$pre%>mobile" VALUE="<% $cust_main->get($pre.'mobile') %>" SIZE=18 onChange="<% $onchange %>" <%$disabled%> <%$style%>>
+ <BR><FONT SIZE=-1><% $mobile_label %></FONT>
+ </TD>
+ </TR>
+ </TABLE>
+ </TD>
+ </TR>
+<%init>
+
+my $daytime_label = FS::Msgcat::_gettext('daytime') =~ /^(daytime)?$/
+ ? 'Day'
+ : FS::Msgcat::_gettext('daytime');
+my $night_label = FS::Msgcat::_gettext('night') =~/^(night)?$/
+ ? 'Night'
+ : FS::Msgcat::_gettext('night') || 'Night';
+my $mobile_label = FS::Msgcat::_gettext('mobile') =~/^(mobile)?$/
+ ? 'Mobile'
+ : FS::Msgcat::_gettext('mobile') || 'Mobile';
+
+my %opt = @_;
+
+my $pre = $opt{'prefix'};
+my $cust_main = $opt{'cust_main'};
+my $onchange = $opt{'onchange'};
+my $disabled = $opt{'disabled'};
+my $style = $opt{'style'};
+
+</%init>
</TD>
</TR>
+% if ( $conf->config_bool('cust_main-require_phone') ) {
+% #XXX should be sticky on errors
+% my $ph_cust_main = FS::cust_main->new({});
+% foreach my $contact_phone ( $cust_contact->contact_phone ) {
+% my $t = $contact_phone->typename;
+% #countrycodes? interface doesn't parse/take em yet
+% $ph_cust_main->daytime( $contact_phone->phonenum ) if $t eq 'Work';
+% $ph_cust_main->night( $contact_phone->phonenum ) if $t eq 'Home';
+% $ph_cust_main->mobile( $contact_phone->phonenum ) if $t eq 'Mobile';
+% $ph_cust_main->fax( $contact_phone->phonenum ) if $t eq 'Fax';
+% }
+
+ <& /elements/tr-cust_main-phones.html,
+ 'cust_main' => $ph_cust_main,
+ &>
+% }
+
</TABLE>
-%#XXX payment info
+%#payment info
%#XXX should be sticky on errors...
<& /edit/cust_main/billing.html, FS::cust_main->new({}),
invoicing_list => [],