diff --git a/classes/patreon_login.php b/classes/patreon_login.php index 286bdd7..3be54b3 100644 --- a/classes/patreon_login.php +++ b/classes/patreon_login.php @@ -111,6 +111,7 @@ public static function createOrLogInUserFromPatreon($user_response, $tokens, $re $login_with_patreon = get_option('patreon-enable-login-with-patreon', true); $admins_editors_login_with_patreon = get_option('patreon-enable-allow-admins-login-with-patreon', false); + $extend_patreon_cookie_login = get_option('patreon-extend-cookie-login', false); $danger_user_list = Patreon_Login::getDangerUserList(); // Check if user is logged in to wp: @@ -190,7 +191,12 @@ public static function createOrLogInUserFromPatreon($user_response, $tokens, $re } else { /* log user into existing wordpress account with matching username */ wp_set_current_user($user->ID, $user->user_login); - wp_set_auth_cookie($user->ID); + /* check if the extended cookie expiration time option is selected */ + if (false == $extend_patreon_cookie_login) { + wp_set_auth_cookie( $user->ID ); + } else { + wp_set_auth_cookie( $user->ID, true ); /* second parameter set to true means "Remember Me", which sets the auth cookie expiration to 2 weeks */ + } do_action('wp_login', $user->user_login, $user); // Import Patreon avatar for this user since it is a new user diff --git a/classes/patreon_options.php b/classes/patreon_options.php index 4014a99..16db551 100644 --- a/classes/patreon_options.php +++ b/classes/patreon_options.php @@ -42,7 +42,8 @@ public function patreon_plugin_register_settings() register_setting('patreon-options', 'patreon-can-use-api-v2'); register_setting('patreon-options', 'patreon-enable-register-with-patreon'); register_setting('patreon-options', 'patreon-enable-login-with-patreon'); - register_setting('patreon-options', 'patreon-enable-allow-admins-login-with-patreon'); + register_setting('patreon-options', 'patreon-extend-cookie-login'); + register_setting('patreon-options', 'patreon-cookie-login-remember' ); register_setting('patreon-options', 'patreon-enable-redirect-to-page-after-login'); register_setting('patreon-options', 'patreon-enable-redirect-to-page-id'); register_setting('patreon-options', 'patreon-protect-default-image-patreon-level'); @@ -346,6 +347,17 @@ public function patreon_plugin_setup_page() + +