<?php
/************************************************************************
- * MXChange v0.2.1 Start: 01/16/2004 *
- * ================ Last change: 05/14/2004 *
+ * Mailer v0.2.1-FINAL Start: 01/16/2004 *
+ * =================== Last change: 05/14/2004 *
* *
* -------------------------------------------------------------------- *
* File : what-updates.php *
* -------------------------------------------------------------------- *
* Kurzbeschreibung : Prueft nach Updates *
* -------------------------------------------------------------------- *
- * *
+ * $Revision:: $ *
+ * $Date:: $ *
+ * $Tag:: 0.2.1-FINAL $ *
+ * $Author:: $ *
+ * Needs to be in all Files and every File needs "svn propset *
+ * svn:keywords Date Revision" (autoprobset!) at least!!!!!! *
* -------------------------------------------------------------------- *
- * Copyright (c) 2003 - 2008 by Roland Haeder *
+ * Copyright (c) 2003 - 2009 by Roland Haeder *
+ * Copyright (c) 2009, 2010 by Mailer Developer Team *
* For more information visit: http://www.mxchange.org *
* *
* This program is free software; you can redistribute it and/or modify *
************************************************************************/
// Some security stuff...
-if ((!defined('__SECURITY')) || (!IS_ADMIN())) {
- $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";
- require($INC);
-}
+if ((!defined('__SECURITY')) || (!isAdmin())) {
+ die();
+} // END - if
// Add description as navigation point
-ADD_DESCR("admin", __FILE__);
+addMenuDescription('admin', __FILE__);
// Init array
-$ONLINE['code'] = "???";
+$ONLINE['code'] = '???';
// Get response from our server in an array
-$response = GET_URL("check-updates3.php");
+$response = sendGetRequest('check-updates3.php');
if (empty($response[0]) && empty($response[1]) && empty($response[2]) && empty($response[3])) {
// Error!
- $response = array("", "", "");
+ $response = array('', '', '');
} else {
// Analyse header for response code
- if (eregi("200 OK", $response[0])) {
+ if (isInStringIgnoreCase('200 OK', $response[0])) {
// Found, kill header
- $pos = 0;
+ $pos = '0';
foreach($response as $k => $v) {
$v = trim($v);
if (empty($v)) {
// Which is the latest version on server?
$ONLINE = array(
- 'version' => str_replace("\n", "", $response[0]),
- 'changed' => str_replace("\n", "", $response[1]),
- 'revision' => str_replace("\n", "", $response[2]),
- );
-
- // Array for available patches
- $PATCHES = array(
- 'fname' => array(),
- 'fsize' => array(),
- 'ctime' => array()
+ 'version' => str_replace("\n", '', $response[0]),
+ 'changed' => str_replace("\n", '', $response[1]),
+ 'revision' => str_replace("\n", '', $response[2]),
+ 'code' => '200 OK'
);
-
- if (($response[3] != "[EOF]") && ($ONLINE['version'] == FULL_VERSION)) {
- // We have found new patches (newer than FULL_VERSION)
- $max = str_replace("\n", "", $response[sizeof($response) - 2]); $TOTAL_SIZE = 0;
-
- // Maximum of available pacthes extracted (above). Now we can get all informations
- for ($idx = 0; $idx < $max; $idx++) {
- // List only newer patches
- $TEST = substr(str_replace("\n", "", $response[$idx * 5 + 2]), 0, strlen(getConfig('patch_level')));
-
- // I have removed the addional test for the stored timemark in database or you cannot find
- // new updates on my server when you haven't installed it before I upload a patch... :-(
- if (bigintval($TEST) > bigintval(getConfig('patch_level'))) {
- // Copy every data from the response array
- $PATCHES['fname'][] = str_replace("\n", "", $response[$idx * 5 + 2]);
- $PATCHES['fsize'][] = str_replace("\n", "", $response[$idx * 5 + 3]);
- $PATCHES['ctime'][] = str_replace("\n", "", $response[$idx * 5 + 4]);
- switch (GET_LANGUAGE()) {
- case "de": $PATCHES['descr'][] = str_replace("\n", "", $response[$idx * 5 + 5]); break; // Load german description
- default : $PATCHES['descr'][] = str_replace("\n", "", $response[$idx * 5 + 6]); break; // Load english description as default
- }
-
- // Add patch's size to total
- $TOTAL_SIZE += $PATCHES['fsize'][$idx];
- }
- }
-
- array_pk_sort($PATCHES, array("ctime", "fname"));
-
- // All done here!
- $ONLINE['code'] = "200 OK";
- }
} else {
// 404 / 403 error from server
$ONLINE['code'] = $response[0];
// Is a newer version available?
if (empty($ONLINE['version'])) {
// Disconnected?
- LOAD_TEMPLATE("admin_settings_saved", false, "<div class=\"admin_failed\">{!ADMIN_CANNOT_CHECK_VERSION!} (".$ONLINE['code'].")</div>");
-} elseif (($ONLINE['version'] != FULL_VERSION) || ($ONLINE['revision'] != CURR_SVN_REVISION)) {
+ loadTemplate('admin_settings_saved', false, '<div class="admin_failed">{--ADMIN_CANNOT_CHECK_VERSION--} (' . $ONLINE['code'] . ')</div>');
+} elseif (($ONLINE['version'] != getFullVersion()) || ($ONLINE['revision'] != getCurrSvnRevision())) {
// New full-version available (all previous released patches are included in this version!)
- define('__ONLINE_VERSION', $ONLINE['version']);
- define('__ONLINE_CHANGE' , MAKE_DATETIME($ONLINE['changed'], "2"));
- define('__ONLINE_REVISION', $ONLINE['revision']);
+ $ONLINE['changed'] = generateDateTime($ONLINE['changed'], 2);
// Load template
- LOAD_TEMPLATE("admin_update_download");
+ loadTemplate('admin_update_download', false, $ONLINE);
} else {
// You have the latest version!
- LOAD_TEMPLATE("admin_settings_saved", false, NO_UPDATES_AVAILABLE);
+ loadTemplate('admin_settings_saved', false, '{--NO_UPDATES_AVAILABLE--}');
}
-//
+// [EOF]
?>