public function UpdateUserInfo($job, $data) { if ($job->attempts() > 3) { $job->delete(); } $user_id = $data['id']; $user_data = User::find($user_id); $token = $user_data->token; $InsConnection = KarmaHelper::insertUserConnection($user_data); $updateMeetingRequest = KarmaHelper::updateRequestAndKarmaNote($user_data); $user = User::find($user_id); $tos = $user->termsofuse; $userstatus = $user->userstatus; if ($tos == 1 && $userstatus == 'ready for approval') { $user->userstatus = 'ready for approval'; $user->save(); } if ($tos == 0) { $user->userstatus = 'TOS not accepted'; $user->save(); } if ($tos == 1 && $userstatus == 'approved') { $user->userstatus = 'approved'; $user->save(); } if ($userstatus == 'hidden') { $user->userstatus = 'hidden'; $user->save(); } $job->delete(); }
public function loginWithLinkedin() { // get data from input $code = Input::get('code'); $linkedinService = OAuth::consumer('Linkedin'); if (!empty($code)) { // This was a callback request from linkedin, get the token $token = $linkedinService->requestAccessToken($code); //$token="7ee85959-1809-4899-a10d-626740702f5d"; // Send a request with it. Please note that XML is the default format. $result = json_decode($linkedinService->request('/people/~:(id,first-name,last-name,skills,headline,summary,industry,member-url-resources,picture-urls::(original),location,public-profile-url,email-address,site-standard-profile-request)?format=json'), true); $linkedinid = $result['id']; //echo "<pre>";print_r($token->getAccessToken());echo "</pre>"; //echo $token->accessToken;die; //die(); if (!empty($token)) { //$user = User::where('linkedinid', '=', $linkedinid)->first(); $user = User::where('linkedinid', '=', $linkedinid)->first(); if (!empty($user)) { $user_data = $user->toArray(); $user_id = $user_data['id']; $user_info = User::find($user_id); $user = User::find($user_id); $user->token = $token->getAccessToken(); $user->save(); $CurrentDate = KarmaHelper::currentDate(); $profileupdatedate = $user_info->profileupdatedate; $diffDate = KarmaHelper::dateDiff($CurrentDate, $profileupdatedate); $diffDate = $diffDate->days * 24 + $diffDate->h; $refreshTime = Adminoption::where('option_name', '=', 'connection refresh time')->first(); //echo "<pre>";print_r($refreshTime);echo "</pre>";die(); $InsConnection = KarmaHelper::updateUserProfile($user, $result); if (!empty($refreshTime)) { $refreshTime = $refreshTime->toArray(); $refreshTime = $refreshTime['option_value']; } else { $refreshTime = '360'; } if ($diffDate >= $refreshTime) { $date = Carbon::now()->addMinutes(5); Queue::push('UpdateUser', array('id' => $user_id, 'result' => $result)); } //echo "<pre>";print_r($user);echo "</pre>";die(); if (Auth::loginUsingId($user_id)) { if ($user['registrationstatus'] == '0') { return Redirect::to('register'); } else { return Redirect::to('dashboard'); } } else { return Redirect::route('/'); } } else { if (!isset($result['publicProfileUrl']) || $result['publicProfileUrl'] == '') { $publicProfileUrl = $result['siteStandardProfileRequest']['url']; } else { $publicProfileUrl = $result['publicProfileUrl']; } $user = new User(); $user->fname = $result['firstName']; $user->lname = @$result['lastName']; $user->email = $result['emailAddress']; $user->piclink = @$result['pictureUrls']['values'][0]; $user->linkedinid = $result['id']; $user->summary = @$result['summary']; $user->location = @$result['location']['name']; $user->industry = @$result['industry']; $user->headline = @$result['headline']; $user->linkedinurl = @$publicProfileUrl; $user->token = $token->getAccessToken(); $user->profileupdatedate = date('Y-m-d H:i:s'); $user->save(); $user = $user; $user_id = $user->id; $InsTag = KarmaHelper::insertUsertag($user, $result); Queue::push('MessageSender@newUserEmail', array('user_id' => $user_id)); $InsConnection = KarmaHelper::insertUserConnection($user); if (Auth::loginUsingId($user_id)) { return Redirect::to('dashboard'); } else { return Redirect::route('/'); } } } } else { // get linkedinService authorization $url = $linkedinService->getAuthorizationUri(array('state' => 'DCEEFWF45453sdffef424')); // return to linkedin login url return Redirect::to((string) $url); } }
/** * Function to save user information. * * @return Response */ public function saveuserInfo() { $result = Request::all(); $rules = Validator::make(Request::all(), ['fname' => 'required', 'lname' => 'required', 'email' => 'required', 'linkedinid' => 'required', 'token' => 'required', 'linkedinurl' => 'required']); if ($rules->fails()) { $this->status = 'failure'; $this->message = 'There is something missing So user cant be registered'; return Response::json(array('status' => $this->status, 'message' => $this->message)); } else { $linkedinid = Request::get('linkedinid'); $email = Request::get('email'); $user = User::where('linkedinid', '=', $linkedinid)->orWhere('email', '=', $email)->first(); $randNumber = ApiController::getGUID(); if (!empty($user)) { //This code will execute when user will already register. $user_id = $user->id; $user_data = $user->toArray(); $user_id = $user_data['id']; $user_info = User::find($user_id); $user = User::find($user_id); $user->token = $result['token']; $user->site_token = $randNumber; $user->save(); $CurrentDate = KarmaHelper::currentDate(); $profileupdatedate = $user_info->profileupdatedate; $diffDate = KarmaHelper::dateDiff($CurrentDate, $profileupdatedate); $diffDate = $diffDate->days * 24 + $diffDate->h; $refreshTime = Adminoption::where('option_name', '=', 'connection refresh time')->first(); if (!empty($refreshTime)) { $refreshTime = $refreshTime->toArray(); $refreshTime = $refreshTime['option_value']; } else { $refreshTime = '360'; } if ($diffDate >= $refreshTime) { $date = Carbon::now()->addMinutes(5); Queue::push('UpdateUser', array('id' => $user_id, 'result' => $result)); } $this->status = 'Success'; $this->message = 'You are already registered'; $userStatus = User::where('linkedinid', '=', $linkedinid)->orWhere('email', '=', $email)->select('userstatus')->first(); $userStatus = $userStatus->userstatus; } else { //This code will execute when new user will register. $user = new User(); $user->fname = $result['fname']; $user->lname = @$result['lname']; $user->email = $result['email']; $user->piclink = @$result['piclink']; $user->linkedinid = $result['linkedinid']; $user->summary = @$result['summary']; $user->location = @$result['location']; $user->industry = @$result['industry']; $user->headline = @$result['headline']; $user->linkedinurl = @$result['linkedinurl']; $user->token = @$result['token']; $user->termsofuse = 1; $user->userstatus = 'ready for approval'; $user->noofmeetingspm = 2; $user->profileupdatedate = date('Y-m-d H:i:s'); $user->site_token = $randNumber; $user->save(); $user = $user; $user_id = $user->id; Queue::push('MessageSender@newUserEmail', array('user_id' => $user_id)); //funtion to save data on connections table. $InsConnection = KarmaHelper::insertUserConnection($user); $this->status = 'Success'; $this->message = 'User successfully registered'; $userStatus = User::where('linkedinid', '=', $result['linkedinid'])->orWhere('email', '=', $result['email'])->select('userstatus')->first(); $userStatus = $userStatus->userstatus; } return Response::json(array('status' => $this->status, 'message' => $this->message, 'UserId' => $user_id, 'UserAccesstoken' => $user->site_token, 'UserStatus' => $userStatus)); } }