Rewrote some parts:
[mailer.git] / inc / extensions / ext-nickname.php
index ed9a18f8c480e5fb870dbb435f33a35aa92f1991..d922667754b145d353564c96150ee10be52e3528 100644 (file)
@@ -16,7 +16,7 @@
  * $Author::                                                          $ *
  * -------------------------------------------------------------------- *
  * Copyright (c) 2003 - 2009 by Roland Haeder                           *
- * Copyright (c) 2009 - 2012 by Mailer Developer Team                   *
+ * Copyright (c) 2009 - 2013 by Mailer Developer Team                   *
  * For more information visit: http://mxchange.org                      *
  *                                                                      *
  * This program is free software; you can redistribute it and/or modify *
@@ -47,10 +47,11 @@ setThisExtensionVersion('0.2.1');
 setExtensionVersionHistory(array('0.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', '0.2.0', '0.2.1'));
 
 switch (getExtensionMode()) {
-       case 'register': // Do stuff when installation is running
+       case 'setup': // Do stuff when installation is running
                // SQL commands to run
-               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_user_data` ADD `nickname` VARCHAR(255) NOT NULL DEFAULT ''");
-               addExtensionSql("ALTER TABLE `{?_MYSQL_PREFIX?}_user_data` ADD `nick_userid` ENUM ('nick','userid') NOT NULL DEFAULT 'userid'");
+               // @TODO NOT NULL DEFAULT '' is bad practice, use NULL
+               addExtensionAddTableColumnSql('user_data', 'nickname', "VARCHAR(255) NOT NULL DEFAULT ''");
+               addExtensionAddTableColumnSql('user_data', 'nick_userid', "ENUM ('nick','userid') NOT NULL DEFAULT 'userid'");
 
                // Add member menu
                addMemberMenuSql('extras', 'nickname', 'Nicknamen', 2);
@@ -75,9 +76,6 @@ switch (getExtensionMode()) {
        case 'update': // Update an extension
                switch (getCurrentExtensionVersion()) {
                        case '0.0.1': // SQL queries for v0.0.1
-                               // This update depends on ext-sql_patches update!
-                               addExtensionDependency('sql_patches');
-
                                // Update notes (these will be set as task text!)
                                setExtensionUpdateNotes("Veraltetes Update entfernt.");
                                break;
@@ -128,15 +126,15 @@ switch (getExtensionMode()) {
                                break;
 
                        case '0.1.1': // SQL queries for v0.1.1
-                               addExtensionSql('ALTER TABLE `{?_MYSQL_PREFIX?}_user_data` DROP `nick_userid`');
+                               addExtensionDropTableColumnSql('user_data', 'nick_userid');
 
                                // Update notes (these will be set as task text!)
-                               setExtensionUpdateNotes("Auswahlfür Mitglied ob mit Nickname oder Mitglied-Id einloggen entfernt.");
+                               setExtensionUpdateNotes("Auswahlfür Mitglied ob mit Nickname oder Mitglieds-Id einloggen entfernt.");
                                break;
 
                        case '0.1.2': // SQL queries for v0.1.2
                                // Update notes (these will be set as task text!)
-                               setExtensionUpdateNotes("Zum Zusenden eines neuen Passwortes kann jetzt entweder der Nickname / Mitglied-Id <u>ODER</u> die angemeldete EMail-Adresse eingegeben werden.");
+                               setExtensionUpdateNotes("Zum Zusenden eines neuen Passwortes kann jetzt entweder der Nickname / Mitglieds-Id <u>ODER</u> die angemeldete EMail-Adresse eingegeben werden.");
                                break;
 
                        case '0.1.3': // SQL queries for v0.1.3
@@ -187,9 +185,6 @@ switch (getExtensionMode()) {
                                // Remove this deprecated table
                                addDropTableSql('nickname_history');
 
-                               // This update depends on ext-sql_patches update!
-                               addExtensionDependency('sql_patches');
-
                                // Update notes (these will be set as task text!)
                                setExtensionUpdateNotes("Diese Tabelle kann in <strong>ext-sql_patches</strong> allgemeiner formuliert werden.");
                                break;
@@ -206,7 +201,7 @@ switch (getExtensionMode()) {
                break;
 
        default: // Unknown extension mode
-               logDebugMessage(__FILE__, __LINE__, sprintf("Unknown extension mode %s in extension %s detected.", getExtensionMode(), getCurrentExtensionName()));
+               reportBug(__FILE__, __LINE__, sprintf('Unknown extension mode %s in extension %s detected.', getExtensionMode(), getCurrentExtensionName()));
                break;
 } // END - switch