X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fmodules%2Fadmin%2Fwhat-theme_edit.php;h=e1e60490fe0c846ca50d7c47b8c3ef4a07537380;hp=747957986a5f889936e1fc46ad411ece53820a8c;hb=49acdb7a7adbcf25a8e8683b5581bfcec72b23bd;hpb=7f104f6fe558bb56b4205241435a2357c2feece1 diff --git a/inc/modules/admin/what-theme_edit.php b/inc/modules/admin/what-theme_edit.php index 747957986a..e1e60490fe 100644 --- a/inc/modules/admin/what-theme_edit.php +++ b/inc/modules/admin/what-theme_edit.php @@ -1,7 +1,7 @@ 0) { - $OUT = ""; - foreach ($_POST['sel'] as $id => $sel) { - $SQL = ""; +if (ifPostContainsSelections()) { + $OUT = ''; + foreach (postRequestElement('sel') as $id => $sel) { + $sql = ''; // Shall I de-/activate or delete themes? - if (isset($_POST['status'])) { + if (isPostRequestElementSet('status')) { // Change status - if ($_POST['active'][$id] == "Y") { - $SQL = "UPDATE "._MYSQL_PREFIX."_themes SET theme_active='N' WHERE id='".$id."' LIMIT 1"; + if (postRequestElement('active', $id) == 'Y') { + $sql = "UPDATE `{?_MYSQL_PREFIX?}_themes` SET `theme_active`='N' WHERE `id`=%s LIMIT 1"; } else { - $SQL = "UPDATE "._MYSQL_PREFIX."_themes SET theme_active='Y' WHERE id='".$id."' LIMIT 1"; + $sql = "UPDATE `{?_MYSQL_PREFIX?}_themes` SET `theme_active`='Y' WHERE `id`=%s LIMIT 1"; } - $OUT = ADMIN_THEMES_UPDATED; - } elseif (isset($_POST['del'])) { + $OUT = '{--ADMIN_THEMES_UPDATED--}'; + } elseif (isFormSent('delete')) { // Delete themes - $SQL = "DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_themes WHERE id='".$id."' LIMIT 1"; - $OUT = ADMIN_THEMES_DELETED; + $sql = "DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_themes` WHERE `id`=%s LIMIT 1"; + $OUT = '{--ADMIN_THEMES_DELETED--}'; } // Run SQL command? - if (!empty($SQL)) { + if (!empty($sql)) { // Run it - $result = SQL_QUERY($SQL, __FILE__, __LINE__); + $result = sqlQueryEscaped($sql, array(bigintval($id)), __FILE__, __LINE__); // Rebuild cache - REBUILD_CACHE("themes", "them"); - } - } + rebuildCache('themes', 'themes'); + } // END - if + } // END - foreach // Output generated? - if (empty($OUT)) ADMIN_THEME_NO_OUTPUT; -} elseif (!empty($_GET['default_theme'])) { + if (empty($OUT)) $OUT = '{--ADMIN_THEME_NO_OUTPUT--}'; +} elseif (isGetRequestElementSet('default_theme')) { // Escape string from input - $POST['default_theme'] = SQL_ESCAPE($_GET['default_theme']); + $postData['default_theme'] = getRequestElement('default_theme'); // Set session - set_session("mxchange_theme", $POST['default_theme']); + setMailerTheme($postData['default_theme']); // Set it in config and current theme as well - global $currTheme; - $currTheme = $POST['default_theme']; - $_CONFIG['default_theme'] = $POST['default_theme']; + setConfigEntry('default_theme', $postData['default_theme']); // Save theme - ADMIN_SAVE_SETTINGS($POST); + adminSaveSettings($postData); } +// Init rows +$OUT = ''; + // Switch to testing mode -$THEME_MODE = "test"; - -// Generate output lines for the template -$OUT = ""; $SW = 2; -$result = SQL_QUERY("SELECT id, theme_path, theme_active, theme_ver, theme_name FROM "._MYSQL_PREFIX."_themes ORDER BY theme_path", __FILE__, __LINE__); -if (SQL_NUMROWS($result) > 0) -{ - while(list($id, $unix, $active, $ver, $name) = SQL_FETCHROW($result)) - { - // Load theme in test mode - require(PATH."theme/".$unix."/theme.php"); - - // Is the loaded theme name != current theme name? - $LINK = $unix; - if ($unix != GET_CURR_THEME()) $LINK = "".$unix.""; - - // Prepare data for the row template - $content = array( - 'sw' => $SW, - 'id' => $id, - 'active' => $active, - 'link' => $LINK, - 'name' => $name, - 'is_act' => TRANSLATE_YESNO($active), - 'email' => "".$THEME_AUTHOR."", - 'url_link' => DEREFERER($THEME_URL), - 'url_title' => $THEME_URL, - 'ver' => $ver, - ); - - // Load row template and switch color - $OUT .= LOAD_TEMPLATE("admin_theme_edit_row", true, $content); - $SW = 3 - $SW; - } +$GLOBALS['theme_mode'] = 'test'; + +$result = sqlQuery("SELECT + `id`, + `theme_path`, + `theme_active`, + `theme_ver` AS `theme_version`, + `theme_name` +FROM + `{?_MYSQL_PREFIX?}_themes` +ORDER BY + `theme_path` ASC", __FILE__, __LINE__); + +if (!ifSqlHasZeroNumRows($result)) { + while ($content = sqlFetchArray($result)) { + // Is the theme readable? + if (isThemeReadable($content['theme_path'])) { + // Load theme in test mode + loadInclude(sprintf('theme/%s/theme.php', $content['theme_path'])); + + // Copy data from theme to content + $content['theme_url'] = $GLOBALS['theme_data']['url']; + + // Is the loaded theme name != current theme name? + $content['link'] = $content['theme_path']; + if ($content['theme_path'] != getCurrentTheme()) { + $content['link'] = '' . $content['theme_path'] . ''; + } // END - if + + // Prepare data for the row template + $content['email'] = ' - - ".LOAD_TEMPLATE("admin_settings_saved", true, ADMIN_NO_THEMES_FOUND)." - -\n"; + // No themes found??? + $OUT .= ' + + ' . displayMessage('{--ADMIN_NO_THEMES_FOUND--}', TRUE) . ' + +'; } -define('__THEME_LIST', $OUT); - // Load template -LOAD_TEMPLATE("admin_theme_edit"); +loadTemplate('admin_edit_theme', FALSE, $OUT); -// +// [EOF] ?>