[Rt-commit] r11411 - rt/branches/3.6-RELEASE/lib/RT
ruz at bestpractical.com
ruz at bestpractical.com
Wed Apr 2 22:05:34 EDT 2008
Author: ruz
Date: Wed Apr 2 22:05:33 2008
New Revision: 11411
Modified:
rt/branches/3.6-RELEASE/lib/RT/Tickets_Overlay.pm
Log:
* update _CustomFieldDecipher
** return $cf obj if we found it
** look for cf harder
Modified: rt/branches/3.6-RELEASE/lib/RT/Tickets_Overlay.pm
==============================================================================
--- rt/branches/3.6-RELEASE/lib/RT/Tickets_Overlay.pm (original)
+++ rt/branches/3.6-RELEASE/lib/RT/Tickets_Overlay.pm Wed Apr 2 22:05:33 2008
@@ -1303,7 +1303,7 @@
sub _CustomFieldDecipher {
my ($self, $field) = @_;
- my $queue = 0;
+ my $queue = undef;
if ( $field =~ /^(.+?)\.{(.+)}$/ ) {
($queue, $field) = ($1, $2);
}
@@ -1323,11 +1323,20 @@
$cf = RT::CustomField->new( $self->CurrentUser );
$cf->LoadByNameAndQueue( Queue => 0, Name => $field );
}
- $cfid = $cf->id if $cf;
+ return ($queue, $field, $cf->id, $cf)
+ if $cf && $cf->id;
+ return ($queue, $field);
}
-
- return ($queue, $field, $cfid);
-
+
+ my $cfs = RT::CustomFields->new( $self->CurrentUser );
+ $cfs->Limit( FIELD => 'Name', VALUE => $field );
+ $cfs->LimitToLookupType('RT::Queue-RT::Ticket');
+ my $count = $cfs->Count;
+ return (undef, $field, undef) if $count > 1;
+ return (undef, $field, 0) if $count == 0;
+ my $cf = $cfs->First;
+ return (undef, $field, $cf->id, $cf) if $cf && $cf->id;
+ return (undef, $field, undef);
}
=head2 _CustomFieldJoin
More information about the Rt-commit
mailing list