diff options
Diffstat (limited to 'lib/plugins/authplain')
-rw-r--r-- | lib/plugins/authplain/auth.php | 12 | ||||
-rw-r--r-- | lib/plugins/authplain/plugin.info.txt | 2 |
2 files changed, 4 insertions, 10 deletions
diff --git a/lib/plugins/authplain/auth.php b/lib/plugins/authplain/auth.php index bd46c61a7..8ec632dad 100644 --- a/lib/plugins/authplain/auth.php +++ b/lib/plugins/authplain/auth.php @@ -188,15 +188,9 @@ class auth_plugin_authplain extends DokuWiki_Auth_Plugin { $userline = $this->_createUserLine($newuser, $userinfo['pass'], $userinfo['name'], $userinfo['mail'], $userinfo['grps']); - if(!$this->deleteUsers(array($user))) { - msg($this->getLang('writefail'), -1); - return false; - } - - if(!io_saveFile($config_cascade['plainauth.users']['default'], $userline, true)) { - msg('There was an error modifying your user data. You should register again.', -1); - // FIXME, user has been deleted but not recreated, should force a logout and redirect to login page - // Should replace the delete/save hybrid modify with an atomic io_replaceInFile + if(!io_replaceInFile($config_cascade['plainauth.users']['default'], '/^'.$user.':/', $userline, true)) { + msg('There was an error modifying your user data. You may need to register again.', -1); + // FIXME, io functions should be fail-safe so existing data isn't lost $ACT = 'register'; return false; } diff --git a/lib/plugins/authplain/plugin.info.txt b/lib/plugins/authplain/plugin.info.txt index 2659ac7ad..c09dbcb34 100644 --- a/lib/plugins/authplain/plugin.info.txt +++ b/lib/plugins/authplain/plugin.info.txt @@ -1,7 +1,7 @@ base authplain author Andreas Gohr email andi@splitbrain.org -date 2014-07-01 +date 2015-07-18 name Plain Auth Plugin desc Provides user authentication against DokuWiki's local password storage url http://www.dokuwiki.org/plugin:authplain |