public function register() { $first_name = Input::get('first_name'); $last_name = Input::get('last_name'); $email = Input::get('email'); $phone = Input::get('phone'); $password = Input::get('password'); $device_token = Input::get('device_token'); $device_type = Input::get('device_type'); $validator = Validator::make(array('first_name' => $first_name, 'last_name' => $last_name, 'password' => $password, 'email' => $email, 'phone' => $phone, 'device_token' => $device_token, 'device_type' => $device_type), array('phone' => 'required', 'password' => 'required', 'email' => 'required|email', 'first_name' => 'required', 'last_name' => 'required', 'device_token' => 'required', 'device_type' => 'required|in:android,ios')); $image = Input::file('photo'); if ($image) { $filename = $image->getClientOriginalName(); $filename = pathinfo($filename, PATHINFO_FILENAME); $fullname = Str::slug(Str::random(8) . $filename) . '.' . $image->getClientOriginalExtension(); $upload = $image->move(public_path() . '/uploads/photo', $fullname); } else { $fullname = ""; } if ($validator->fails()) { $error_messages = $validator->messages()->all(); Log::info('Error while during owner registration = ' . print_r($error_messages, true)); $response_array = array('success' => false, 'error' => 'Invalid Input', 'error_code' => 401, 'error_messages' => $error_messages); $response_code = 200; } else { if (User::where('email', '=', $email)->first()) { $response_array = array('success' => false, 'error' => 'Email ID already Registred', 'error_code' => 402); $response_code = 200; } else { $owner = new User(); $owner->first_name = $first_name; $owner->last_name = $last_name; $owner->email = $email; $owner->phone = $phone; if ($password != "") { $owner->password = Hash::make($password); } $owner->token = generate_token(); $owner->token_expiry = generate_expiry(); $owner->device_token = $device_token; $owner->device_type = $device_type; $ckj_assign = Cik::where('status', 0)->first(); /*New Unassigned cik will be assigned to every newly registered user*/ //$ckj_assign = Cik::first(); /*The first cik will be assigned to every newly registered user*/ if ($ckj_assign == Null) { //$owner->cik = 'Not Available'; $response_array = array('success' => false, 'error' => 'Cik Not Available', 'error_code' => 405); $response_code = 200; } else { $owner->cik = $ckj_assign->name; $ckj_change = Cik::find($ckj_assign->id); $ckj_change->status = 1; $ckj_change->save(); $owner->role_id = 1; $owner->photo = $fullname; $owner->save(); // Link device to user by passing $email, $owner->$cik $ExositeController = new ExositeController(); $dashboard_link = $ExositeController->link_device_to_user($email, $owner->cik); $owner->dashboard_link = $dashboard_link; $owner->save(); $response_array = array('success' => true, 'id' => $owner->id, 'first_name' => $owner->first_name, 'last_name' => $owner->last_name, 'phone' => $owner->phone, 'email' => $owner->email, 'device_token' => $owner->device_token, 'device_type' => $owner->device_type, 'token' => $owner->token, 'photo' => $owner->photo, 'cik' => $owner->cik, 'dashboard_link' => $owner->dashboard_link); $response_code = 200; $data = array('name' => $owner->first_name . " " . $owner->last_name, 'email' => $owner->email, 'password' => $password, 'cik' => $owner->cik, 'dashboard_link' => $owner->dashboard_link); Mail::queue('emails.auth.registermail', $data, function ($message) use($owner) { $message->to($owner->email, $owner->first_name . " " . $owner->last_name)->subject('Welcome to CarIO'); }); } } } response: $response = Response::json($response_array, $response_code); return $response; }
public function saveNewUser() { $first_name = Input::get('first_name'); $last_name = Input::get('last_name'); $email = Input::get('email'); $phone = Input::get('phone'); $password = Input::get('password'); $device_token = Input::get('device_token'); $device_type = Input::get('device_type'); $fc = 'flash_error'; $fm = 'Error in creating user'; $validator = Validator::make(array('first_name' => $first_name, 'last_name' => $last_name, 'password' => $password, 'email' => $email, 'phone' => $phone, 'device_token' => $device_token, 'device_type' => $device_type), array('first_name' => 'required|max:255', 'last_name' => 'required|max:255', 'email' => 'required|email|max:255', 'password' => 'required', 'phone' => 'required|max:15', 'device_type' => 'required|in:android,ios', 'device_token' => '')); $image = Input::file('photo'); if ($image) { $filename = $image->getClientOriginalName(); $filename = pathinfo($filename, PATHINFO_FILENAME); $fullname = Str::slug(Str::random(8) . $filename) . '.' . $image->getClientOriginalExtension(); $upload = $image->move(public_path() . '/uploads/photo', $fullname); } else { $fullname = ""; } if ($validator->fails()) { $error_messages = $validator->messages()->all(); Log::info('Error during registration by admin = ' . print_r($error_messages, true)); $fc = 'flash_error'; $fm = implode('<br>', $error_messages); } else { if (User::where('email', '=', $email)->first()) { $fm = 'Email ID is already registered.'; } else { $owner = new User(); $owner->first_name = $first_name; $owner->last_name = $last_name; $owner->email = $email; $owner->phone = $phone; if ($password != "") { $owner->password = Hash::make($password); } $owner->token = generate_token(); $owner->token_expiry = generate_expiry(); $owner->device_token = $device_token; $owner->device_type = $device_type; //$ckj_assign = Cik::where('status',0)->first(); $ckj_assign = Cik::first(); if ($ckj_assign == Null) { $fm = 'Unassigned Cik is not available.'; } else { $owner->cik = $ckj_assign->name; $ckj_change = Cik::find($ckj_assign->id); $ckj_change->status = 1; $ckj_change->save(); $owner->role_id = 1; $owner->photo = $fullname; $owner->save(); // Link device to user by passing $email, $owner->$cik $ExositeController = new ExositeController(); $dashboard_link = $ExositeController->link_device_to_user($email, $owner->cik); $owner->dashboard_link = $dashboard_link; $owner->save(); $data = array('name' => $owner->first_name . " " . $owner->last_name, 'email' => $owner->email, 'password' => $password, 'cik' => $owner->cik, 'dashboard_link' => $owner->dashboard_link); Mail::queue('emails.auth.registermail', $data, function ($message) use($owner) { $message->to($owner->email, $owner->first_name . " " . $owner->last_name)->subject('Welcome to CarIO'); }); $fc = 'flash_success'; $fm = 'New User created successfully.'; } } } return Redirect::back()->with($fc, $fm); }