for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace cvweiss\projectbase\Controller\auth\misc;
use cvweiss\projectbase\Mongo;
use cvweiss\projectbase\Session;
class login
{
public function doGet($render, $params)
$render->render("auth/misc/login", $params);
}
public function doPost($render, $params)
$userID = strtolower(filter_input(INPUT_POST, 'userid'));
$pass = filter_input(INPUT_POST, 'password');
$error = null;
$message = null;
$user = Mongo::get()->findDoc('users', ['id' => $userID]);
$hash = $user !== null ? $user->get('password') : null;
if ($hash != null && password_verify($pass, $hash)) {
$message = "Successful login.";
Session::getSession()->set("userID", $userID);
$params['user_name'] = $userID;
} else {
$error = "No such credentials.";
$params['errorCode'] = $error === null ? 'Success' : 'Error';
$params['errorMessage'] = $error === null ? $message : $error;
$render->render('error', $params);