************************************************************************/
// 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);
}
+
// Add description as navigation point
-ADD_DESCR("admin", basename(__FILE__));
+ADD_DESCR("admin", __FILE__);
-global $CACHE, $KEEP_ACTIVE, $CACHE_FILE;
+global $cacheInstance, $cacheArray, $cacheMode;
// Normally we want the overview of all registered theme_check
$mode = "overview";
-$SEL = "0";
+$SEL = 0;
// Get response from our server
-$response = MXCHANGE_OPEN("check-themes.php");
+$response = GET_URL("check-themes.php");
// Are theme_check found?
-if (($response[sizeof($response) - 1] == "[EOF]") && ($response[0] != "[EOF]"))
-{
+if (($response[sizeof($response) - 1] == "[EOF]") && ($response[0] != "[EOF]")) {
// Ok, mark found and create the array
$THEMES = array(
'fname' => array(), // File names
// Get count of theme_check for validation
$count = trim($response[sizeof($response) - 2]);
- foreach ($response as $idx=>$value)
- {
+ 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"))
- {
+ if ((substr($value, 0, 6) == "theme-") && (substr($value, -4) == ".zip")) {
+ // Extract name and version
$name = substr($value, 6, -4);
- $file = PATH."themes/".$name."/theme.php";
- $ver = trim(substr($response[$idx + 3], 4));
+ $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))
- {
+ $cver = THEME_GET_VERSION($name);
+
+ // Is the theme already installed or not?
+ if (($ver != $cver) && ($cver != "?") && ($cver != "!")) {
// No, it isn't. So let's add this one!
$THEMES['fname'][] = $name;
$THEMES['fsize'][] = $response[$idx + 1];
$THEMES['ver'][] = $ver;
$THEMES['cver'][] = $cver;
+ // Extract language strings from reponse
$LANG_DUMMY = explode("[nl]", $response[$idx + 4]);
$LANG = array();
- $INFO = ADMIN_EXT_NO_INFO_FOUND;
+ $INFO = getMessage('ADMIN_EXT_NO_INFO_FOUND');
// Trim every data line
- foreach ($LANG_DUMMY as $k=>$v)
- {
+ 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;
- }
+ } // END - foreach
// If language is found stop searching on matching line
- foreach($LANG as $search)
- {
+ foreach($LANG as $search) {
if (substr($search, 0, 3) == (GET_LANGUAGE().":")) { $INFO = substr($search, 3); break; }
- }
+ } // END - foreach
// Add informations to array
$THEMES['infos'][] = $INFO;
- }
- }
- }
+ } // END - if
+ } // END - if
+ } // END - foreach
// Ok, themes are on our server but maybe you have already installed them?
- if (sizeof($THEMES['fname']) > 0)
- {
+ 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)
- {
+ 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";
+
+ // @TODO Move this HTML code to a template "admin_theme_row"
+ $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\">
+ <div class=\"tiny\">".$THEMES['infos'][$idx]."</div>
+ </td>
+</tr>\n";
$TSIZE += $THEMES['fsize'][$idx];
$SW = 3 - $SW;
}
// Load template
LOAD_TEMPLATE("admin_theme_list");
- }
- else
- {
+ } else {
// All Themes are downloaded and installed
LOAD_TEMPLATE("admin_theme_installed", false, $count);
}
-}
- else
-{
+} else {
// No theme where found
- LOAD_TEMPLATE("admin_theme_404");
+ LOAD_TEMPLATE("admin_settings_saved", false, getMessage('ADMIN_THEME_NOTHING_FOUND'));
}
+
//
?>