public function validate() { return Params::Validate($this, array('firstName' => I18N::String('Please enter a first name'), 'lastName' => I18N::String('Please enter a last name'), 'creditCardType' => I18N::String('Please select your credit card type'), 'creditCardNumber' => I18N::String('Please enter your credit card number'), 'expirationMonth' => I18N::String('Please select the month this credit card expires'), 'expirationYear' => I18N::String('Please select the year this credit card expires'), 'cvv2Number' => I18N::String('Please enter your security code'), 'address1' => I18N::String('Please enter your billing address'), 'city' => I18N::String('Please enter your billing city'), 'state' => I18N::String('Please enter your billing state'), 'zip' => I18N::String('Please enter your billing zipcode'), 'amount' => array(array(Params::VALIDATE_EMPTY, I18N::String('The amount of your purchase could not be found')), array(Params::VALIDATE_NUMERIC, I18N::String('The amount of the service should be numeric'))))); }