package FS::UI::Web::small_custview; use strict; use vars qw(@EXPORT_OK @ISA); use Exporter; use HTML::Entities; use FS::Msgcat; use FS::Record qw(qsearchs); use FS::cust_main; @ISA = qw(Exporter); @EXPORT_OK = qw( small_custview ); =item small_custview CUSTNUM || CUST_MAIN_OBJECT, COUNTRYDEFAULT, NOBALANCE_FLAG, URL Sheesh. I did switch to mason, but this is still hanging around. Figure out some better way to sling mason components to self-service & RT. =cut sub small_custview { my $arg = shift; my $countrydefault = shift || 'US'; my $nobalance = shift; my $url = shift; my $cust_main = ref($arg) ? $arg : qsearchs('cust_main', { 'custnum' => $arg } ) or die "unknown custnum $arg"; my $html; $html = qq!View ' if $url; $html .= 'Customer #'. $cust_main->display_custnum. ''. ' - '. ucfirst($cust_main->status). ''; my @part_tag = $cust_main->part_tag; if ( @part_tag ) { $html .= ''; foreach my $part_tag ( @part_tag ) { $html .= ''; } $html .= '
'. 'tagcolor) ? 'STYLE="background-color:#'.$part_tag->tagcolor.'"' : '' ). '>'. encode_entities($part_tag->tagname.': '. $part_tag->tagdesc). ''. '
'; } $html .= ntable('#e8e8e8'). ''. ntable("#cccccc",2). 'Billing
Address'. $cust_main->getfield('last'). ', '. $cust_main->first. '
'; $html .= $cust_main->company. '
' if $cust_main->company; $html .= $cust_main->address1. '
'; $html .= $cust_main->address2. '
' if $cust_main->address2; $html .= $cust_main->city. ', '. $cust_main->state. ' '. $cust_main->zip. '
'; $html .= $cust_main->country. '
' if $cust_main->country && $cust_main->country ne $countrydefault; $html .= ''; if ( $cust_main->daytime && $cust_main->night ) { $html .= ( FS::Msgcat::_gettext('daytime') || 'Day' ). ' '. $cust_main->daytime. '
'. ( FS::Msgcat::_gettext('night') || 'Night' ). ' '. $cust_main->night; } elsif ( $cust_main->daytime || $cust_main->night ) { $html .= $cust_main->daytime || $cust_main->night; } if ( $cust_main->fax ) { $html .= '
Fax '. $cust_main->fax; } $html .= ''; if ( defined $cust_main->dbdef_table->column('ship_last') ) { my $pre = $cust_main->ship_last ? 'ship_' : ''; $html .= ''. ntable("#cccccc",2). 'Service
Address'. $cust_main->get("${pre}last"). ', '. $cust_main->get("${pre}first"). '
'; $html .= $cust_main->get("${pre}company"). '
' if $cust_main->get("${pre}company"); $html .= $cust_main->get("${pre}address1"). '
'; $html .= $cust_main->get("${pre}address2"). '
' if $cust_main->get("${pre}address2"); $html .= $cust_main->get("${pre}city"). ', '. $cust_main->get("${pre}state"). ' '. $cust_main->get("${pre}zip"). '
'; $html .= $cust_main->get("${pre}country"). '
' if $cust_main->get("${pre}country") && $cust_main->get("${pre}country") ne $countrydefault; $html .= ''; if ( $cust_main->get("${pre}daytime") && $cust_main->get("${pre}night") ) { use FS::Msgcat; $html .= ( FS::Msgcat::_gettext('daytime') || 'Day' ). ' '. $cust_main->get("${pre}daytime"). '
'. ( FS::Msgcat::_gettext('night') || 'Night' ). ' '. $cust_main->get("${pre}night"); } elsif ( $cust_main->get("${pre}daytime") || $cust_main->get("${pre}night") ) { $html .= $cust_main->get("${pre}daytime") || $cust_main->get("${pre}night"); } if ( $cust_main->get("${pre}fax") ) { $html .= '
Fax '. $cust_main->get("${pre}fax"); } $html .= ''; } $html .= ''; $html .= '
Balance: $'. $cust_main->balance. '
' unless $nobalance; # last payment might be good here too? $html; } #bah. don't want to pull in all of FS::CGI, that's the whole problem in the #first place sub ntable { my $col = shift; my $cellspacing = shift || 0; if ( $col ) { qq!!; } else { '
'; } } 1;