Copyright updated
[mailer.git] / 0.2.1 / inc / extensions / ext-html_mail.php
1 <?php\r
2 /************************************************************************\r
3  * MXChange v0.2.1                                    Start: 03/22/2004 *\r
4  * ================                             Last change: 05/02/2004 *\r
5  *                                                                      *\r
6  * -------------------------------------------------------------------- *\r
7  * File              : ext-html_mail.php                                *\r
8  * -------------------------------------------------------------------- *\r
9  * Short description : HTML mails with default mail() routine           *\r
10  * -------------------------------------------------------------------- *\r
11  * Kurzbeschreibung  : HTML-Mails mit Standart mail()-Routine           *\r
12  * -------------------------------------------------------------------- *\r
13  *                                                                      *\r
14  * -------------------------------------------------------------------- *\r
15  * Copyright (c) 2003 - 2008 by Roland Haeder                           *\r
16  * For more information visit: http://www.mxchange.org                  *\r
17  *                                                                      *\r
18  * This program is free software; you can redistribute it and/or modify *\r
19  * it under the terms of the GNU General Public License as published by *\r
20  * the Free Software Foundation; either version 2 of the License, or    *\r
21  * (at your option) any later version.                                  *\r
22  *                                                                      *\r
23  * This program is distributed in the hope that it will be useful,      *\r
24  * but WITHOUT ANY WARRANTY; without even the implied warranty of       *\r
25  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the        *\r
26  * GNU General Public License for more details.                         *\r
27  *                                                                      *\r
28  * You should have received a copy of the GNU General Public License    *\r
29  * along with this program; if not, write to the Free Software          *\r
30  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,               *\r
31  * MA  02110-1301  USA                                                  *\r
32  ************************************************************************/\r
33 \r
34 // Some security stuff...\r
35 if (ereg(basename(__FILE__), $_SERVER['PHP_SELF']))\r
36 {\r
37         $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4)."/security.php";\r
38         require($INC);\r
39 }\r
40 \r
41 // Version number\r
42 $EXT_VERSION = "0.1.5";\r
43 \r
44 // Auto-set extension version\r
45 if (empty($EXT_VER)) $EXT_VER = $EXT_VERSION;\r
46 \r
47 // Version history array (add more with , "0.1" and so on)\r
48 $EXT_VER_HISTORY = array("0.0", "0.0.1", "0.0.2", "0.0.3", "0.0.4", "0.0.5", "0.0.51", "0.0.52", "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");\r
49 \r
50 switch ($EXT_LOAD_MODE)\r
51 {\r
52 case "register": // Do stuff when installtion is running (modules.php?module=admin&action=login is called)\r
53         // SQL commands to run\r
54         $SQLs[] = "alter table "._MYSQL_PREFIX."_user_data add html enum('Y','N') not null default 'Y'";\r
55         $SQLs[] = "alter table "._MYSQL_PREFIX."_bonus add html_msg enum('Y','N') not null default 'N'";\r
56         $SQLs[] = "alter table "._MYSQL_PREFIX."_pool add html_msg enum('Y','N') not null default 'N'";\r
57         $SQLs[] = "INSERT INTO "._MYSQL_PREFIX."_member_menu (action, what, title, sort, visible, locked) VALUES ('main', 'html_mail', 'HTML-Empfang', '3', 'Y', 'Y')";\r
58         break;\r
59 \r
60 case "remove": // Do stuff when removing extension\r
61         // SQL commands to run\r
62         $SQLs[] = "alter table "._MYSQL_PREFIX."_user_data drop html";\r
63         $SQLs[] = "alter table "._MYSQL_PREFIX."_bonus drop html_msg";\r
64         $SQLs[] = "alter table "._MYSQL_PREFIX."_pool drop html_msg";\r
65         $SQLs[] = "DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_member_menu WHERE action='main' AND what='html_mail' LIMIT 1";\r
66         break;\r
67 \r
68 case "activate": // Do stuff when admin activates this extension\r
69         // SQL commands to run\r
70         $SQLs[] = "UPDATE "._MYSQL_PREFIX."_member_menu SET visible='Y', locked='N' WHERE action='main' AND what='html_mail' LIMIT 1";\r
71         break;\r
72 \r
73 case "deactivate": // Do stuff when admin deactivates this extension\r
74         // SQL commands to run\r
75         $SQLs[] = "UPDATE "._MYSQL_PREFIX."_member_menu SET visible='Y', locked='Y' WHERE action='main' AND what='html_mail' LIMIT 1";\r
76         break;\r
77 \r
78 case "update": // Update an extension\r
79         switch ($EXT_VER)\r
80         {\r
81         case "0.0.6": // SQL queries for v0.0.6\r
82                 // Update notes (these will be set as task text!)\r
83                 $UPDATE_NOTES = "Der erstellte HTML-Code wird noch kompiliert (eigene HTML-Codes umgewandelt).";\r
84                 break;\r
85 \r
86         case "0.0.8": // SQL queries for v0.0.8\r
87                 // Update notes (these will be set as task text!)\r
88                 $UPDATE_NOTES = "Fehlende Abfrage im Mitlieder-Modul, on Erweiterung auch aktiviert ist.";\r
89                 break;\r
90 \r
91         case "0.0.9": // SQL queries for v0.0.9\r
92                 // Update notes (these will be set as task text!)\r
93                 $UPDATE_NOTES = "Fehler beseitigt, wenn error_reporting=E_ALL gesetzt ist.";\r
94                 break;\r
95 \r
96         case "0.1.0": // SQL queries for v0.1.0\r
97                 // Update notes (these will be set as task text!)\r
98                 $UPDATE_NOTES = "Men&uuml;punkte im Gast-/Mitgliedsbereich k&ouml;nnen nicht mehr aufgerufen werden, wenn die Erweiterung deaktiviert ist.";\r
99                 break;\r
100 \r
101         case "0.1.1": // SQL queries for v0.1.1\r
102                 // Update notes (these will be set as task text!)\r
103                 $UPDATE_NOTES = "Seit <A href=\"".SERVER_URL."/patches/340-Gast_Mitgliedsmenue_Deaktivieren.zip\">Patch 340</A> &uuml;berfl&uuml;ssige HTML-Tags entfernt.";\r
104                 break;\r
105 \r
106         case "0.1.2": // SQL queries for v0.1.2\r
107                 // Update notes (these will be set as task text!)\r
108                 $UPDATE_NOTES = "W&ouml;rter <STRONG>Mailtausch</STRONG>, <STRONG>Mailtausches</STRONG> und <STRONG>Mailtauscher</STRONG> sind austauschbar.";\r
109                 break;\r
110 \r
111         case "0.1.3": // SQL queries for v0.1.3\r
112                 // Update notes (these will be set as task text!)\r
113                 $UPDATE_NOTES = "Sicherheitsupdate: SQL-Anweisungen gesch&uuml;tzt.";\r
114                 break;\r
115 \r
116         case "0.1.4": // SQL queries for v0.1.4\r
117                 // Update notes (these will be set as task text!)\r
118                 $UPDATE_NOTES = "Abspeichern von Einstellungen repariert.";\r
119                 break;\r
120 \r
121         case "0.1.5": // SQL queries for v0.1.5\r
122                 // Update notes (these will be set as task text!)\r
123                 $UPDATE_NOTES = "Fehlerhinweis bei deaktivierter Erweiterung verbessert.";\r
124                 break;\r
125         }\r
126         break;\r
127 \r
128 default: // Do stuff when extension is loaded\r
129 \r
130         // Define all arrary variables as global!\r
131         global $HTML_TAGS, $URL_ENDS, $VALID_EMAI_CHARS;\r
132 \r
133         // Valid HTML tags (only simple and no attributes!)\r
134         $HTML_TAGS = array(\r
135                 "b",\r
136                 "i",\r
137                 "u",\r
138                 "ol",\r
139                 "ul",\r
140                 "li",\r
141                 "strong",\r
142                 "center",\r
143                 "left",\r
144                 "right",\r
145                 "br",\r
146         );\r
147 \r
148         // URL ends which are used to indentify the end of an URL or email link\r
149         // Don't use these chars in links... ;-)\r
150         //\r
151         $URL_ENDS = array(\r
152                 " ",\r
153                 "\n",\r
154                 "\r",\r
155                 ")",\r
156         );\r
157 \r
158         // Valid email chars (without @, or do you want to have another @ inside your email addy?)\r
159         $VALID_EMAIL_CHARS = array(\r
160                 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's',\r
161                 't', 'u', 'v', 'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L',\r
162                 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z',   '-', '.', '_', '0', '1',\r
163                 '2', '3', '4', '5', '6', '7', '8', '9'\r
164         );\r
165         break;\r
166 }\r
167 // Language file prefix\r
168 $EXT_LANG_PREFIX = "html_mail";\r
169 \r
170 // Extension is always active?\r
171 $EXT_ALWAYS_ACTIVE = "N";\r
172 \r
173 //\r
174 ?>\r