diff options
author | Frederic Guillot <fred@kanboard.net> | 2015-10-03 18:22:06 -0400 |
---|---|---|
committer | Frederic Guillot <fred@kanboard.net> | 2015-10-03 18:22:06 -0400 |
commit | c9e317872004cdd7e58a9474d17a1b85888c5873 (patch) | |
tree | 5f21bd427d12a65c9b0577c50ca1bee94bfdee44 /app/Model | |
parent | 260c8515c507b8c339fdbe1a10b0f13792eac09d (diff) |
Fix issue when unlinking Gitlab account
Diffstat (limited to 'app/Model')
-rw-r--r-- | app/Model/Base.php | 16 | ||||
-rw-r--r-- | app/Model/User.php | 2 |
2 files changed, 17 insertions, 1 deletions
diff --git a/app/Model/Base.php b/app/Model/Base.php index a15f071c..902ab269 100644 --- a/app/Model/Base.php +++ b/app/Model/Base.php @@ -97,6 +97,22 @@ abstract class Base extends \Core\Base } /** + * Force some fields to be null if empty + * + * @access public + * @param array $values Input array + * @param string[] $keys List of keys + */ + public function convertNullFields(array &$values, array $keys) + { + foreach ($keys as $key) { + if (array_key_exists($key, $values) && empty($values[$key])) { + $values[$key] = null; + } + } + } + + /** * Build SQL condition for a given time range * * @access protected diff --git a/app/Model/User.php b/app/Model/User.php index 5792a549..fd2ec954 100644 --- a/app/Model/User.php +++ b/app/Model/User.php @@ -279,7 +279,7 @@ class User extends Base $this->removeFields($values, array('confirmation', 'current_password')); $this->resetFields($values, array('is_admin', 'is_ldap_user', 'is_project_admin', 'disable_login_form')); - $this->removeEmptyFields($values, array('gitlab_id')); + $this->convertNullFields($values, array('gitlab_id')); $this->convertIntegerFields($values, array('gitlab_id')); } |