public function run() { DB::table('users')->delete(); $user = new User(); $user->username = '******'; $user->email = '*****@*****.**'; $user->password = Hash::make('kierkegaard'); $user->save(); $user = new User(); $user->username = '******'; $user->email = '*****@*****.**'; $user->password = Hash::make('usuario1'); $user->save(); $user = new User(); $user->username = '******'; $user->email = '*****@*****.**'; $user->password = Hash::make('usuario2'); $user->save(); $user = new User(); $user->username = '******'; $user->email = '*****@*****.**'; $user->password = Hash::make('usuario3'); $user->save(); $user = new User(); $user->username = '******'; $user->email = '*****@*****.**'; $user->password = Hash::make('participante1'); $user->participant = true; $user->save(); }
public function store(Request $request) { $user = User::find($request['user']['sub']); $participant = new User(); DB::transaction(function () use($request, $participant, $user) { $participant->username = $request->input('name'); $participant->save(); }); return $participant; }
public function twitter(Request $request) { $requestTokenUrl = 'https://api.twitter.com/oauth/request_token'; $accessTokenUrl = 'https://api.twitter.com/oauth/access_token'; $profileUrl = 'https://api.twitter.com/1.1/users/show.json?screen_name='; $client = new GuzzleHttp\Client(); // Part 1 of 2: Initial request from Satellizer. if (!$request->input('oauth_token') || !$request->input('oauth_verifier')) { $requestTokenOauth = new Oauth1(['consumer_key' => Config::get('app.twitter_key'), 'consumer_secret' => Config::get('app.twitter_secret'), 'callback' => Config::get('app.twitter_callback')]); $client->getEmitter()->attach($requestTokenOauth); // Step 1. Obtain request token for the authorization popup. $requestTokenResponse = $client->post($requestTokenUrl, ['auth' => 'oauth']); $oauthToken = array(); parse_str($requestTokenResponse->getBody(), $oauthToken); // Step 2. Send OAuth token back to open the authorization screen. return response()->json($oauthToken); } else { $accessTokenOauth = new Oauth1(['consumer_key' => Config::get('app.twitter_key'), 'consumer_secret' => Config::get('app.twitter_secret'), 'token' => $request->input('oauth_token'), 'verifier' => $request->input('oauth_verifier')]); $client->getEmitter()->attach($accessTokenOauth); // Step 3. Exchange oauth token and oauth verifier for access token. $accessTokenResponse = $client->post($accessTokenUrl, ['auth' => 'oauth'])->getBody(); $accessToken = array(); parse_str($accessTokenResponse, $accessToken); $profileOauth = new Oauth1(['consumer_key' => Config::get('app.twitter_key'), 'consumer_secret' => Config::get('app.twitter_secret'), 'oauth_token' => $accessToken['oauth_token']]); $client->getEmitter()->attach($profileOauth); // Step 4. Retrieve profile information about the current user. $profile = $client->get($profileUrl . $accessToken['screen_name'], ['auth' => 'oauth'])->json(); // Step 5a. Link user accounts. if ($request->header('Authorization')) { $user = User::where('twitter', '=', $profile['id']); if ($user->first()) { return response()->json(['message' => 'There is already a Twitter account that belongs to you'], 409); } $token = explode(' ', $request->header('Authorization'))[1]; $payload = (array) JWT::decode($token, Config::get('app.token_secret'), array('HS256')); $user = User::find($payload['sub']); $user->twitter = $profile['id']; $user->username = $user->username || $profile['screen_name']; $user->save(); return response()->json(['token' => $this->createToken($user)]); } else { $user = User::where('twitter', '=', $profile['id']); if ($user->first()) { return response()->json(['token' => $this->createToken($user->first())]); } $user = new User(); $user->twitter = $profile['id']; $user->username = $profile['screen_name']; $user->save(); return response()->json(['token' => $this->createToken($user)]); } } }
public function store(Request $request) { $validator = Validator::make($request->all(), ['username' => 'required', 'email' => 'required|email|unique:users,email', 'password' => 'required']); if ($validator->fails()) { return response()->json(['message' => $validator->messages()], 400); } $user = new User(); $user->username = $request->input('username'); $user->email = $request->input('email'); $user->password = Hash::make($request->input('password')); $user->name = $request->input('name'); $user->lastname = $request->input('lastname'); $user->save(); $gravatar = md5(strtolower(trim($user->email))); $user->photo = $gravatar; $user->save(); Storage::disk('s3-slam')->put('/slam/profiles/' . $gravatar, file_get_contents('http://www.gravatar.com/avatar/' . $gravatar . '?d=identicon&s=150'), 'public'); return response()->json($user); }