Example #1
0
 public function registerFranchisor(Request $request)
 {
     $validator = Validator::make($request->all(), ['email' => 'required|email|unique:users', 'password' => 'required|min:6']);
     if ($validator->fails()) {
         $message = $validator->errors();
         return $this->httpUnprocessableEntity($message);
     }
     $salt = hash('sha256', $request->input('email') . $request->input('password') . time() . mt_rand());
     $new_key = substr($salt, 0, 10);
     $password = md5($request->input('password'));
     $email = $request->input('email');
     $salt = hash('sha256', $email . $password . time() . mt_rand());
     $token = substr($salt, 0, 40);
     if ($this->konfigurasi($new_key)) {
         $user = new User();
         $user->email = $email;
         $user->password = $password;
         $user->key_id = $new_key;
         $user->level = 'franchisor';
         if ($user->save()) {
             $user_id = User::where('email', $email)->first();
             $franchisor = new Franchisor();
             $franchisor->id = $user_id->id;
             $franchisor->save();
             $tokens = new Token();
             $tokens->user_id = $user_id->id;
             $tokens->token = $token;
             $tokens->save();
             /*    $data = array(
                       'name' => 'Pos Mikro',
                   );
                   Mail::send('emails.test', $data, function ($message) {
                       $message
                       ->to('*****@*****.**', 'Tofa Riyadi')
                       ->subject('Registration');
                   });*/
             $response = ['email' => $email, 'token' => $token, 'level' => $user_id->level];
             return $this->httpCreate($response);
         }
     }
     return $this->httpServerError();
 }