diff --git a/wp-content/mu-plugins/gure-ametsa/admin.php b/wp-content/mu-plugins/gure-ametsa/admin.php index db0f8f2..46f2862 100644 --- a/wp-content/mu-plugins/gure-ametsa/admin.php +++ b/wp-content/mu-plugins/gure-ametsa/admin.php @@ -199,3 +199,29 @@ function ga_purge_messages() { } return count( $old ); } + +/* ------------------------------------------------------------------------- + * Seguridad: recordar la verificación en dos pasos (plugin Two Factor) + * ---------------------------------------------------------------------- */ + +add_action( 'admin_notices', function () { + if ( ! class_exists( 'Two_Factor_Core' ) || ! current_user_can( 'edit_posts' ) ) { + return; + } + $user_id = get_current_user_id(); + if ( Two_Factor_Core::is_user_using_two_factor( $user_id ) || (int) get_user_meta( $user_id, 'ga_2fa_snooze', true ) > time() ) { + return; + } + printf( + '

Protege tu cuenta: activa la verificación en dos pasos (un código de tu móvil además de la contraseña). Tarda dos minutos. Activarla Recordármelo en 30 días

', + esc_url( admin_url( 'profile.php#two-factor-options' ) ), + esc_url( wp_nonce_url( admin_url( 'admin-post.php?action=ga_2fa_snooze' ), 'ga_2fa_snooze' ) ) + ); +} ); + +add_action( 'admin_post_ga_2fa_snooze', function () { + check_admin_referer( 'ga_2fa_snooze' ); + update_user_meta( get_current_user_id(), 'ga_2fa_snooze', time() + 30 * DAY_IN_SECONDS ); + wp_safe_redirect( wp_get_referer() ?: admin_url() ); + exit; +} );