+// Get current theme name
+function getActualTheme () {
+ // The default theme is 'default'... ;-)
+ $ret = 'default';
+
+ // Load default theme if not empty from configuration
+ if ((isConfigEntrySet('default_theme')) && (getConfig('default_theme') != '')) {
+ $ret = getConfig('default_theme');
+ } // END - if
+
+ if (!isMailerThemeSet()) {
+ // Set default theme
+ setMailerTheme($ret);
+ } elseif ((isMailerThemeSet()) && (isExtensionInstalledAndNewer('sql_patches', '0.1.4'))) {
+ //die("<pre>".print_r($GLOBALS['cache_array']['themes'], TRUE)."</pre>");
+ // Get theme from cookie
+ $ret = getSession('mailer_theme');
+
+ // Is it valid?
+ if ((!isExtensionActive('theme')) || (getThemeId($ret) == '0')) {
+ // Fix it to default
+ $ret = 'default';
+ } // END - if
+ } elseif ((!isInstalled()) && ((isInstalling()) || (isHtmlOutputMode())) && ((isGetRequestElementSet('theme')) || (isPostRequestElementSet('theme')))) {
+ // Prepare filename for checking
+ $themeFile = sprintf("theme/%s/theme.php", getRequestElement('theme'));
+
+ // Installation mode active
+ if ((isGetRequestElementSet('theme')) && (isIncludeReadable($theme))) {
+ // Set cookie from URL data
+ setMailerTheme(getRequestElement('theme'));
+ } elseif (isIncludeReadable(sprintf("theme/%s/theme.php", postRequestElement('theme')))) {
+ // Set cookie from posted data
+ setMailerTheme(postRequestElement('theme'));
+ }
+
+ // Set return value
+ $ret = getSession('mailer_theme');
+ } else {
+ // Invalid design, reset cookie
+ setMailerTheme($ret);
+ }
+
+ // Return theme value
+ return $ret;
+}
+
+// Get id from theme
+function getThemeId ($name) {
+ // Default id
+ $id = '0';
+
+ // Is the cache entry there?
+ if (isset($GLOBALS['cache_array']['themes']['id'][$name])) {
+ // Get the version from cache
+ $id = $GLOBALS['cache_array']['themes']['id'][$name];
+
+ // Count up
+ incrementStatsEntry('cache_hits');
+ } elseif (isExtensionInstalledAndNewer('cache', '0.1.8')) {
+ // Check if current theme is already imported or not
+ $result = sqlQueryEscaped("SELECT `id` FROM `{?_MYSQL_PREFIX?}_themes` WHERE `theme_path`='%s' LIMIT 1",
+ array($name), __FUNCTION__, __LINE__);