[freeside-commits] freeside/httemplate/view/cust_main/packages location.html, 1.8, 1.9 package.html, 1.8, 1.9 section.html, NONE, 1.1
Mark Wells
mark at wavetail.420.am
Mon Dec 13 23:29:15 PST 2010
Update of /home/cvs/cvsroot/freeside/httemplate/view/cust_main/packages
In directory wavetail.420.am:/tmp/cvs-serv29584/httemplate/view/cust_main/packages
Modified Files:
location.html package.html
Added Files:
section.html
Log Message:
cust_location editing features, RT#10766
Index: package.html
===================================================================
RCS file: /home/cvs/cvsroot/freeside/httemplate/view/cust_main/packages/package.html,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -w -d -r1.8 -r1.9
--- package.html 22 Sep 2010 19:16:20 -0000 1.8
+++ package.html 14 Dec 2010 07:29:12 -0000 1.9
@@ -168,8 +168,16 @@
% }
</TR>
+% if ( $curuser->access_right('Change customer package') and
+% !$cust_pkg->get('cancel') and
+% !$opt{'show_location'}) {
+ <TR>
+ <TD><FONT SIZE="-1">
+ ( <% pkg_change_location_link($cust_pkg) %> )
+ </FONT></TD>
+ </TR>
+% }
% }
-
</TABLE>
</TD>
@@ -184,6 +192,10 @@
my $curuser = $FS::CurrentUser::CurrentUser;
+my $countrydefault = $opt{'countrydefault'} || 'US';
+my $statedefault = $opt{'statedefault'}
+ || ($countrydefault eq 'US' ? 'CA' : '');
+
#subroutines
#false laziness w/status.html
@@ -204,6 +216,19 @@
);
}
+sub pkg_change_location_link {
+ my $cust_pkg = shift;
+ my $pkgpart = $cust_pkg->pkgpart;
+ include( '/elements/popup_link-cust_pkg.html',
+ 'action' => $p. "misc/change_pkg.cgi?locationnum=-1;pkgpart=$pkgpart;".
+ "address1=;address2=;city=;county=;state=$statedefault;".
+ "zip=;country=$countrydefault",
+ 'label' => 'Change location',
+ 'actionlabel' => 'Change',
+ 'cust_pkg' => $cust_pkg,
+ );
+}
+
sub pkg_dates_link { pkg_link('edit/REAL_cust_pkg', 'Edit dates', @_ ); }
sub pkg_discount_link {
--- NEW FILE: section.html ---
% if ( @$packages ) {
% my $bgcolor1 = '#eeeeee';
% my $bgcolor2 = '#ffffff';
% my $bgcolor = '';
<TR>
% #my $width = $show_location ? 'WIDTH="25%"' : 'WIDTH="33%"';
<TH CLASS="grid" BGCOLOR="#cccccc">Package</TH>
<TH CLASS="grid" BGCOLOR="#cccccc">Status</TH>
% if ( $show_location ) {
<TH CLASS="grid" BGCOLOR="#cccccc">Location</TH>
% }
<TH CLASS="grid" BGCOLOR="#cccccc">Services</TH>
</TR>
% #$FS::cust_pkg::DEBUG = 2;
% foreach my $cust_pkg (@$packages) {
%
% if ( $bgcolor eq $bgcolor1 ) {
% $bgcolor = $bgcolor2;
% } else {
% $bgcolor = $bgcolor1;
% }
%
% my %iopt = (
% 'bgcolor' => $bgcolor,
% 'cust_pkg' => $cust_pkg,
% 'part_pkg' => $cust_pkg->part_pkg,
% %conf_opt,
% );
%
<!--pkgnum: <% $cust_pkg->pkgnum %>-->
<TR>
<% include('package.html', %iopt) %>
<% include('status.html', %iopt) %>
% if ( $show_location ) {
<% include('location.html', %iopt) %>
% }
<% include('services.html', %iopt) %>
</TR>
% } #foreach $cust_pkg
%# </TABLE>
% } #if @$packages
% else {
<BR>
% }
<%init>
my %opt = @_;
my $conf = new FS::Conf;
my $curuser = $FS::CurrentUser::CurrentUser;
my $packages = $opt{'packages'};
my $show_location = $opt{'show_location'};
# Sort order is hardcoded for now, can change this if needed.
@$packages = sort {
( $a->getfield('cancel') <=> $b->getfield('cancel') ) or
( $a->getfield('setup') <=> $b->getfield('setup') ) or
( $a->getfield('pkgnum') <=> $b->getfield('pkgnum') )
} @$packages;
my $countrydefault = scalar($conf->config('countrydefault')) || 'US';
my %conf_opt = (
#for services.html and status.html
'cust_pkg-display_times' => $conf->exists('cust_pkg-display_times')
|| $curuser->option('cust_pkg-display_times')),
#for status.html
'cust_pkg-show_autosuspend' => $conf->exists('cust_pkg-show_autosuspend'),
#for status.html pkg-balances
'pkg-balances' => $conf->exists('pkg-balances'),
'money_char' => ( $conf->config('money_char') || '$' ),
#for location.html
'countrydefault' => $countrydefault,
'statedefault' => ( scalar($conf->config('statedefault'))
|| ($countrydefault eq 'US' ? 'CA' : '') ),
#for services.html
'svc_external-skip_manual' => $conf->exists('svc_external-skip_manual'),
'legacy_link' => $conf->exists('legacy_link'),
'svc_broadband-manage_link' => scalar($conf->config('svc_broadband-manage_link')),
'maestro-status_test' => $conf->exists('maestro-status_test'),
'cust_pkg-large_pkg_size' => $conf->config('cust_pkg-large_pkg_size'),
# for packages.html Change location link
'show_location' => $show_location,
);
</%init>
Index: location.html
===================================================================
RCS file: /home/cvs/cvsroot/freeside/httemplate/view/cust_main/packages/location.html,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -w -d -r1.8 -r1.9
--- location.html 28 Dec 2009 19:18:20 -0000 1.8
+++ location.html 14 Dec 2010 07:29:12 -0000 1.9
@@ -21,12 +21,16 @@
% {
<FONT SIZE=-1>
( <%pkg_change_location_link($cust_pkg)%> )
+% if ( $cust_pkg->locationnum ) {
+ ( <%edit_location_link($cust_pkg->locationnum)%> )
+% }
</FONT>
% }
</TD>
<%init>
+my $conf = new FS::Conf;
my %opt = @_;
my $bgcolor = $opt{'bgcolor'};
@@ -50,4 +54,13 @@
);
}
+sub edit_location_link {
+ my $locationnum = shift;
+ include( '/elements/popup_link.html',
+ 'action' => $p. "edit/cust_location.cgi?locationnum=$locationnum",
+ 'label' => 'Edit location',
+ 'actionlabel' => 'Edit',
+ );
+}
+
</%init>
More information about the freeside-commits
mailing list