_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{"id":33506,"date":"2018-09-04T15:46:19","date_gmt":"2018-09-04T11:46:19","guid":{"rendered":"http:\/\/tv.mskh.am\/?p=33506"},"modified":"2018-09-04T15:46:19","modified_gmt":"2018-09-04T11:46:19","slug":"%d5%af%d6%80%d5%a9%d5%a1%d5%af%d5%a1%d5%b6-%d5%b7%d6%84%d5%a5%d6%80%d5%a9-%d5%b4%d5%a1%d6%80%d5%b4%d5%a1%d6%80%d5%b5%d5%a1-%d5%bd%d6%80%d5%a1%d5%b0%d5%b8%d6%82%d5%b4","status":"publish","type":"post","link":"https:\/\/tv.mskh.am\/?p=33506","title":{"rendered":"\u053f\u0580\u0569\u0561\u056f\u0561\u0576 \u0577\u0584\u0565\u0580\u0569 \u0544\u0561\u0580\u0574\u0561\u0580\u0575\u0561 \u057d\u0580\u0561\u0570\u0578\u0582\u0574"},"content":{"rendered":"

\u053c\u0578\u0582\u057d\u0561\u0576\u056f\u0561\u0580\u0576\u0565\u0580\u0568\u055d\u00a0 \u054f\u056b\u0563\u0580\u0561\u0576 \u0531\u0580\u0561\u0574\u0575\u0561\u0576\u056b\u00a0(10-\u0580\u0564 \u0564\u0561\u057d.)<\/em>
\n\u00a9 \u054d\u0565\u0562\u0561\u057d\u057f\u0561\u0581\u056b TV 2018<\/strong><\/em><\/p>\n

 <\/p>\n

 <\/p>\n

 <\/p>\n

 <\/p>\n

 <\/p>\n

\"\"<\/a> \"\"<\/a> \"\"<\/a> \"\"<\/a> \"\"<\/a> \"\"<\/a> \"\"<\/a> \"\"<\/a> \"\"<\/a> \"\"<\/a> \"\"<\/a> \"\"<\/a> \"\"<\/a> \"\"<\/a> \"\"<\/a> \"\"<\/a> \"\"<\/a> \"\"<\/a> \"\"<\/a> \"\"<\/a> \"\"<\/a> \"\"<\/a> \"\"<\/a> \"\"<\/a> \"\"<\/a> \"\"<\/a> \"\"<\/a> \"\"<\/a><\/p>\n

156 \u0564\u056b\u057f\u0578\u0582\u0574<\/p>\n","protected":false},"excerpt":{"rendered":"

\u053c\u0578\u0582\u057d\u0561\u0576\u056f\u0561\u0580\u0576\u0565\u0580\u0568\u055d\u00a0 \u054f\u056b\u0563\u0580\u0561\u0576 \u0531\u0580\u0561\u0574\u0575\u0561\u0576\u056b\u00a0(10-\u0580\u0564 \u0564\u0561\u057d.) \u00a9 \u054d\u0565\u0562\u0561\u057d\u057f\u0561\u0581\u056b TV 2018 156 \u0564\u056b\u057f\u0578\u0582\u0574<\/p>\n","protected":false},"author":2,"featured_media":33515,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[133,6],"tags":[],"_links":{"self":[{"href":"https:\/\/tv.mskh.am\/index.php?rest_route=\/wp\/v2\/posts\/33506"}],"collection":[{"href":"https:\/\/tv.mskh.am\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tv.mskh.am\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tv.mskh.am\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/tv.mskh.am\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=33506"}],"version-history":[{"count":1,"href":"https:\/\/tv.mskh.am\/index.php?rest_route=\/wp\/v2\/posts\/33506\/revisions"}],"predecessor-version":[{"id":33535,"href":"https:\/\/tv.mskh.am\/index.php?rest_route=\/wp\/v2\/posts\/33506\/revisions\/33535"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/tv.mskh.am\/index.php?rest_route=\/wp\/v2\/media\/33515"}],"wp:attachment":[{"href":"https:\/\/tv.mskh.am\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=33506"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tv.mskh.am\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=33506"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tv.mskh.am\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=33506"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}