X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=httemplate%2Fbrowse%2Fpart_pkg.cgi;h=cda1897568dd816cf04ad25584bc5a26fdbfb698;hp=f25c00ef29a9b5b0919b157fe2b23981e8d1c30f;hb=9cfa3648407dc2333fb549460fed278311c5393a;hpb=e884af8c6997d97753598ccec16a3156e0dcbf3f diff --git a/httemplate/browse/part_pkg.cgi b/httemplate/browse/part_pkg.cgi index f25c00ef2..cda189756 100755 --- a/httemplate/browse/part_pkg.cgi +++ b/httemplate/browse/part_pkg.cgi @@ -38,6 +38,9 @@ $().ready(function() { $('.taxproduct_desc').tooltip({}); }); +$(document).ready(function(){ + $(this).scrollTop(0); +}); <%init> @@ -60,6 +63,7 @@ my $conf = new FS::Conf; my $taxclasses = $conf->exists('enable_taxclasses'); my $taxvendor = $conf->config('tax_data_vendor'); my $money_char = $conf->config('money_char') || '$'; +my $disable_counts = $conf->exists('config-disable_counts') ? 1 : 0; my $select = '*'; my $orderby = 'pkgpart'; @@ -143,40 +147,43 @@ my $count_cust_pkg_cancel = " AND cust_pkg.cancel IS NOT NULL AND cust_pkg.cancel != 0 "; -$select = " - - *, - - ( $count_cust_pkg - AND ( setup IS NULL OR setup = 0 ) - AND ( cancel IS NULL OR cancel = 0 ) - AND ( susp IS NULL OR susp = 0 ) - ) AS num_not_yet_billed, - - ( $count_cust_pkg - AND setup IS NOT NULL AND setup != 0 - AND ( cancel IS NULL OR cancel = 0 ) - AND ( susp IS NULL OR susp = 0 ) - ) AS num_active, - - ( $count_cust_pkg - AND ( cancel IS NULL OR cancel = 0 ) - AND susp IS NOT NULL AND susp != 0 - AND setup IS NOT NULL AND setup != 0 - ) AS num_suspended, - - ( $count_cust_pkg - AND ( cancel IS NULL OR cancel = 0 ) - AND susp IS NOT NULL AND susp != 0 - AND ( setup IS NULL OR setup = 0 ) - ) AS num_on_hold, - - ( $count_cust_pkg_cancel - AND (cust_pkg_next.pkgnum IS NULL - OR cust_pkg_next.pkgpart != cust_pkg.pkgpart) - ) AS num_cancelled +unless ( $disable_counts ) { + $select = " + + *, + + ( $count_cust_pkg + AND ( setup IS NULL OR setup = 0 ) + AND ( cancel IS NULL OR cancel = 0 ) + AND ( susp IS NULL OR susp = 0 ) + ) AS num_not_yet_billed, + + ( $count_cust_pkg + AND setup IS NOT NULL AND setup != 0 + AND ( cancel IS NULL OR cancel = 0 ) + AND ( susp IS NULL OR susp = 0 ) + ) AS num_active, + + ( $count_cust_pkg + AND ( cancel IS NULL OR cancel = 0 ) + AND susp IS NOT NULL AND susp != 0 + AND setup IS NOT NULL AND setup != 0 + ) AS num_suspended, + + ( $count_cust_pkg + AND ( cancel IS NULL OR cancel = 0 ) + AND susp IS NOT NULL AND susp != 0 + AND ( setup IS NULL OR setup = 0 ) + ) AS num_on_hold, + + ( $count_cust_pkg_cancel + AND (cust_pkg_next.pkgnum IS NULL + OR cust_pkg_next.pkgpart != cust_pkg.pkgpart) + ) AS num_cancelled + + "; +} -"; # About the num_cancelled expression: packages that were changed, but # kept the same pkgpart, are considered "moved", not "canceled" (because # this is the part_pkg UI). We could show the count of those but it's @@ -544,7 +551,7 @@ if ( $acl_edit_global ) { : '' ), 'align' => 'left', - 'link' => ( $part_pkg->get("num_$_") + 'link' => ( $part_pkg->get("num_$_") || $disable_counts ? $cust_pkg_link. $part_pkg->pkgpart. ";magic=$magic" @@ -797,8 +804,18 @@ if ( $acl_edit_bulk ) { $html_form = qq!
!; $html_foot = include('/search/elements/checkbox-foot.html', actions => [ - { submit => 'edit report classes', }, - { label => 'change customer packages', + { label => 'edit packages', + onclick=> include('/elements/popup_link_onclick.html', + 'label' => 'edit', + 'js_action' => qq{ + '${p}edit/bulk-part_pkg.html?' + \$('input[name=pkgpart]').serialize() + }, + 'actionlabel' => 'Bulk edit packages', + 'width' => 960, + 'height' => 420, + ) + }, + { label => 'change customers packages', onclick=> include('/elements/popup_link_onclick.html', 'label' => 'change', 'js_action' => qq{