Exemplo n.º 1
0
use infrajs\layer\tpl\Tpl;
/**
 * У слоя созданы свойства
 * tpl, json, dataroot, tplroot, data, tplcheck, datacheck
 **/
Path::req('*controller/infra.php');
Event::handler('oninit', function () {
    Layer::parsedAdd('tpl');
    Layer::parsedAdd('json');
    Layer::parsedAdd('dataroot');
    Layer::parsedAdd('tplroot');
}, 'tpl');
Event::handler('layer.oncheck', function (&$layer) {
    Tpl::tplroottpl($layer);
    Tpl::dataroottpl($layer);
    Tpl::tpltpl($layer);
    Tpl::jsontpl($layer);
}, 'tpl:div,env,config');
Event::handler('layer.isshow', function (&$layer) {
    if (@$layer['tpl']) {
        return;
    }
    $r = true;
    if (!empty($layer['parent'])) {
        //Пустой слой не должен обрывать наследования если какой=то родитель скрывает всю ветку
        $r = $layer['parent']['is_save_branch'];
        if (is_null($r)) {
            $r = true;
        }
    }
    $layer['is_save_branch'] = $r;