From c1ce884e4bb1b7cdc7b6ca26a2ad3e8366b6d167 Mon Sep 17 00:00:00 2001 From: Angie Byron Date: Mon, 26 Oct 2009 04:46:38 +0000 Subject: #612392 by chx and Crell: Allow lowercase comparison operators in DBTNG. --- includes/database/query.inc | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) (limited to 'includes/database') diff --git a/includes/database/query.inc b/includes/database/query.inc index 98723496d..993275749 100644 --- a/includes/database/query.inc +++ b/includes/database/query.inc @@ -1321,12 +1321,26 @@ class DatabaseCondition implements QueryConditionInterface, Countable { 'BETWEEN' => array('delimiter' => ' AND '), 'IN' => array('delimiter' => ', ', 'prefix' => ' (', 'postfix' => ')'), 'NOT IN' => array('delimiter' => ', ', 'prefix' => ' (', 'postfix' => ')'), - 'LIKE' => array('operator' => 'LIKE'), 'IS NULL' => array('use_value' => FALSE), 'IS NOT NULL' => array('use_value' => FALSE), + // These ones are here for performance reasons. + '=' => array(), + '<' => array(), + '>' => array(), + '>=' => array(), + '<=' => array(), + 'LIKE' => array(), ); + if (isset($specials[$operator])) { + $return = $specials[$operator]; + } + else { + // We need to upper case because PHP index matches are case sensitive but + // do not need the more expensive drupal_strtoupper because SQL statements are ASCII. + $operator = strtoupper($operator); + $return = isset($specials[$operator]) ? $specials[$operator] : array(); + } - $return = isset($specials[$operator]) ? $specials[$operator] : array(); $return += array('operator' => $operator); return $return; -- cgit v1.2.3