Пример #1
0
        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;
Пример #2
0
<?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');
Пример #3
0
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'];