public function getRegistrationDetails()
 {
     $this->__load();
     return parent::getRegistrationDetails();
 }
 /**
  *
  * @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);
 }
Esempio n. 3
0
/**
 * Creates or updates customers registration details from given member array.
 *
 * @param \Entities\Customer $cust   Customer to update or create registration details
 * @param array              $member Members details array parsed from csv file.
 * @param object             $em     Doctrine entity manager.
 * @return void
 */
function createUpdateRegistrationDetails($cust, $member, $em, $countries)
{
    $rdetail = $cust->getRegistrationDetails();
    if (!$rdetail) {
        $rdetail = new \Entities\CompanyRegisteredDetail();
        $em->persist($rdetail);
        $rdetail->addCustomer($cust);
        $cust->setRegistrationDetails($rdetail);
    }
    $rdetail->setRegisteredName($member['company_name']);
    $rdetail->setCompanyNumber($member['company_no']);
    $rdetail->setJurisdiction($member['company_reg_jurisdiction']);
    $rdetail->setAddress1($member['reg_addr1']);
    $rdetail->setAddress2($member['reg_addr2']);
    $rdetail->setAddress3($member['reg_towncity']);
    $rdetail->setTownCity($member['reg_countyregion']);
    $rdetail->setPostcode($member['reg_postcode']);
    $rdetail->setCountry(mapCountry($member['reg_country'], $countries));
}