/**
  * Overridden isValid() method for pre-validation code
  *
  * @param array $formData data typically from a POST or GET request
  *
  * @return bool
  *
  */
 public function isValid($formData = array())
 {
     $pageSession = new Zend_Session_Namespace('portfolio_insurance_quote');
     // Check if this is an AJAX request, and ignore unneeded fields for validation by making them non-mandatory
     $additionalManager = new Manager_Insurance_Portfolio_AdditionalInformation();
     if (isset($formData['declaration1']) && $formData['declaration1'] == "no") {
         $additionCheck = $additionalManager->hasAdditions($pageSession->CustomerRefNo, 1);
         if (!$additionCheck) {
             $this->getElement('additionCheck1')->setRequired(true)->addErrorMessage('You must add a additional Information for declaration question 1');
         }
     }
     if (isset($formData['declaration2']) && $formData['declaration2'] == "no") {
         $additionCheck = $additionalManager->hasAdditions($pageSession->CustomerRefNo, 2);
         if (!$additionCheck) {
             $this->getElement('additionCheck2')->setRequired(true)->addErrorMessage('You must add a additional Information for declaration question 2');
         }
     }
     if (isset($formData['declaration3']) && $formData['declaration3'] == "no") {
         $additionCheck = $additionalManager->hasAdditions($pageSession->CustomerRefNo, 3);
         if (!$additionCheck) {
             $this->getElement('additionCheck3')->setRequired(true)->addErrorMessage('You must add a additional Information for declaration question 2b');
         }
     }
     if (isset($formData['declaration4']) && $formData['declaration4'] == "yes") {
         $additionCheck = $additionalManager->hasAdditions($pageSession->CustomerRefNo, 4);
         if (!$additionCheck) {
             $this->getElement('additionCheck4')->setRequired(true)->addErrorMessage('You must add a additional Information for declaration question 2c');
         }
     }
     if (isset($formData['declaration5']) && $formData['declaration5'] == "yes") {
         $additionCheck = $additionalManager->hasAdditions($pageSession->CustomerRefNo, 5);
         if (!$additionCheck) {
             $this->getElement('additionCheck5')->setRequired(true)->addErrorMessage('You must add a additional Information for declaration question 2d');
         }
     }
     if (isset($formData['declaration6']) && $formData['declaration6'] == "no") {
         $additionCheck = $additionalManager->hasAdditions($pageSession->CustomerRefNo, 6);
         if (!$additionCheck) {
             $this->getElement('additionCheck6')->setRequired(true)->setRequired(true)->addErrorMessage('You must add a additional Information for declaration question 3');
         }
     }
     if (isset($formData['declaration7']) && $formData['declaration7'] == "no") {
         $additionCheck = $additionalManager->hasAdditions($pageSession->CustomerRefNo, 7);
         if (!$additionCheck) {
             $this->getElement('additionCheck7')->setRequired(true)->addErrorMessage('You must add a additional Information for declaration question 4');
         }
     }
     if (isset($formData['declaration8']) && $formData['declaration8'] == "yes") {
         $additionCheck = $additionalManager->hasAdditions($pageSession->CustomerRefNo, 8);
         if (!$additionCheck) {
             $this->getElement('additionCheck8')->setRequired(true)->addErrorMessage('You must add a additional Information for declaration question 5');
         }
     }
     if (isset($formData['declaration9']) && $formData['declaration9'] == "yes") {
         $additionCheck = $additionalManager->hasAdditions($pageSession->CustomerRefNo, 9);
         if (!$additionCheck) {
             $this->getElement('additionCheck9')->setRequired(true)->addErrorMessage('You must add a additional Information for declaration question 6');
         }
     }
     /*
     if(isset($formData['declaration10']) && $formData['declaration10'] == "yes"){
         $additionCheck = $additionalManager->hasAdditions($pageSession->CustomerRefNo,10);
         if(!$additionCheck){
             $this->getElement('additionCheck10')->setRequired(true)->addErrorMessage('You must add a additional Information for declaration question 7');
         }
     }
     */
     if (isset($formData['declaration11']) && $formData['declaration11'] == "yes") {
         $additionCheck = $additionalManager->hasAdditions($pageSession->CustomerRefNo, 11);
         if (!$additionCheck) {
             $this->getElement('additionCheck11')->setRequired(true)->addErrorMessage('You must add a additional Information for declaration question 8');
         }
     }
     if (isset($formData['declaration12']) && $formData['declaration12'] == "yes") {
         $additionCheck = $additionalManager->hasAdditions($pageSession->CustomerRefNo, 12);
         if (!$additionCheck) {
             $this->getElement('additionCheck12')->setRequired(true)->addErrorMessage('You must add a additional Information for declaration question 9');
         }
     }
     /*
     if(isset($formData['declaration13']) && $formData['declaration13'] == "yes"){
         $additionCheck = $additionalManager->hasAdditions($pageSession->CustomerRefNo,13);
         if(!$additionCheck){
             $this->getElement('additionCheck13')->setRequired(true)->addErrorMessage('You must add a additional Information for declaration question 10');
         }
     }
     */
     // Call original isValid()
     return parent::isValid($formData);
 }