2017-06-13 22:54:16 +02:00
|
|
|
<?php
|
|
|
|
|
2019-03-14 16:48:02 +01:00
|
|
|
namespace MVC\Classe;
|
|
|
|
|
2017-06-13 22:54:16 +02:00
|
|
|
define( "LAYOUT_PATH" , APPLICATION_PATH . DIRECTORY_SEPARATOR . "layout");
|
|
|
|
|
|
|
|
|
|
|
|
class Vue{
|
|
|
|
|
|
|
|
public $ecran;
|
|
|
|
public $block_body;
|
|
|
|
|
|
|
|
public function __construct($baseControlleur){
|
2019-08-09 09:25:45 +02:00
|
|
|
|
|
|
|
$templateData = array();
|
2017-06-13 22:54:16 +02:00
|
|
|
extract( $baseControlleur->modele->page );
|
2019-03-05 13:26:50 +01:00
|
|
|
|
2017-06-13 22:54:16 +02:00
|
|
|
ob_start();
|
2020-02-01 11:41:01 +01:00
|
|
|
if(file_exists(VIEW_PATH.DIRECTORY_SEPARATOR."view".DIRECTORY_SEPARATOR.$name.".blade.php")) {
|
2019-09-09 22:37:17 +02:00
|
|
|
|
2020-02-01 11:41:01 +01:00
|
|
|
//l'inclusion du controlleur doit renvoyer le tableau $templateData
|
|
|
|
require CONTROLLER_PATH . DIRECTORY_SEPARATOR . $name . '.php';
|
|
|
|
//TEMPLATING BLADE
|
|
|
|
$paths = new \SplPriorityQueue;
|
2019-08-09 09:25:45 +02:00
|
|
|
|
2020-02-01 11:41:01 +01:00
|
|
|
$paths->insert(VIEW_PATH . DIRECTORY_SEPARATOR . "system", 100);
|
|
|
|
$paths->insert(VIEW_PATH . DIRECTORY_SEPARATOR . "layout", 200);
|
|
|
|
$paths->insert(VIEW_PATH . DIRECTORY_SEPARATOR . "view", 300);
|
2019-09-09 22:37:17 +02:00
|
|
|
|
2020-02-01 11:41:01 +01:00
|
|
|
$renderer = new \Windwalker\Renderer\BladeRenderer($paths, array('cache_path' => VIEW_PATH . DIRECTORY_SEPARATOR . "cache"));
|
2019-08-09 09:25:45 +02:00
|
|
|
|
2020-02-01 11:41:01 +01:00
|
|
|
//de base on ajoute les parametres du .model et ceux provenant de l'url
|
|
|
|
foreach ($baseControlleur->modele->page as $key => $value) {
|
|
|
|
$templateData[$key] = $value;
|
|
|
|
}
|
|
|
|
echo $renderer->render($name, $templateData);
|
2019-08-12 11:12:37 +02:00
|
|
|
|
2020-02-01 11:41:01 +01:00
|
|
|
}else{
|
|
|
|
include CONTROLLER_PATH . DIRECTORY_SEPARATOR . $name . '.php';
|
2019-09-09 22:37:17 +02:00
|
|
|
}
|
2019-08-12 15:10:25 +02:00
|
|
|
$this->ecran = ob_get_clean();
|
2019-03-05 13:26:50 +01:00
|
|
|
|
2017-06-13 22:54:16 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
}
|