summaryrefslogtreecommitdiff
path: root/actions/finishopenidlogin.php
diff options
context:
space:
mode:
authorEvan Prodromou <evan@prodromou.name>2008-12-09 13:03:30 -0500
committerEvan Prodromou <evan@prodromou.name>2008-12-09 13:03:30 -0500
commit3909544f9efa9f12d8525f321f6b8aa62325c857 (patch)
tree464c0042744aba72a7846017d53f007055ea0ae7 /actions/finishopenidlogin.php
parent60a43519b9c1a66265d5374dec98bf0dae7095db (diff)
slightly better rememberme logic in finishopenidlogin
darcs-hash:20081209180330-84dde-ba48eed8a9a557bac90d3869d60b24a4b9683e61.gz
Diffstat (limited to 'actions/finishopenidlogin.php')
-rw-r--r--actions/finishopenidlogin.php31
1 files changed, 15 insertions, 16 deletions
diff --git a/actions/finishopenidlogin.php b/actions/finishopenidlogin.php
index b8008afb2..79bcd3f31 100644
--- a/actions/finishopenidlogin.php
+++ b/actions/finishopenidlogin.php
@@ -132,12 +132,12 @@ class FinishopenidloginAction extends Action {
# XXX: commented out at @edd's request until better
# control over how data flows from OpenID provider.
# oid_update_user($user, $sreg);
- common_set_user($user->nickname);
+ common_set_user($user);
common_real_login(true);
- if ($_SESSION['openid_rememberme']) {
+ if (isset($_SESSION['openid_rememberme']) && $_SESSION['openid_rememberme']) {
common_rememberme($user);
}
- unset($_SESSION['openid_rememberme']);
+ unset($_SESSION['openid_rememberme']);
$this->go_home($user->nickname);
} else {
$this->save_values($display, $canonical, $sreg);
@@ -211,32 +211,32 @@ class FinishopenidloginAction extends Action {
$location = $sreg['country'];
}
}
-
+
if ($sreg['fullname'] && strlen($sreg['fullname']) <= 255) {
$fullname = $sreg['fullname'];
}
-
+
if ($sreg['email'] && Validate::email($sreg['email'], true)) {
$email = $sreg['email'];
}
# XXX: add language
# XXX: add timezone
-
- $user = User::register(array('nickname' => $nickname,
+
+ $user = User::register(array('nickname' => $nickname,
'email' => $email,
- 'fullname' => $fullname,
+ 'fullname' => $fullname,
'location' => $location));
$result = oid_link_user($user->id, $canonical, $display);
-
- oid_set_last($display);
- common_set_user($user->nickname);
+
+ oid_set_last($display);
+ common_set_user($user);
common_real_login(true);
- if ($_SESSION['openid_rememberme']) {
+ if (isset($_SESSION['openid_rememberme']) && $_SESSION['openid_rememberme']) {
common_rememberme($user);
}
- unset($_SESSION['openid_rememberme']);
+ unset($_SESSION['openid_rememberme']);
common_redirect(common_local_url('showstream', array('nickname' => $user->nickname)));
}
@@ -270,9 +270,9 @@ class FinishopenidloginAction extends Action {
oid_update_user($user, $sreg);
oid_set_last($display);
- common_set_user($user->nickname);
+ common_set_user($user);
common_real_login(true);
- if ($_SESSION['openid_rememberme']) {
+ if (isset($_SESSION['openid_rememberme']) && $_SESSION['openid_rememberme']) {
common_rememberme($user);
}
unset($_SESSION['openid_rememberme']);
@@ -296,7 +296,6 @@ class FinishopenidloginAction extends Action {
# Try the passed-in nickname
-
if ($sreg['nickname']) {
$nickname = $this->nicknamize($sreg['nickname']);
if ($this->is_new_nickname($nickname)) {