Make WordPress Core

Ticket #47480: 47480-2.diff

File 47480-2.diff, 1.5 KB (added by david.binda, 6 years ago)
  • src/wp-includes/class-wp-recovery-mode-cookie-service.php

     
    3535
    3636                $value = $this->generate_cookie();
    3737
    38                 setcookie( RECOVERY_MODE_COOKIE, $value, 0, COOKIEPATH, COOKIE_DOMAIN, is_ssl(), true );
     38                /**
     39                 * Filter the length of time a Recovery Mode cookie is valid for.
     40                 *
     41                 * @since 5.2.0
     42                 *
     43                 * @param int $length Length in seconds.
     44                 */
     45                $length = apply_filters( 'recovery_mode_cookie_length', WEEK_IN_SECONDS );
     46                $expire = time() + $length;
     47
     48                setcookie( RECOVERY_MODE_COOKIE, $value, $expire, COOKIEPATH, COOKIE_DOMAIN, is_ssl(), true );
    3949
    4050                if ( COOKIEPATH !== SITECOOKIEPATH ) {
    41                         setcookie( RECOVERY_MODE_COOKIE, $value, 0, SITECOOKIEPATH, COOKIE_DOMAIN, is_ssl(), true );
     51                        setcookie( RECOVERY_MODE_COOKIE, $value, $expire, SITECOOKIEPATH, COOKIE_DOMAIN, is_ssl(), true );
    4252                }
    4353        }
    4454
     
    8393                        return new WP_Error( 'invalid_created_at', __( 'Invalid cookie format.' ) );
    8494                }
    8595
    86                 /**
    87                  * Filter the length of time a Recovery Mode cookie is valid for.
    88                  *
    89                  * @since 5.2.0
    90                  *
    91                  * @param int $length Length in seconds.
    92                  */
     96                /** This filter is documented in wp-includes/class-wp-recovery-mode-cookie-service.php */
    9397                $length = apply_filters( 'recovery_mode_cookie_length', WEEK_IN_SECONDS );
    9498
    9599                if ( time() > $created_at + $length ) {