[Rt-commit] rt branch, 3.8-trunk, updated. rt-3.8.6-159-g8df0cd7
Ruslan Zakirov
ruz at bestpractical.com
Thu Dec 10 18:09:45 EST 2009
The branch, 3.8-trunk has been updated
via 8df0cd7b71bfd977940dbe4a73df65694d0e38d2 (commit)
from 6dfb39e1075859e464656a25cf6a2af67fc7eb28 (commit)
Summary of changes:
lib/RT/Tickets_Overlay.pm | 42 ++++++++++++++++++++++++++++++++++++++++++
1 files changed, 42 insertions(+), 0 deletions(-)
- Log -----------------------------------------------------------------
commit 8df0cd7b71bfd977940dbe4a73df65694d0e38d2
Author: Ruslan Zakirov <ruz at bestpractical.com>
Date: Fri Dec 11 02:06:28 2009 +0300
add HasAttribute and HasNoAttribute to the tisql
git-svn-id: svn+ssh://svn.bestpractical.com/svn/bps-public/rt/branches/3.6-RELEASE@19720 e417ac7c-1bcc-0310-8ffa-8f5827389a85
Conflicts:
lib/RT/Tickets_Overlay.pm
diff --git a/lib/RT/Tickets_Overlay.pm b/lib/RT/Tickets_Overlay.pm
index d80afac..26dafd7 100755
--- a/lib/RT/Tickets_Overlay.pm
+++ b/lib/RT/Tickets_Overlay.pm
@@ -143,6 +143,8 @@ our %FIELD_METADATA = (
CCGroup => [ 'MEMBERSHIPFIELD' => 'Cc', ], #loc_left_pair
AdminCCGroup => [ 'MEMBERSHIPFIELD' => 'AdminCc', ], #loc_left_pair
WatcherGroup => [ 'MEMBERSHIPFIELD', ], #loc_left_pair
+ HasAttribute => [ 'HASATTRIBUTE', 1 ],
+ HasNoAttribute => [ 'HASATTRIBUTE', 0 ],
);
# Mapping of Field Type to Function
@@ -158,6 +160,7 @@ our %dispatch = (
WATCHERFIELD => \&_WatcherLimit,
MEMBERSHIPFIELD => \&_WatcherMembershipLimit,
CUSTOMFIELD => \&_CustomFieldLimit,
+ HASATTRIBUTE => \&_HasAttributeLimit,
);
our %can_bundle = ();# WATCHERFIELD => "yes", );
@@ -195,6 +198,11 @@ my %DefaultEA = (
'NOT LIKE' => 'AND'
},
+ HASATTRIBUTE => {
+ '=' => 'AND',
+ '!=' => 'AND',
+ },
+
CUSTOMFIELD => 'OR',
);
@@ -1528,6 +1536,40 @@ sub _CustomFieldLimit {
}
}
+sub _HasAttributeLimit {
+ my ( $self, $field, $op, $value, %rest ) = @_;
+
+ my $alias = $self->Join(
+ TYPE => 'LEFT',
+ ALIAS1 => 'main',
+ FIELD1 => 'id',
+ TABLE2 => 'Attributes',
+ FIELD2 => 'ObjectId',
+ );
+ $self->SUPER::Limit(
+ LEFTJOIN => $alias,
+ FIELD => 'ObjectType',
+ VALUE => 'RT::Ticket',
+ ENTRYAGGREGATOR => 'AND'
+ );
+ $self->SUPER::Limit(
+ LEFTJOIN => $alias,
+ FIELD => 'Name',
+ OPERATOR => $op,
+ VALUE => $value,
+ ENTRYAGGREGATOR => 'AND'
+ );
+ $self->_SQLLimit(
+ %rest,
+ ALIAS => $alias,
+ FIELD => 'id',
+ OPERATOR => $FIELD_METADATA{$field}->[1]? 'IS NOT': 'IS',
+ VALUE => 'NULL',
+ QUOTEVALUE => 0,
+ );
+}
+
+
# End Helper Functions
# End of SQL Stuff -------------------------------------------------
-----------------------------------------------------------------------
More information about the Rt-commit
mailing list