openerp-community-reviewer team mailing list archive
-
openerp-community-reviewer team
-
Mailing list archive
-
Message #04567
[Merge] lp:~yann-papouin/ocb-server/7.0-bug-1049653-translatable-unaccent into lp:ocb-server
Yann Papouin has proposed merging lp:~yann-papouin/ocb-server/7.0-bug-1049653-translatable-unaccent into lp:ocb-server.
Requested reviews:
OpenERP Community Backports Team (ocb)
Related bugs:
Bug #1049653 in OpenERP Community Backports (Server): "--unaccent option does not work"
https://bugs.launchpad.net/ocb-server/+bug/1049653
For more details, see:
https://code.launchpad.net/~yann-papouin/ocb-server/7.0-bug-1049653-translatable-unaccent/+merge/210165
Automatically derived from https://code.launchpad.net/~yann-papouin/openobject-server/7.0-bug-1049653-translatable-unaccent for https://code.launchpad.net/~openerp/openobject-server/7.0.
--
https://code.launchpad.net/~yann-papouin/ocb-server/7.0-bug-1049653-translatable-unaccent/+merge/210165
Your team OpenERP Community Backports Team is requested to review the proposed merge of lp:~yann-papouin/ocb-server/7.0-bug-1049653-translatable-unaccent into lp:ocb-server.
=== modified file 'openerp/osv/expression.py'
--- openerp/osv/expression.py 2014-02-06 08:47:08 +0000
+++ openerp/osv/expression.py 2014-03-10 10:02:31 +0000
@@ -1046,11 +1046,18 @@
' FROM "' + working_model._table + '"' \
' WHERE "' + left + '" ' + sql_operator + ' ' + " (" + instr + "))"
else:
- subselect += ' AND value ' + sql_operator + instr + \
- ') UNION (' \
- ' SELECT id' \
- ' FROM "' + working_model._table + '"' \
- ' WHERE "' + left + '" ' + sql_operator + instr + ")"
+ if self.has_unaccent and sql_operator in ('ilike', 'not ilike'):
+ subselect += ' AND unaccent(value) ' + sql_operator + ' unaccent(' + instr + \
+ ')) UNION (' \
+ ' SELECT id' \
+ ' FROM "' + working_model._table + '"' \
+ ' WHERE unaccent("' + left + '") ' + sql_operator + ' unaccent(' + instr + '))'
+ else:
+ subselect += ' AND value ' + sql_operator + instr + \
+ ') UNION (' \
+ ' SELECT id' \
+ ' FROM "' + working_model._table + '"' \
+ ' WHERE "' + left + '" ' + sql_operator + instr + ")"
params = [working_model._name + ',' + left,
context.get('lang', False) or 'en_US',
Follow ups