Applied rector rules up to symfony 6.2

This commit is contained in:
Jan Böhmer 2023-05-28 01:21:05 +02:00
parent 88ea920dfb
commit a43af180a7
145 changed files with 563 additions and 889 deletions

View file

@ -36,9 +36,7 @@ use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
/**
* @Route("/attachment_type")
*/
#[Route(path: '/attachment_type')]
class AttachmentTypeController extends BaseAdminController
{
protected string $entity_class = AttachmentType::class;
@ -48,44 +46,34 @@ class AttachmentTypeController extends BaseAdminController
protected string $attachment_class = AttachmentTypeAttachment::class;
protected ?string $parameter_class = AttachmentTypeParameter::class;
/**
* @Route("/{id}", name="attachment_type_delete", methods={"DELETE"})
*/
#[Route(path: '/{id}', name: 'attachment_type_delete', methods: ['DELETE'])]
public function delete(Request $request, AttachmentType $entity, StructuralElementRecursionHelper $recursionHelper): RedirectResponse
{
return $this->_delete($request, $entity, $recursionHelper);
}
/**
* @Route("/{id}/edit/{timestamp}", requirements={"id"="\d+"}, name="attachment_type_edit")
* @Route("/{id}", requirements={"id"="\d+"})
*/
#[Route(path: '/{id}/edit/{timestamp}', requirements: ['id' => '\d+'], name: 'attachment_type_edit')]
#[Route(path: '/{id}', requirements: ['id' => '\d+'])]
public function edit(AttachmentType $entity, Request $request, EntityManagerInterface $em, ?string $timestamp = null): Response
{
return $this->_edit($entity, $request, $em, $timestamp);
}
/**
* @Route("/new", name="attachment_type_new")
* @Route("/{id}/clone", name="attachment_type_clone")
* @Route("/")
*/
#[Route(path: '/new', name: 'attachment_type_new')]
#[Route(path: '/{id}/clone', name: 'attachment_type_clone')]
#[Route(path: '/')]
public function new(Request $request, EntityManagerInterface $em, EntityImporter $importer, ?AttachmentType $entity = null): Response
{
return $this->_new($request, $em, $importer, $entity);
}
/**
* @Route("/export", name="attachment_type_export_all")
*/
#[Route(path: '/export', name: 'attachment_type_export_all')]
public function exportAll(EntityManagerInterface $em, EntityExporter $exporter, Request $request): Response
{
return $this->_exportAll($em, $exporter, $request);
}
/**
* @Route("/{id}/export", name="attachment_type_export")
*/
#[Route(path: '/{id}/export', name: 'attachment_type_export')]
public function exportEntity(AttachmentType $entity, EntityExporter $exporter, Request $request): Response
{
return $this->_exportEntity($entity, $exporter, $request);

View file

@ -245,7 +245,7 @@ abstract class BaseAdminController extends AbstractController
/** @var AbstractPartsContainingRepository $repo */
$repo = $this->entityManager->getRepository($this->entity_class);
return $this->renderForm($this->twig_template, [
return $this->render($this->twig_template, [
'entity' => $entity,
'form' => $form,
'route_base' => $this->route_base,
@ -402,7 +402,7 @@ abstract class BaseAdminController extends AbstractController
}
ret:
return $this->renderForm($this->twig_template, [
return $this->render($this->twig_template, [
'entity' => $new_entity,
'form' => $form,
'import_form' => $import_form,

View file

@ -35,9 +35,7 @@ use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
/**
* @Route("/category")
*/
#[Route(path: '/category')]
class CategoryController extends BaseAdminController
{
protected string $entity_class = Category::class;
@ -47,44 +45,34 @@ class CategoryController extends BaseAdminController
protected string $attachment_class = CategoryAttachment::class;
protected ?string $parameter_class = CategoryParameter::class;
/**
* @Route("/{id}", name="category_delete", methods={"DELETE"})
*/
#[Route(path: '/{id}', name: 'category_delete', methods: ['DELETE'])]
public function delete(Request $request, Category $entity, StructuralElementRecursionHelper $recursionHelper): RedirectResponse
{
return $this->_delete($request, $entity, $recursionHelper);
}
/**
* @Route("/{id}/edit/{timestamp}", requirements={"id"="\d+"}, name="category_edit")
* @Route("/{id}", requirements={"id"="\d+"})
*/
#[Route(path: '/{id}/edit/{timestamp}', requirements: ['id' => '\d+'], name: 'category_edit')]
#[Route(path: '/{id}', requirements: ['id' => '\d+'])]
public function edit(Category $entity, Request $request, EntityManagerInterface $em, ?string $timestamp = null): Response
{
return $this->_edit($entity, $request, $em, $timestamp);
}
/**
* @Route("/new", name="category_new")
* @Route("/{id}/clone", name="category_clone")
* @Route("/")
*/
#[Route(path: '/new', name: 'category_new')]
#[Route(path: '/{id}/clone', name: 'category_clone')]
#[Route(path: '/')]
public function new(Request $request, EntityManagerInterface $em, EntityImporter $importer, ?Category $entity = null): Response
{
return $this->_new($request, $em, $importer, $entity);
}
/**
* @Route("/export", name="category_export_all")
*/
#[Route(path: '/export', name: 'category_export_all')]
public function exportAll(EntityManagerInterface $em, EntityExporter $exporter, Request $request): Response
{
return $this->_exportAll($em, $exporter, $request);
}
/**
* @Route("/{id}/export", name="category_export")
*/
#[Route(path: '/{id}/export', name: 'category_export')]
public function exportEntity(Category $entity, EntityExporter $exporter, Request $request): Response
{
return $this->_exportEntity($entity, $exporter, $request);

View file

@ -52,10 +52,9 @@ use Symfony\Component\Routing\Annotation\Route;
use Symfony\Contracts\Translation\TranslatorInterface;
/**
* @Route("/currency")
*
* Class CurrencyController
*/
#[Route(path: '/currency')]
class CurrencyController extends BaseAdminController
{
protected string $entity_class = Currency::class;
@ -98,9 +97,7 @@ class CurrencyController extends BaseAdminController
);
}
/**
* @Route("/{id}", name="currency_delete", methods={"DELETE"})
*/
#[Route(path: '/{id}', name: 'currency_delete', methods: ['DELETE'])]
public function delete(Request $request, Currency $entity, StructuralElementRecursionHelper $recursionHelper): RedirectResponse
{
return $this->_delete($request, $entity, $recursionHelper);
@ -131,36 +128,28 @@ class CurrencyController extends BaseAdminController
return true;
}
/**
* @Route("/{id}/edit/{timestamp}", requirements={"id"="\d+"}, name="currency_edit")
* @Route("/{id}", requirements={"id"="\d+"})
*/
#[Route(path: '/{id}/edit/{timestamp}', requirements: ['id' => '\d+'], name: 'currency_edit')]
#[Route(path: '/{id}', requirements: ['id' => '\d+'])]
public function edit(Currency $entity, Request $request, EntityManagerInterface $em, ?string $timestamp = null): Response
{
return $this->_edit($entity, $request, $em, $timestamp);
}
/**
* @Route("/new", name="currency_new")
* @Route("/{id}/clone", name="currency_clone")
* @Route("/")
*/
#[Route(path: '/new', name: 'currency_new')]
#[Route(path: '/{id}/clone', name: 'currency_clone')]
#[Route(path: '/')]
public function new(Request $request, EntityManagerInterface $em, EntityImporter $importer, ?Currency $entity = null): Response
{
return $this->_new($request, $em, $importer, $entity);
}
/**
* @Route("/export", name="currency_export_all")
*/
#[Route(path: '/export', name: 'currency_export_all')]
public function exportAll(EntityManagerInterface $em, EntityExporter $exporter, Request $request): Response
{
return $this->_exportAll($em, $exporter, $request);
}
/**
* @Route("/{id}/export", name="currency_export")
*/
#[Route(path: '/{id}/export', name: 'currency_export')]
public function exportEntity(Currency $entity, EntityExporter $exporter, Request $request): Response
{
return $this->_exportEntity($entity, $exporter, $request);

View file

@ -36,9 +36,7 @@ use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
/**
* @Route("/footprint")
*/
#[Route(path: '/footprint')]
class FootprintController extends BaseAdminController
{
protected string $entity_class = Footprint::class;
@ -48,44 +46,34 @@ class FootprintController extends BaseAdminController
protected string $attachment_class = FootprintAttachment::class;
protected ?string $parameter_class = FootprintParameter::class;
/**
* @Route("/{id}", name="footprint_delete", methods={"DELETE"})
*/
#[Route(path: '/{id}', name: 'footprint_delete', methods: ['DELETE'])]
public function delete(Request $request, Footprint $entity, StructuralElementRecursionHelper $recursionHelper): RedirectResponse
{
return $this->_delete($request, $entity, $recursionHelper);
}
/**
* @Route("/{id}/edit/{timestamp}", requirements={"id"="\d+"}, name="footprint_edit")
* @Route("/{id}", requirements={"id"="\d+"})
*/
#[Route(path: '/{id}/edit/{timestamp}', requirements: ['id' => '\d+'], name: 'footprint_edit')]
#[Route(path: '/{id}', requirements: ['id' => '\d+'])]
public function edit(Footprint $entity, Request $request, EntityManagerInterface $em, ?string $timestamp = null): Response
{
return $this->_edit($entity, $request, $em, $timestamp);
}
/**
* @Route("/new", name="footprint_new")
* @Route("/{id}/clone", name="footprint_clone")
* @Route("/")
*/
#[Route(path: '/new', name: 'footprint_new')]
#[Route(path: '/{id}/clone', name: 'footprint_clone')]
#[Route(path: '/')]
public function new(Request $request, EntityManagerInterface $em, EntityImporter $importer, ?Footprint $entity = null): Response
{
return $this->_new($request, $em, $importer, $entity);
}
/**
* @Route("/export", name="footprint_export_all")
*/
#[Route(path: '/export', name: 'footprint_export_all')]
public function exportAll(EntityManagerInterface $em, EntityExporter $exporter, Request $request): Response
{
return $this->_exportAll($em, $exporter, $request);
}
/**
* @Route("/{id}/export", name="footprint_export")
*/
#[Route(path: '/{id}/export', name: 'footprint_export')]
public function exportEntity(AttachmentType $entity, EntityExporter $exporter, Request $request): Response
{
return $this->_exportEntity($entity, $exporter, $request);

View file

@ -35,9 +35,7 @@ use Symfony\Component\HttpFoundation\RedirectResponse;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
/**
* @Route("/label_profile")
*/
#[Route(path: '/label_profile')]
class LabelProfileController extends BaseAdminController
{
protected string $entity_class = LabelProfile::class;
@ -48,44 +46,34 @@ class LabelProfileController extends BaseAdminController
//Just a placeholder
protected ?string $parameter_class = null;
/**
* @Route("/{id}", name="label_profile_delete", methods={"DELETE"})
*/
#[Route(path: '/{id}', name: 'label_profile_delete', methods: ['DELETE'])]
public function delete(Request $request, LabelProfile $entity, StructuralElementRecursionHelper $recursionHelper): RedirectResponse
{
return $this->_delete($request, $entity, $recursionHelper);
}
/**
* @Route("/{id}/edit/{timestamp}", requirements={"id"="\d+"}, name="label_profile_edit")
* @Route("/{id}", requirements={"id"="\d+"})
*/
#[Route(path: '/{id}/edit/{timestamp}', requirements: ['id' => '\d+'], name: 'label_profile_edit')]
#[Route(path: '/{id}', requirements: ['id' => '\d+'])]
public function edit(LabelProfile $entity, Request $request, EntityManagerInterface $em, ?string $timestamp = null): Response
{
return $this->_edit($entity, $request, $em, $timestamp);
}
/**
* @Route("/new", name="label_profile_new")
* @Route("/{id}/clone", name="label_profile_clone")
* @Route("/")
*/
#[Route(path: '/new', name: 'label_profile_new')]
#[Route(path: '/{id}/clone', name: 'label_profile_clone')]
#[Route(path: '/')]
public function new(Request $request, EntityManagerInterface $em, EntityImporter $importer, ?LabelProfile $entity = null): Response
{
return $this->_new($request, $em, $importer, $entity);
}
/**
* @Route("/export", name="label_profile_export_all")
*/
#[Route(path: '/export', name: 'label_profile_export_all')]
public function exportAll(EntityManagerInterface $em, EntityExporter $exporter, Request $request): Response
{
return $this->_exportAll($em, $exporter, $request);
}
/**
* @Route("/{id}/export", name="label_profile_export")
*/
#[Route(path: '/{id}/export', name: 'label_profile_export')]
public function exportEntity(LabelProfile $entity, EntityExporter $exporter, Request $request): Response
{
return $this->_exportEntity($entity, $exporter, $request);

View file

@ -35,9 +35,7 @@ use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
/**
* @Route("/manufacturer")
*/
#[Route(path: '/manufacturer')]
class ManufacturerController extends BaseAdminController
{
protected string $entity_class = Manufacturer::class;
@ -48,45 +46,36 @@ class ManufacturerController extends BaseAdminController
protected ?string $parameter_class = ManufacturerParameter::class;
/**
* @Route("/{id}", name="manufacturer_delete", methods={"DELETE"})
*
* @return RedirectResponse
*/
#[Route(path: '/{id}', name: 'manufacturer_delete', methods: ['DELETE'])]
public function delete(Request $request, Manufacturer $entity, StructuralElementRecursionHelper $recursionHelper): RedirectResponse
{
return $this->_delete($request, $entity, $recursionHelper);
}
/**
* @Route("/{id}/edit/{timestamp}", requirements={"id"="\d+"}, name="manufacturer_edit")
* @Route("/{id}", requirements={"id"="\d+"})
*/
#[Route(path: '/{id}/edit/{timestamp}', requirements: ['id' => '\d+'], name: 'manufacturer_edit')]
#[Route(path: '/{id}', requirements: ['id' => '\d+'])]
public function edit(Manufacturer $entity, Request $request, EntityManagerInterface $em, ?string $timestamp = null): Response
{
return $this->_edit($entity, $request, $em, $timestamp);
}
/**
* @Route("/new", name="manufacturer_new")
* @Route("/{id}/clone", name="manufacturer_clone")
* @Route("/")
*/
#[Route(path: '/new', name: 'manufacturer_new')]
#[Route(path: '/{id}/clone', name: 'manufacturer_clone')]
#[Route(path: '/')]
public function new(Request $request, EntityManagerInterface $em, EntityImporter $importer, ?Manufacturer $entity = null): Response
{
return $this->_new($request, $em, $importer, $entity);
}
/**
* @Route("/export", name="manufacturer_export_all")
*/
#[Route(path: '/export', name: 'manufacturer_export_all')]
public function exportAll(EntityManagerInterface $em, EntityExporter $exporter, Request $request): Response
{
return $this->_exportAll($em, $exporter, $request);
}
/**
* @Route("/{id}/export", name="manufacturer_export")
*/
#[Route(path: '/{id}/export', name: 'manufacturer_export')]
public function exportEntity(Manufacturer $entity, EntityExporter $exporter, Request $request): Response
{
return $this->_exportEntity($entity, $exporter, $request);

View file

@ -36,9 +36,7 @@ use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
/**
* @Route("/measurement_unit")
*/
#[Route(path: '/measurement_unit')]
class MeasurementUnitController extends BaseAdminController
{
protected string $entity_class = MeasurementUnit::class;
@ -48,44 +46,34 @@ class MeasurementUnitController extends BaseAdminController
protected string $attachment_class = MeasurementUnitAttachment::class;
protected ?string $parameter_class = MeasurementUnitParameter::class;
/**
* @Route("/{id}", name="measurement_unit_delete", methods={"DELETE"})
*/
#[Route(path: '/{id}', name: 'measurement_unit_delete', methods: ['DELETE'])]
public function delete(Request $request, MeasurementUnit $entity, StructuralElementRecursionHelper $recursionHelper): RedirectResponse
{
return $this->_delete($request, $entity, $recursionHelper);
}
/**
* @Route("/{id}/edit/{timestamp}", requirements={"id"="\d+"}, name="measurement_unit_edit")
* @Route("/{id}", requirements={"id"="\d+"})
*/
#[Route(path: '/{id}/edit/{timestamp}', requirements: ['id' => '\d+'], name: 'measurement_unit_edit')]
#[Route(path: '/{id}', requirements: ['id' => '\d+'])]
public function edit(MeasurementUnit $entity, Request $request, EntityManagerInterface $em, ?string $timestamp = null): Response
{
return $this->_edit($entity, $request, $em, $timestamp);
}
/**
* @Route("/new", name="measurement_unit_new")
* @Route("/{id}/clone", name="measurement_unit_clone")
* @Route("/")
*/
#[Route(path: '/new', name: 'measurement_unit_new')]
#[Route(path: '/{id}/clone', name: 'measurement_unit_clone')]
#[Route(path: '/')]
public function new(Request $request, EntityManagerInterface $em, EntityImporter $importer, ?MeasurementUnit $entity = null): Response
{
return $this->_new($request, $em, $importer, $entity);
}
/**
* @Route("/export", name="measurement_unit_export_all")
*/
#[Route(path: '/export', name: 'measurement_unit_export_all')]
public function exportAll(EntityManagerInterface $em, EntityExporter $exporter, Request $request): Response
{
return $this->_exportAll($em, $exporter, $request);
}
/**
* @Route("/{id}/export", name="measurement_unit_export")
*/
#[Route(path: '/{id}/export', name: 'measurement_unit_export')]
public function exportEntity(AttachmentType $entity, EntityExporter $exporter, Request $request): Response
{
return $this->_exportEntity($entity, $exporter, $request);

View file

@ -35,9 +35,7 @@ use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
/**
* @Route("/project")
*/
#[Route(path: '/project')]
class ProjectAdminController extends BaseAdminController
{
protected string $entity_class = Project::class;
@ -47,44 +45,34 @@ class ProjectAdminController extends BaseAdminController
protected string $attachment_class = ProjectAttachment::class;
protected ?string $parameter_class = ProjectParameter::class;
/**
* @Route("/{id}", name="project_delete", methods={"DELETE"})
*/
#[Route(path: '/{id}', name: 'project_delete', methods: ['DELETE'])]
public function delete(Request $request, Project $entity, StructuralElementRecursionHelper $recursionHelper): RedirectResponse
{
return $this->_delete($request, $entity, $recursionHelper);
}
/**
* @Route("/{id}/edit/{timestamp}", requirements={"id"="\d+"}, name="project_edit")
* @Route("/{id}/edit", requirements={"id"="\d+"})
*/
#[Route(path: '/{id}/edit/{timestamp}', requirements: ['id' => '\d+'], name: 'project_edit')]
#[Route(path: '/{id}/edit', requirements: ['id' => '\d+'])]
public function edit(Project $entity, Request $request, EntityManagerInterface $em, ?string $timestamp = null): Response
{
return $this->_edit($entity, $request, $em, $timestamp);
}
/**
* @Route("/new", name="project_new")
* @Route("/{id}/clone", name="device_clone")
* @Route("/")
*/
#[Route(path: '/new', name: 'project_new')]
#[Route(path: '/{id}/clone', name: 'device_clone')]
#[Route(path: '/')]
public function new(Request $request, EntityManagerInterface $em, EntityImporter $importer, ?Project $entity = null): Response
{
return $this->_new($request, $em, $importer, $entity);
}
/**
* @Route("/export", name="project_export_all")
*/
#[Route(path: '/export', name: 'project_export_all')]
public function exportAll(EntityManagerInterface $em, EntityExporter $exporter, Request $request): Response
{
return $this->_exportAll($em, $exporter, $request);
}
/**
* @Route("/{id}/export", name="project_export")
*/
#[Route(path: '/{id}/export', name: 'project_export')]
public function exportEntity(Project $entity, EntityExporter $exporter, Request $request): Response
{
return $this->_exportEntity($entity, $exporter, $request);

View file

@ -35,9 +35,7 @@ use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
/**
* @Route("/store_location")
*/
#[Route(path: '/store_location')]
class StorelocationController extends BaseAdminController
{
protected string $entity_class = Storelocation::class;
@ -47,44 +45,34 @@ class StorelocationController extends BaseAdminController
protected string $attachment_class = StorelocationAttachment::class;
protected ?string $parameter_class = StorelocationParameter::class;
/**
* @Route("/{id}", name="store_location_delete", methods={"DELETE"})
*/
#[Route(path: '/{id}', name: 'store_location_delete', methods: ['DELETE'])]
public function delete(Request $request, Storelocation $entity, StructuralElementRecursionHelper $recursionHelper): RedirectResponse
{
return $this->_delete($request, $entity, $recursionHelper);
}
/**
* @Route("/{id}/edit/{timestamp}", requirements={"id"="\d+"}, name="store_location_edit")
* @Route("/{id}", requirements={"id"="\d+"})
*/
#[Route(path: '/{id}/edit/{timestamp}', requirements: ['id' => '\d+'], name: 'store_location_edit')]
#[Route(path: '/{id}', requirements: ['id' => '\d+'])]
public function edit(Storelocation $entity, Request $request, EntityManagerInterface $em, ?string $timestamp = null): Response
{
return $this->_edit($entity, $request, $em, $timestamp);
}
/**
* @Route("/new", name="store_location_new")
* @Route("/{id}/clone", name="store_location_clone")
* @Route("/")
*/
#[Route(path: '/new', name: 'store_location_new')]
#[Route(path: '/{id}/clone', name: 'store_location_clone')]
#[Route(path: '/')]
public function new(Request $request, EntityManagerInterface $em, EntityImporter $importer, ?Storelocation $entity = null): Response
{
return $this->_new($request, $em, $importer, $entity);
}
/**
* @Route("/export", name="store_location_export_all")
*/
#[Route(path: '/export', name: 'store_location_export_all')]
public function exportAll(EntityManagerInterface $em, EntityExporter $exporter, Request $request): Response
{
return $this->_exportAll($em, $exporter, $request);
}
/**
* @Route("/{id}/export", name="store_location_export")
*/
#[Route(path: '/{id}/export', name: 'store_location_export')]
public function exportEntity(Storelocation $entity, EntityExporter $exporter, Request $request): Response
{
return $this->_exportEntity($entity, $exporter, $request);

View file

@ -35,9 +35,7 @@ use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
/**
* @Route("/supplier")
*/
#[Route(path: '/supplier')]
class SupplierController extends BaseAdminController
{
protected string $entity_class = Supplier::class;
@ -47,44 +45,34 @@ class SupplierController extends BaseAdminController
protected string $attachment_class = SupplierAttachment::class;
protected ?string $parameter_class = SupplierParameter::class;
/**
* @Route("/{id}", name="supplier_delete", methods={"DELETE"})
*/
#[Route(path: '/{id}', name: 'supplier_delete', methods: ['DELETE'])]
public function delete(Request $request, Supplier $entity, StructuralElementRecursionHelper $recursionHelper): RedirectResponse
{
return $this->_delete($request, $entity, $recursionHelper);
}
/**
* @Route("/{id}/edit/{timestamp}", requirements={"id"="\d+"}, name="supplier_edit")
* @Route("/{id}", requirements={"id"="\d+"})
*/
#[Route(path: '/{id}/edit/{timestamp}', requirements: ['id' => '\d+'], name: 'supplier_edit')]
#[Route(path: '/{id}', requirements: ['id' => '\d+'])]
public function edit(Supplier $entity, Request $request, EntityManagerInterface $em, ?string $timestamp = null): Response
{
return $this->_edit($entity, $request, $em, $timestamp);
}
/**
* @Route("/new", name="supplier_new")
* @Route("/{id}/clone", name="supplier_clone")
* @Route("/")
*/
#[Route(path: '/new', name: 'supplier_new')]
#[Route(path: '/{id}/clone', name: 'supplier_clone')]
#[Route(path: '/')]
public function new(Request $request, EntityManagerInterface $em, EntityImporter $importer, ?Supplier $entity = null): Response
{
return $this->_new($request, $em, $importer, $entity);
}
/**
* @Route("/export", name="supplier_export_all")
*/
#[Route(path: '/export', name: 'supplier_export_all')]
public function exportAll(EntityManagerInterface $em, EntityExporter $exporter, Request $request): Response
{
return $this->_exportAll($em, $exporter, $request);
}
/**
* @Route("/{id}/export", name="supplier_export")
*/
#[Route(path: '/{id}/export', name: 'supplier_export')]
public function exportEntity(Supplier $entity, EntityExporter $exporter, Request $request): Response
{
return $this->_exportEntity($entity, $exporter, $request);

View file

@ -42,9 +42,8 @@ class AttachmentFileController extends AbstractController
{
/**
* Download the selected attachment.
*
* @Route("/attachment/{id}/download", name="attachment_download")
*/
#[Route(path: '/attachment/{id}/download', name: 'attachment_download')]
public function download(Attachment $attachment, AttachmentManager $helper): BinaryFileResponse
{
$this->denyAccessUnlessGranted('read', $attachment);
@ -72,9 +71,8 @@ class AttachmentFileController extends AbstractController
/**
* View the attachment.
*
* @Route("/attachment/{id}/view", name="attachment_view")
*/
#[Route(path: '/attachment/{id}/view', name: 'attachment_view')]
public function view(Attachment $attachment, AttachmentManager $helper): BinaryFileResponse
{
$this->denyAccessUnlessGranted('read', $attachment);
@ -100,9 +98,7 @@ class AttachmentFileController extends AbstractController
return $response;
}
/**
* @Route("/attachment/list", name="attachment_list")
*/
#[Route(path: '/attachment/list', name: 'attachment_list')]
public function attachmentsTable(Request $request, DataTableFactory $dataTableFactory, NodesListBuilder $nodesListBuilder): Response
{
$this->denyAccessUnlessGranted('@attachments.list_attachments');
@ -124,7 +120,7 @@ class AttachmentFileController extends AbstractController
return $this->render('attachment_list.html.twig', [
'datatable' => $table,
'filterForm' => $filterForm->createView(),
'filterForm' => $filterForm,
]);
}
}

View file

@ -39,9 +39,7 @@ use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
/**
* @Route("/group")
*/
#[Route(path: '/group')]
class GroupController extends BaseAdminController
{
protected string $entity_class = Group::class;
@ -51,10 +49,8 @@ class GroupController extends BaseAdminController
protected string $attachment_class = GroupAttachment::class;
protected ?string $parameter_class = GroupParameter::class;
/**
* @Route("/{id}/edit/{timestamp}", requirements={"id"="\d+"}, name="group_edit")
* @Route("/{id}/", requirements={"id"="\d+"})
*/
#[Route(path: '/{id}/edit/{timestamp}', requirements: ['id' => '\d+'], name: 'group_edit')]
#[Route(path: '/{id}/', requirements: ['id' => '\d+'])]
public function edit(Group $entity, Request $request, EntityManagerInterface $em, PermissionPresetsHelper $permissionPresetsHelper, PermissionSchemaUpdater $permissionSchemaUpdater, ?string $timestamp = null): Response
{
//Do an upgrade of the permission schema if needed (so the user can see the permissions a user get on next request (even if it was not done yet)
@ -82,35 +78,27 @@ class GroupController extends BaseAdminController
return $this->_edit($entity, $request, $em, $timestamp);
}
/**
* @Route("/new", name="group_new")
* @Route("/{id}/clone", name="group_clone")
* @Route("/")
*/
#[Route(path: '/new', name: 'group_new')]
#[Route(path: '/{id}/clone', name: 'group_clone')]
#[Route(path: '/')]
public function new(Request $request, EntityManagerInterface $em, EntityImporter $importer, ?Group $entity = null): Response
{
return $this->_new($request, $em, $importer, $entity);
}
/**
* @Route("/{id}", name="group_delete", methods={"DELETE"})
*/
#[Route(path: '/{id}', name: 'group_delete', methods: ['DELETE'])]
public function delete(Request $request, Group $entity, StructuralElementRecursionHelper $recursionHelper): RedirectResponse
{
return $this->_delete($request, $entity, $recursionHelper);
}
/**
* @Route("/export", name="group_export_all")
*/
#[Route(path: '/export', name: 'group_export_all')]
public function exportAll(EntityManagerInterface $em, EntityExporter $exporter, Request $request): Response
{
return $this->_exportAll($em, $exporter, $request);
}
/**
* @Route("/{id}/export", name="group_export")
*/
#[Route(path: '/{id}/export', name: 'group_export')]
public function exportEntity(Group $entity, EntityExporter $exporter, Request $request): Response
{
return $this->_exportEntity($entity, $exporter, $request);

View file

@ -61,9 +61,7 @@ class HomepageController extends AbstractController
return $banner;
}
/**
* @Route("/", name="homepage")
*/
#[Route(path: '/', name: 'homepage')]
public function homepage(Request $request, GitVersionInfo $versionInfo, EntityManagerInterface $entityManager): Response
{
if ($this->isGranted('@tools.lastActivity')) {

View file

@ -59,9 +59,7 @@ use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
use Symfony\Contracts\Translation\TranslatorInterface;
/**
* @Route("/label")
*/
#[Route(path: '/label')]
class LabelController extends AbstractController
{
protected LabelGenerator $labelGenerator;
@ -80,10 +78,8 @@ class LabelController extends AbstractController
$this->translator = $translator;
}
/**
* @Route("/dialog", name="label_dialog")
* @Route("/{profile}/dialog", name="label_dialog_profile")
*/
#[Route(path: '/dialog', name: 'label_dialog')]
#[Route(path: '/{profile}/dialog', name: 'label_dialog_profile')]
public function generator(Request $request, ?LabelProfile $profile = null): Response
{
$this->denyAccessUnlessGranted('@labels.create_labels');
@ -146,7 +142,7 @@ class LabelController extends AbstractController
}
}
return $this->renderForm('label_system/dialog.html.twig', [
return $this->render('label_system/dialog.html.twig', [
'form' => $form,
'pdf_data' => $pdf_data,
'filename' => $filename,

View file

@ -49,9 +49,7 @@ use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
/**
* @Route("/log")
*/
#[Route(path: '/log')]
class LogController extends AbstractController
{
protected EntityManagerInterface $entityManager;
@ -66,10 +64,9 @@ class LogController extends AbstractController
}
/**
* @Route("/", name="log_view")
*
* @return Response
*/
#[Route(path: '/', name: 'log_view')]
public function showLogs(Request $request, DataTableFactory $dataTable): Response
{
$this->denyAccessUnlessGranted('@system.show_logs');
@ -93,17 +90,17 @@ class LogController extends AbstractController
return $this->render('log_system/log_list.html.twig', [
'datatable' => $table,
'filterForm' => $filterForm->createView(),
'filterForm' => $filterForm,
]);
}
/**
* @Route("/{id}/details", name="log_details")
* @param Request $request
* @param AbstractLogEntry $logEntry
* @return Response
*/
public function logDetails(Request $request, AbstractLogEntry $logEntry, LogEntryExtraFormatter $logEntryExtraFormatter,
#[Route(path: '/{id}/details', name: 'log_details')]
public function logDetails(AbstractLogEntry $logEntry, LogEntryExtraFormatter $logEntryExtraFormatter,
LogLevelHelper $logLevelHelper, LogTargetHelper $logTargetHelper, EntityManagerInterface $entityManager): Response
{
$this->denyAccessUnlessGranted('show_details', $logEntry);
@ -123,9 +120,7 @@ class LogController extends AbstractController
]);
}
/**
* @Route("/{id}/delete", name="log_delete", methods={"DELETE"})
*/
#[Route(path: '/{id}/delete', name: 'log_delete', methods: ['DELETE'])]
public function deleteLogEntry(Request $request, AbstractLogEntry $logEntry, EntityManagerInterface $entityManager): RedirectResponse
{
$this->denyAccessUnlessGranted('delete', $logEntry);
@ -142,9 +137,7 @@ class LogController extends AbstractController
}
/**
* @Route("/undo", name="log_undo", methods={"POST"})
*/
#[Route(path: '/undo', name: 'log_undo', methods: ['POST'])]
public function undoRevertLog(Request $request, EventUndoHelper $eventUndoHelper): RedirectResponse
{
$mode = EventUndoHelper::MODE_UNDO;

View file

@ -59,9 +59,7 @@ use Symfony\Contracts\Translation\TranslatorInterface;
use function Symfony\Component\Translation\t;
/**
* @Route("/part")
*/
#[Route(path: '/part')]
class PartController extends AbstractController
{
protected PricedetailHelper $pricedetailHelper;
@ -77,11 +75,11 @@ class PartController extends AbstractController
}
/**
* @Route("/{id}/info/{timestamp}", name="part_info")
* @Route("/{id}", requirements={"id"="\d+"})
*
* @throws Exception
*/
#[Route(path: '/{id}/info/{timestamp}', name: 'part_info')]
#[Route(path: '/{id}', requirements: ['id' => '\d+'])]
public function show(Part $part, Request $request, TimeTravel $timeTravel, HistoryHelper $historyHelper,
DataTableFactory $dataTable, ParameterExtractor $parameterExtractor, PartLotWithdrawAddHelper $withdrawAddHelper, ?string $timestamp = null): Response
{
@ -129,9 +127,7 @@ class PartController extends AbstractController
);
}
/**
* @Route("/{id}/edit", name="part_edit")
*/
#[Route(path: '/{id}/edit', name: 'part_edit')]
public function edit(Part $part, Request $request, EntityManagerInterface $em, TranslatorInterface $translator,
AttachmentSubmitHandler $attachmentSubmitHandler): Response
{
@ -182,16 +178,14 @@ class PartController extends AbstractController
$this->addFlash('error', 'part.edited_flash.invalid');
}
return $this->renderForm('parts/edit/edit_part_info.html.twig',
return $this->render('parts/edit/edit_part_info.html.twig',
[
'part' => $part,
'form' => $form,
]);
}
/**
* @Route("/{id}/delete", name="part_delete", methods={"DELETE"})
*/
#[Route(path: '/{id}/delete', name: 'part_delete', methods: ['DELETE'])]
public function delete(Request $request, Part $part, EntityManagerInterface $entityManager): RedirectResponse
{
$this->denyAccessUnlessGranted('delete', $part);
@ -213,12 +207,12 @@ class PartController extends AbstractController
}
/**
* @Route("/new", name="part_new")
* @Route("/{id}/clone", name="part_clone")
* @Route("/new_build_part/{project_id}", name="part_new_build_part")
* @ParamConverter("part", options={"id" = "id"})
* @ParamConverter("project", options={"id" = "project_id"})
*/
#[Route(path: '/new', name: 'part_new')]
#[Route(path: '/{id}/clone', name: 'part_clone')]
#[Route(path: '/new_build_part/{project_id}', name: 'part_new_build_part')]
public function new(Request $request, EntityManagerInterface $em, TranslatorInterface $translator,
AttachmentSubmitHandler $attachmentSubmitHandler, ProjectBuildPartHelper $projectBuildPartHelper,
?Part $part = null, ?Project $project = null): Response
@ -328,16 +322,14 @@ class PartController extends AbstractController
$this->addFlash('error', 'part.created_flash.invalid');
}
return $this->renderForm('parts/edit/new_part.html.twig',
return $this->render('parts/edit/new_part.html.twig',
[
'part' => $new_part,
'form' => $form,
]);
}
/**
* @Route("/{id}/add_withdraw", name="part_add_withdraw", methods={"POST"})
*/
#[Route(path: '/{id}/add_withdraw', name: 'part_add_withdraw', methods: ['POST'])]
public function withdrawAddHandler(Part $part, Request $request, EntityManagerInterface $em, PartLotWithdrawAddHelper $withdrawAddHelper): Response
{
if ($this->isCsrfTokenValid('part_withraw' . $part->getID(), $request->request->get('_csfr'))) {

View file

@ -49,10 +49,10 @@ class PartImportExportController extends AbstractController
}
/**
* @Route("/parts/import", name="parts_import")
* @param Request $request
* @return Response
*/
#[Route(path: '/parts/import', name: 'parts_import')]
public function importParts(Request $request): Response
{
$this->denyAccessUnlessGranted('@parts.import');
@ -109,7 +109,7 @@ class PartImportExportController extends AbstractController
ret:
return $this->renderForm('parts/import/parts_import.html.twig', [
return $this->render('parts/import/parts_import.html.twig', [
'import_form' => $import_form,
'imported_entities' => $entities ?? [],
'import_errors' => $errors ?? [],
@ -117,9 +117,9 @@ class PartImportExportController extends AbstractController
}
/**
* @Route("/parts/export", name="parts_export", methods={"GET"})
* @return Response
*/
#[Route(path: '/parts/export', name: 'parts_export', methods: ['GET'])]
public function exportParts(Request $request, EntityExporter $entityExporter): Response
{
$ids = $request->query->get('ids', '');

View file

@ -62,9 +62,7 @@ class PartListsController extends AbstractController
$this->translator = $translator;
}
/**
* @Route("/table/action", name="table_action", methods={"POST"})
*/
#[Route(path: '/table/action', name: 'table_action', methods: ['POST'])]
public function tableAction(Request $request, PartsTableActionHandler $actionHandler): Response
{
$this->denyAccessUnlessGranted('@parts.edit');
@ -175,10 +173,9 @@ class PartListsController extends AbstractController
}
/**
* @Route("/category/{id}/parts", name="part_list_category")
*
* @return JsonResponse|Response
*/
#[Route(path: '/category/{id}/parts', name: 'part_list_category')]
public function showCategory(Category $category, Request $request): Response
{
$this->denyAccessUnlessGranted('@categories.read');
@ -197,10 +194,9 @@ class PartListsController extends AbstractController
}
/**
* @Route("/footprint/{id}/parts", name="part_list_footprint")
*
* @return JsonResponse|Response
*/
#[Route(path: '/footprint/{id}/parts', name: 'part_list_footprint')]
public function showFootprint(Footprint $footprint, Request $request): Response
{
$this->denyAccessUnlessGranted('@footprints.read');
@ -219,10 +215,9 @@ class PartListsController extends AbstractController
}
/**
* @Route("/manufacturer/{id}/parts", name="part_list_manufacturer")
*
* @return JsonResponse|Response
*/
#[Route(path: '/manufacturer/{id}/parts', name: 'part_list_manufacturer')]
public function showManufacturer(Manufacturer $manufacturer, Request $request): Response
{
$this->denyAccessUnlessGranted('@manufacturers.read');
@ -241,10 +236,9 @@ class PartListsController extends AbstractController
}
/**
* @Route("/store_location/{id}/parts", name="part_list_store_location")
*
* @return JsonResponse|Response
*/
#[Route(path: '/store_location/{id}/parts', name: 'part_list_store_location')]
public function showStorelocation(Storelocation $storelocation, Request $request): Response
{
$this->denyAccessUnlessGranted('@storelocations.read');
@ -263,10 +257,9 @@ class PartListsController extends AbstractController
}
/**
* @Route("/supplier/{id}/parts", name="part_list_supplier")
*
* @return JsonResponse|Response
*/
#[Route(path: '/supplier/{id}/parts', name: 'part_list_supplier')]
public function showSupplier(Supplier $supplier, Request $request): Response
{
$this->denyAccessUnlessGranted('@suppliers.read');
@ -285,10 +278,9 @@ class PartListsController extends AbstractController
}
/**
* @Route("/parts/by_tag/{tag}", name="part_list_tags", requirements={"tag": ".*"})
*
* @return JsonResponse|Response
*/
#[Route(path: '/parts/by_tag/{tag}', name: 'part_list_tags', requirements: ['tag' => '.*'])]
public function showTag(string $tag, Request $request): Response
{
$tag = trim($tag);
@ -330,10 +322,9 @@ class PartListsController extends AbstractController
}
/**
* @Route("/parts/search", name="parts_search")
*
* @return JsonResponse|Response
*/
#[Route(path: '/parts/search', name: 'parts_search')]
public function showSearch(Request $request, DataTableFactory $dataTable): Response
{
$searchFilter = $this->searchRequestToFilter($request);
@ -353,10 +344,9 @@ class PartListsController extends AbstractController
}
/**
* @Route("/parts", name="parts_show_all")
*
* @return Response
*/
#[Route(path: '/parts', name: 'parts_show_all')]
public function showAll(Request $request): Response
{
return $this->showListWithFilter($request,'parts/lists/all_list.html.twig');

View file

@ -47,9 +47,7 @@ use Symfony\Component\Validator\Validator\ValidatorInterface;
use function Symfony\Component\Translation\t;
/**
* @Route("/project")
*/
#[Route(path: '/project')]
class ProjectController extends AbstractController
{
private DataTableFactory $dataTableFactory;
@ -59,9 +57,7 @@ class ProjectController extends AbstractController
$this->dataTableFactory = $dataTableFactory;
}
/**
* @Route("/{id}/info", name="project_info", requirements={"id"="\d+"})
*/
#[Route(path: '/{id}/info', name: 'project_info', requirements: ['id' => '\d+'])]
public function info(Project $project, Request $request, ProjectBuildHelper $buildHelper): Response
{
$this->denyAccessUnlessGranted('read', $project);
@ -80,9 +76,7 @@ class ProjectController extends AbstractController
]);
}
/**
* @Route("/{id}/build", name="project_build", requirements={"id"="\d+"})
*/
#[Route(path: '/{id}/build', name: 'project_build', requirements: ['id' => '\d+'])]
public function build(Project $project, Request $request, ProjectBuildHelper $buildHelper, EntityManagerInterface $entityManager): Response
{
$this->denyAccessUnlessGranted('read', $project);
@ -117,7 +111,7 @@ class ProjectController extends AbstractController
$this->addFlash('error', 'project.build.flash.invalid_input');
}
return $this->renderForm('projects/build/build.html.twig', [
return $this->render('projects/build/build.html.twig', [
'buildHelper' => $buildHelper,
'project' => $project,
'build_request' => $projectBuildRequest,
@ -126,9 +120,7 @@ class ProjectController extends AbstractController
]);
}
/**
* @Route("/{id}/import_bom", name="project_import_bom", requirements={"id"="\d+"})
*/
#[Route(path: '/{id}/import_bom', name: 'project_import_bom', requirements: ['id' => '\d+'])]
public function importBOM(Request $request, EntityManagerInterface $entityManager, Project $project,
BOMImporter $BOMImporter, ValidatorInterface $validator): Response
{
@ -195,7 +187,7 @@ class ProjectController extends AbstractController
}
}
return $this->renderForm('projects/import_bom.html.twig', [
return $this->render('projects/import_bom.html.twig', [
'project' => $project,
'form' => $form,
'errors' => $errors ?? null,
@ -203,11 +195,11 @@ class ProjectController extends AbstractController
}
/**
* @Route("/add_parts", name="project_add_parts_no_id")
* @Route("/{id}/add_parts", name="project_add_parts", requirements={"id"="\d+"})
* @param Request $request
* @param Project|null $project
*/
#[Route(path: '/add_parts', name: 'project_add_parts_no_id')]
#[Route(path: '/{id}/add_parts', name: 'project_add_parts', requirements: ['id' => '\d+'])]
public function addPart(Request $request, EntityManagerInterface $entityManager, ?Project $project): Response
{
if($project) {
@ -274,7 +266,7 @@ class ProjectController extends AbstractController
return $this->redirectToRoute('project_info', ['id' => $target_project->getID()]);
}
return $this->renderForm('projects/add_parts.html.twig', [
return $this->render('projects/add_parts.html.twig', [
'project' => $project,
'form' => $form,
]);

View file

@ -51,9 +51,7 @@ use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
/**
* @Route("/scan")
*/
#[Route(path: '/scan')]
class ScanController extends AbstractController
{
protected BarcodeRedirector $barcodeParser;
@ -65,9 +63,7 @@ class ScanController extends AbstractController
$this->barcodeNormalizer = $barcodeNormalizer;
}
/**
* @Route("", name="scan_dialog")
*/
#[Route(path: '', name: 'scan_dialog')]
public function dialog(Request $request): Response
{
$this->denyAccessUnlessGranted('@tools.label_scanner');
@ -91,7 +87,7 @@ class ScanController extends AbstractController
}
}
return $this->renderForm('label_system/scanner/scanner.html.twig', [
return $this->render('label_system/scanner/scanner.html.twig', [
'form' => $form,
]);
}

View file

@ -57,9 +57,7 @@ class SecurityController extends AbstractController
$this->allow_email_pw_reset = $allow_email_pw_reset;
}
/**
* @Route("/login", name="login", methods={"GET", "POST"})
*/
#[Route(path: '/login', name: 'login', methods: ['GET', 'POST'])]
public function login(AuthenticationUtils $authenticationUtils): Response
{
// get the login error if there is one
@ -75,10 +73,9 @@ class SecurityController extends AbstractController
}
/**
* @Route("/pw_reset/request", name="pw_reset_request")
*
* @return RedirectResponse|Response
*/
#[Route(path: '/pw_reset/request', name: 'pw_reset_request')]
public function requestPwReset(PasswordResetManager $passwordReset, Request $request)
{
if (!$this->allow_email_pw_reset) {
@ -113,16 +110,15 @@ class SecurityController extends AbstractController
return $this->redirectToRoute('login');
}
return $this->renderForm('security/pw_reset_request.html.twig', [
return $this->render('security/pw_reset_request.html.twig', [
'form' => $form,
]);
}
/**
* @Route("/pw_reset/new_pw/{user}/{token}", name="pw_reset_new_pw")
*
* @return RedirectResponse|Response
*/
#[Route(path: '/pw_reset/new_pw/{user}/{token}', name: 'pw_reset_new_pw')]
public function pwResetNewPw(PasswordResetManager $passwordReset, Request $request, EntityManagerInterface $em, EventDispatcherInterface $eventDispatcher, ?string $user = null, ?string $token = null)
{
if (!$this->allow_email_pw_reset) {
@ -187,14 +183,12 @@ class SecurityController extends AbstractController
}
}
return $this->renderForm('security/pw_reset_new_pw.html.twig', [
return $this->render('security/pw_reset_new_pw.html.twig', [
'form' => $form,
]);
}
/**
* @Route("/logout", name="logout")
*/
#[Route(path: '/logout', name: 'logout')]
public function logout(): void
{
throw new RuntimeException('Will be intercepted before getting here');

View file

@ -37,10 +37,9 @@ use Symfony\Component\Routing\Annotation\Route;
use Symfony\Contracts\Translation\TranslatorInterface;
/**
* @Route("/select_api")
*
* This endpoint is used by the select2 library to dynamically load data (used in the multiselect action helper in parts lists)
*/
#[Route(path: '/select_api')]
class SelectAPIController extends AbstractController
{
private NodesListBuilder $nodesListBuilder;
@ -54,49 +53,37 @@ class SelectAPIController extends AbstractController
$this->choiceHelper = $choiceHelper;
}
/**
* @Route("/category", name="select_category")
*/
#[Route(path: '/category', name: 'select_category')]
public function category(): Response
{
return $this->getResponseForClass(Category::class);
}
/**
* @Route("/footprint", name="select_footprint")
*/
#[Route(path: '/footprint', name: 'select_footprint')]
public function footprint(): Response
{
return $this->getResponseForClass(Footprint::class, true);
}
/**
* @Route("/manufacturer", name="select_manufacturer")
*/
#[Route(path: '/manufacturer', name: 'select_manufacturer')]
public function manufacturer(): Response
{
return $this->getResponseForClass(Manufacturer::class, true);
}
/**
* @Route("/measurement_unit", name="select_measurement_unit")
*/
#[Route(path: '/measurement_unit', name: 'select_measurement_unit')]
public function measurement_unit(): Response
{
return $this->getResponseForClass(MeasurementUnit::class, true);
}
/**
* @Route("/project", name="select_project")
*/
#[Route(path: '/project', name: 'select_project')]
public function projects(): Response
{
return $this->getResponseForClass(Project::class, false);
}
/**
* @Route("/export_level", name="select_export_level")
*/
#[Route(path: '/export_level', name: 'select_export_level')]
public function exportLevel(): Response
{
$entries = [
@ -114,9 +101,9 @@ class SelectAPIController extends AbstractController
}
/**
* @Route("/label_profiles", name="select_label_profiles")
* @return Response
*/
#[Route(path: '/label_profiles', name: 'select_label_profiles')]
public function labelProfiles(EntityManagerInterface $entityManager): Response
{
$this->denyAccessUnlessGranted('@labels.create_labels');
@ -135,9 +122,9 @@ class SelectAPIController extends AbstractController
}
/**
* @Route("/label_profiles_lot", name="select_label_profiles_lot")
* @return Response
*/
#[Route(path: '/label_profiles_lot', name: 'select_label_profiles_lot')]
public function labelProfilesLot(EntityManagerInterface $entityManager): Response
{
$this->denyAccessUnlessGranted('@labels.create_labels');

View file

@ -48,9 +48,7 @@ use Symfony\Component\Routing\Annotation\Route;
class StatisticsController extends AbstractController
{
/**
* @Route("/statistics", name="statistics_view")
*/
#[Route(path: '/statistics', name: 'statistics_view')]
public function showStatistics(StatisticsHelper $helper): Response
{
$this->denyAccessUnlessGranted('@tools.statistics');

View file

@ -32,14 +32,10 @@ use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
use Symfony\Component\Routing\Generator\UrlGenerator;
/**
* @Route("/tools")
*/
#[Route(path: '/tools')]
class ToolsController extends AbstractController
{
/**
* @Route("/reel_calc", name="tools_reel_calculator")
*/
#[Route(path: '/reel_calc', name: 'tools_reel_calculator')]
public function reelCalculator(): Response
{
$this->denyAccessUnlessGranted('@tools.reel_calculator');
@ -47,9 +43,7 @@ class ToolsController extends AbstractController
return $this->render('tools/reel_calculator/reel_calculator.html.twig');
}
/**
* @Route("/server_infos", name="tools_server_infos")
*/
#[Route(path: '/server_infos', name: 'tools_server_infos')]
public function systemInfos(GitVersionInfo $versionInfo, DBInfoHelper $DBInfoHelper,
AttachmentSubmitHandler $attachmentSubmitHandler): Response
{
@ -98,9 +92,9 @@ class ToolsController extends AbstractController
}
/**
* @Route("/builtin_footprints", name="tools_builtin_footprints_viewer")
* @return Response
*/
#[Route(path: '/builtin_footprints', name: 'tools_builtin_footprints_viewer')]
public function builtInFootprintsViewer(BuiltinAttachmentsFinder $builtinAttachmentsFinder, AttachmentURLGenerator $urlGenerator): Response
{
$this->denyAccessUnlessGranted('@tools.builtin_footprints_viewer');
@ -121,9 +115,9 @@ class ToolsController extends AbstractController
}
/**
* @Route("/ic_logos", name="tools_ic_logos")
* @return Response
*/
#[Route(path: '/ic_logos', name: 'tools_ic_logos')]
public function icLogos(): Response
{
$this->denyAccessUnlessGranted('@tools.ic_logos');

View file

@ -36,9 +36,8 @@ use Symfony\Component\Routing\Annotation\Route;
/**
* This controller has the purpose to provide the data for all treeviews.
*
* @Route("/tree")
*/
#[Route(path: '/tree')]
class TreeController extends AbstractController
{
protected TreeViewGenerator $treeGenerator;
@ -48,9 +47,7 @@ class TreeController extends AbstractController
$this->treeGenerator = $treeGenerator;
}
/**
* @Route("/tools", name="tree_tools")
*/
#[Route(path: '/tools', name: 'tree_tools')]
public function tools(ToolsTreeBuilder $builder): JsonResponse
{
$tree = $builder->getTree();
@ -58,90 +55,78 @@ class TreeController extends AbstractController
return new JsonResponse($tree);
}
/**
* @Route("/category/{id}", name="tree_category")
* @Route("/categories", name="tree_category_root")
*/
#[Route(path: '/category/{id}', name: 'tree_category')]
#[Route(path: '/categories', name: 'tree_category_root')]
public function categoryTree(?Category $category = null): JsonResponse
{
if ($this->isGranted('@parts.read') && $this->isGranted('@categories.read')) {
$tree = $this->treeGenerator->getTreeView(Category::class, $category, 'list_parts_root');
} else {
return new JsonResponse("Access denied", 403);
return new JsonResponse("Access denied", \Symfony\Component\HttpFoundation\Response::HTTP_FORBIDDEN);
}
return new JsonResponse($tree);
}
/**
* @Route("/footprint/{id}", name="tree_footprint")
* @Route("/footprints", name="tree_footprint_root")
*/
#[Route(path: '/footprint/{id}', name: 'tree_footprint')]
#[Route(path: '/footprints', name: 'tree_footprint_root')]
public function footprintTree(?Footprint $footprint = null): JsonResponse
{
if ($this->isGranted('@parts.read') && $this->isGranted('@footprints.read')) {
$tree = $this->treeGenerator->getTreeView(Footprint::class, $footprint, 'list_parts_root');
} else {
return new JsonResponse("Access denied", 403);
return new JsonResponse("Access denied", \Symfony\Component\HttpFoundation\Response::HTTP_FORBIDDEN);
}
return new JsonResponse($tree);
}
/**
* @Route("/location/{id}", name="tree_location")
* @Route("/locations", name="tree_location_root")
*/
#[Route(path: '/location/{id}', name: 'tree_location')]
#[Route(path: '/locations', name: 'tree_location_root')]
public function locationTree(?Storelocation $location = null): JsonResponse
{
if ($this->isGranted('@parts.read') && $this->isGranted('@storelocations.read')) {
$tree = $this->treeGenerator->getTreeView(Storelocation::class, $location, 'list_parts_root');
} else {
return new JsonResponse("Access denied", 403);
return new JsonResponse("Access denied", \Symfony\Component\HttpFoundation\Response::HTTP_FORBIDDEN);
}
return new JsonResponse($tree);
}
/**
* @Route("/manufacturer/{id}", name="tree_manufacturer")
* @Route("/manufacturers", name="tree_manufacturer_root")
*/
#[Route(path: '/manufacturer/{id}', name: 'tree_manufacturer')]
#[Route(path: '/manufacturers', name: 'tree_manufacturer_root')]
public function manufacturerTree(?Manufacturer $manufacturer = null): JsonResponse
{
if ($this->isGranted('@parts.read') && $this->isGranted('@manufacturers.read')) {
$tree = $this->treeGenerator->getTreeView(Manufacturer::class, $manufacturer, 'list_parts_root');
} else {
return new JsonResponse("Access denied", 403);
return new JsonResponse("Access denied", \Symfony\Component\HttpFoundation\Response::HTTP_FORBIDDEN);
}
return new JsonResponse($tree);
}
/**
* @Route("/supplier/{id}", name="tree_supplier")
* @Route("/suppliers", name="tree_supplier_root")
*/
#[Route(path: '/supplier/{id}', name: 'tree_supplier')]
#[Route(path: '/suppliers', name: 'tree_supplier_root')]
public function supplierTree(?Supplier $supplier = null): JsonResponse
{
if ($this->isGranted('@parts.read') && $this->isGranted('@suppliers.read')) {
$tree = $this->treeGenerator->getTreeView(Supplier::class, $supplier, 'list_parts_root');
} else {
return new JsonResponse("Access denied", 403);
return new JsonResponse("Access denied", \Symfony\Component\HttpFoundation\Response::HTTP_FORBIDDEN);
}
return new JsonResponse($tree);
}
/**
* @Route("/device/{id}", name="tree_device")
* @Route("/devices", name="tree_device_root")
*/
#[Route(path: '/device/{id}', name: 'tree_device')]
#[Route(path: '/devices', name: 'tree_device_root')]
public function deviceTree(?Project $device = null): JsonResponse
{
if ($this->isGranted('@projects.read')) {
$tree = $this->treeGenerator->getTreeView(Project::class, $device, 'devices');
} else {
return new JsonResponse("Access denied", 403);
return new JsonResponse("Access denied", \Symfony\Component\HttpFoundation\Response::HTTP_FORBIDDEN);
}
return new JsonResponse($tree);

View file

@ -51,9 +51,8 @@ use Symfony\Component\Serializer\Serializer;
/**
* In this controller the endpoints for the typeaheads are collected.
*
* @Route("/typeahead")
*/
#[Route(path: '/typeahead')]
class TypeaheadController extends AbstractController
{
protected AttachmentURLGenerator $urlGenerator;
@ -65,9 +64,7 @@ class TypeaheadController extends AbstractController
$this->assets = $assets;
}
/**
* @Route("/builtInResources/search", name="typeahead_builtInRessources")
*/
#[Route(path: '/builtInResources/search', name: 'typeahead_builtInRessources')]
public function builtInResources(Request $request, BuiltinAttachmentsFinder $finder): JsonResponse
{
$query = $request->get('query');
@ -91,7 +88,7 @@ class TypeaheadController extends AbstractController
$serializer = new Serializer($normalizers, $encoders);
$data = $serializer->serialize($result, 'json');
return new JsonResponse($data, 200, [], true);
return new JsonResponse($data, \Symfony\Component\HttpFoundation\Response::HTTP_OK, [], true);
}
/**
@ -131,11 +128,11 @@ class TypeaheadController extends AbstractController
}
/**
* @Route("/parts/search/{query}", name="typeahead_parts")
* @param string $query
* @param EntityManagerInterface $entityManager
* @return JsonResponse
*/
#[Route(path: '/parts/search/{query}', name: 'typeahead_parts')]
public function parts(EntityManagerInterface $entityManager, PartPreviewGenerator $previewGenerator,
AttachmentURLGenerator $attachmentURLGenerator, string $query = ""): JsonResponse
{
@ -170,10 +167,10 @@ class TypeaheadController extends AbstractController
}
/**
* @Route("/parameters/{type}/search/{query}", name="typeahead_parameters", requirements={"type" = ".+"})
* @param string $query
* @return JsonResponse
*/
#[Route(path: '/parameters/{type}/search/{query}', name: 'typeahead_parameters', requirements: ['type' => '.+'])]
public function parameters(string $type, EntityManagerInterface $entityManager, string $query = ""): JsonResponse
{
$class = $this->typeToParameterClass($type);
@ -190,9 +187,7 @@ class TypeaheadController extends AbstractController
return new JsonResponse($data);
}
/**
* @Route("/tags/search/{query}", name="typeahead_tags", requirements={"query"= ".+"})
*/
#[Route(path: '/tags/search/{query}', name: 'typeahead_tags', requirements: ['query' => '.+'])]
public function tags(string $query, TagFinder $finder): JsonResponse
{
$this->denyAccessUnlessGranted('@parts.read');
@ -209,6 +204,6 @@ class TypeaheadController extends AbstractController
$serializer = new Serializer($normalizers, $encoders);
$data = $serializer->serialize($array, 'json');
return new JsonResponse($data, 200, [], true);
return new JsonResponse($data, \Symfony\Component\HttpFoundation\Response::HTTP_OK, [], true);
}
}

View file

@ -46,10 +46,7 @@ use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
/**
* @Route("/user")
* Class UserController
*/
#[Route(path: '/user')]
class UserController extends AdminPages\BaseAdminController
{
protected string $entity_class = User::class;
@ -76,11 +73,11 @@ class UserController extends AdminPages\BaseAdminController
}
/**
* @Route("/{id}/edit/{timestamp}", requirements={"id"="\d+"}, name="user_edit")
* @Route("/{id}/", requirements={"id"="\d+"})
*
* @throws Exception
*/
#[Route(path: '/{id}/edit/{timestamp}', requirements: ['id' => '\d+'], name: 'user_edit')]
#[Route(path: '/{id}/', requirements: ['id' => '\d+'])]
public function edit(User $entity, Request $request, EntityManagerInterface $em, PermissionPresetsHelper $permissionPresetsHelper, PermissionSchemaUpdater $permissionSchemaUpdater, ?string $timestamp = null): Response
{
//Do an upgrade of the permission schema if needed (so the user can see the permissions a user get on next request (even if it was not done yet)
@ -148,19 +145,15 @@ class UserController extends AdminPages\BaseAdminController
return true;
}
/**
* @Route("/new", name="user_new")
* @Route("/{id}/clone", name="user_clone")
* @Route("/")
*/
#[Route(path: '/new', name: 'user_new')]
#[Route(path: '/{id}/clone', name: 'user_clone')]
#[Route(path: '/')]
public function new(Request $request, EntityManagerInterface $em, EntityImporter $importer, ?User $entity = null): Response
{
return $this->_new($request, $em, $importer, $entity);
}
/**
* @Route("/{id}", name="user_delete", methods={"DELETE"}, requirements={"id"="\d+"})
*/
#[Route(path: '/{id}', name: 'user_delete', methods: ['DELETE'], requirements: ['id' => '\d+'])]
public function delete(Request $request, User $entity, StructuralElementRecursionHelper $recursionHelper): RedirectResponse
{
if (User::ID_ANONYMOUS === $entity->getID()) {
@ -170,26 +163,20 @@ class UserController extends AdminPages\BaseAdminController
return $this->_delete($request, $entity, $recursionHelper);
}
/**
* @Route("/export", name="user_export_all")
*/
#[Route(path: '/export', name: 'user_export_all')]
public function exportAll(EntityManagerInterface $em, EntityExporter $exporter, Request $request): Response
{
return $this->_exportAll($em, $exporter, $request);
}
/**
* @Route("/{id}/export", name="user_export")
*/
#[Route(path: '/{id}/export', name: 'user_export')]
public function exportEntity(User $entity, EntityExporter $exporter, Request $request): Response
{
return $this->_exportEntity($entity, $exporter, $request);
}
/**
* @Route("/info", name="user_info_self")
* @Route("/{id}/info", name="user_info")
*/
#[Route(path: '/info', name: 'user_info_self')]
#[Route(path: '/{id}/info', name: 'user_info')]
public function userInfo(?User $user, Packages $packages, Request $request, DataTableFactory $dataTableFactory): Response
{
//If no user id was passed, then we show info about the current user
@ -229,7 +216,7 @@ class UserController extends AdminPages\BaseAdminController
'data' => $user,
]);
return $this->renderForm('users/user_info.html.twig', [
return $this->render('users/user_info.html.twig', [
'user' => $user,
'form' => $builder->getForm(),
'datatable' => $table ?? null,

View file

@ -51,9 +51,7 @@ use Symfony\Component\Routing\Annotation\Route;
use Symfony\Component\Security\Core\Validator\Constraints\UserPassword;
use Symfony\Component\Validator\Constraints\Length;
/**
* @Route("/user")
*/
#[Route(path: '/user')]
class UserSettingsController extends AbstractController
{
protected bool $demo_mode;
@ -69,9 +67,7 @@ class UserSettingsController extends AbstractController
$this->eventDispatcher = $eventDispatcher;
}
/**
* @Route("/2fa_backup_codes", name="show_backup_codes")
*/
#[Route(path: '/2fa_backup_codes', name: 'show_backup_codes')]
public function showBackupCodes()
{
$user = $this->getUser();
@ -98,9 +94,7 @@ class UserSettingsController extends AbstractController
]);
}
/**
* @Route("/u2f_delete", name="u2f_delete", methods={"DELETE"})
*/
#[Route(path: '/u2f_delete', name: 'u2f_delete', methods: ['DELETE'])]
public function removeU2FToken(Request $request, EntityManagerInterface $entityManager, BackupCodeManager $backupCodeManager): RedirectResponse
{
if ($this->demo_mode) {
@ -181,10 +175,9 @@ class UserSettingsController extends AbstractController
}
/**
* @Route("/invalidate_trustedDevices", name="tfa_trustedDevices_invalidate", methods={"DELETE"})
*
* @return RuntimeException|RedirectResponse
*/
#[Route(path: '/invalidate_trustedDevices', name: 'tfa_trustedDevices_invalidate', methods: ['DELETE'])]
public function resetTrustedDevices(Request $request, EntityManagerInterface $entityManager)
{
if ($this->demo_mode) {
@ -219,10 +212,9 @@ class UserSettingsController extends AbstractController
}
/**
* @Route("/settings", name="user_settings")
*
* @return RedirectResponse|Response
*/
#[Route(path: '/settings', name: 'user_settings')]
public function userSettings(Request $request, EntityManagerInterface $em, UserPasswordHasherInterface $passwordEncoder, GoogleAuthenticator $googleAuthenticator, BackupCodeManager $backupCodeManager, FormFactoryInterface $formFactory, UserAvatarHelper $avatarHelper)
{
/** @var User $user */
@ -397,7 +389,7 @@ class UserSettingsController extends AbstractController
* Output both forms
*****************************/
return $this->renderForm('users/user_settings.html.twig', [
return $this->render('users/user_settings.html.twig', [
'user' => $user,
'settings_form' => $form,
'pw_form' => $pw_form,

View file

@ -40,9 +40,7 @@ class WebauthnKeyRegistrationController extends AbstractController
$this->demo_mode = $demo_mode;
}
/**
* @Route("/webauthn/register", name="webauthn_register")
*/
#[Route(path: '/webauthn/register', name: 'webauthn_register')]
public function register(Request $request, TFAWebauthnRegistrationHelper $registrationHelper, EntityManagerInterface $em)
{
//When user change its settings, he should be logged in fully.