HTML->XHTML preparation (still *A LOT* to convert
[mailer.git] / inc / modules / admin / what-theme_edit.php
index 538a432e45eb3bb81c21d02812d8e66ba5c6faad..0feb999a63e73285300beeaac3adb29d15bad5c2 100644 (file)
  ************************************************************************/
 
 // 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?
@@ -75,9 +82,10 @@ if ($SEL > 0) {
        $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'];
 
@@ -90,17 +98,15 @@ $THEME_MODE = "test";
 
 // 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)) {
                // Load theme in test mode
                require(PATH."theme/".$unix."/theme.php");
 
                // Is the loaded theme name != current theme name?
                $LINK = $unix;
-               if ($unix != $currTheme) $LINK = "<A href=\"".URL."/modules.php?module=admin&amp;what=theme_edit&amp;default_theme=".$unix."\" title=\"".ADMIN_SET_AS_NEW_THEME."\">".$unix."</A>";
+               if ($unix != GET_CURR_THEME()) $LINK = "<a href=\"".URL."/modules.php?module=admin&amp;what=theme_edit&amp;default_theme=".$unix."\" title=\"".ADMIN_SET_AS_NEW_THEME."\">".$unix."</a>";
 
                // Prepare data for the row template
                $content = array(
@@ -108,9 +114,9 @@ if (SQL_NUMROWS($result) > 0)
                        '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,