projects
/
freeside.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'master' of git.freeside.biz:/home/git/freeside
[freeside.git]
/
rt
/
lib
/
RT
/
SearchBuilder.pm
diff --git
a/rt/lib/RT/SearchBuilder.pm
b/rt/lib/RT/SearchBuilder.pm
index
3e98551
..
bfc0cd3
100644
(file)
--- a/
rt/lib/RT/SearchBuilder.pm
+++ b/
rt/lib/RT/SearchBuilder.pm
@@
-2,7
+2,7
@@
#
# COPYRIGHT:
#
#
# COPYRIGHT:
#
-# This software is Copyright (c) 1996-201
2
Best Practical Solutions, LLC
+# This software is Copyright (c) 1996-201
5
Best Practical Solutions, LLC
# <sales@bestpractical.com>
#
# (Except where explicitly superseded by other copyright notices)
# <sales@bestpractical.com>
#
# (Except where explicitly superseded by other copyright notices)
@@
-86,9
+86,13
@@
sub _Init {
$self->SUPER::_Init( 'Handle' => $RT::Handle);
}
$self->SUPER::_Init( 'Handle' => $RT::Handle);
}
+sub _Handle { return $RT::Handle }
+
sub CleanSlate {
my $self = shift;
$self->{'_sql_aliases'} = {};
sub CleanSlate {
my $self = shift;
$self->{'_sql_aliases'} = {};
+ delete $self->{'handled_disabled_column'};
+ delete $self->{'find_disabled_rows'};
return $self->SUPER::CleanSlate(@_);
}
return $self->SUPER::CleanSlate(@_);
}
@@
-211,29
+215,35
@@
sub LimitCustomField {
@_ );
my $alias = $self->Join(
@_ );
my $alias = $self->Join(
- TYPE => 'left',
- ALIAS1 => 'main',
- FIELD1 => 'id',
- TABLE2 => 'ObjectCustomFieldValues',
- FIELD2 => 'ObjectId'
+
TYPE => 'left',
+
ALIAS1 => 'main',
+
FIELD1 => 'id',
+
TABLE2 => 'ObjectCustomFieldValues',
+
FIELD2 => 'ObjectId'
);
$self->Limit(
);
$self->Limit(
- ALIAS => $alias,
- FIELD => 'CustomField',
- OPERATOR => '=',
- VALUE => $args{'CUSTOMFIELD'},
+
ALIAS => $alias,
+
FIELD => 'CustomField',
+
OPERATOR => '=',
+
VALUE => $args{'CUSTOMFIELD'},
) if ($args{'CUSTOMFIELD'});
$self->Limit(
) if ($args{'CUSTOMFIELD'});
$self->Limit(
- ALIAS => $alias,
- FIELD => 'ObjectType',
- OPERATOR => '=',
- VALUE => $self->_SingularClass,
+ ALIAS => $alias,
+ FIELD => 'ObjectType',
+ OPERATOR => '=',
+ VALUE => $self->_SingularClass,
+ );
+ $self->Limit(
+ ALIAS => $alias,
+ FIELD => 'Content',
+ OPERATOR => $args{'OPERATOR'},
+ VALUE => $args{'VALUE'},
);
$self->Limit(
);
$self->Limit(
-
ALIAS
=> $alias,
-
FIELD => 'Content
',
-
OPERATOR => $args{'OPERATOR'}
,
-
VALUE => $args{'VALUE'}
,
+
ALIAS
=> $alias,
+
FIELD => 'Disabled
',
+
OPERATOR => '='
,
+
VALUE => 0
,
);
}
);
}
@@
-273,7
+283,7
@@
sub Limit {
|(NOT\s*)?(STARTS|ENDS)WITH
|(NOT\s*)?MATCHES
|IS(\s*NOT)?
|(NOT\s*)?(STARTS|ENDS)WITH
|(NOT\s*)?MATCHES
|IS(\s*NOT)?
- |IN
+ |
(NOT\s*)?
IN
|\@\@)$/ix) {
$RT::Logger->crit("Possible SQL injection attack: $ARGS{FIELD} $ARGS{OPERATOR}");
$self->SUPER::Limit(
|\@\@)$/ix) {
$RT::Logger->crit("Possible SQL injection attack: $ARGS{FIELD} $ARGS{OPERATOR}");
$self->SUPER::Limit(