X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;ds=sidebyside;f=inc%2Fmodules%2Fmember%2Fwhat-themes.php;h=17708e14d7e278ac6a43e7f2cd8f483121722c77;hb=e71e9e1380d65ccd06beef6fbc594bec10371f5f;hp=7404646cd74ba64be97698480e67cb720c49cd07;hpb=60494e212a67fe360bfbb481eb4928480a6f379b;p=mailer.git diff --git a/inc/modules/member/what-themes.php b/inc/modules/member/what-themes.php index 7404646cd7..17708e14d7 100644 --- a/inc/modules/member/what-themes.php +++ b/inc/modules/member/what-themes.php @@ -32,31 +32,29 @@ ************************************************************************/ // Some security stuff... -if (ereg(basename(__FILE__), $_SERVER['PHP_SELF'])) -{ +if (!defined('__SECURITY')) { $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php"; require($INC); -} - elseif (!IS_LOGGED_IN()) -{ +} elseif (!IS_MEMBER()) { LOAD_URL("modules.php?module=index"); +} elseif ((!EXT_IS_ACTIVE("theme")) && (!IS_ADMIN())) { + ADD_FATAL(EXTENSION_PROBLEM_EXT_INACTIVE, "theme"); + return; } // Add description as navigation point -ADD_DESCR("member", basename(__FILE__)); +ADD_DESCR("member", __FILE__); -if (!empty($_POST['member_theme'])) -{ +if (!empty($_POST['member_theme'])) { // Save theme to member's profile - $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_data SET curr_theme='%s' WHERE userid=%d LIMIT 1", - array($_POST['member_theme'], $GLOBALS['userid']), __FILE__, __LINE__); + SQL_QUERY_ESC("UPDATE `"._MYSQL_PREFIX."_user_data` SET curr_theme='%s' WHERE userid=%s LIMIT 1", + array($_POST['member_theme'], $GLOBALS['userid']), __FILE__, __LINE__); // Set new theme for guests - $NewTheme = $_POST['member_theme']; + $newTheme = SQL_ESCAPE($_POST['member_theme']); // Change to new theme - @setcookie("mxchange_theme", $NewTheme, (time() + 60*60*24*365), COOKIE_PATH); - $_COOKIE['mxchange_theme'] = $NewTheme; + set_session('mxchange_theme', $newTheme); // Theme saved! LOAD_TEMPLATE("admin_settings_saved", false, MEMBER_THEME_SAVED); @@ -74,32 +72,25 @@ $THEMES = array( // Read directory "themes" $handle = opendir(PATH."theme/") or mxchange_die("Cannot read themes dir!"); -while ($dir = readdir($handle)) -{ +while ($entry = readdir($handle)) { // Construct absolute theme.php file name - $theme = PATH."theme/".$dir."/"."theme.php"; - - // Test it... - $result = SQL_QUERY_ESC("SELECT id FROM "._MYSQL_PREFIX."_themes WHERE theme_path='%s' AND theme_active='Y' LIMIT 1", - array($dir), __FILE__, __LINE__); - - if (($dir != ".") && ($dir != "..") && (file_exists($theme)) && (is_readable($theme)) && (SQL_NUMROWS($result) == 1)) - { - // Free memory - SQL_FREERESULT($result); + $theme = sprintf("%stheme/%s/theme.php", PATH, $entry); + if (($entry != ".") && ($entry != "..") && (FILE_READABLE($theme)) && (THEME_IS_ACTIVE($entry))) { // Found a valid directory so let's load it's theme.php file include($theme); // Add found theme to array - $THEMES['theme_unix'][] = $dir; + $THEMES['theme_unix'][] = $entry; $THEMES['theme_name'][] = $THEME_NAME; $THEMES['theme_author'][] = $THEME_AUTHOR; $THEMES['theme_email'][] = $THEME_EMAIL; $THEMES['theme_url'][] = $THEME_URL; $THEMES['theme_ver'][] = $THEME_VERSION; - } -} + } // END - if +} // END - while + +// Close directory closedir($handle); // Sort array by Uni* name @@ -107,10 +98,9 @@ array_pk_sort($THEMES, array("theme_name")); // Generate output lines for the template $OUT = ""; $SW = 2; -foreach ($THEMES['theme_unix'] as $key=>$unix) -{ +foreach ($THEMES['theme_unix'] as $key => $unix) { $default = ""; - if ($_COOKIE['mxchange_theme'] == $unix) $default = " checked selected"; + if (get_session('mxchange_theme') == $unix) $default = " checked selected"; // Add row $OUT .= " @@ -128,8 +118,8 @@ foreach ($THEMES['theme_unix'] as $key=>$unix) \n"; $SW = 3 - $SW; } -if (empty($OUT)) -{ + +if (empty($OUT)) { // No themes found??? $OUT = "