diff --git a/config/services.yaml b/config/services.yaml index 3c94fd0..51b5c43 100644 --- a/config/services.yaml +++ b/config/services.yaml @@ -77,6 +77,17 @@ services: method: createTeamerMenu alias: admin_teamer + App\Menu\ManagerMenuBuilder: + arguments: + $factory: '@knp_menu.factory' + tags: + - name: knp_menu.menu_builder + method: createMainMenu + alias: manager_main + - name: knp_menu.menu_builder + method: createTeamerMenu + alias: manager_teamer + App\Menu\TeamerMenuBuilder: arguments: $factory: '@knp_menu.factory' diff --git a/src/Controller/Admin/Assignment/CreateController.php b/src/Controller/Administrative/Assignment/CreateController.php similarity index 83% rename from src/Controller/Admin/Assignment/CreateController.php rename to src/Controller/Administrative/Assignment/CreateController.php index a839ccf..a7837c4 100644 --- a/src/Controller/Admin/Assignment/CreateController.php +++ b/src/Controller/Administrative/Assignment/CreateController.php @@ -1,6 +1,6 @@ $this->generateUrl('app_admin_assignment_pickup_form'), + 'pickup_form_url' => $this->generateUrl('app_administrative_assignment_pickup_form'), ] ); $form->handleRequest($request); @@ -51,10 +51,10 @@ class CreateController extends AbstractController 'job_profile' => $assignment->getJobProfile()->getName(), ]); - return $this->redirectToRoute('app_admin_assignment_index'); + return $this->redirectToRoute('app_administrative_assignment_index'); } - return $this->render('admin/assignment/create.html.twig', [ + return $this->render('administrative/assignment/create.html.twig', [ 'form' => $form->createView(), ]); } diff --git a/src/Controller/Admin/Assignment/DeleteController.php b/src/Controller/Administrative/Assignment/DeleteController.php similarity index 83% rename from src/Controller/Admin/Assignment/DeleteController.php rename to src/Controller/Administrative/Assignment/DeleteController.php index 6cfac6e..c53af97 100644 --- a/src/Controller/Admin/Assignment/DeleteController.php +++ b/src/Controller/Administrative/Assignment/DeleteController.php @@ -1,6 +1,6 @@ addFlash('success', 'Der Einsatz wurde gelöscht'); - return new HxRedirectResponse($this->generateUrl('app_admin_assignment_index')); + return new HxRedirectResponse($this->generateUrl('app_administrative_assignment_index')); } - return $this->render('admin/assignment/modal_delete.html.twig', [ + return $this->render('administrative/assignment/modal_delete.html.twig', [ 'assignment' => $assignment, ]); } diff --git a/src/Controller/Admin/Assignment/DetailController.php b/src/Controller/Administrative/Assignment/DetailController.php similarity index 83% rename from src/Controller/Admin/Assignment/DetailController.php rename to src/Controller/Administrative/Assignment/DetailController.php index dec90af..6849a95 100644 --- a/src/Controller/Admin/Assignment/DetailController.php +++ b/src/Controller/Administrative/Assignment/DetailController.php @@ -1,6 +1,6 @@ findCurrentDispositionsByAssignment($assignment) ; - return $this->render('admin/assignment/detail.html.twig', [ + return $this->render('administrative/assignment/detail.html.twig', [ 'assignment' => $assignment, 'applications' => $applications, 'dispositions' => $dispositions, - 'returnUrl' => $this->getReturnUrl($request, 'app_admin_assignment_index'), + 'returnUrl' => $this->getReturnUrl($request, 'app_administrative_assignment_index'), ]); } } \ No newline at end of file diff --git a/src/Controller/Admin/Assignment/DuplicateController.php b/src/Controller/Administrative/Assignment/DuplicateController.php similarity index 82% rename from src/Controller/Admin/Assignment/DuplicateController.php rename to src/Controller/Administrative/Assignment/DuplicateController.php index 5d9cbbf..c2e89f4 100644 --- a/src/Controller/Admin/Assignment/DuplicateController.php +++ b/src/Controller/Administrative/Assignment/DuplicateController.php @@ -1,6 +1,6 @@ $this->generateUrl('app_admin_assignment_pickup_form'), + 'pickup_form_url' => $this->generateUrl('app_administrative_assignment_pickup_form'), ] ); $form->handleRequest($request); @@ -48,12 +48,12 @@ class DuplicateController extends AbstractController 'job_profile' => $assignment->getJobProfile()->getName(), ]); - return $this->redirectToRoute('app_admin_assignment_edit', [ + return $this->redirectToRoute('app_administrative_assignment_edit', [ 'uuid' => $copy->getUuid(), ]); } - return $this->render('admin/assignment/duplicate.html.twig', [ + return $this->render('administrative/assignment/duplicate.html.twig', [ 'form' => $form->createView(), ]); } diff --git a/src/Controller/Admin/Assignment/EditController.php b/src/Controller/Administrative/Assignment/EditController.php similarity index 81% rename from src/Controller/Admin/Assignment/EditController.php rename to src/Controller/Administrative/Assignment/EditController.php index a6ba9dd..3fe192f 100644 --- a/src/Controller/Admin/Assignment/EditController.php +++ b/src/Controller/Administrative/Assignment/EditController.php @@ -1,6 +1,6 @@ $this->generateUrl('app_admin_assignment_pickup_form'), + 'pickup_form_url' => $this->generateUrl('app_administrative_assignment_pickup_form'), ] ); $form->handleRequest($request); @@ -44,10 +44,10 @@ class EditController extends AbstractController 'job_profile' => $assignment->getJobProfile()->getName(), ]); - return $this->redirectToRoute('app_admin_assignment_index'); + return $this->redirectToRoute('app_administrative_assignment_index'); } - return $this->render('admin/assignment/edit.html.twig', [ + return $this->render('administrative/assignment/edit.html.twig', [ 'form' => $form->createView(), ]); } diff --git a/src/Controller/Admin/Assignment/IndexController.php b/src/Controller/Administrative/Assignment/IndexController.php similarity index 86% rename from src/Controller/Admin/Assignment/IndexController.php rename to src/Controller/Administrative/Assignment/IndexController.php index 2236e54..e976642 100644 --- a/src/Controller/Admin/Assignment/IndexController.php +++ b/src/Controller/Administrative/Assignment/IndexController.php @@ -1,6 +1,6 @@ render('admin/assignment/index.html.twig', [ + return $this->render('administrative/assignment/index.html.twig', [ 'pagination' => $pagination, 'filterDto' => $filterDto, ]); diff --git a/src/Controller/Admin/Assignment/PickupFormController.php b/src/Controller/Administrative/Assignment/PickupFormController.php similarity index 76% rename from src/Controller/Admin/Assignment/PickupFormController.php rename to src/Controller/Administrative/Assignment/PickupFormController.php index 17ca08e..7798f4b 100644 --- a/src/Controller/Admin/Assignment/PickupFormController.php +++ b/src/Controller/Administrative/Assignment/PickupFormController.php @@ -1,6 +1,6 @@ createForm(AssignmentType::class, $assignment); $form->handleRequest($request); - return $this->renderBlock('admin/assignment/_form.html.twig', + return $this->renderBlock('administrative/assignment/_form.html.twig', 'partial_form', [ 'form' => $form->createView(), diff --git a/src/Controller/Admin/Document/CheckController.php b/src/Controller/Administrative/Document/CheckController.php similarity index 94% rename from src/Controller/Admin/Document/CheckController.php rename to src/Controller/Administrative/Document/CheckController.php index 4825c8c..8954aea 100644 --- a/src/Controller/Admin/Document/CheckController.php +++ b/src/Controller/Administrative/Document/CheckController.php @@ -1,6 +1,6 @@ generateUrl('app_admin_document_index')); + return new HxRedirectResponse($this->generateUrl('app_administrative_document_index')); } - return $this->render('admin/document/modal_check.html.twig', [ + return $this->render('administrative/document/modal_check.html.twig', [ 'document' => $document, 'form' => $form->createView(), ]); diff --git a/src/Controller/Admin/Document/DeleteController.php b/src/Controller/Administrative/Document/DeleteController.php similarity index 83% rename from src/Controller/Admin/Document/DeleteController.php rename to src/Controller/Administrative/Document/DeleteController.php index 1178680..5c7b642 100644 --- a/src/Controller/Admin/Document/DeleteController.php +++ b/src/Controller/Administrative/Document/DeleteController.php @@ -1,6 +1,6 @@ $document->getOwner()->getFullName(), ]); - return new HxRedirectResponse($this->generateUrl('app_admin_document_index')); + return new HxRedirectResponse($this->generateUrl('app_administrative_document_index')); } - return $this->render('admin/document/modal_delete.html.twig', [ + return $this->render('administrative/document/modal_delete.html.twig', [ 'document' => $document, ]); } diff --git a/src/Controller/Admin/Document/IndexController.php b/src/Controller/Administrative/Document/IndexController.php similarity index 84% rename from src/Controller/Admin/Document/IndexController.php rename to src/Controller/Administrative/Document/IndexController.php index ebd9c25..940792e 100644 --- a/src/Controller/Admin/Document/IndexController.php +++ b/src/Controller/Administrative/Document/IndexController.php @@ -1,6 +1,6 @@ render('admin/document/index.html.twig', [ + return $this->render('administrative/document/index.html.twig', [ 'pagination' => $pagination, ]); } diff --git a/src/Controller/Admin/System/Document/DeleteController.php b/src/Controller/Administrative/System/Document/DeleteController.php similarity index 81% rename from src/Controller/Admin/System/Document/DeleteController.php rename to src/Controller/Administrative/System/Document/DeleteController.php index 42eeda9..4378cab 100644 --- a/src/Controller/Admin/System/Document/DeleteController.php +++ b/src/Controller/Administrative/System/Document/DeleteController.php @@ -1,6 +1,6 @@ $document->getOriginalFilename(), ]); - return new HxRedirectResponse($this->generateUrl('app_admin_system_document_index')); + return new HxRedirectResponse($this->generateUrl('app_administrative_system_document_index')); } - return $this->render('admin/system/document/modal_delete.html.twig', [ + return $this->render('administrative/system/document/modal_delete.html.twig', [ 'document' => $document, ]); } diff --git a/src/Controller/Admin/System/Document/EditController.php b/src/Controller/Administrative/System/Document/EditController.php similarity index 86% rename from src/Controller/Admin/System/Document/EditController.php rename to src/Controller/Administrative/System/Document/EditController.php index 32ba7bb..9230d5f 100644 --- a/src/Controller/Admin/System/Document/EditController.php +++ b/src/Controller/Administrative/System/Document/EditController.php @@ -1,6 +1,6 @@ $upload->getDisplayName(), ]); - return new HxRedirectResponse($this->generateUrl('app_admin_system_document_index')); + return new HxRedirectResponse($this->generateUrl('app_administrative_system_document_index')); } - return $this->render('admin/system/document/modal_edit.html.twig', [ + return $this->render('administrative/system/document/modal_edit.html.twig', [ 'form' => $form->createView(), ]); } diff --git a/src/Controller/Admin/System/Document/IndexController.php b/src/Controller/Administrative/System/Document/IndexController.php similarity index 82% rename from src/Controller/Admin/System/Document/IndexController.php rename to src/Controller/Administrative/System/Document/IndexController.php index b754fff..1220fce 100644 --- a/src/Controller/Admin/System/Document/IndexController.php +++ b/src/Controller/Administrative/System/Document/IndexController.php @@ -1,6 +1,6 @@ render('admin/system/document/index.html.twig', [ + return $this->render('administrative/system/document/index.html.twig', [ 'pagination' => $pagination, ]); } diff --git a/src/Controller/Admin/System/Document/ReplaceController.php b/src/Controller/Administrative/System/Document/ReplaceController.php similarity index 82% rename from src/Controller/Admin/System/Document/ReplaceController.php rename to src/Controller/Administrative/System/Document/ReplaceController.php index 29d4535..1dbc638 100644 --- a/src/Controller/Admin/System/Document/ReplaceController.php +++ b/src/Controller/Administrative/System/Document/ReplaceController.php @@ -1,6 +1,6 @@ uploadHandler->destroyUploadSession(); } - $formAction = $this->generateUrl('app_admin_system_document_replace', ['uuid' => $upload->getUuid()]); - $filenameBefore = $upload->getOriginalFilename(); $form = $this - ->createFormBuilder(null, ['action' => $formAction, 'ajax_submit' => true]) + ->createFormBuilder() ->getForm() ; $form->handleRequest($request); @@ -56,10 +54,10 @@ class ReplaceController extends AbstractController 'document_filename_after' => $upload->getOriginalFilename(), ]); - return new HxRedirectResponse($this->generateUrl('app_admin_system_document_index')); + return new HxRedirectResponse($this->generateUrl('app_administrative_system_document_index')); } - return $this->render('admin/system/document/modal_replace.html.twig', [ + return $this->render('administrative/system/document/modal_replace.html.twig', [ 'form' => $form->createView(), ]); } diff --git a/src/Controller/Admin/System/Document/UploadController.php b/src/Controller/Administrative/System/Document/UploadController.php similarity index 89% rename from src/Controller/Admin/System/Document/UploadController.php rename to src/Controller/Administrative/System/Document/UploadController.php index 3f040b5..69d0b60 100644 --- a/src/Controller/Admin/System/Document/UploadController.php +++ b/src/Controller/Administrative/System/Document/UploadController.php @@ -1,6 +1,6 @@ logger->info('Upload document(s)', $loggerContext); - return new HxRedirectResponse($this->generateUrl('app_admin_system_document_index')); + return new HxRedirectResponse($this->generateUrl('app_administrative_system_document_index')); } - return $this->render('admin/system/document/modal_upload.html.twig', [ + return $this->render('administrative/system/document/modal_upload.html.twig', [ 'form' => $form->createView(), ]); } diff --git a/src/Controller/Admin/System/Faq/CreateController.php b/src/Controller/Administrative/System/Faq/CreateController.php similarity index 75% rename from src/Controller/Admin/System/Faq/CreateController.php rename to src/Controller/Administrative/System/Faq/CreateController.php index 49b4d32..e613300 100644 --- a/src/Controller/Admin/System/Faq/CreateController.php +++ b/src/Controller/Administrative/System/Faq/CreateController.php @@ -1,6 +1,6 @@ $faq->getQuestion(), ]); - return $this->redirectToRoute('app_admin_system_faq_index'); + return $this->redirectToRoute('app_administrative_system_faq_index'); } - return $this->render('admin/system/faq/create.html.twig', [ - 'form' => $form + return $this->render('administrative/system/faq/create.html.twig', [ + 'form' => $form->createView(), ]); } } \ No newline at end of file diff --git a/src/Controller/Admin/System/Faq/DeleteController.php b/src/Controller/Administrative/System/Faq/DeleteController.php similarity index 78% rename from src/Controller/Admin/System/Faq/DeleteController.php rename to src/Controller/Administrative/System/Faq/DeleteController.php index 9cf8327..89f64fc 100644 --- a/src/Controller/Admin/System/Faq/DeleteController.php +++ b/src/Controller/Administrative/System/Faq/DeleteController.php @@ -1,6 +1,6 @@ isMethod('POST')) { @@ -34,10 +34,10 @@ class DeleteController extends AbstractController 'faq_question' => $faq->getQuestion(), ]); - return new HxRedirectResponse($this->generateUrl('app_admin_system_faq_index')); + return new HxRedirectResponse($this->generateUrl('app_administrative_system_faq_index')); } - return $this->render('admin/system/faq/modal_delete.html.twig', [ + return $this->render('administrative/system/faq/modal_delete.html.twig', [ 'faq' => $faq, ]); } diff --git a/src/Controller/Admin/System/Faq/EditController.php b/src/Controller/Administrative/System/Faq/EditController.php similarity index 74% rename from src/Controller/Admin/System/Faq/EditController.php rename to src/Controller/Administrative/System/Faq/EditController.php index fa24d5f..171eee3 100644 --- a/src/Controller/Admin/System/Faq/EditController.php +++ b/src/Controller/Administrative/System/Faq/EditController.php @@ -1,6 +1,6 @@ createForm(FaqType::class, $faq); @@ -36,11 +36,11 @@ class EditController extends AbstractController 'faq_question' => $faq->getQuestion(), ]); - return $this->redirectToRoute('app_admin_system_faq_index'); + return $this->redirectToRoute('app_administrative_system_faq_index'); } - return $this->render('admin/system/faq/edit.html.twig', [ - 'form' => $form + return $this->render('administrative/system/faq/edit.html.twig', [ + 'form' => $form->createView(), ]); } } \ No newline at end of file diff --git a/src/Controller/Admin/System/Faq/IndexController.php b/src/Controller/Administrative/System/Faq/IndexController.php similarity index 78% rename from src/Controller/Admin/System/Faq/IndexController.php rename to src/Controller/Administrative/System/Faq/IndexController.php index 5399700..048da74 100644 --- a/src/Controller/Admin/System/Faq/IndexController.php +++ b/src/Controller/Administrative/System/Faq/IndexController.php @@ -1,6 +1,6 @@ faqRepository->findBy([], ['sorting' => 'ASC']); - return $this->render('admin/system/faq/index.html.twig', [ + return $this->render('administrative/system/faq/index.html.twig', [ 'faqs' => $faqs, ]); } - #[Route('/admin/system/faq/sort', name: 'app_admin_system_faq_sort', methods: ['POST'])] + #[Route('/administrative/system/faq/sort', name: 'app_administrative_system_faq_sort', methods: ['POST'])] public function sort(Request $request): JsonResponse { $data = json_decode($request->getContent(), true); diff --git a/src/Controller/Manager/IndexController.php b/src/Controller/Manager/IndexController.php new file mode 100644 index 0000000..5300be9 --- /dev/null +++ b/src/Controller/Manager/IndexController.php @@ -0,0 +1,18 @@ +render('manager/index.html.twig', [ + + ]); + } +} \ No newline at end of file diff --git a/src/Menu/AbstractMenuBuilder.php b/src/Menu/AbstractMenuBuilder.php index d8a2051..d119512 100644 --- a/src/Menu/AbstractMenuBuilder.php +++ b/src/Menu/AbstractMenuBuilder.php @@ -47,6 +47,22 @@ abstract class AbstractMenuBuilder } } + protected function addManagerItem(ItemInterface $menu): void + { + if ($this->security->isGranted('ROLE_MANAGER')) { + $this->addDivider($menu); + $menu->addChild('zum Managementbereich', [ + 'route' => 'app_manager_index', + 'linkAttributes' => [ + 'title' => 'zum Managementbereich', + ], + 'extras' => [ + 'icon' => 'user', + ], + ]); + } + } + protected function addTeamerItem(ItemInterface $menu): void { if ($this->security->isGranted('ROLE_TEAMER')) { diff --git a/src/Menu/AdminMenuBuilder.php b/src/Menu/AdminMenuBuilder.php index c18004b..53810f2 100644 --- a/src/Menu/AdminMenuBuilder.php +++ b/src/Menu/AdminMenuBuilder.php @@ -20,14 +20,14 @@ class AdminMenuBuilder extends AbstractMenuBuilder ], ]); $menu->addChild('Einsatzübersicht', [ - 'route' => 'app_admin_assignment_index', + 'route' => 'app_administrative_assignment_index', 'linkAttributes' => [ 'title' => 'Einsatzübersicht', ], 'extras' => [ 'icon' => 'calendar', 'routes' => [ - ['pattern' => '/^app_admin_assignment_/'], + ['pattern' => '/^app_administrative_assignment_/'], ], ], ]); @@ -41,7 +41,7 @@ class AdminMenuBuilder extends AbstractMenuBuilder ], ]); $menu->addChild('Dokumentenübersicht', [ - 'route' => 'app_admin_document_index', + 'route' => 'app_administrative_document_index', 'linkAttributes' => [ 'title' => 'Dokumentenübersicht', ], @@ -125,24 +125,24 @@ class AdminMenuBuilder extends AbstractMenuBuilder ], ]); $settingsMenu->addChild('FAQ', [ - 'route' => 'app_admin_system_faq_index', + 'route' => 'app_administrative_system_faq_index', 'linkAttributes' => [ 'title' => 'FAQ', ], 'extras' => [ 'routes' => [ - ['pattern' => '/^app_admin_system_faq_/'] + ['pattern' => '/^app_administrative_system_faq_/'] ], ], ]); $settingsMenu->addChild('Dokumente', [ - 'route' => 'app_admin_system_document_index', + 'route' => 'app_administrative_system_document_index', 'linkAttributes' => [ 'title' => 'Dokumente', ], 'extras' => [ 'routes' => [ - ['pattern' => '/^app_admin_system_document_/'] + ['pattern' => '/^app_administrative_system_document_/'] ], ], ]); @@ -169,6 +169,7 @@ class AdminMenuBuilder extends AbstractMenuBuilder ]); $this->addTeamerItem($menu); + $this->addManagerItem($menu); $this->addHouseManagerItem($menu); $this->addLogoutItem($menu); diff --git a/src/Menu/HouseManagerMenuBuilder.php b/src/Menu/HouseManagerMenuBuilder.php index d894a4d..494c720 100644 --- a/src/Menu/HouseManagerMenuBuilder.php +++ b/src/Menu/HouseManagerMenuBuilder.php @@ -33,6 +33,7 @@ class HouseManagerMenuBuilder extends AbstractMenuBuilder ]); $this->addAdminItem($menu); + $this->addManagerItem($menu); $this->addTeamerItem($menu); $this->addLogoutItem($menu); diff --git a/src/Menu/ManagerMenuBuilder.php b/src/Menu/ManagerMenuBuilder.php new file mode 100644 index 0000000..d15ba80 --- /dev/null +++ b/src/Menu/ManagerMenuBuilder.php @@ -0,0 +1,145 @@ +createRootElement(); + + $menu->addChild('Dashboard', [ + 'route' => 'app_manager_index', + 'linkAttributes' => [ + 'title' => 'Dashboard', + ], + 'extras' => [ + 'icon' => 'chart', + ], + ]); + $menu->addChild('Einsatzübersicht', [ + 'route' => 'app_administrative_assignment_index', + 'linkAttributes' => [ + 'title' => 'Einsatzübersicht', + ], + 'extras' => [ + 'icon' => 'calendar', + 'routes' => [ + ['pattern' => '/^app_administrative_assignment_/'], + ], + ], + ]); + $menu->addChild('Dokumentenübersicht', [ + 'route' => 'app_administrative_document_index', + 'linkAttributes' => [ + 'title' => 'Dokumentenübersicht', + ], + 'extras' => [ + 'icon' => 'document', + ], + ]); +// $menu->addChild('Teamübersicht', [ +// 'route' => 'app_admin_teamer_index', +// 'linkAttributes' => [ +// 'title' => 'Teamübersicht', +// ], +// 'extras' => [ +// 'icon' => 'users', +// 'routes' => [ +// ['pattern' => '/^app_admin_teamer_/'] +// ], +// ], +// ]); + $settingsMenu = $menu->addChild('Einstellungen', [ + 'linkAttributes' => [ + 'title' => 'Einstellungen', + ], + 'extras' => [ + 'icon' => 'settings', + ], + ]); + $settingsMenu->addChild('FAQ', [ + 'route' => 'app_administrative_system_faq_index', + 'linkAttributes' => [ + 'title' => 'FAQ', + ], + 'extras' => [ + 'routes' => [ + ['pattern' => '/^app_administrative_system_faq_/'] + ], + ], + ]); + $settingsMenu->addChild('Dokumente', [ + 'route' => 'app_administrative_system_document_index', + 'linkAttributes' => [ + 'title' => 'Dokumente', + ], + 'extras' => [ + 'routes' => [ + ['pattern' => '/^app_administrative_system_document_/'] + ], + ], + ]); + + $this->addAdminItem($menu); + $this->addTeamerItem($menu); + $this->addHouseManagerItem($menu); + $this->addLogoutItem($menu); + + return $menu; + } + + public function createTeamerMenu(array $options): ItemInterface + { + $menu = $this->createRootElement(); + + $menu->addChild('Stammdaten & Foto', [ + 'route' => 'app_admin_teamer_profile', + 'routeParameters' => $this->getDefaultRouteParameters('uuid'), + 'linkAttributes' => [ + 'title' => 'Stammdaten & Foto', + ], + ]); + $menu->addChild('Jobprofile & Skills', [ + 'route' => 'app_admin_teamer_skills', + 'routeParameters' => $this->getDefaultRouteParameters('uuid'), + 'linkAttributes' => [ + 'title' => 'Jobprofile & Skills', + ], + ]); + $menu->addChild('Verfügbarkeit', [ + 'route' => 'app_admin_teamer_availability', + 'routeParameters' => $this->getDefaultRouteParameters('uuid'), + 'linkAttributes' => [ + 'title' => 'Verfügbarkeit', + ], + ]); + $menu->addChild('Selektionsmerkmale', [ + 'route' => 'app_admin_teamer_crm_selections', + 'routeParameters' => $this->getDefaultRouteParameters('uuid'), + 'linkAttributes' => [ + 'title' => 'Selektionsmerkmale', + ], + ]); + $menu->addChild('Vergangene Einsätze', [ + 'route' => 'app_admin_teamer_recent_assignments', + 'routeParameters' => $this->getDefaultRouteParameters('uuid'), + 'linkAttributes' => [ + 'title' => 'Vergangene Einsätze', + ], + ]); + + $this->addDivider($menu); + + $menu->addChild('zurück zur Übersicht', [ + 'route' => 'app_admin_teamer_index', + 'extras' => [ + 'icon' => 'arrow-left', + ], + ]); + + return $menu; + } +} \ No newline at end of file diff --git a/src/Menu/TeamerMenuBuilder.php b/src/Menu/TeamerMenuBuilder.php index 9c71242..a05170a 100644 --- a/src/Menu/TeamerMenuBuilder.php +++ b/src/Menu/TeamerMenuBuilder.php @@ -114,6 +114,7 @@ class TeamerMenuBuilder extends AbstractMenuBuilder ]); $this->addAdminItem($menu); + $this->addManagerItem($menu); $this->addHouseManagerItem($menu); $this->addLogoutItem($menu); diff --git a/templates/admin/index.html.twig b/templates/admin/index.html.twig index 0cf208c..d72231f 100644 --- a/templates/admin/index.html.twig +++ b/templates/admin/index.html.twig @@ -15,7 +15,7 @@ {% for application in applications %} {% set assignment = application.assignment %}
  • - +
    {{ icon('hand', 'w-4 h-4 shrink-0') }}
    @@ -49,7 +49,7 @@ {% for document in documents %}
  • {% if document.disposition %} - {% set url = path('app_admin_assignment_detail', { 'uuid': document.disposition.assignment.uuid, 'r': return_url() }) %} + {% set url = path('app_administrative_assignment_detail', { 'uuid': document.disposition.assignment.uuid, 'r': return_url() }) %} {% else %} {% set url = path('app_admin_teamer_profile', { 'uuid': document.owner.teamer.uuid, 'r': return_url() }) %} {% endif %} @@ -74,7 +74,7 @@