From 45029b445a31cb7e96a8d0fe316adc9ed8b2e454 Mon Sep 17 00:00:00 2001 From: Visman Date: Sun, 22 Apr 2018 21:35:39 +0700 Subject: [PATCH] 2018-04-22 --- app/Models/Pages/Admin/Users.php | 28 ++++++++++++++++++++++------ app/Models/Pages/Userlist.php | 6 +++--- app/lang/English/admin_users.po | 3 +++ app/lang/Russian/admin_users.po | 3 +++ 4 files changed, 31 insertions(+), 9 deletions(-) diff --git a/app/Models/Pages/Admin/Users.php b/app/Models/Pages/Admin/Users.php index f66ffa4c..d637e215 100644 --- a/app/Models/Pages/Admin/Users.php +++ b/app/Models/Pages/Admin/Users.php @@ -58,9 +58,11 @@ class Users extends Admin $filters['group_id'] = ['=', $data['user_group']]; } - unset($data['order_by'], $data['direction'], $data['user_group']); - foreach ($data as $field => $value) { + if ('order_by' === $field || 'direction' === $field || 'user_group' === $field) { + continue; + } + $key = 1; $type = '='; @@ -80,7 +82,22 @@ class Users extends Admin $filters[$field][$key] = $value; } - $ids = $this->c->users->filter($filters, $order); + $ids = $this->c->users->filter($filters, $order); + $number = \count($ids); + + if (0 == $number) { + $this->fIswev = ['i', \ForkBB\__('No users found')]; + + return $this->view([], 'GET', $data); + } + + $page = isset($args['page']) ? (int) $args['page'] : 1; + $pages = (int) \ceil($number / $this->c->config->o_disp_users); + + if ($page > $pages) { + return $this->c->Message->message('Bad request'); + } + exit(var_dump($ids, $order, $filters)); } @@ -90,15 +107,14 @@ class Users extends Admin * * @param array $args * @param string $method + * @param array $data * * @return Page */ - public function view(array $args, $method) + public function view(array $args, $method, array $data = []) { $this->c->Lang->load('admin_users'); - $data = []; - if ('POST' === $method) { $v = $this->c->Validator->reset() ->addRules([ diff --git a/app/Models/Pages/Userlist.php b/app/Models/Pages/Userlist.php index 069b3deb..9c6ad446 100644 --- a/app/Models/Pages/Userlist.php +++ b/app/Models/Pages/Userlist.php @@ -76,9 +76,9 @@ class Userlist extends Page } else { $filters['group_id'] = ['=', $v->group]; } -# if (null !== $v->name && '*' !== $v->name) { -# $filters['username'] = ['LIKE', $v->name]; -# } + if (null !== $v->name) { + $filters['username'] = ['LIKE', $v->name]; + } $order = $v->sort ? [$v->sort => $v->dir] : []; diff --git a/app/lang/English/admin_users.po b/app/lang/English/admin_users.po index 8f8e9de1..c5662cdd 100644 --- a/app/lang/English/admin_users.po +++ b/app/lang/English/admin_users.po @@ -329,3 +329,6 @@ msgstr "No match" msgid "Search results legend" msgstr "Select how to view search results" + +msgid "No users found" +msgstr "No users were found matching your criteria." diff --git a/app/lang/Russian/admin_users.po b/app/lang/Russian/admin_users.po index 38124ff5..b2590f5b 100644 --- a/app/lang/Russian/admin_users.po +++ b/app/lang/Russian/admin_users.po @@ -329,3 +329,6 @@ msgstr "Ничего" msgid "Search results legend" msgstr "Настройка параметров вывода результатов" + +msgid "No users found" +msgstr "По вашему запросу ничего не найдено."