Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
IGOR
/
wp-content
/
plugins
/
wordfence
/
waf
:
wfWAFBlockI18n.php
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php require_once __DIR__ . '/wfWAFBlockConstants.php'; class wfWAFBlockI18n implements wfWAFBlockConstants { protected static function formatBlockDescription($translated, $key) { $parameters = array(); $formatString = $translated ? self::getBlockFormatString($key) : $key; if ($formatString === null) { $parsed = self::parseBlockKey($key, $parameters); if ($parsed === null) { return $key; } $formatString = $translated ? self::getBlockFormatString($parsed) : $key; } else { if (func_num_args() <= 2) { return $formatString; } $parameters = array_slice(func_get_args(), 2); } array_unshift($parameters, $formatString); return call_user_func_array('sprintf', $parameters); } public static function getTranslatedBlockDescription($key) { $args = func_get_args(); array_unshift($args, true); return call_user_func_array(array(get_called_class(), 'formatBlockDescription'), $args); } protected static function getBlockFormatString($key) { switch ($key) { case self::WFWAF_BLOCK_UAREFIPRANGE: return __('UA/Referrer/IP Range not allowed', 'wordfence'); case self::WFWAF_BLOCK_COUNTRY: return __('blocked access via country blocking', 'wordfence'); case self::WFWAF_BLOCK_COUNTRY_REDIR: return /* translators: URL */ __('blocked access via country blocking and redirected to URL (%s)', 'wordfence'); case self::WFWAF_BLOCK_COUNTRY_BYPASS_REDIR: return __('redirected to bypass URL', 'wordfence'); case self::WFWAF_BLOCK_WFSN: return __('Blocked by Wordfence Security Network', 'wordfence'); case self::WFWAF_BLOCK_BADPOST: return __('POST received with blank user-agent and referer', 'wordfence'); case self::WFWAF_BLOCK_BANNEDURL: return __('Accessed a banned URL', 'wordfence'); case self::WFWAF_BLOCK_INVALIDUSERNAME: /* translators: WordPress username. */ return __("Used an invalid username '%s' to try to sign in", 'wordfence'); case self::WFWAF_BLOCK_LOGINSEC: return __('Blocked by login security setting', 'wordfence'); case self::WFWAF_BLOCK_LOGINSEC_FORGOTPASSWD: /* translators: 1. Password reset limit (number). 2. WordPress username. */ return __('Exceeded the maximum number of tries to recover their password which is set at: %1$s. The last username or email they entered before getting locked out was: \'%2$s\'', 'wordfence'); case self::WFWAF_BLOCK_LOGINSEC_FAILURES: /* translators: 1. Login attempt limit. 2. WordPress username. */ return __('Exceeded the maximum number of login failures which is: %1$s. The last username they tried to sign in with was: \'%2$s\'', 'wordfence'); case self::WFWAF_BLOCK_MANUAL: return __('Manual block by administrator', 'wordfence'); case self::WFWAF_BLOCK_THROTTLEGLOBAL: return __('Exceeded the maximum global requests per minute for crawlers or humans.', 'wordfence'); case self::WFWAF_BLOCK_THROTTLECRAWLER: return __('Exceeded the maximum number of requests per minute for crawlers.', 'wordfence'); case self::WFWAF_BLOCK_THROTTLECRAWLERNOTFOUND: return __('Exceeded the maximum number of page not found errors per minute for a crawler.', 'wordfence'); case self::WFWAF_BLOCK_THROTTLEHUMAN: return __('Exceeded the maximum number of page requests per minute for humans.', 'wordfence'); case self::WFWAF_BLOCK_THROTTLEHUMANNOTFOUND: return __('Exceeded the maximum number of page not found errors per minute for humans.', 'wordfence'); default: return null; } } protected static function parseBlockKey($string, &$parameters = null) { if ($string !== null) { $formatPatternStrings = array( self::WFWAF_BLOCK_COUNTRY_REDIR => self::WFWAF_BLOCK_COUNTRY_REDIR_REGEX, self::WFWAF_BLOCK_INVALIDUSERNAME => self::WFWAF_BLOCK_INVALIDUSERNAME_REGEX, self::WFWAF_BLOCK_LOGINSEC_FORGOTPASSWD => self::WFWAF_BLOCK_LOGINSEC_FORGOTPASSWD_REGEX, self::WFWAF_BLOCK_LOGINSEC_FAILURES => self::WFWAF_BLOCK_LOGINSEC_FAILURES_REGEX, ); foreach ($formatPatternStrings as $formatString => $pattern) { $flags = 0; if (defined('PREG_UNMATCHED_AS_NULL')) { $flags = PREG_UNMATCHED_AS_NULL; } if (preg_match($pattern, $string, $matches, $flags)) { array_shift($matches); $parameters = $matches; return $formatString; } } } $parameters = null; return null; } /** * Map the WFWAF_BLOCK_ constants to translated strings * (The constants are string descriptions for legacy reasons and should * now be regarded as identifiers) * @param string $key the WFWAF_BLOCK_ constant * @param ...$parameters any format parameters to pass to the description * @return string a translated description when available, otherwise the original text */ public static function getBlockDescription($key) { $args = func_get_args(); array_unshift($args, false); return call_user_func_array(array(get_called_class(), 'formatBlockDescription'), $args); } public static function matchesBlockKey($string, $key) { if ($key === $string) return true; return self::parseBlockKey($string) === $key; } }