added session, moved twig, updated base
This commit is contained in:
parent
f19f59d53a
commit
937e4581ba
51
src/Session.php
Normal file
51
src/Session.php
Normal file
@ -0,0 +1,51 @@
|
||||
<?php
|
||||
|
||||
class Session {
|
||||
private $session;
|
||||
|
||||
public function __construct() {
|
||||
if (!isset($_SESSION)) {
|
||||
session_start();
|
||||
$this->session = $_SESSION;
|
||||
} else {
|
||||
$this->session = $_SESSION;
|
||||
}
|
||||
$this->setToken();
|
||||
}
|
||||
|
||||
public function setToken() {
|
||||
if (!isset($this->session['token'])) {
|
||||
$this->session['token'] = bin2hex(random_bytes(32));
|
||||
}
|
||||
}
|
||||
|
||||
public function set($key, $value) {
|
||||
$this->session[$key] = $value;
|
||||
}
|
||||
|
||||
public function get($key) {
|
||||
return isset($this->session[$key]) ? $this->session[$key] : null;
|
||||
}
|
||||
|
||||
public function flash($key) {
|
||||
$return = $this->get($key);
|
||||
$this->delete($key);
|
||||
return $return;
|
||||
}
|
||||
|
||||
public function debug() {
|
||||
print_r($this->session);
|
||||
}
|
||||
|
||||
public function delete($key) {
|
||||
if (isset($this->session[$key])) {
|
||||
unset($this->session[$key]);
|
||||
}
|
||||
}
|
||||
|
||||
public function write() {
|
||||
$_SESSION = $this->session;
|
||||
session_write_close();
|
||||
}
|
||||
|
||||
}
|
@ -2,21 +2,12 @@
|
||||
require_once(BASEPATH . '/vendor/autoload.php');
|
||||
require_once(BASEPATH . '/App/config.php');
|
||||
|
||||
//Twig
|
||||
function view($name = '', $data = [] ) {
|
||||
$loader = new Twig\Loader\FilesystemLoader(BASEPATH . '/App/views/');
|
||||
$loader->addPath(BASEPATH . '/vendor/4lt/novaconium/twig', 'novaconium');
|
||||
$loader->addPath(BASEPATH . '/App/templates', 'override');
|
||||
$twig = new Twig\Environment($loader);
|
||||
//check if file exists
|
||||
if (file_exists(BASEPATH . '/App/views/' . $name . '.html.twig')) {
|
||||
echo $twig->render("$name" . '.html.twig', $data);
|
||||
return true;
|
||||
} else {
|
||||
echo "Error: Twig Template ($name) Not Found.";
|
||||
return false;
|
||||
}
|
||||
}
|
||||
// Creates twig and the view() function
|
||||
require_once(BASEPATH . '/vendor/4lt/novaconium/src/twig.php');
|
||||
|
||||
// Start a Session
|
||||
require_once(BASEPATH . '/vendor/4lt/novaconium/src/Session.php');
|
||||
$session = new Session();
|
||||
|
||||
// Load Database Class
|
||||
require_once(BASEPATH . '/vendor/4lt/novaconium/src/Database.php');
|
||||
@ -27,3 +18,6 @@ require_once(BASEPATH . '/vendor/4lt/novaconium/src/Router.php');
|
||||
$router = new Router();
|
||||
//$router->debug();
|
||||
require_once($router->controllerPath);
|
||||
|
||||
//write the session
|
||||
$session->write();
|
17
src/twig.php
Normal file
17
src/twig.php
Normal file
@ -0,0 +1,17 @@
|
||||
<?php
|
||||
|
||||
//Twig
|
||||
function view($name = '', $data = [] ) {
|
||||
$loader = new Twig\Loader\FilesystemLoader(BASEPATH . '/App/views/');
|
||||
$loader->addPath(BASEPATH . '/vendor/4lt/novaconium/twig', 'novaconium');
|
||||
$loader->addPath(BASEPATH . '/App/templates', 'override');
|
||||
$twig = new Twig\Environment($loader);
|
||||
//check if file exists
|
||||
if (file_exists(BASEPATH . '/App/views/' . $name . '.html.twig')) {
|
||||
echo $twig->render("$name" . '.html.twig', $data);
|
||||
return true;
|
||||
} else {
|
||||
echo "Error: Twig Template ($name) Not Found.";
|
||||
return false;
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user