From ac1703e7ff720ebb95dbf7af0331219bbcb6ab17 Mon Sep 17 00:00:00 2001 From: Aris Feryanto Date: Fri, 29 Jul 2011 15:58:28 +0800 Subject: [PATCH] Grid edit: fix for WHERE clause handling --- js/makegrid.js | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/js/makegrid.js b/js/makegrid.js index 700a32c0aa..5264effe2e 100644 --- a/js/makegrid.js +++ b/js/makegrid.js @@ -938,9 +938,11 @@ relation_fields[cell_index] = {}; $.extend(relation_fields[cell_index], this_field_params); } - if (where_clause.indexOf(field_name) > -1) { - var old_sub_clause_regex = new RegExp(PMA_urlencode('`' + window.parent.table + '`.' + '`' + field_name + '`') + '[+]%3D[+][^+]*'); - var new_sub_clause = '`' + window.parent.table + '`.' + '`' + field_name + "` = '" + this_field_params[field_name].replace(/'/g,"''") + "'"; + if (where_clause.indexOf(PMA_urlencode(field_name)) > -1) { + var fields_str = PMA_urlencode('`' + window.parent.table + '`.' + '`' + field_name + '` = '); + fields_str = fields_str.replace(/[+]/g, '[+]'); // replace '+' sign with '[+]' (regex) + var old_sub_clause_regex = new RegExp(fields_str + '[^+]*'); + var new_sub_clause = PMA_urlencode('`' + window.parent.table + '`.' + '`' + field_name + "` = '" + this_field_params[field_name].replace(/'/g,"''") + "'"); new_clause = new_clause.replace(old_sub_clause_regex, new_sub_clause); } }