]> git.mxchange.org Git - mailer.git/blobdiff - inc/extensions/ext-rallye.php
New naming convention applied to many functions, see #118 for details
[mailer.git] / inc / extensions / ext-rallye.php
index 95890d4f40b2c0d7a2a9380ed021559603e7728e..90b7f0d1ecdef69989835b0259ac76596cc8ae84 100644 (file)
 
 // Some security stuff...
 if (!defined('__SECURITY')) {
-       $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";
+       $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), '/inc') + 4) . '/security.php';
        require($INC);
 }
 
 // Version number
-EXT_SET_VERSION("0.3.5");
+EXT_SET_VERSION('0.3.5');
 
-// Version history array (add more with , "0.1" and so on)
-EXT_SET_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", "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"));
+// Version history array (add more with , '0.1.0' and so on)
+EXT_SET_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', '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'));
 
 switch ($EXT_LOAD_MODE)
 {
-case "register": // Do stuff when installation 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
        ADD_EXT_SQL("DROP TABLE IF EXISTS `{!_MYSQL_PREFIX!}_rallye_data`");
        ADD_EXT_SQL("DROP TABLE IF EXISTS `{!_MYSQL_PREFIX!}_rallye_prices`");
@@ -59,7 +59,7 @@ case "register": // Do stuff when installation is running (modules.php?module=ad
 id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
 admin_id BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
 title VARCHAR(255) NOT NULL DEFAULT '',
-descr LONGBLOB NOT NULL,
+descr LONGTEXT NOT NULL,
 template VARCHAR(255) NOT NULL DEFAULT '',
 start_time VARCHAR(10) NOT NULL DEFAULT 0,
 end_time VARCHAR(10) NOT NULL DEFAULT 0,
@@ -75,7 +75,7 @@ id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
 rallye_id BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
 price_level BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
 points BIGINT(20) UNSIGNED NOT NULL DEFAULT 0,
-info LONGBLOB NOT NULL,
+info LONGTEXT NOT NULL,
 KEY (rallye_id),
 PRIMARY KEY(id)
 ) TYPE={!_TABLE_TYPE!}");
@@ -102,7 +102,7 @@ PRIMARY KEY(id)
        ADD_EXT_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_member_menu` (`action`,`what`,`title`,`visible`,`locked`,`sort`) VALUES ('main','rallyes','Ref-Rallyes','Y','Y','9')");
        break;
 
-case "remove": // Do stuff when removing extension
+case 'remove': // Do stuff when removing extension
        // Drop tables
        ADD_EXT_SQL("DROP TABLE IF EXISTS `{!_MYSQL_PREFIX!}_rallye_data`");
        ADD_EXT_SQL("DROP TABLE IF EXISTS `{!_MYSQL_PREFIX!}_rallye_prices`");
@@ -117,108 +117,108 @@ case "remove": // Do stuff when removing extension
        UNREGISTER_FILTER('extra_autopurge', 'RALLYE_EXTRA_AUTOPURGE', true, $dry_run);
        break;
 
-case "activate": // Do stuff when admin activates this extension
+case 'activate': // Do stuff when admin activates this extension
        // SQL commands to run
        ADD_EXT_SQL("UPDATE `{!_MYSQL_PREFIX!}_guest_menu` SET `visible`='Y', `locked`='N' WHERE `what`='rallyes' LIMIT 1");
        ADD_EXT_SQL("UPDATE `{!_MYSQL_PREFIX!}_member_menu` SET `visible`='Y', `locked`='N' WHERE `what`='rallyes' LIMIT 1");
        break;
 
-case "deactivate": // Do stuff when admin deactivates this extension
+case 'deactivate': // Do stuff when admin deactivates this extension
        // SQL commands to run
        ADD_EXT_SQL("UPDATE `{!_MYSQL_PREFIX!}_guest_menu` SET `visible`='N', `locked`='Y' WHERE `what`='rallyes' LIMIT 1");
        ADD_EXT_SQL("UPDATE `{!_MYSQL_PREFIX!}_member_menu` SET `visible`='N', `locked`='Y' WHERE `what`='rallyes' LIMIT 1");
        break;
 
-case "update": // Update an extension
+case 'update': // Update an extension
        switch ($EXT_VER)
        {
-       case "0.0.1": // SQL queries for v0.0.1
+       case '0.0.1': // SQL queries for v0.0.1
                ADD_EXT_SQL("ALTER TABLE `{!_MYSQL_PREFIX!}_rallye_data` ADD expired ENUM('Y','N') NOT NULL DEFAULT 'N'");
 
                // Update notes (these will be set as task text!)
                EXT_SET_UPDATE_NOTES("Ablaufen der Rallyes intergriert.");
                break;
 
-       case "0.0.2": // SQL queries for v0.0.2
+       case '0.0.2': // SQL queries for v0.0.2
                ADD_EXT_SQL("ALTER TABLE `{!_MYSQL_PREFIX!}_rallye_users` ADD curr_points FLOAT(20,5) UNSIGNED NOT NULL DEFAULT 0.00000");
 
                // Update notes (these will be set as task text!)
                EXT_SET_UPDATE_NOTES("Aktueller {!POINTS!}-Stand wird beachtet.");
                break;
 
-       case "0.0.6": // SQL queries for v0.0.6
+       case '0.0.6': // SQL queries for v0.0.6
                // Update notes (these will be set as task text!)
                EXT_SET_UPDATE_NOTES("Fehler <em>Unknown column 'd.useid' in 'on clause'</em> behoben.");
                break;
 
-       case "0.0.7": // SQL queries for v0.0.7
+       case '0.0.7': // SQL queries for v0.0.7
                // Update notes (these will be set as task text!)
                EXT_SET_UPDATE_NOTES("Fehlende Abfrage im Mitlieder-Modul, on Erweiterung auch aktiviert ist.");
                break;
 
-       case "0.0.8": // SQL queries for v0.0.8
+       case '0.0.8': // SQL queries for v0.0.8
                // Update notes (these will be set as task text!)
                EXT_SET_UPDATE_NOTES("Fehler <u>Template nicht gefunden</u> behoben und Admin-Formulare ausgelagert");
                break;
 
-       case "0.0.9": // SQL queries for v0.0.9
+       case '0.0.9': // SQL queries for v0.0.9
                // Update notes (these will be set as task text!)
                EXT_SET_UPDATE_NOTES("Fehler beseitigt, wenn error_reporting=E_ALL gesetzt ist. Und der vorherige Fehler <u>Template nicht gefunden</u> ist endlich beseitigt.");
                break;
 
-       case "0.1.0": // SQL queries for v0.2.1
+       case '0.1.0': // SQL queries for v0.2.1
                ADD_EXT_SQL("ALTER TABLE `{!_MYSQL_PREFIX!}_rallye_users` CHANGE curr_points curr_points FLOAT(23,5) UNSIGNED NOT NULL DEFAULT 0.00000");
 
                // Update notes (these will be set as task text!)
                EXT_SET_UPDATE_NOTES("5 Nachkommastellen implementiert.");
                break;
 
-       case "0.1.1": // SQL queries for v0.1.1
+       case '0.1.1': // SQL queries for v0.1.1
                // Update notes (these will be set as task text!)
                EXT_SET_UPDATE_NOTES("Fehler beseitigt, wenn error_reporting=E_ALL gesetzt ist.");
                break;
 
-       case "0.1.2": // SQL queries for v0.1.2
+       case '0.1.2': // SQL queries for v0.1.2
                // Update notes (these will be set as task text!)
                EXT_SET_UPDATE_NOTES("Problem mit Speicherung der Einstellungen beseitigt.");
                break;
 
-       case "0.1.3": // SQL queries for v0.1.3
+       case '0.1.3': // SQL queries for v0.1.3
                // Update notes (these will be set as task text!)
                EXT_SET_UPDATE_NOTES("Anzeigefehler im Gast-/Mitgliedsbereich behoben.");
                break;
 
-       case "0.1.4": // SQL queries for v0.1.4
+       case '0.1.4': // SQL queries for v0.1.4
                // Update notes (these will be set as task text!)
                EXT_SET_UPDATE_NOTES("Admin-Mails korregiert.");
                break;
 
-       case "0.1.5": // SQL queries for v0.1.5
+       case '0.1.5': // SQL queries for v0.1.5
                // Update notes (these will be set as task text!)
                EXT_SET_UPDATE_NOTES("Men&uuml;punkte im Gast-/Mitgliedsbereich k&ouml;nnen nicht mehr aufgerufen werden, wenn die Erweiterung deaktiviert ist.");
                break;
 
-       case "0.1.6": // SQL queries for v0.1.6
+       case '0.1.6': // SQL queries for v0.1.6
                // Update notes (these will be set as task text!)
                EXT_SET_UPDATE_NOTES("Seit <a href=\"#\">Patch 340</a> &uuml;berfl&uuml;ssige HTML-Tags entfernt.");
                break;
 
-       case "0.1.7": // SQL queries for v0.1.7
+       case '0.1.7': // SQL queries for v0.1.7
                // Update notes (these will be set as task text!)
                EXT_SET_UPDATE_NOTES("Aktivierte bzw. abgelaufene Rallyes werden nur ausserhalb des CSS-Modus geladen (wenn also nicht css.php aufgerufen wurde)");
                break;
 
-       case "0.1.8": // SQL queries for v0.1.8
+       case '0.1.8': // SQL queries for v0.1.8
                // Update notes (these will be set as task text!)
                EXT_SET_UPDATE_NOTES("Weitere Templates vom Admin-Bereich ausgelagert und Referal-Anazahl in der Mail zur Rallye-Ank&uuml;ndigung repariert.");
                break;
 
-       case "0.1.9": // SQL queries for v0.1.9
+       case '0.1.9': // SQL queries for v0.1.9
                // Update notes (these will be set as task text!)
-               EXT_SET_UPDATE_NOTES("Funktion ADMIN_USER_PROFILE_LINK() mit Verlinkung auf Referal-Liste implementiert.");
+               EXT_SET_UPDATE_NOTES("Funktion <u>generateUserProfileLink()</u> mit Verlinkung auf Referal-Liste implementiert.");
                break;
 
-       case "0.2.0": // SQL queries for v0.2.0
+       case '0.2.0': // SQL queries for v0.2.0
                ADD_EXT_SQL("ALTER TABLE `{!_MYSQL_PREFIX!}_rallye_data` ADD min_users BIGINT(20) UNSIGNED NOT NULL DEFAULT 0");
                ADD_EXT_SQL("ALTER TABLE `{!_MYSQL_PREFIX!}_rallye_data` ADD min_prices BIGINT(20) UNSIGNED NOT NULL DEFAULT '3'");
 
@@ -228,89 +228,89 @@ case "update": // Update an extension
   <li>&#36;DATA&#91;min_users&#93;</li>
   <li>&#36;DATA&#91;min_prices&#93;</li>
 </ul>
-Zudem sollten Sie mindestens folgende Templates (in <strong>templates/".GET_LANGUAGE()."/html/guest/</strong> !) aktualisieren:<br />
+Zudem sollten Sie mindestens folgende Templates (in <strong>templates/".getLanguage()."/html/guest/</strong> !) aktualisieren:<br />
 <ul>
   <li><strong>guest_rallye_footer.tpl</strong></li>
   <li><strong>guest_rallye_header.tpl</strong></li>
 </ul>");
                break;
 
-       case "0.2.1": // SQL queries for v0.2.1
+       case '0.2.1': // SQL queries for v0.2.1
                // Update notes (these will be set as task text!)
                EXT_SET_UPDATE_NOTES("W&ouml;rter <strong>Mailtausch</strong>, <strong>Mailtausches</strong> und <strong>Mailtauscher</strong> sind austauschbar.");
                break;
 
-       case "0.2.2": // SQL queries for v0.2.2
+       case '0.2.2': // SQL queries for v0.2.2
                // Update notes (these will be set as task text!)
                EXT_SET_UPDATE_NOTES("Links wegen <strong>what=admins_contct</strong> ge&auml;ndert.");
                break;
 
-       case "0.2.3": // SQL queries for v0.2.3
+       case '0.2.3': // SQL queries for v0.2.3
                // Update notes (these will be set as task text!)
                EXT_SET_UPDATE_NOTES("HTML-Code ausgelagert in Templates und SQL-Anweisungen abgesichert.");
                break;
 
-       case "0.2.4": // SQL queries for v0.2.4
+       case '0.2.4': // SQL queries for v0.2.4
                // Update notes (these will be set as task text!)
                EXT_SET_UPDATE_NOTES("Abspeichern von Einstellungen repariert.");
                break;
 
-       case "0.2.5": // SQL queries for v0.2.5
+       case '0.2.5': // SQL queries for v0.2.5
                // Update notes (these will be set as task text!)
                EXT_SET_UPDATE_NOTES("Men&uuml;punkt &quot;Rallyes verwalten&quot; repariert.");
                break;
 
-       case "0.2.6": // SQL queries for v0.2.6
+       case '0.2.6': // SQL queries for v0.2.6
                // Update notes (these will be set as task text!)
                EXT_SET_UPDATE_NOTES("Automatisches Starten von Referal-Rallyes repariert.");
                break;
 
-       case "0.2.7": // SQL queries for v0.2.7
+       case '0.2.7': // SQL queries for v0.2.7
                // Update notes (these will be set as task text!)
                EXT_SET_UPDATE_NOTES("Fatalen Fehler beseitigt.");
                break;
 
-       case "0.2.8": // SQL queries for v0.2.8
+       case '0.2.8': // SQL queries for v0.2.8
                // Update notes (these will be set as task text!)
 
                EXT_SET_UPDATE_NOTES("Vorbereitung auf die neue Mediendaten v0.0.4.");
                break;
 
-       case "0.2.9": // SQL queries for v0.2.9
+       case '0.2.9': // SQL queries for v0.2.9
                // Update notes (these will be set as task text!)
                EXT_SET_UPDATE_NOTES("Sicherheitsupdate f&uuml;r die Include-Befehle.");
                break;
 
-       case "0.3.0": // SQL queries for v0.3.0
+       case '0.3.0': // SQL queries for v0.3.0
                // Update notes (these will be set as task text!)
                EXT_SET_UPDATE_NOTES("if-Anweisungen auf Funktion <strong>empty()</strong> umgestellt.");
                break;
 
-       case "0.3.1": // SQL queries for v0.3.1
+       case '0.3.1': // SQL queries for v0.3.1
                // Update notes (these will be set as task text!)
                EXT_SET_UPDATE_NOTES("Erweiterung f&uuml;r automatisch generierte Admin-Kontaktlinks ge&auml;ndert.");
                break;
 
-       case "0.3.2": // SQL queries for v0.3.2
+       case '0.3.2': // SQL queries for v0.3.2
                ADD_EXT_SQL("UPDATE `{!_MYSQL_PREFIX!}_member_menu` SET `action`='rals', `sort`='1', `title`='Referal-Rallye' WHERE `what`='rallyes' LIMIT 1");
 
                // Update notes (these will be set as task text!)
                EXT_SET_UPDATE_NOTES("Mitgliedsmen&uuml; komplett umgebaut.");
                break;
 
-       case "0.3.3": // SQL queries for v0.3.3
+       case '0.3.3': // SQL queries for v0.3.3
                // Update notes (these will be set as task text!)
                EXT_SET_UPDATE_NOTES("Rallyes werden nun nur dann automatisch beseitigt, wenn die Erweiterung <strong>autopurge</strong> installiert und aktiviert ist.");
                break;
 
-       case "0.3.4": // SQL queries for v0.3.4
+       case '0.3.4': // SQL queries for v0.3.4
                // Update notes (these will be set as task text!)
                EXT_SET_UPDATE_NOTES("Fehlerhinweis bei deaktivierter Erweiterung verbessert.");
                break;
 
-       case "0.3.5": // SQL queries for 0.3.5
+       case '0.3.5': // SQL queries for 0.3.5
                // This update depends on sql_patches
-               EXT_ADD_UPDATE_DEPENDS("sql_patches");
+               EXT_ADD_UPDATE_DEPENDS('sql_patches');
 
                // Register filter
                REGISTER_FILTER('extra_autopurge', 'RALLYE_EXTRA_AUTOPURGE', false, true, $dry_run);
@@ -321,21 +321,21 @@ Zudem sollten Sie mindestens folgende Templates (in <strong>templates/".GET_LANG
        }
        break;
 
-case "modify": // When the extension got modified
+case 'modify': // When the extension got modified
        break;
 
-case "test": // For testing purposes. For details see file inc/modules/admin/what-extensions.php, arround line 305.
+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
        // Do stuff only when not in CSS mode
-       if (($GLOBALS['output_mode'] != "1") && ($GLOBALS['output_mode'] != "-1") && ($GLOBALS['cache_mode'] != "init")) {
+       if (($GLOBALS['output_mode'] != '1') && ($GLOBALS['output_mode'] != '-1') && ($GLOBALS['cache_mode'] != 'init')) {
                // Get total member count
-               $total = GET_TOTAL_DATA("CONFIRMED", "user_data", "userid", "status", true);
+               $total = GET_TOTAL_DATA('CONFIRMED', 'user_data', 'userid', 'status', true);
 
                // Add more data on higher versions
-               $ADD1 = ""; $ADD2 = ""; $OR = "";
-               if (GET_EXT_VERSION("rallye") >= "0.2.0") {
+               $ADD1 = ''; $ADD2 = ''; $OR = '';
+               if (GET_EXT_VERSION('rallye') >= '0.2.0') {
                        $ADD1 = ", min_users, min_prices";
                        $ADD2 = ", d.min_users, d.min_prices";
                        $OR   = " OR (d.min_users <= ".$total." AND d.min_users > 0)";
@@ -359,7 +359,7 @@ LIMIT 1", __FILE__, __LINE__);
 FROM `{!_MYSQL_PREFIX!}_rallye_data` AS d
 WHERE d.is_active='Y' AND d.notified='Y' AND d.expired='N' AND (d.end_time <= UNIX_TIMESTAMP()".$OR.")
 LIMIT 1", __FILE__, __LINE__);
-               if ((SQL_NUMROWS($result) == 1) && (EXT_IS_ACTIVE("autopurge"))) {
+               if ((SQL_NUMROWS($result) == 1) && (EXT_IS_ACTIVE('autopurge'))) {
                        // End rallye here...
                        RALLYE_EXPIRE_RALLYES($result);
                } // END - if