Change View to work as instance and render text and json.
This commit is contained in:
parent
b6555ee039
commit
4c4fe6f1f7
@ -11,7 +11,7 @@
|
|||||||
|
|
||||||
namespace Libs;
|
namespace Libs;
|
||||||
|
|
||||||
class View {
|
class View extends Neuron {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Función que "renderiza" las vistas
|
* Función que "renderiza" las vistas
|
||||||
@ -26,13 +26,46 @@ class View {
|
|||||||
* (opcional) Ruta donde se encuentra la vista. En caso de que la vista no se encuentre en esa ruta, se usará la ruta por defecto "src/Views/".
|
* (opcional) Ruta donde se encuentra la vista. En caso de que la vista no se encuentre en esa ruta, se usará la ruta por defecto "src/Views/".
|
||||||
*/
|
*/
|
||||||
public static function render(string $viewName, array $params = [], string $viewPath = null) {
|
public static function render(string $viewName, array $params = [], string $viewPath = null) {
|
||||||
$view = new Neuron($params);
|
$instance = new View($params);
|
||||||
unset($params);
|
$instance->html($viewName, $viewPath);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Renderiza las vistas HTML
|
||||||
|
*
|
||||||
|
* @param string $viewName
|
||||||
|
* Ruta relativa y el nommbre sin extensión del archivo ubicado en src/Views
|
||||||
|
*
|
||||||
|
* @param string $viewPath
|
||||||
|
* (opcional) Ruta donde se encuentra la vista. En caso de que la vista no se encuentre en esa ruta, se usará la ruta por defecto "src/Views/".
|
||||||
|
*/
|
||||||
|
public function html(string $viewName, string $viewPath = null) {
|
||||||
|
$view = $this;
|
||||||
|
|
||||||
if (isset($viewPath) && file_exists($viewPath.$viewName.'.php'))
|
if (isset($viewPath) && file_exists($viewPath.$viewName.'.php'))
|
||||||
return include($viewPath.$viewName.'.php');
|
return include($viewPath.$viewName.'.php');
|
||||||
|
|
||||||
include(ROOT_DIR.'/src/Views/'.$viewName.'.php');
|
include(ROOT_DIR.'/src/Views/'.$viewName.'.php');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Imprime los datos en Json.
|
||||||
|
*
|
||||||
|
* @param object $data
|
||||||
|
*/
|
||||||
|
public function json(object $data) {
|
||||||
|
header('Content-Type: application/json');
|
||||||
|
print(json_encode($data));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Imprime los datos en texto plano
|
||||||
|
*
|
||||||
|
* @param string $txt
|
||||||
|
*/
|
||||||
|
public function text(string $txt) {
|
||||||
|
header('Content-Type: text/plain');
|
||||||
|
print(json_encode($txt));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
|
Loading…
Reference in New Issue
Block a user