_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 TVmskh / «Մխիթար Սեբաստացի» կրթահամալիրի ինտերնետ-հեռուստատեսություն / mskh.am

«Նախադպրոցական կրթություն» մասնագիտության դիպլոմային նախագծերի պաշտպանություն. ֆոտոշարք

«Նախադպրոցական կրթություն» մասնագիտության դիպլոմային նախագծերի պաշտպանություն
Ֆոտոլուսաբանումը՝ Լիլիա Ղուլյանի

ԴԻՏԵԼ

Կրթահամալիրի հյուրն է ՀՀ ԿԳՄՍՆ գլխավոր քարտուղար Գագիկ Սաֆարյանը. ֆոտոշարք

կրթահամալիրի հյուրն է ՀՀ ԿԳՄՍՆ գլխավոր քարտուղար Գագիկ Սաֆարյանը
Լուսաբանումը՝ Սոֆի Առաքելյանի

ԴԻՏԵԼ

Մեղու TV #10

Նախագծի համակարգող՝ Արմինե Գոգինյան

ԴԻՏԵԼ

Կարապներ TV #14

Նախագծի համակարգող՝ Նելլի Կարապետյան

ԴԻՏԵԼ

Խորոտ TV #31

Նախագծի համակարգումը՝ Ազնիվ Մանուկյանի

ԴԻՏԵԼ

Համագործակցության առաջին քայլերը Fryshuset կազմակերպության հետ

Համագործակցության առաջին քայլերը կազմակերպության հետ
Համակարգումը՝ Էլյա Սահակյանի
Լուսաբանումը՝ Լիլիա Ղուլյանի

ԴԻՏԵԼ

Արտուտիկ TV #29

Նախագծի համակարգող՝ Մելինե Սիմոնյան

ԴԻՏԵԼ

Արվեստի փառատոնի առաջին փուլի ամփոփում․ ֆոտոշարք

Արվեստի փառատոնի առաջին փուլի ամփոփում
Համակարգումը՝ Քնարիկ Ներսիսյանի
Լուսաբանումը՝ Լիլիա Ղուլյանի

ԴԻՏԵԼ

Հանդիպում Արա Ալեքյանի հետ․ ֆոտոշարք

Հանդիպում Արա Ալեքյանի հետ
Լուսաբանումը՝ Լիլիա Ղուլյանի

ԴԻՏԵԼ

Խորոտ TV #30

Նախագծի համակարգող՝ Ազնիվ Մանուկյան

ԴԻՏԵԼ