2 namespace User\Service;
7 * Registration, login and forgot password functionality.
10 class Registration extends \User\DataBin\Registration
14 * ExecuteAfter: RegisterFinal.
15 * Register a new dealership and its primary user.
17 * @param object|null $jobRecord
18 * @param object|null $record
19 * @param \Workspace\Utility\ServiceInputParams $contract
22 public function RegisterCompany($meta, $jobRecord, $session, \Workspace\Utility\ServiceInputParams $contract)
24 $contactService = new \Person\Service\Contact();
25 $contactService->setWorkflow(new \Person\Workflow());
26 $companyService = new \Company\Service\Company();
27 $companyService->setWorkflow(new \Company\Workflow());
28 $profileService = new \User\Service\Profile();
29 $profileService->setWorkflow(new \User\Workflow());
30 //\Utility\Debug::errorLog('create contact', $session->Contact);
32 $session->Contact['firstName']=$session->Profile['firstName'];
33 $session->Contact['familyName']=$session->Profile['familyName'];
34 $session->Contact['email']=$session->Profile['email'];
35 $session->Contact['mobile']=$session->Profile['mobile'];
38 $contact = $contactService->create($session->Contact);
39 $session->Company['contact'] = $contact->id;
40 $session->Company['name']= $session->Profile['firstName'].' '.$session->Profile['familyName'];
41 $session->Company['businessName']= $session->Profile['firstName'].' '.$session->Profile['familyName'];
42 $session->Company['group']= '3';
43 $session->Company['groupDivision']= '3';
44 // $session->Company['region']= '1';
45 // $session->Company['city']= '1';
46 // if (isset($session->BillingContact))
48 // //\Utility\Debug::errorLog('create billing contact', $session->BillingContact);
49 // $billingContact = $contactService->create($session->BillingContact);
50 // $session->Company['contbillingContactact'] = $billingContact->id;
52 //\Utility\Debug::errorLog('create company', $session->Company);
53 $company = $companyService->create($session->Company);
54 $session->Profile['company'] = $company->id;
55 // if ($session->Profile['permissions'] < 5 || $session->Profile['permissions'] > 8)
57 // $session->Profile['permissions'] = 5;
59 $session->Profile['permissions'] = 12;
60 \Utility\Debug::errorLog('create profile', $session->Profile);
61 $profile = $profileService->create($session->Profile);
64 $toProfileId = $profile->id;
65 $email = $profile->email;
68 $templateName = 'activation-pending';
71 $params['firstName'] = $profile->firstName;
72 $params['familyName'] = $profile->familyName;
73 $params['message'] = 'Thank you for registering. Your registration was submitted for approval '
74 . 'and you will receive email confirmation once your account has been verified.';
76 #-> Send welcome notification to User.
77 $oNotify = new \Utility\Comms\Notification();
78 $oNotify->sendFromTemplate(
80 $toCompanyId, $toProfileId,
88 #-> Send welcome notification to Admin.
89 $oNotify = new \Utility\Comms\Notification();
90 $oNotify->sendFromTemplate(
92 $toCompanyId, $toProfileId,
93 'info@bid4cars.com.na', $mobile,