コード例 #1
0
 /**
  *
  * @param IXP_Form_Customer $form The Send form object
  * @param \Entities\Customer $object The Doctrine2 entity (being edited or blank for add)
  * @param bool $isEdit True if we are editing, otherwise false
  * @return bool If false, the form is not processed
  */
 protected function addPostValidate($form, $object, $isEdit)
 {
     if (!$isEdit && $this->getD2EM()->getRepository('\\Entities\\Customer')->findOneBy(['shortname' => $form->getValue('shortname')])) {
         $form->getElement('shortname')->addError('This shortname is not available');
         return false;
     }
     if ($isEdit) {
         $object->setLastupdated(new DateTime());
         $object->setLastupdatedby($this->getUser()->getId());
         $bdetail = $object->getBillingDetails();
         $rdetail = $object->getRegistrationDetails();
     } else {
         $object->setCreated(new DateTime());
         $object->setCreator($this->getUser()->getUsername());
         $bdetail = new \Entities\CompanyBillingDetail();
         $this->getD2EM()->persist($bdetail);
         $object->setBillingDetails($bdetail);
         $bdetail->setPurchaseOrderRequired(0);
         $rdetail = new \Entities\CompanyRegisteredDetail();
         $this->getD2EM()->persist($rdetail);
         $object->setRegistrationDetails($rdetail);
         $object->setIsReseller(0);
     }
     if (($form->getValue('type') == \Entities\Customer::TYPE_FULL || $form->getValue('type') == \Entities\Customer::TYPE_PROBONO) && !$form->getElement('irrdb')->getValue()) {
         $form->getElement('irrdb')->markAsError();
         return false;
     } else {
         if ($form->getElement('irrdb')->getValue()) {
             if (!($irrdb = $this->getD2EM()->getRepository('\\Entities\\IRRDBConfig')->find($form->getElement('irrdb')->getValue()))) {
                 // should never be executed as it should be caught by registerInArray validator on element.
                 $form->getElement('irrdb')->setErrorMessages(['Invalid IRRDB source'])->markAsError();
                 return false;
             }
             $object->setIRRDB($irrdb);
         } else {
             $object->setIRRDB(null);
         }
     }
     if (!$isEdit) {
         $object->addIXP($this->loadIxpById($form->getValue("ixp")));
     }
     return $this->_setReseller($form, $object);
 }
コード例 #2
0
 public function setRegistrationDetails(\Entities\CompanyRegisteredDetail $registrationDetails)
 {
     $this->__load();
     return parent::setRegistrationDetails($registrationDetails);
 }