public function validate()
 {
     $form = $this->form;
     /** @var BankInformation $data */
     $data = $this->data;
     if ($this->isNullOrEmptyString($data->getAccountOwnerFirstName())) {
         $form->get('account_owner_first_name')->addError(new FormError('Required.'));
     }
     if ($this->isNullOrEmptyString($data->getAccountOwnerLastName())) {
         $form->get('account_owner_last_name')->addError(new FormError('Required.'));
     }
     if ($this->isNullOrEmptyString($data->getName())) {
         $form->get('name')->addError(new FormError('Required.'));
     }
     if ($this->isNullOrEmptyString($data->getAccountTitle())) {
         $form->get('account_title')->addError(new FormError('Required.'));
     }
     $phoneNumber = $data->getPhoneNumber();
     if ($this->isNullOrEmptyString($phoneNumber)) {
         $form->get('phone_number')->addError(new FormError('Required.'));
     } else {
         $phoneDigits = 10;
         if (!is_numeric($phoneNumber)) {
             $form->get('phone_number')->addError(new FormError("Enter correct phone number."));
         } elseif (strlen($phoneNumber) != $phoneDigits) {
             $form->get('phone_number')->addError(new FormError("Phone number must be {$phoneDigits} digits."));
         }
     }
     if (!is_numeric($data->getRoutingNumber())) {
         $form->get('routing_number')->addError(new FormError('Required.'));
     }
     if (!is_numeric($data->getAccountNumber())) {
         $form->get('account_number')->addError(new FormError('Required.'));
     }
     if (!in_array($data->getAccountType(), BankInformation::getAccountTypeChoices())) {
         $form->get('account_type')->addError(new FormError('Required.'));
     }
     if (!$data->getPdfDocument()) {
         $form->get('pdfDocument')->addError(new FormError('Upload a file.'));
     }
 }
예제 #2
0
 /**
  * Load data fixtures with the passed EntityManager
  *
  * @param \Doctrine\Common\Persistence\ObjectManager $manager
  */
 function load(ObjectManager $manager)
 {
     $client = $this->getReference('user-client');
     $bankInfo = new BankInformation();
     $bankInfo->setClient($client);
     $bankInfo->setAccountOwnerFirstName('Patty');
     $bankInfo->setAccountOwnerMiddleName('Ann');
     $bankInfo->setAccountOwnerLastName('Killington');
     $bankInfo->setJointAccountOwnerFirstName('Bob');
     $bankInfo->setJointAccountOwnerMiddleName('The Destroyer');
     $bankInfo->setJointAccountOwnerLastName('Killington');
     $bankInfo->setName('First bank of NY');
     $bankInfo->setAccountTitle('Killington Bank Account');
     $bankInfo->setPhoneNumber('954-555-5555');
     $bankInfo->setRoutingNumber('01210000');
     $bankInfo->setAccountNumber('66666666');
     $bankInfo->setAccountType(BankInformation::ACCOUNT_TYPE_CHECK);
     $bankInfo->setPdfCopy('true');
     $date = new \DateTime('2013-01-08');
     $bankInfo->setUpdated($date);
     $this->addReference('bank-info', $bankInfo);
     $manager->persist($bankInfo);
     $manager->flush();
 }
예제 #3
0
 public function buildForm(FormBuilderInterface $builder, array $options)
 {
     $builder->add('account_owner_first_name', 'text', array('required' => false))->add('account_owner_middle_name', 'text', array('required' => false))->add('account_owner_last_name', 'text', array('required' => false))->add('joint_account_owner_first_name', 'text', array('required' => false))->add('joint_account_owner_middle_name', 'text', array('required' => false))->add('joint_account_owner_last_name', 'text', array('required' => false))->add('name', 'text', array('required' => false))->add('account_title', 'text', array('required' => false))->add('phone_number', 'text', array('required' => false))->add('routing_number', 'text', array('constraints' => array(new Type(array('type' => 'numeric'))), 'required' => false))->add('account_number', 'text', array('constraints' => array(new Type(array('type' => 'numeric'))), 'required' => false))->add('account_type', 'choice', array('choices' => BankInformation::getAccountTypeChoices(), 'expanded' => true, 'multiple' => false, 'required' => false))->add('pdfDocument', new PdfDocumentFormType());
     $builder->addEventListener(FormEvents::BIND, array($this, 'onBind'));
 }
 /**
  * Create signatures for bank information updating action.
  * Returns array of signatures for client who own bank information
  *
  * @param BankInformation $bankInformation
  * @return DocumentSignature[]
  */
 public function createBankInformationSignature(BankInformation $bankInformation)
 {
     $contributionRepo = $this->om->getRepository('WealthbotClientBundle:AccountContribution');
     $distributionRepo = $this->om->getRepository('WealthbotClientBundle:Distribution');
     $contributions = $contributionRepo->findBy(array('bankInformation' => $bankInformation));
     $distributions = $distributionRepo->findBy(array('bankInformation' => $bankInformation));
     $signatures = array();
     foreach ($contributions as $contribution) {
         $signature = $this->createSignature($contribution);
         if ($bankInformation->getClient() == $contribution->getClientAccount()->getClient()) {
             $signatures[] = $signature;
         }
     }
     foreach ($distributions as $distribution) {
         $signature = $this->createSignature($distribution);
         if ($bankInformation->getClient() == $distribution->getClientAccount()->getClient()) {
             $signatures[] = $signature;
         }
     }
     return $signatures;
 }