create new method in PaymentModuleInterface for verifying is the module

is valid
This commit is contained in:
Manuel Raynaud
2014-02-08 11:07:54 +01:00
parent c7e035429a
commit 25084219e7
3 changed files with 29 additions and 0 deletions

View File

@@ -54,6 +54,10 @@ class Payment extends BaseSpecificModule implements PropelSearchLoopInterface
throw new \RuntimeException(sprintf("payment module %s is not a Thelia\Module\PaymentModuleInterface", $paymentModule->getCode())); throw new \RuntimeException(sprintf("payment module %s is not a Thelia\Module\PaymentModuleInterface", $paymentModule->getCode()));
} }
if (false === $moduleInstance->isValidPayment()) {
continue;
}
$loopResultRow $loopResultRow
->set('ID', $paymentModule->getId()) ->set('ID', $paymentModule->getId())
->set('TITLE', $paymentModule->getVirtualColumn('i18n_TITLE')) ->set('TITLE', $paymentModule->getVirtualColumn('i18n_TITLE'))

View File

@@ -31,4 +31,15 @@ interface PaymentModuleInterface extends BaseModuleInterface
* @return mixed * @return mixed
*/ */
public function pay(Order $order); public function pay(Order $order);
/**
*
* This method is call on Payment loop.
*
* If you return true, the payment method will de display
* If you return false, the payment method will not be display
*
* @return boolean
*/
public function isValidPayment();
} }

View File

@@ -61,6 +61,20 @@ class Cheque extends BaseModule implements PaymentModuleInterface
// no special process, waiting for the cheque. // no special process, waiting for the cheque.
} }
/**
*
* This method is call on Payment loop.
*
* If you return true, the payment method will de display
* If you return false, the payment method will not be display
*
* @return boolean
*/
public function isValidPayment()
{
return true;
}
public function postActivation(ConnectionInterface $con = null) public function postActivation(ConnectionInterface $con = null)
{ {