db = $db; if (empty($_SESSION['sys']['baseurl']) && substr($_SERVER['SCRIPT_FILENAME'],-10) == '/index.php') { $this->urlbase = substr(substr($_SERVER['SCRIPT_FILENAME'],0,-9), strlen($_SERVER['DOCUMENT_ROOT'])); } else { if (substr($_SESSION['sys']['baseurl'],0,1) != '/') $_SESSION['sys']['baseurl'] = '/' . $_SESSION['sys']['baseurl']; if (substr($_SESSION['sys']['baseurl'],-1) != '/') $_SESSION['sys']['baseurl'] .= '/'; $this->urlbase = $_SESSION['sys']['baseurl']; } if (!empty($_REQUEST['table']) && empty($_REQUEST['source']) && substr($_REQUEST['table'],0,5) == 'grid_') { $_REQUEST['source'] = substr($_POST['table'],5); } if (!empty($_REQUEST['source'])) { $parts = explode('__', $_REQUEST['source']); if (count($parts) > 1) { $this->module = $parts[0]; $this->page = $parts[1]; if (count($parts) == 4) { $this->second = $parts[2]; } } } elseif (!empty($_GET['mask'])) { list($this->module, $this->page) = explode('__', $_GET['mask']); } elseif (basename($_SERVER['SCRIPT_FILENAME']) == 'ricoXMLquery.php' && !empty($_GET['id'])) { list($this->module, $this->page) = explode('__', substr($_GET['id'],5)); } elseif (!empty($_SERVER['REQUEST_URI']) && isset($_SESSION['sys']['baseurl'])) { $uri = rtrim(substr($_SERVER['REQUEST_URI'], strlen($_SESSION['sys']['baseurl'])), '/'); $parts = explode('/', $uri); if (count($parts) == 2) { $this->module = $parts[0]; $this->page = $parts[1]; } } } public function basedir() { if (isset($_SESSION['sys']['basedir'])) return $_SESSION['sys']['basedir']; return $_SERVER['DOCUMENT_ROOT'] . $this->urlbase(); } public function urlbase() { return $this->urlbase; } public function module() { return $this->module; } public function page() { return $this->page; } public function second() { return $this->second; } public function isSecond() { return !is_null($this->second); } public function isMobile() { return strpos($_SERVER['HTTP_USER_AGENT'], 'Android') !== false || strpos($_SERVER['HTTP_USER_AGENT'], 'iPhone') !== false; } public function parentMenu() { $sql = sprintf("SELECT parent FROM sys_menuitem WHERE module = %s AND page = %s", $this->db->quote($this->module), $this->db->quote($this->page)); $parent = $this->db->fetchValue($sql); if ($parent === 0) return ''; return $parent; } public function setTitle($title) { $this->title = $title; } public function getTitle() { if (is_null($this->title) && isset($_GET['login']) && $_GET['login'] == 'true') return ''; return $this->title; } }