public function init($session) { // ------------------------------------------------------------------------------ // set session if ($session) { system::set('OLIV_SESSION', $session . "/"); } else { die("***FATAL ERROR: init.php - no session defined"); } // core path for multisession defined if (!system::OLIV_CORE_PATH()) { die("Core path not defined"); } // ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------ // load basic system methods OLIVCore::loadScript("library/init.php"); if (!system::OLIVENV()) { die("Environment not set"); } // ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------ // ------------------------------------------------------------------------------ // load system language if (!system::OLIVTEXT()) { die("INIT: OLIVTEXT not found"); } OLIVText::load(system::OLIV_LANGUAGE_PATH(), system::OLIV_CORE_TEXT()); // ------------------------------------------------------------------------------ // initialice main components // ------------------------------------------------------------------------------ // connect to database // $this->daba = new OLIVDatabase($this->coreXml->_("core.database")); // initialise router $this->route = new OLIVRoute(); // initialise html $this->html = new OLIVHtml(); // load module metadata $this->module = new OLIVModule(); // load plugin metadata $this->plugin = new OLIVPlugin(); // load site template $this->template = new OLIVTemplate(system::OLIV_TEMPLATE_PATH() . system::OLIV_TEMPLATE() . "/", system::OLIV_TEMPLATE()); // initialise page $this->page = new OLIVPage(); // initialise preprocessor $this->processor = new OLIVProcessor(); // initialise renderer $this->render = new OLIVRender(); // ------------------------------------------------------------------------------ // set core status // ------------------------------------------------------------------------------ // extract command and value if (status::val()) { // extract cmd and param $cmdArray = explode("/", cut_slash(status::val())); // TODO define commands in system section ??? // search for command and retranslate if (count($cmdArray)) { $cmd = OLIVText::getId($cmdArray[0]); status::set('command', $cmd); // save command } // if command found, extract command from val if (count($cmdArray) > 1 and $cmd) { array_shift($cmdArray); // remove command from val status::set('val', implode("/", $cmdArray)); // save val } } // ------------------------------------------------------------------------------ // initialize clipboard // get content from clipboard parameter if ($clipboard = argv::clipboard()) { OLIVClipboard::_($clipboard); } // get clipboard from cut/copy command $command = status::command(); if ($command) { OLIVClipboard::$command(status::val()); } }