X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=inc%2Ffix_filters.php;h=6feea6563e89651000c94485767a6abc9df5fbcd;hb=8def2eea23fae29ba4d86b4bf7df9307e62f61b7;hp=60611539a2aaf924b21670c7911de537e8eb9102;hpb=509ae618cc32ba2b811cf66567d62abc597dc405;p=mailer.git diff --git a/inc/fix_filters.php b/inc/fix_filters.php index 60611539a2..6feea6563e 100644 --- a/inc/fix_filters.php +++ b/inc/fix_filters.php @@ -10,14 +10,14 @@ * -------------------------------------------------------------------- * * 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 * * For more information visit: http://www.mxchange.org * * * * This program is free software; you can redistribute it and/or modify * @@ -38,15 +38,14 @@ // 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 +54,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 + rebuildCacheFile('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] ?>