miniflux-legacy/app/core/Template.php

35 lines
854 B
PHP
Raw Normal View History

2013-02-18 03:48:21 +01:00
<?php
2015-08-29 03:34:34 +02:00
namespace Template;
2013-02-18 03:48:21 +01:00
2016-08-19 03:02:49 +02:00
const PATH = __DIR__.'/../templates/';
2013-02-18 03:48:21 +01:00
// Template\load('template_name', ['bla' => 'value']);
function load()
{
if (func_num_args() < 1 || func_num_args() > 2) {
die('Invalid template arguments');
}
if (! file_exists(PATH.func_get_arg(0).'.php')) {
die('Unable to load the template: "'.func_get_arg(0).'"');
}
if (func_num_args() === 2) {
if (! is_array(func_get_arg(1))) {
die('Template variables must be an array');
}
extract(func_get_arg(1));
}
ob_start();
include PATH.func_get_arg(0).'.php';
return ob_get_clean();
}
function layout($template_name, array $template_args = array(), $layout_name = 'layout')
2013-02-18 03:48:21 +01:00
{
return load($layout_name, $template_args + array('content_for_layout' => load($template_name, $template_args)));
2014-03-17 02:56:43 +01:00
}