protected function get_var_value($name) { $site = false; if ($m = Core_Regexps::match_with_results('{^(.+)/([^/]+)$}', $name)) { $name = trim($m[1]); $site = trim($m[2]); if ($site == '*') { $site = CMS_Admin::site(); } } return CMS::vars()->get($name, $site); }
protected function path($name = false) { $path = self::$dir; $site = CMS::admin() ? CMS_Admin::site() : CMS::site(); if ($site != '__') { $path .= "/{$site}"; } if ($name) { $name = trim(str_replace('.', '/', $name)); $path .= "/{$name}"; } return $path; }
/** * @param string $site */ static function set_site($site) { self::$site = $site; }
protected static function auth_parms($mp, $client) { $auth_parms = array(); if ($mp) { if (is_string($mp)) { $mp = explode(',', $mp); } if (Core_Types::is_iterable($mp)) { foreach ($mp as $_mp) { $_mp = trim($_mp); if ($_mp != '') { $_v = true; if ($m = Core_Regexps::match_with_results('{^([^=]+)=(.+)$}', $_mp)) { $_mp = trim($m[1]); $_v = trim($m[2]); } if ($_mp == 'lang') { CMS::site_set_lang($_v); } if ($_mp == 'admin_sites') { $_asites = explode('|', $_v); $_v = array(); $_las = '__'; foreach ($_asites as $_asite) { $_asite = trim($_asite); if ($_asite != '') { $_v[$_asite] = $_asite; $_las = $_asite; } } if (CMS::admin()) { if (!isset($_v[CMS_Admin::site()])) { header("location: /cms-actions/subsite/{$_las}"); die; } } } CMS::$globals[$_mp] = $_v; $auth_parms[$_mp] = $_v; } } } if ($client) { CMS::$globals['full'] = false; } } return $auth_parms; }