disable quotations, RT#20688, RT#22232
authorIvan Kohler <ivan@freeside.biz>
Mon, 19 Jan 2015 03:46:01 +0000 (19:46 -0800)
committerIvan Kohler <ivan@freeside.biz>
Mon, 19 Jan 2015 03:46:01 +0000 (19:46 -0800)
FS/FS/AccessRight.pm
FS/FS/access_right.pm
httemplate/search/elements/search.html

index 04106dc..2494241 100644 (file)
@@ -97,6 +97,7 @@ tie my %rights, 'Tie::IxHash',
     #'New contact',
     #'View customer contacts',
     'Generate quotation',
+    'Disable quotation',
   ],
   
   ###
index 8a086a7..ea3bd42 100644 (file)
@@ -247,6 +247,7 @@ sub _upgrade_data { # class method
     'List prospects' => 'List contacts',
     'List customers' => 'List contacts',
     'Backdate payment' => 'Backdate credit',
+    'Generate quotation' => 'Disable quotation',
   );
 
 #  foreach my $old_acl ( keys %onetime ) {
index 8f62720..b70b82d 100644 (file)
@@ -307,9 +307,11 @@ if ( $opt{'disableable'} ) {
     $opt{'query'}{'hashref'}{'disabled'} = '';
     $opt{'query'}{'extra_sql'} =~ s/^\s*WHERE/ AND/i;
 
+    my $table = $opt{'query'}{'table'};
+
     $opt{'count_query'} .=
       ( $opt{'count_query'} =~ /WHERE/i ? ' AND ' : ' WHERE ' ).
-      "( disabled = '' OR disabled IS NULL )";
+      "( $table.disabled = '' OR $table.disabled IS NULL )";
 
   } elsif (    $opt{'disabled_statuspos'}
             || $opt{'disabled_statuspos'} eq '0' ) { #add status column
@@ -360,12 +362,6 @@ unless ( $type =~ /^(csv|xml|\w*.xls)$/) {
       s/^\s*SELECT\s*(.*?)\s+FROM\s/SELECT COUNT(*) FROM /i; #silly vim:/
   }
 
-  if ( $opt{disableable} && ! $cgi->param('showdisabled') ) {
-    $opt{count_query} .=
-      ( ( $opt{count_query} =~ /WHERE/i ) ? ' AND ' : ' WHERE ' ).
-      "( disabled = '' OR disabled IS NULL )";
-  }
-
   unless ( $type eq 'html-print' ) {
 
     #setup some pagination things if we're in html mode