* Fixed setting default values for topics and posts per page in user profile

This commit is contained in:
Visman 2018-10-31 19:01:53 +07:00
parent 0b13e3562d
commit c39624d53a
3 changed files with 22 additions and 8 deletions

View file

@ -26,6 +26,7 @@ class Config extends Profile
if ('POST' === $method) {
$v = $this->c->Validator->reset()
->addValidators([
'to_zero' => [$this, 'vToZero'],
])->addRules([
'token' => 'token:EditUserBoardConfig',
'language' => 'required|string:trim|in:' . \implode(',', $this->c->Func->getLangs()),
@ -39,8 +40,8 @@ class Config extends Profile
'show_avatars' => 'required|integer|in:0,1',
'show_img' => 'required|integer|in:0,1',
'show_img_sig' => 'required|integer|in:0,1',
'disp_topics' => 'integer|min:10|max:50',
'disp_posts' => 'integer|min:10|max:50',
'disp_topics' => 'integer|min:0|max:50|to_zero',
'disp_posts' => 'integer|min:0|max:50|to_zero',
])->addAliases([
'language' => 'Language',
'style' => 'Style',
@ -81,6 +82,19 @@ class Config extends Profile
return $this;
}
/**
* Преобразовывает число меньше 10 в 0
*
* @param Validator $v
* @param int $value
*
* @return string
*/
public function vToZero(Validator $v, $value)
{
return $value < 10 ? 0 : $value;
}
/**
* Создает массив данных для формы
*
@ -247,17 +261,17 @@ class Config extends Profile
'fields' => [
'disp_topics' => [
'type' => 'number',
'min' => 10,
'min' => 0,
'max' => 50,
'value' => $this->curUser->disp_topics,
'value' => $this->curUser->__disp_topics,
'caption' => \ForkBB\__('Topics per page label'),
'info' => \ForkBB\__('For default'),
],
'disp_posts' => [
'type' => 'number',
'min' => 10,
'min' => 0,
'max' => 50,
'value' => $this->curUser->disp_posts,
'value' => $this->curUser->__disp_posts,
'caption' => \ForkBB\__('Posts per page label'),
'info' => \ForkBB\__('For default'),
],

View file

@ -499,7 +499,7 @@ msgid "Default"
msgstr "Default"
msgid "For default"
msgstr "Clean this field for the default settings."
msgstr "Zero this field for the default settings."
msgid "Time format"
msgstr "Time format"

View file

@ -499,7 +499,7 @@ msgid "Default"
msgstr "По умолчанию"
msgid "For default"
msgstr "Очистите поле для использования значения по умолчанию."
msgstr "Обнулите поле для использования значения по умолчанию."
msgid "Time format"
msgstr "Формат времени"