if (!isset($gCms)) exit; date_default_timezone_set('Europe/Zurich'); if (!class_exists('SXCache')) { $fn = dirname(__FILE__) . '/lib/sx_cache.class.php'; require_once($fn); } if (!class_exists('ModelCore')) { $fn = dirname(__FILE__) . '/model/static/model.class.php'; require_once($fn); } if (!class_exists('sx_form')) { $fn = dirname(__FILE__) . '/lib/sx_form.class.php'; require_once($fn); } if (!class_exists('sx_tools')) { $fn = dirname(__FILE__) . '/lib/sx_tools.class.php'; require_once($fn); } if (!class_exists('PHPExcel')){ $fn = dirname(__FILE__) . '/lib/ext/PHPExcel.php'; require_once($fn); } class SXCore extends CMSModule { function __construct() { parent::__construct(); $this->loadModelEnvironment(dirname(__FILE__)); $this->loadControllerEnvironment(dirname(__FILE__)); } protected function loadControllerEnvironment($path) { $dir = glob($path . '/controller/*.class.php'); foreach ($dir as $d) { require_once $d; } } /** * @deprecated since 2.1 * @param $path */ protected function loadModelEvironment($path) { $dir = glob($path . '/model/*.model.php'); foreach ($dir as $d) { require_once $d; } } /** * @param $path */ protected function loadModelEnvironment($path) { $dir = glob($path . '/model/*.model.php'); foreach ($dir as $d) { require_once $d; } } public function GetName() { return get_class($this); } public function GetFriendlyName() { return $this->Lang('friendlyname'); } public function GetVersion() { return '2.8'; } public function IsPluginModule() { return true; } public function HasAdmin() { return false; } public function GetAdminDescription() { return ''; } public function GetAuthor() { return 'Simon Schenker'; } public function GetAuthorEmail() { return 'ss@toweb.ch'; } public function GetChangeLog() { return file_get_contents(__FILE__) . '/changelog.txt'; } public function MinimumCMSVersion() { return '2.2.1'; } public function GetAdminSection() { return ''; } public function AllowSmartyCaching() { return FALSE; } public function LazyLoadFrontend() { return TRUE; } public function LazyLoadAdmin() { return TRUE; } public function HasPermission($perm = 'Use SXCore') { return $this->CheckPermission($perm); } public function VisibleToAdminUser() { return $this->HasPermission('Use SXCore'); } public function GetHelp() { return $this->Lang('helptext'); } //public functionMaximumCMSVersion() {return '1.11';} public function InstallPostMessage() { return $this->Lang('postinstall'); } public function UninstallPreMessage() { return $this->Lang('preuninstall'); } public function UninstallPostMessage() { return $this->Lang('postuninstall'); } public function InitializeFrontend() { $this->RegisterModulePlugin(); //$this->RestrictUnknownParams(); } public function SetParameters() { /** Dummy */ } public function CreateStaticRoutes() { /** Dummy */ } protected function getField($fieldName) { return $this->apiPrefix . $fieldName; } public function InitializeAdmin() { $this->SetParameters(); } public function errorMessage($msg) { return '
');
}
public function redirectApplicationError($error_msg)
{
//die(LoTools::pr(debug_backtrace()));
$encoded_message = base64_encode($error_msg);
redirect('/' . (LcLang::getDefaultObject()->name) . '/error/' . $encoded_message);
}
/**
* Hole die Templates solange Debug aktiviert ist direkt aus dem Filesystem
* Ist einfacher um zu arbeiten
*
* @param string $tplName
*/
public function CustomProcessTemplate($tplName)
{
$this->smarty->assign('errormessages', join('
\n', $this->errormessages));
global $gCms;
// solange Debug aktiviert
if ($gCms->config['debug']) {
// Template aus Filesystem holen
echo $this->ProcessTemplate('db/' . $tplName . '.tpl');
} else {
// sonst aus der Datenbank
echo $this->ProcessTemplateFromDatabase($tplName);
}
}
}
?>