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…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user