updated a whole bunch of stuff

This commit is contained in:
Hion-V 2019-05-24 20:18:37 +02:00
parent 4a050eda84
commit ec5a13ccd1
9 changed files with 36 additions and 10 deletions

View File

@ -3,10 +3,13 @@ class ActionHandler
{ {
static function doAction(){ static function doAction(){
$action = ''; $action = '';
if(isset($_GET['action'])){ if(isset($_GET['action'])){
if(!$action == ''){ $action = $_GET['action'];
include_once("./model/actions/model_".$action."php"); }
} if(!$action == ''){
include_once("./model/actions/model_".$action.".php");
} }
} }
} }

View File

@ -39,7 +39,7 @@ Class UserSession{
public static function isSessionValid(){ public static function isSessionValid(){
if(isset($_SESSION['usersession'])){ if(isset($_SESSION['usersession'])){
if(!Database::isSessionValid($_SESSION['usersession']->token, $_SESSION['usersession']->uid)){ if(!Database::isSessionValid($_SESSION['usersession']->token, $_SESSION['usersession']->uid)){
include_once("./model/model_attempt_logout.php"); echo('session invalid in db');
return false; return false;
} }
if(!UserSession::isSessionExpired($_SESSION['usersession'])){ if(!UserSession::isSessionExpired($_SESSION['usersession'])){
@ -86,11 +86,20 @@ Class UserSession{
if(Database::isSessionValid(UserSession::getSession()->token, UserSession::getSession()->uid)){ if(Database::isSessionValid(UserSession::getSession()->token, UserSession::getSession()->uid)){
return true; return true;
} }
} }
else{ else{
return false; return false;
} }
} }
else{
return false;
}
}
public static function updateSigninState(){
if(!UserSession::isUserSignedIn()){
}
} }
} }
?> ?>

View File

@ -121,7 +121,7 @@ Class Database{
} }
else{ else{
//something went wrong, return -1 //something went wrong, return -1
return "dbfetcherror"; return "db_user_invalid";
} }
} }
@ -235,6 +235,7 @@ Class Database{
$query->execute(); $query->execute();
//Check hoeveelheid teruggestuurde rijen //Check hoeveelheid teruggestuurde rijen
if($query->rowCount() == 1){ if($query->rowCount() == 1){
echo('session valid in db<br>');
return true; return true;
} }
else{ else{
@ -242,6 +243,7 @@ Class Database{
} }
} }
static function invalidateSession($token){ static function invalidateSession($token){
echo("hek");
//Init db connection //Init db connection
$con = Database::connectToDB(); $con = Database::connectToDB();
//Bereid query voor //Bereid query voor

View File

@ -15,10 +15,11 @@ include_once("./controller/Database.php");
include_once("./controller/UserSession.php"); include_once("./controller/UserSession.php");
include_once("./controller/HUtils.php"); include_once("./controller/HUtils.php");
include_once("./controller/ActionHandler.php"); include_once("./controller/ActionHandler.php");
//Start session.
session_start(); session_start();
//Execute Actie zo nodig.
ActionHandler::doAction(); ActionHandler::doAction();
UserSession::UpdateSigninState();
//Store de geselecteerde pagina in variabele $page //Store de geselecteerde pagina in variabele $page

View File

@ -0,0 +1,7 @@
<?php
include_once("./controller/UserSession.php");
if(UserSession::isSessionValid()){
Database::invalidateSession(UserSession::getSession()->token);
}
session_destroy();
?>

View File

@ -18,7 +18,7 @@ if(HUtils::issetPost(['email', 'pass', 'pass2', 'name'])){
Database::registerUser($email, $pass, $name); Database::registerUser($email, $pass, $name);
$uid = Database::getUID($email, $pass); $uid = Database::getUID($email, $pass);
Database::registerActivationKey($uid,$verificationKey); Database::registerActivationKey($uid,$verificationKey);
$message = 'Please follow the link to verify your account: http://localhost/webforum_redux/index.php?p=verify&key='.$verificationKey; $message = 'Please follow the link to verify your account: http://localhost/webforum_redux/hforumphp/dev_mvc/index.php?p=verify&key='.$verificationKey;
$headers = 'From: webmaster@example.com' . "\r\n" . $headers = 'From: webmaster@example.com' . "\r\n" .
'Reply-To: webmaster@example.com' . "\r\n" . 'Reply-To: webmaster@example.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion(); 'X-Mailer: PHP/' . phpversion();

View File

@ -1,4 +1,4 @@
<?php <?php
?> ?>

View File

@ -4,4 +4,8 @@ if(UserSession::isUserSignedIn()){
}else{ }else{
include("./view/pagecontent/header/content_header_signedout.php"); include("./view/pagecontent/header/content_header_signedout.php");
} }
if(!UserSession::isSessionValid()){
include_once("./model/actions/model_signout.php");
}
echo('content_header');
?> ?>

View File

@ -3,5 +3,5 @@ include_once("./controller/AssetHandler.php");
AssetHandler::printAsset("logo.png", true, 128); AssetHandler::printAsset("logo.png", true, 128);
?> ?>
<nav> <nav>
<a href="?p=attempt_logout">log out</a> <a href="?p=">home</a> <a href="?p=create_topic">create thread</a> <a href="?p=destroy">simulate $_SESSION expiry</a> <a href="?a=signout">log out</a> <a href="?p=">home</a> <a href="?p=create_topic">create thread</a> <a href="?p=destroy">simulate $_SESSION expiry</a>
</nav> </nav>