return; } if (!empty($layer['div'])) { $div = $layer['div']; } else { $div = null; } $r = View::html($layer['html'], $div); if (!$r && (!isset($layer['divcheck']) || !$layer['divcheck'])) { echo 'Не найден div ' . $layer['div'] . ' infra_html<br>'; } unset($layer['html']); //нефиг в памяти весеть }, 'tpl:div'); Run::runAddList('layers'); Layer::parsedAdd('is'); Event::handler('Layer.isshow', function (&$layer) { $prop = 'is'; $proptpl = $prop . 'tpl'; if (isset($layer[$proptpl])) { $p = $layer[$proptpl]; $p = Template::parse(array($p), $layer); $layer[$prop] = $p; } if (!isset($layer['is']) || is_null($layer['is'])) { $is = true; } else { $is = $layer['is']; } if ($is == '0') { $is = false;
<?php namespace infrajs\layer\env; use infrajs\path\Path; use infrajs\event\Event; use infrajs\controller\Layer; use infrajs\config\Config; Config::get('controller'); Event::handler('Infrajs.oninit', function () { Env::init(); Layer::parsedAdd('envval'); }); Event::handler('layer.oncheck', function (&$layer) { Env::checkinit($layer); }, 'env:config,external'); Event::handler('layer.oncheck', function (&$layer) { Env::envtochild($layer); }, 'env:config,external'); Event::handler('layer.oncheck', function (&$layer) { Env::envframe($layer); }, 'env:config,external'); Event::handler('layer.oncheck', function (&$layer) { Env::envframe2($layer); }, 'env:config,external'); Event::handler('layer.oncheck', function (&$layer) { Env::envmytochild($layer); }, 'env:config,external'); Event::handler('layer.isshow', function (&$layer) { return Env::check($layer); }, 'env:counter,tpl,div,is');
namespace infrajs\controller; use infrajs\event\Event; use infrajs\path\Path; use infrajs\view\View; 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'];