X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fextensions%2Fext-nickname.php;h=3ef849f832f8449410f76349f281a557784bbb82;hp=bc46034173a71e8b3eb836de5ffc58846b89adb6;hb=dfaa8c1675da4071ea451406a6f6fedd4c568416;hpb=307a4e11763f0914e73dc756b219356e1c29ab25 diff --git a/inc/extensions/ext-nickname.php b/inc/extensions/ext-nickname.php index bc46034173..3ef849f832 100644 --- a/inc/extensions/ext-nickname.php +++ b/inc/extensions/ext-nickname.php @@ -32,28 +32,27 @@ ************************************************************************/ // 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.1.7"; +$EXT_VERSION = "0.1.9"; // 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", "0.0.5", "0.0.6", "0.0.7", "0.0.8", "0.0.9", "0.1.0", "0.1.1", "0.1.2", "0.1.3", "0.1.4", "0.1.5", "0.1.6", "0.1.7", "0.1.8"); +$EXT_VER_HISTORY = array("0.0", "0.0.1", "0.0.2", "0.0.3", "0.0.4", "0.0.5", "0.0.6", "0.0.7", "0.0.8", "0.0.9", "0.1.0", "0.1.1", "0.1.2", "0.1.3", "0.1.4", "0.1.5", "0.1.6", "0.1.7", "0.1.8", "0.1.9"); switch ($EXT_LOAD_MODE) { case "register": // Do stuff when installtion is running (modules.php?module=admin&action=login is called) // SQL commands to run - $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_user_data ADD nickname varchar(255) NOT NULL default ''"; - $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_user_data ADD nick_uid enum('nick', 'uid') NOT NULL default 'uid'"; - $SQLs[] = "INSERT INTO "._MYSQL_PREFIX."_member_menu (action, what, title, sort, visible, locked) VALUES ('main', 'nickname', 'Nicknamen', '5', 'Y', 'Y')"; + $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_user_data ADD nickname VARCHAR(255) NOT NULL DEFAULT ''"; + $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_user_data ADD nick_uid ENUM ('nick','uid') NOT NULL DEFAULT 'uid'"; + $SQLs[] = "INSERT INTO "._MYSQL_PREFIX."_member_menu (`action`,`what`,`title`,`sort`,`visible`,`locked`) VALUES ('main','nickname','Nicknamen','5','Y','Y')"; // Load CSS file? $EXT_CSS = "Y"; @@ -61,18 +60,19 @@ case "register": // Do stuff when installtion is running (modules.php?module=adm case "remove": // Do stuff when removing extension // SQL commands to run - $SQLs[] = "DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_member_menu WHERE action='main' AND what='nickname' LIMIT 1"; - $SQLs[] = "DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_admin_menu WHERE what='config_nickname' LIMIT 1"; + $SQLs[] = "DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_member_menu WHERE what='nickname' LIMIT 1"; + $SQLs[] = "DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_admin_menu WHERE what IN ('config_nickname','list_nickname') LIMIT 2"; + $SQLs[] = "DROP TABLE IF EXISTS "._MYSQL_PREFIX."_nickname_history"; break; case "activate": // Do stuff when admin activates this extension // SQL commands to run - $SQLs[] = "UPDATE "._MYSQL_PREFIX."_member_menu SET visible='Y', locked='N' WHERE action='main' AND what='nickname' LIMIT 1"; + $SQLs[] = "UPDATE "._MYSQL_PREFIX."_member_menu SET visible='Y', locked='N' WHERE what='nickname' LIMIT 1"; break; case "deactivate": // Do stuff when admin deactivates this extension // SQL commands to run - $SQLs[] = "UPDATE "._MYSQL_PREFIX."_member_menu SET visible='Y', locked='Y' WHERE action='main' AND what='nickname' LIMIT 1"; + $SQLs[] = "UPDATE "._MYSQL_PREFIX."_member_menu SET visible='Y', locked='Y' WHERE what='nickname' LIMIT 1"; break; case "update": // Update an extension @@ -104,10 +104,10 @@ case "update": // Update an extension break; case "0.0.6": // SQL queries for v0.0.6 - $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_config ADD nickname_len tinyint(4) not null default '5'"; - $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_config ADD nickname_pattern varchar(255) not null default 'a-zA-Z0-9_'"; - $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_config ADD nickname_chars varchar(255) not null default 'a-z, A-Z, 0-9, _'"; - $SQLs[] = "INSERT INTO "._MYSQL_PREFIX."_admin_menu (action, what, title, descr, sort) VALUES('setup', 'config_nickname', 'Nicknamen', 'Stellen Sie minimale Nicknamenlänge, sowie erlaubte Zeichen hier ein.', 12)"; + $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_config ADD nickname_len TINYINT(3) UNSIGNED NOT NULL DEFAULT '5'"; + $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_config ADD nickname_pattern VARCHAR(255) NOT NULL DEFAULT 'a-zA-Z0-9_'"; + $SQLs[] = "ALTER TABLE "._MYSQL_PREFIX."_config ADD nickname_chars VARCHAR(255) NOT NULL DEFAULT 'a-z, A-Z, 0-9, _'"; + $SQLs[] = "INSERT INTO "._MYSQL_PREFIX."_admin_menu (`action`,`what`,`title`,`descr`,`sort`) VALUES('setup','config_nickname','Nicknamen','Stellen Sie minimale Nicknamenlänge, sowie erlaubte Zeichen hier ein.', 12)"; // Update notes (these will be set as task text!) $UPDATE_NOTES = "Minimale Länge, sowie erlaubte Zeichen sind per Adminbereich änderbar. Setzen Sie als erlaubte Zeichen nur URL-konforme Zeichen ein!"; @@ -130,7 +130,7 @@ case "update": // Update an extension case "0.1.0": // SQL queries for v0.2.1 // Update notes (these will be set as task text!) - $UPDATE_NOTES = "Seit Patch 340 überflüssige HTML-Tags entfernt."; + $UPDATE_NOTES = "Seit Patch 340 überflüssige HTML-Tags entfernt."; break; case "0.1.1": // SQL queries for v0.1.1 @@ -176,10 +176,29 @@ case "update": // Update an extension // Update notes (these will be set as task text!) $UPDATE_NOTES = "Fehlerhinweis bei deaktivierter Erweiterung verbessert."; break; + + case "0.1.9": // SQL queries for v0.1.9 + $SQLs[] = "INSERT INTO "._MYSQL_PREFIX."_admin_menu (`action`,`what`,`title`,`descr`,`sort`) VALUES('user','list_nickname','Nickname-Historie','Listet alle verwendeten Nicknames der Mitglieder auf.', 12)"; + $SQLs[] = "DROP TABLE IF EXISTS "._MYSQL_PREFIX."_nickname_history"; + $SQLs[] = "CREATE TABLE "._MYSQL_PREFIX."_nickname_history ( +id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, +userid BIGINT(20) UNSIGNED NOT NULL DEFAULT 0, +nickname VARCHAR(255) NOT NULL DEFAULT '', +added TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, +last_used TIMESTAMP NOT NULL DEFAULT '0000-00-00 00:00:00', +INDEX userid (userid), +INDEX (last_used DESC), +PRIMARY KEY(id) +) TYPE=MyISAM COMMENT='History of used nicknames'"; + + // Update notes (these will be set as task text!) + $UPDATE_NOTES = "Historie eingegebener Nicknames hinzugefügt. Mitglied kann auf bereits verwendeter zurückgreifen und Liste selbst löschen."; + break; } break; default: // Do stuff when extension is loaded + // @TODO|@DEPRECATED Please rewrite these constants, LOAD_CONFIG() is no more needed in extensions $dummy = LOAD_CONFIG(); define('__NICKNAME_LANG_CHARS', $dummy['nickname_chars']); define('__NICKNAME_LENGTH' , $dummy['nickname_len']); @@ -187,11 +206,9 @@ default: // Do stuff when extension is loaded unset($dummy); break; } + // Language file prefix $EXT_LANG_PREFIX = "nickname"; -// Extension is always active? -$EXT_ALWAYS_ACTIVE = "N"; - // ?>