_theme; } if (strlen($theme)==0) { $theme="blue"; } /* Sooner or later the parent will be removed, because all output will * be done by the new view classes. */ class UI extends UI_Default { /** * Create a view from a class in the given theme * * This method will check for a class file in the theme directory * and returns an instance of it. * * @param string $theme theme * @param string $class name of view class * @param array $params parameter passed to constructor of view class * @return object an object of a class implementing the view */ function factory($theme, $class, $params=array()) { /* {{{ */ global $settings, $session; if(file_exists("../views/".$theme."/class.".$class.".php")) { require("../views/".$theme."/class.".$class.".php"); $classname = "LetoDMS_View_".$class; $view = new $classname($params, $theme); /* Set some configuration parameters */ $view->setParam('session', $session); $view->setParam('sitename', $settings->_siteName); $view->setParam('rootfolderid', $settings->_rootFolderID); $view->setParam('disableselfedit', $settings->_disableSelfEdit); $view->setParam('enableusersview', $settings->_enableUsersView); $view->setParam('enablecalendar', $settings->_enableCalendar); $view->setParam('calendardefaultview', $settings->_calendarDefaultView); $view->setParam('enablefullsearch', $settings->_enableFullSearch); $view->setParam('enablelargefileupload', $settings->_enableLargeFileUpload); $view->setParam('printdisclaimer', $settings->_printDisclaimer); $view->setParam('footnote', $settings->_footNote); $view->setParam('logfileenable', $settings->_logFileEnable); $view->setParam('expandfoldertree', $settings->_expandFolderTree); $view->setParam('enablefoldertree', $settings->_enableFolderTree); $view->setParam('enablelanguageselector', $settings->_enableLanguageSelector); $view->setParam('workflowmode', $settings->_workflowMode); $view->setParam('partitionsize', $settings->_partitionSize); return $view; } return null; } /* }}} */ function getStyles() { /* {{{ */ global $settings; $themes = array(); $path = $settings->_rootDir . "views/"; $handle = opendir($path); while ($entry = readdir($handle) ) { if ($entry == ".." || $entry == ".") continue; else if (is_dir($path . $entry) || is_link($path . $entry)) array_push($themes, $entry); } closedir($handle); return $themes; } /* }}} */ function exitError($pagetitle, $error) { global $theme; $tmp = 'ErrorDlg'; $view = UI::factory($theme, $tmp); $view->exitError($pagetitle, $error); } } ?>