[FIX] payment_ogone: s2s feedback controller does not need authentication and function name error no longer prevents tx validation

This commit is contained in:
Damien Bouvy
2015-08-05 11:42:24 +02:00
parent caf42af596
commit e4a93776b3
2 changed files with 4 additions and 3 deletions
+1 -1
View File
@@ -44,7 +44,7 @@ class OgoneController(http.Controller):
acquirer.s2s_process(post)
return werkzeug.utils.redirect(post.get('return_url', '/'))
@http.route(['/payment/ogone/s2s/feedback'])
@http.route(['/payment/ogone/s2s/feedback'], auth='none')
def feedback(self, **kwargs):
cr, uid, context = request.cr, SUPERUSER_ID, request.context
payment = request.registry.get('payment.transaction')
+3 -2
View File
@@ -373,11 +373,12 @@ class PaymentTxOgone(osv.Model):
def _ogone_s2s_validate(self, tx):
tree = self._ogone_s2s_get_tx_status(tx)
return self.ogone_s2s_validate(tx, tree)
return self._ogone_s2s_validate_tree(tx, tree)
def _ogone_s2s_validate_tree(self, tx, tree, tries=2):
if tx.state not in ('draft', 'pending'):
return True # already validated
_logger.info('Ogone: trying to validate an already validated tx (ref %s)', tx.reference)
return True
status = int(tree.get('STATUS', '0'))
if status in self._ogone_valid_tx_status: