-<?php\r
-/************************************************************************\r
- * MXChange v0.2.1 Start: 03/22/2004 *\r
- * ================ Last change: 12/13/2004 *\r
- * *\r
- * -------------------------------------------------------------------- *\r
- * File : what-extentions.php *\r
- * -------------------------------------------------------------------- *\r
- * Short description : Extension management *\r
- * -------------------------------------------------------------------- *\r
- * Kurzbeschreibung : Erweiterungen-Management *\r
- * -------------------------------------------------------------------- *\r
- * *\r
- * -------------------------------------------------------------------- *\r
- * Copyright (c) 2003 - 2008 by Roland Haeder *\r
- * For more information visit: http://www.mxchange.org *\r
- * *\r
- * This program is free software; you can redistribute it and/or modify *\r
- * it under the terms of the GNU General Public License as published by *\r
- * the Free Software Foundation; either version 2 of the License, or *\r
- * (at your option) any later version. *\r
- * *\r
- * This program is distributed in the hope that it will be useful, *\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *\r
- * GNU General Public License for more details. *\r
- * *\r
- * You should have received a copy of the GNU General Public License *\r
- * along with this program; if not, write to the Free Software *\r
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, *\r
- * MA 02110-1301 USA *\r
- ************************************************************************/\r
-\r
-// Some security stuff...\r
-if ((ereg(basename(__FILE__), $_SERVER['PHP_SELF'])) || (!IS_ADMIN()))\r
-{\r
- $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";\r
- require($INC);\r
-}\r
-// Add description as navigation point\r
-ADD_DESCR("admin", basename(__FILE__));\r
-\r
-global $CACHE, $KEEP_ACTIVE, $CACHE_FILE;\r
-\r
-// Normally we want the overview of all registered theme_check\r
-$mode = "overview";\r
-$SEL = "0";\r
-\r
-// Get response from our server\r
-$response = MXCHANGE_OPEN("check-themes.php");\r
-\r
-// Are theme_check found?\r
-if (($response[sizeof($response) - 1] == "[EOF]") && ($response[0] != "[EOF]"))\r
-{\r
- // Ok, mark found and create the array\r
- $THEMES = array(\r
- 'fname' => array(), // File names\r
- 'fsize' => array(), // File size\r
- 'fctime' => array(), // File creation timestamp\r
- 'infos' => array(), // File informations (maybe loaded!)\r
- 'ver' => array(), // Version number\r
- 'cver' => array(), // Current version number\r
- );\r
-\r
- // Get count of theme_check for validation\r
- $count = trim($response[sizeof($response) - 2]);\r
- foreach ($response as $idx=>$value)\r
- {\r
- $value = str_replace("\n", "", $value); $ver = "";\r
-\r
- // Leave loop when data is invalid or EOF?\r
- if ((substr($value, 0, 6) == "theme-") && (substr($value, -4) == ".zip"))\r
- {\r
- $name = substr($value, 6, -4);\r
- $file = PATH."themes/".$name."/theme.php";\r
- $ver = trim(substr($response[$idx + 3], 4));\r
-\r
- // Load version\r
- $result = SQL_QUERY_ESC("SELECT theme_ver FROM "._MYSQL_PREFIX."_themes WHERE theme_path='%s' LIMIT 1",\r
- array($name), __FILE__, __LINE__);\r
- list($cver) = SQL_FETCHROW($result);\r
- if (empty($cver)) $cver = "-.-";\r
-\r
- // Is the extension already installed or not?\r
- if (((SQL_NUMROWS($result) == 0) && (!file_exists($file))) || ($ver != $cver))\r
- {\r
- // No, it isn't. So let's add this one!\r
- $THEMES['fname'][] = $name;\r
- $THEMES['fsize'][] = $response[$idx + 1];\r
- $THEMES['fctime'][] = $response[$idx + 2];\r
- $THEMES['ver'][] = $ver;\r
- $THEMES['cver'][] = $cver;\r
-\r
- $LANG_DUMMY = explode("[nl]", $response[$idx + 4]);\r
- $LANG = array();\r
- $INFO = ADMIN_EXT_NO_INFO_FOUND;\r
-\r
- // Trim every data line\r
- foreach ($LANG_DUMMY as $k=>$v)\r
- {\r
- $v = trim($v);\r
- if (substr($v, 3) == "") $v = "---";\r
- $LANG_DUMMY[$k] = $v;\r
- if ($v == "xx:xx") break;\r
- $LANG[] = $v;\r
- }\r
-\r
- // If language is found stop searching on matching line\r
- foreach($LANG as $search)\r
- {\r
- if (substr($search, 0, 3) == (GET_LANGUAGE().":")) { $INFO = substr($search, 3); break; }\r
- }\r
-\r
- // Add informations to array\r
- $THEMES['infos'][] = $INFO;\r
- }\r
- }\r
- }\r
-\r
- // Ok, themes are on our server but maybe you have already installed them?\r
- if (sizeof($THEMES['fname']) > 0)\r
- {\r
- // Sort array (I missed ver and cver here)\r
- array_pk_sort($THEMES, array("cver", "fname"), 0, 1);\r
-\r
- // Extensions where found which are not downloaded and installed\r
- $SW = 2; $OUT = ""; $TSIZE = 0;\r
- foreach ($THEMES['fname'] as $idx=>$name)\r
- {\r
- // Generate download link\r
- $LINK = SERVER_URL."/themes/theme-".$name.".zip";\r
- $OUT .= "<TR>\r
- <TD align=\"center\" class=\"switch_sw".$SW." bottom2 right2\">".($idx + 1).".</TD>\r
- <TD align=\"center\" class=\"switch_sw".$SW." bottom2 right2\"><A href=\"".$LINK."\">".$name."</A></TD>\r
- <TD align=\"center\" class=\"switch_sw".$SW." bottom2 right2\">".MAKE_DATETIME($THEMES['fctime'][$idx], "2")."</TD>\r
- <TD align=\"center\" class=\"switch_sw".$SW." bottom2 right2\">".TRANSLATE_COMMA(round($THEMES['fsize'][$idx] / 1.024) / 1000)." ".KBYTES."</TD>\r
- <TD align=\"center\" class=\"switch_sw".$SW." bottom2\">".$THEMES['ver'][$idx]." (".$THEMES['cver'][$idx].")</TD>\r
-</TR>\r
-<TR>\r
- <TD class=\"switch_sw".$SW." bottom2\"> </TD>\r
- <TD colspan=\"4\" class=\"switch_sw".$SW." bottom2\">\r
- <FONT class=\"tiny\">".stripslashes($THEMES['infos'][$idx])."</FONT>\r
- </TD>\r
-</TR>\n";\r
- $TSIZE += $THEMES['fsize'][$idx];\r
- $SW = 3 - $SW;\r
- }\r
- define('__THEMES_ROWS', $OUT);\r
- define('__TKBYTES_VALUE', TRANSLATE_COMMA(round($TSIZE / 1.024) / 1000));\r
- define('__TTHEME_VALUE', sizeof($THEMES['fname']));\r
-\r
- // Load template\r
- LOAD_TEMPLATE("admin_theme_list");\r
- }\r
- else\r
- {\r
- // All Themes are downloaded and installed\r
- LOAD_TEMPLATE("admin_theme_installed", false, $count);\r
- }\r
-}\r
- else\r
-{\r
- // No theme where found\r
- LOAD_TEMPLATE("admin_theme_404");\r
-}\r
-//\r
-?>\r
+<?php
+/************************************************************************
+ * MXChange v0.2.1 Start: 03/22/2004 *
+ * ================ Last change: 12/13/2004 *
+ * *
+ * -------------------------------------------------------------------- *
+ * File : what-extentions.php *
+ * -------------------------------------------------------------------- *
+ * Short description : Extension management *
+ * -------------------------------------------------------------------- *
+ * Kurzbeschreibung : Erweiterungen-Management *
+ * -------------------------------------------------------------------- *
+ * *
+ * -------------------------------------------------------------------- *
+ * Copyright (c) 2003 - 2008 by Roland Haeder *
+ * For more information visit: http://www.mxchange.org *
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ * This program is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
+ * GNU General Public License for more details. *
+ * *
+ * You should have received a copy of the GNU General Public License *
+ * along with this program; if not, write to the Free Software *
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, *
+ * MA 02110-1301 USA *
+ ************************************************************************/
+
+// Some security stuff...
+if ((ereg(basename(__FILE__), $_SERVER['PHP_SELF'])) || (!IS_ADMIN()))
+{
+ $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";
+ require($INC);
+}
+// Add description as navigation point
+ADD_DESCR("admin", basename(__FILE__));
+
+global $CACHE, $KEEP_ACTIVE, $CACHE_FILE;
+
+// Normally we want the overview of all registered theme_check
+$mode = "overview";
+$SEL = "0";
+
+// Get response from our server
+$response = MXCHANGE_OPEN("check-themes.php");
+
+// Are theme_check found?
+if (($response[sizeof($response) - 1] == "[EOF]") && ($response[0] != "[EOF]"))
+{
+ // Ok, mark found and create the array
+ $THEMES = array(
+ 'fname' => array(), // File names
+ 'fsize' => array(), // File size
+ 'fctime' => array(), // File creation timestamp
+ 'infos' => array(), // File informations (maybe loaded!)
+ 'ver' => array(), // Version number
+ 'cver' => array(), // Current version number
+ );
+
+ // Get count of theme_check for validation
+ $count = trim($response[sizeof($response) - 2]);
+ foreach ($response as $idx=>$value)
+ {
+ $value = str_replace("\n", "", $value); $ver = "";
+
+ // Leave loop when data is invalid or EOF?
+ if ((substr($value, 0, 6) == "theme-") && (substr($value, -4) == ".zip"))
+ {
+ $name = substr($value, 6, -4);
+ $file = PATH."themes/".$name."/theme.php";
+ $ver = trim(substr($response[$idx + 3], 4));
+
+ // Load version
+ $result = SQL_QUERY_ESC("SELECT theme_ver FROM "._MYSQL_PREFIX."_themes WHERE theme_path='%s' LIMIT 1",
+ array($name), __FILE__, __LINE__);
+ list($cver) = SQL_FETCHROW($result);
+ if (empty($cver)) $cver = "-.-";
+
+ // Is the extension already installed or not?
+ if (((SQL_NUMROWS($result) == 0) && (!file_exists($file))) || ($ver != $cver))
+ {
+ // No, it isn't. So let's add this one!
+ $THEMES['fname'][] = $name;
+ $THEMES['fsize'][] = $response[$idx + 1];
+ $THEMES['fctime'][] = $response[$idx + 2];
+ $THEMES['ver'][] = $ver;
+ $THEMES['cver'][] = $cver;
+
+ $LANG_DUMMY = explode("[nl]", $response[$idx + 4]);
+ $LANG = array();
+ $INFO = ADMIN_EXT_NO_INFO_FOUND;
+
+ // Trim every data line
+ foreach ($LANG_DUMMY as $k=>$v)
+ {
+ $v = trim($v);
+ if (substr($v, 3) == "") $v = "---";
+ $LANG_DUMMY[$k] = $v;
+ if ($v == "xx:xx") break;
+ $LANG[] = $v;
+ }
+
+ // If language is found stop searching on matching line
+ foreach($LANG as $search)
+ {
+ if (substr($search, 0, 3) == (GET_LANGUAGE().":")) { $INFO = substr($search, 3); break; }
+ }
+
+ // Add informations to array
+ $THEMES['infos'][] = $INFO;
+ }
+ }
+ }
+
+ // Ok, themes are on our server but maybe you have already installed them?
+ if (sizeof($THEMES['fname']) > 0)
+ {
+ // Sort array (I missed ver and cver here)
+ array_pk_sort($THEMES, array("cver", "fname"), 0, 1);
+
+ // Extensions where found which are not downloaded and installed
+ $SW = 2; $OUT = ""; $TSIZE = 0;
+ foreach ($THEMES['fname'] as $idx=>$name)
+ {
+ // Generate download link
+ $LINK = SERVER_URL."/themes/theme-".$name.".zip";
+ $OUT .= "<TR>
+ <TD align=\"center\" class=\"switch_sw".$SW." bottom2 right2\">".($idx + 1).".</TD>
+ <TD align=\"center\" class=\"switch_sw".$SW." bottom2 right2\"><A href=\"".$LINK."\">".$name."</A></TD>
+ <TD align=\"center\" class=\"switch_sw".$SW." bottom2 right2\">".MAKE_DATETIME($THEMES['fctime'][$idx], "2")."</TD>
+ <TD align=\"center\" class=\"switch_sw".$SW." bottom2 right2\">".TRANSLATE_COMMA(round($THEMES['fsize'][$idx] / 1.024) / 1000)." ".KBYTES."</TD>
+ <TD align=\"center\" class=\"switch_sw".$SW." bottom2\">".$THEMES['ver'][$idx]." (".$THEMES['cver'][$idx].")</TD>
+</TR>
+<TR>
+ <TD class=\"switch_sw".$SW." bottom2\"> </TD>
+ <TD colspan=\"4\" class=\"switch_sw".$SW." bottom2\">
+ <FONT class=\"tiny\">".stripslashes($THEMES['infos'][$idx])."</FONT>
+ </TD>
+</TR>\n";
+ $TSIZE += $THEMES['fsize'][$idx];
+ $SW = 3 - $SW;
+ }
+ define('__THEMES_ROWS', $OUT);
+ define('__TKBYTES_VALUE', TRANSLATE_COMMA(round($TSIZE / 1.024) / 1000));
+ define('__TTHEME_VALUE', sizeof($THEMES['fname']));
+
+ // Load template
+ LOAD_TEMPLATE("admin_theme_list");
+ }
+ else
+ {
+ // All Themes are downloaded and installed
+ LOAD_TEMPLATE("admin_theme_installed", false, $count);
+ }
+}
+ else
+{
+ // No theme where found
+ LOAD_TEMPLATE("admin_theme_404");
+}
+//
+?>