Edit File by line

Deprecated: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in /home/sportsfever/public_html/filemanger/function.php on line 93

Warning: Undefined array key "page_file_edit_line" in /home/sportsfever/public_html/filemanger/edit_text_line.php on line 32
/home/sportsfe.../public_h.../wp-inclu...
File: pluggable.php
$phpmailer->CharSet = apply_filters( 'wp_mail_charset', $charset );
[500] Fix | Delete
[501] Fix | Delete
// Set custom headers.
[502] Fix | Delete
if ( ! empty( $headers ) ) {
[503] Fix | Delete
foreach ( (array) $headers as $name => $content ) {
[504] Fix | Delete
// Only add custom headers not added automatically by PHPMailer.
[505] Fix | Delete
if ( ! in_array( $name, array( 'MIME-Version', 'X-Mailer' ), true ) ) {
[506] Fix | Delete
try {
[507] Fix | Delete
$phpmailer->addCustomHeader( sprintf( '%1$s: %2$s', $name, $content ) );
[508] Fix | Delete
} catch ( PHPMailer\PHPMailer\Exception $e ) {
[509] Fix | Delete
continue;
[510] Fix | Delete
}
[511] Fix | Delete
}
[512] Fix | Delete
}
[513] Fix | Delete
[514] Fix | Delete
if ( false !== stripos( $content_type, 'multipart' ) && ! empty( $boundary ) ) {
[515] Fix | Delete
$phpmailer->addCustomHeader( sprintf( 'Content-Type: %s; boundary="%s"', $content_type, $boundary ) );
[516] Fix | Delete
}
[517] Fix | Delete
}
[518] Fix | Delete
[519] Fix | Delete
if ( ! empty( $attachments ) ) {
[520] Fix | Delete
foreach ( $attachments as $filename => $attachment ) {
[521] Fix | Delete
$filename = is_string( $filename ) ? $filename : '';
[522] Fix | Delete
[523] Fix | Delete
try {
[524] Fix | Delete
$phpmailer->addAttachment( $attachment, $filename );
[525] Fix | Delete
} catch ( PHPMailer\PHPMailer\Exception $e ) {
[526] Fix | Delete
continue;
[527] Fix | Delete
}
[528] Fix | Delete
}
[529] Fix | Delete
}
[530] Fix | Delete
[531] Fix | Delete
/**
[532] Fix | Delete
* Fires after PHPMailer is initialized.
[533] Fix | Delete
*
[534] Fix | Delete
* @since 2.2.0
[535] Fix | Delete
*
[536] Fix | Delete
* @param PHPMailer $phpmailer The PHPMailer instance (passed by reference).
[537] Fix | Delete
*/
[538] Fix | Delete
do_action_ref_array( 'phpmailer_init', array( &$phpmailer ) );
[539] Fix | Delete
[540] Fix | Delete
$mail_data = compact( 'to', 'subject', 'message', 'headers', 'attachments' );
[541] Fix | Delete
[542] Fix | Delete
// Send!
[543] Fix | Delete
try {
[544] Fix | Delete
$send = $phpmailer->send();
[545] Fix | Delete
[546] Fix | Delete
/**
[547] Fix | Delete
* Fires after PHPMailer has successfully sent an email.
[548] Fix | Delete
*
[549] Fix | Delete
* The firing of this action does not necessarily mean that the recipient(s) received the
[550] Fix | Delete
* email successfully. It only means that the `send` method above was able to
[551] Fix | Delete
* process the request without any errors.
[552] Fix | Delete
*
[553] Fix | Delete
* @since 5.9.0
[554] Fix | Delete
*
[555] Fix | Delete
* @param array $mail_data {
[556] Fix | Delete
* An array containing the email recipient(s), subject, message, headers, and attachments.
[557] Fix | Delete
*
[558] Fix | Delete
* @type string[] $to Email addresses to send message.
[559] Fix | Delete
* @type string $subject Email subject.
[560] Fix | Delete
* @type string $message Message contents.
[561] Fix | Delete
* @type string[] $headers Additional headers.
[562] Fix | Delete
* @type string[] $attachments Paths to files to attach.
[563] Fix | Delete
* }
[564] Fix | Delete
*/
[565] Fix | Delete
do_action( 'wp_mail_succeeded', $mail_data );
[566] Fix | Delete
[567] Fix | Delete
return $send;
[568] Fix | Delete
} catch ( PHPMailer\PHPMailer\Exception $e ) {
[569] Fix | Delete
$mail_data['phpmailer_exception_code'] = $e->getCode();
[570] Fix | Delete
[571] Fix | Delete
/**
[572] Fix | Delete
* Fires after a PHPMailer\PHPMailer\Exception is caught.
[573] Fix | Delete
*
[574] Fix | Delete
* @since 4.4.0
[575] Fix | Delete
*
[576] Fix | Delete
* @param WP_Error $error A WP_Error object with the PHPMailer\PHPMailer\Exception message, and an array
[577] Fix | Delete
* containing the mail recipient, subject, message, headers, and attachments.
[578] Fix | Delete
*/
[579] Fix | Delete
do_action( 'wp_mail_failed', new WP_Error( 'wp_mail_failed', $e->getMessage(), $mail_data ) );
[580] Fix | Delete
[581] Fix | Delete
return false;
[582] Fix | Delete
}
[583] Fix | Delete
}
[584] Fix | Delete
endif;
[585] Fix | Delete
[586] Fix | Delete
if ( ! function_exists( 'wp_authenticate' ) ) :
[587] Fix | Delete
/**
[588] Fix | Delete
* Authenticates a user, confirming the login credentials are valid.
[589] Fix | Delete
*
[590] Fix | Delete
* @since 2.5.0
[591] Fix | Delete
* @since 4.5.0 `$username` now accepts an email address.
[592] Fix | Delete
*
[593] Fix | Delete
* @param string $username User's username or email address.
[594] Fix | Delete
* @param string $password User's password.
[595] Fix | Delete
* @return WP_User|WP_Error WP_User object if the credentials are valid,
[596] Fix | Delete
* otherwise WP_Error.
[597] Fix | Delete
*/
[598] Fix | Delete
function wp_authenticate( $username, $password ) {
[599] Fix | Delete
$username = sanitize_user( $username );
[600] Fix | Delete
$password = trim( $password );
[601] Fix | Delete
[602] Fix | Delete
/**
[603] Fix | Delete
* Filters whether a set of user login credentials are valid.
[604] Fix | Delete
*
[605] Fix | Delete
* A WP_User object is returned if the credentials authenticate a user.
[606] Fix | Delete
* WP_Error or null otherwise.
[607] Fix | Delete
*
[608] Fix | Delete
* @since 2.8.0
[609] Fix | Delete
* @since 4.5.0 `$username` now accepts an email address.
[610] Fix | Delete
*
[611] Fix | Delete
* @param null|WP_User|WP_Error $user WP_User if the user is authenticated.
[612] Fix | Delete
* WP_Error or null otherwise.
[613] Fix | Delete
* @param string $username Username or email address.
[614] Fix | Delete
* @param string $password User password.
[615] Fix | Delete
*/
[616] Fix | Delete
$user = apply_filters( 'authenticate', null, $username, $password );
[617] Fix | Delete
[618] Fix | Delete
if ( null === $user || false === $user ) {
[619] Fix | Delete
/*
[620] Fix | Delete
* TODO: What should the error message be? (Or would these even happen?)
[621] Fix | Delete
* Only needed if all authentication handlers fail to return anything.
[622] Fix | Delete
*/
[623] Fix | Delete
$user = new WP_Error( 'authentication_failed', __( '<strong>Error:</strong> Invalid username, email address or incorrect password.' ) );
[624] Fix | Delete
}
[625] Fix | Delete
[626] Fix | Delete
$ignore_codes = array( 'empty_username', 'empty_password' );
[627] Fix | Delete
[628] Fix | Delete
if ( is_wp_error( $user ) && ! in_array( $user->get_error_code(), $ignore_codes, true ) ) {
[629] Fix | Delete
$error = $user;
[630] Fix | Delete
[631] Fix | Delete
/**
[632] Fix | Delete
* Fires after a user login has failed.
[633] Fix | Delete
*
[634] Fix | Delete
* @since 2.5.0
[635] Fix | Delete
* @since 4.5.0 The value of `$username` can now be an email address.
[636] Fix | Delete
* @since 5.4.0 The `$error` parameter was added.
[637] Fix | Delete
*
[638] Fix | Delete
* @param string $username Username or email address.
[639] Fix | Delete
* @param WP_Error $error A WP_Error object with the authentication failure details.
[640] Fix | Delete
*/
[641] Fix | Delete
do_action( 'wp_login_failed', $username, $error );
[642] Fix | Delete
}
[643] Fix | Delete
[644] Fix | Delete
return $user;
[645] Fix | Delete
}
[646] Fix | Delete
endif;
[647] Fix | Delete
[648] Fix | Delete
if ( ! function_exists( 'wp_logout' ) ) :
[649] Fix | Delete
/**
[650] Fix | Delete
* Logs the current user out.
[651] Fix | Delete
*
[652] Fix | Delete
* @since 2.5.0
[653] Fix | Delete
*/
[654] Fix | Delete
function wp_logout() {
[655] Fix | Delete
$user_id = get_current_user_id();
[656] Fix | Delete
[657] Fix | Delete
wp_destroy_current_session();
[658] Fix | Delete
wp_clear_auth_cookie();
[659] Fix | Delete
wp_set_current_user( 0 );
[660] Fix | Delete
[661] Fix | Delete
/**
[662] Fix | Delete
* Fires after a user is logged out.
[663] Fix | Delete
*
[664] Fix | Delete
* @since 1.5.0
[665] Fix | Delete
* @since 5.5.0 Added the `$user_id` parameter.
[666] Fix | Delete
*
[667] Fix | Delete
* @param int $user_id ID of the user that was logged out.
[668] Fix | Delete
*/
[669] Fix | Delete
do_action( 'wp_logout', $user_id );
[670] Fix | Delete
}
[671] Fix | Delete
endif;
[672] Fix | Delete
[673] Fix | Delete
if ( ! function_exists( 'wp_validate_auth_cookie' ) ) :
[674] Fix | Delete
/**
[675] Fix | Delete
* Validates authentication cookie.
[676] Fix | Delete
*
[677] Fix | Delete
* The checks include making sure that the authentication cookie is set and
[678] Fix | Delete
* pulling in the contents (if $cookie is not used).
[679] Fix | Delete
*
[680] Fix | Delete
* Makes sure the cookie is not expired. Verifies the hash in cookie is what is
[681] Fix | Delete
* should be and compares the two.
[682] Fix | Delete
*
[683] Fix | Delete
* @since 2.5.0
[684] Fix | Delete
*
[685] Fix | Delete
* @global int $login_grace_period
[686] Fix | Delete
*
[687] Fix | Delete
* @param string $cookie Optional. If used, will validate contents instead of cookie's.
[688] Fix | Delete
* @param string $scheme Optional. The cookie scheme to use: 'auth', 'secure_auth', or 'logged_in'.
[689] Fix | Delete
* @return int|false User ID if valid cookie, false if invalid.
[690] Fix | Delete
*/
[691] Fix | Delete
function wp_validate_auth_cookie( $cookie = '', $scheme = '' ) {
[692] Fix | Delete
$cookie_elements = wp_parse_auth_cookie( $cookie, $scheme );
[693] Fix | Delete
if ( ! $cookie_elements ) {
[694] Fix | Delete
/**
[695] Fix | Delete
* Fires if an authentication cookie is malformed.
[696] Fix | Delete
*
[697] Fix | Delete
* @since 2.7.0
[698] Fix | Delete
*
[699] Fix | Delete
* @param string $cookie Malformed auth cookie.
[700] Fix | Delete
* @param string $scheme Authentication scheme. Values include 'auth', 'secure_auth',
[701] Fix | Delete
* or 'logged_in'.
[702] Fix | Delete
*/
[703] Fix | Delete
do_action( 'auth_cookie_malformed', $cookie, $scheme );
[704] Fix | Delete
return false;
[705] Fix | Delete
}
[706] Fix | Delete
[707] Fix | Delete
$scheme = $cookie_elements['scheme'];
[708] Fix | Delete
$username = $cookie_elements['username'];
[709] Fix | Delete
$hmac = $cookie_elements['hmac'];
[710] Fix | Delete
$token = $cookie_elements['token'];
[711] Fix | Delete
$expired = $cookie_elements['expiration'];
[712] Fix | Delete
$expiration = $cookie_elements['expiration'];
[713] Fix | Delete
[714] Fix | Delete
// Allow a grace period for POST and Ajax requests.
[715] Fix | Delete
if ( wp_doing_ajax() || 'POST' === $_SERVER['REQUEST_METHOD'] ) {
[716] Fix | Delete
$expired += HOUR_IN_SECONDS;
[717] Fix | Delete
}
[718] Fix | Delete
[719] Fix | Delete
// Quick check to see if an honest cookie has expired.
[720] Fix | Delete
if ( $expired < time() ) {
[721] Fix | Delete
/**
[722] Fix | Delete
* Fires once an authentication cookie has expired.
[723] Fix | Delete
*
[724] Fix | Delete
* @since 2.7.0
[725] Fix | Delete
*
[726] Fix | Delete
* @param string[] $cookie_elements {
[727] Fix | Delete
* Authentication cookie components. None of the components should be assumed
[728] Fix | Delete
* to be valid as they come directly from a client-provided cookie value.
[729] Fix | Delete
*
[730] Fix | Delete
* @type string $username User's username.
[731] Fix | Delete
* @type string $expiration The time the cookie expires as a UNIX timestamp.
[732] Fix | Delete
* @type string $token User's session token used.
[733] Fix | Delete
* @type string $hmac The security hash for the cookie.
[734] Fix | Delete
* @type string $scheme The cookie scheme to use.
[735] Fix | Delete
* }
[736] Fix | Delete
*/
[737] Fix | Delete
do_action( 'auth_cookie_expired', $cookie_elements );
[738] Fix | Delete
return false;
[739] Fix | Delete
}
[740] Fix | Delete
[741] Fix | Delete
$user = get_user_by( 'login', $username );
[742] Fix | Delete
if ( ! $user ) {
[743] Fix | Delete
/**
[744] Fix | Delete
* Fires if a bad username is entered in the user authentication process.
[745] Fix | Delete
*
[746] Fix | Delete
* @since 2.7.0
[747] Fix | Delete
*
[748] Fix | Delete
* @param string[] $cookie_elements {
[749] Fix | Delete
* Authentication cookie components. None of the components should be assumed
[750] Fix | Delete
* to be valid as they come directly from a client-provided cookie value.
[751] Fix | Delete
*
[752] Fix | Delete
* @type string $username User's username.
[753] Fix | Delete
* @type string $expiration The time the cookie expires as a UNIX timestamp.
[754] Fix | Delete
* @type string $token User's session token used.
[755] Fix | Delete
* @type string $hmac The security hash for the cookie.
[756] Fix | Delete
* @type string $scheme The cookie scheme to use.
[757] Fix | Delete
* }
[758] Fix | Delete
*/
[759] Fix | Delete
do_action( 'auth_cookie_bad_username', $cookie_elements );
[760] Fix | Delete
return false;
[761] Fix | Delete
}
[762] Fix | Delete
[763] Fix | Delete
$pass_frag = substr( $user->user_pass, 8, 4 );
[764] Fix | Delete
[765] Fix | Delete
$key = wp_hash( $username . '|' . $pass_frag . '|' . $expiration . '|' . $token, $scheme );
[766] Fix | Delete
[767] Fix | Delete
// If ext/hash is not present, compat.php's hash_hmac() does not support sha256.
[768] Fix | Delete
$algo = function_exists( 'hash' ) ? 'sha256' : 'sha1';
[769] Fix | Delete
$hash = hash_hmac( $algo, $username . '|' . $expiration . '|' . $token, $key );
[770] Fix | Delete
[771] Fix | Delete
if ( ! hash_equals( $hash, $hmac ) ) {
[772] Fix | Delete
/**
[773] Fix | Delete
* Fires if a bad authentication cookie hash is encountered.
[774] Fix | Delete
*
[775] Fix | Delete
* @since 2.7.0
[776] Fix | Delete
*
[777] Fix | Delete
* @param string[] $cookie_elements {
[778] Fix | Delete
* Authentication cookie components. None of the components should be assumed
[779] Fix | Delete
* to be valid as they come directly from a client-provided cookie value.
[780] Fix | Delete
*
[781] Fix | Delete
* @type string $username User's username.
[782] Fix | Delete
* @type string $expiration The time the cookie expires as a UNIX timestamp.
[783] Fix | Delete
* @type string $token User's session token used.
[784] Fix | Delete
* @type string $hmac The security hash for the cookie.
[785] Fix | Delete
* @type string $scheme The cookie scheme to use.
[786] Fix | Delete
* }
[787] Fix | Delete
*/
[788] Fix | Delete
do_action( 'auth_cookie_bad_hash', $cookie_elements );
[789] Fix | Delete
return false;
[790] Fix | Delete
}
[791] Fix | Delete
[792] Fix | Delete
$manager = WP_Session_Tokens::get_instance( $user->ID );
[793] Fix | Delete
if ( ! $manager->verify( $token ) ) {
[794] Fix | Delete
/**
[795] Fix | Delete
* Fires if a bad session token is encountered.
[796] Fix | Delete
*
[797] Fix | Delete
* @since 4.0.0
[798] Fix | Delete
*
[799] Fix | Delete
* @param string[] $cookie_elements {
[800] Fix | Delete
* Authentication cookie components. None of the components should be assumed
[801] Fix | Delete
* to be valid as they come directly from a client-provided cookie value.
[802] Fix | Delete
*
[803] Fix | Delete
* @type string $username User's username.
[804] Fix | Delete
* @type string $expiration The time the cookie expires as a UNIX timestamp.
[805] Fix | Delete
* @type string $token User's session token used.
[806] Fix | Delete
* @type string $hmac The security hash for the cookie.
[807] Fix | Delete
* @type string $scheme The cookie scheme to use.
[808] Fix | Delete
* }
[809] Fix | Delete
*/
[810] Fix | Delete
do_action( 'auth_cookie_bad_session_token', $cookie_elements );
[811] Fix | Delete
return false;
[812] Fix | Delete
}
[813] Fix | Delete
[814] Fix | Delete
// Ajax/POST grace period set above.
[815] Fix | Delete
if ( $expiration < time() ) {
[816] Fix | Delete
$GLOBALS['login_grace_period'] = 1;
[817] Fix | Delete
}
[818] Fix | Delete
[819] Fix | Delete
/**
[820] Fix | Delete
* Fires once an authentication cookie has been validated.
[821] Fix | Delete
*
[822] Fix | Delete
* @since 2.7.0
[823] Fix | Delete
*
[824] Fix | Delete
* @param string[] $cookie_elements {
[825] Fix | Delete
* Authentication cookie components.
[826] Fix | Delete
*
[827] Fix | Delete
* @type string $username User's username.
[828] Fix | Delete
* @type string $expiration The time the cookie expires as a UNIX timestamp.
[829] Fix | Delete
* @type string $token User's session token used.
[830] Fix | Delete
* @type string $hmac The security hash for the cookie.
[831] Fix | Delete
* @type string $scheme The cookie scheme to use.
[832] Fix | Delete
* }
[833] Fix | Delete
* @param WP_User $user User object.
[834] Fix | Delete
*/
[835] Fix | Delete
do_action( 'auth_cookie_valid', $cookie_elements, $user );
[836] Fix | Delete
[837] Fix | Delete
return $user->ID;
[838] Fix | Delete
}
[839] Fix | Delete
endif;
[840] Fix | Delete
[841] Fix | Delete
if ( ! function_exists( 'wp_generate_auth_cookie' ) ) :
[842] Fix | Delete
/**
[843] Fix | Delete
* Generates authentication cookie contents.
[844] Fix | Delete
*
[845] Fix | Delete
* @since 2.5.0
[846] Fix | Delete
* @since 4.0.0 The `$token` parameter was added.
[847] Fix | Delete
*
[848] Fix | Delete
* @param int $user_id User ID.
[849] Fix | Delete
* @param int $expiration The time the cookie expires as a UNIX timestamp.
[850] Fix | Delete
* @param string $scheme Optional. The cookie scheme to use: 'auth', 'secure_auth', or 'logged_in'.
[851] Fix | Delete
* Default 'auth'.
[852] Fix | Delete
* @param string $token User's session token to use for this cookie.
[853] Fix | Delete
* @return string Authentication cookie contents. Empty string if user does not exist.
[854] Fix | Delete
*/
[855] Fix | Delete
function wp_generate_auth_cookie( $user_id, $expiration, $scheme = 'auth', $token = '' ) {
[856] Fix | Delete
$user = get_userdata( $user_id );
[857] Fix | Delete
if ( ! $user ) {
[858] Fix | Delete
return '';
[859] Fix | Delete
}
[860] Fix | Delete
[861] Fix | Delete
if ( ! $token ) {
[862] Fix | Delete
$manager = WP_Session_Tokens::get_instance( $user_id );
[863] Fix | Delete
$token = $manager->create( $expiration );
[864] Fix | Delete
}
[865] Fix | Delete
[866] Fix | Delete
$pass_frag = substr( $user->user_pass, 8, 4 );
[867] Fix | Delete
[868] Fix | Delete
$key = wp_hash( $user->user_login . '|' . $pass_frag . '|' . $expiration . '|' . $token, $scheme );
[869] Fix | Delete
[870] Fix | Delete
// If ext/hash is not present, compat.php's hash_hmac() does not support sha256.
[871] Fix | Delete
$algo = function_exists( 'hash' ) ? 'sha256' : 'sha1';
[872] Fix | Delete
$hash = hash_hmac( $algo, $user->user_login . '|' . $expiration . '|' . $token, $key );
[873] Fix | Delete
[874] Fix | Delete
$cookie = $user->user_login . '|' . $expiration . '|' . $token . '|' . $hash;
[875] Fix | Delete
[876] Fix | Delete
/**
[877] Fix | Delete
* Filters the authentication cookie.
[878] Fix | Delete
*
[879] Fix | Delete
* @since 2.5.0
[880] Fix | Delete
* @since 4.0.0 The `$token` parameter was added.
[881] Fix | Delete
*
[882] Fix | Delete
* @param string $cookie Authentication cookie.
[883] Fix | Delete
* @param int $user_id User ID.
[884] Fix | Delete
* @param int $expiration The time the cookie expires as a UNIX timestamp.
[885] Fix | Delete
* @param string $scheme Cookie scheme used. Accepts 'auth', 'secure_auth', or 'logged_in'.
[886] Fix | Delete
* @param string $token User's session token used.
[887] Fix | Delete
*/
[888] Fix | Delete
return apply_filters( 'auth_cookie', $cookie, $user_id, $expiration, $scheme, $token );
[889] Fix | Delete
}
[890] Fix | Delete
endif;
[891] Fix | Delete
[892] Fix | Delete
if ( ! function_exists( 'wp_parse_auth_cookie' ) ) :
[893] Fix | Delete
/**
[894] Fix | Delete
* Parses a cookie into its components.
[895] Fix | Delete
*
[896] Fix | Delete
* @since 2.7.0
[897] Fix | Delete
* @since 4.0.0 The `$token` element was added to the return value.
[898] Fix | Delete
*
[899] Fix | Delete
* @param string $cookie Authentication cookie.
[900] Fix | Delete
* @param string $scheme Optional. The cookie scheme to use: 'auth', 'secure_auth', or 'logged_in'.
[901] Fix | Delete
* @return string[]|false {
[902] Fix | Delete
* Authentication cookie components. None of the components should be assumed
[903] Fix | Delete
* to be valid as they come directly from a client-provided cookie value. If
[904] Fix | Delete
* the cookie value is malformed, false is returned.
[905] Fix | Delete
*
[906] Fix | Delete
* @type string $username User's username.
[907] Fix | Delete
* @type string $expiration The time the cookie expires as a UNIX timestamp.
[908] Fix | Delete
* @type string $token User's session token used.
[909] Fix | Delete
* @type string $hmac The security hash for the cookie.
[910] Fix | Delete
* @type string $scheme The cookie scheme to use.
[911] Fix | Delete
* }
[912] Fix | Delete
*/
[913] Fix | Delete
function wp_parse_auth_cookie( $cookie = '', $scheme = '' ) {
[914] Fix | Delete
if ( empty( $cookie ) ) {
[915] Fix | Delete
switch ( $scheme ) {
[916] Fix | Delete
case 'auth':
[917] Fix | Delete
$cookie_name = AUTH_COOKIE;
[918] Fix | Delete
break;
[919] Fix | Delete
case 'secure_auth':
[920] Fix | Delete
$cookie_name = SECURE_AUTH_COOKIE;
[921] Fix | Delete
break;
[922] Fix | Delete
case 'logged_in':
[923] Fix | Delete
$cookie_name = LOGGED_IN_COOKIE;
[924] Fix | Delete
break;
[925] Fix | Delete
default:
[926] Fix | Delete
if ( is_ssl() ) {
[927] Fix | Delete
$cookie_name = SECURE_AUTH_COOKIE;
[928] Fix | Delete
$scheme = 'secure_auth';
[929] Fix | Delete
} else {
[930] Fix | Delete
$cookie_name = AUTH_COOKIE;
[931] Fix | Delete
$scheme = 'auth';
[932] Fix | Delete
}
[933] Fix | Delete
}
[934] Fix | Delete
[935] Fix | Delete
if ( empty( $_COOKIE[ $cookie_name ] ) ) {
[936] Fix | Delete
return false;
[937] Fix | Delete
}
[938] Fix | Delete
$cookie = $_COOKIE[ $cookie_name ];
[939] Fix | Delete
}
[940] Fix | Delete
[941] Fix | Delete
$cookie_elements = explode( '|', $cookie );
[942] Fix | Delete
if ( count( $cookie_elements ) !== 4 ) {
[943] Fix | Delete
return false;
[944] Fix | Delete
}
[945] Fix | Delete
[946] Fix | Delete
list( $username, $expiration, $token, $hmac ) = $cookie_elements;
[947] Fix | Delete
[948] Fix | Delete
return compact( 'username', 'expiration', 'token', 'hmac', 'scheme' );
[949] Fix | Delete
}
[950] Fix | Delete
endif;
[951] Fix | Delete
[952] Fix | Delete
if ( ! function_exists( 'wp_set_auth_cookie' ) ) :
[953] Fix | Delete
/**
[954] Fix | Delete
* Sets the authentication cookies based on user ID.
[955] Fix | Delete
*
[956] Fix | Delete
* The $remember parameter increases the time that the cookie will be kept. The
[957] Fix | Delete
* default the cookie is kept without remembering is two days. When $remember is
[958] Fix | Delete
* set, the cookies will be kept for 14 days or two weeks.
[959] Fix | Delete
*
[960] Fix | Delete
* @since 2.5.0
[961] Fix | Delete
* @since 4.3.0 Added the `$token` parameter.
[962] Fix | Delete
*
[963] Fix | Delete
* @param int $user_id User ID.
[964] Fix | Delete
* @param bool $remember Whether to remember the user.
[965] Fix | Delete
* @param bool|string $secure Whether the auth cookie should only be sent over HTTPS. Default is an empty
[966] Fix | Delete
* string which means the value of `is_ssl()` will be used.
[967] Fix | Delete
* @param string $token Optional. User's session token to use for this cookie.
[968] Fix | Delete
*/
[969] Fix | Delete
function wp_set_auth_cookie( $user_id, $remember = false, $secure = '', $token = '' ) {
[970] Fix | Delete
if ( $remember ) {
[971] Fix | Delete
/**
[972] Fix | Delete
* Filters the duration of the authentication cookie expiration period.
[973] Fix | Delete
*
[974] Fix | Delete
* @since 2.8.0
[975] Fix | Delete
*
[976] Fix | Delete
* @param int $length Duration of the expiration period in seconds.
[977] Fix | Delete
* @param int $user_id User ID.
[978] Fix | Delete
* @param bool $remember Whether to remember the user login. Default false.
[979] Fix | Delete
*/
[980] Fix | Delete
$expiration = time() + apply_filters( 'auth_cookie_expiration', 14 * DAY_IN_SECONDS, $user_id, $remember );
[981] Fix | Delete
[982] Fix | Delete
/*
[983] Fix | Delete
* Ensure the browser will continue to send the cookie after the expiration time is reached.
[984] Fix | Delete
* Needed for the login grace period in wp_validate_auth_cookie().
[985] Fix | Delete
*/
[986] Fix | Delete
$expire = $expiration + ( 12 * HOUR_IN_SECONDS );
[987] Fix | Delete
} else {
[988] Fix | Delete
/** This filter is documented in wp-includes/pluggable.php */
[989] Fix | Delete
$expiration = time() + apply_filters( 'auth_cookie_expiration', 2 * DAY_IN_SECONDS, $user_id, $remember );
[990] Fix | Delete
$expire = 0;
[991] Fix | Delete
}
[992] Fix | Delete
[993] Fix | Delete
if ( '' === $secure ) {
[994] Fix | Delete
$secure = is_ssl();
[995] Fix | Delete
}
[996] Fix | Delete
[997] Fix | Delete
// Front-end cookie is secure when the auth cookie is secure and the site's home URL uses HTTPS.
[998] Fix | Delete
$secure_logged_in_cookie = $secure && 'https' === parse_url( get_option( 'home' ), PHP_URL_SCHEME );
[999] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function