diff --git a/entities.py b/entities.py index 452a91b57e43f0fbb610a4501264b5b9aa5aa9c5_ZW50aXRpZXMucHk=..a8d17f05b594cf9d38cd2310ab5c0aa2b219a87a_ZW50aXRpZXMucHk= 100644 --- a/entities.py +++ b/entities.py @@ -3,4 +3,5 @@ from cubes.expense.entities import Expense as BaseExpense, ExpenseLine as BaseExpenseLine class Expense(BaseExpense): + autocomplete_initfuncs = {'spent_for' : 'get_concerned_by'} @@ -6,8 +7,4 @@ - __rtags__ = {'spent_for' : 'primary'} - widgets = {'spent_for' : 'RestrictedAutoCompletionWidget'} - autocomplete_initfuncs = {'spent_for' : 'get_concerned_by'} - class ExpenseLine(BaseExpenseLine): @@ -11,10 +8,6 @@ class ExpenseLine(BaseExpenseLine): - __rtags__ = { - 'paid_by' : 'primary', - } - @property def workcase(self): rql = 'Any R WHERE E has_lines EL, EL eid %(el)s, E spent_for W, W ref R' diff --git a/views/__init__.py b/views/__init__.py index 452a91b57e43f0fbb610a4501264b5b9aa5aa9c5_dmlld3MvX19pbml0X18ucHk=..a8d17f05b594cf9d38cd2310ab5c0aa2b219a87a_dmlld3MvX19pbml0X18ucHk= 100644 --- a/views/__init__.py +++ b/views/__init__.py @@ -1,1 +1,17 @@ """template-specific forms/views/actions/components""" +from logilab.common.decorators import monkeypatch + +from cubicweb.web import uicfg +from cubicweb.web.formwidgets import RestrictedAutoCompletionWidget +from cubicweb.web.views import basecontrollers + +uicfg.autoform_section.tag_subject_of(('Expense', 'spent_for', '*'), 'primary') +uicfg.autoform_field_kwargs.tag_subject_of(('Expense', 'spent_for', '*'), + {'widget': RestrictedAutoCompletionWidget}) + + + +@monkeypatch(basecontrollers.JSonController) +@basecontrollers.jsonize +def js_get_concerned_by(self): + return self.req.execute('DISTINCT Any W,R ORDERBY R WHERE W ref R').rows diff --git a/views/controllers.py b/views/controllers.py deleted file mode 100644 index 452a91b57e43f0fbb610a4501264b5b9aa5aa9c5_dmlld3MvY29udHJvbGxlcnMucHk=..0000000000000000000000000000000000000000 --- a/views/controllers.py +++ /dev/null @@ -1,14 +0,0 @@ -"""Specific controllers for CRM. - -:organization: Logilab -:copyright: 2003-2007 LOGILAB S.A. (Paris, FRANCE), all rights reserved. -:contact: http://www.logilab.fr/ -- mailto:contact@logilab.fr -""" -__docformat__ = "restructuredtext en" - -from cubicweb.web.views.basecontrollers import JSonController - -def js_get_concerned_by(self): - return self.req.execute('DISTINCT Any W,R WHERE W ref R ORDERBY R').rows - -JSonController.js_get_concerned_by = js_get_concerned_by