************************************************************************/
// Some security stuff...
-if ((ereg(basename(__FILE__), $_SERVER['PHP_SELF'])))
-{
+if (!defined('__SECURITY')) {
$INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";
require($INC);
}
// Version number
-$EXT_VERSION = "0.0.4";
+$EXT_VERSION = "0.0.5";
// Auto-set extension version
if (empty($EXT_VER)) $EXT_VER = $EXT_VERSION;
// Version history array (add more with , "0.1" and so on)
-$EXT_VER_HISTORY = array("0.0", "0.0.1", "0.0.2", "0.0.3", "0.0.4");
+$EXT_VER_HISTORY = array("0.0", "0.0.1", "0.0.2", "0.0.3", "0.0.4", "0.0.5");
switch ($EXT_LOAD_MODE)
{
-case "register": // Do stuff when installtion is running (modules.php?module=admin&action=login is called)
+case "register": // Do stuff when installation is running (modules.php?module=admin&action=login is called)
// SQL commands to run
$SQLs[] = "DROP TABLE IF EXISTS "._MYSQL_PREFIX."_online";
$SQLs[] = "CREATE TABLE "._MYSQL_PREFIX."_online (
-id BIGINT(20) NOT NULL AUTO_INCREMENT,
+id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
sid VARCHAR(32) NOT NULL DEFAULT '',
ip VARCHAR(15) NOT NULL DEFAULT '',
-userid BIGINT(20) NOT NULL DEFAULT '0',
-refid BIGINT(20) NOT NULL DEFAULT '0',
+userid BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
+refid BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
module VARCHAR(255) NOT NULL DEFAULT '',
action VARCHAR(255) NOT NULL DEFAULT '',
what VARCHAR(255) NOT NULL DEFAULT '',
is_admin ENUM('Y','N') NOT NULL DEFAULT 'N',
is_member ENUM('Y','N') NOT NULL DEFAULT 'N',
-timestamp VARCHAR(10) NOT NULL DEFAULT '0',
+timestamp VARCHAR(10) NOT NULL DEFAULT 0,
PRIMARY KEY(id),
KEY(userid),
KEY(refid)
) TYPE=MyISAM";
- $SQLs[]="INSERT INTO "._MYSQL_PREFIX."_admin_menu (action, what, title, descr, sort) VALUES('misc','usr_online','Online-Statistik','Eine Liste von derzeit "Online" Usern. Doppelte Einträge könnte auf mangelnden Cookie-Support des Browsers oder auf einen Spider hindeuten.', 1)";
+ $SQLs[]="INSERT INTO `"._MYSQL_PREFIX."_admin_menu` (`action`,`what`,`title`,`descr`,`sort`) VALUES ('misc','usr_online','Online-Statistik','Eine Liste von derzeit "Online" Usern. Doppelte Einträge könnte auf mangelnden Cookie-Support des Browsers oder auf einen Spider hindeuten.', 1)";
break;
case "remove": // Do stuff when removing extension
// SQL commands to run
$SQLs[] = "DROP TABLE IF EXISTS "._MYSQL_PREFIX."_online";
- $SQLs[] = "DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_admin_menu WHERE action='misc', what='usr_online' LIMIT 1";
+ $SQLs[] = "DELETE LOW_PRIORITY FROM `"._MYSQL_PREFIX."_admin_menu` WHERE what='usr_online' LIMIT 1";
+ $SQLs[] = "DELETE LOW_PRIORITY FROM `"._MYSQL_PREFIX."_guest_menu` WHERE action='online' LIMIT 1";
+
+ // Unregister filter
+ UNREGISTER_FILTER('init', 'UPDATE_ONLINE_LIST', true, $dry_run);
break;
case "activate": // Do stuff when admin activates this extension
// SQL commands to run
- $SQLs[] = "UPDATE "._MYSQL_PREFIX."_guest_menu SET visible='Y', locked='N' WHERE action='online' LIMIT 1";
+ $SQLs[] = "UPDATE `"._MYSQL_PREFIX."_guest_menu` SET visible='Y', locked='N' WHERE action='online' LIMIT 1";
break;
case "deactivate": // Do stuff when admin deactivates this extension
// SQL commands to run
- $SQLs[] = "UPDATE "._MYSQL_PREFIX."_guest_menu SET visible='Y', locked='Y' WHERE action='online' LIMIT 1";
+ $SQLs[] = "UPDATE `"._MYSQL_PREFIX."_guest_menu` SET visible='N', locked='Y' WHERE action='online' LIMIT 1";
break;
case "update": // Update an extension
case "0.0.2": // SQL queries for v0.0.2
// Update notes (these will be set as task text!)
- $UPDATE_NOTES = "Seit <A href=\"".SERVER_URL."/patches/340-Gast_Mitgliedsmenue_Deaktivieren.zip\">Patch 340</A> überflüssige HTML-Tags entfernt.";
+ $UPDATE_NOTES = "Seit <A href=\"#\">Patch 340</A> überflüssige HTML-Tags entfernt.";
break;
case "0.0.3": // SQL queries for v0.0.3
// Update notes (these will be set as task text!)
$UPDATE_NOTES = "Erstellung der Datenbanktabelle "._MYSQL_PREFIX."_online in diese Erweiterung ausgelagert.";
break;
+
+ case "0.0.5": // SQL queries for v0.0.5
+ $SQLs[] = "INSERT INTO `"._MYSQL_PREFIX."_guest_menu` (`action`,`what`,`title`,`sort`,`visible`,`locked`) VALUES ('online',NULL,'Jetzt Online','2','Y','N')";
+
+ // Register filter
+ REGISTER_FILTER('init', 'UPDATE_ONLINE_LIST', false, true, $dry_run);
+
+ // Update notes (these will be set as task text!)
+ $UPDATE_NOTES = "Hinzufügen des Menüpunktes "Jetzt Online" wird nun von dieser Erweiterung erledigt. Filter hinzugefügt.";
+ break;
}
break;
+case "test": // For testing purposes. For details see file inc/modules/admin/what-extensions.php, arround line 305.
+ break;
+
default: // Do stuff when extension is loaded
break;
}
-// Language file prefix
-$EXT_LANG_PREFIX = "online";
-
-// Extension is always active?
-$EXT_ALWAYS_ACTIVE = "N";
//
?>