registerFilter('init', 'SET_CURRENT_DATE');
registerFilter('init', 'INIT_RANDOM_NUMBER');
registerFilter('init', 'CHECK_REPOSITORY_REVISION');
+ registerFilter('init', 'RUN_HOURLY_RESET');
registerFilter('init', 'RUN_DAILY_RESET');
registerFilter('init', 'TRIGGER_SENDING_POOL');
registerFilter('init', 'DETERMINE_USERNAME');
// Generic extension update filters
registerFilter('extension_update', 'UPDATE_EXTENSION_DATA');
+ // Do hourly reset stuff, keep this entry first in this chain:
+ registerFilter('hourly', 'RUN_HOURLY_INCLUDES');
+
// Do reset stuff, keep this entry first in this chain:
registerFilter('reset', 'RUN_RESET_INCLUDES');
$GLOBALS['cache_array']['filter'] = $filterArray;
}
+// Loads filter for given extension if present. This function will silently
+// ignore absent filter files.
+function loadExtensionFilters ($ext_name) {
+ // Do we have cache entry?
+ if (!isset($GLOBALS[__FUNCTION__][$ext_name])) {
+ // Default is not found
+ $GLOBALS[__FUNCTION__][$ext_name] = false;
+
+ // Construct include file name
+ $incFileName = sprintf("inc/filter/%s_filter.php", $ext_name);
+
+ // Is the include file readable?
+ if (isIncludeReadable($incFileName)) {
+ // Load the include file
+ loadIncludeOnce($incFileName);
+
+ // Mark the file as loaded
+ $GLOBALS[__FUNCTION__][$ext_name] = true;
+ } elseif (isDebugModeEnabled()) {
+ // Log missing file
+ logDebugMessage(__FUNCTION__, __LINE__, 'Include file ' . $incFileName . ' for extension ' . $ext_name . ' is missing.');
+ }
+ } // END - if
+}
+
// [EOF]
?>