diff options
author | Pellaeon Lin <nfsmwlin@gmail.com> | 2016-07-09 11:08:54 +0300 |
---|---|---|
committer | Pellaeon Lin <nfsmwlin@gmail.com> | 2016-07-09 11:08:54 +0300 |
commit | 37743dfd5d74daccc71b4ef0b603a6c4ce0df31c (patch) | |
tree | 9cdf1994e757f767362ce19ceff063f2875ab576 | |
parent | 1f4de9acff561722fcda631701a003891666a527 (diff) |
Fix# compatibility with 9.0v0.2.1
-rw-r--r-- | appinfo/info.xml | 4 | ||||
-rw-r--r-- | controller/registercontroller.php | 21 |
2 files changed, 20 insertions, 5 deletions
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 @@ <description>User registration</description> <licence>AGPL</licence> <author>Pellaeon Lin</author> - <version>0.2.0</version> + <version>0.2.1</version> <dependencies> - <owncloud min-version="9.1.0.7" max-version="9.2"/> + <owncloud min-version="9.0" max-version="9.2"/> </dependencies> </info> 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 <a href="{link}">log in now</a>.') + )), 'guest'); + } } } } |