]> git.mxchange.org Git - mailer.git/blobdiff - inc/filter/blacklist_filter.php
Fixes + asserts
[mailer.git] / inc / filter / blacklist_filter.php
index dd9cc43a6ac9cf24e0f22996909ff85a8ca1f789..82cce253ecd5b013a08ad5555d1190a0af39bc0d 100644 (file)
@@ -74,10 +74,33 @@ function FILTER_CHECK_IP_BLACKLISTED ($filterData) {
        return $filterData;
 }
 
+// Filter to check URL against blacklist
+function FILTER_CHECK_URL_BLACKLISTED ($filterData) {
+       //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Called!');
+       // And shall I check that his URL is not in the black list?
+       if ((isUrlBlacklistEnabled()) && (isUrlBlacklisted($filterData['url']))) {
+               // Create redirect-URL
+               $filterData['redirect'] = 'modules.php?module=login&what=order&code=' . getCode('BLIST_URL') . '&blist=' . $GLOBALS['blacklist_data'][$filterData['url']]['timestamp'];
+               $GLOBALS['filter_chain_aborted'] = TRUE;
+
+               // Set data for next filter chain
+               $filterData['init_done']   = FALSE;
+               $filterData['blacklisted'] = 'url';
+               $filterData['message']     = '{--URL_IS_BLACKLISTED--}';
+
+               // Run filter chain for successful detection (don't rely on other fields than 'IP') here
+               runFilterChain('post_url_blacklisted', $filterData);
+       } // END - if
+
+       // Return the data for next filter
+       //* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'Done!');
+       return $filterData;
+}
+
 // Filter for logging blacklisted email addresses, is being called from above filter
 function FILTER_LOG_EMAIL_BLACKLISTED ($filerData) {
        // Make sure, that required data is there
-       assert((isset($filterData['init_done'])) && ($filterData['blacklisted'] == 'email'));
+       assert((isset($filterData['init_done'])) && ($filterData['blacklisted'] == 'email'), 'filterData[init] must be set, filterData[blacklisted]=' . $filterData['blacklisted']);
 
        // @TODO Insert log entry
 
@@ -88,7 +111,18 @@ function FILTER_LOG_EMAIL_BLACKLISTED ($filerData) {
 // Filter for logging blacklisted IP addresses, is being called from above filter
 function FILTER_LOG_IP_BLACKLISTED ($filerData) {
        // Make sure, that required data is there
-       assert((isset($filterData['init_done'])) && ($filterData['blacklisted'] == 'ip'));
+       assert((isset($filterData['init_done'])) && ($filterData['blacklisted'] == 'ip'), 'filterData[init] must be set, filterData[blacklisted]=' . $filterData['blacklisted']);
+
+       // @TODO Insert log entry
+
+       // Return filtered data
+       return $filterData;
+}
+
+// Filter for logging blacklisted URLs, is being called from above filter
+function FILTER_LOG_URL_BLACKLISTED ($filerData) {
+       // Make sure, that required data is there
+       assert((isset($filterData['init_done'])) && ($filterData['blacklisted'] == 'url'), 'filterData[init] must be set, filterData[blacklisted]=' . $filterData['blacklisted']);
 
        // @TODO Insert log entry