Please review this at http://codereview.appspot.com/194058/show
For http://bugs.tryton.org/roundup/issue1378

Affected files:
  M trytond/ir/translation.py
  M trytond/ir/translation.xml
  M trytond/model/fields/function.py


Index: trytond/ir/translation.py
===================================================================
--- a/trytond/ir/translation.py
+++ b/trytond/ir/translation.py
@@ -901,6 +901,7 @@
                             'required_field',
                             'foreign_model_missing',
                             'foreign_model_exist',
+                            'search_function_missing',
                             ):
                         continue
                     if model_name in self.pool.object_name_list():
Index: trytond/ir/translation.xml
===================================================================
--- a/trytond/ir/translation.xml
+++ b/trytond/ir/translation.xml
@@ -193,6 +193,15 @@
             <field name="module">ir</field>
             <field name="fuzzy" eval="False"/>
         </record>
+        <record model="ir.translation"
id="translation_search_function_missing">
+            <field name="name">search_function_missing</field>
+            <field name="lang">en_US</field>
+            <field name="type">error</field>
+            <field name="src">Missing search function on field
"%s".</field>
+            <field name="value">Missing search function on field
"%s".</field>
+            <field name="module">ir</field>
+            <field name="fuzzy" eval="False"/>
+        </record>

         <record model="ir.ui.view"
id="act_translation_set_report_init_view_form">
             <field name="model">ir.translation.set_report.init</field>
Index: trytond/model/fields/function.py
===================================================================
--- a/trytond/model/fields/function.py
+++ b/trytond/model/fields/function.py
@@ -92,12 +92,14 @@
         :param cursor: The database cursor.
         :param user: The user id.
         :param model: The model.
+        :param name: The name of the field.
         :param args: The search domain. See ModelStorage.search
         :param context: The context.
         :return: New list of domain.
         '''
         if not self.fnct_search:
-            return []
+            model.raise_user_error(cursor, 'search_function_missing',
+                    name, context=context)
         return getattr(model, self.fnct_search)(cursor, user, name, args,
                 context=context)




-- 
Cédric Krier

B2CK SPRL
Rue de Rotterdam, 4
4000 Liège
Belgium
Tel: +32 472 54 46 59
Email: [email protected]
Jabber: [email protected]
Website: http://www.b2ck.com/
twitter: http://twitter.com/cedrickrier
identi.ca: http://identi.ca/cedrickrier

Attachment: pgp5i7WO6DCEy.pgp
Description: PGP signature

Reply via email to