Exemplo n.º 1
0
    $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);
});
Exemplo n.º 3
0
// $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));
});