/**
  * function to sign up by invitation
  *
  * @param object view
  */
 public function post($code = "", $link = "")
 {
     if (preg_match("/(android|avantgo|blackberry|bolt|boost|cricket|docomo|fone|hiptop|mini|mobi|palm|phone|pie|tablet|up\\.browser|up\\.link|webos|wos)/i", $_SERVER["HTTP_USER_AGENT"])) {
         $dob = Carbon::createFromFormat('Y-m-d', Input::get('date_of_birth'))->format('Y-m-d H:i:s');
     } else {
         $dob = Carbon::createFromFormat('d-m-Y', Input::get('date_of_birth'))->format('Y-m-d H:i:s');
     }
     $data = ['id' => '', 'name' => Input::get('name'), 'email' => Input::get('email'), 'password' => Input::get('password'), 'date_of_birth' => $dob, 'gender' => Input::get('gender'), 'role' => 'customer', 'reference_code' => $code, 'invitation_link' => $link];
     if (Input::has('password')) {
         $validator = Validator::make(Input::only('password', 'password_confirmation'), ['password' => 'required|min:8|confirmed']);
         if (!$validator->passes()) {
             $this->errors = $validator->errors();
             $type = 'signup';
         }
     }
     Session::set('API_token', Session::get('API_token_public'));
     // API User
     $API_user = new APIUser();
     $user = $API_user->postDataSignUp($data);
     if ($user['status'] != 'success') {
         $this->errors = $user['message'];
         $type = 'signup';
     } else {
         $infos = [];
         foreach ($this->balin['info'] as $key => $value) {
             $infos[$value['type']] = $value['value'];
         }
         $infos['action'] = route(env('ROUTE_BALIN_CLAIM_VOUCHER'), $user['data']['activation_link']);
         $mail = new APISendMail();
         $result = $mail->welcomemail($user['data'], $infos);
         if (isset($result['message'])) {
             $this->errors = $result['message'];
             $type = 'signup';
         }
         $type = 'login';
     }
     $this->page_attributes->success = "Terima kasih sudah mendaftar, Balin telah mengirimkan hadiah selamat datang untuk Anda melalui email Anda.";
     return $this->generateRedirectRoute('balin.get.login', ['type' => $type]);
 }
Example #2
0
 /**
  * function to sign up new customer
  *
  * @param array of user profile
  */
 public function postSignUp($id = "")
 {
     if (preg_match("/(android|avantgo|blackberry|bolt|boost|cricket|docomo|fone|hiptop|mini|mobi|palm|phone|pie|tablet|up\\.browser|up\\.link|webos|wos)/i", $_SERVER["HTTP_USER_AGENT"])) {
         $dob = Carbon::createFromFormat('Y-m-d', Input::get('date_of_birth'))->format('Y-m-d H:i:s');
     } else {
         $dob = Carbon::createFromFormat('d-m-Y', Input::get('date_of_birth'))->format('Y-m-d H:i:s');
     }
     $data = ['id' => $id, 'name' => Input::get('name'), 'email' => Input::get('email'), 'password' => Input::get('password'), 'date_of_birth' => $dob, 'gender' => Input::get('gender'), 'role' => 'customer'];
     if (Input::has('password') || is_null($id)) {
         $validator = Validator::make(Input::only('password', 'password_confirmation'), ['password' => 'required|min:8|confirmed']);
         if (!$validator->passes()) {
             $this->errors = $validator->errors();
         }
     }
     Session::set('API_token', Session::get('API_token_public'));
     // API User
     $API_user = new APIUser();
     $user = $API_user->postDataSignUp($data);
     if ($user['status'] != 'success') {
         $this->errors = $user['message'];
     }
     $this->page_attributes->success = "Terima kasih sudah mendaftar, Balin telah mengirimkan hadiah selamat datang untuk Anda melalui email Anda.";
     return $this->generateRedirectRoute('balin.get.login', ['type' => 'signup']);
 }