/** * Ensures that get and setType works as expected * * @return void */ public function testGetSetType() { $validator = new Zend_Validate_CreditCard(); $this->assertEquals(11, count($validator->getType())); $validator->setType(Zend_Validate_CreditCard::MAESTRO); $this->assertEquals(array(Zend_Validate_CreditCard::MAESTRO), $validator->getType()); $validator->setType(array(Zend_Validate_CreditCard::AMERICAN_EXPRESS, Zend_Validate_CreditCard::MAESTRO)); $this->assertEquals(array(Zend_Validate_CreditCard::AMERICAN_EXPRESS, Zend_Validate_CreditCard::MAESTRO), $validator->getType()); $validator->addType(Zend_Validate_CreditCard::MASTERCARD); $this->assertEquals(array(Zend_Validate_CreditCard::AMERICAN_EXPRESS, Zend_Validate_CreditCard::MAESTRO, Zend_Validate_CreditCard::MASTERCARD), $validator->getType()); }
/** * Set payment storage credit card attributes * @return bool * @param string $ccType * @param string $ccOwner * @param string $ccNumber * @param string $ccExpiresYear * @param string $ccExpiresMonth * @param string $ccCvv * @param string $cc_issue_year[optional] * @param string $cc_expires_month[optional] */ public function setCreditCard($ccType, $ccOwner, $ccNumber, $ccExpiresYear, $ccExpiresMonth, $ccCvv, $ccIssueYear = null, $ccIssueMonth = null) { if (empty($ccType) || empty($ccNumber) || empty($ccExpiresYear) || empty($ccExpiresMonth)) { Axis::message()->addError(Axis::translate('checkout')->__('Set full Credit Card Information')); return false; } $validator = new Zend_Validate_CreditCard(); $allowedCcTypes = $this->getCCTypes(); $validator->setType($allowedCcTypes); if (!$validator->isValid($ccNumber)) { foreach ($validator->getMessages() as $message) { Axis::message()->addError($message); } return false; } return $this->getCreditCard()->setCcType($ccType)->setCcOwner($ccOwner)->setCcNumber($ccNumber)->setCcExpiresYear($ccExpiresYear)->setCcExpiresMonth($ccExpiresMonth)->setCcIssueYear($ccIssueYear)->setCcIssueMonth($ccIssueMonth)->setCcCvv($ccCvv) instanceof Axis_CreditCard; }