************************************************************************/
// Some security stuff...
-if ((ereg(basename(__FILE__), $_SERVER['PHP_SELF'])) || (!is_admin())) {
+if ((!defined('__SECURITY')) || (!IS_ADMIN())) {
$INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";
require($INC);
+} elseif (!EXT_IS_ACTIVE("theme")) {
+ addFatalMessage(sprintf(EXTENSION_PROBLEM_NOT_INSTALLED, "theme"));
+ return;
}
// Add description as navigation point
-ADD_DESCR("admin", basename(__FILE__));
-
-global $currTheme;
+ADD_DESCR("admin", __FILE__);
// Check for selected themes
$SEL = 0;
if (!empty($_POST['sel'])) $SEL = SELECTION_COUNT($_POST['sel']);
if ($SEL > 0) {
$OUT = "";
- foreach ($_POST['sel'] as $id=>$sel) {
+ foreach ($_POST['sel'] as $id => $sel) {
$SQL = "";
// Shall I de-/activate or delete themes?
if (isset($_POST['status'])) {
// Change status
- if ($_POST['active'][$id] == 'Y') {
- $SQL = "UPDATE "._MYSQL_PREFIX."_themes SET theme_active='N' WHERE id='".$id."' LIMIT 1";
+ if ($_POST['active'][$id] == "Y") {
+ $SQL = "UPDATE `{!_MYSQL_PREFIX!}_themes` SET theme_active='N' WHERE id='".$id."' 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='".$id."' LIMIT 1";
}
$OUT = ADMIN_THEMES_UPDATED;
} elseif (isset($_POST['del'])) {
// Delete themes
- $SQL = "DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_themes WHERE id='".$id."' LIMIT 1";
+ $SQL = "DELETE LOW_PRIORITY FROM `{!_MYSQL_PREFIX!}_themes` WHERE id='".$id."' LIMIT 1";
$OUT = ADMIN_THEMES_DELETED;
}
// Run SQL command?
- if (!empty($SQL)) $result = SQL_QUERY($SQL, __FILE__, __LINE__);
+ if (!empty($SQL)) {
+ // Run it
+ $result = SQL_QUERY($SQL, __FILE__, __LINE__);
+
+ // Rebuild cache
+ REBUILD_CACHE("themes", "them");
+ }
}
// Output generated?
$POST['default_theme'] = SQL_ESCAPE($_GET['default_theme']);
// Set session
- set_session("mxchange_theme", $POST['default_theme']);
+ set_session('mxchange_theme', $POST['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', $POST['default_theme']);
// Save theme
ADMIN_SAVE_SETTINGS($POST);
// Generate output lines for the template
$OUT = ""; $SW = 2;
-$result = SQL_QUERY("SELECT id, theme_path, theme_active, theme_ver FROM "._MYSQL_PREFIX."_themes ORDER BY theme_path", __FILE__, __LINE__);
-if (SQL_NUMROWS($result) > 0)
-{
- while(list($id, $unix, $active, $ver) = SQL_FETCHROW($result))
- {
+$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)) {
+ // Construct IFN
+ $INC = sprintf("theme/%s/theme.php",
+ $unix
+ );
+
// Load theme in test mode
- require(PATH."theme/".$unix."/theme.php");
+ LOAD_INC($INC);
// Is the loaded theme name != current theme name?
$LINK = $unix;
- if ($unix != $currTheme) $LINK = "<A href=\"".URL."/modules.php?module=admin&what=theme_edit&default_theme=".$unix."\" title=\"".ADMIN_SET_AS_NEW_THEME."\">".$unix."</A>";
+ if ($unix != GET_CURR_THEME()) $LINK = "<a href=\"{!URL!}/modules.php?module=admin&what=theme_edit&default_theme=".$unix."\" title=\"{!ADMIN_SET_AS_NEW_THEME!}\">".$unix."</a>";
// Prepare data for the row template
$content = array(
'id' => $id,
'active' => $active,
'link' => $LINK,
- 'name' => $THEME_NAME,
+ 'name' => $name,
'is_act' => TRANSLATE_YESNO($active),
- 'email' => "<A href=\"mailto:".$THEME_EMAIL."?Subject=[Theme:] ".$THEME_NAME." (".$unix.")"."\">".$THEME_AUTHOR."</A>",
+ 'email' => "<a href=\"mailto:".$THEME_EMAIL."?Subject=[Theme:] ".$THEME_NAME." (".$unix.")"."\">".$THEME_AUTHOR."</a>",
'url_link' => DEREFERER($THEME_URL),
'url_title' => $THEME_URL,
'ver' => $ver,
SQL_FREERESULT($result);
} else {
// No themes found???
- $OUT .= "<TR>
- <TD colspan=\"7\" class=\"bottom2\" height=\"60\">
- ".LOAD_TEMPLATE("admin_settings_saved", true, ADMIN_NO_THEMES_FOUND)."
- </TD>
-</TR>\n";
+ $OUT .= "<tr>
+ <td colspan=\"7\" class=\"bottom2\" height=\"60\">
+ ".LOAD_TEMPLATE("admin_settings_saved", true, getMessage('ADMIN_NO_THEMES_FOUND'))."
+ </td>
+</tr>\n";
}
define('__THEME_LIST', $OUT);