Automatic deactivation of installed but deprecated extwensions fixed
[mailer.git] / inc / filter-functions.php
index d4d890b7c59a3c94bfb07143e1ff74354fc2c32c..8d78bb5d638e077855dea74129de6994c99476df 100644 (file)
@@ -17,7 +17,7 @@
  * -------------------------------------------------------------------- *
  * Copyright (c) 2003 - 2009 by Roland Haeder                           *
  * Copyright (c) 2009 - 2011 by Mailer Developer Team                   *
- * For more information visit: http://www.mxchange.org                  *
+ * For more information visit: http://mxchange.org                      *
  *                                                                      *
  * This program is free software; you can redistribute it and/or modify *
  * it under the terms of the GNU General Public License as published by *
@@ -64,7 +64,7 @@ function initFilterSystem () {
 
                // Load all filters
                $result = SQL_QUERY('SELECT
-       `filter_name`, `filter_function`, `filter_active`' . $add . '
+       `filter_name`,`filter_function`,`filter_active`' . $add . '
 FROM
        `{?_MYSQL_PREFIX?}_filters`
 ORDER BY
@@ -126,6 +126,7 @@ ORDER BY
 
        // 'You are here' navigation - post filter
        registerFilter('post_youhere_line', 'CALL_HANDLER_LOGIN_FAILTURES');
+       registerFilter('post_youhere_line', 'HANDLE_HOME_IN_INDEX_SETTING');
 
        // Filters for pre-extension-registration
        registerFilter('pre_extension_installed', 'RUN_SQLS');
@@ -224,10 +225,7 @@ function registerFilter ($filterName, $filterFunction, $silentAbort = true, $for
                //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'REGISTER: filterName=' . $filterName . ',filterFunction=' . $filterFunction);
                $GLOBALS['cache_array']['filter']['chains'][$filterName][$filterFunction] = 'A';
                $GLOBALS['cache_array']['filter']['counter'][$filterName][$filterFunction] = '0';
-       } elseif (($silentAbort === false) && (!function_exists($filterFunction))) {
-               // Please report them all!
-               debug_report_bug(__FUNCTION__, __LINE__, 'filterName=' . $filterName . ',filterFunction=' . $filterFunction . ',silentAbort=false,force=' . intval($force) . ',dry_run=' . intval($dry_run) . ' - NOT FOUND!');
-       }
+       } // END - if
 
        //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'ENTRY: filterName=' . $filterName . ',filterFunction=' . $filterFunction . ' - EXIT!');
 }
@@ -259,7 +257,7 @@ function unregisterFilter ($F, $L, $filterName, $filterFunction, $force = false,
 }
 
 // "Runs" the given filters, filterData is optional and can be any type of data
-function runFilterChain ($filterName, $filterData = null) {
+function runFilterChain ($filterName, $filterData = NULL) {
        //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'filterName=' . $filterName . ',filterData[]=' . gettype($filterData) . ' - ENTERED!');
 
        // Is that filter chain there?
@@ -275,6 +273,7 @@ function runFilterChain ($filterName, $filterData = null) {
        } // END - if
 
        // Default return value
+       //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'filterName=' . $filterName . ',count()=' . count($GLOBALS['cache_array']['filter']['chains'][$filterName]));
        $returnValue = $filterData;
 
        // Then run all filters
@@ -283,14 +282,11 @@ function runFilterChain ($filterName, $filterData = null) {
                //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Running: name=' . $filterName . ',func=' . $filterFunction . ',active=' . $active);
 
                // Is the filter active or newly added??
-               if (($active == 'Y') || ($active == 'A') || ((in_array($filterName, array('shutdown','extension_remove','post_extension_run_sql'))) && ($active == 'R'))) {
+               if (($active == 'Y') || ($active == 'A') || ((in_array($filterName, array('shutdown', 'extension_remove', 'post_extension_run_sql'))) && ($active == 'R'))) {
                        // Is this filter there?
                        if (!function_exists($filterFunction)) {
-                               // Unregister it
-                               unregisterFilter(__FUNCTION__, __LINE__, $filterName, $filterFunction);
-
-                               // Skip this entry
-                               continue;
+                               // Should be fixed
+                               debug_report_bug(__FUNCTION__, __LINE__, 'filterName=' . $filterName . ',filterFunction=' . $filterFunction . ' - AUTO-UNREGISTERED!');
                        } // END - if
 
                        // Call the filter chain
@@ -372,7 +368,7 @@ function loadExtensionFilters ($ext_name) {
                        $GLOBALS[__FUNCTION__][$ext_name] = true;
                } elseif (isDebugModeEnabled()) {
                        // Log missing file
-                       logDebugMessage(__FUNCTION__, __LINE__, 'Include file ' . $incFileName . ' for extension ' . $ext_name . ' is missing.');
+                       logDebugMessage(__FUNCTION__, __LINE__, 'Filter include file ' . $incFileName . ' for extension ' . $ext_name . ' is missing.');
                }
        } // END - if
 }