Reverted of changes in 1704, see ticket #160
[mailer.git] / inc / fix_filters.php
index 60611539a2aaf924b21670c7911de537e8eb9102..b2762810fe45cc23589bcf2e72bb8a260d320cc3 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 /************************************************************************
- * MXChange v0.2.1                                    Start: 10/06/2009 *
- * ===============                              Last change: 10/06/2009 *
+ * Mailer v0.2.1-FINAL                                Start: 10/06/2009 *
+ * ===================                          Last change: 10/06/2009 *
  *                                                                      *
  * -------------------------------------------------------------------- *
  * File              : fix_filters.php                                  *
  * -------------------------------------------------------------------- *
  * Kurzbeschreibung  : Repariert doppelte Eintraege in filters-Tabelle  *
  * -------------------------------------------------------------------- *
- * $Revision:: 1004                                                   $ *
- * $Date:: 2009-04-03 09:32:14 +0000 (Fri, 03 Apr 2009)               $ *
+ * $Revision::                                                        $ *
+ * $Date::                                                            $ *
  * $Tag:: 0.2.1-FINAL                                                 $ *
- * $Author:: quix0r                                                   $ *
+ * $Author::                                                          $ *
  * Needs to be in all Files and every File needs "svn propset           *
  * svn:keywords Date Revision" (autoprobset!) at least!!!!!!            *
  * -------------------------------------------------------------------- *
- * Copyright (c) 2003 - 2008 by Roland Haeder                           *
+ * Copyright (c) 2003 - 2009 by Roland Haeder                           *
+ * Copyright (c) 2009, 2010 by Mailer Developer Team                    *
  * For more information visit: http://www.mxchange.org                  *
  *                                                                      *
  * This program is free software; you can redistribute it and/or modify *
 
 // Some security stuff...
 if (!defined('__SECURITY')) {
-       $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), '/inc') + 4) . '/security.php';
-       require($INC);
+       die();
 } // END - if
 
 // Get all filters
 $result = SQL_QUERY('SELECT
        `filter_name`, `filter_function`
 FROM
-       `{!_MYSQL_PREFIX!}_filters`
+       `{?_MYSQL_PREFIX?}_filters`
 ORDER BY
        `filter_name` ASC, `filter_function` ASC', __FILE__, __LINE__);
 
@@ -55,25 +55,26 @@ if (SQL_NUMROWS($result) > 0) {
        // Load row by row
        while ($filter = SQL_FETCHARRAY($result)) {
                // Now search again for this filter and get it's total count
-               $count = GET_TOTAL_DATA($filter['filter_name'], 'filters', 'filter_id', 'filter_name', true, sprintf(" AND `filter_function`='%s'", $filter['filter_function']));
+               $count = countSumTotalData($filter['filter_name'], 'filters', 'filter_id', 'filter_name', true, sprintf(" AND `filter_function`='%s'", $filter['filter_function']));
 
                // Do we have more than one entry?
                if ($count > 1) {
                        // Then clean them up, except one
-                       SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{!_MYSQL_PREFIX!}_filters` WHERE `filter_name`='%s' AND `filter_function`='%s' LIMIT %s",
-                               array($filter['filter_name'], $filter['filter_function'], ($count - 1)), __FILE__, __LINE__);
+                       addExtensionSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_filters` WHERE `filter_name`='%s' AND `filter_function`='%s' LIMIT %s",
+                               array($filter['filter_name'], $filter['filter_function'], ($count - 1)));
                } // END - while
        } // END - while
-} else {
-       // @TODO Why does this happen? In installation phase of sql_patches?
-       debug_report_bug(basename(__FILE__) . ' did run with no filters in database.');
-}
+
+       // Rebuild the cache
+       rebuildCache('filter', 'filter');
+} // END - if
 
 // Free result
 SQL_FREERESULT($result);
 
 // Now insert our unqiue key
-SQL_QUERY("ALTER TABLE `{!_MYSQL_PREFIX!}_filters` ADD UNIQUE `name_function` (`filter_name` , `filter_function`)", __FILE__, __LINE__);
+addExtensionSql('ALTER TABLE `{?_MYSQL_PREFIX?}_filters` DROP KEY `name_function`');
+addExtensionSql('ALTER TABLE `{?_MYSQL_PREFIX?}_filters` ADD UNIQUE `name_function` (`filter_name` , `filter_function`)');
 
 // [EOF]
 ?>