public static function checklogin($login, $pasw)
 {
     $_SESSION["msg"] = "Deze combinatie komt niet voor. Mogelijk maakte u een vergissing.";
     $connection = new W_DatabaseHelper("cms");
     $match = FALSE;
     ////////// SALT ophalen
     $querygetsalt = "SELECT salt FROM users WHERE naam LIKE :login";
     $bindValues = [":login" => $login];
     $saltArr = $connection->query($querygetsalt, $bindValues);
     //var_dump($saltArr);
     //var_dump("saltArrayDump in registratie");
     //////////SALT gebruiken in combinatie met paswoord...
     //////////kijken of het gehashte pasw + salt voorkomt in de DB...
     if (sizeof($saltArr) === 1) {
         $salt = $saltArr[0]["salt"];
         //var_dump($salt);
         $hashedpasw = hash("sha256", $pasw . $salt);
         //var_dump($hashedpasw);
         $querystring = "SELECT * \n\t\t\t\t\t\t\t\tFROM users \n\t\t\t\t\t\t\t\tWHERE naam LIKE :login \n\t\t\t\t\t\t\t\tAND salt LIKE :salt\n\t\t\t\t\t\t\t\tAND  paswoord LIKE :hashedpasw\n\t\t\t\t\t\t\t\t";
         $bindValues = [":login" => $login, ":salt" => $salt, ":hashedpasw" => $hashedpasw];
         $resultset = $connection->query($querystring, $bindValues);
         //var_dump($querystring);
         $_SESSION["msg"] = FALSE;
         //$resultset = $connection->query($querystring);
         //var_dump($resultset);
         if (sizeof($resultset) === 1) {
             $match = $resultset[0]["userid"];
             $_SESSION["user"] = $match;
             $_SESSION["username"] = $login;
             var_dump($_SESSION);
         }
     }
     return $match;
 }
function registreerNieuweUser($login, $pasw)
{
    $_SESSION["msg"] = "Registratie niet gelukt. Probeer later opnieuw.";
    //default message
    //controleren of de login reeds gebruikt is....
    $connection = new W_DatabaseHelper("cms");
    $querystring = "SELECT * \n\t\t\t\t\t\t FROM users \n\t\t\t\t\t\t WHERE naam LIKE :login \n\t\t\t\t\t\t";
    $bindValues = [":login" => $login];
    $resultset = $connection->query($querystring, $bindValues);
    //$resultset = $connection->query($querystring);
    //var_dump($resultset);
    if (sizeof($resultset) > 0) {
        $_SESSION["msg"] = "Deze naam is reeds in gebruik. Gelieve een andere login te kiezen.";
    } else {
        $querystring = "INSERT INTO users(naam, paswoord, salt) \n\t\t\t\t\t\t\tVALUES (:login, :pasw, :newsalt) \n\t\t\t\t\t\t\t";
        ///// SECURITY voor paswoord...
        //salt aanmaken
        $newsalt = generateSalt();
        //parameter 5 in onderstaande lijn betekent dat we kiezen voor algoritme SHA256...
        $pasw = hash("sha256", $pasw . $newsalt);
        //var_dump($pasw);
        $bindValues = [":login" => $login, ":pasw" => $pasw, ":newsalt" => $newsalt];
        $resultset = $connection->query($querystring, $bindValues);
        $validatedUser = LoginHelper::checklogin($login, $pasw);
        $_SESSION["msg"] = "Proficiat met uw registratie. U bent meteen ook ingelogd met uw nieuwe login en paswoord.";
        /// get the new user's userid...
        $querystring = "SELECT userid FROM users\n\t\t\t\t\t\t\tWHERE naam LIKE :login \n\t\t\t\t\t\t\tAND paswoord LIKE :pasw \n\t\t\t\t\t\t\tAND salt LIKE :newsalt\n\t\t\t\t\t\t\t";
        $bindValues = [":login" => $login, ":pasw" => $pasw, ":newsalt" => $newsalt];
        $resultset = $connection->query($querystring, $bindValues);
        //var_dump($resultset);
        $_SESSION["user"] = $resultset[0]["userid"];
        $_SESSION["username"] = $login;
    }
    //return $resultmessage;
}
 public static function connect($databasename, $username = '******', $password = '', $hostname = 'localhost', $databasetype = "mysql")
 {
     $connection = new PDO($databasetype . ":host=" . $hostname . ";dbname=" . $databasename, $username, $password);
     self::$connection = $connection;
     //var_dump(self::$connection);
     return $connection;
 }
 function registreerNieuweUser($login, $pasw)
 {
     //controleren of de login reeds gebruikt is....
     $connection = new W_DatabaseHelper("cms");
     $querystring = "SELECT * \n\t\t\t\t\t\t FROM users \n\t\t\t\t\t\t WHERE naam LIKE :login \n\t\t\t\t\t\t";
     $bindValues = [":login" => $login];
     $resultset = $connection->query($querystring, $bindValues);
     //$resultset = $connection->query($querystring);
     //var_dump($resultset);
     if (sizeof($resultset) > 0) {
         $resultmessage = "Deze naam is reeds in gebruik. Gelieve een andere login te kiezen.";
     } else {
         $querystring = "INSERT INTO users(naam, paswoord) \n\t\t\t\t\t\t\tVALUES (:login, :pasw) \n\t\t\t\t\t\t\t";
         $bindValues = [":login" => $login, ":pasw" => $pasw];
         $resultset = $connection->query($querystring, $bindValues);
         $validatedUser = checklogin($login, $pasw);
         $resultmessage = "Proficiat met uw registratie. U bent meteen ook ingelogd met uw nieuwe login en paswoord.";
         $_SESSION["user"] = $validatedUser;
         $_SESSION["username"] = $login;
     }
     return $resultmessage;
 }
    $_POST["toonArtikels"] = 0;
}
if (!isset($_POST["toonUsers"])) {
    $_POST["toonUsers"] = 0;
}
////////// Automatisch zoeken naar css en javascript
$cssfinder = new FileFinder();
$css = $cssfinder->FindEm("../css/", "*.{css}");
$jsfinder = new FileFinder();
$js = $jsfinder->FindEm("../js/", "*.{js}");
////////// Make connection to database
////////// Init Variables
$currentpage = basename($_SERVER["PHP_SELF"]);
$X = new W_DebugHelper();
// Artikels ophalen...
$connection = new W_DatabaseHelper("cms");
$querystring = "SELECT * FROM artikel";
$resultset = $connection->query($querystring);
$querystring = "SELECT * FROM users";
$userset = $connection->query($querystring);
if (isset($_POST["toggleArtikels"])) {
    if ($_POST["toonArtikels"] == 1) {
        $_POST["toonArtikels"] = 0;
        unset($_POST["toggleArtikels"]);
    } else {
        $_POST["toonArtikels"] = 1;
        unset($_POST["toggleArtikels"]);
    }
}
if (isset($_POST["toggleUsers"])) {
    if ($_POST["toonUsers"] == 1) {
////////// Make connection to database
////////// Init Variables
$currentpage = basename($_SERVER["PHP_SELF"]);
///////// Functionality
//check if this user is logged in..
if (!isset($_SESSION["user"])) {
    //user is NOT logged in
    header('location: ../index.php');
} else {
    if (isset($_POST["annuleer"])) {
        header("location: overzicht-artikelen.php");
    }
    if (isset($_POST["VoegArtikelToe"])) {
        //artikel toevoegen aan database EN automatisch linken aan de huidige gebruiker.
        ////////// ARTIKEL TOEVOEGEN
        $connection = new W_DatabaseHelper("cms");
        $querystring = "INSERT INTO artikel (title, inhoud, imagelink, kernwoorden, date, is_active) \n\t\t\t\t\t\t\tVALUES (:titel, :inhoud, :imglink, :kernwoorden, current_date(), 1 )";
        $bindValues = [":titel" => $_POST["titel"], ":inhoud" => $_POST["inhoud"], ":imglink" => $_POST["imglink"], ":kernwoorden" => $_POST["kernwoorden"]];
        //var_dump($bindValues);
        $resultset = $connection->query($querystring, $bindValues);
        //var_dump($resultset);
        ////////// LINK TUSSEN ARTIKEL EN HUIDIGE GEBRUIKER
        //ophalen van de id van het nieuwe artikel
        $querystring = "SELECT art_id FROM artikel ORDER BY art_id DESC LIMIT 1";
        $resultset = $connection->query($querystring);
        $newartid = $resultset[0]["art_id"];
        $curruser = $_SESSION["user"];
        $querystring = "INSERT INTO user_art ( userid, art_id)\n\t\t\t\t\t\t\tVALUES ({$curruser}, {$newartid})";
        $resultset = $connection->query($querystring);
        header("location: overzicht-artikelen.php");
    }
                $message[ 'text' ]	=	'<p>Size: ' . $_FILES["file"]["size"] / 1024 .'</p>';
                $message[ 'text' ]	=	'<p>Temp file: ' . $_FILES["file"]["tmp_name"] .'</p>';
                $message[ 'text' ]	=	'<p>Opgeslagen in: : ' . ROOT . "/img/" . $_FILES["file"]["name"] .'</p>';
                */
                //en de link naar deze foto wordt bijgehouden in de database, bij de user
                $connection = new W_DatabaseHelper("cms");
                $querystring = "UPDATE users SET users.picture = :imagelink WHERE users.userid = :userid";
                $bindValues = [":imagelink" => "img/" . $filename, ":userid" => $_SESSION["user"]];
                $resultset = $connection->query($querystring, $bindValues);
                //	$X->dump($bindValues);
            }
        }
    } else {
        //throw new Exception( 'Ongeldig bestand' );
    }
    $connection = new W_DatabaseHelper("cms");
    $querystring = "SELECT users.naam, users.picture FROM users WHERE users.userid = :userid";
    $bindValues = [":userid" => $_SESSION["user"]];
    //unset($_SESSION["aantepassenartikel"]);
    $user = $connection->query($querystring, $bindValues);
    $_SESSION["msg"] = "Wijzigingen zijn uitgevoerd.";
    //header("location: overzicht-artikelen.php");
}
function GetAvailableName($name)
{
    if (file_exists(ROOT . "/img/" . $name)) {
        //Als het bestand reeds bestaat in de map, moet er een foutboodschap getoond worden
        $name = "1" . "{$name}";
        return GetAvailableName($name);
    } else {
        return $name;
$datbasetype = "mysql";
$databasename = 'bieren';
$host = 'localhost';
try {
    ////////// Automatisch zoeken naar klasses....
    function __autoload($classname)
    {
        require_once "class/" . $classname . ".php";
    }
    ////////// Automatisch zoeken naar css en javascript
    $cssfinder = new FileFinder();
    $css = $cssfinder->FindEm("css/", "*.{css}");
    $jsfinder = new FileFinder();
    $js = $jsfinder->FindEm("js/", "*.{js}");
    ////////// Make connection to database
    $connection = new W_DatabaseHelper("bieren");
    ////////// VARIABELEN instellen
    $currentpage = basename($_SERVER["PHP_SELF"]);
    $updateRecord = FALSE;
    $biernr = "";
    $naam = "";
    $brouwernr = "";
    $soortnr = "";
    $alcohol = "";
    //var_dump($currentpage);
    ////////// Is er een element gekozen voor Update???
    if (isset($_POST["update"])) {
        //var_dump("!!UPDATE!!");
        //var_dump($_POST["update"]);
        //
        $resultset = $connection->query("SELECT biernr, naam, brouwernr, soortnr, alcohol FROM bieren WHERE biernr = :biernr", [":biernr" => $_POST["update"]]);