From f284ebe7629492206fcb4b935069184f554d4dbb Mon Sep 17 00:00:00 2001
From: Axel Rutz <axel.rutz@clever-systems.net>
Date: Sat, 17 May 2014 12:25:02 +0200
Subject: [PATCH] Issue #2269503 by axel.rutz: Translation overview page:
 Allow exact match.

---
 includes/locale.inc             |    8 ++++----
 modules/locale/locale.admin.inc |    4 ++--
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/includes/locale.inc b/includes/locale.inc
index c168da0..b2ce83f 100644
--- a/includes/locale.inc
+++ b/includes/locale.inc
@@ -1876,12 +1876,12 @@ function _locale_translate_seek() {
   // Compute LIKE section.
   switch ($query['translation']) {
     case 'translated':
-      $sql_query->condition('t.translation', '%' . db_like($query['string']) . '%', 'LIKE');
+      $sql_query->condition('t.translation', db_like($query['string']), 'LIKE');
       $sql_query->orderBy('t.translation', 'DESC');
       break;
     case 'untranslated':
       $sql_query->condition(db_and()
-        ->condition('s.source', '%' . db_like($query['string']) . '%', 'LIKE')
+        ->condition('s.source', db_like($query['string']), 'LIKE')
         ->isNull('t.translation')
       );
       $sql_query->orderBy('s.source');
@@ -1889,10 +1889,10 @@ function _locale_translate_seek() {
     case 'all' :
     default:
       $condition = db_or()
-        ->condition('s.source', '%' . db_like($query['string']) . '%', 'LIKE');
+        ->condition('s.source', db_like($query['string']), 'LIKE');
       if ($query['language'] != 'en') {
         // Only search in translations if the language is not forced to English.
-        $condition->condition('t.translation', '%' . db_like($query['string']) . '%', 'LIKE');
+        $condition->condition('t.translation', db_like($query['string']), 'LIKE');
       }
       $sql_query->condition($condition);
       break;
diff --git a/modules/locale/locale.admin.inc b/modules/locale/locale.admin.inc
index b736f79..78aa79b 100644
--- a/modules/locale/locale.admin.inc
+++ b/modules/locale/locale.admin.inc
@@ -812,8 +812,8 @@ function locale_translation_filters() {
   unset($languages['en']);
 
   $filters['string'] = array(
-    'title' => t('String contains'),
-    'description' => t('Leave blank to show all strings. The search is case sensitive.'),
+    'title' => t('String'),
+    'description' => t('You can use "%" as wildcard. Leave blank to show all strings. The search is case sensitive.'),
   );
 
   $filters['language'] = array(
-- 
1.7.9.5

