380 return (False, {None: self.req._('not authorized')}) |
380 return (False, {None: self.req._('not authorized')}) |
381 try: |
381 try: |
382 ctrl.publish(None, fromjson=True) |
382 ctrl.publish(None, fromjson=True) |
383 except ValidationError, err: |
383 except ValidationError, err: |
384 self.req.cnx.rollback() |
384 self.req.cnx.rollback() |
385 if not err.entity or isinstance(err.entity, (long, int)): |
385 return (False, (err.entity, err.errors)) |
386 eid = err.entity |
|
387 else: |
|
388 eid = err.entity.eid |
|
389 return (False, (eid, err.errors)) |
|
390 except Redirect, redir: |
386 except Redirect, redir: |
391 return (True, redir.location) |
387 return (True, redir.location) |
392 except Exception, err: |
388 except Exception, err: |
393 self.req.cnx.rollback() |
389 self.req.cnx.rollback() |
394 self.exception('unexpected error in js_validateform') |
390 self.exception('unexpected error in js_validateform') |