X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=inc%2Ffix_filters.php;h=2e05a953827b98379f2e4c8981c1db6253698090;hb=f85404739552dd9519025e870ca09d2a435f94c2;hp=60611539a2aaf924b21670c7911de537e8eb9102;hpb=509ae618cc32ba2b811cf66567d62abc597dc405;p=mailer.git diff --git a/inc/fix_filters.php b/inc/fix_filters.php index 60611539a2..2e05a95382 100644 --- a/inc/fix_filters.php +++ b/inc/fix_filters.php @@ -1,7 +1,7 @@ 0) { +// Are there entries? (there should be!) +if (!ifSqlHasZeroNums($result)) { // Load row by row - while ($filter = SQL_FETCHARRAY($result)) { + while ($filter = sqlFetchArray($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'", sqlEscapeString($filter['filter_function']))); - // Do we have more than one entry? + // Is there 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); +sqlFreeResult($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 INDEX `name_function` (`filter_name`, `filter_function`)'); // [EOF] ?>