*/
/** SquirrelMail required files. */
-require_once(SM_PATH . 'include/validate.php');
-require_once(SM_PATH . 'functions/plugin.php');
-require_once(SM_PATH . 'functions/constants.php');
+include_once(SM_PATH . 'functions/constants.php');
+include_once(SM_PATH . 'include/validate.php');
+include_once(SM_PATH . 'functions/plugin.php');
+
if( ! sqgetGlobalVar('username', $username, SQ_SESSION) ) {
$username = '';
$theme = ( !isset($theme) ? array() : $theme );
$color = ( !isset($color) ? array() : $color );
+$aTemplateSet = ( !isset($aTemplateSet) ? array() : $aTemplateSet );
$chosen_theme = getPref($data_dir, $username, 'chosen_theme');
+$sTplDir = getPref($data_dir, $username, 'sTplDir');
+
+$found_templateset = false;
+
+/* need to adjust $chosen_template path with SM_PATH */
+$sTplDir = preg_replace("/(\.\.\/){1,}/", SM_PATH, $sTplDir);
+
+for ($i = 0; $i < count($aTemplateSet); ++$i){
+ if ($aTemplateSet[$i]['PATH'] == $sTplDir) {
+ $found_templateset = true;
+ break;
+ }
+}
+$sTplDir = ($found_templateset ? $sTplDir : '');
+if (!$found_templateset) {
+ if (isset($aTemplateSet) && isset($aTemlateSet[$templateset_default]) && file_exists($aTemplateSet[$templateset_default]['PATH'])) {
+ $sTplDir = $aTemplateSet[$templateset_default]['PATH'];
+ } else {
+ $sTplDir = SM_PATH.'templates/default/';
+ }
+} else if (!file_exists($sTplDir)) {
+ $sTplDir = SM_PATH.'templates/default/';
+}
+
$found_theme = false;
/* need to adjust $chosen_theme path with SM_PATH */
}
$chosen_theme = (!$found_theme ? '' : $chosen_theme);
+
/**
* This theme as a failsafe if no themes were found. It makes
* no sense to cause the whole thing to exit just because themes
$theme=array();
/* SquirrelMail required files. */
-require_once(SM_PATH . 'class/mime.class.php');
-require_once(SM_PATH . 'functions/global.php');
-require_once(SM_PATH . 'functions/strings.php');
-require_once(SM_PATH . 'config/config.php');
+include_once(SM_PATH . 'class/mime.class.php');
+include_once(SM_PATH . 'functions/global.php');
+include_once(SM_PATH . 'functions/strings.php');
/* set the name of the session cookie */
if(isset($session_name) && $session_name) {
sqsession_is_active();
-require_once(SM_PATH . 'functions/i18n.php');
-require_once(SM_PATH . 'functions/auth.php');
+include_once(SM_PATH . 'functions/i18n.php');
+include_once(SM_PATH . 'functions/auth.php');
is_logged_in();
}
}
-require_once(SM_PATH . 'include/load_prefs.php');
-require_once(SM_PATH . 'functions/page_header.php');
-require_once(SM_PATH . 'functions/prefs.php');
+include_once(SM_PATH . 'functions/page_header.php');
+include_once(SM_PATH . 'functions/prefs.php');
+include_once(SM_PATH . 'config/config.php');
+include_once(SM_PATH . 'include/load_prefs.php');
/* Set up the language (i18n.php was included by auth.php). */
global $username, $data_dir;
&& $tzChangeAllowed ) {
// get time zone key, if strict or custom strict timezones are used
- if (isset($time_zone_type) &&
+ if (isset($time_zone_type) &&
($time_zone_type == 1 || $time_zone_type == 3)) {
/* load time zone functions */
require_once(SM_PATH . 'include/timezones.php');
}
}
+/* temporary sm_init section */
+
+include_once(SM_PATH . 'class/template/template.class.php');
+include_once(SM_PATH . 'class/error.class.php');
+/*
+ * Initialize the template object
+ */
+$oTemplate = new Template($sTplDir);
+
+/*
+ * Initialize our custom error handler object
+ */
+$oErrorHandler = new ErrorHandler($oTemplate,'error_message.tpl');
+
+/*
+ * Activate custom error handling
+ */
+if (version_compare(PHP_VERSION, "4.3.0", ">=")) {
+ $oldErrorHandler = set_error_handler(array($oErrorHandler, 'SquirrelMailErrorhandler'));
+} else {
+ $oldErrorHandler = set_error_handler('SquirrelMailErrorhandler');
+}
+
?>
\ No newline at end of file