[Rt-commit] rt branch, 4.2/remove-possible-custom-fields, created. rt-4.0.4-236-g9842439
Kevin Falcone
falcone at bestpractical.com
Mon Jan 23 15:46:11 EST 2012
The branch, 4.2/remove-possible-custom-fields has been created
at 98424397e829dda02ddd905552f8728f9d58961f (commit)
- Log -----------------------------------------------------------------
commit 98424397e829dda02ddd905552f8728f9d58961f
Author: Kevin Falcone <falcone at bestpractical.com>
Date: Mon Jan 23 15:41:53 2012 -0500
PossibleCustomFields appears unused
When Results.tsv started parsing Format for which CFs to include in
209c9a8bb929d2ffefc8cbec5a03a2bb2ae2b49f, we stopped parsing the Query
for Custom Fields to include (and we only searched the Query if you had
the optional Parse::BooleanLogic module installed, the default behaviour
for 99% of RT instances was to include all possible Custom Fields).
diff --git a/lib/RT/SQL.pm b/lib/RT/SQL.pm
index 3b84465..e16447c 100644
--- a/lib/RT/SQL.pm
+++ b/lib/RT/SQL.pm
@@ -52,11 +52,6 @@ use strict;
use warnings;
-use constant HAS_BOOLEAN_PARSER => do {
- local $@;
- eval { require Parse::BooleanLogic; 1 }
-};
-
# States
use constant VALUE => 1;
use constant AGGREG => 2;
@@ -217,80 +212,6 @@ sub _BitmaskToString {
return join ' or ', @res;
}
-sub PossibleCustomFields {
- my %args = (Query => undef, CurrentUser => undef, @_);
-
- my $cfs = RT::CustomFields->new( $args{'CurrentUser'} );
- my $ocf_alias = $cfs->_OCFAlias;
- $cfs->LimitToLookupType( 'RT::Queue-RT::Ticket' );
-
- my $tree;
- if ( HAS_BOOLEAN_PARSER ) {
- $tree = Parse::BooleanLogic->filter(
- RT::SQL::ParseToArray( $args{'Query'} ),
- sub { $_[0]->{'key'} =~ /^Queue(?:\z|\.)/ },
- );
- }
- if ( $tree && @$tree ) {
- my $clause = 'QUEUES';
- my $queue_alias = $cfs->Join(
- TYPE => 'LEFT',
- ALIAS1 => $ocf_alias,
- FIELD1 => 'ObjectId',
- TABLE2 => 'Queues',
- FIELD2 => 'id',
- );
- $cfs->_OpenParen($clause);
- $cfs->Limit(
- SUBCLAUSE => $clause,
- ENTRYAGGREGATOR => 'AND',
- ALIAS => $ocf_alias,
- FIELD => 'ObjectId',
- VALUE => 0,
- );
- $cfs->_OpenParen($clause);
-
- my $ea = 'OR';
- Parse::BooleanLogic->walk(
- $tree,
- {
- open_paren => sub { $cfs->_OpenParen($clause) },
- close_paren => sub { $cfs->_CloseParen($clause) },
- operator => sub { $ea = $_[0] },
- operand => sub {
- my ($key, $op, $value) = @{$_[0]}{'key', 'op', 'value'};
- my (undef, @sub) = split /\./, $key;
- push @sub, $value =~ /\D/? 'Name' : 'id'
- unless @sub;
-
- die "Couldn't handle ". join('.', 'Queue', @sub) if @sub > 1;
- $cfs->Limit(
- SUBCLAUSE => $clause,
- ENTRYAGGREGATOR => $ea,
- ALIAS => $queue_alias,
- FIELD => $sub[0],
- OPERATOR => $op,
- VALUE => $value,
- );
- },
- }
- );
-
- $cfs->_CloseParen($clause);
- $cfs->_CloseParen($clause);
- } else {
- $cfs->Limit(
- ENTRYAGGREGATOR => 'AND',
- ALIAS => $ocf_alias,
- FIELD => 'ObjectId',
- OPERATOR => 'IS NOT',
- VALUE => 'NULL',
- );
- }
- return $cfs;
-}
-
-
RT::Base->_ImportOverlays();
1;
-----------------------------------------------------------------------
More information about the Rt-commit
mailing list