示例#1
0
Event::handler('Layer.isshow', function (&$layer) {
    //tpl depricated
    if (is_string(@$layer['tpl']) && @$layer['tplcheck']) {
        //Мы не можем делать проверку пока другой плагин не подменит tpl
        $res = Load::loadTEXT($layer['tpl']);
        if (!$res) {
            return false;
        }
    }
}, 'tplcheck:is');
Event::handler('Layer.isshow', function (&$layer) {
    //tpl depricated
    if (Layer::pop($layer, 'onlyclient')) {
        return;
    }
    return Tpl::jsoncheck($layer);
}, 'jsoncheck:is');
Run::runAddKeys('childs');
Run::runAddList('child');
Event::handler('Layer.oninit', function () {
    $root = Crumb::getInstance();
    if (!$root->is) {
        throw new \Exception('Crumb нужно инициализировать до запуска контроллера');
    }
    Sequence::set(Template::$scope, Sequence::right('infra.Crumb.query'), $root->query);
    Sequence::set(Template::$scope, Sequence::right('infra.Crumb.params'), Crumb::$params);
    Sequence::set(Template::$scope, Sequence::right('infra.Crumb.get'), Crumb::$get);
    $cl = function ($mix = null) {
        return ext\Crumb::getInstance($mix);
    };
    Sequence::set(Template::$scope, Sequence::right('infra.Crumb.getInstance'), $cl);
示例#2
0
 public static function jsoncheck(&$layer)
 {
     if (@$layer['data'] && !is_null(@$layer['jsoncheck'])) {
         $data =& Tpl::getData($layer);
         if (@$layer['jsoncheck']) {
             //Если true значит да только если данные есть
             if (!$data || !is_null($data['result']) && !$data['result']) {
                 return false;
             }
         } elseif (@(!$layer['jsoncheck'])) {
             //Если false Значит да только если данных нет
             if (!$data || !$data['result']) {
                 return;
             } else {
                 return false;
             }
         }
     }
 }