Пример #1
0
 public function allUsersAction()
 {
     $fc = FrontController::getInstance();
     $model = new AdminModel('Все пользователи', 'управление пользователями');
     $userModel = new UserTableModel();
     $page = $fc->getParams()['page'] ? filter_var($fc->getParams()['page'], FILTER_SANITIZE_NUMBER_INT) : 1;
     $limit = $fc->getParams()['limit'] ? filter_var($fc->getParams()['limit'], FILTER_SANITIZE_NUMBER_INT) : 10;
     $orderBy = $fc->getParams()['orderBy'] ? filter_var($fc->getParams()['orderBy'], FILTER_SANITIZE_STRING) : 'id';
     $direction = $fc->getParams()['direction'] ? filter_var($fc->getParams()['direction'], FILTER_SANITIZE_STRING) : 'asc';
     $offset = $limit * $page - $limit;
     $model->setData(['users' => $userModel->getAllUsers('user.id, user.username, user.full_name, user.photo, user.email, user.validated, user.create_time, user.update_time, address.address, address.postal_code, phone.number, phone.number_type', "WHERE deleted != 1 GROUP BY user.id ORDER BY user.{$orderBy} " . strtoupper($direction) . " LIMIT {$limit} OFFSET {$offset}"), 'limit' => $limit, 'orderBy' => $orderBy, 'direction' => $direction, 'page' => $page, 'num' => (new AdminWidgets())->getNum('user'), 'offset' => $offset]);
     $output = $model->render('../views/admin/user/allUsers.php', 'admin');
     $fc->setPage($output);
 }