$app->render('sessions/new.php', ['forward_url' => $forward_url]); }); //session#create $app->post("/login", SessionsHelper::not_logged_in_user($app), function () use($app, $validator) { $params = $app->request()->post(); $validation = $validator->make($params, array_merge(User::$email_alt_rules, User::$password_rules)); //creating array of validation errors $messages_all = $validation->messages()->all(); //if there is any validation errors if (!empty($messages_all)) { $app->flash('messages', ['danger' => $messages_all]); $app->redirect('/login'); } $user = User::where('email', '=', $params['email'])->first(); if ($user && $user->password_verify($params['password'])) { SessionsHelper::is_activated($app, $user); SessionsHelper::log_in($user); isset($params['remember_me']) ? SessionsHelper::remember($app, $user) : SessionsHelper::forget($app, $user); SessionsHelper::redirect_back_or($app, '/'); } else { $app->flash('messages', ['danger' => ['Invalid email/password combination']]); $app->redirect('/login'); } }); //session#destroy $app->get("/logout", function () use($app) { if (SessionsHelper::logged_in($app)) { SessionsHelper::log_out($app); } $app->redirect('/'); });
PasswordResetsHelper::valid_user($app, $user, $reset_digest); PasswordResetsHelper::check_expiration($app, $user); SessionsHelper::is_activated($app, $user); $app->render('password_resets/edit.php', ['reset_digest' => $reset_digest, 'email' => $email]); }); //password_resets#update $app->post("/password_resets/:reset_digest", SessionsHelper::not_logged_in_user($app), function ($reset_digest) use($app, $validator) { $params = $app->request()->post(); $user = User::where('email', '=', StringHelper::base64_url_decode($params['email']))->first(); PasswordResetsHelper::valid_user($app, $user, $reset_digest); PasswordResetsHelper::check_expiration($app, $user); SessionsHelper::is_activated($app, $user); $validation = $validator->make($params, array_merge(User::$password_rules)); //creating array of errors $message_password_confirmation = array(); if ($params['password'] != $params['password_confirmation']) { $message_password_confirmation = ['Password confirmation doesn\'t match']; } $messages_validation = $validation->messages()->all(); $messages_all = array_merge($message_password_confirmation, $messages_validation); //if there is any validation errors if (!empty($messages_all)) { $app->flash('messages', ['danger' => $messages_all]); $app->redirect('/password_resets/' . $reset_digest . '/edit/' . $params['email']); } $user->create_digest('password', $params['password']); $user->save(); SessionsHelper::log_in($user); $app->flash('messages', ['success' => ['Password has been reset']]); $app->redirect('/users/' . $user->id); });
// $capsule->setAsGlobal(); // $user = UsersFactory::createUser(); // $user = new User; $validator = new Validator($app->db); $cart; // $cart = new ShoppingCart(); // $app->notFound(function () use ($app) { // $app->render('404.php'); // }); /** * Add some twig extensions */ $app->view->parserExtensions = [new \Slim\Views\TwigExtension(), new Twig_Extension_Debug()]; /** * Add some data to view */ $app->hook('slim.before.dispatch', function () use($app) { // $userparams = $user->getParams(); // $categories = $user->getCategories(); // $cart_count = $cart->getCount(); // $app->view()->setData(array( // 'userparams' => $userparams, // 'cart_count' => $cart_count, // 'error' => $error, // 'success' => $success, // 'categories' => $categories // )); // echo '<pre>'; var_dump($_SESSION);exit; $current_user = SessionsHelper::current_user($app); $app->view()->setData(array('current_user' => $current_user)); });