public function index() { $languageRefs = RefMapper::type('language'); $bannerTypeRefs = RefMapper::type('banner_type'); $gameRefs = RefMapper::type('game'); $languages = Input::get('languages', []); $bannerTypes = Input::get('banner_types', []); $games = Input::get('games', []); $name = Input::get('name', ''); if (!is_array($bannerTypes)) { $bannerTypes = [$bannerTypes]; } if (!is_array($games)) { $games = [$games]; } if (!is_array($languages)) { $languages = [$languages]; } $followers = intval(Input::get('followers', 0)); $views = intval(Input::get('views', 0)); $videos = intval(Input::get('videos', 0)); $filters = []; if (count($bannerTypes) > 0) { $filters['banner_types'] = $bannerTypes; } else { $filters['banner_types'] = []; } if (count($games) > 0) { $filters['games'] = $games; } else { $filters['games'] = []; } if (count($languages) > 0) { $filters['languages'] = $languages; } else { $filters['languages'] = []; } if ($followers > 0) { $filters['followers'] = $followers; } else { $filters['followers'] = ''; } if ($views > 0) { $filters['views'] = $views; } else { $filters['views'] = ''; } if ($videos > 0) { $filters['videos'] = $videos; } else { $filters['videos'] = ''; } if ($name != '') { $filters['name'] = $name; } else { $filters['name'] = ''; } $twitchers = UserMapper::findTwitchers2($filters); return view('app.pages.user.client.search.index', compact('twitchers', 'filters', 'languageRefs', 'bannerTypeRefs', 'gameRefs')); }
public function referrer($nickname) { $referrer = UserMapper::getTwitcherByNickName($nickname); if ($referrer) { return redirect('/')->withCookie(cookie('referrer', $referrer->id, 86400)); } return redirect('/'); }
public function postClientSignUp(Request $request) { $rules = ['email' => 'required|email', 'password' => 'required|min:6|max:20', 'password2' => 'required|same:password']; $this->validate($request, $rules); $name = $request->get('name', ''); $email = $request->get('email'); $password = $request->get('password'); $localUser = UserMapper::getByEmail($email); if ($localUser && $localUser->type == 'client') { return Redirect::back()->withErrors(['email' => 'Client with this email already exists'])->withInput($request->all()); } if ($name == '') { $name = anonymizeEmail($email); } $data = ['name' => $name, 'email' => $email, 'password' => $password]; $localUser = $this->create($data); $localUser->is_active = 0; $localUser->role = 'user'; $localUser->type = 'client'; $localUser->save(); LogMapper::log('client_register', $localUser->id); NotificationMapper::registration($localUser); $this->sendClientWelcome($localUser, $password); $user = $localUser; return view('app.pages.user.client.auth.post_register', compact('user')); }
public function facebookCallback() { $user = Socialite::driver('facebook')->user(); $provider = 'facebook'; if (Auth::user()) { $localUser = Auth::user(); if ($localUser->profile) { UserMapper::confirmFacebook(Auth::user(), $user); } return redirect('/profile'); } $oauthId = $user->getId(); $localUser = User::oauth($oauthId, $provider)->first(); if ($localUser) { Auth::loginUsingId($localUser->id); return redirect($this->redirectPath); } else { //dd($user); $nickname = $user->getNickname(); $name = $user->getName(); $email = $user->getEmail(); $avatar = $user->getAvatar(); $firstName = $user->offsetGet('last_name'); $lastName = $user->offsetGet('first_name'); $userType = Session::pull('register.user_type'); $type = Session::pull('register.type'); if (!$userType) { $userType = null; } if (!$type) { $type = null; } $data = ['name' => $name, 'first_name' => $firstName, 'last_name' => $lastName, 'email' => $email, 'password' => '', 'city' => null, 'mobile' => null, 'user_type' => $userType, 'type' => $type]; $localUser = $this->create($data); $localUser->provider = $provider; $localUser->oauth_id = $oauthId; if ($nickname == '') { $nickname = $oauthId; } $profile = $localUser->profile; $profile->facebook = 'http://facebook.com/' . $nickname; $profile->confirmed_facebook = true; $localUser->save(); $avatarPath = UserMapper::generateAvatarPath($localUser); try { if ($avatar) { file_put_contents($avatarPath, fopen($avatar, 'r')); $profile->avatar = pathinfo($avatarPath, PATHINFO_BASENAME); } } catch (\Exception $e) { $profile->avatar = null; } $profile->save(); Auth::loginUsingId($localUser->id); if ($user) { return redirect($this->redirectPath); } else { return Redirect::back()->withErrors(['facebook' => trans('register.facebook.fail')]); } } }
public function saveAvatarFromBase64($base64str) { list($format, $base64str) = explode(';', $base64str); list($encoding, $base64str) = explode(',', $base64str); if ($encoding != 'base64') { return false; } $data = base64_decode($base64str); if (strpos($format, 'png') !== false) { $format = 'png'; } if (strpos($format, 'jpg') !== false || strpos($format, 'jpeg') !== false) { $format = 'jpg'; } if (strpos($format, 'gif') !== false) { $format = 'gif'; } $avatarPath = UserMapper::generateAvatarPath($this->user, $format); if (file_put_contents($avatarPath, $data)) { return $avatarPath; } return false; }