18 from cubicweb import NoSelectableObject, ValidationError, ObjectNotFound, typed_eid |
18 from cubicweb import NoSelectableObject, ValidationError, ObjectNotFound, typed_eid |
19 from cubicweb.utils import strptime |
19 from cubicweb.utils import strptime |
20 from cubicweb.selectors import yes, match_user_groups |
20 from cubicweb.selectors import yes, match_user_groups |
21 from cubicweb.view import STRICT_DOCTYPE |
21 from cubicweb.view import STRICT_DOCTYPE |
22 from cubicweb.common.mail import format_mail |
22 from cubicweb.common.mail import format_mail |
23 from cubicweb.web import ExplicitLogin, Redirect, RemoteCallFailed |
23 from cubicweb.web import ExplicitLogin, Redirect, RemoteCallFailed, json_dumps |
24 from cubicweb.web.formrenderers import FormRenderer |
24 from cubicweb.web.formrenderers import FormRenderer |
25 from cubicweb.web.controller import Controller |
25 from cubicweb.web.controller import Controller |
26 from cubicweb.web.views import vid_from_rset |
26 from cubicweb.web.views import vid_from_rset |
27 try: |
27 try: |
28 from cubicweb.web.facet import (FilterRQLBuilder, get_facet, |
28 from cubicweb.web.facet import (FilterRQLBuilder, get_facet, |
40 """decorator to sets correct content_type and calls `simplejson.dumps` on |
40 """decorator to sets correct content_type and calls `simplejson.dumps` on |
41 results |
41 results |
42 """ |
42 """ |
43 def wrapper(self, *args, **kwargs): |
43 def wrapper(self, *args, **kwargs): |
44 self.req.set_content_type('application/json') |
44 self.req.set_content_type('application/json') |
45 result = func(self, *args, **kwargs) |
45 return json_dumps(func(self, *args, **kwargs)) |
46 return simplejson.dumps(result) |
|
47 wrapper.__name__ = func.__name__ |
46 wrapper.__name__ = func.__name__ |
48 return wrapper |
47 return wrapper |
49 |
48 |
50 def xhtmlize(func): |
49 def xhtmlize(func): |
51 """decorator to sets correct content_type and calls `xmlize` on results""" |
50 """decorator to sets correct content_type and calls `xmlize` on results""" |