diff --git a/appinfo/info.xml b/appinfo/info.xml
index 26dca4f..8fe151f 100644
--- a/appinfo/info.xml
+++ b/appinfo/info.xml
@@ -5,8 +5,8 @@
User registration
AGPL
Pellaeon Lin
- 0.2.0
+ 0.2.1
-
+
diff --git a/controller/registercontroller.php b/controller/registercontroller.php
index 2aa3fec..a53da0f 100644
--- a/controller/registercontroller.php
+++ b/controller/registercontroller.php
@@ -262,10 +262,25 @@ class RegisterController extends Controller {
}
// Try to log user in
- $this->usersession->login($username, $password);
- $this->usersession->createSessionToken($this->request, $userId, $username, $password);
+ if ( method_exists($this->usersession, 'createSessionToken') ) {
+ $this->usersession->login($username, $password);
+ $this->usersession->createSessionToken($this->request, $userId, $username, $password);
+ return new RedirectResponse($this->urlgenerator->linkToRoute('files.view.index'));
+ } elseif (OC_User::login($username, $password)) {
+ $this->cleanupLoginTokens($userId);
+ // FIXME unsetMagicInCookie will fail from session already closed, so now we always remember
+ $logintoken = $this->random->generate(32);
+ $this->config->setUserValue($userId, 'login_token', $logintoken, time());
+ OC_User::setMagicInCookie($userId, $logintoken);
+ OC_Util::redirectToDefaultPage();
- return new RedirectResponse($this->urlgenerator->linkToRoute('files.view.index'));
+ // Render message in case redirect failed
+ return new TemplateResponse('registration', 'message', array('msg' =>
+ str_replace('{link}',
+ $this->urlgenerator->getAbsoluteURL('/'),
+ $this->l10n->t('Your account has been successfully created, you can log in now.')
+ )), 'guest');
+ }
}
}
}