Skip to content

Commit 050a9e9

Browse files
authored
Merge pull request #57 from donovandb/master
Add Remember Me option
2 parents 2b72330 + da91cb7 commit 050a9e9

2 files changed

Lines changed: 15 additions & 5 deletions

File tree

onelogin-saml-sso/php/configuration.php

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
<?php
2-
32
// Make sure we don't expose any info if called directly
43
if ( !function_exists( 'add_action' ) ) {
54
echo 'Hi there! I\'m just a plugin, not much I can do when called directly.';
@@ -86,7 +85,8 @@ function onelogin_saml_configuration() {
8685
'onelogin_saml_attr_mapping_mail' => __('E-mail', 'onelogin-saml-sso') . ' *',
8786
'onelogin_saml_attr_mapping_firstname' => __('First Name', 'onelogin-saml-sso'),
8887
'onelogin_saml_attr_mapping_lastname' => __('Last Name', 'onelogin-saml-sso'),
89-
'onelogin_saml_attr_mapping_role' => __('Role', 'onelogin-saml-sso')
88+
'onelogin_saml_attr_mapping_role' => __('Role', 'onelogin-saml-sso'),
89+
'onelogin_saml_attr_mapping_rememberme' => __('Remember Me', 'onelogin-saml-sso')
9090
);
9191
foreach ($mapping_fields as $name => $description) {
9292
register_setting($option_group, $name);
@@ -286,6 +286,11 @@ function plugin_setting_string_onelogin_saml_attr_mapping_lastname() {
286286
value= "'.esc_attr(get_option('onelogin_saml_attr_mapping_lastname')).'" size="30">';
287287
}
288288

289+
function plugin_setting_string_onelogin_saml_attr_mapping_rememberme() {
290+
echo '<input type="text" name="onelogin_saml_attr_mapping_rememberme" id="onelogin_saml_attr_mapping_rememberme"
291+
value= "'.esc_html(get_option('onelogin_saml_attr_mapping_rememberme')).'" size="30">';
292+
}
293+
289294
function plugin_setting_string_onelogin_saml_attr_mapping_role() {
290295
echo '<input type="text" name="onelogin_saml_attr_mapping_role" id="onelogin_saml_attr_mapping_role"
291296
value= "'.esc_attr(get_option('onelogin_saml_attr_mapping_role')).'" size="30">'.

onelogin-saml-sso/php/functions.php

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -280,10 +280,15 @@ function saml_acs() {
280280
exit();
281281
} else if ($user_id) {
282282
wp_set_current_user($user_id);
283-
wp_set_auth_cookie($user_id);
283+
284+
$rememberme = false;
285+
$remembermeMapping = get_option('onelogin_saml_attr_mapping_rememberme');
286+
if (!empty($remembermeMapping) && isset($attrs[$remembermeMapping]) && !empty($attrs[$remembermeMapping][0])) {
287+
$rememberme = in_array($attrs[$remembermeMapping][0], array(1, true, '1', 'yes', 'on')) ? true : false;
288+
}
289+
wp_set_auth_cookie($user_id, $rememberme);
290+
284291
setcookie(SAML_LOGIN_COOKIE, 1, time() + YEAR_IN_SECONDS, SITECOOKIEPATH );
285-
#do_action('wp_login', $user_id);
286-
#wp_signon($user_id);
287292
}
288293

289294
if (isset($_REQUEST['RelayState'])) {

0 commit comments

Comments
 (0)