diff --git a/bt5/erp5_payzen_secure_payment/DocumentTemplateItem/portal_components/document.erp5.PayzenService.py b/bt5/erp5_payzen_secure_payment/DocumentTemplateItem/portal_components/document.erp5.PayzenService.py index 36c44f645a56edf52ae39d9e81ec0668870a8b6e..4e314472901e816bd67f4c1211a42a523edb85a1 100644 --- a/bt5/erp5_payzen_secure_payment/DocumentTemplateItem/portal_components/document.erp5.PayzenService.py +++ b/bt5/erp5_payzen_secure_payment/DocumentTemplateItem/portal_components/document.erp5.PayzenService.py @@ -6,6 +6,7 @@ from Products.ERP5Type.Document import newTempDocument import hashlib from zLOG import LOG, WARNING import datetime +from Products.DCWorkflow.DCWorkflow import ValidationFailed try: import suds @@ -292,7 +293,17 @@ class PayzenService(XMLObject, PayzenSOAP): def navigate(self, page_template, payzen_dict, REQUEST=None, **kw): """Returns configured template used to do the payment""" - self.Base_checkConsistency() + check_result = self.checkConsistency() + message_list = [] + for err in check_result: + if getattr(err, 'getTranslatedMessage', None) is not None: + message_list.append(err.getTranslatedMessage()) + else: + # backward compatibility: + message_list.append(err[3]) + if message_list: + raise ValidationFailed, message_list + temp_document = newTempDocument(self, 'id') temp_document.edit( link_url_string=self.getLinkUrlString(),