2 /************************************************************************
3 * Mailer v0.2.1-FINAL Start: 05/29/2004 *
4 * =================== Last change: 01/07/2005 *
6 * -------------------------------------------------------------------- *
7 * File : ext-autopurge.php *
8 * -------------------------------------------------------------------- *
9 * Short description : Automatical purging of outdated mail links *
10 * -------------------------------------------------------------------- *
11 * Kurzbeschreibung : Auto-Loeschung von veralteten Mail-Links *
12 * -------------------------------------------------------------------- *
15 * $Tag:: 0.2.1-FINAL $ *
17 * -------------------------------------------------------------------- *
18 * Copyright (c) 2003 - 2009 by Roland Haeder *
19 * Copyright (c) 2009 - 2016 by Mailer Developer Team *
20 * For more information visit: http://mxchange.org *
22 * This program is free software; you can redistribute it and/or modify *
23 * it under the terms of the GNU General Public License as published by *
24 * the Free Software Foundation; either version 2 of the License, or *
25 * (at your option) any later version. *
27 * This program is distributed in the hope that it will be useful, *
28 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
29 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
30 * GNU General Public License for more details. *
32 * You should have received a copy of the GNU General Public License *
33 * along with this program; if not, write to the Free Software *
34 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, *
36 ************************************************************************/
38 // Some security stuff...
39 if (!defined('__SECURITY')) {
44 setThisExtensionVersion('0.4.2');
46 // Version history array (add more with , '0.0.1' and so on)
47 setExtensionVersionHistory(array('0.0.0', '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', '0.2.2', '0.2.3', '0.2.4', '0.2.5', '0.2.6', '0.2.7', '0.2.8', '0.2.9', '0.3.0', '0.3.1', '0.3.2', '0.3.3', '0.3.4', '0.3.5', '0.3.6', '0.3.7', '0.3.8', '0.3.9', '0.4.0', '0.4.1', '0.4.2'));
49 // Keep this extension always active!
50 setExtensionAlwaysActive('Y');
52 switch (getExtensionMode()) {
53 case 'setup': // Do stuff when installation is running
54 // Add dependency to ext-bonus
55 addExtensionDependency('bonus');
57 // SQL commands to run
58 addExtensionChangeTableColumnSql('pool', 'data_type', 'data_type', "ENUM('TEMP','SEND','NEW','ADMIN','ACTIVE','DELETED') NOT NULL DEFAULT 'TEMP'");
59 addExtensionChangeTableColumnSql('bonus', 'data_type', 'data_type', "ENUM('NEW','QUEUE','SEND','DELETED') NOT NULL DEFAULT 'NEW'");
62 case 'remove': // Do stuff when removing extension
63 // SQL commands to run
64 addExtensionChangeTableColumnSql('pool', 'data_type', 'data_type', "ENUM('TEMP','SEND','NEW','ADMIN','ACTIVE') NOT NULL DEFAULT 'TEMP'");
65 addExtensionChangeTableColumnSql('bonus', 'data_type', 'data_type', "ENUM('NEW','QUEUE','SEND') NOT NULL DEFAULT 'NEW'");
66 addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_admin_menu` WHERE `what` IN('config_autopurge','list_autopurge')");
67 addExtensionDropTableColumnSql('user_data', 'ap_notified');
69 // Unregister with points data
70 unregisterExtensionPointsData('autopurge_add');
73 case 'activate': // Do stuff when admin activates this extension
74 // SQL commands to run
78 case 'deactivate': // Do stuff when admin deactivates this extension
79 // SQL commands to run
83 case 'update': // Update an extension
86 case 'modify': // When the extension got modified
89 case 'test': // For testing purposes
92 case 'init': // Do stuff when extension is initialized
95 default: // Unknown extension mode
96 reportBug(__FILE__, __LINE__, sprintf('Unknown extension mode %s in extension %s detected.', getExtensionMode(), getCurrentExtensionName()));