update settings

This commit is contained in:
Dennis Eichhorn 2022-05-01 22:07:53 +02:00
parent c494809622
commit d25866b0d0
3 changed files with 25 additions and 7 deletions

View File

@ -19,7 +19,7 @@
"name": "Letter", "name": "Letter",
"type": "default_letter", "type": "default_letter",
"virtualPath": "/Modules/Organization/Templates", "virtualPath": "/Modules/Organization/Templates",
"path": "/Modules/Media/Files/Modules/Organization/Templates", "path": "/Modules/Organization/Templates",
"files": [ "files": [
"/Modules/Organization/Admin/Install/Media/letter.doc.php" "/Modules/Organization/Admin/Install/Media/letter.doc.php"
"/Modules/Organization/Admin/Install/Media/letter.pdf.php" "/Modules/Organization/Admin/Install/Media/letter.pdf.php"

View File

@ -237,16 +237,28 @@ final class BackendController extends Controller
$view->setTemplate('/Modules/Organization/Theme/Backend/department-list'); $view->setTemplate('/Modules/Organization/Theme/Backend/department-list');
$view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1004704001, $request, $response)); $view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1004704001, $request, $response));
$mapper = DepartmentMapper::getAll()->with('parent')->with('unit')->limit(25); $pageLimit = 25;
$view->addData('pageLimit', $pageLimit);
$mapper = DepartmentMapper::getAll()->with('parent')->with('unit')->limit($pageLimit + 1);
/** @var \Modules\Organization\Models\Department[] $departments */
$departments = [];
if ($request->getData('ptype') === 'p') { if ($request->getData('ptype') === 'p') {
$view->setData('departments', $mapper->where('id', (int) ($request->getData('id') ?? 0), '<')->execute()); $departments = $mapper->where('id', (int) ($request->getData('id') ?? 0), '<')->execute();
} elseif ($request->getData('ptype') === 'n') { } elseif ($request->getData('ptype') === 'n') {
$view->setData('departments', $mapper->where('id', (int) ($request->getData('id') ?? 0), '>')->execute()); $departments = $mapper->where('id', (int) ($request->getData('id') ?? 0), '>')->execute();
} else { } else {
$view->setData('departments', $mapper->where('id', 0, '>')->execute()); $departments = $mapper->where('id', 0, '>')->execute();
} }
$view->setData('hasMore', ($count = \count($departments)) > $pageLimit);
if ($count > $pageLimit) {
\array_pop($departments);
}
$view->setData('departments', $departments);
return $view; return $view;
} }

View File

@ -20,8 +20,14 @@ use phpOMS\Uri\UriFactory;
*/ */
$departments = $this->getData('departments') ?? []; $departments = $this->getData('departments') ?? [];
$previous = empty($departments) ? '{/prefix}organization/department/list' : '{/prefix}organization/department/list?{?}&id=' . \reset($departments)->getId() . '&ptype=p'; $previous = empty($departments)
$next = empty($departments) ? '{/prefix}organization/department/list' : '{/prefix}organization/department/list?{?}&id=' . \end($departments)->getId() . '&ptype=n'; ? '{/prefix}organization/department/list'
: '{/prefix}organization/department/list?{?}&id=' . \reset($departments)->getId() . '&ptype=p';
$next = empty($departments)
? '{/prefix}organization/department/list'
: '{/prefix}organization/department/list?{?}&id='
. ($this->getData('hasMore') ? \end($departments)->getId() : $this->request->getData('id'))
. '&ptype=n';
echo $this->getData('nav')->render(); ?> echo $this->getData('nav')->render(); ?>