From 448f312b2ec0118b2c176d2f101a950f6eb4ff98 Mon Sep 17 00:00:00 2001 From: Emmanuel ROY Date: Mon, 12 Jul 2021 12:04:12 +0200 Subject: [PATCH] =?UTF-8?q?update=20:=20=20-=20modification=20de=20la=20cl?= =?UTF-8?q?asse=20modular,=20pour=20l'int=C3=A9gration=20dans=20des=20temp?= =?UTF-8?q?lates=20propre=20des=20modules=20laravel=20et=20symfony=20(ne?= =?UTF-8?q?=20fonctionne=20qu'avec=20la=20version=204.4=20pour=20l'instant?= =?UTF-8?q?)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- application/class/Modular.php | 50 ++++++++++++++++++++++++++++++----- 1 file changed, 43 insertions(+), 7 deletions(-) diff --git a/application/class/Modular.php b/application/class/Modular.php index ad67355..7ef7735 100644 --- a/application/class/Modular.php +++ b/application/class/Modular.php @@ -19,6 +19,8 @@ class Modular break; case "symfony": break; + case "laravel": + break; case "wordpress": if (isset($options[0])) { switch ($options[0]) { @@ -92,35 +94,69 @@ class Modular public function load($type = "symfony") { - ob_start(); - + global $buffer_sand; switch ($type) { case "gitlist": + ob_start(array('\\MVC\\Classe\\Modular', 'rappel'),0,PHP_OUTPUT_HANDLER_STDFLAGS ^ PHP_OUTPUT_HANDLER_FLUSHABLE); + $level = ob_get_level(); require MODULES_PATH . DIRECTORY_SEPARATOR . $this->getAppName() . DIRECTORY_SEPARATOR . "index.php"; break; case "symfony": + ob_start(array('\\MVC\\Classe\\Modular', 'rappel'),0,PHP_OUTPUT_HANDLER_STDFLAGS ^ PHP_OUTPUT_HANDLER_FLUSHABLE); + $level = ob_get_level(); + $path = MODULES_PATH . DIRECTORY_SEPARATOR . $this->getAppName() . DIRECTORY_SEPARATOR . "public" . DIRECTORY_SEPARATOR . "index.php"; + return require MODULES_PATH . DIRECTORY_SEPARATOR . $this->getAppName() . DIRECTORY_SEPARATOR . "public" . DIRECTORY_SEPARATOR . "index.php"; + break; + case "laravel": + ob_start(array('\\MVC\\Classe\\Modular', 'rappel'),0,PHP_OUTPUT_HANDLER_STDFLAGS ^ PHP_OUTPUT_HANDLER_FLUSHABLE); + $level = ob_get_level(); require MODULES_PATH . DIRECTORY_SEPARATOR . $this->getAppName() . DIRECTORY_SEPARATOR . "public" . DIRECTORY_SEPARATOR . "index.php"; break; case "wordpress": + ob_start(array('\\MVC\\Classe\\Modular', 'rappel'),0,PHP_OUTPUT_HANDLER_STDFLAGS ^ PHP_OUTPUT_HANDLER_FLUSHABLE); + $level = ob_get_level(); require MODULES_PATH . DIRECTORY_SEPARATOR . $this->getAppName() . $this->subapp_dir . DIRECTORY_SEPARATOR . $this->subfile; break; case "prestashop": + ob_start(array('\\MVC\\Classe\\Modular', 'rappel'),0,PHP_OUTPUT_HANDLER_STDFLAGS ^ PHP_OUTPUT_HANDLER_FLUSHABLE); + $level = ob_get_level(); require MODULES_PATH . DIRECTORY_SEPARATOR . $this->getAppName() . $this->subapp_dir . DIRECTORY_SEPARATOR . "index.php"; break; case "phplist": + ob_start(array('\\MVC\\Classe\\Modular', 'rappel'),0,PHP_OUTPUT_HANDLER_STDFLAGS ^ PHP_OUTPUT_HANDLER_FLUSHABLE); + $level = ob_get_level(); require MODULES_PATH . DIRECTORY_SEPARATOR . $this->getAppName() . $this->subapp_dir . DIRECTORY_SEPARATOR . "index.php"; break; case "wanewsletter": + ob_start(array('\\MVC\\Classe\\Modular', 'rappel'),0,PHP_OUTPUT_HANDLER_STDFLAGS ^ PHP_OUTPUT_HANDLER_FLUSHABLE); + $level = ob_get_level(); require MODULES_PATH . DIRECTORY_SEPARATOR . $this->getAppName() . $this->subapp_dir . DIRECTORY_SEPARATOR . $this->subfile; break; case "phpmynewsletter": + ob_start(array('\\MVC\\Classe\\Modular', 'rappel'),0,PHP_OUTPUT_HANDLER_STDFLAGS ^ PHP_OUTPUT_HANDLER_FLUSHABLE); + $level = ob_get_level(); require MODULES_PATH . DIRECTORY_SEPARATOR . $this->getAppName() . $this->subapp_dir . DIRECTORY_SEPARATOR . $this->subfile; break; } - - $data = ob_get_contents(); - ob_end_clean(); - - return $data; + $buffer_sand = ""; + if (ob_get_level() == $level) { + if (ob_get_level() > 1) { + $buffer_sand = ob_get_contents(); + ob_end_clean(); + } else { + $buffer_sand = "BUFFER CLOSURE BY FRAMEWORK !
".$buffer_sand; + } + }else{ + $final_level = ob_get_level(); + $buffer_sand = "BUFFER LEVEL $level CLOSURE $final_level BY FRAMEWORK !
".$buffer_sand; + } + return $buffer_sand; } + public static function rappel($buffer) + { + global $buffer_sand; + $buffer_sand = $buffer; + // remplace toutes les pommes par des carottes + return $buffer; + } }