| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159 |
- <?php
- /**
- * The context function file of zin of ZenTaoPMS.
- *
- * @copyright Copyright 2023 青岛易软天创网络科技有限公司(QingDao Nature Easy Soft Network Technology Co,LTD, www.cnezsoft.com)
- * @author Hao Sun <sunhao@easycorp.ltd>
- * @package zin
- * @version $Id
- * @link https://www.zentao.net
- */
- namespace zin;
- require_once __DIR__ . DS . 'context.class.php';
- function context()
- {
- return context::current();
- }
- function contextBegin($name)
- {
- return context::create($name);
- }
- function contextEnd()
- {
- return context::pop();
- }
- function enableGlobalRender()
- {
- context::current()->enableGlobalRender();
- }
- function disableGlobalRender()
- {
- context::current()->disableGlobalRender();
- }
- /**
- * @param \zin\node|\zin\iDirective $item
- */
- function renderInGlobal($item)
- {
- return context::current()->renderInGlobal($item);
- }
- /**
- * @param mixed $data
- */
- function skipRenderInGlobal($data)
- {
- return context::current()->skipRenderInGlobal($data);
- }
- function onBuildNode($callback)
- {
- return context::current()->onBuildNode($callback);
- }
- function onRenderNode($callback)
- {
- return context::current()->onRenderNode($callback);
- }
- function onBeforeBuildNode($callback)
- {
- return context::current()->onBeforeBuildNode($callback);
- }
- function onRender($callback)
- {
- return context::current()->onRender($callback);
- }
- function useWg($name)
- {
- $wgClass = requireWg($name);
- return context::current()->addWgRes($wgClass);
- }
- function pageJS()
- {
- return call_user_func_array('\zin\context::js', func_get_args());
- }
- function jsCall()
- {
- return call_user_func_array('\zin\context::jsCall', func_get_args());
- }
- function jsVar()
- {
- return call_user_func_array('\zin\context::jsVar', func_get_args());
- }
- function pageCSS()
- {
- return call_user_func_array('\zin\context::css', func_get_args());
- }
- function import()
- {
- return call_user_func_array('\zin\context::import', func_get_args());
- }
- function setPageData($name, $value)
- {
- $context = context::current();
- if(is_array($value) && empty($name))
- {
- foreach ($value as $key => $val) $context->setData($key, $val);
- return;
- }
- $context->setData($name, $value);
- }
- function getPageData($name)
- {
- $context = context::current();
- if(is_array($name))
- {
- $values = array();
- foreach($name as $propName)
- {
- $values[] = $context->getData($propName);
- }
- return $values;
- }
- return $context->getData($name);
- }
- function data()
- {
- $args = func_get_args();
- if(count($args) >= 2) return setPageData($args[0], $args[1]);
- return getPageData($args[0]);
- }
- /**
- * @param mixed $nameOrData
- * @param mixed ...$values
- */
- function d($nameOrData, ...$values)
- {
- if(is_string($nameOrData))
- {
- $name = $nameOrData;
- }
- else
- {
- $name = '';
- array_unshift($values, $nameOrData);
- }
- context::current()->addDebugData($name, ...$values);
- }
|