_x( 'Plugin: Limit Login Attempts Logger', 'Logger: Plugin Limit Login Attempts', 'simple-history' ), 'description' => _x( 'Logs failed login attempts, lockouts, and configuration changes made in the plugin Limit Login Attempts', 'Logger: Plugin Limit Login Attempts', 'simple-history' ), 'name_via' => _x( 'Using plugin Limit Login Attempts', 'Logger: Plugin Limit Login Attempts', 'simple-history' ), 'capability' => 'manage_options', 'messages' => array( // 'user_locked_out' => _x( 'User locked out', "Logger: Plugin Limit Login Attempts", "simple-history" ), 'failed_login_whitelisted' => _x( 'Failed login attempt from whitelisted IP', 'Logger: Plugin Limit Login Attempts', 'simple-history' ), 'failed_login' => _x( 'Was locked out because too many failed login attempts', 'Logger: Plugin Limit Login Attempts', 'simple-history' ), 'cleared_ip_log' => _x( 'Cleared IP log', 'Logger: Plugin Limit Login Attempts', 'simple-history' ), 'reseted_lockout_count' => _x( 'Reset lockout count', 'Logger: Plugin Limit Login Attempts', 'simple-history' ), 'cleared_current_lockouts' => _x( 'Cleared current lockouts', 'Logger: Plugin Limit Login Attempts', 'simple-history' ), 'updated_options' => _x( 'Updated options', 'Logger: Plugin Limit Login Attempts', 'simple-history' ), ), /* "labels" => array( "search" => array( "label" => _x( "Limit Login Attempts", "Logger: Plugin Limit Login Attempts", "simple-history" ), "options" => array( _x( "xxxPages not found", "User logger: 404", "simple-history" ) => array( "page_not_found", ), ), ), // end search ),*/ // end labels ); return $arr_info; } public function loaded() { require_once( ABSPATH . 'wp-admin/includes/plugin.php' ); $pluginFilePath = 'limit-login-attempts/limit-login-attempts.php'; $isPluginActive = is_plugin_active( $pluginFilePath ); // Only continue to add filters if plugin is active. // This minimise the risk of plugin errors, because plugin // has been forked to new versions. if ( ! $isPluginActive ) { return; } add_filter( 'pre_option_limit_login_lockouts_total', array( $this, 'on_option_limit_login_lockouts_total' ), 10, 1 ); add_action( 'load-settings_page_limit-login-attempts', array( $this, 'on_load_settings_page' ), 10, 1 ); } /** * Fired when plugin options screen is loaded */ public function on_load_settings_page( $a ) { // phpcs:ignore WordPress.Security.NonceVerification.Missing if ( $_POST && wp_verify_nonce( $_POST['_wpnonce'], 'limit-login-attempts-options' ) ) { // Settings saved if ( isset( $_POST['clear_log'] ) ) { $this->noticeMessage( 'cleared_ip_log' ); } if ( isset( $_POST['reset_total'] ) ) { $this->noticeMessage( 'reseted_lockout_count' ); } if ( isset( $_POST['reset_current'] ) ) { $this->noticeMessage( 'cleared_current_lockouts' ); } if ( isset( $_POST['update_options'] ) ) { $options = array( 'client_type' => sanitize_text_field( $_POST['client_type'] ), 'allowed_retries' => sanitize_text_field( $_POST['allowed_retries'] ), 'lock{"version":"1.0","provider_name":"TV Sebastatsi","provider_url":"https:\/\/tv.mskh.am","author_name":"TV Sebastatsi","author_url":"https:\/\/tv.mskh.am\/?author=2","title":"\u054d\u0565\u057a\u057f\u0565\u0574\u0562\u0565\u0580\u0575\u0561\u0576 \u0561\u057c\u0561\u057b\u056b\u0576 \u0574\u0565\u0564\u056b\u0561\u0578\u0582\u0580\u0562\u0561\u0569\u0568","type":"rich","width":600,"height":338,"html":"
\u054d\u0565\u057a\u057f\u0565\u0574\u0562\u0565\u0580\u0575\u0561\u0576 \u0561\u057c\u0561\u057b\u056b\u0576 \u0574\u0565\u0564\u056b\u0561\u0578\u0582\u0580\u0562\u0561\u0569\u0568<\/a><\/blockquote>\n