web/views/reledit.py
changeset 8748 f5027f8d2478
parent 8666 1dd655788ece
child 9257 ce338133c92c
child 9871 3d3aa4dd6a32
equal deleted inserted replaced
8747:c0d4244e5abc 8748:f5027f8d2478
    27 
    27 
    28 from logilab.mtconverter import xml_escape
    28 from logilab.mtconverter import xml_escape
    29 from logilab.common.deprecation import deprecated, class_renamed
    29 from logilab.common.deprecation import deprecated, class_renamed
    30 from logilab.common.decorators import cached
    30 from logilab.common.decorators import cached
    31 
    31 
    32 from cubicweb import neg_role, typed_eid
    32 from cubicweb import neg_role
    33 from cubicweb.schema import display_name
    33 from cubicweb.schema import display_name
    34 from cubicweb.utils import json, json_dumps
    34 from cubicweb.utils import json, json_dumps
    35 from cubicweb.predicates import non_final_entity, match_kwargs
    35 from cubicweb.predicates import non_final_entity, match_kwargs
    36 from cubicweb.view import EntityView
    36 from cubicweb.view import EntityView
    37 from cubicweb.web import stdmsgs
    37 from cubicweb.web import stdmsgs
   400 @ajaxfunc(output_type='xhtml')
   400 @ajaxfunc(output_type='xhtml')
   401 def reledit_form(self):
   401 def reledit_form(self):
   402     req = self._cw
   402     req = self._cw
   403     args = dict((x, req.form[x])
   403     args = dict((x, req.form[x])
   404                 for x in ('formid', 'rtype', 'role', 'reload', 'action'))
   404                 for x in ('formid', 'rtype', 'role', 'reload', 'action'))
   405     rset = req.eid_rset(typed_eid(self._cw.form['eid']))
   405     rset = req.eid_rset(int(self._cw.form['eid']))
   406     try:
   406     try:
   407         args['reload'] = json.loads(args['reload'])
   407         args['reload'] = json.loads(args['reload'])
   408     except ValueError: # not true/false, an absolute url
   408     except ValueError: # not true/false, an absolute url
   409         assert args['reload'].startswith('http')
   409         assert args['reload'].startswith('http')
   410     view = req.vreg['views'].select('reledit', req, rset=rset, rtype=args['rtype'])
   410     view = req.vreg['views'].select('reledit', req, rset=rset, rtype=args['rtype'])