1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-07-31 14:00:31 +02:00

[ticket/10428] Use phpbb_optionget/set in optionget/set for DRYness.

PHPBB3-10428
This commit is contained in:
Oleg Pudeyev
2011-12-23 12:52:51 -05:00
parent 16ae99eec8
commit 99c102344e
2 changed files with 24 additions and 32 deletions

View File

@@ -2341,7 +2341,7 @@ class user extends session
function optionget($key, $data = false)
{
$var = ($data !== false) ? $data : $this->data['user_options'];
return ($var & 1 << $this->keyoptions[$key]) ? true : false;
return phpbb_optionget($this->keyoptions[$key], $var);
}
/**
@@ -2351,27 +2351,23 @@ class user extends session
{
$var = ($data !== false) ? $data : $this->data['user_options'];
if ($value && !($var & 1 << $this->keyoptions[$key]))
{
$var += 1 << $this->keyoptions[$key];
}
else if (!$value && ($var & 1 << $this->keyoptions[$key]))
{
$var -= 1 << $this->keyoptions[$key];
}
else
{
return ($data !== false) ? $var : false;
}
$new_var = phpbb_optionset($this->keyoptions[$key], $value, $var);
if ($data === false)
{
$this->data['user_options'] = $var;
return true;
if ($new_var != $var)
{
$this->data['user_options'] = $new_var;
return true;
}
else
{
return false;
}
}
else
{
return $var;
return $new_var;
}
}