wpValidatorTransferSol.class.php 1.1 KB

123456789101112131415161718192021
  1. <?php
  2. class wpValidatorTransferSol extends sfValidatorBase {
  3. public function configure($options = array(), $messages = array()) {
  4. $this->addMessage('identical', 'Merci de sélectionner des adhérents différents');
  5. $this->addMessage('not_enough_sol', 'Le compte ' . wpConfig::getAdditionalCurrencyName() . ' de cet adhérent (%amount%) n\'est pas suffisant pour effectuer ce transfert');
  6. }
  7. protected function doClean($values) {
  8. if ($values['katao_member_2_id'] == $values['katao_member_1_id']) {
  9. throw new sfValidatorErrorSchema($this, array('katao_member_2_id' => new sfValidatorError($this, 'identical')));
  10. }
  11. $katao_member = KataoMemberPeer::retrieveByPK($values['katao_member_1_id']);
  12. if ($katao_member && $values['amount'] > $katao_member->getCurrentAmountSol()) {
  13. throw new sfValidatorErrorSchema($this, array('katao_member_2_id' => new sfValidatorError($this, 'not_enough_sol', array('amount' => $katao_member->getCurrentAmountSolStr()))));
  14. }
  15. return $values;
  16. }
  17. }