Exemplo n.º 1
0
 private function buildCreditCardValidator(CreditCardPayment $ccHandler = null)
 {
     $validator = $this->getValidator("creditCard", $this->request);
     $validator->addCheck('ccName', new IsNotEmptyCheck($this->translate('_err_enter_cc_name')));
     $validator->addCheck('ccNum', new IsNotEmptyCheck($this->translate('_err_enter_cc_num')));
     $validator->addCheck('ccExpiryMonth', new IsNotEmptyCheck($this->translate('_err_select_cc_expiry_month')));
     $validator->addCheck('ccExpiryYear', new IsNotEmptyCheck($this->translate('_err_select_cc_expiry_year')));
     if ($ccHandler) {
         if ($ccHandler->isCardTypeNeeded()) {
             $validator->addCheck('ccType', new IsNotEmptyCheck($this->translate('_err_select_cc_type')));
         }
         if ($this->config->get('REQUIRE_CVV') && $ccHandler->isCvvRequired()) {
             $validator->addCheck('ccCVV', new IsNotEmptyCheck($this->translate('_err_enter_cc_cvv')));
         }
     }
     $validator->addFilter('ccCVV', new RegexFilter('[^0-9]'));
     $validator->addFilter('ccNum', new RegexFilter('[^ 0-9]'));
     $eavManager = new EavSpecificationManager(EavObject::getInstanceByIdentifier('creditcard'));
     $eavManager->setValidation($validator);
     return $validator;
 }