From 482c494034acffe6403368e1e539324ce6c2daa7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julien=20Fastr=C3=A9?= Date: Tue, 12 Sep 2023 11:24:50 +0200 Subject: [PATCH 001/136] Webdav: fully implements the controller and response The controller is tested from real request scraped from apache mod_dav implementation. The requests were scraped using a wireshark-like tool. Those requests have been adapted to suit to our xml. --- composer.json | 1 + .../Controller/WebdavController.php | 232 ++++++++++ .../Dav/Exception/ParseRequestException.php | 14 + .../Dav/Request/PropfindRequestAnalyzer.php | 104 +++++ .../Dav/Response/DavResponse.php | 24 ++ .../views/Webdav/directory.html.twig | 12 + .../views/Webdav/directory_propfind.xml.twig | 81 ++++ .../Resources/views/Webdav/doc_props.xml.twig | 53 +++ .../views/Webdav/open_in_browser.html.twig | 7 + .../Service/StoredObjectManager.php | 72 ++++ .../Service/StoredObjectManagerInterface.php | 4 + .../Tests/Controller/WebdavControllerTest.php | 408 ++++++++++++++++++ .../Request/PropfindRequestAnalyzerTest.php | 134 ++++++ utils/http/docstore/dav.http | 16 + utils/http/docstore/http-client.env.json | 6 + 15 files changed, 1168 insertions(+) create mode 100644 src/Bundle/ChillDocStoreBundle/Controller/WebdavController.php create mode 100644 src/Bundle/ChillDocStoreBundle/Dav/Exception/ParseRequestException.php create mode 100644 src/Bundle/ChillDocStoreBundle/Dav/Request/PropfindRequestAnalyzer.php create mode 100644 src/Bundle/ChillDocStoreBundle/Dav/Response/DavResponse.php create mode 100644 src/Bundle/ChillDocStoreBundle/Resources/views/Webdav/directory.html.twig create mode 100644 src/Bundle/ChillDocStoreBundle/Resources/views/Webdav/directory_propfind.xml.twig create mode 100644 src/Bundle/ChillDocStoreBundle/Resources/views/Webdav/doc_props.xml.twig create mode 100644 src/Bundle/ChillDocStoreBundle/Resources/views/Webdav/open_in_browser.html.twig create mode 100644 src/Bundle/ChillDocStoreBundle/Tests/Controller/WebdavControllerTest.php create mode 100644 src/Bundle/ChillDocStoreBundle/Tests/Dav/Request/PropfindRequestAnalyzerTest.php create mode 100644 utils/http/docstore/dav.http create mode 100644 utils/http/docstore/http-client.env.json diff --git a/composer.json b/composer.json index 3195f732b..ffe87edb1 100644 --- a/composer.json +++ b/composer.json @@ -9,6 +9,7 @@ ], "require": { "php": "^8.2", + "ext-dom": "*", "ext-json": "*", "ext-openssl": "*", "ext-redis": "*", diff --git a/src/Bundle/ChillDocStoreBundle/Controller/WebdavController.php b/src/Bundle/ChillDocStoreBundle/Controller/WebdavController.php new file mode 100644 index 000000000..30a7e4eb2 --- /dev/null +++ b/src/Bundle/ChillDocStoreBundle/Controller/WebdavController.php @@ -0,0 +1,232 @@ +requestAnalyzer = new PropfindRequestAnalyzer(); + } + + /** + * @Route("/dav/open/{uuid}") + */ + public function open(StoredObject $storedObject): Response + { + /*$accessToken = $this->JWTTokenManager->createFromPayload($this->security->getUser(), [ + 'UserCanWrite' => true, + 'UserCanAttend' => true, + 'UserCanPresent' => true, + 'fileId' => $storedObject->getUuid(), + ]);*/ + + return new DavResponse($this->engine->render('@ChillDocStore/Webdav/open_in_browser.html.twig', [ + 'stored_object' => $storedObject, 'access_token' => '', + ])); + } + + /** + * @Route("/dav/get/{uuid}/", methods={"GET", "HEAD"}, name="chill_docstore_dav_directory_get") + */ + public function getDirectory(StoredObject $storedObject): Response + { + return new DavResponse( + $this->engine->render('@ChillDocStore/Webdav/directory.html.twig', [ + 'stored_object' => $storedObject + ]) + ); + } + + /** + * @Route("/dav/get/{uuid}/", methods={"OPTIONS"}) + */ + public function optionsDirectory(StoredObject $storedObject): Response + { + $response = (new DavResponse("")) + ->setEtag($this->storedObjectManager->etag($storedObject)) + ; + + $response->headers->add(['Allow' => 'OPTIONS,GET,HEAD,DELETE,PROPFIND,PUT,PROPPATCH,COPY,MOVE,REPORT,PATCH,POST,TRACE']); + + return $response; + } + + /** + * @Route("/dav/get/{uuid}/", methods={"PROPFIND"}) + */ + public function propfindDirectory(StoredObject $storedObject, Request $request): Response + { + $depth = $request->headers->get('depth'); + + if ("0" !== $depth && "1" !== $depth) { + throw new BadRequestHttpException("only 1 and 0 are accepted for Depth header"); + } + + $content = $request->getContent(); + $xml = new \DOMDocument(); + $xml->loadXML($content); + + $properties = $this->requestAnalyzer->getRequestedProperties($xml); + $requested = array_keys(array_filter($properties, fn ($item) => true === $item)); + + if ( + in_array('lastModified', $requested, true) + || in_array('etag', $requested, true) + ) { + $lastModified = $this->storedObjectManager->getLastModified($storedObject); + $etag = $this->storedObjectManager->etag($storedObject); + + } + if (in_array('contentLength', $requested, true)) { + $length = $this->storedObjectManager->getContentLength($storedObject); + } + + $response = new DavResponse( + $this->engine->render('@ChillDocStore/Webdav/directory_propfind.xml.twig', [ + 'stored_object' => $storedObject, + 'properties' => $properties, + 'last_modified' => $lastModified ?? null, + 'etag' => $etag ?? null, + 'content_length' => $length ?? null, + 'depth' => (int) $depth + ]), + 207 + ); + + $response->headers->add([ + 'Content-Type' => 'text/xml' + ]); + + return $response; + } + + /** + * @Route("/dav/get/{uuid}/d", name="chill_docstore_dav_document_get", methods={"GET"}) + */ + public function getDocument(StoredObject $storedObject): Response + { + return (new DavResponse($this->storedObjectManager->read($storedObject))) + ->setEtag($this->storedObjectManager->etag($storedObject)); + } + + /** + * @Route("/dav/get/{uuid}/d", methods={"HEAD"}) + */ + public function headDocument(StoredObject $storedObject): Response + { + $response = new DavResponse(""); + + $response->headers->add( + [ + 'Content-Length' => $this->storedObjectManager->getContentLength($storedObject), + 'Content-Type' => $storedObject->getType(), + 'Etag' => $this->storedObjectManager->etag($storedObject) + ] + ); + + return $response; + } + + /** + * @Route("/dav/get/{uuid}/d", methods={"OPTIONS"}) + */ + public function optionsDocument(StoredObject $storedObject): Response + { + $response = (new DavResponse("")) + ->setEtag($this->storedObjectManager->etag($storedObject)) + ; + + $response->headers->add(['Allow' => /*sprintf( + '%s, %s, %s, %s, %s', + Request::METHOD_OPTIONS, + Request::METHOD_GET, + Request::METHOD_HEAD, + Request::METHOD_PUT, + 'PROPFIND' + ) */ 'OPTIONS,GET,HEAD,DELETE,PROPFIND,PUT,PROPPATCH,COPY,MOVE,REPORT,PATCH,POST,TRACE' + ]); + + return $response; + } + + /** + * @Route("/dav/get/{uuid}/d", methods={"PROPFIND"}) + */ + public function propfindDocument(StoredObject $storedObject, Request $request): Response + { + $content = $request->getContent(); + $xml = new \DOMDocument(); + $xml->loadXML($content); + + $properties = $this->requestAnalyzer->getRequestedProperties($xml); + $requested = array_keys(array_filter($properties, fn ($item) => true === $item)); + + if ( + in_array('lastModified', $requested, true) + || in_array('etag', $requested, true) + ) { + $lastModified = $this->storedObjectManager->getLastModified($storedObject); + $etag = $this->storedObjectManager->etag($storedObject); + } + if (in_array('contentLength', $requested, true)) { + $length = $this->storedObjectManager->getContentLength($storedObject); + } + + $response = new DavResponse( + $this->engine->render( + '@ChillDocStore/Webdav/doc_props.xml.twig', + [ + 'stored_object' => $storedObject, + 'properties' => $properties, + 'etag' => $etag ?? null, + 'last_modified' => $lastModified ?? null, + 'content_length' => $length ?? null, + ] + ), + 207 + ); + + $response + ->headers->add([ + 'Content-Type' => 'text/xml' + ]); + + return $response; + } + + /** + * @Route("/dav/get/{uuid}/d", methods={"PUT"}) + */ + public function putDocument(StoredObject $storedObject, Request $request): Response + { + $this->storedObjectManager->write($storedObject, $request->getContent()); + + return (new DavResponse("", Response::HTTP_NO_CONTENT)); + } +} diff --git a/src/Bundle/ChillDocStoreBundle/Dav/Exception/ParseRequestException.php b/src/Bundle/ChillDocStoreBundle/Dav/Exception/ParseRequestException.php new file mode 100644 index 000000000..0c740be17 --- /dev/null +++ b/src/Bundle/ChillDocStoreBundle/Dav/Exception/ParseRequestException.php @@ -0,0 +1,14 @@ +} + */ +class PropfindRequestAnalyzer +{ + private const KNOWN_PROPS = [ + 'resourceType', + 'contentType', + 'lastModified', + 'creationDate', + 'contentLength', + 'etag', + 'supportedLock', + ]; + + /** + * @return davProperties + */ + public function getRequestedProperties(\DOMDocument $request): array + { + $propfinds = $request->getElementsByTagNameNS('DAV:', 'propfind'); + + if (0 === $propfinds->count()) { + throw new ParseRequestException("any propfind element found"); + } + + if (1 < $propfinds->count()) { + throw new ParseRequestException("too much propfind element found"); + } + + $propfind = $propfinds->item(0); + + if (0 === $propfind->childNodes->count()) { + throw new ParseRequestException("no element under propfind"); + } + + $unknows = []; + $props = []; + + foreach ($propfind->childNodes->getIterator() as $prop) { + /** @var \DOMNode $prop */ + if (XML_ELEMENT_NODE !== $prop->nodeType) { + continue; + } + + if ('propname' === $prop->nodeName) { + return $this->baseProps(true); + } + + foreach ($prop->childNodes->getIterator() as $getProp) { + if (XML_ELEMENT_NODE !== $getProp->nodeType) { + continue; + } + + if ('DAV:' !== $getProp->lookupNamespaceURI(null)) { + $unknows[] = ['xmlns' => $getProp->lookupNamespaceURI(null), 'prop' => $getProp->nodeName]; + continue; + } + + $props[] = match ($getProp->nodeName) { + 'resourcetype' => 'resourceType', + 'getcontenttype' => 'contentType', + 'getlastmodified' => 'lastModified', + default => '', + }; + } + + } + + $props = array_filter(array_values($props), fn (string $item) => '' !== $item); + + return [...$this->baseProps(false), ...array_combine($props, array_fill(0, count($props), true)), 'unknowns' => $unknows]; + } + + /** + * @return davProperties + */ + private function baseProps(bool $default = false): array + { + return + [ + ...array_combine( + self::KNOWN_PROPS, + array_fill(0, count(self::KNOWN_PROPS), $default) + ), + 'unknowns' => [] + ]; + } +} diff --git a/src/Bundle/ChillDocStoreBundle/Dav/Response/DavResponse.php b/src/Bundle/ChillDocStoreBundle/Dav/Response/DavResponse.php new file mode 100644 index 000000000..32332d20a --- /dev/null +++ b/src/Bundle/ChillDocStoreBundle/Dav/Response/DavResponse.php @@ -0,0 +1,24 @@ +headers->add(['DAV' => '1']); + } +} diff --git a/src/Bundle/ChillDocStoreBundle/Resources/views/Webdav/directory.html.twig b/src/Bundle/ChillDocStoreBundle/Resources/views/Webdav/directory.html.twig new file mode 100644 index 000000000..5a95e894a --- /dev/null +++ b/src/Bundle/ChillDocStoreBundle/Resources/views/Webdav/directory.html.twig @@ -0,0 +1,12 @@ + + + + + Directory for {{ stored_object.uuid }} + + + + + diff --git a/src/Bundle/ChillDocStoreBundle/Resources/views/Webdav/directory_propfind.xml.twig b/src/Bundle/ChillDocStoreBundle/Resources/views/Webdav/directory_propfind.xml.twig new file mode 100644 index 000000000..6edbb76e0 --- /dev/null +++ b/src/Bundle/ChillDocStoreBundle/Resources/views/Webdav/directory_propfind.xml.twig @@ -0,0 +1,81 @@ + + + + {{ path('chill_docstore_dav_directory_get', { 'uuid': stored_object.uuid } ) }} + {% if properties.resourceType or properties.contentType %} + + + {% if properties.resourceType %} + + {% endif %} + {% if properties.contentType %} + httpd/unix-directory + {% endif %} + + HTTP/1.1 200 OK + + {% endif %} + {% if properties.unknowns|length > 0 %} + + {% for k,u in properties.unknowns %} + + <{{ 'ns'~ k ~ ':' ~ u.prop }} /> + + {% endfor %} + HTTP/1.1 404 Not Found + + {% endif %} + + {% if depth == 1 %} + + {{ path('chill_docstore_dav_document_get', {'uuid': stored_object.uuid}) }} + {% if properties.lastModified or properties.contentLength or properties.resourceType or properties.etag or properties.contentType or properties.creationDate %} + + + {% if properties.resourceType %} + + {% endif %} + {% if properties.creationDate %} + + {% endif %} + {% if properties.lastModified %} + {% if last_modified is not same as null %} + {{ last_modified.format(constant('DATE_RSS')) }} + {% else %} + + {% endif %} + {% endif %} + {% if properties.contentLength %} + {% if content_length is not same as null %} + {{ content_length }} + {% else %} + + {% endif %} + {% endif %} + {% if properties.etag %} + {% if etag is not same as null %} + "{{ etag }}" + {% else %} + + {% endif %} + {% endif %} + {% if properties.contentType %} + {{ stored_object.type }} + {% endif %} + + HTTP/1.1 200 OK + + {% endif %} + {% if properties.unknowns|length > 0 %} + + {% for k,u in properties.unknowns %} + + <{{ 'ns'~ k ~ ':' ~ u.prop }} /> + + {% endfor %} + HTTP/1.1 404 Not Found + + {% endif %} + + {% endif %} + diff --git a/src/Bundle/ChillDocStoreBundle/Resources/views/Webdav/doc_props.xml.twig b/src/Bundle/ChillDocStoreBundle/Resources/views/Webdav/doc_props.xml.twig new file mode 100644 index 000000000..3d320295b --- /dev/null +++ b/src/Bundle/ChillDocStoreBundle/Resources/views/Webdav/doc_props.xml.twig @@ -0,0 +1,53 @@ + + + + {{ path('chill_docstore_dav_document_get', {'uuid': stored_object.uuid}) }} + {% if properties.lastModified or properties.contentLength or properties.resourceType or properties.etag or properties.contentType or properties.creationDate %} + + + {% if properties.resourceType %} + + {% endif %} + {% if properties.creationDate %} + + {% endif %} + {% if properties.lastModified %} + {% if last_modified is not same as null %} + {{ last_modified.format(constant('DATE_RSS')) }} + {% else %} + + {% endif %} + {% endif %} + {% if properties.contentLength %} + {% if content_length is not same as null %} + {{ content_length }} + {% else %} + + {% endif %} + {% endif %} + {% if properties.etag %} + {% if etag is not same as null %} + "{{ etag }}" + {% else %} + + {% endif %} + {% endif %} + {% if properties.contentType %} + {{ stored_object.type }} + {% endif %} + + HTTP/1.1 200 OK + + {% endif %} + {% if properties.unknowns|length > 0 %} + + {% for k,u in properties.unknowns %} + + <{{ 'ns'~ k ~ ':' ~ u.prop }} /> + + {% endfor %} + HTTP/1.1 404 Not Found + + {% endif %} + + diff --git a/src/Bundle/ChillDocStoreBundle/Resources/views/Webdav/open_in_browser.html.twig b/src/Bundle/ChillDocStoreBundle/Resources/views/Webdav/open_in_browser.html.twig new file mode 100644 index 000000000..37d137047 --- /dev/null +++ b/src/Bundle/ChillDocStoreBundle/Resources/views/Webdav/open_in_browser.html.twig @@ -0,0 +1,7 @@ +{% extends '@ChillMain/layout.html.twig' %} + +{% block content %} +

document uuid: {{ stored_object.uuid }}

+

{{ absolute_url(path('chill_docstore_dav_document_get', {'uuid': stored_object.uuid })) }}

+Open document +{% endblock %} diff --git a/src/Bundle/ChillDocStoreBundle/Service/StoredObjectManager.php b/src/Bundle/ChillDocStoreBundle/Service/StoredObjectManager.php index b55074627..57d8cb3c5 100644 --- a/src/Bundle/ChillDocStoreBundle/Service/StoredObjectManager.php +++ b/src/Bundle/ChillDocStoreBundle/Service/StoredObjectManager.php @@ -57,6 +57,62 @@ final class StoredObjectManager implements StoredObjectManagerInterface return $this->extractLastModifiedFromResponse($response); } + public function getContentLength(StoredObject $document): int + { + if ([] === $document->getKeyInfos()) { + if ($this->hasCache($document)) { + $response = $this->getResponseFromCache($document); + } else { + try { + $response = $this + ->client + ->request( + Request::METHOD_HEAD, + $this + ->tempUrlGenerator + ->generate( + Request::METHOD_HEAD, + $document->getFilename() + ) + ->url + ); + } catch (TransportExceptionInterface $exception) { + throw StoredObjectManagerException::errorDuringHttpRequest($exception); + } + } + + return $this->extractContentLengthFromResponse($response); + } + + return strlen($this->read($document)); + } + + public function etag(StoredObject $document): string + { + if ($this->hasCache($document)) { + $response = $this->getResponseFromCache($document); + } else { + try { + $response = $this + ->client + ->request( + Request::METHOD_HEAD, + $this + ->tempUrlGenerator + ->generate( + Request::METHOD_HEAD, + $document->getFilename() + ) + ->url + ); + } catch (TransportExceptionInterface $exception) { + throw StoredObjectManagerException::errorDuringHttpRequest($exception); + } + } + + return $this->extractEtagFromResponse($response, $document); + } + public function read(StoredObject $document): string { $response = $this->getResponseFromCache($document); @@ -146,6 +202,22 @@ final class StoredObjectManager implements StoredObjectManagerInterface return $date; } + private function extractContentLengthFromResponse(ResponseInterface $response): int + { + return (int) ($response->getHeaders()['content-length'] ?? ['0'])[0]; + } + + private function extractEtagFromResponse(ResponseInterface $response, StoredObject $storedObject): ?string + { + $etag = ($response->getHeaders()['etag'] ?? [''])[0]; + + if ('' === $etag) { + return null; + } + + return $etag; + } + private function fillCache(StoredObject $document): void { try { diff --git a/src/Bundle/ChillDocStoreBundle/Service/StoredObjectManagerInterface.php b/src/Bundle/ChillDocStoreBundle/Service/StoredObjectManagerInterface.php index cee6586ea..d0865e733 100644 --- a/src/Bundle/ChillDocStoreBundle/Service/StoredObjectManagerInterface.php +++ b/src/Bundle/ChillDocStoreBundle/Service/StoredObjectManagerInterface.php @@ -17,6 +17,8 @@ interface StoredObjectManagerInterface { public function getLastModified(StoredObject $document): \DateTimeInterface; + public function getContentLength(StoredObject $document): int; + /** * Get the content of a StoredObject. * @@ -33,4 +35,6 @@ interface StoredObjectManagerInterface * @param $clearContent The content to store in clear */ public function write(StoredObject $document, string $clearContent): void; + + public function etag(StoredObject $document): string; } diff --git a/src/Bundle/ChillDocStoreBundle/Tests/Controller/WebdavControllerTest.php b/src/Bundle/ChillDocStoreBundle/Tests/Controller/WebdavControllerTest.php new file mode 100644 index 000000000..959e9ed71 --- /dev/null +++ b/src/Bundle/ChillDocStoreBundle/Tests/Controller/WebdavControllerTest.php @@ -0,0 +1,408 @@ +engine = self::$container->get(\Twig\Environment::class); + } + + private function buildController(): WebdavController + { + $storedObjectManager = new MockedStoredObjectManager(); + + return new WebdavController($this->engine, $storedObjectManager); + } + + private function buildDocument(): StoredObject + { + $object = (new StoredObject()) + ->setType('application/vnd.oasis.opendocument.text'); + + $reflectionObject = new \ReflectionClass($object); + $reflectionObjectUuid = $reflectionObject->getProperty('uuid'); + + $reflectionObjectUuid->setValue($object, Uuid::fromString('716e6688-4579-4938-acf3-c4ab5856803b')); + + return $object; + } + + public function testGet(): void + { + $controller = $this->buildController(); + + $response = $controller->getDocument($this->buildDocument()); + + self::assertEquals(200, $response->getStatusCode()); + self::assertEquals('abcde', $response->getContent()); + self::assertContains('etag', $response->headers->keys()); + self::assertStringContainsString('ab56b4', $response->headers->get('etag')); + } + + public function testOptionsOnDocument(): void + { + $controller = $this->buildController(); + + $response = $controller->optionsDocument($this->buildDocument()); + + self::assertEquals(200, $response->getStatusCode()); + self::assertContains('allow', $response->headers->keys()); + + foreach (explode(',', 'OPTIONS,GET,HEAD,POST,DELETE,TRACE,PROPFIND,PROPPATCH,COPY,MOVE,PUT') as $method) { + self::assertStringContainsString($method, $response->headers->get('allow')); + } + + self::assertContains('dav', $response->headers->keys()); + self::assertStringContainsString('1', $response->headers->get('dav')); + } + + public function testOptionsOnDirectory(): void + { + $controller = $this->buildController(); + + $response = $controller->optionsDirectory($this->buildDocument()); + + self::assertEquals(200, $response->getStatusCode()); + self::assertContains('allow', $response->headers->keys()); + + foreach (explode(',', 'OPTIONS,GET,HEAD,POST,DELETE,TRACE,PROPFIND,PROPPATCH,COPY,MOVE,PUT') as $method) { + self::assertStringContainsString($method, $response->headers->get('allow')); + } + + self::assertContains('dav', $response->headers->keys()); + self::assertStringContainsString('1', $response->headers->get('dav')); + } + + /** + * @dataProvider generateDataPropfindDocument + */ + public function testPropfindDocument(string $requestContent, int $expectedStatusCode, string $expectedXmlResponse, string $message): void + { + $controller = $this->buildController(); + + $request = new Request([], [], [], [], [], [], $requestContent); + $request->setMethod('PROPFIND'); + $response = $controller->propfindDocument($this->buildDocument(), $request); + + self::assertEquals($expectedStatusCode, $response->getStatusCode()); + self::assertContains('content-type', $response->headers->keys()); + self::assertStringContainsString('text/xml', $response->headers->get('content-type')); + self::assertTrue((new \DOMDocument())->loadXML($response->getContent()), $message . " test that the xml response is a valid xml"); + self::assertXmlStringEqualsXmlString($expectedXmlResponse, $response->getContent(), $message); + } + + /** + * @dataProvider generateDataPropfindDirectory + */ + public function testPropfindDirectory(string $requestContent, int $expectedStatusCode, string $expectedXmlResponse, string $message): void + { + $controller = $this->buildController(); + + $request = new Request([], [], [], [], [], [], $requestContent); + $request->setMethod('PROPFIND'); + $request->headers->add(["Depth" => "0"]); + $response = $controller->propfindDirectory($this->buildDocument(), $request); + + self::assertEquals($expectedStatusCode, $response->getStatusCode()); + self::assertContains('content-type', $response->headers->keys()); + self::assertStringContainsString('text/xml', $response->headers->get('content-type')); + self::assertTrue((new \DOMDocument())->loadXML($response->getContent()), $message . " test that the xml response is a valid xml"); + self::assertXmlStringEqualsXmlString($expectedXmlResponse, $response->getContent(), $message); + } + + public function testHeadDocument(): void + { + $controller = $this->buildController(); + $response = $controller->headDocument($this->buildDocument()); + + self::assertEquals(200, $response->getStatusCode()); + self::assertContains('content-length', $response->headers->keys()); + self::assertContains('content-type', $response->headers->keys()); + self::assertContains('etag', $response->headers->keys()); + self::assertEquals('ab56b4d92b40713acc5af89985d4b786', $response->headers->get('etag')); + self::assertEquals('application/vnd.oasis.opendocument.text', $response->headers->get('content-type')); + self::assertEquals(5, $response->headers->get('content-length')); + } + + public static function generateDataPropfindDocument(): iterable + { + $content = + <<<'XML' + + + XML; + + $response = + <<<'XML' + + + + /dav/get/716e6688-4579-4938-acf3-c4ab5856803b/d + + + + application/vnd.oasis.opendocument.text + + HTTP/1.1 200 OK + + + + + + HTTP/1.1 404 Not Found + + + + XML; + + yield [$content, 207, $response, "get IsReadOnly and contenttype from server"]; + + $content = + <<<'XML' + + + + + + + XML; + + $response = + <<<'XML' + + + + /dav/get/716e6688-4579-4938-acf3-c4ab5856803b/d + + + + + HTTP/1.1 404 Not Found + + + + XML; + + yield [$content, 207, $response, "get property IsReadOnly"]; + + yield [ + <<<'XML' + + + + + + + XML, + 207, + <<<'XML' + + + + /dav/get/716e6688-4579-4938-acf3-c4ab5856803b/d + + + + + HTTP/1.1 404 Not Found + + + + XML, + "Test requesting an unknow property" + ]; + + yield [ + <<<'XML' + + + + + + + XML, + 207, + <<<'XML' + + + + /dav/get/716e6688-4579-4938-acf3-c4ab5856803b/d + + + + Wed, 13 Sep 2023 14:15:00 +0200 + + HTTP/1.1 200 OK + + + + XML, + "test getting the last modified date" + ]; + + yield [ + <<<'XML' + + + + + XML, + 207, + <<<'XML' + + + + /dav/get/716e6688-4579-4938-acf3-c4ab5856803b/d + + + + + Wed, 13 Sep 2023 14:15:00 +0200 + + 5 + + "ab56b4d92b40713acc5af89985d4b786" + + + application/vnd.oasis.opendocument.text + + HTTP/1.1 200 OK + + + + XML, + "test finding all properties" + ]; + } + + public static function generateDataPropfindDirectory(): iterable + { + yield [ + <<<'XML' + + + XML, + 207, + <<<'XML' + + + + /dav/get/716e6688-4579-4938-acf3-c4ab5856803b/ + + + + httpd/unix-directory + + + HTTP/1.1 200 OK + + + + + + HTTP/1.1 404 Not Found + + + + XML, + "test resourceType and IsReadOnly " + ]; + + yield [ + <<<'XML' + + + XML, + 207, + <<<'XML' + + + + /dav/get/716e6688-4579-4938-acf3-c4ab5856803b/ + + + + + HTTP/1.1 404 Not Found + + + + XML, + "test creatableContentsInfo" + ]; + } + +} + +class MockedStoredObjectManager implements StoredObjectManagerInterface +{ + public function getLastModified(StoredObject $document): DateTimeInterface + { + return new \DateTimeImmutable('2023-09-13T14:15'); + } + + public function getContentLength(StoredObject $document): int + { + return 5; + } + + public function read(StoredObject $document): string + { + return 'abcde'; + } + + public function write(StoredObject $document, string $clearContent): void {} + + public function etag(StoredObject $document): string + { + return 'ab56b4d92b40713acc5af89985d4b786'; + } + +} diff --git a/src/Bundle/ChillDocStoreBundle/Tests/Dav/Request/PropfindRequestAnalyzerTest.php b/src/Bundle/ChillDocStoreBundle/Tests/Dav/Request/PropfindRequestAnalyzerTest.php new file mode 100644 index 000000000..3cc2f19fe --- /dev/null +++ b/src/Bundle/ChillDocStoreBundle/Tests/Dav/Request/PropfindRequestAnalyzerTest.php @@ -0,0 +1,134 @@ +loadXML($xml); + $actual = $analyzer->getRequestedProperties($request); + + foreach ($expected as $key => $value) { + if ($key === 'unknowns') { + continue; + } + + self::assertArrayHasKey($key, $actual, "Check that key {$key} does exists in list of expected values"); + self::assertEquals($value, $actual[$key], "Does the value match expected for key {$key}"); + } + + if (array_key_exists('unknowns', $expected)) { + self::assertEquals(count($expected['unknowns']), count($actual['unknowns'])); + self::assertEqualsCanonicalizing($expected['unknowns'], $actual['unknowns']); + } + } + + public function provideRequestedProperties(): iterable + { + yield [ + <<<'XML' + + + + + + + XML, + [ + "resourceType" => false, + "contentType" => false, + "lastModified" => false, + "creationDate" => false, + "contentLength" => false, + "etag" => false, + "supportedLock" => false, + 'unknowns' => [ + ['xmlns' => 'http://ucb.openoffice.org/dav/props/', 'prop' => 'BaseURI'] + ] + ] + ]; + + yield [ + <<<'XML' + + + + + XML, + [ + "resourceType" => true, + "contentType" => true, + "lastModified" => true, + "creationDate" => true, + "contentLength" => true, + "etag" => true, + "supportedLock" => true, + "unknowns" => [], + ] + ]; + + yield [ + <<<'XML' + + + + + + + XML, + [ + "resourceType" => false, + "contentType" => false, + "lastModified" => true, + "creationDate" => false, + "contentLength" => false, + "etag" => false, + "supportedLock" => false, + 'unknowns' => [] + ] + ]; + + yield [ + <<<'XML' + + + XML, + [ + "resourceType" => true, + "contentType" => true, + "lastModified" => false, + "creationDate" => false, + "contentLength" => false, + "etag" => false, + "supportedLock" => false, + 'unknowns' => [ + ['xmlns' => 'http://ucb.openoffice.org/dav/props/', 'prop' => 'IsReadOnly'] + ] + ] + ]; + } +} diff --git a/utils/http/docstore/dav.http b/utils/http/docstore/dav.http new file mode 100644 index 000000000..c566358cd --- /dev/null +++ b/utils/http/docstore/dav.http @@ -0,0 +1,16 @@ + +### Get a document +GET http://{{ host }}/dav/get/{{ uuid }}/d + +### OPTIONS on a document +OPTIONS http://{{ host }}/dav/get/{{ uuid }}/d + +### HEAD ona document +HEAD http://{{ host }}/dav/get/{{ uuid }}/d + +### Get the directory of a document +GET http://{{ host }}/dav/get/{{ uuid }}/ + +### Option the directory of a document +OPTIONS http://{{ host }}/dav/get/{{ uuid }}/ + diff --git a/utils/http/docstore/http-client.env.json b/utils/http/docstore/http-client.env.json new file mode 100644 index 000000000..0b78e77ed --- /dev/null +++ b/utils/http/docstore/http-client.env.json @@ -0,0 +1,6 @@ +{ + "dev": { + "host": "localhost:8001", + "uuid": "0bf3b8e7-b25b-4227-aae9-a3263af0766f" + } +} From ff05f9f48aca9e760be3ef9ac92e5a7403576923 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julien=20Fastr=C3=A9?= Date: Thu, 14 Sep 2023 21:54:30 +0200 Subject: [PATCH 002/136] Dav: implements JWT extraction from the URL, and add the access_token in dav urls --- .../Controller/WebdavController.php | 52 ++++++++++-------- .../views/Webdav/directory.html.twig | 2 +- .../views/Webdav/directory_propfind.xml.twig | 4 +- .../Resources/views/Webdav/doc_props.xml.twig | 2 +- .../views/Webdav/open_in_browser.html.twig | 4 +- .../Security/Guard/DavOnUrlTokenExtractor.php | 49 +++++++++++++++++ .../Guard/JWTOnDavUrlAuthenticator.php | 38 +++++++++++++ .../Tests/Controller/WebdavControllerTest.php | 22 ++++---- .../Guard/DavOnUrlTokenExtractorTest.php | 54 +++++++++++++++++++ .../ChillDocStoreBundle/config/services.yaml | 5 ++ 10 files changed, 193 insertions(+), 39 deletions(-) create mode 100644 src/Bundle/ChillDocStoreBundle/Security/Guard/DavOnUrlTokenExtractor.php create mode 100644 src/Bundle/ChillDocStoreBundle/Security/Guard/JWTOnDavUrlAuthenticator.php create mode 100644 src/Bundle/ChillDocStoreBundle/Tests/Security/Guard/DavOnUrlTokenExtractorTest.php diff --git a/src/Bundle/ChillDocStoreBundle/Controller/WebdavController.php b/src/Bundle/ChillDocStoreBundle/Controller/WebdavController.php index 30a7e4eb2..dbd4e11ec 100644 --- a/src/Bundle/ChillDocStoreBundle/Controller/WebdavController.php +++ b/src/Bundle/ChillDocStoreBundle/Controller/WebdavController.php @@ -15,6 +15,7 @@ use Chill\DocStoreBundle\Dav\Request\PropfindRequestAnalyzer; use Chill\DocStoreBundle\Dav\Response\DavResponse; use Chill\DocStoreBundle\Entity\StoredObject; use Chill\DocStoreBundle\Service\StoredObjectManagerInterface; +use DateTimeInterface; use Lexik\Bundle\JWTAuthenticationBundle\Services\JWTTokenManagerInterface; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; @@ -30,41 +31,44 @@ final readonly class WebdavController public function __construct( private \Twig\Environment $engine, private StoredObjectManagerInterface $storedObjectManager, + private Security $security, + private ?JWTTokenManagerInterface $JWTTokenManager = null, ) { $this->requestAnalyzer = new PropfindRequestAnalyzer(); } /** - * @Route("/dav/open/{uuid}") + * @Route("/chdoc/open/{uuid}") */ public function open(StoredObject $storedObject): Response { - /*$accessToken = $this->JWTTokenManager->createFromPayload($this->security->getUser(), [ + $accessToken = $this->JWTTokenManager?->createFromPayload($this->security->getUser(), [ 'UserCanWrite' => true, 'UserCanAttend' => true, 'UserCanPresent' => true, 'fileId' => $storedObject->getUuid(), - ]);*/ + ]); return new DavResponse($this->engine->render('@ChillDocStore/Webdav/open_in_browser.html.twig', [ - 'stored_object' => $storedObject, 'access_token' => '', + 'stored_object' => $storedObject, 'access_token' => $accessToken, ])); } /** - * @Route("/dav/get/{uuid}/", methods={"GET", "HEAD"}, name="chill_docstore_dav_directory_get") + * @Route("/dav/{access_token}/get/{uuid}/", methods={"GET", "HEAD"}, name="chill_docstore_dav_directory_get") */ - public function getDirectory(StoredObject $storedObject): Response + public function getDirectory(StoredObject $storedObject, string $access_token): Response { return new DavResponse( $this->engine->render('@ChillDocStore/Webdav/directory.html.twig', [ - 'stored_object' => $storedObject + 'stored_object' => $storedObject, + 'access_token' => $access_token, ]) ); } /** - * @Route("/dav/get/{uuid}/", methods={"OPTIONS"}) + * @Route("/dav/{access_token}/get/{uuid}/", methods={"OPTIONS"}) */ public function optionsDirectory(StoredObject $storedObject): Response { @@ -78,9 +82,9 @@ final readonly class WebdavController } /** - * @Route("/dav/get/{uuid}/", methods={"PROPFIND"}) + * @Route("/dav/{access_token}/get/{uuid}/", methods={"PROPFIND"}) */ - public function propfindDirectory(StoredObject $storedObject, Request $request): Response + public function propfindDirectory(StoredObject $storedObject, string $access_token, Request $request): Response { $depth = $request->headers->get('depth'); @@ -111,10 +115,11 @@ final readonly class WebdavController $this->engine->render('@ChillDocStore/Webdav/directory_propfind.xml.twig', [ 'stored_object' => $storedObject, 'properties' => $properties, - 'last_modified' => $lastModified ?? null, - 'etag' => $etag ?? null, - 'content_length' => $length ?? null, - 'depth' => (int) $depth + 'last_modified' => $lastModified , + 'etag' => $etag, + 'content_length' => $length, + 'depth' => (int) $depth, + 'access_token' => $access_token, ]), 207 ); @@ -127,7 +132,7 @@ final readonly class WebdavController } /** - * @Route("/dav/get/{uuid}/d", name="chill_docstore_dav_document_get", methods={"GET"}) + * @Route("/dav/{access_token}/get/{uuid}/d", name="chill_docstore_dav_document_get", methods={"GET"}) */ public function getDocument(StoredObject $storedObject): Response { @@ -136,7 +141,7 @@ final readonly class WebdavController } /** - * @Route("/dav/get/{uuid}/d", methods={"HEAD"}) + * @Route("/dav/{access_token}/get/{uuid}/d", methods={"HEAD"}) */ public function headDocument(StoredObject $storedObject): Response { @@ -154,7 +159,7 @@ final readonly class WebdavController } /** - * @Route("/dav/get/{uuid}/d", methods={"OPTIONS"}) + * @Route("/dav/{access_token}/get/{uuid}/d", methods={"OPTIONS"}) */ public function optionsDocument(StoredObject $storedObject): Response { @@ -176,9 +181,9 @@ final readonly class WebdavController } /** - * @Route("/dav/get/{uuid}/d", methods={"PROPFIND"}) + * @Route("/dav/{access_token}/get/{uuid}/d", methods={"PROPFIND"}) */ - public function propfindDocument(StoredObject $storedObject, Request $request): Response + public function propfindDocument(StoredObject $storedObject, string $access_token, Request $request): Response { $content = $request->getContent(); $xml = new \DOMDocument(); @@ -204,9 +209,10 @@ final readonly class WebdavController [ 'stored_object' => $storedObject, 'properties' => $properties, - 'etag' => $etag ?? null, - 'last_modified' => $lastModified ?? null, - 'content_length' => $length ?? null, + 'etag' => $etag, + 'last_modified' => $lastModified, + 'content_length' => $length, + 'access_token' => $access_token, ] ), 207 @@ -221,7 +227,7 @@ final readonly class WebdavController } /** - * @Route("/dav/get/{uuid}/d", methods={"PUT"}) + * @Route("/dav/{access_token}/get/{uuid}/d", methods={"PUT"}) */ public function putDocument(StoredObject $storedObject, Request $request): Response { diff --git a/src/Bundle/ChillDocStoreBundle/Resources/views/Webdav/directory.html.twig b/src/Bundle/ChillDocStoreBundle/Resources/views/Webdav/directory.html.twig index 5a95e894a..90e19dd13 100644 --- a/src/Bundle/ChillDocStoreBundle/Resources/views/Webdav/directory.html.twig +++ b/src/Bundle/ChillDocStoreBundle/Resources/views/Webdav/directory.html.twig @@ -6,7 +6,7 @@ diff --git a/src/Bundle/ChillDocStoreBundle/Resources/views/Webdav/directory_propfind.xml.twig b/src/Bundle/ChillDocStoreBundle/Resources/views/Webdav/directory_propfind.xml.twig index 6edbb76e0..23a8da064 100644 --- a/src/Bundle/ChillDocStoreBundle/Resources/views/Webdav/directory_propfind.xml.twig +++ b/src/Bundle/ChillDocStoreBundle/Resources/views/Webdav/directory_propfind.xml.twig @@ -1,7 +1,7 @@ - {{ path('chill_docstore_dav_directory_get', { 'uuid': stored_object.uuid } ) }} + {{ path('chill_docstore_dav_directory_get', { 'uuid': stored_object.uuid, 'access_token': access_token } ) }} {% if properties.resourceType or properties.contentType %} @@ -28,7 +28,7 @@ {% if depth == 1 %} - {{ path('chill_docstore_dav_document_get', {'uuid': stored_object.uuid}) }} + {{ path('chill_docstore_dav_document_get', {'uuid': stored_object.uuid, 'access_token':access_token}) }} {% if properties.lastModified or properties.contentLength or properties.resourceType or properties.etag or properties.contentType or properties.creationDate %} diff --git a/src/Bundle/ChillDocStoreBundle/Resources/views/Webdav/doc_props.xml.twig b/src/Bundle/ChillDocStoreBundle/Resources/views/Webdav/doc_props.xml.twig index 3d320295b..7cde5a5de 100644 --- a/src/Bundle/ChillDocStoreBundle/Resources/views/Webdav/doc_props.xml.twig +++ b/src/Bundle/ChillDocStoreBundle/Resources/views/Webdav/doc_props.xml.twig @@ -1,7 +1,7 @@ - {{ path('chill_docstore_dav_document_get', {'uuid': stored_object.uuid}) }} + {{ path('chill_docstore_dav_document_get', {'uuid': stored_object.uuid, 'access_token': access_token}) }} {% if properties.lastModified or properties.contentLength or properties.resourceType or properties.etag or properties.contentType or properties.creationDate %} diff --git a/src/Bundle/ChillDocStoreBundle/Resources/views/Webdav/open_in_browser.html.twig b/src/Bundle/ChillDocStoreBundle/Resources/views/Webdav/open_in_browser.html.twig index 37d137047..2a32681e7 100644 --- a/src/Bundle/ChillDocStoreBundle/Resources/views/Webdav/open_in_browser.html.twig +++ b/src/Bundle/ChillDocStoreBundle/Resources/views/Webdav/open_in_browser.html.twig @@ -2,6 +2,6 @@ {% block content %}

document uuid: {{ stored_object.uuid }}

-

{{ absolute_url(path('chill_docstore_dav_document_get', {'uuid': stored_object.uuid })) }}

-Open document +

{{ absolute_url(path('chill_docstore_dav_document_get', {'uuid': stored_object.uuid, 'access_token': access_token })) }}

+Open document {% endblock %} diff --git a/src/Bundle/ChillDocStoreBundle/Security/Guard/DavOnUrlTokenExtractor.php b/src/Bundle/ChillDocStoreBundle/Security/Guard/DavOnUrlTokenExtractor.php new file mode 100644 index 000000000..eb030f799 --- /dev/null +++ b/src/Bundle/ChillDocStoreBundle/Security/Guard/DavOnUrlTokenExtractor.php @@ -0,0 +1,49 @@ +getRequestUri(); + + $segments = array_values( + array_filter( + explode('/', $uri), + fn ($item) => '' !== trim($item) + ) + ); + + if (2 > count($segments)) { + $this->logger->info("not enough segment for parsing URL"); + + return false; + } + + if ('dav' !== $segments[0]) { + $this->logger->info("the first segment of the url must be DAV"); + + return false; + } + + return $segments[1]; + } +} diff --git a/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTOnDavUrlAuthenticator.php b/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTOnDavUrlAuthenticator.php new file mode 100644 index 000000000..b4ae04afc --- /dev/null +++ b/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTOnDavUrlAuthenticator.php @@ -0,0 +1,38 @@ +davOnUrlTokenExtractor; + } +} diff --git a/src/Bundle/ChillDocStoreBundle/Tests/Controller/WebdavControllerTest.php b/src/Bundle/ChillDocStoreBundle/Tests/Controller/WebdavControllerTest.php index 959e9ed71..9064d8419 100644 --- a/src/Bundle/ChillDocStoreBundle/Tests/Controller/WebdavControllerTest.php +++ b/src/Bundle/ChillDocStoreBundle/Tests/Controller/WebdavControllerTest.php @@ -21,6 +21,7 @@ use Prophecy\PhpUnit\ProphecyTrait; use Ramsey\Uuid\Uuid; use Symfony\Bundle\FrameworkBundle\Test\KernelTestCase; use Symfony\Component\HttpFoundation\Request; +use Symfony\Component\Security\Core\Security; use Symfony\Component\Templating\EngineInterface; /** @@ -43,8 +44,9 @@ class WebdavControllerTest extends KernelTestCase private function buildController(): WebdavController { $storedObjectManager = new MockedStoredObjectManager(); + $security = $this->prophesize(Security::class); - return new WebdavController($this->engine, $storedObjectManager); + return new WebdavController($this->engine, $storedObjectManager, $security->reveal()); } private function buildDocument(): StoredObject @@ -115,7 +117,7 @@ class WebdavControllerTest extends KernelTestCase $request = new Request([], [], [], [], [], [], $requestContent); $request->setMethod('PROPFIND'); - $response = $controller->propfindDocument($this->buildDocument(), $request); + $response = $controller->propfindDocument($this->buildDocument(), '1234', $request); self::assertEquals($expectedStatusCode, $response->getStatusCode()); self::assertContains('content-type', $response->headers->keys()); @@ -134,7 +136,7 @@ class WebdavControllerTest extends KernelTestCase $request = new Request([], [], [], [], [], [], $requestContent); $request->setMethod('PROPFIND'); $request->headers->add(["Depth" => "0"]); - $response = $controller->propfindDirectory($this->buildDocument(), $request); + $response = $controller->propfindDirectory($this->buildDocument(), '1234', $request); self::assertEquals($expectedStatusCode, $response->getStatusCode()); self::assertContains('content-type', $response->headers->keys()); @@ -170,7 +172,7 @@ class WebdavControllerTest extends KernelTestCase - /dav/get/716e6688-4579-4938-acf3-c4ab5856803b/d + /dav/1234/get/716e6688-4579-4938-acf3-c4ab5856803b/d @@ -205,7 +207,7 @@ class WebdavControllerTest extends KernelTestCase - /dav/get/716e6688-4579-4938-acf3-c4ab5856803b/d + /dav/1234/get/716e6688-4579-4938-acf3-c4ab5856803b/d @@ -232,7 +234,7 @@ class WebdavControllerTest extends KernelTestCase - /dav/get/716e6688-4579-4938-acf3-c4ab5856803b/d + /dav/1234/get/716e6688-4579-4938-acf3-c4ab5856803b/d @@ -259,7 +261,7 @@ class WebdavControllerTest extends KernelTestCase - /dav/get/716e6688-4579-4938-acf3-c4ab5856803b/d + /dav/1234/get/716e6688-4579-4938-acf3-c4ab5856803b/d @@ -285,7 +287,7 @@ class WebdavControllerTest extends KernelTestCase - /dav/get/716e6688-4579-4938-acf3-c4ab5856803b/d + /dav/1234/get/716e6688-4579-4938-acf3-c4ab5856803b/d @@ -323,7 +325,7 @@ class WebdavControllerTest extends KernelTestCase - /dav/get/716e6688-4579-4938-acf3-c4ab5856803b/ + /dav/1234/get/716e6688-4579-4938-acf3-c4ab5856803b/ @@ -365,7 +367,7 @@ class WebdavControllerTest extends KernelTestCase - /dav/get/716e6688-4579-4938-acf3-c4ab5856803b/ + /dav/1234/get/716e6688-4579-4938-acf3-c4ab5856803b/ diff --git a/src/Bundle/ChillDocStoreBundle/Tests/Security/Guard/DavOnUrlTokenExtractorTest.php b/src/Bundle/ChillDocStoreBundle/Tests/Security/Guard/DavOnUrlTokenExtractorTest.php new file mode 100644 index 000000000..b9e046b28 --- /dev/null +++ b/src/Bundle/ChillDocStoreBundle/Tests/Security/Guard/DavOnUrlTokenExtractorTest.php @@ -0,0 +1,54 @@ +prophesize(Request::class); + $request->getRequestUri()->willReturn($uri); + + $extractor = new DavOnUrlTokenExtractor(new NullLogger()); + + $actual = $extractor->extract($request->reveal()); + + self::assertEquals($expected, $actual); + } + + /** + * @phpstan-pure + */ + public static function provideDataUri(): iterable + { + yield ['/dav/123456789/get/d07d2230-5326-11ee-8fd4-93696acf5ea1/d', '123456789']; + yield ['/dav/123456789', '123456789']; + yield ['/not-dav/123456978', false]; + yield ['/dav', false]; + yield ['/', false]; + } +} diff --git a/src/Bundle/ChillDocStoreBundle/config/services.yaml b/src/Bundle/ChillDocStoreBundle/config/services.yaml index 04fc3ace3..390abbf25 100644 --- a/src/Bundle/ChillDocStoreBundle/config/services.yaml +++ b/src/Bundle/ChillDocStoreBundle/config/services.yaml @@ -34,6 +34,11 @@ services: autoconfigure: true autowire: true + Chill\DocStoreBundle\Security\: + resource: './../Security' + autoconfigure: true + autowire: true + Chill\DocStoreBundle\Serializer\Normalizer\: autowire: true resource: '../Serializer/Normalizer/' From a35f7656cb5b841b98bd460004fa417136153848 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julien=20Fastr=C3=A9?= Date: Fri, 15 Sep 2023 14:16:58 +0200 Subject: [PATCH 003/136] Dav: refactor WebdavController --- .../Controller/WebdavController.php | 67 +++++++++---------- 1 file changed, 32 insertions(+), 35 deletions(-) diff --git a/src/Bundle/ChillDocStoreBundle/Controller/WebdavController.php b/src/Bundle/ChillDocStoreBundle/Controller/WebdavController.php index dbd4e11ec..8ef4ee71a 100644 --- a/src/Bundle/ChillDocStoreBundle/Controller/WebdavController.php +++ b/src/Bundle/ChillDocStoreBundle/Controller/WebdavController.php @@ -92,24 +92,7 @@ final readonly class WebdavController throw new BadRequestHttpException("only 1 and 0 are accepted for Depth header"); } - $content = $request->getContent(); - $xml = new \DOMDocument(); - $xml->loadXML($content); - - $properties = $this->requestAnalyzer->getRequestedProperties($xml); - $requested = array_keys(array_filter($properties, fn ($item) => true === $item)); - - if ( - in_array('lastModified', $requested, true) - || in_array('etag', $requested, true) - ) { - $lastModified = $this->storedObjectManager->getLastModified($storedObject); - $etag = $this->storedObjectManager->etag($storedObject); - - } - if (in_array('contentLength', $requested, true)) { - $length = $this->storedObjectManager->getContentLength($storedObject); - } + [$properties, $lastModified, $etag, $length] = $this->parseDavRequest($request->getContent(), $storedObject); $response = new DavResponse( $this->engine->render('@ChillDocStore/Webdav/directory_propfind.xml.twig', [ @@ -185,23 +168,7 @@ final readonly class WebdavController */ public function propfindDocument(StoredObject $storedObject, string $access_token, Request $request): Response { - $content = $request->getContent(); - $xml = new \DOMDocument(); - $xml->loadXML($content); - - $properties = $this->requestAnalyzer->getRequestedProperties($xml); - $requested = array_keys(array_filter($properties, fn ($item) => true === $item)); - - if ( - in_array('lastModified', $requested, true) - || in_array('etag', $requested, true) - ) { - $lastModified = $this->storedObjectManager->getLastModified($storedObject); - $etag = $this->storedObjectManager->etag($storedObject); - } - if (in_array('contentLength', $requested, true)) { - $length = $this->storedObjectManager->getContentLength($storedObject); - } + [$properties, $lastModified, $etag, $length] = $this->parseDavRequest($request->getContent(), $storedObject); $response = new DavResponse( $this->engine->render( @@ -235,4 +202,34 @@ final readonly class WebdavController return (new DavResponse("", Response::HTTP_NO_CONTENT)); } + + /** + * @return array{0: array, 1: DateTimeInterface, 2: string, 3: int} properties, lastModified, etag, length + */ + private function parseDavRequest(string $content, StoredObject $storedObject): array + { + $xml = new \DOMDocument(); + $xml->loadXML($content); + + $properties = $this->requestAnalyzer->getRequestedProperties($xml); + $requested = array_keys(array_filter($properties, fn ($item) => true === $item)); + + if ( + in_array('lastModified', $requested, true) + || in_array('etag', $requested, true) + ) { + $lastModified = $this->storedObjectManager->getLastModified($storedObject); + $etag = $this->storedObjectManager->etag($storedObject); + } + if (in_array('contentLength', $requested, true)) { + $length = $this->storedObjectManager->getContentLength($storedObject); + } + + return [ + $properties, + $lastModified ?? null, + $etag ?? null, + $length ?? null + ]; + } } From 18fd1dbc4a6efd8856a78e17ecaa9bb2f4ff8c20 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julien=20Fastr=C3=A9?= Date: Fri, 15 Sep 2023 22:21:56 +0200 Subject: [PATCH 004/136] Dav: Introduce access control inside de dav controller --- ...TokenAuthenticationEventSubscriberTest.php | 65 +++++++++ .../Controller/WebdavController.php | 61 ++++++--- .../Authorization/StoredObjectRoleEnum.php | 19 +++ .../Authorization/StoredObjectVoter.php | 52 ++++++++ .../DavTokenAuthenticationEventSubscriber.php | 50 +++++++ .../Security/Guard/JWTDavTokenProvider.php | 41 ++++++ .../Guard/JWTDavTokenProviderInterface.php | 23 ++++ .../Tests/Controller/WebdavControllerTest.php | 6 +- .../Authorization/StoredObjectVoterTest.php | 124 ++++++++++++++++++ 9 files changed, 419 insertions(+), 22 deletions(-) create mode 100644 src/Bundle/ChillAsideActivityBundle/src/Tests/Chill/DocStoreBundle/Tests/Security/Guard/DavTokenAuthenticationEventSubscriberTest.php create mode 100644 src/Bundle/ChillDocStoreBundle/Security/Authorization/StoredObjectRoleEnum.php create mode 100644 src/Bundle/ChillDocStoreBundle/Security/Authorization/StoredObjectVoter.php create mode 100644 src/Bundle/ChillDocStoreBundle/Security/Guard/DavTokenAuthenticationEventSubscriber.php create mode 100644 src/Bundle/ChillDocStoreBundle/Security/Guard/JWTDavTokenProvider.php create mode 100644 src/Bundle/ChillDocStoreBundle/Security/Guard/JWTDavTokenProviderInterface.php create mode 100644 src/Bundle/ChillDocStoreBundle/Tests/Security/Authorization/StoredObjectVoterTest.php diff --git a/src/Bundle/ChillAsideActivityBundle/src/Tests/Chill/DocStoreBundle/Tests/Security/Guard/DavTokenAuthenticationEventSubscriberTest.php b/src/Bundle/ChillAsideActivityBundle/src/Tests/Chill/DocStoreBundle/Tests/Security/Guard/DavTokenAuthenticationEventSubscriberTest.php new file mode 100644 index 000000000..03cea7d29 --- /dev/null +++ b/src/Bundle/ChillAsideActivityBundle/src/Tests/Chill/DocStoreBundle/Tests/Security/Guard/DavTokenAuthenticationEventSubscriberTest.php @@ -0,0 +1,65 @@ + 1, + 'so' => '1234', + 'e' => 1, + ], $token); + + $eventSubscriber->onJWTAuthenticated($event); + + self::assertTrue($token->hasAttribute(DavTokenAuthenticationEventSubscriber::STORED_OBJECT)); + self::assertTrue($token->hasAttribute(DavTokenAuthenticationEventSubscriber::ACTIONS)); + self::assertEquals('1234', $token->getAttribute(DavTokenAuthenticationEventSubscriber::STORED_OBJECT)); + self::assertEquals(StoredObjectRoleEnum::EDIT, $token->getAttribute(DavTokenAuthenticationEventSubscriber::ACTIONS)); + } + + public function testOnJWTAuthenticatedWithDavNoDataInPayload(): void + { + $eventSubscriber = new DavTokenAuthenticationEventSubscriber(); + $token = new class () extends AbstractToken { + public function getCredentials() + { + return null; + } + }; + $event = new JWTAuthenticatedEvent([], $token); + + $eventSubscriber->onJWTAuthenticated($event); + + self::assertFalse($token->hasAttribute(DavTokenAuthenticationEventSubscriber::STORED_OBJECT)); + self::assertFalse($token->hasAttribute(DavTokenAuthenticationEventSubscriber::ACTIONS)); + } +} diff --git a/src/Bundle/ChillDocStoreBundle/Controller/WebdavController.php b/src/Bundle/ChillDocStoreBundle/Controller/WebdavController.php index 8ef4ee71a..471aec99f 100644 --- a/src/Bundle/ChillDocStoreBundle/Controller/WebdavController.php +++ b/src/Bundle/ChillDocStoreBundle/Controller/WebdavController.php @@ -14,15 +14,16 @@ namespace Chill\DocStoreBundle\Controller; use Chill\DocStoreBundle\Dav\Request\PropfindRequestAnalyzer; use Chill\DocStoreBundle\Dav\Response\DavResponse; use Chill\DocStoreBundle\Entity\StoredObject; +use Chill\DocStoreBundle\Security\Authorization\StoredObjectRoleEnum; +use Chill\DocStoreBundle\Security\Guard\JWTDavTokenProviderInterface; use Chill\DocStoreBundle\Service\StoredObjectManagerInterface; use DateTimeInterface; -use Lexik\Bundle\JWTAuthenticationBundle\Services\JWTTokenManagerInterface; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; +use Symfony\Component\HttpKernel\Exception\AccessDeniedHttpException; use Symfony\Component\HttpKernel\Exception\BadRequestHttpException; use Symfony\Component\Routing\Annotation\Route; use Symfony\Component\Security\Core\Security; -use Symfony\Component\Templating\EngineInterface; final readonly class WebdavController { @@ -31,8 +32,8 @@ final readonly class WebdavController public function __construct( private \Twig\Environment $engine, private StoredObjectManagerInterface $storedObjectManager, - private Security $security, - private ?JWTTokenManagerInterface $JWTTokenManager = null, + private Security $security, + private ?JWTDavTokenProviderInterface $davTokenProvider = null, ) { $this->requestAnalyzer = new PropfindRequestAnalyzer(); } @@ -42,12 +43,7 @@ final readonly class WebdavController */ public function open(StoredObject $storedObject): Response { - $accessToken = $this->JWTTokenManager?->createFromPayload($this->security->getUser(), [ - 'UserCanWrite' => true, - 'UserCanAttend' => true, - 'UserCanPresent' => true, - 'fileId' => $storedObject->getUuid(), - ]); + $accessToken = $this->davTokenProvider?->createToken($storedObject, StoredObjectRoleEnum::EDIT); return new DavResponse($this->engine->render('@ChillDocStore/Webdav/open_in_browser.html.twig', [ 'stored_object' => $storedObject, 'access_token' => $accessToken, @@ -59,6 +55,10 @@ final readonly class WebdavController */ public function getDirectory(StoredObject $storedObject, string $access_token): Response { + if (!$this->security->isGranted(StoredObjectRoleEnum::SEE->value, $storedObject)) { + throw new AccessDeniedHttpException(); + } + return new DavResponse( $this->engine->render('@ChillDocStore/Webdav/directory.html.twig', [ 'stored_object' => $storedObject, @@ -72,11 +72,16 @@ final readonly class WebdavController */ public function optionsDirectory(StoredObject $storedObject): Response { + if (!$this->security->isGranted(StoredObjectRoleEnum::SEE->value, $storedObject)) { + throw new AccessDeniedHttpException(); + } + $response = (new DavResponse("")) ->setEtag($this->storedObjectManager->etag($storedObject)) ; - $response->headers->add(['Allow' => 'OPTIONS,GET,HEAD,DELETE,PROPFIND,PUT,PROPPATCH,COPY,MOVE,REPORT,PATCH,POST,TRACE']); + //$response->headers->add(['Allow' => 'OPTIONS,GET,HEAD,DELETE,PROPFIND,PUT,PROPPATCH,COPY,MOVE,REPORT,PATCH,POST,TRACE']); + $response->headers->add(['Allow' => 'OPTIONS,GET,HEAD,DELETE,PROPFIND,PUT']); return $response; } @@ -86,6 +91,10 @@ final readonly class WebdavController */ public function propfindDirectory(StoredObject $storedObject, string $access_token, Request $request): Response { + if (!$this->security->isGranted(StoredObjectRoleEnum::SEE->value, $storedObject)) { + throw new AccessDeniedHttpException(); + } + $depth = $request->headers->get('depth'); if ("0" !== $depth && "1" !== $depth) { @@ -119,6 +128,10 @@ final readonly class WebdavController */ public function getDocument(StoredObject $storedObject): Response { + if (!$this->security->isGranted(StoredObjectRoleEnum::SEE->value, $storedObject)) { + throw new AccessDeniedHttpException(); + } + return (new DavResponse($this->storedObjectManager->read($storedObject))) ->setEtag($this->storedObjectManager->etag($storedObject)); } @@ -128,6 +141,10 @@ final readonly class WebdavController */ public function headDocument(StoredObject $storedObject): Response { + if (!$this->security->isGranted(StoredObjectRoleEnum::SEE->value, $storedObject)) { + throw new AccessDeniedHttpException(); + } + $response = new DavResponse(""); $response->headers->add( @@ -146,19 +163,15 @@ final readonly class WebdavController */ public function optionsDocument(StoredObject $storedObject): Response { + if (!$this->security->isGranted(StoredObjectRoleEnum::SEE->value, $storedObject)) { + throw new AccessDeniedHttpException(); + } + $response = (new DavResponse("")) ->setEtag($this->storedObjectManager->etag($storedObject)) ; - $response->headers->add(['Allow' => /*sprintf( - '%s, %s, %s, %s, %s', - Request::METHOD_OPTIONS, - Request::METHOD_GET, - Request::METHOD_HEAD, - Request::METHOD_PUT, - 'PROPFIND' - ) */ 'OPTIONS,GET,HEAD,DELETE,PROPFIND,PUT,PROPPATCH,COPY,MOVE,REPORT,PATCH,POST,TRACE' - ]); + $response->headers->add(['Allow' => 'OPTIONS,GET,HEAD,DELETE,PROPFIND,PUT']); return $response; } @@ -168,6 +181,10 @@ final readonly class WebdavController */ public function propfindDocument(StoredObject $storedObject, string $access_token, Request $request): Response { + if (!$this->security->isGranted(StoredObjectRoleEnum::SEE->value, $storedObject)) { + throw new AccessDeniedHttpException(); + } + [$properties, $lastModified, $etag, $length] = $this->parseDavRequest($request->getContent(), $storedObject); $response = new DavResponse( @@ -198,6 +215,10 @@ final readonly class WebdavController */ public function putDocument(StoredObject $storedObject, Request $request): Response { + if (!$this->security->isGranted(StoredObjectRoleEnum::EDIT->value, $storedObject)) { + throw new AccessDeniedHttpException(); + } + $this->storedObjectManager->write($storedObject, $request->getContent()); return (new DavResponse("", Response::HTTP_NO_CONTENT)); diff --git a/src/Bundle/ChillDocStoreBundle/Security/Authorization/StoredObjectRoleEnum.php b/src/Bundle/ChillDocStoreBundle/Security/Authorization/StoredObjectRoleEnum.php new file mode 100644 index 000000000..6a5a22da0 --- /dev/null +++ b/src/Bundle/ChillDocStoreBundle/Security/Authorization/StoredObjectRoleEnum.php @@ -0,0 +1,19 @@ +hasAttribute(DavTokenAuthenticationEventSubscriber::STORED_OBJECT) + || + $subject->getUuid()->toString() !== $token->getAttribute(DavTokenAuthenticationEventSubscriber::STORED_OBJECT) + ) { + return false; + } + + if (!$token->hasAttribute(DavTokenAuthenticationEventSubscriber::ACTIONS)) { + return false; + } + + $askedRole = StoredObjectRoleEnum::from($attribute); + $tokenRoleAuthorization = + $token->getAttribute(DavTokenAuthenticationEventSubscriber::ACTIONS); + + return match ($askedRole) { + StoredObjectRoleEnum::SEE => + $tokenRoleAuthorization === StoredObjectRoleEnum::EDIT || $tokenRoleAuthorization === StoredObjectRoleEnum::SEE, + StoredObjectRoleEnum::EDIT => $tokenRoleAuthorization === StoredObjectRoleEnum::EDIT + }; + } +} diff --git a/src/Bundle/ChillDocStoreBundle/Security/Guard/DavTokenAuthenticationEventSubscriber.php b/src/Bundle/ChillDocStoreBundle/Security/Guard/DavTokenAuthenticationEventSubscriber.php new file mode 100644 index 000000000..3c1b3e2a9 --- /dev/null +++ b/src/Bundle/ChillDocStoreBundle/Security/Guard/DavTokenAuthenticationEventSubscriber.php @@ -0,0 +1,50 @@ + ['onJWTAuthenticated', 0], + ]; + } + + public function onJWTAuthenticated(JWTAuthenticatedEvent $event): void + { + $payload = $event->getPayload(); + + if (!(array_key_exists('dav', $payload) && 1 === $payload['dav'])) { + return; + } + + $token = $event->getToken(); + $token->setAttribute(self::ACTIONS, match ($payload['e']) { + 0 => StoredObjectRoleEnum::SEE, + 1 => StoredObjectRoleEnum::EDIT, + default => throw new \UnexpectedValueException("unsupported value for e parameter") + }); + + $token->setAttribute(self::STORED_OBJECT, $payload['so']); + } + + +} diff --git a/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTDavTokenProvider.php b/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTDavTokenProvider.php new file mode 100644 index 000000000..30b25dd0b --- /dev/null +++ b/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTDavTokenProvider.php @@ -0,0 +1,41 @@ +JWTTokenManager->createFromPayload($this->security->getUser(), [ + 'dav' => 1, + 'e' => match ($roleEnum) { + StoredObjectRoleEnum::SEE => 0, + StoredObjectRoleEnum::EDIT => 1, + }, + 'so' => $storedObject->getUuid(), + ]); + } + +} diff --git a/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTDavTokenProviderInterface.php b/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTDavTokenProviderInterface.php new file mode 100644 index 000000000..6be91a39c --- /dev/null +++ b/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTDavTokenProviderInterface.php @@ -0,0 +1,23 @@ +prophesize(Security::class); + $security->isGranted(Argument::in(['EDIT', 'SEE']), Argument::type(StoredObject::class)) + ->willReturn(true); return new WebdavController($this->engine, $storedObjectManager, $security->reveal()); } @@ -83,7 +85,7 @@ class WebdavControllerTest extends KernelTestCase self::assertEquals(200, $response->getStatusCode()); self::assertContains('allow', $response->headers->keys()); - foreach (explode(',', 'OPTIONS,GET,HEAD,POST,DELETE,TRACE,PROPFIND,PROPPATCH,COPY,MOVE,PUT') as $method) { + foreach (explode(',', 'OPTIONS,GET,HEAD,PROPFIND') as $method) { self::assertStringContainsString($method, $response->headers->get('allow')); } @@ -100,7 +102,7 @@ class WebdavControllerTest extends KernelTestCase self::assertEquals(200, $response->getStatusCode()); self::assertContains('allow', $response->headers->keys()); - foreach (explode(',', 'OPTIONS,GET,HEAD,POST,DELETE,TRACE,PROPFIND,PROPPATCH,COPY,MOVE,PUT') as $method) { + foreach (explode(',', 'OPTIONS,GET,HEAD,PROPFIND') as $method) { self::assertStringContainsString($method, $response->headers->get('allow')); } diff --git a/src/Bundle/ChillDocStoreBundle/Tests/Security/Authorization/StoredObjectVoterTest.php b/src/Bundle/ChillDocStoreBundle/Tests/Security/Authorization/StoredObjectVoterTest.php new file mode 100644 index 000000000..c4518586f --- /dev/null +++ b/src/Bundle/ChillDocStoreBundle/Tests/Security/Authorization/StoredObjectVoterTest.php @@ -0,0 +1,124 @@ +vote($token, $subject, [$attribute])); + } + + public function provideDataVote(): iterable + { + yield [ + $this->buildToken(StoredObjectRoleEnum::EDIT, new StoredObject()), + new \stdClass(), + 'SOMETHING', + VoterInterface::ACCESS_ABSTAIN + ]; + + yield [ + $this->buildToken(StoredObjectRoleEnum::EDIT, $so = new StoredObject()), + $so, + 'SOMETHING', + VoterInterface::ACCESS_ABSTAIN + ]; + + yield [ + $this->buildToken(StoredObjectRoleEnum::EDIT, $so = new StoredObject()), + $so, + StoredObjectRoleEnum::SEE->value, + VoterInterface::ACCESS_GRANTED + ]; + + yield [ + $this->buildToken(StoredObjectRoleEnum::EDIT, $so = new StoredObject()), + $so, + StoredObjectRoleEnum::EDIT->value, + VoterInterface::ACCESS_GRANTED + ]; + + yield [ + $this->buildToken(StoredObjectRoleEnum::SEE, $so = new StoredObject()), + $so, + StoredObjectRoleEnum::EDIT->value, + VoterInterface::ACCESS_DENIED, + ]; + + yield [ + $this->buildToken(StoredObjectRoleEnum::SEE, $so = new StoredObject()), + $so, + StoredObjectRoleEnum::SEE->value, + VoterInterface::ACCESS_GRANTED + ]; + + yield [ + $this->buildToken(null, null), + new StoredObject(), + StoredObjectRoleEnum::SEE->value, + VoterInterface::ACCESS_DENIED, + ]; + + yield [ + $this->buildToken(null, null), + new StoredObject(), + StoredObjectRoleEnum::SEE->value, + VoterInterface::ACCESS_DENIED, + ]; + } + + + private function buildToken(?StoredObjectRoleEnum $storedObjectRoleEnum = null, ?StoredObject $storedObject = null): TokenInterface + { + $token = $this->prophesize(TokenInterface::class); + + if (null !== $storedObjectRoleEnum) { + $token->hasAttribute(DavTokenAuthenticationEventSubscriber::ACTIONS)->willReturn(true); + $token->getAttribute(DavTokenAuthenticationEventSubscriber::ACTIONS)->willReturn($storedObjectRoleEnum); + } else { + $token->hasAttribute(DavTokenAuthenticationEventSubscriber::ACTIONS)->willReturn(false); + $token->getAttribute(DavTokenAuthenticationEventSubscriber::ACTIONS)->willThrow(new \InvalidArgumentException()); + } + + + if (null !== $storedObject) { + $token->hasAttribute(DavTokenAuthenticationEventSubscriber::STORED_OBJECT)->willReturn(true); + $token->getAttribute(DavTokenAuthenticationEventSubscriber::STORED_OBJECT)->willReturn($storedObject->getUuid()->toString()); + } else { + $token->hasAttribute(DavTokenAuthenticationEventSubscriber::STORED_OBJECT)->willReturn(false); + $token->getAttribute(DavTokenAuthenticationEventSubscriber::STORED_OBJECT)->willThrow(new \InvalidArgumentException()); + } + + return $token->reveal(); + } +} From ab95bb157eb940bb7fd25bcc615de8835817e7c6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julien=20Fastr=C3=A9?= Date: Fri, 15 Sep 2023 22:32:25 +0200 Subject: [PATCH 005/136] Dav: add some documentation on classes --- .../Controller/WebdavController.php | 24 +++++++++---------- .../Authorization/StoredObjectRoleEnum.php | 3 +++ .../Authorization/StoredObjectVoter.php | 5 ++++ .../Security/Guard/DavOnUrlTokenExtractor.php | 8 +++++++ .../DavTokenAuthenticationEventSubscriber.php | 3 +++ .../Guard/JWTOnDavUrlAuthenticator.php | 3 +++ 6 files changed, 33 insertions(+), 13 deletions(-) diff --git a/src/Bundle/ChillDocStoreBundle/Controller/WebdavController.php b/src/Bundle/ChillDocStoreBundle/Controller/WebdavController.php index 471aec99f..ff22e6046 100644 --- a/src/Bundle/ChillDocStoreBundle/Controller/WebdavController.php +++ b/src/Bundle/ChillDocStoreBundle/Controller/WebdavController.php @@ -25,6 +25,17 @@ use Symfony\Component\HttpKernel\Exception\BadRequestHttpException; use Symfony\Component\Routing\Annotation\Route; use Symfony\Component\Security\Core\Security; +/** + * Provide endpoint for editing a document on the desktop using dav. + * + * This controller implements the minimal required methods to edit a document on a desktop software (i.e. LibreOffice) + * and save the document online. + * + * To avoid to ask for a password, the endpoints are protected using a JWT access token, which is inside the + * URL. This avoid the DAV Client (LibreOffice) to keep an access token in query parameter or in some header (which + * they are not able to understand). The JWT Guard is adapted with a dedicated token extractor which is going to read + * the segments (separation of "/"): the first segment must be the string "dav", and the second one must be the JWT. + */ final readonly class WebdavController { private PropfindRequestAnalyzer $requestAnalyzer; @@ -33,23 +44,10 @@ final readonly class WebdavController private \Twig\Environment $engine, private StoredObjectManagerInterface $storedObjectManager, private Security $security, - private ?JWTDavTokenProviderInterface $davTokenProvider = null, ) { $this->requestAnalyzer = new PropfindRequestAnalyzer(); } - /** - * @Route("/chdoc/open/{uuid}") - */ - public function open(StoredObject $storedObject): Response - { - $accessToken = $this->davTokenProvider?->createToken($storedObject, StoredObjectRoleEnum::EDIT); - - return new DavResponse($this->engine->render('@ChillDocStore/Webdav/open_in_browser.html.twig', [ - 'stored_object' => $storedObject, 'access_token' => $accessToken, - ])); - } - /** * @Route("/dav/{access_token}/get/{uuid}/", methods={"GET", "HEAD"}, name="chill_docstore_dav_directory_get") */ diff --git a/src/Bundle/ChillDocStoreBundle/Security/Authorization/StoredObjectRoleEnum.php b/src/Bundle/ChillDocStoreBundle/Security/Authorization/StoredObjectRoleEnum.php index 6a5a22da0..af2813240 100644 --- a/src/Bundle/ChillDocStoreBundle/Security/Authorization/StoredObjectRoleEnum.php +++ b/src/Bundle/ChillDocStoreBundle/Security/Authorization/StoredObjectRoleEnum.php @@ -11,6 +11,9 @@ declare(strict_types=1); namespace Chill\DocStoreBundle\Security\Authorization; +/** + * Role to edit or see the stored object content. + */ enum StoredObjectRoleEnum: string { case SEE = 'SEE'; diff --git a/src/Bundle/ChillDocStoreBundle/Security/Authorization/StoredObjectVoter.php b/src/Bundle/ChillDocStoreBundle/Security/Authorization/StoredObjectVoter.php index 55c9b3ca1..570a2be13 100644 --- a/src/Bundle/ChillDocStoreBundle/Security/Authorization/StoredObjectVoter.php +++ b/src/Bundle/ChillDocStoreBundle/Security/Authorization/StoredObjectVoter.php @@ -16,6 +16,11 @@ use Chill\DocStoreBundle\Security\Guard\DavTokenAuthenticationEventSubscriber; use Symfony\Component\Security\Core\Authentication\Token\TokenInterface; use Symfony\Component\Security\Core\Authorization\Voter\Voter; +/** + * Voter for the content of a stored object. + * + * This is in use to allow or disallow the edition of the stored object's content. + */ class StoredObjectVoter extends Voter { protected function supports($attribute, $subject): bool diff --git a/src/Bundle/ChillDocStoreBundle/Security/Guard/DavOnUrlTokenExtractor.php b/src/Bundle/ChillDocStoreBundle/Security/Guard/DavOnUrlTokenExtractor.php index eb030f799..0b2cc6a0a 100644 --- a/src/Bundle/ChillDocStoreBundle/Security/Guard/DavOnUrlTokenExtractor.php +++ b/src/Bundle/ChillDocStoreBundle/Security/Guard/DavOnUrlTokenExtractor.php @@ -15,6 +15,14 @@ use Lexik\Bundle\JWTAuthenticationBundle\TokenExtractor\TokenExtractorInterface; use Psr\Log\LoggerInterface; use Symfony\Component\HttpFoundation\Request; +/** + * Extract the JWT Token from the segment of the dav endpoints. + * + * A segment is a separation inside the string, using the character "/". + * + * For recognizing the JWT, the first segment must be "dav", and the second one must be + * the JWT endpoint. + */ final readonly class DavOnUrlTokenExtractor implements TokenExtractorInterface { public function __construct( diff --git a/src/Bundle/ChillDocStoreBundle/Security/Guard/DavTokenAuthenticationEventSubscriber.php b/src/Bundle/ChillDocStoreBundle/Security/Guard/DavTokenAuthenticationEventSubscriber.php index 3c1b3e2a9..c3f527e71 100644 --- a/src/Bundle/ChillDocStoreBundle/Security/Guard/DavTokenAuthenticationEventSubscriber.php +++ b/src/Bundle/ChillDocStoreBundle/Security/Guard/DavTokenAuthenticationEventSubscriber.php @@ -16,6 +16,9 @@ use Lexik\Bundle\JWTAuthenticationBundle\Event\JWTAuthenticatedEvent; use Lexik\Bundle\JWTAuthenticationBundle\Events; use Symfony\Component\EventDispatcher\EventSubscriberInterface; +/** + * Store some data from the JWT's payload inside the token's attributes. + */ class DavTokenAuthenticationEventSubscriber implements EventSubscriberInterface { final public const STORED_OBJECT = 'stored_object'; diff --git a/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTOnDavUrlAuthenticator.php b/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTOnDavUrlAuthenticator.php index b4ae04afc..ceb44949a 100644 --- a/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTOnDavUrlAuthenticator.php +++ b/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTOnDavUrlAuthenticator.php @@ -18,6 +18,9 @@ use Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorageInt use Symfony\Contracts\EventDispatcher\EventDispatcherInterface; use Symfony\Contracts\Translation\TranslatorInterface; +/** + * Alter the base JWTTokenAuthenticator to add the special extractor for dav url endpoints. + */ class JWTOnDavUrlAuthenticator extends JWTTokenAuthenticator { public function __construct( From 813a80d6f9b46286ba68315cb2ee5a382e3cadce Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julien=20Fastr=C3=A9?= Date: Sun, 17 Sep 2023 15:44:57 +0200 Subject: [PATCH 006/136] Dav: add UI to edit document --- .../Controller/WebdavController.php | 1 - .../document_action_buttons_group/index.ts | 10 ++- .../vuejs/DocumentActionButtonsGroup.vue | 16 ++++- .../StoredObjectButton/DesktopEditButton.vue | 66 +++++++++++++++++++ .../views/Button/button_group.html.twig | 2 + .../Security/Guard/JWTDavTokenProvider.php | 7 ++ .../Guard/JWTDavTokenProviderInterface.php | 2 + .../WopiEditTwigExtensionRuntime.php | 33 ++++++++-- 8 files changed, 126 insertions(+), 11 deletions(-) create mode 100644 src/Bundle/ChillDocStoreBundle/Resources/public/vuejs/StoredObjectButton/DesktopEditButton.vue diff --git a/src/Bundle/ChillDocStoreBundle/Controller/WebdavController.php b/src/Bundle/ChillDocStoreBundle/Controller/WebdavController.php index ff22e6046..b4624d463 100644 --- a/src/Bundle/ChillDocStoreBundle/Controller/WebdavController.php +++ b/src/Bundle/ChillDocStoreBundle/Controller/WebdavController.php @@ -15,7 +15,6 @@ use Chill\DocStoreBundle\Dav\Request\PropfindRequestAnalyzer; use Chill\DocStoreBundle\Dav\Response\DavResponse; use Chill\DocStoreBundle\Entity\StoredObject; use Chill\DocStoreBundle\Security\Authorization\StoredObjectRoleEnum; -use Chill\DocStoreBundle\Security\Guard\JWTDavTokenProviderInterface; use Chill\DocStoreBundle\Service\StoredObjectManagerInterface; use DateTimeInterface; use Symfony\Component\HttpFoundation\Request; diff --git a/src/Bundle/ChillDocStoreBundle/Resources/public/module/document_action_buttons_group/index.ts b/src/Bundle/ChillDocStoreBundle/Resources/public/module/document_action_buttons_group/index.ts index 4180808dd..77eb8c2c9 100644 --- a/src/Bundle/ChillDocStoreBundle/Resources/public/module/document_action_buttons_group/index.ts +++ b/src/Bundle/ChillDocStoreBundle/Resources/public/module/document_action_buttons_group/index.ts @@ -17,18 +17,22 @@ window.addEventListener('DOMContentLoaded', function (e) { canEdit: string, storedObject: string, buttonSmall: string, + davLink: string, + davLinkExpiration: string, }; const storedObject = JSON.parse(datasets.storedObject) as StoredObject, filename = datasets.filename, canEdit = datasets.canEdit === '1', - small = datasets.buttonSmall === '1' + small = datasets.buttonSmall === '1', + davLink = 'davLink' in datasets && datasets.davLink !== '' ? datasets.davLink : null, + davLinkExpiration = 'davLinkExpiration' in datasets ? Number.parseInt(datasets.davLinkExpiration) : null ; - return { storedObject, filename, canEdit, small }; + return { storedObject, filename, canEdit, small, davLink, davLinkExpiration }; }, - template: '', + template: '', methods: { onStoredObjectStatusChange: function(newStatus: StoredObjectStatusChange): void { this.$data.storedObject.status = newStatus.status; diff --git a/src/Bundle/ChillDocStoreBundle/Resources/public/vuejs/DocumentActionButtonsGroup.vue b/src/Bundle/ChillDocStoreBundle/Resources/public/vuejs/DocumentActionButtonsGroup.vue index 88587e90f..284ae0f1f 100644 --- a/src/Bundle/ChillDocStoreBundle/Resources/public/vuejs/DocumentActionButtonsGroup.vue +++ b/src/Bundle/ChillDocStoreBundle/Resources/public/vuejs/DocumentActionButtonsGroup.vue @@ -7,6 +7,9 @@
  • +
  • + +
  • @@ -36,6 +39,7 @@ import { StoredObjectStatusChange, WopiEditButtonExecutableBeforeLeaveFunction } from "../types"; +import DesktopEditButton from "ChillDocStoreAssets/vuejs/StoredObjectButton/DesktopEditButton.vue"; interface DocumentActionButtonsGroupConfig { storedObject: StoredObject, @@ -57,6 +61,16 @@ interface DocumentActionButtonsGroupConfig { * If set, will execute this function before leaving to the editor */ executeBeforeLeave?: WopiEditButtonExecutableBeforeLeaveFunction, + + /** + * a link to download and edit file using webdav + */ + davLink?: string, + + /** + * the expiration date of the download, as a unix timestamp + */ + davLinkExpiration?: number, } const emit = defineEmits<{ @@ -68,7 +82,7 @@ const props = withDefaults(defineProps(), { canEdit: true, canDownload: true, canConvertPdf: true, - returnPath: window.location.pathname + window.location.search + window.location.hash, + returnPath: window.location.pathname + window.location.search + window.location.hash }); /** diff --git a/src/Bundle/ChillDocStoreBundle/Resources/public/vuejs/StoredObjectButton/DesktopEditButton.vue b/src/Bundle/ChillDocStoreBundle/Resources/public/vuejs/StoredObjectButton/DesktopEditButton.vue new file mode 100644 index 000000000..ef0d0d376 --- /dev/null +++ b/src/Bundle/ChillDocStoreBundle/Resources/public/vuejs/StoredObjectButton/DesktopEditButton.vue @@ -0,0 +1,66 @@ + + + + + diff --git a/src/Bundle/ChillDocStoreBundle/Resources/views/Button/button_group.html.twig b/src/Bundle/ChillDocStoreBundle/Resources/views/Button/button_group.html.twig index 2babe1ad9..6248cbd20 100644 --- a/src/Bundle/ChillDocStoreBundle/Resources/views/Button/button_group.html.twig +++ b/src/Bundle/ChillDocStoreBundle/Resources/views/Button/button_group.html.twig @@ -3,5 +3,7 @@ data-download-buttons data-stored-object="{{ document_json|json_encode|escape('html_attr') }}" data-can-edit="{{ can_edit ? '1' : '0' }}" + data-dav-link="{{ dav_link|escape('html_attr') }}" + data-dav-link-expiration="{{ dav_link_expiration|escape('html_attr') }}" {% if options['small'] is defined %}data-button-small="{{ options['small'] ? '1' : '0' }}"{% endif %} {% if title|default(document.title)|default(null) is not null %}data-filename="{{ title|default(document.title)|escape('html_attr') }}"{% endif %}> diff --git a/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTDavTokenProvider.php b/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTDavTokenProvider.php index 30b25dd0b..a297ed613 100644 --- a/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTDavTokenProvider.php +++ b/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTDavTokenProvider.php @@ -38,4 +38,11 @@ final readonly class JWTDavTokenProvider implements JWTDavTokenProviderInterface ]); } + public function getTokenExpiration(string $tokenString): \DateTimeImmutable + { + $jwt = $this->JWTTokenManager->parse($tokenString); + + return \DateTimeImmutable::createFromFormat('U', (string) $jwt['exp']); + } + } diff --git a/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTDavTokenProviderInterface.php b/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTDavTokenProviderInterface.php index 6be91a39c..b93b658b0 100644 --- a/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTDavTokenProviderInterface.php +++ b/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTDavTokenProviderInterface.php @@ -20,4 +20,6 @@ use Chill\DocStoreBundle\Security\Authorization\StoredObjectRoleEnum; interface JWTDavTokenProviderInterface { public function createToken(StoredObject $storedObject, StoredObjectRoleEnum $roleEnum): string; + + public function getTokenExpiration(string $tokenString): \DateTimeImmutable; } diff --git a/src/Bundle/ChillDocStoreBundle/Templating/WopiEditTwigExtensionRuntime.php b/src/Bundle/ChillDocStoreBundle/Templating/WopiEditTwigExtensionRuntime.php index 969e4f95e..c26e7d3fc 100644 --- a/src/Bundle/ChillDocStoreBundle/Templating/WopiEditTwigExtensionRuntime.php +++ b/src/Bundle/ChillDocStoreBundle/Templating/WopiEditTwigExtensionRuntime.php @@ -13,6 +13,10 @@ namespace Chill\DocStoreBundle\Templating; use ChampsLibres\WopiLib\Contract\Service\Discovery\DiscoveryInterface; use Chill\DocStoreBundle\Entity\StoredObject; +use Chill\DocStoreBundle\Security\Authorization\StoredObjectRoleEnum; +use Chill\DocStoreBundle\Security\Guard\JWTDavTokenProviderInterface; +use Namshi\JOSE\JWS; +use Symfony\Component\Routing\Generator\UrlGeneratorInterface; use Symfony\Component\Serializer\Normalizer\AbstractNormalizer; use Symfony\Component\Serializer\Normalizer\NormalizerInterface; use Twig\Environment; @@ -120,9 +124,12 @@ final readonly class WopiEditTwigExtensionRuntime implements RuntimeExtensionInt private const TEMPLATE_BUTTON_GROUP = '@ChillDocStore/Button/button_group.html.twig'; - public function __construct(private DiscoveryInterface $discovery, private NormalizerInterface $normalizer) - { - } + public function __construct( + private DiscoveryInterface $discovery, + private NormalizerInterface $normalizer, + private JWTDavTokenProviderInterface $davTokenProvider, + private UrlGeneratorInterface $urlGenerator, + ) {} /** * return true if the document is editable. @@ -132,7 +139,7 @@ final readonly class WopiEditTwigExtensionRuntime implements RuntimeExtensionInt */ public function isEditable(StoredObject $document): bool { - return \in_array($document->getType(), self::SUPPORTED_MIMES, true); + return in_array($document->getType(), self::SUPPORTED_MIMES, true); } /** @@ -142,18 +149,32 @@ final readonly class WopiEditTwigExtensionRuntime implements RuntimeExtensionInt * @throws \Twig\Error\RuntimeError * @throws \Twig\Error\SyntaxError */ - public function renderButtonGroup(Environment $environment, StoredObject $document, string $title = null, bool $canEdit = true, array $options = []): string + public function renderButtonGroup(Environment $environment, StoredObject $document, ?string $title = null, bool $canEdit = true, array $options = []): string { + $accessToken = $this->davTokenProvider->createToken( + $document, + $canEdit ? StoredObjectRoleEnum::EDIT : StoredObjectRoleEnum::SEE + ); + return $environment->render(self::TEMPLATE_BUTTON_GROUP, [ 'document' => $document, 'document_json' => $this->normalizer->normalize($document, 'json', [AbstractNormalizer::GROUPS => ['read']]), 'title' => $title, 'can_edit' => $canEdit, 'options' => [...self::DEFAULT_OPTIONS_TEMPLATE_BUTTON_GROUP, ...$options], + 'dav_link' => $this->urlGenerator->generate( + 'chill_docstore_dav_document_get', + [ + 'uuid' => $document->getUuid(), + 'access_token' => $accessToken, + ], + UrlGeneratorInterface::ABSOLUTE_URL, + ), + 'dav_link_expiration' => $this->davTokenProvider->getTokenExpiration($accessToken)->format('U'), ]); } - public function renderEditButton(Environment $environment, StoredObject $document, array $options = null): string + public function renderEditButton(Environment $environment, StoredObject $document, ?array $options = null): string { return $environment->render(self::TEMPLATE, [ 'document' => $document, From a0328b9d68093cad82072c1c0475006e4f6538e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julien=20Fastr=C3=A9?= Date: Mon, 15 Jan 2024 20:38:03 +0100 Subject: [PATCH 007/136] Apply new CS rules on the webdav feature --- ...TokenAuthenticationEventSubscriberTest.php | 1 + .../Controller/WebdavController.php | 29 ++++--- .../Dav/Exception/ParseRequestException.php | 4 +- .../Dav/Request/PropfindRequestAnalyzer.php | 9 +-- .../Authorization/StoredObjectVoter.php | 8 +- .../Security/Guard/DavOnUrlTokenExtractor.php | 9 ++- .../DavTokenAuthenticationEventSubscriber.php | 4 +- .../Security/Guard/JWTDavTokenProvider.php | 6 +- .../Guard/JWTDavTokenProviderInterface.php | 2 +- .../WopiEditTwigExtensionRuntime.php | 8 +- .../Tests/Controller/WebdavControllerTest.php | 32 ++++---- .../Request/PropfindRequestAnalyzerTest.php | 80 +++++++++---------- .../Authorization/StoredObjectVoterTest.php | 17 ++-- .../Guard/DavOnUrlTokenExtractorTest.php | 3 +- 14 files changed, 104 insertions(+), 108 deletions(-) diff --git a/src/Bundle/ChillAsideActivityBundle/src/Tests/Chill/DocStoreBundle/Tests/Security/Guard/DavTokenAuthenticationEventSubscriberTest.php b/src/Bundle/ChillAsideActivityBundle/src/Tests/Chill/DocStoreBundle/Tests/Security/Guard/DavTokenAuthenticationEventSubscriberTest.php index 03cea7d29..875e40a65 100644 --- a/src/Bundle/ChillAsideActivityBundle/src/Tests/Chill/DocStoreBundle/Tests/Security/Guard/DavTokenAuthenticationEventSubscriberTest.php +++ b/src/Bundle/ChillAsideActivityBundle/src/Tests/Chill/DocStoreBundle/Tests/Security/Guard/DavTokenAuthenticationEventSubscriberTest.php @@ -19,6 +19,7 @@ use Symfony\Component\Security\Core\Authentication\Token\AbstractToken; /** * @internal + * * @coversNothing */ class DavTokenAuthenticationEventSubscriberTest extends TestCase diff --git a/src/Bundle/ChillDocStoreBundle/Controller/WebdavController.php b/src/Bundle/ChillDocStoreBundle/Controller/WebdavController.php index b4624d463..70aecbe1e 100644 --- a/src/Bundle/ChillDocStoreBundle/Controller/WebdavController.php +++ b/src/Bundle/ChillDocStoreBundle/Controller/WebdavController.php @@ -16,7 +16,6 @@ use Chill\DocStoreBundle\Dav\Response\DavResponse; use Chill\DocStoreBundle\Entity\StoredObject; use Chill\DocStoreBundle\Security\Authorization\StoredObjectRoleEnum; use Chill\DocStoreBundle\Service\StoredObjectManagerInterface; -use DateTimeInterface; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\HttpKernel\Exception\AccessDeniedHttpException; @@ -42,7 +41,7 @@ final readonly class WebdavController public function __construct( private \Twig\Environment $engine, private StoredObjectManagerInterface $storedObjectManager, - private Security $security, + private Security $security, ) { $this->requestAnalyzer = new PropfindRequestAnalyzer(); } @@ -73,11 +72,11 @@ final readonly class WebdavController throw new AccessDeniedHttpException(); } - $response = (new DavResponse("")) + $response = (new DavResponse('')) ->setEtag($this->storedObjectManager->etag($storedObject)) ; - //$response->headers->add(['Allow' => 'OPTIONS,GET,HEAD,DELETE,PROPFIND,PUT,PROPPATCH,COPY,MOVE,REPORT,PATCH,POST,TRACE']); + // $response->headers->add(['Allow' => 'OPTIONS,GET,HEAD,DELETE,PROPFIND,PUT,PROPPATCH,COPY,MOVE,REPORT,PATCH,POST,TRACE']); $response->headers->add(['Allow' => 'OPTIONS,GET,HEAD,DELETE,PROPFIND,PUT']); return $response; @@ -94,8 +93,8 @@ final readonly class WebdavController $depth = $request->headers->get('depth'); - if ("0" !== $depth && "1" !== $depth) { - throw new BadRequestHttpException("only 1 and 0 are accepted for Depth header"); + if ('0' !== $depth && '1' !== $depth) { + throw new BadRequestHttpException('only 1 and 0 are accepted for Depth header'); } [$properties, $lastModified, $etag, $length] = $this->parseDavRequest($request->getContent(), $storedObject); @@ -104,7 +103,7 @@ final readonly class WebdavController $this->engine->render('@ChillDocStore/Webdav/directory_propfind.xml.twig', [ 'stored_object' => $storedObject, 'properties' => $properties, - 'last_modified' => $lastModified , + 'last_modified' => $lastModified, 'etag' => $etag, 'content_length' => $length, 'depth' => (int) $depth, @@ -114,7 +113,7 @@ final readonly class WebdavController ); $response->headers->add([ - 'Content-Type' => 'text/xml' + 'Content-Type' => 'text/xml', ]); return $response; @@ -142,13 +141,13 @@ final readonly class WebdavController throw new AccessDeniedHttpException(); } - $response = new DavResponse(""); + $response = new DavResponse(''); $response->headers->add( [ 'Content-Length' => $this->storedObjectManager->getContentLength($storedObject), 'Content-Type' => $storedObject->getType(), - 'Etag' => $this->storedObjectManager->etag($storedObject) + 'Etag' => $this->storedObjectManager->etag($storedObject), ] ); @@ -164,7 +163,7 @@ final readonly class WebdavController throw new AccessDeniedHttpException(); } - $response = (new DavResponse("")) + $response = (new DavResponse('')) ->setEtag($this->storedObjectManager->etag($storedObject)) ; @@ -201,7 +200,7 @@ final readonly class WebdavController $response ->headers->add([ - 'Content-Type' => 'text/xml' + 'Content-Type' => 'text/xml', ]); return $response; @@ -218,11 +217,11 @@ final readonly class WebdavController $this->storedObjectManager->write($storedObject, $request->getContent()); - return (new DavResponse("", Response::HTTP_NO_CONTENT)); + return new DavResponse('', Response::HTTP_NO_CONTENT); } /** - * @return array{0: array, 1: DateTimeInterface, 2: string, 3: int} properties, lastModified, etag, length + * @return array{0: array, 1: \DateTimeInterface, 2: string, 3: int} properties, lastModified, etag, length */ private function parseDavRequest(string $content, StoredObject $storedObject): array { @@ -247,7 +246,7 @@ final readonly class WebdavController $properties, $lastModified ?? null, $etag ?? null, - $length ?? null + $length ?? null, ]; } } diff --git a/src/Bundle/ChillDocStoreBundle/Dav/Exception/ParseRequestException.php b/src/Bundle/ChillDocStoreBundle/Dav/Exception/ParseRequestException.php index 0c740be17..70fff1866 100644 --- a/src/Bundle/ChillDocStoreBundle/Dav/Exception/ParseRequestException.php +++ b/src/Bundle/ChillDocStoreBundle/Dav/Exception/ParseRequestException.php @@ -11,4 +11,6 @@ declare(strict_types=1); namespace Chill\DocStoreBundle\Dav\Exception; -class ParseRequestException extends \UnexpectedValueException {} +class ParseRequestException extends \UnexpectedValueException +{ +} diff --git a/src/Bundle/ChillDocStoreBundle/Dav/Request/PropfindRequestAnalyzer.php b/src/Bundle/ChillDocStoreBundle/Dav/Request/PropfindRequestAnalyzer.php index 3abf43c62..e6c52a193 100644 --- a/src/Bundle/ChillDocStoreBundle/Dav/Request/PropfindRequestAnalyzer.php +++ b/src/Bundle/ChillDocStoreBundle/Dav/Request/PropfindRequestAnalyzer.php @@ -36,17 +36,17 @@ class PropfindRequestAnalyzer $propfinds = $request->getElementsByTagNameNS('DAV:', 'propfind'); if (0 === $propfinds->count()) { - throw new ParseRequestException("any propfind element found"); + throw new ParseRequestException('any propfind element found'); } if (1 < $propfinds->count()) { - throw new ParseRequestException("too much propfind element found"); + throw new ParseRequestException('too much propfind element found'); } $propfind = $propfinds->item(0); if (0 === $propfind->childNodes->count()) { - throw new ParseRequestException("no element under propfind"); + throw new ParseRequestException('no element under propfind'); } $unknows = []; @@ -79,7 +79,6 @@ class PropfindRequestAnalyzer default => '', }; } - } $props = array_filter(array_values($props), fn (string $item) => '' !== $item); @@ -98,7 +97,7 @@ class PropfindRequestAnalyzer self::KNOWN_PROPS, array_fill(0, count(self::KNOWN_PROPS), $default) ), - 'unknowns' => [] + 'unknowns' => [], ]; } } diff --git a/src/Bundle/ChillDocStoreBundle/Security/Authorization/StoredObjectVoter.php b/src/Bundle/ChillDocStoreBundle/Security/Authorization/StoredObjectVoter.php index 570a2be13..2e253cf3c 100644 --- a/src/Bundle/ChillDocStoreBundle/Security/Authorization/StoredObjectVoter.php +++ b/src/Bundle/ChillDocStoreBundle/Security/Authorization/StoredObjectVoter.php @@ -34,8 +34,7 @@ class StoredObjectVoter extends Voter /** @var StoredObject $subject */ if ( !$token->hasAttribute(DavTokenAuthenticationEventSubscriber::STORED_OBJECT) - || - $subject->getUuid()->toString() !== $token->getAttribute(DavTokenAuthenticationEventSubscriber::STORED_OBJECT) + || $subject->getUuid()->toString() !== $token->getAttribute(DavTokenAuthenticationEventSubscriber::STORED_OBJECT) ) { return false; } @@ -49,9 +48,8 @@ class StoredObjectVoter extends Voter $token->getAttribute(DavTokenAuthenticationEventSubscriber::ACTIONS); return match ($askedRole) { - StoredObjectRoleEnum::SEE => - $tokenRoleAuthorization === StoredObjectRoleEnum::EDIT || $tokenRoleAuthorization === StoredObjectRoleEnum::SEE, - StoredObjectRoleEnum::EDIT => $tokenRoleAuthorization === StoredObjectRoleEnum::EDIT + StoredObjectRoleEnum::SEE => StoredObjectRoleEnum::EDIT === $tokenRoleAuthorization || StoredObjectRoleEnum::SEE === $tokenRoleAuthorization, + StoredObjectRoleEnum::EDIT => StoredObjectRoleEnum::EDIT === $tokenRoleAuthorization }; } } diff --git a/src/Bundle/ChillDocStoreBundle/Security/Guard/DavOnUrlTokenExtractor.php b/src/Bundle/ChillDocStoreBundle/Security/Guard/DavOnUrlTokenExtractor.php index 0b2cc6a0a..543996f57 100644 --- a/src/Bundle/ChillDocStoreBundle/Security/Guard/DavOnUrlTokenExtractor.php +++ b/src/Bundle/ChillDocStoreBundle/Security/Guard/DavOnUrlTokenExtractor.php @@ -27,9 +27,10 @@ final readonly class DavOnUrlTokenExtractor implements TokenExtractorInterface { public function __construct( private LoggerInterface $logger, - ) {} + ) { + } - public function extract(Request $request): string|false + public function extract(Request $request): false|string { $uri = $request->getRequestUri(); @@ -41,13 +42,13 @@ final readonly class DavOnUrlTokenExtractor implements TokenExtractorInterface ); if (2 > count($segments)) { - $this->logger->info("not enough segment for parsing URL"); + $this->logger->info('not enough segment for parsing URL'); return false; } if ('dav' !== $segments[0]) { - $this->logger->info("the first segment of the url must be DAV"); + $this->logger->info('the first segment of the url must be DAV'); return false; } diff --git a/src/Bundle/ChillDocStoreBundle/Security/Guard/DavTokenAuthenticationEventSubscriber.php b/src/Bundle/ChillDocStoreBundle/Security/Guard/DavTokenAuthenticationEventSubscriber.php index c3f527e71..7b33c0eec 100644 --- a/src/Bundle/ChillDocStoreBundle/Security/Guard/DavTokenAuthenticationEventSubscriber.php +++ b/src/Bundle/ChillDocStoreBundle/Security/Guard/DavTokenAuthenticationEventSubscriber.php @@ -43,11 +43,9 @@ class DavTokenAuthenticationEventSubscriber implements EventSubscriberInterface $token->setAttribute(self::ACTIONS, match ($payload['e']) { 0 => StoredObjectRoleEnum::SEE, 1 => StoredObjectRoleEnum::EDIT, - default => throw new \UnexpectedValueException("unsupported value for e parameter") + default => throw new \UnexpectedValueException('unsupported value for e parameter') }); $token->setAttribute(self::STORED_OBJECT, $payload['so']); } - - } diff --git a/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTDavTokenProvider.php b/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTDavTokenProvider.php index a297ed613..24e89a3ba 100644 --- a/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTDavTokenProvider.php +++ b/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTDavTokenProvider.php @@ -17,14 +17,15 @@ use Lexik\Bundle\JWTAuthenticationBundle\Services\JWTTokenManagerInterface; use Symfony\Component\Security\Core\Security; /** - * Provide a JWT Token which will be valid for viewing or editing a document + * Provide a JWT Token which will be valid for viewing or editing a document. */ final readonly class JWTDavTokenProvider implements JWTDavTokenProviderInterface { public function __construct( private JWTTokenManagerInterface $JWTTokenManager, private Security $security, - ) {} + ) { + } public function createToken(StoredObject $storedObject, StoredObjectRoleEnum $roleEnum): string { @@ -44,5 +45,4 @@ final readonly class JWTDavTokenProvider implements JWTDavTokenProviderInterface return \DateTimeImmutable::createFromFormat('U', (string) $jwt['exp']); } - } diff --git a/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTDavTokenProviderInterface.php b/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTDavTokenProviderInterface.php index b93b658b0..95c62c86e 100644 --- a/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTDavTokenProviderInterface.php +++ b/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTDavTokenProviderInterface.php @@ -15,7 +15,7 @@ use Chill\DocStoreBundle\Entity\StoredObject; use Chill\DocStoreBundle\Security\Authorization\StoredObjectRoleEnum; /** - * Provide a JWT Token which will be valid for viewing or editing a document + * Provide a JWT Token which will be valid for viewing or editing a document. */ interface JWTDavTokenProviderInterface { diff --git a/src/Bundle/ChillDocStoreBundle/Templating/WopiEditTwigExtensionRuntime.php b/src/Bundle/ChillDocStoreBundle/Templating/WopiEditTwigExtensionRuntime.php index c26e7d3fc..fd6c718b9 100644 --- a/src/Bundle/ChillDocStoreBundle/Templating/WopiEditTwigExtensionRuntime.php +++ b/src/Bundle/ChillDocStoreBundle/Templating/WopiEditTwigExtensionRuntime.php @@ -15,7 +15,6 @@ use ChampsLibres\WopiLib\Contract\Service\Discovery\DiscoveryInterface; use Chill\DocStoreBundle\Entity\StoredObject; use Chill\DocStoreBundle\Security\Authorization\StoredObjectRoleEnum; use Chill\DocStoreBundle\Security\Guard\JWTDavTokenProviderInterface; -use Namshi\JOSE\JWS; use Symfony\Component\Routing\Generator\UrlGeneratorInterface; use Symfony\Component\Serializer\Normalizer\AbstractNormalizer; use Symfony\Component\Serializer\Normalizer\NormalizerInterface; @@ -129,7 +128,8 @@ final readonly class WopiEditTwigExtensionRuntime implements RuntimeExtensionInt private NormalizerInterface $normalizer, private JWTDavTokenProviderInterface $davTokenProvider, private UrlGeneratorInterface $urlGenerator, - ) {} + ) { + } /** * return true if the document is editable. @@ -149,7 +149,7 @@ final readonly class WopiEditTwigExtensionRuntime implements RuntimeExtensionInt * @throws \Twig\Error\RuntimeError * @throws \Twig\Error\SyntaxError */ - public function renderButtonGroup(Environment $environment, StoredObject $document, ?string $title = null, bool $canEdit = true, array $options = []): string + public function renderButtonGroup(Environment $environment, StoredObject $document, string $title = null, bool $canEdit = true, array $options = []): string { $accessToken = $this->davTokenProvider->createToken( $document, @@ -174,7 +174,7 @@ final readonly class WopiEditTwigExtensionRuntime implements RuntimeExtensionInt ]); } - public function renderEditButton(Environment $environment, StoredObject $document, ?array $options = null): string + public function renderEditButton(Environment $environment, StoredObject $document, array $options = null): string { return $environment->render(self::TEMPLATE, [ 'document' => $document, diff --git a/src/Bundle/ChillDocStoreBundle/Tests/Controller/WebdavControllerTest.php b/src/Bundle/ChillDocStoreBundle/Tests/Controller/WebdavControllerTest.php index 93d4d85e8..9254efc2d 100644 --- a/src/Bundle/ChillDocStoreBundle/Tests/Controller/WebdavControllerTest.php +++ b/src/Bundle/ChillDocStoreBundle/Tests/Controller/WebdavControllerTest.php @@ -14,18 +14,16 @@ namespace Chill\DocStoreBundle\Tests\Controller; use Chill\DocStoreBundle\Controller\WebdavController; use Chill\DocStoreBundle\Entity\StoredObject; use Chill\DocStoreBundle\Service\StoredObjectManagerInterface; -use DateTimeInterface; -use PHPUnit\Framework\TestCase; use Prophecy\Argument; use Prophecy\PhpUnit\ProphecyTrait; use Ramsey\Uuid\Uuid; use Symfony\Bundle\FrameworkBundle\Test\KernelTestCase; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\Security\Core\Security; -use Symfony\Component\Templating\EngineInterface; /** * @internal + * * @coversNothing */ class WebdavControllerTest extends KernelTestCase @@ -124,7 +122,7 @@ class WebdavControllerTest extends KernelTestCase self::assertEquals($expectedStatusCode, $response->getStatusCode()); self::assertContains('content-type', $response->headers->keys()); self::assertStringContainsString('text/xml', $response->headers->get('content-type')); - self::assertTrue((new \DOMDocument())->loadXML($response->getContent()), $message . " test that the xml response is a valid xml"); + self::assertTrue((new \DOMDocument())->loadXML($response->getContent()), $message.' test that the xml response is a valid xml'); self::assertXmlStringEqualsXmlString($expectedXmlResponse, $response->getContent(), $message); } @@ -137,13 +135,13 @@ class WebdavControllerTest extends KernelTestCase $request = new Request([], [], [], [], [], [], $requestContent); $request->setMethod('PROPFIND'); - $request->headers->add(["Depth" => "0"]); + $request->headers->add(['Depth' => '0']); $response = $controller->propfindDirectory($this->buildDocument(), '1234', $request); self::assertEquals($expectedStatusCode, $response->getStatusCode()); self::assertContains('content-type', $response->headers->keys()); self::assertStringContainsString('text/xml', $response->headers->get('content-type')); - self::assertTrue((new \DOMDocument())->loadXML($response->getContent()), $message . " test that the xml response is a valid xml"); + self::assertTrue((new \DOMDocument())->loadXML($response->getContent()), $message.' test that the xml response is a valid xml'); self::assertXmlStringEqualsXmlString($expectedXmlResponse, $response->getContent(), $message); } @@ -192,7 +190,7 @@ class WebdavControllerTest extends KernelTestCase
    XML; - yield [$content, 207, $response, "get IsReadOnly and contenttype from server"]; + yield [$content, 207, $response, 'get IsReadOnly and contenttype from server']; $content = <<<'XML' @@ -220,7 +218,7 @@ class WebdavControllerTest extends KernelTestCase
    XML; - yield [$content, 207, $response, "get property IsReadOnly"]; + yield [$content, 207, $response, 'get property IsReadOnly']; yield [ <<<'XML' @@ -246,7 +244,7 @@ class WebdavControllerTest extends KernelTestCase
    XML, - "Test requesting an unknow property" + 'Test requesting an unknow property', ]; yield [ @@ -274,7 +272,7 @@ class WebdavControllerTest extends KernelTestCase
    XML, - "test getting the last modified date" + 'test getting the last modified date', ]; yield [ @@ -311,7 +309,7 @@ class WebdavControllerTest extends KernelTestCase
    XML, - "test finding all properties" + 'test finding all properties', ]; } @@ -356,7 +354,7 @@ class WebdavControllerTest extends KernelTestCase
    XML, - "test resourceType and IsReadOnly " + 'test resourceType and IsReadOnly ', ]; yield [ @@ -379,15 +377,14 @@ class WebdavControllerTest extends KernelTestCase
    XML, - "test creatableContentsInfo" + 'test creatableContentsInfo', ]; } - } class MockedStoredObjectManager implements StoredObjectManagerInterface { - public function getLastModified(StoredObject $document): DateTimeInterface + public function getLastModified(StoredObject $document): \DateTimeInterface { return new \DateTimeImmutable('2023-09-13T14:15'); } @@ -402,11 +399,12 @@ class MockedStoredObjectManager implements StoredObjectManagerInterface return 'abcde'; } - public function write(StoredObject $document, string $clearContent): void {} + public function write(StoredObject $document, string $clearContent): void + { + } public function etag(StoredObject $document): string { return 'ab56b4d92b40713acc5af89985d4b786'; } - } diff --git a/src/Bundle/ChillDocStoreBundle/Tests/Dav/Request/PropfindRequestAnalyzerTest.php b/src/Bundle/ChillDocStoreBundle/Tests/Dav/Request/PropfindRequestAnalyzerTest.php index 3cc2f19fe..babe9932a 100644 --- a/src/Bundle/ChillDocStoreBundle/Tests/Dav/Request/PropfindRequestAnalyzerTest.php +++ b/src/Bundle/ChillDocStoreBundle/Tests/Dav/Request/PropfindRequestAnalyzerTest.php @@ -12,11 +12,11 @@ declare(strict_types=1); namespace Chill\DocStoreBundle\Tests\Dav\Request; use Chill\DocStoreBundle\Dav\Request\PropfindRequestAnalyzer; -use phpseclib3\Crypt\DSA\Formats\Keys\XML; use PHPUnit\Framework\TestCase; /** * @internal + * * @coversNothing */ class PropfindRequestAnalyzerTest extends TestCase @@ -33,7 +33,7 @@ class PropfindRequestAnalyzerTest extends TestCase $actual = $analyzer->getRequestedProperties($request); foreach ($expected as $key => $value) { - if ($key === 'unknowns') { + if ('unknowns' === $key) { continue; } @@ -59,17 +59,17 @@ class PropfindRequestAnalyzerTest extends TestCase XML, [ - "resourceType" => false, - "contentType" => false, - "lastModified" => false, - "creationDate" => false, - "contentLength" => false, - "etag" => false, - "supportedLock" => false, + 'resourceType' => false, + 'contentType' => false, + 'lastModified' => false, + 'creationDate' => false, + 'contentLength' => false, + 'etag' => false, + 'supportedLock' => false, 'unknowns' => [ - ['xmlns' => 'http://ucb.openoffice.org/dav/props/', 'prop' => 'BaseURI'] - ] - ] + ['xmlns' => 'http://ucb.openoffice.org/dav/props/', 'prop' => 'BaseURI'], + ], + ], ]; yield [ @@ -80,15 +80,15 @@ class PropfindRequestAnalyzerTest extends TestCase XML, [ - "resourceType" => true, - "contentType" => true, - "lastModified" => true, - "creationDate" => true, - "contentLength" => true, - "etag" => true, - "supportedLock" => true, - "unknowns" => [], - ] + 'resourceType' => true, + 'contentType' => true, + 'lastModified' => true, + 'creationDate' => true, + 'contentLength' => true, + 'etag' => true, + 'supportedLock' => true, + 'unknowns' => [], + ], ]; yield [ @@ -101,15 +101,15 @@ class PropfindRequestAnalyzerTest extends TestCase XML, [ - "resourceType" => false, - "contentType" => false, - "lastModified" => true, - "creationDate" => false, - "contentLength" => false, - "etag" => false, - "supportedLock" => false, - 'unknowns' => [] - ] + 'resourceType' => false, + 'contentType' => false, + 'lastModified' => true, + 'creationDate' => false, + 'contentLength' => false, + 'etag' => false, + 'supportedLock' => false, + 'unknowns' => [], + ], ]; yield [ @@ -118,17 +118,17 @@ class PropfindRequestAnalyzerTest extends TestCase XML, [ - "resourceType" => true, - "contentType" => true, - "lastModified" => false, - "creationDate" => false, - "contentLength" => false, - "etag" => false, - "supportedLock" => false, + 'resourceType' => true, + 'contentType' => true, + 'lastModified' => false, + 'creationDate' => false, + 'contentLength' => false, + 'etag' => false, + 'supportedLock' => false, 'unknowns' => [ - ['xmlns' => 'http://ucb.openoffice.org/dav/props/', 'prop' => 'IsReadOnly'] - ] - ] + ['xmlns' => 'http://ucb.openoffice.org/dav/props/', 'prop' => 'IsReadOnly'], + ], + ], ]; } } diff --git a/src/Bundle/ChillDocStoreBundle/Tests/Security/Authorization/StoredObjectVoterTest.php b/src/Bundle/ChillDocStoreBundle/Tests/Security/Authorization/StoredObjectVoterTest.php index c4518586f..477427078 100644 --- a/src/Bundle/ChillDocStoreBundle/Tests/Security/Authorization/StoredObjectVoterTest.php +++ b/src/Bundle/ChillDocStoreBundle/Tests/Security/Authorization/StoredObjectVoterTest.php @@ -22,6 +22,7 @@ use Symfony\Component\Security\Core\Authorization\Voter\VoterInterface; /** * @internal + * * @coversNothing */ class StoredObjectVoterTest extends TestCase @@ -31,7 +32,7 @@ class StoredObjectVoterTest extends TestCase /** * @dataProvider provideDataVote */ - public function testVote(TokenInterface $token, object|null $subject, string $attribute, mixed $expected): void + public function testVote(TokenInterface $token, null|object $subject, string $attribute, mixed $expected): void { $voter = new StoredObjectVoter(); @@ -44,28 +45,28 @@ class StoredObjectVoterTest extends TestCase $this->buildToken(StoredObjectRoleEnum::EDIT, new StoredObject()), new \stdClass(), 'SOMETHING', - VoterInterface::ACCESS_ABSTAIN + VoterInterface::ACCESS_ABSTAIN, ]; yield [ $this->buildToken(StoredObjectRoleEnum::EDIT, $so = new StoredObject()), $so, 'SOMETHING', - VoterInterface::ACCESS_ABSTAIN + VoterInterface::ACCESS_ABSTAIN, ]; yield [ $this->buildToken(StoredObjectRoleEnum::EDIT, $so = new StoredObject()), $so, StoredObjectRoleEnum::SEE->value, - VoterInterface::ACCESS_GRANTED + VoterInterface::ACCESS_GRANTED, ]; yield [ $this->buildToken(StoredObjectRoleEnum::EDIT, $so = new StoredObject()), $so, StoredObjectRoleEnum::EDIT->value, - VoterInterface::ACCESS_GRANTED + VoterInterface::ACCESS_GRANTED, ]; yield [ @@ -79,7 +80,7 @@ class StoredObjectVoterTest extends TestCase $this->buildToken(StoredObjectRoleEnum::SEE, $so = new StoredObject()), $so, StoredObjectRoleEnum::SEE->value, - VoterInterface::ACCESS_GRANTED + VoterInterface::ACCESS_GRANTED, ]; yield [ @@ -97,8 +98,7 @@ class StoredObjectVoterTest extends TestCase ]; } - - private function buildToken(?StoredObjectRoleEnum $storedObjectRoleEnum = null, ?StoredObject $storedObject = null): TokenInterface + private function buildToken(StoredObjectRoleEnum $storedObjectRoleEnum = null, StoredObject $storedObject = null): TokenInterface { $token = $this->prophesize(TokenInterface::class); @@ -110,7 +110,6 @@ class StoredObjectVoterTest extends TestCase $token->getAttribute(DavTokenAuthenticationEventSubscriber::ACTIONS)->willThrow(new \InvalidArgumentException()); } - if (null !== $storedObject) { $token->hasAttribute(DavTokenAuthenticationEventSubscriber::STORED_OBJECT)->willReturn(true); $token->getAttribute(DavTokenAuthenticationEventSubscriber::STORED_OBJECT)->willReturn($storedObject->getUuid()->toString()); diff --git a/src/Bundle/ChillDocStoreBundle/Tests/Security/Guard/DavOnUrlTokenExtractorTest.php b/src/Bundle/ChillDocStoreBundle/Tests/Security/Guard/DavOnUrlTokenExtractorTest.php index b9e046b28..e1e0a3b36 100644 --- a/src/Bundle/ChillDocStoreBundle/Tests/Security/Guard/DavOnUrlTokenExtractorTest.php +++ b/src/Bundle/ChillDocStoreBundle/Tests/Security/Guard/DavOnUrlTokenExtractorTest.php @@ -19,6 +19,7 @@ use Symfony\Component\HttpFoundation\Request; /** * @internal + * * @coversNothing */ class DavOnUrlTokenExtractorTest extends TestCase @@ -28,7 +29,7 @@ class DavOnUrlTokenExtractorTest extends TestCase /** * @dataProvider provideDataUri */ - public function testExtract(string $uri, string|false $expected): void + public function testExtract(string $uri, false|string $expected): void { $request = $this->prophesize(Request::class); $request->getRequestUri()->willReturn($uri); From cf1df462dcf02d5d3df763ce4fa09bb45f69b3b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julien=20Fastr=C3=A9?= Date: Mon, 15 Jan 2024 21:18:51 +0100 Subject: [PATCH 008/136] optional parameter after the required one --- .../Security/Guard/JWTOnDavUrlAuthenticator.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTOnDavUrlAuthenticator.php b/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTOnDavUrlAuthenticator.php index ceb44949a..7695fb635 100644 --- a/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTOnDavUrlAuthenticator.php +++ b/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTOnDavUrlAuthenticator.php @@ -27,9 +27,9 @@ class JWTOnDavUrlAuthenticator extends JWTTokenAuthenticator JWTTokenManagerInterface $jwtManager, EventDispatcherInterface $dispatcher, TokenExtractorInterface $tokenExtractor, + private readonly DavOnUrlTokenExtractor $davOnUrlTokenExtractor, TokenStorageInterface $preAuthenticationTokenStorage, TranslatorInterface $translator = null, - private readonly DavOnUrlTokenExtractor $davOnUrlTokenExtractor, ) { parent::__construct($jwtManager, $dispatcher, $tokenExtractor, $preAuthenticationTokenStorage, $translator); } From 0737838dd6cb671630b069f3cd5a256273306c27 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julien=20Fastr=C3=A9?= Date: Tue, 26 Mar 2024 22:08:01 +0100 Subject: [PATCH 009/136] Fix layout in admin document generation A layout issue in the admin document generation has been fixed, particularly in the ChillDocGeneratorBundle. Unnecessary elements such as table headers and multiple entity data rows in DocGeneratorTemplate have been removed, simplifying the view page and improving its performance. --- .../unreleased/Fixed-20240326-220740.yaml | 5 +++ .../DocGeneratorTemplate/index.html.twig | 33 ------------------- 2 files changed, 5 insertions(+), 33 deletions(-) create mode 100644 .changes/unreleased/Fixed-20240326-220740.yaml diff --git a/.changes/unreleased/Fixed-20240326-220740.yaml b/.changes/unreleased/Fixed-20240326-220740.yaml new file mode 100644 index 000000000..078631037 --- /dev/null +++ b/.changes/unreleased/Fixed-20240326-220740.yaml @@ -0,0 +1,5 @@ +kind: Fixed +body: Fix layout issue in document generation for admin (minor) +time: 2024-03-26T22:07:40.044924041+01:00 +custom: + Issue: "" diff --git a/src/Bundle/ChillDocGeneratorBundle/Resources/views/DocGeneratorTemplate/index.html.twig b/src/Bundle/ChillDocGeneratorBundle/Resources/views/DocGeneratorTemplate/index.html.twig index cfe071986..ee167bcf7 100644 --- a/src/Bundle/ChillDocGeneratorBundle/Resources/views/DocGeneratorTemplate/index.html.twig +++ b/src/Bundle/ChillDocGeneratorBundle/Resources/views/DocGeneratorTemplate/index.html.twig @@ -14,11 +14,6 @@ {% block admin_content %} {% embed '@ChillMain/CRUD/_index.html.twig' %} {% block table_entities_thead_tr %} - - {{ 'Title'|trans }} - {{ 'docgen.Context'|trans }} - {{ 'docgen.test generate'|trans }} - {{ 'Edit'|trans }} {% endblock %} {% block table_entities_tbody %} @@ -62,34 +57,6 @@ {% endif %} - - {% for entity in entities %} - - {{ entity.id }} - {{ entity.name|localize_translatable_string}} - {{ contextManager.getContextByKey(entity.context).name|trans }} - -
    - - - - - - -
    - - -
      -
    • - {{ entity.file|chill_document_button_group('Template file', true, {small: true}) }} -
    • -
    • - -
    • -
    - - - {% endfor %} {% endblock %} {% block actions_before %} From ab9d5439c1ced58929d544f74903545ab4d3ca19 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julien=20Fastr=C3=A9?= Date: Tue, 26 Mar 2024 22:08:30 +0100 Subject: [PATCH 010/136] Release 2.18.1 --- .changes/unreleased/Fixed-20240326-220740.yaml | 5 ----- .changes/v2.18.1.md | 3 +++ CHANGELOG.md | 4 ++++ 3 files changed, 7 insertions(+), 5 deletions(-) delete mode 100644 .changes/unreleased/Fixed-20240326-220740.yaml create mode 100644 .changes/v2.18.1.md diff --git a/.changes/unreleased/Fixed-20240326-220740.yaml b/.changes/unreleased/Fixed-20240326-220740.yaml deleted file mode 100644 index 078631037..000000000 --- a/.changes/unreleased/Fixed-20240326-220740.yaml +++ /dev/null @@ -1,5 +0,0 @@ -kind: Fixed -body: Fix layout issue in document generation for admin (minor) -time: 2024-03-26T22:07:40.044924041+01:00 -custom: - Issue: "" diff --git a/.changes/v2.18.1.md b/.changes/v2.18.1.md new file mode 100644 index 000000000..f0d68925d --- /dev/null +++ b/.changes/v2.18.1.md @@ -0,0 +1,3 @@ +## v2.18.1 - 2024-03-26 +### Fixed +* Fix layout issue in document generation for admin (minor) diff --git a/CHANGELOG.md b/CHANGELOG.md index a022a870d..8c0a6b008 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,10 @@ adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html), and is generated by [Changie](https://github.com/miniscruff/changie). +## v2.18.1 - 2024-03-26 +### Fixed +* Fix layout issue in document generation for admin (minor) + ## v2.18.0 - 2024-03-26 ### Feature * ([#268](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/268)) Improve admin UX to configure document templates for document generation From 2c68224e9ce90755d3105371a66e6e8ee6e7d155 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Fri, 19 Apr 2024 10:21:17 +0200 Subject: [PATCH 011/136] Add jobBundle and FranceTravailApiBundle --- composer.json | 2 + .../src/ApiHelper/ApiWrapper.php | 95 ++ .../ApiHelper/PartenaireRomeAppellation.php | 101 ++ .../src/ApiHelper/ProcessRequestTrait.php | 97 ++ .../src/ChillFranceTravailApiBundle.php | 9 + .../src/Controller/RomeController.php | 54 + .../ChillFranceTravailApiExtension.php | 28 + .../src/DependencyInjection/Configuration.php | 29 + .../src/Resources/config/routing.yml | 3 + .../src/Resources/config/services.yml | 14 + .../src/Resources/views/.gitkeep | 1 + .../PartenaireRomeAppellationTest.php | 75 + .../Tests/Controller/RomeControllerTest.php | 16 + .../ChillJobBundle/src/ChillJobBundle.php | 9 + .../src/Controller/CSCrudReportController.php | 124 ++ .../src/Controller/CSPersonController.php | 151 ++ .../src/Controller/CSReportController.php | 72 + .../DependencyInjection/ChillJobExtension.php | 31 + .../src/DependencyInjection/Configuration.php | 29 + .../ChillJobBundle/src/Entity/CSPerson.php | 1482 +++++++++++++++++ src/Bundle/ChillJobBundle/src/Entity/CV.php | 353 ++++ .../src/Entity/CV/Experience.php | 263 +++ .../src/Entity/CV/Formation.php | 258 +++ .../ChillJobBundle/src/Entity/Frein.php | 272 +++ .../ChillJobBundle/src/Entity/Immersion.php | 1256 ++++++++++++++ .../src/Entity/ProjetProfessionnel.php | 468 ++++++ .../src/Entity/Rome/Appellation.php | 125 ++ .../ChillJobBundle/src/Entity/Rome/Metier.php | 112 ++ .../src/Export/ListCSPerson.php | 653 ++++++++ .../ChillJobBundle/src/Export/ListCV.php | 392 +++++ .../ChillJobBundle/src/Export/ListFrein.php | 506 ++++++ .../src/Export/ListProjetProfessionnel.php | 584 +++++++ .../src/Form/CSPersonDispositifsType.php | 132 ++ .../Form/CSPersonPersonalSituationType.php | 263 +++ .../src/Form/CV/ExperienceType.php | 72 + .../src/Form/CV/FormationType.php | 77 + src/Bundle/ChillJobBundle/src/Form/CVType.php | 94 ++ .../RomeAppellationChoiceLoader.php | 144 ++ .../ChillJobBundle/src/Form/FreinType.php | 68 + .../ChillJobBundle/src/Form/ImmersionType.php | 209 +++ .../src/Form/ProjetProfessionnelType.php | 109 ++ .../src/Form/Type/PickRomeAppellationType.php | 125 ++ .../ChillJobBundle/src/Menu/MenuBuilder.php | 68 + .../src/Repository/CSPersonRepository.php | 13 + .../Repository/CV/ExperienceRepository.php | 13 + .../src/Repository/CV/FormationRepository.php | 13 + .../src/Repository/CVRepository.php | 13 + .../src/Repository/FreinRepository.php | 13 + .../src/Repository/ImmersionRepository.php | 13 + .../ProjetProfessionnelRepository.php | 13 + .../Repository/Rome/AppellationRepository.php | 13 + .../src/Repository/Rome/MetierRepository.php | 13 + .../src/Resources/config/routing.yml | 3 + .../src/Resources/config/services.yml | 12 + .../Resources/config/services/3party_type.yml | 9 + .../Resources/config/services/controller.yml | 3 + .../src/Resources/config/services/export.yml | 28 + .../src/Resources/config/services/form.yml | 8 + .../src/Resources/config/services/menu.yml | 6 + .../Resources/config/services/security.yml | 15 + .../migrations/Version20191119172511.php | 105 ++ .../migrations/Version20191129112321.php | 50 + .../migrations/Version20200113104411.php | 35 + .../migrations/Version20200113142525.php | 33 + .../migrations/Version20200114081435.php | 34 + .../migrations/Version20200124130244.php | 27 + .../migrations/Version20200124132321.php | 26 + .../migrations/Version20200127132932.php | 27 + .../migrations/Version20200205132532.php | 76 + .../migrations/Version20200207224152.php | 28 + .../migrations/Version20200210105342.php | 27 + .../migrations/Version20200313124323.php | 78 + .../migrations/Version20200403114520.php | 25 + .../migrations/Version20200403123148.php | 22 + .../public/images/footer_bandeau.jpg | Bin 0 -> 39797 bytes .../src/Resources/public/images/index.js | 1 + .../Resources/public/module/cv_edit/index.js | 43 + .../public/module/dispositif_edit/index.js | 72 + .../public/module/immersion_edit/index.js | 20 + .../public/module/personal_situation/index.js | 103 ++ .../Resources/public/sass/csconnectes.scss | 19 + .../src/Resources/public/sass/index.js | 1 + .../Resources/translations/messages.fr.yml | 250 +++ .../views/CSPerson/dispositifs_edit.html.twig | 91 + .../views/CSPerson/dispositifs_view.html.twig | 126 ++ .../personal_situation_edit.html.twig | 124 ++ .../personal_situation_view.html.twig | 282 ++++ .../src/Resources/views/CV/edit.html.twig | 61 + .../src/Resources/views/CV/new.html.twig | 61 + .../src/Resources/views/CV/view.html.twig | 142 ++ .../src/Resources/views/Frein/edit.html.twig | 20 + .../src/Resources/views/Frein/new.html.twig | 23 + .../src/Resources/views/Frein/view.html.twig | 58 + .../views/Immersion/edit-bilan.html.twig | 92 + .../Resources/views/Immersion/edit.html.twig | 65 + .../Resources/views/Immersion/new.html.twig | 68 + .../Resources/views/Immersion/view.html.twig | 209 +++ .../views/ProjetProfessionnel/edit.html.twig | 52 + .../views/ProjetProfessionnel/new.html.twig | 52 + .../views/ProjetProfessionnel/view.html.twig | 108 ++ .../Resources/views/Report/delete.html.twig | 16 + .../Resources/views/Report/index.html.twig | 253 +++ .../Authorization/CSConnectesVoter.php | 120 ++ .../Security/Authorization/ExportsVoter.php | 121 ++ .../Controller/CSPersonControllerTest.php | 9 + .../Controller/CSReportControllerTest.php | 9 + .../src/ThirdParty/EntrepriseType.php | 17 + .../src/ThirdParty/PrescripteurType.php | 17 + .../src/chill.webpack.config.js | 20 + 109 files changed, 12544 insertions(+) create mode 100644 src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php create mode 100644 src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php create mode 100644 src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ProcessRequestTrait.php create mode 100644 src/Bundle/ChillFranceTravailApiBundle/src/ChillFranceTravailApiBundle.php create mode 100644 src/Bundle/ChillFranceTravailApiBundle/src/Controller/RomeController.php create mode 100644 src/Bundle/ChillFranceTravailApiBundle/src/DependencyInjection/ChillFranceTravailApiExtension.php create mode 100644 src/Bundle/ChillFranceTravailApiBundle/src/DependencyInjection/Configuration.php create mode 100644 src/Bundle/ChillFranceTravailApiBundle/src/Resources/config/routing.yml create mode 100644 src/Bundle/ChillFranceTravailApiBundle/src/Resources/config/services.yml create mode 100644 src/Bundle/ChillFranceTravailApiBundle/src/Resources/views/.gitkeep create mode 100644 src/Bundle/ChillFranceTravailApiBundle/src/Tests/ApiHelper/PartenaireRomeAppellationTest.php create mode 100644 src/Bundle/ChillFranceTravailApiBundle/src/Tests/Controller/RomeControllerTest.php create mode 100644 src/Bundle/ChillJobBundle/src/ChillJobBundle.php create mode 100644 src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php create mode 100644 src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php create mode 100644 src/Bundle/ChillJobBundle/src/Controller/CSReportController.php create mode 100644 src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php create mode 100644 src/Bundle/ChillJobBundle/src/DependencyInjection/Configuration.php create mode 100644 src/Bundle/ChillJobBundle/src/Entity/CSPerson.php create mode 100644 src/Bundle/ChillJobBundle/src/Entity/CV.php create mode 100644 src/Bundle/ChillJobBundle/src/Entity/CV/Experience.php create mode 100644 src/Bundle/ChillJobBundle/src/Entity/CV/Formation.php create mode 100644 src/Bundle/ChillJobBundle/src/Entity/Frein.php create mode 100644 src/Bundle/ChillJobBundle/src/Entity/Immersion.php create mode 100644 src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php create mode 100644 src/Bundle/ChillJobBundle/src/Entity/Rome/Appellation.php create mode 100644 src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php create mode 100644 src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php create mode 100644 src/Bundle/ChillJobBundle/src/Export/ListCV.php create mode 100644 src/Bundle/ChillJobBundle/src/Export/ListFrein.php create mode 100644 src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php create mode 100644 src/Bundle/ChillJobBundle/src/Form/CSPersonDispositifsType.php create mode 100644 src/Bundle/ChillJobBundle/src/Form/CSPersonPersonalSituationType.php create mode 100644 src/Bundle/ChillJobBundle/src/Form/CV/ExperienceType.php create mode 100644 src/Bundle/ChillJobBundle/src/Form/CV/FormationType.php create mode 100644 src/Bundle/ChillJobBundle/src/Form/CVType.php create mode 100644 src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php create mode 100644 src/Bundle/ChillJobBundle/src/Form/FreinType.php create mode 100644 src/Bundle/ChillJobBundle/src/Form/ImmersionType.php create mode 100644 src/Bundle/ChillJobBundle/src/Form/ProjetProfessionnelType.php create mode 100644 src/Bundle/ChillJobBundle/src/Form/Type/PickRomeAppellationType.php create mode 100644 src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php create mode 100644 src/Bundle/ChillJobBundle/src/Repository/CSPersonRepository.php create mode 100644 src/Bundle/ChillJobBundle/src/Repository/CV/ExperienceRepository.php create mode 100644 src/Bundle/ChillJobBundle/src/Repository/CV/FormationRepository.php create mode 100644 src/Bundle/ChillJobBundle/src/Repository/CVRepository.php create mode 100644 src/Bundle/ChillJobBundle/src/Repository/FreinRepository.php create mode 100644 src/Bundle/ChillJobBundle/src/Repository/ImmersionRepository.php create mode 100644 src/Bundle/ChillJobBundle/src/Repository/ProjetProfessionnelRepository.php create mode 100644 src/Bundle/ChillJobBundle/src/Repository/Rome/AppellationRepository.php create mode 100644 src/Bundle/ChillJobBundle/src/Repository/Rome/MetierRepository.php create mode 100644 src/Bundle/ChillJobBundle/src/Resources/config/routing.yml create mode 100644 src/Bundle/ChillJobBundle/src/Resources/config/services.yml create mode 100644 src/Bundle/ChillJobBundle/src/Resources/config/services/3party_type.yml create mode 100644 src/Bundle/ChillJobBundle/src/Resources/config/services/controller.yml create mode 100644 src/Bundle/ChillJobBundle/src/Resources/config/services/export.yml create mode 100644 src/Bundle/ChillJobBundle/src/Resources/config/services/form.yml create mode 100644 src/Bundle/ChillJobBundle/src/Resources/config/services/menu.yml create mode 100644 src/Bundle/ChillJobBundle/src/Resources/config/services/security.yml create mode 100644 src/Bundle/ChillJobBundle/src/Resources/migrations/Version20191119172511.php create mode 100644 src/Bundle/ChillJobBundle/src/Resources/migrations/Version20191129112321.php create mode 100644 src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200113104411.php create mode 100644 src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200113142525.php create mode 100644 src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200114081435.php create mode 100644 src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200124130244.php create mode 100644 src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200124132321.php create mode 100644 src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200127132932.php create mode 100644 src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200205132532.php create mode 100644 src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200207224152.php create mode 100644 src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200210105342.php create mode 100644 src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200313124323.php create mode 100644 src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200403114520.php create mode 100644 src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200403123148.php create mode 100644 src/Bundle/ChillJobBundle/src/Resources/public/images/footer_bandeau.jpg create mode 100644 src/Bundle/ChillJobBundle/src/Resources/public/images/index.js create mode 100644 src/Bundle/ChillJobBundle/src/Resources/public/module/cv_edit/index.js create mode 100644 src/Bundle/ChillJobBundle/src/Resources/public/module/dispositif_edit/index.js create mode 100644 src/Bundle/ChillJobBundle/src/Resources/public/module/immersion_edit/index.js create mode 100644 src/Bundle/ChillJobBundle/src/Resources/public/module/personal_situation/index.js create mode 100644 src/Bundle/ChillJobBundle/src/Resources/public/sass/csconnectes.scss create mode 100644 src/Bundle/ChillJobBundle/src/Resources/public/sass/index.js create mode 100644 src/Bundle/ChillJobBundle/src/Resources/translations/messages.fr.yml create mode 100644 src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/dispositifs_edit.html.twig create mode 100644 src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/dispositifs_view.html.twig create mode 100644 src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_edit.html.twig create mode 100644 src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_view.html.twig create mode 100644 src/Bundle/ChillJobBundle/src/Resources/views/CV/edit.html.twig create mode 100644 src/Bundle/ChillJobBundle/src/Resources/views/CV/new.html.twig create mode 100644 src/Bundle/ChillJobBundle/src/Resources/views/CV/view.html.twig create mode 100644 src/Bundle/ChillJobBundle/src/Resources/views/Frein/edit.html.twig create mode 100644 src/Bundle/ChillJobBundle/src/Resources/views/Frein/new.html.twig create mode 100644 src/Bundle/ChillJobBundle/src/Resources/views/Frein/view.html.twig create mode 100644 src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit-bilan.html.twig create mode 100644 src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit.html.twig create mode 100644 src/Bundle/ChillJobBundle/src/Resources/views/Immersion/new.html.twig create mode 100644 src/Bundle/ChillJobBundle/src/Resources/views/Immersion/view.html.twig create mode 100644 src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/edit.html.twig create mode 100644 src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/new.html.twig create mode 100644 src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/view.html.twig create mode 100644 src/Bundle/ChillJobBundle/src/Resources/views/Report/delete.html.twig create mode 100644 src/Bundle/ChillJobBundle/src/Resources/views/Report/index.html.twig create mode 100644 src/Bundle/ChillJobBundle/src/Security/Authorization/CSConnectesVoter.php create mode 100644 src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php create mode 100644 src/Bundle/ChillJobBundle/src/Tests/Controller/CSPersonControllerTest.php create mode 100644 src/Bundle/ChillJobBundle/src/Tests/Controller/CSReportControllerTest.php create mode 100644 src/Bundle/ChillJobBundle/src/ThirdParty/EntrepriseType.php create mode 100644 src/Bundle/ChillJobBundle/src/ThirdParty/PrescripteurType.php create mode 100644 src/Bundle/ChillJobBundle/src/chill.webpack.config.js diff --git a/composer.json b/composer.json index a000d5b3c..9953aeacf 100644 --- a/composer.json +++ b/composer.json @@ -114,6 +114,8 @@ "Chill\\DocGeneratorBundle\\": "src/Bundle/ChillDocGeneratorBundle", "Chill\\DocStoreBundle\\": "src/Bundle/ChillDocStoreBundle", "Chill\\EventBundle\\": "src/Bundle/ChillEventBundle", + "Chill\\FranceTravailApiBundle\\": "src/Bundle/ChillFranceTravailApiBundle/src", + "Chill\\JobBundle\\": "src/Bundle/ChillJobBundle/src", "Chill\\MainBundle\\": "src/Bundle/ChillMainBundle", "Chill\\PersonBundle\\": "src/Bundle/ChillPersonBundle", "Chill\\ReportBundle\\": "src/Bundle/ChillReportBundle", diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php new file mode 100644 index 000000000..15e51c1f2 --- /dev/null +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php @@ -0,0 +1,95 @@ +clientId = $clientId; + $this->clientSecret = $clientSecret; + $this->redis = $redis; + $this->client = new Client([ + 'base_uri' => 'https://entreprise.pole-emploi.fr/connexion/oauth2/access_token' + ]); + } + + public function getPublicBearer($scopes): string + { + $cacheKey = $this->getCacheKey($scopes); + + if ($this->redis->exists($cacheKey) > 0) { + $data = \unserialize($this->redis->get($cacheKey)); + + return $data->access_token; + } + + try { + $response = $this->client->post('', [ + 'query' => ['realm' => '/partenaire'], + 'headers' => [ + 'Content-Type' => 'application/x-www-form-urlencoded' + ], + //'body' => 'grant_type=client_credentials&client_id=PAR_chillcsconnectesdev_0e20082886f1bc5d8ff4f8b34868603e2bcc7ed6bc5963e648e3709c639aced9&client_secret=4e626fa3123bcf4d299591c09731fa3242a7e75bbc003955f903aebc33cdd022&scope=api_romev1%20nomenclatureRome%20application_PAR_chillcsconnectesdev_0e20082886f1bc5d8ff4f8b34868603e2bcc7ed6bc5963e648e3709c639aced9' + 'form_params' => [ + 'grant_type' => 'client_credentials', + 'client_id' => $this->clientId, + 'client_secret' => $this->clientSecret, + 'scope' => \implode(' ', \array_merge($scopes, [ 'application_'.$this->clientId ])), + ] + //]); + ]); + // + } + catch (ClientException $e) { + dump(Psr7\str($e->getRequest())); + dump( Psr7\str($e->getResponse())); + } + $data = \json_decode((string) $response->getBody()); + + // set the key with an expiry time + $this->redis->setEx($cacheKey, $data->expires_in - 2, + \serialize($data)); + + return $data->access_token; + } + + protected function getCacheKey($scopes) + { + return self::UNPERSONAL_BEARER.implode('', $scopes); + } + +} diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php new file mode 100644 index 000000000..9f05834d6 --- /dev/null +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php @@ -0,0 +1,101 @@ +wrapper = $wrapper; + $this->logger = $logger; + $this->client = new Client([ + 'base_uri' => 'https://api.emploi-store.fr/partenaire/rome/v1/' + ]); + } + + private function getBearer() + { + return $this->wrapper->getPublicBearer([ + 'api_romev1', + 'nomenclatureRome', + ]); + } + + /** + * + * @param string $search + */ + public function getListeAppellation($search) + { + $bearer = $this->getBearer(); + + $request = new Request('GET', 'appellation'); + $parameters = [ + 'query' => [ + 'q' => $search, + 'qf' => 'libelle' + ], + 'headers' => [ + 'Authorization' => 'Bearer '.$bearer + ] + ]; + $response = $this->handleRequest($request, $parameters, $this->client, + $this->logger); + + return \GuzzleHttp\json_decode((string) $response->getBody()); + } + + public function getAppellation($code) + { + $bearer = $this->getBearer(); + + $request = new Request('GET', sprintf('appellation/%s', $code)); + $parameters = [ + 'headers' => [ + 'Authorization' => 'Bearer '.$bearer + ], + 'query' => [ + 'champs' => 'code,libelle,metier(code,libelle)' + ] + ]; + + $response = $this->handleRequest($request, $parameters, $this->client, + $this->logger); + + return \GuzzleHttp\json_decode((string) $response->getBody()); + } +} diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ProcessRequestTrait.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ProcessRequestTrait.php new file mode 100644 index 000000000..7561c3b40 --- /dev/null +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ProcessRequestTrait.php @@ -0,0 +1,97 @@ +handleRequestRecursive($request, $parameters, + $client, $logger); + } + + /** + * internal method to handle recursive requests + * + * @param Request $request + * @param array $parameters + * @param Client $client + * @param LoggerInterface $logger + * @param type $counter + * @return type + * @throws BadResponseException + */ + private function handleRequestRecursive( + Request $request, + array $parameters, + Client $client, + LoggerInterface $logger, + $counter = 0 + ) { + try { + return $client->send($request, $parameters); + + } catch (BadResponseException $e) { + if ( + // get 429 exceptions + $e instanceof ClientException + && + $e->getResponse()->getStatusCode() === 429 + && + count($e->getResponse()->getHeader('Retry-After')) > 0) { + + if ($counter > 5) { + $logger->error("too much 429 response", [ + 'request' => Psr7\str($e->getRequest()) + ]); + + throw $e; + } + + $delays = $e->getResponse()->getHeader('Retry-After'); + $delay = \end($delays); + + sleep($delay); + + return $this->handleRequestRecursive($request, $parameters, + $client, $logger, $counter + 1); + } + + // handling other errors + $logger->error("Error while querying ROME api", [ + 'status_code' => $e->getResponse()->getStatusCode(), + 'part' => 'appellation', + 'request' => Psr7\str($e->getRequest()), + 'response' => Psr7\str($e->getResponse()), + ]); + + throw $e; + } + } +} diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ChillFranceTravailApiBundle.php b/src/Bundle/ChillFranceTravailApiBundle/src/ChillFranceTravailApiBundle.php new file mode 100644 index 000000000..9f428c6a2 --- /dev/null +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ChillFranceTravailApiBundle.php @@ -0,0 +1,9 @@ +apiAppellation = $apiAppellation; + } + + /** + * @Route("/{_locale}/pole-emploi/appellation/search.{_format}", + * name="chill_pole_emploi_api_appellation_search", + * requirements={ "_format" = "json" } + * ) + */ + public function appellationSearchAction(Request $request) + { + if ($request->query->has('q') === FALSE) { + return new JsonResponse([]); + } + + $appellations = $this->apiAppellation + ->getListeAppellation($request->query->get('q')); + $results = []; + + foreach ($appellations as $appellation) { + $appellation->id = 'original-'.$appellation->code; + $appellation->text = $appellation->libelle; + $results[] = $appellation; + } + + $computed = new \stdClass(); + $computed->pagination = (new \stdClass()); + $computed->pagination->more = false; + $computed->results = $results; + + return new JsonResponse($computed); + } + +} diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/DependencyInjection/ChillFranceTravailApiExtension.php b/src/Bundle/ChillFranceTravailApiBundle/src/DependencyInjection/ChillFranceTravailApiExtension.php new file mode 100644 index 000000000..15bbf3d30 --- /dev/null +++ b/src/Bundle/ChillFranceTravailApiBundle/src/DependencyInjection/ChillFranceTravailApiExtension.php @@ -0,0 +1,28 @@ +processConfiguration($configuration, $configs); + + $loader = new Loader\YamlFileLoader($container, new FileLocator(__DIR__.'/../Resources/config')); + $loader->load('services.yml'); + } +} diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/DependencyInjection/Configuration.php b/src/Bundle/ChillFranceTravailApiBundle/src/DependencyInjection/Configuration.php new file mode 100644 index 000000000..b013b4e46 --- /dev/null +++ b/src/Bundle/ChillFranceTravailApiBundle/src/DependencyInjection/Configuration.php @@ -0,0 +1,29 @@ +root('chill_pole_emploi_api'); + + // Here you should define the parameters that are allowed to + // configure your bundle. See the documentation linked above for + // more information on that topic. + + return $treeBuilder; + } +} diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/Resources/config/routing.yml b/src/Bundle/ChillFranceTravailApiBundle/src/Resources/config/routing.yml new file mode 100644 index 000000000..6d0204b6e --- /dev/null +++ b/src/Bundle/ChillFranceTravailApiBundle/src/Resources/config/routing.yml @@ -0,0 +1,3 @@ +chill_poleemploi_api_controllers: + resource: "@ChillPoleEmploiApiBundle/Controller" + type: annotation \ No newline at end of file diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/Resources/config/services.yml b/src/Bundle/ChillFranceTravailApiBundle/src/Resources/config/services.yml new file mode 100644 index 000000000..ff2352d7a --- /dev/null +++ b/src/Bundle/ChillFranceTravailApiBundle/src/Resources/config/services.yml @@ -0,0 +1,14 @@ +services: + Chill\ChillFranceTravailApiBundle\ApiHelper\ApiWrapper: + $clientId: '%pole_emploi_dev_client_id%' + $clientSecret: '%pole_emploi_dev_client_secret%' + $redis: '@Chill\MainBundle\Redis\ChillRedis' + + Chill\ChillFranceTravailApiBundle\ApiHelper\PartenaireRomeAppellation: + $wrapper: '@Chill\ChillFranceTravailApiBundle\ApiHelper\ApiWrapper' + $logger: '@Psr\Log\LoggerInterface' + + Chill\ChillFranceTravailApiBundle\Controller\RomeController: + arguments: + $apiAppellation: '@Chill\ChillFranceTravailApiBundle\ApiHelper\PartenaireRomeAppellation' + tags: ['controller.service_arguments'] diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/Resources/views/.gitkeep b/src/Bundle/ChillFranceTravailApiBundle/src/Resources/views/.gitkeep new file mode 100644 index 000000000..8b1378917 --- /dev/null +++ b/src/Bundle/ChillFranceTravailApiBundle/src/Resources/views/.gitkeep @@ -0,0 +1 @@ + diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/Tests/ApiHelper/PartenaireRomeAppellationTest.php b/src/Bundle/ChillFranceTravailApiBundle/src/Tests/ApiHelper/PartenaireRomeAppellationTest.php new file mode 100644 index 000000000..897bc7cb0 --- /dev/null +++ b/src/Bundle/ChillFranceTravailApiBundle/src/Tests/ApiHelper/PartenaireRomeAppellationTest.php @@ -0,0 +1,75 @@ + + */ +class PartenaireRomeAppellationTest extends KernelTestCase +{ + protected function setUp() + { + parent::setUp(); + + self::bootKernel(); + } + + public function testGetListeMetiersSimple() + { + /** @var PartenaireRomeAppellation $appellations */ + $appellations = self::$kernel + ->getContainer() + ->get(PartenaireRomeAppellation::class) + ; + + $data = $appellations->getListeAppellation('arb'); + + $this->assertTrue(\is_array($data)); + $this->assertNotNull($data[0]->libelle); + $this->assertNotNull($data[0]->code); + } + + public function testGetListeMetiersTooMuchRequests() + { + /** @var PartenaireRomeMetier $appellations */ + $appellations = self::$kernel + ->getContainer() + ->get(PartenaireRomeAppellation::class) + ; + + $appellations->getListeAppellation('arb'); + $appellations->getListeAppellation('ing'); + $appellations->getListeAppellation('rob'); + $appellations->getListeAppellation('chori'); + $data = $appellations->getListeAppellation('camion'); + + $this->assertTrue($data[0] instanceof \stdClass, + 'assert that first index of data is an instance of stdClass'); + } + + public function testGetAppellation() + { + /** @var PartenaireRomeMetier $appellations */ + $appellations = self::$kernel + ->getContainer() + ->get(PartenaireRomeAppellation::class) + ; + + $a = $appellations->getListeAppellation('arb'); + + $full = $appellations->getAppellation($a[0]->code); + + $this->assertNotNull($full->libelle, + 'assert that libelle is not null'); + $this->assertTrue($full->metier instanceof \stdClass, + 'assert that metier is returned'); + $this->assertNotNull($full->metier->libelle, + 'assert that metier->libelle is not null'); + + } +} diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/Tests/Controller/RomeControllerTest.php b/src/Bundle/ChillFranceTravailApiBundle/src/Tests/Controller/RomeControllerTest.php new file mode 100644 index 000000000..b0127a85d --- /dev/null +++ b/src/Bundle/ChillFranceTravailApiBundle/src/Tests/Controller/RomeControllerTest.php @@ -0,0 +1,16 @@ +request('GET', '/{_locale}/pole-emploi/appellation/search'); + } + +} diff --git a/src/Bundle/ChillJobBundle/src/ChillJobBundle.php b/src/Bundle/ChillJobBundle/src/ChillJobBundle.php new file mode 100644 index 000000000..5120f4a79 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/ChillJobBundle.php @@ -0,0 +1,9 @@ +request->get("submit", "save-and-close"); + + switch ($next) { + case "save-and-close": + case "delete-and-close": + return $this->redirectToRoute('chill_csconnectes_csreport_index', [ + 'person' => $entity->getPerson()->getId() + ]); + default: + return parent::onBeforeRedirectAfterSubmission($action, $entity, $form, $request); + } + } + + protected function duplicateEntity(string $action, Request $request) + { + + if ($this->getCrudName() === 'cscv') { + $id = $request->query->get('duplicate_id', 0); + /** @var \Chill\ChillJobBundle\Entity\CV $cv */ + $cv = $this->getEntity($action, $id, $request); + $em = $this->getDoctrine()->getManager(); + + $em->detach($cv); + + foreach($cv->getExperiences() as $experience) { + $cv->removeExperience($experience); + $em->detach($experience); + $cv->addExperience($experience); + } + foreach($cv->getFormations() as $formation) { + $cv->removeFormation($formation); + $em->detach($formation); + $cv->addFormation($formation); + } + + return $cv; + } elseif ($this->getCrudName() === 'projet_prof') { + $id = $request->query->get('duplicate_id', 0); + /** @var \Chill\ChillJobBundle\Entity\ProjetProfessionnel $original */ + $original = $this->getEntity($action, $id, $request); + + $new = parent::duplicateEntity($action, $request); + + foreach ($original->getSouhait() as $s) { + $new->addSouhait($s); + } + foreach ($original->getValide() as $s) { + $new->addValide($s); + } + + return $new; + } + + return parent::duplicateEntity($action, $request); + } + + protected function createFormFor(string $action, $entity, string $formClass = null, array $formOptions = []): FormInterface + { + if ($entity instanceof Immersion) { + if ('edit' === $action || 'new' === $action) { + return parent::createFormFor($action, $entity, $formClass, [ + 'center' => $entity->getPerson()->getCenter() + ]); + } elseif ('bilan' === $action) { + return parent::createFormFor($action, $entity, $formClass, [ + 'center' => $entity->getPerson()->getCenter(), + 'step' => 'bilan' + ]); + } elseif ($action === 'delete') { + return parent::createFormFor($action, $entity, $formClass, $formOptions); + } else { + throw new \LogicException("this step $action is not supported"); + } + } + + return parent::createFormFor($action, $entity, $formClass, $formOptions); + } + + protected function onPreFlush(string $action, $entity, FormInterface $form, Request $request) + { + // for immersion / edit-bilan action + if ('bilan' === $action) { + /* @var $entity Immersion */ + $entity->setIsBilanFullfilled(true); + } + + parent::onPreFlush($action, $entity, $form, $request); + } + + + /** + * Edit immersion bilan + * + * @param Request $request + * @param type $id + * @return \Symfony\Component\HttpFoundation\Response + */ + public function editBilan(Request $request, $id): \Symfony\Component\HttpFoundation\Response + { + return $this->formEditAction('bilan', $request, $id); + } + + + + +} diff --git a/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php b/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php new file mode 100644 index 000000000..fb1ed69a9 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php @@ -0,0 +1,151 @@ +formEditAction( + 'ps_situation_edit', + $request, + $id, + CSPersonPersonalSituationType::class + ); + } + + public function dispositifsEdit(Request $request, $id) + { + return $this->formEditAction( + 'dispositifs_edit', + $request, + $id, + CSPersonDispositifsType::class + ); + } + + public function personalSituationView(Request $request, $id): Response + { + return $this->viewAction('ps_situation_view', $request, $id); + } + + public function dispositifsView(Request $request, $id): Response + { + return $this->viewAction('dispositifs_view', $request, $id); + } + + protected function generateRedirectOnCreateRoute($action, Request $request, $entity) + { + switch($action) { + case 'ps_situation_view': + $route = 'chill_crud_csperson_personal_situation_edit'; + break; + case 'dispositifs_view': + $route = 'chill_crud_csperson_dispositifs_edit'; + break; + default: + parent::generateRedirectOnCreateRoute($action, $request, $entity); + } + + return $this->generateUrl($route, ['id' => $entity->getPerson()->getId()]); + } + + protected function checkACL($action, $entity) + { + switch($action) { + case 'ps_situation_edit': + case 'dispositifs_edit': + $this->denyAccessUnlessGranted(PersonVoter::UPDATE, + $entity->getPerson()); + break; + case 'ps_situation_view': + case 'dispositifs_view': + $this->denyAccessUnlessGranted(PersonVoter::SEE, + $entity->getPerson()); + break; + default: + parent::checkACL($action, $entity); + } + } + + protected function onBeforeRedirectAfterSubmission(string $action, $entity, FormInterface $form, Request $request) + { + switch($action) { + case 'ps_situation_edit': + return $this->redirectToRoute('chill_crud_'.$this->getCrudName().'_personal_situation_view', + ['id' => $entity->getId()]); + + case 'dispositifs_edit': + return $this->redirectToRoute('chill_crud_'.$this->getCrudName().'_dispositifs_view', + ['id' => $entity->getId()]); + + default: + return null; + } + } + + protected function getTemplateFor($action, $entity, Request $request) + { + switch ($action) { + case 'ps_situation_edit': + return '@CSConnectesSP/CSPerson/personal_situation_edit.html.twig'; + case 'dispositifs_edit': + return '@CSConnectesSP/CSPerson/dispositifs_edit.html.twig'; + case 'ps_situation_view': + return '@CSConnectesSP/CSPerson/personal_situation_view.html.twig'; + case 'dispositifs_view': + return '@CSConnectesSP/CSPerson/dispositifs_view.html.twig'; + default: + parent::getTemplateFor($action, $entity, $request); + } + } + + protected function createFormFor(string $action, $entity, string $formClass = null, array $formOptions = []): FormInterface + { + switch ($action) { + case 'dispositifs_edit': + $form = $this->createForm($formClass, $entity, \array_merge( + $formOptions, [ 'center' => $entity->getPerson()->getCenter() ])); + $this->customizeForm($action, $form); + + return $form; + + case 'ps_situation_edit': + $form = $this->createForm($formClass, $entity, \array_merge( + $formOptions, [ 'center' => $entity->getPerson()->getCenter() ])); + $this->customizeForm($action, $form); + + return $form; + + default: + return parent::createFormFor($action, $entity, $formClass, $formOptions); + } + } + + protected function generateLabelForButton($action, $formName, $form) + { + switch($action): + case 'ps_situation_edit': + case 'dispositifs_edit': + if ($formName === 'submit') { + return 'Enregistrer'; + } else { + throw new \LogicException("this formName is not supported: $formName"); + } + break; + default: + return parent::generateLabelForButton($action, $formName, $form); + endswitch; + } + +} diff --git a/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php b/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php new file mode 100644 index 000000000..353474be8 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php @@ -0,0 +1,72 @@ +denyAccessUnlessGranted(PersonVoter::SEE, $person, "The access to " + . "person is denied"); + + $reports = $this->getReports($person); + + return $this->render('@CSConnectesSP/Report/index.html.twig', \array_merge([ + 'person' => $person, + ], $reports)); + } + + protected function getReports(Person $person) + { + $results = []; + + $kinds = []; + + if ($this->isGranted(CSConnectesVoter::REPORT_CV, $person)) { + $kinds['cvs'] = CV::class; + } + + if ($this->isGranted(CSConnectesVoter::REPORT_NEW, $person)) { + $kinds = \array_merge($kinds, [ + 'cvs' => CV::class, + 'freins' => Frein::class, + 'immersions' => Immersion::class, + 'projet_professionnels' => ProjetProfessionnel::class, + ]); + } + + foreach ($kinds as $key => $className) { + switch ($key) { + case 'immersions': + $ordering = [ 'debutDate' => 'DESC' ]; + break; + default: + $ordering = [ 'reportDate' => 'DESC' ]; + break; + } + $results[$key] = $this->getDoctrine()->getManager() + ->getRepository($className) + ->findByPerson($person, $ordering); + } + + return $results; + } +} diff --git a/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php b/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php new file mode 100644 index 000000000..9284b1af0 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php @@ -0,0 +1,31 @@ +processConfiguration($configuration, $configs); + + $loader = new Loader\YamlFileLoader($container, new FileLocator(__DIR__.'/../Resources/config')); + $loader->load('services.yml'); + + // exports: list_CSperson override list_person + $container->setAlias('chill.person.export.list_person','Chill\ChillJobBundle\Export\ListCSPerson'); + } +} diff --git a/src/Bundle/ChillJobBundle/src/DependencyInjection/Configuration.php b/src/Bundle/ChillJobBundle/src/DependencyInjection/Configuration.php new file mode 100644 index 000000000..b20154466 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/DependencyInjection/Configuration.php @@ -0,0 +1,29 @@ +root('cs_connectes_sp'); + + // Here you should define the parameters that are allowed to + // configure your bundle. See the documentation linked above for + // more information on that topic. + + return $treeBuilder; + } +} diff --git a/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php b/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php new file mode 100644 index 000000000..1e902d0d5 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php @@ -0,0 +1,1482 @@ +id; + } + + /** + * Set situationLogement. + * + * @param string|null $situationLogement + * + * @return CSPerson + */ + public function setSituationLogement($situationLogement = null) + { + $this->situationLogement = $situationLogement; + + return $this; + } + + /** + * Get situationLogement. + * + * @return string|null + */ + public function getSituationLogement() + { + return $this->situationLogement; + } + + /** + * Set enfantACharge. + * + * @param int|null $enfantACharge + * + * @return CSPerson + */ + public function setEnfantACharge($enfantACharge = null) + { + $this->enfantACharge = $enfantACharge; + + return $this; + } + + /** + * Get enfantACharge. + * + * @return int|null + */ + public function getEnfantACharge() + { + return $this->enfantACharge; + } + + /** + * Set niveauMaitriseLangue. + * + * @param json $niveauMaitriseLangue + * + * @return CSPerson + */ + public function setNiveauMaitriseLangue($niveauMaitriseLangue) + { + if ($niveauMaitriseLangue === null) { + $this->niveauMaitriseLangue = null; + + return $this; + } + + $this->niveauMaitriseLangue = count($niveauMaitriseLangue) > 0 ? + $niveauMaitriseLangue : null; + + return $this; + } + + /** + * Get niveauMaitriseLangue. + * + * @return json + */ + public function getNiveauMaitriseLangue() + { + return $this->niveauMaitriseLangue; + } + + /** + * Valide niveauMaitriseLangue + * + * @param ExecutionContextInterface $context + * @Assert\Callback() + */ + public function validateNiveauMatriseLangue(ExecutionContextInterface $context) + { + if (NULL === $this->getNiveauMaitriseLangue()) { + return; + } + + if (\in_array('aucun', $this->getNiveauMaitriseLangue())) { + if (count($this->getNiveauMaitriseLangue()) > 1) { + $context->buildViolation("Si \"Aucun\" est choisi dans la liste, il n'est " + . "pas possible de cocher d'autres indications") + ->atPath('niveauMaitriseLangue') + ->addViolation(); + } + } + } + + /** + * Set vehiculePersonnel. + * + * @param bool $vehiculePersonnel + * + * @return CSPerson + */ + public function setVehiculePersonnel($vehiculePersonnel) + { + $this->vehiculePersonnel = $vehiculePersonnel; + + return $this; + } + + /** + * Get vehiculePersonnel. + * + * @return bool + */ + public function getVehiculePersonnel() + { + return $this->vehiculePersonnel; + } + + /** + * Set permisConduire. + * + * @param json $permisConduire + * + * @return CSPerson + */ + public function setPermisConduire($permisConduire) + { + $this->permisConduire = $permisConduire; + + return $this; + } + + /** + * Get permisConduire. + * + * @return json + */ + public function getPermisConduire() + { + return $this->permisConduire; + } + + /** + * Set situationProfessionnelle. + * + * @param string $situationProfessionnelle + * + * @return CSPerson + */ + public function setSituationProfessionnelle($situationProfessionnelle) + { + $this->situationProfessionnelle = $situationProfessionnelle; + + return $this; + } + + /** + * Get situationProfessionnelle. + * + * @return string + */ + public function getSituationProfessionnelle() + { + return $this->situationProfessionnelle; + } + + /** + * Set dateFinDernierEmploi. + * + * @param \DateTime $dateFinDernierEmploi + * + * @return CSPerson + */ + public function setDateFinDernierEmploi($dateFinDernierEmploi) + { + $this->dateFinDernierEmploi = $dateFinDernierEmploi; + + return $this; + } + + /** + * Get dateFinDernierEmploi. + * + * @return \DateTime + */ + public function getDateFinDernierEmploi() + { + return $this->dateFinDernierEmploi; + } + + /** + * Set typeContrat. + * + * @param json $typeContrat + * + * @return CSPerson + */ + public function setTypeContrat($typeContrat) + { + $this->typeContrat = $typeContrat; + + return $this; + } + + /** + * Get typeContrat. + * + * @return json + */ + public function getTypeContrat() + { + return $this->typeContrat; + } + + /** + * Set ressources. + * + * @param json $ressources + * + * @return CSPerson + */ + public function setRessources($ressources) + { + $this->ressources = $ressources; + + return $this; + } + + /** + * Get ressources. + * + * @return json + */ + public function getRessources() + { + return $this->ressources; + } + + /** + * Set ressourcesComment. + * + * @param string $ressourcesComment + * + * @return CSPerson + */ + public function setRessourcesComment($ressourcesComment) + { + $this->ressourcesComment = $ressourcesComment; + + return $this; + } + + /** + * Get ressourcesComment. + * + * @return string + */ + public function getRessourcesComment() + { + return $this->ressourcesComment; + } + + /** + * Set ressourceDate1Versement. + * + * @param \DateTime $ressourceDate1Versement + * + * @return CSPerson + */ + public function setRessourceDate1Versement($ressourceDate1Versement) + { + $this->ressourceDate1Versement = $ressourceDate1Versement; + + return $this; + } + + /** + * Get ressourceDate1Versement. + * + * @return \DateTime + */ + public function getRessourceDate1Versement() + { + return $this->ressourceDate1Versement; + } + + function getCPFMontant() + { + return $this->cPFMontant; + } + + function setCPFMontant($cPFMontant) + { + $this->cPFMontant = $cPFMontant; + + return $this; + } + + /** + * Set accompagnement. + * + * @param json $accompagnement + * + * @return CSPerson + */ + public function setAccompagnement($accompagnement) + { + $this->accompagnement = $accompagnement; + + return $this; + } + + /** + * Get accompagnement. + * + * @return json + */ + public function getAccompagnement() + { + return $this->accompagnement; + } + + /** + * Set accompagnementRQTHDate. + * + * @param \DateTime $accompagnementRQTHDate + * + * @return CSPerson + */ + public function setAccompagnementRQTHDate($accompagnementRQTHDate) + { + $this->accompagnementRQTHDate = $accompagnementRQTHDate; + + return $this; + } + + /** + * Get accompagnementRQTHDate. + * + * @return \DateTime + */ + public function getAccompagnementRQTHDate() + { + return $this->accompagnementRQTHDate; + } + + /** + * Set accompagnementComment. + * + * @param string $accompagnementComment + * + * @return CSPerson + */ + public function setAccompagnementComment($accompagnementComment) + { + $this->accompagnementComment = $accompagnementComment; + + return $this; + } + + /** + * Get accompagnementComment. + * + * @return string + */ + public function getAccompagnementComment() + { + return $this->accompagnementComment; + } + + /** + * Set poleEmploiId. + * + * @param string $poleEmploiId + * + * @return CSPerson + */ + public function setPoleEmploiId($poleEmploiId) + { + $this->poleEmploiId = $poleEmploiId; + + return $this; + } + + /** + * Get poleEmploiId. + * + * @return string + */ + public function getPoleEmploiId() + { + return $this->poleEmploiId; + } + + /** + * Set poleEmploiInscriptionDate. + * + * @param \DateTime $poleEmploiInscriptionDate + * + * @return CSPerson + */ + public function setPoleEmploiInscriptionDate($poleEmploiInscriptionDate) + { + $this->poleEmploiInscriptionDate = $poleEmploiInscriptionDate; + + return $this; + } + + /** + * Get poleEmploiInscriptionDate. + * + * @return \DateTime + */ + public function getPoleEmploiInscriptionDate() + { + return $this->poleEmploiInscriptionDate; + } + + /** + * Set cafId. + * + * @param string $cafId + * + * @return CSPerson + */ + public function setCafId($cafId) + { + $this->cafId = $cafId; + + return $this; + } + + /** + * Get cafId. + * + * @return string + */ + public function getCafId() + { + return $this->cafId; + } + + /** + * Set cafInscriptionDate. + * + * @param \DateTime $cafInscriptionDate + * + * @return CSPerson + */ + public function setCafInscriptionDate($cafInscriptionDate) + { + $this->cafInscriptionDate = $cafInscriptionDate; + + return $this; + } + + /** + * Get cafInscriptionDate. + * + * @return \DateTime + */ + public function getCafInscriptionDate() + { + return $this->cafInscriptionDate; + } + + /** + * Set cERInscriptionDate. + * + * @param \DateTime $cERInscriptionDate + * + * @return CSPerson + */ + public function setCERInscriptionDate($cERInscriptionDate) + { + $this->cERInscriptionDate = $cERInscriptionDate; + + return $this; + } + + /** + * Get cERInscriptionDate. + * + * @return \DateTime + */ + public function getCERInscriptionDate() + { + return $this->cERInscriptionDate; + } + + /** + * Set pPAEInscriptionDate. + * + * @param \DateTime $pPAEInscriptionDate + * + * @return CSPerson + */ + public function setPPAEInscriptionDate($pPAEInscriptionDate) + { + $this->pPAEInscriptionDate = $pPAEInscriptionDate; + + return $this; + } + + /** + * Get pPAEInscriptionDate. + * + * @return \DateTime + */ + public function getPPAEInscriptionDate() + { + return $this->pPAEInscriptionDate; + } + + public function getCERSignataire(): ?string + { + return $this->cERSignataire; + } + + public function getPPAESignataire(): ?string + { + return $this->pPAESignataire; + } + + public function setCERSignataire($cERSignataire) + { + $this->cERSignataire = $cERSignataire; + } + + public function setPPAESignataire($pPAESignataire) + { + $this->pPAESignataire = $pPAESignataire; + } + + + /** + * Set nEETEligibilite. + * + * @param bool $nEETEligibilite + * + * @return CSPerson + */ + public function setNEETEligibilite($nEETEligibilite) + { + $this->nEETEligibilite = $nEETEligibilite; + + return $this; + } + + /** + * Get nEETEligibilite. + * + * @return bool + */ + public function getNEETEligibilite() + { + return $this->nEETEligibilite; + } + + /** + * Set nEETCommissionDate. + * + * @param \DateTime $nEETCommissionDate + * + * @return CSPerson + */ + public function setNEETCommissionDate($nEETCommissionDate) + { + $this->nEETCommissionDate = $nEETCommissionDate; + + return $this; + } + + /** + * Get nEETCommissionDate. + * + * @return \DateTime + */ + public function getNEETCommissionDate() + { + return $this->nEETCommissionDate; + } + + /** + * Set fSEMaDemarcheCode. + * + * @param string $fSEMaDemarcheCode + * + * @return CSPerson + */ + public function setFSEMaDemarcheCode($fSEMaDemarcheCode) + { + $this->fSEMaDemarcheCode = $fSEMaDemarcheCode; + + return $this; + } + + /** + * Get fSEMaDemarcheCode. + * + * @return string + */ + public function getFSEMaDemarcheCode() + { + return $this->fSEMaDemarcheCode; + } + + function getDispositifsNotes() + { + return $this->dispositifsNotes; + } + + function setDispositifsNotes($dispositifsNotes) + { + $this->dispositifsNotes = $dispositifsNotes; + } + + public function setPerson(Person $person) + { + $this->person = $person; + $this->id = $person->getId(); + } + + public function getPerson(): ?Person + { + return $this->person; + } + + // quick and dirty way to handle marital status from a form in this bundle + // (CSPersonalSituationType) + + public function getPersonMaritalStatus() + { + return $this->getPerson()->getMaritalStatus(); + } + + public function setPersonMaritalStatus(MaritalStatus $maritalStatus) + { + return $this->getPerson()->setMaritalStatus($maritalStatus); + } + + function getDocumentCV(): ?StoredObject + { + return $this->documentCV; + } + + function getDocumentAgrementIAE(): ?StoredObject + { + return $this->documentAgrementIAE; + } + + function getDocumentRQTH(): ?StoredObject + { + return $this->documentRQTH; + } + + function getDocumentAttestationNEET(): ?StoredObject + { + return $this->documentAttestationNEET; + } + + function getDocumentCI(): ?StoredObject + { + return $this->documentCI; + } + + function getDocumentTitreSejour(): ?StoredObject + { + return $this->documentTitreSejour; + } + + function getDocumentAttestationFiscale(): ?StoredObject + { + return $this->documentAttestationFiscale; + } + + function getDocumentPermis(): ?StoredObject + { + return $this->documentPermis; + } + + function getDocumentAttestationCAAF(): ?StoredObject + { + return $this->documentAttestationCAAF; + } + + function getDocumentContraTravail(): ?StoredObject + { + return $this->documentContraTravail; + } + + function getDocumentAttestationFormation(): ?StoredObject + { + return $this->documentAttestationFormation; + } + + function getDocumentQuittanceLoyer(): ?StoredObject + { + return $this->documentQuittanceLoyer; + } + + function getDocumentFactureElectricite(): ?StoredObject + { + return $this->documentFactureElectricite; + } + + function getPrescripteur(): ?ThirdParty + { + return $this->prescripteur; + } + + function setDocumentCV(StoredObject $documentCV = null) + { + $this->documentCV = $documentCV; + } + + function setDocumentAgrementIAE(StoredObject $documentAgrementIAE = null) + { + $this->documentAgrementIAE = $documentAgrementIAE; + } + + function setDocumentRQTH(StoredObject $documentRQTH = null) + { + $this->documentRQTH = $documentRQTH; + } + + function setDocumentAttestationNEET(StoredObject $documentAttestationNEET = null) + { + $this->documentAttestationNEET = $documentAttestationNEET; + } + + function setDocumentCI(StoredObject $documentCI = null) + { + $this->documentCI = $documentCI; + } + + function setDocumentTitreSejour(StoredObject $documentTitreSejour = null) + { + $this->documentTitreSejour = $documentTitreSejour; + } + + function setDocumentAttestationFiscale(StoredObject $documentAttestationFiscale = null) + { + $this->documentAttestationFiscale = $documentAttestationFiscale; + } + + function setDocumentPermis(StoredObject $documentPermis = null) + { + $this->documentPermis = $documentPermis; + } + + function setDocumentAttestationCAAF(StoredObject $documentAttestationCAAF = null) + { + $this->documentAttestationCAAF = $documentAttestationCAAF; + } + + function setDocumentContraTravail(StoredObject $documentContraTravail = null) + { + $this->documentContraTravail = $documentContraTravail; + } + + function setDocumentAttestationFormation(StoredObject $documentAttestationFormation = null) + { + $this->documentAttestationFormation = $documentAttestationFormation; + } + + function setDocumentQuittanceLoyer(StoredObject $documentQuittanceLoyer = null) + { + $this->documentQuittanceLoyer = $documentQuittanceLoyer; + } + + function setDocumentFactureElectricite(StoredObject $documentFactureElectricite = null) + { + $this->documentFactureElectricite = $documentFactureElectricite; + } + + function setPrescripteur(ThirdParty $prescripteur = null) + { + $this->prescripteur = $prescripteur; + } + + public function getSituationLogementPrecision() + { + return $this->situationLogementPrecision; + } + + public function getAcompteDIF() + { + return $this->acompteDIF; + } + + public function getHandicapIs() + { + return $this->handicapIs; + } + + public function getHandicapNotes() + { + return $this->handicapNotes; + } + + public function getHandicapRecommandation() + { + return $this->handicapRecommandation; + } + + public function getMobiliteMoyenDeTransport() + { + return $this->mobiliteMoyenDeTransport; + } + + public function getMobiliteNotes() + { + return $this->mobiliteNotes; + } + + public function setMobiliteMoyenDeTransport($mobiliteMoyenDeTransport) + { + $this->mobiliteMoyenDeTransport = $mobiliteMoyenDeTransport; + + return $this; + } + + public function setMobiliteNotes($mobiliteNotes) + { + $this->mobiliteNotes = $mobiliteNotes; + + return $this; + } + + public function getHandicapAccompagnement(): ?ThirdParty + { + return $this->handicapAccompagnement; + } + + public function getDocumentAttestationSecuriteSociale(): ?StoredObject + { + return $this->documentAttestationSecuriteSociale; + } + + public function setSituationLogementPrecision($situationLogementPrecision) + { + $this->situationLogementPrecision = $situationLogementPrecision; + return $this; + } + + public function setAcompteDIF($acompteDIF) + { + $this->acompteDIF = $acompteDIF; + return $this; + } + + public function setHandicapIs($handicapIs) + { + $this->handicapIs = $handicapIs; + return $this; + } + + public function setHandicapNotes($handicapNotes) + { + $this->handicapNotes = $handicapNotes; + return $this; + } + + public function setHandicapRecommandation($handicapRecommandation) + { + $this->handicapRecommandation = $handicapRecommandation; + return $this; + } + + public function setHandicapAccompagnement(ThirdParty $handicapAccompagnement = null) + { + $this->handicapAccompagnement = $handicapAccompagnement; + return $this; + } + + public function setDocumentAttestationSecuriteSociale(StoredObject $documentAttestationSecuriteSociale = null) + { + $this->documentAttestationSecuriteSociale = $documentAttestationSecuriteSociale; + return $this; + } + + public function getDateContratIEJ(): ?\DateTime + { + return $this->dateContratIEJ; + } + + public function setDateContratIEJ(\DateTime $dateContratIEJ = null) + { + $this->dateContratIEJ = $dateContratIEJ; + return $this; + } + + public function getTypeContratAide() + { + return $this->typeContratAide; + } + + public function setTypeContratAide($typeContratAide) + { + $this->typeContratAide = $typeContratAide; + return $this; + } + + public function getDateAvenantIEJ(): ?\DateTime + { + return $this->dateAvenantIEJ; + } + + public function setDateAvenantIEJ(?\DateTime $dateAvenantIEJ = null) + { + $this->dateAvenantIEJ = $dateAvenantIEJ; + + return $this; + } + + + +} diff --git a/src/Bundle/ChillJobBundle/src/Entity/CV.php b/src/Bundle/ChillJobBundle/src/Entity/CV.php new file mode 100644 index 000000000..4240bb637 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Entity/CV.php @@ -0,0 +1,353 @@ +formations = new ArrayCollection(); + $this->experiences = new ArrayCollection(); + $this->reportDate = new \DateTime('now'); + } + + /** + * Get id. + * + * @return int + */ + public function getId() + { + return $this->id; + } + + /** + * Set reportDate. + * + * @param \DateTime $reportDate + * + * @return CV + */ + public function setReportDate($reportDate) + { + $this->reportDate = $reportDate; + + return $this; + } + + /** + * Get reportDate. + * + * @return \DateTime + */ + public function getReportDate() + { + return $this->reportDate; + } + + /** + * Set formationLevel. + * + * @param string|null $formationLevel + * + * @return CV + */ + public function setFormationLevel($formationLevel = null) + { + $this->formationLevel = $formationLevel; + + return $this; + } + + /** + * Get formationLevel. + * + * @return string|null + */ + public function getFormationLevel() + { + return $this->formationLevel; + } + + /** + * Set formationType. + * + * @param string $formationType + * + * @return CV + */ + public function setFormationType($formationType) + { + $this->formationType = $formationType; + + return $this; + } + + /** + * Get formationType. + * + * @return string + */ + public function getFormationType() + { + return $this->formationType; + } + + /** + * Set spokenLanguages. + * + * @param json|null $spokenLanguages + * + * @return CV + */ + public function setSpokenLanguages($spokenLanguages = null) + { + $this->spokenLanguages = $spokenLanguages; + + return $this; + } + + /** + * Get spokenLanguages. + * + * @return json|null + */ + public function getSpokenLanguages() + { + return $this->spokenLanguages ?? []; + } + + /** + * Set notes. + * + * @param string|null $notes + * + * @return CV + */ + public function setNotes($notes = null) + { + $this->notes = $notes; + + return $this; + } + + /** + * Get notes. + * + * @return string|null + */ + public function getNotes() + { + return $this->notes; + } + + public function getFormations(): Collection + { + return $this->formations; + } + + public function getExperiences(): Collection + { + return $this->experiences; + } + + public function setFormations(Collection $formations) + { + foreach ($formations as $formation) { + /** @var CV\Formation $formation */ + $formation->setCV($this); + } + $this->formations = $formations; + + return $this; + } + + public function addFormation(CV\Formation $formation) + { + if ($this->formations->contains($formation)) { + return $this; + } + + $this->formations->add($formation); + $formation->setCV($this); + + return $this; + } + + public function removeFormation(CV\Formation $formation) + { + if (FALSE === $this->formations->contains($formation)) { + return $this; + } + + $formation->setCV(null); + $this->formations->removeElement($formation); + + return $this; + } + + public function setExperiences(Collection $experiences) + { + foreach ($experiences as $experience) { + /** @var CV\Experience $experience */ + $experience->setCV($this); + } + + $this->experiences = $experiences; + + return $this; + } + + public function addExperience(CV\Experience $experience) + { + if ($this->experiences->contains($experience)) { + return $this; + } + + $experience->setCV($this); + $this->experiences->add($experience); + + return $this; + } + + public function removeExperience(CV\Experience $experience) + { + if (FALSE === $this->experiences->contains($experience)) { + return $this; + } + + $this->experiences->removeElement($experience); + $experience->setCV(null); + + return $this; + } + + public function getPerson(): Person + { + return $this->person; + } + + public function setPerson(Person $person) + { + $this->person = $person; + return $this; + } + + public function __toString() + { + return 'CV de '.$this->getPerson().' daté du '. + $this->getReportDate()->format('d-m-Y'); + } + +} diff --git a/src/Bundle/ChillJobBundle/src/Entity/CV/Experience.php b/src/Bundle/ChillJobBundle/src/Entity/CV/Experience.php new file mode 100644 index 000000000..aed41e9da --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Entity/CV/Experience.php @@ -0,0 +1,263 @@ +id; + } + + /** + * Set poste. + * + * @param string|null $poste + * + * @return Experience + */ + public function setPoste($poste = null) + { + $this->poste = $poste; + + return $this; + } + + /** + * Get poste. + * + * @return string|null + */ + public function getPoste() + { + return $this->poste; + } + + /** + * Set structure. + * + * @param string|null $structure + * + * @return Experience + */ + public function setStructure($structure = null) + { + $this->structure = $structure; + + return $this; + } + + /** + * Get structure. + * + * @return string|null + */ + public function getStructure() + { + return $this->structure; + } + + /** + * Set startDate. + * + * @param \DateTime|null $startDate + * + * @return Experience + */ + public function setStartDate($startDate = null) + { + $this->startDate = $startDate; + + return $this; + } + + /** + * Get startDate. + * + * @return \DateTime|null + */ + public function getStartDate() + { + return $this->startDate; + } + + /** + * Set endDate. + * + * @param \DateTime|null $endDate + * + * @return Experience + */ + public function setEndDate($endDate = null) + { + $this->endDate = $endDate; + + return $this; + } + + /** + * Get endDate. + * + * @return \DateTime|null + */ + public function getEndDate() + { + return $this->endDate; + } + + /** + * Set contratType. + * + * @param string $contratType + * + * @return Experience + */ + public function setContratType($contratType) + { + $this->contratType = $contratType; + + return $this; + } + + /** + * Get contratType. + * + * @return string + */ + public function getContratType() + { + return $this->contratType; + } + + /** + * Set notes. + * + * @param string $notes + * + * @return Experience + */ + public function setNotes($notes) + { + $this->notes = $notes; + + return $this; + } + + /** + * Get notes. + * + * @return string + */ + public function getNotes() + { + return $this->notes; + } + + public function getCV(): CV + { + return $this->CV; + } + + public function setCV(?CV $CV = null) + { + $this->CV = $CV; + + return $this; + } + + +} diff --git a/src/Bundle/ChillJobBundle/src/Entity/CV/Formation.php b/src/Bundle/ChillJobBundle/src/Entity/CV/Formation.php new file mode 100644 index 000000000..63749d5d7 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Entity/CV/Formation.php @@ -0,0 +1,258 @@ +id; + } + + /** + * Set title. + * + * @param string $title + * + * @return Formation + */ + public function setTitle($title) + { + $this->title = $title; + + return $this; + } + + /** + * Get title. + * + * @return string + */ + public function getTitle() + { + return $this->title; + } + + /** + * Set startDate. + * + * @param \DateTime|null $startDate + * + * @return Formation + */ + public function setStartDate($startDate = null) + { + $this->startDate = $startDate; + + return $this; + } + + /** + * Get startDate. + * + * @return \DateTime|null + */ + public function getStartDate() + { + return $this->startDate; + } + + /** + * Set endDate. + * + * @param \DateTime|null $endDate + * + * @return Formation + */ + public function setEndDate($endDate = null) + { + $this->endDate = $endDate; + + return $this; + } + + /** + * Get endDate. + * + * @return \DateTime|null + */ + public function getEndDate() + { + return $this->endDate; + } + + /** + * Set diplomaObtained. + * + * @param json|null $diplomaObtained + * + * @return Formation + */ + public function setDiplomaObtained($diplomaObtained = null) + { + $this->diplomaObtained = $diplomaObtained; + + return $this; + } + + /** + * Get diplomaObtained. + * + * @return json|null + */ + public function getDiplomaObtained() + { + return $this->diplomaObtained; + } + + /** + * Set diplomaReconnue. + * + * @param string|null $diplomaReconnue + * + * @return Formation + */ + public function setDiplomaReconnue($diplomaReconnue = null) + { + $this->diplomaReconnue = $diplomaReconnue; + + return $this; + } + + /** + * Get diplomaReconnue. + * + * @return string|null + */ + public function getDiplomaReconnue() + { + return $this->diplomaReconnue; + } + + /** + * Set organisme. + * + * @param string $organisme + * + * @return Formation + */ + public function setOrganisme($organisme) + { + $this->organisme = $organisme; + + return $this; + } + + /** + * Get organisme. + * + * @return string + */ + public function getOrganisme() + { + return $this->organisme; + } + + public function getCV(): ?CV + { + return $this->CV; + } + + public function setCV(?CV $CV = null) + { + $this->CV = $CV; + + return $this; + } + + +} diff --git a/src/Bundle/ChillJobBundle/src/Entity/Frein.php b/src/Bundle/ChillJobBundle/src/Entity/Frein.php new file mode 100644 index 000000000..891dd0a2c --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Entity/Frein.php @@ -0,0 +1,272 @@ +reportDate = new \DateTime('today'); + } + + /** + * Get id. + * + * @return int + */ + public function getId() + { + return $this->id; + } + + /** + * Set reportDate. + * + * @param \DateTime $reportDate + * + * @return Frein + */ + public function setReportDate($reportDate) + { + $this->reportDate = $reportDate; + + return $this; + } + + /** + * Get reportDate. + * + * @return \DateTime + */ + public function getReportDate() + { + return $this->reportDate; + } + + /** + * Set freinsPerso. + * + * @param string[] $freinsPerso + * + * @return Frein + */ + public function setFreinsPerso(array $freinsPerso = []) + { + $this->freinsPerso = $freinsPerso; + + return $this; + } + + /** + * Get freinsPerso. + * + * @return json + */ + public function getFreinsPerso() + { + return $this->freinsPerso; + } + + /** + * Set notesPerso. + * + * @param string $notesPerso + * + * @return Frein + */ + public function setNotesPerso(string $notesPerso = null) + { + $this->notesPerso = (string) $notesPerso; + + return $this; + } + + /** + * Get notesPerso. + * + * @return string + */ + public function getNotesPerso() + { + return $this->notesPerso; + } + + /** + * Set freinsEmploi. + * + * @param json $freinsEmploi + * + * @return Frein + */ + public function setFreinsEmploi(array $freinsEmploi = []) + { + $this->freinsEmploi = $freinsEmploi; + + return $this; + } + + /** + * Get freinsEmploi. + * + * @return json + */ + public function getFreinsEmploi() + { + return $this->freinsEmploi; + } + + /** + * Set notesEmploi. + * + * @param string $notesEmploi + * + * @return Frein + */ + public function setNotesEmploi(string $notesEmploi = null) + { + $this->notesEmploi = (string) $notesEmploi; + + return $this; + } + + /** + * Get notesEmploi. + * + * @return string + */ + public function getNotesEmploi() + { + return $this->notesEmploi; + } + + public function getPerson(): ?\Chill\PersonBundle\Entity\Person + { + return $this->person; + } + + public function setPerson(\Chill\PersonBundle\Entity\Person $person = null): HasPerson + { + $this->person = $person; + + return $this; + } + + /** + * Vérifie qu'au moins un frein a été coché parmi les freins perso + emploi + * + * @param ExecutionContextInterface $context + * @param array $payload + * @Assert\Callback() + */ + public function validateFreinsCount(ExecutionContextInterface $context, $payload) + { + $nb = count($this->getFreinsEmploi()) + count($this->getFreinsPerso()); + + if ($nb === 0) { + $msg = "Indiquez au moins un frein parmi les freins " + . "liés à l'emploi et les freins liés à la situation personnelle."; + $context->buildViolation($msg) + ->atPath('freinsEmploi') + ->addViolation(); + + $context->buildViolation($msg) + ->atPath('freinsPerso') + ->addViolation(); + } + } + + public function __toString() + { + return 'Rapport "frein" de '.$this->getPerson().' daté du '. + $this->getReportDate()->format('d-m-Y'); + } +} diff --git a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php new file mode 100644 index 000000000..69bf513ad --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php @@ -0,0 +1,1256 @@ +id; + } + + /** + * Set domaineActivite. + * + * @param string|null $domaineActivite + * + * @return Immersion + */ + public function setDomaineActivite($domaineActivite = null) + { + $this->domaineActivite = $domaineActivite; + + return $this; + } + + /** + * Get domaineActivite. + * + * @return string|null + */ + public function getDomaineActivite() + { + return $this->domaineActivite; + } + + /** + * Set tuteurName. + * + * @param string|null $tuteurName + * + * @return Immersion + */ + public function setTuteurName($tuteurName = null) + { + $this->tuteurName = $tuteurName; + + return $this; + } + + /** + * Get tuteurName. + * + * @return string|null + */ + public function getTuteurName() + { + return $this->tuteurName; + } + + /** + * Set tuteurFonction. + * + * @param string|null $tuteurFonction + * + * @return Immersion + */ + public function setTuteurFonction($tuteurFonction = null) + { + $this->tuteurFonction = $tuteurFonction; + + return $this; + } + + /** + * Get tuteurFonction. + * + * @return string|null + */ + public function getTuteurFonction() + { + return $this->tuteurFonction; + } + + /** + * Set tuteurPhoneNumber. + * + * @param string|null $tuteurPhoneNumber + * + * @return Immersion + */ + public function setTuteurPhoneNumber($tuteurPhoneNumber = null) + { + $this->tuteurPhoneNumber = $tuteurPhoneNumber; + + return $this; + } + + /** + * Get tuteurPhoneNumber. + * + * @return string|null + */ + public function getTuteurPhoneNumber() + { + return $this->tuteurPhoneNumber; + } + + /** + * Set structureAccName. + * + * @param string|null $structureAccName + * + * @return Immersion + */ + public function setStructureAccName($structureAccName = null) + { + $this->structureAccName = $structureAccName; + + return $this; + } + + /** + * Get structureAccName. + * + * @return string|null + */ + public function getStructureAccName() + { + return $this->structureAccName; + } + + /** + * Set structureAccPhonenumber. + * + * @param string $structureAccPhonenumber + * + * @return Immersion + */ + public function setStructureAccPhonenumber($structureAccPhonenumber) + { + $this->structureAccPhonenumber = $structureAccPhonenumber; + + return $this; + } + + /** + * Get structureAccPhonenumber. + * + * @return string + */ + public function getStructureAccPhonenumber() + { + return $this->structureAccPhonenumber; + } + + /** + * Set posteDescriptif. + * + * @param string|null $posteDescriptif + * + * @return Immersion + */ + public function setPosteDescriptif($posteDescriptif = null) + { + $this->posteDescriptif = $posteDescriptif; + + return $this; + } + + /** + * Get posteDescriptif. + * + * @return string|null + */ + public function getPosteDescriptif() + { + return $this->posteDescriptif; + } + + /** + * Set posteTitle. + * + * @param string|null $posteTitle + * + * @return Immersion + */ + public function setPosteTitle($posteTitle = null) + { + $this->posteTitle = $posteTitle; + + return $this; + } + + /** + * Get posteTitle. + * + * @return string|null + */ + public function getPosteTitle() + { + return $this->posteTitle; + } + + /** + * Set posteLieu. + * + * @param string|null $posteLieu + * + * @return Immersion + */ + public function setPosteLieu($posteLieu = null) + { + $this->posteLieu = $posteLieu; + + return $this; + } + + /** + * Get posteLieu. + * + * @return string|null + */ + public function getPosteLieu() + { + return $this->posteLieu; + } + + /** + * Set debutDate. + * + * @param \DateTime|null $debutDate + * + * @return Immersion + */ + public function setDebutDate($debutDate = null) + { + $this->debutDate = $debutDate; + + return $this; + } + + /** + * Get debutDate. + * + * @return \DateTime|null + */ + public function getDebutDate() + { + return $this->debutDate; + } + + /** + * Set duration. + * + * @param string|null $duration + * + * @return Immersion + */ + public function setDuration($duration = null) + { + $this->duration = $duration; + + return $this; + } + + /** + * Get duration. + * + * @return string|null + */ + public function getDuration() + { + return $this->duration; + } + + public function getDateEndComputed() + { + $startDate = \DateTimeImmutable::createFromMutable($this->getDebutDate()); + + return $startDate->add($this->getDuration()); + } + + /** + * Set horaire. + * + * @param string|null $horaire + * + * @return Immersion + */ + public function setHoraire($horaire = null) + { + $this->horaire = $horaire; + + return $this; + } + + /** + * Get horaire. + * + * @return string|null + */ + public function getHoraire() + { + return $this->horaire; + } + + /** + * Set objectifs. + * + * @param array|null $objectifs + * + * @return Immersion + */ + public function setObjectifs($objectifs = null) + { + $this->objectifs = $objectifs; + + return $this; + } + + /** + * Get objectifs. + * + * @return array|null + */ + public function getObjectifs() + { + return $this->objectifs; + } + + public function getObjectifsAutre() + { + return $this->objectifsAutre; + } + + public function setObjectifsAutre($objectifsAutre) + { + $this->objectifsAutre = $objectifsAutre; + + return $this; + } + + /** + * Set savoirEtre. + * + * @param array|null $savoirEtre + * + * @return Immersion + */ + public function setSavoirEtre($savoirEtre = null) + { + $this->savoirEtre = $savoirEtre; + + return $this; + } + + /** + * Get savoirEtre. + * + * @return array|null + */ + public function getSavoirEtre() + { + return $this->savoirEtre; + } + + /** + * Set note. + * + * @param string $note + * + * @return Immersion + */ + public function setNoteImmersion($note) + { + $this->noteImmersion = (string) $note; + + return $this; + } + + /** + * Get note. + * + * @return string + */ + public function getNoteImmersion() + { + return $this->noteImmersion; + } + + /** + * Set principalesActivites. + * + * @param string|null $principalesActivites + * + * @return Immersion + */ + public function setPrincipalesActivites($principalesActivites = null) + { + $this->principalesActivites = $principalesActivites; + + return $this; + } + + /** + * Get principalesActivites. + * + * @return string|null + */ + public function getPrincipalesActivites() + { + return $this->principalesActivites; + } + + /** + * Set competencesAcquises. + * + * @param string|null $competencesAcquises + * + * @return Immersion + */ + public function setCompetencesAcquises($competencesAcquises = null) + { + $this->competencesAcquises = $competencesAcquises; + + return $this; + } + + /** + * Get competencesAcquises. + * + * @return string|null + */ + public function getCompetencesAcquises() + { + return $this->competencesAcquises; + } + + /** + * Set competencesADevelopper. + * + * @param string|null $competencesADevelopper + * + * @return Immersion + */ + public function setCompetencesADevelopper($competencesADevelopper = null) + { + $this->competencesADevelopper = $competencesADevelopper; + + return $this; + } + + /** + * Get competencesADevelopper. + * + * @return string|null + */ + public function getCompetencesADevelopper() + { + return $this->competencesADevelopper; + } + + /** + * Set noteBilan. + * + * @param string|null $noteBilan + * + * @return Immersion + */ + public function setNoteBilan($noteBilan = null) + { + $this->noteBilan = $noteBilan; + + return $this; + } + + /** + * Get noteBilan. + * + * @return string|null + */ + public function getNoteBilan() + { + return $this->noteBilan; + } + + public function getPerson(): ?Person + { + return $this->person; + } + + public function getEntreprise(): ?ThirdParty + { + return $this->entreprise; + } + + public function getReferent(): ?User + { + return $this->referent; + } + + public function setPerson(Person $person) + { + $this->person = $person; + return $this; + } + + public function setEntreprise(ThirdParty $entreprise) + { + $this->entreprise = $entreprise; + return $this; + } + + public function setReferent(User $referent) + { + $this->referent = $referent; + return $this; + } + + public function getStructureAccEmail() + { + return $this->structureAccEmail; + } + + public function getStructureAccAddress(): ?Address + { + return $this->structureAccAddress; + } + + public function setStructureAccEmail($structureAccEmail) + { + $this->structureAccEmail = $structureAccEmail; + return $this; + } + + public function setStructureAccAddress(Address $structureAccAddress) + { + $this->structureAccAddress = $structureAccAddress; + return $this; + } + + public function getIsBilanFullfilled() + { + return $this->isBilanFullfilled; + } + + public function getSavoirEtreNote() + { + return $this->savoirEtreNote; + } + + public function setIsBilanFullfilled($isBilanFullfilled) + { + $this->isBilanFullfilled = $isBilanFullfilled; + return $this; + } + + public function setSavoirEtreNote($savoirEtreNote) + { + $this->savoirEtreNote = $savoirEtreNote; + return $this; + } + + public function getPonctualiteSalarie() + { + return $this->ponctualiteSalarie; + } + + public function getPonctualiteSalarieNote() + { + return $this->ponctualiteSalarieNote; + } + + public function getAssiduite() + { + return $this->assiduite; + } + + public function getAssiduiteNote() + { + return $this->assiduiteNote; + } + + public function getInteretActivite() + { + return $this->interetActivite; + } + + public function getInteretActiviteNote() + { + return $this->interetActiviteNote; + } + + public function getIntegreRegle() + { + return $this->integreRegle; + } + + public function getIntegreRegleNote() + { + return $this->integreRegleNote; + } + + public function getEspritInitiative() + { + return $this->espritInitiative; + } + + public function getEspritInitiativeNote() + { + return $this->espritInitiativeNote; + } + + public function getOrganisation() + { + return $this->organisation; + } + + public function getOrganisationNote() + { + return $this->organisationNote; + } + + public function getCapaciteTravailEquipe() + { + return $this->capaciteTravailEquipe; + } + + public function getCapaciteTravailEquipeNote() + { + return $this->capaciteTravailEquipeNote; + } + + public function getStyleVestimentaire() + { + return $this->styleVestimentaire; + } + + public function getStyleVestimentaireNote() + { + return $this->styleVestimentaireNote; + } + + public function getLangageProf() + { + return $this->langageProf; + } + + public function getLangageProfNote() + { + return $this->langageProfNote; + } + + public function getAppliqueConsigne() + { + return $this->appliqueConsigne; + } + + public function getAppliqueConsigneNote() + { + return $this->appliqueConsigneNote; + } + + public function getRespectHierarchie() + { + return $this->respectHierarchie; + } + + public function getRespectHierarchieNote() + { + return $this->respectHierarchieNote; + } + + public function setPonctualiteSalarie($ponctualiteSalarie) + { + $this->ponctualiteSalarie = $ponctualiteSalarie; + return $this; + } + + public function setPonctualiteSalarieNote($ponctualiteSalarieNote) + { + $this->ponctualiteSalarieNote = $ponctualiteSalarieNote; + return $this; + } + + public function setAssiduite($assiduite) + { + $this->assiduite = $assiduite; + return $this; + } + + public function setAssiduiteNote($assiduiteNote) + { + $this->assiduiteNote = $assiduiteNote; + return $this; + } + + public function setInteretActivite($interetActivite) + { + $this->interetActivite = $interetActivite; + return $this; + } + + public function setInteretActiviteNote($interetActiviteNote) + { + $this->interetActiviteNote = $interetActiviteNote; + return $this; + } + + public function setIntegreRegle($integreRegle) + { + $this->integreRegle = $integreRegle; + return $this; + } + + public function setIntegreRegleNote($integreRegleNote) + { + $this->integreRegleNote = $integreRegleNote; + return $this; + } + + public function setEspritInitiative($espritInitiative) + { + $this->espritInitiative = $espritInitiative; + return $this; + } + + public function setEspritInitiativeNote($espritInitiativeNote) + { + $this->espritInitiativeNote = $espritInitiativeNote; + return $this; + } + + public function setOrganisation($organisation) + { + $this->organisation = $organisation; + return $this; + } + + public function setOrganisationNote($organisationNote) + { + $this->organisationNote = $organisationNote; + return $this; + } + + public function setCapaciteTravailEquipe($capaciteTravailEquipe) + { + $this->capaciteTravailEquipe = $capaciteTravailEquipe; + return $this; + } + + public function setCapaciteTravailEquipeNote($capaciteTravailEquipeNote) + { + $this->capaciteTravailEquipeNote = $capaciteTravailEquipeNote; + return $this; + } + + public function setStyleVestimentaire($styleVestimentaire) + { + $this->styleVestimentaire = $styleVestimentaire; + return $this; + } + + public function setStyleVestimentaireNote($styleVestimentaireNote) + { + $this->styleVestimentaireNote = $styleVestimentaireNote; + return $this; + } + + public function setLangageProf($langageProf) + { + $this->langageProf = $langageProf; + return $this; + } + + public function setLangageProfNote($langageProfNote) + { + $this->langageProfNote = $langageProfNote; + return $this; + } + + public function setAppliqueConsigne($appliqueConsigne) + { + $this->appliqueConsigne = $appliqueConsigne; + return $this; + } + + public function setAppliqueConsigneNote($appliqueConsigneNote) + { + $this->appliqueConsigneNote = $appliqueConsigneNote; + return $this; + } + + public function setRespectHierarchie($respectHierarchie) + { + $this->respectHierarchie = $respectHierarchie; + return $this; + } + + public function setRespectHierarchieNote($respectHierarchieNote) + { + $this->respectHierarchieNote = $respectHierarchieNote; + return $this; + } + + public function __toString() + { + return 'Rapport "immersion" de '.$this->getPerson(); + } + +} diff --git a/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php b/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php new file mode 100644 index 000000000..95e0fc136 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php @@ -0,0 +1,468 @@ +valide = new ArrayCollection(); + $this->souhait = new ArrayCollection(); + } + + /** + * Get id. + * + * @return int + */ + public function getId() + { + return $this->id; + } + + /** + * Set reportDate. + * + * @param \DateTime $reportDate + * + * @return ProjetProfessionnel + */ + public function setReportDate($reportDate) + { + $this->reportDate = $reportDate; + + return $this; + } + + /** + * Get reportDate. + * + * @return \DateTime + */ + public function getReportDate() + { + return $this->reportDate; + } + + /** + * Set typeContrat. + * + * @param json|null $typeContrat + * + * @return ProjetProfessionnel + */ + public function setTypeContrat($typeContrat = null) + { + $this->typeContrat = $typeContrat; + + return $this; + } + + /** + * Get typeContrat. + * + * @return json|null + */ + public function getTypeContrat() + { + return $this->typeContrat; + } + + /** + * Set typeContratNotes. + * + * @param string|null $typeContratNotes + * + * @return ProjetProfessionnel + */ + public function setTypeContratNotes($typeContratNotes = null) + { + $this->typeContratNotes = $typeContratNotes; + + return $this; + } + + /** + * Get typeContratNotes. + * + * @return string|null + */ + public function getTypeContratNotes() + { + return $this->typeContratNotes; + } + + /** + * Set volumeHoraire. + * + * @param json|null $volumeHoraire + * + * @return ProjetProfessionnel + */ + public function setVolumeHoraire($volumeHoraire = null) + { + $this->volumeHoraire = $volumeHoraire; + + return $this; + } + + /** + * Get volumeHoraire. + * + * @return json|null + */ + public function getVolumeHoraire() + { + return $this->volumeHoraire; + } + + /** + * Set volumeHoraireNotes. + * + * @param string|null $volumeHoraireNotes + * + * @return ProjetProfessionnel + */ + public function setVolumeHoraireNotes($volumeHoraireNotes = null) + { + $this->volumeHoraireNotes = $volumeHoraireNotes; + + return $this; + } + + /** + * Get volumeHoraireNotes. + * + * @return string|null + */ + public function getVolumeHoraireNotes() + { + return $this->volumeHoraireNotes; + } + + /** + * Set idee. + * + * @param string|null $idee + * + * @return ProjetProfessionnel + */ + public function setIdee($idee = null) + { + $this->idee = $idee; + + return $this; + } + + /** + * Get idee. + * + * @return string|null + */ + public function getIdee() + { + return $this->idee; + } + + /** + * Set enCoursConstruction. + * + * @param string|null $enCoursConstruction + * + * @return ProjetProfessionnel + */ + public function setEnCoursConstruction($enCoursConstruction = null) + { + $this->enCoursConstruction = $enCoursConstruction; + + return $this; + } + + /** + * Get enCoursConstruction. + * + * @return string|null + */ + public function getEnCoursConstruction() + { + return $this->enCoursConstruction; + } + + /** + * Set valideNotes. + * + * @param string|null $valideNotes + * + * @return ProjetProfessionnel + */ + public function setValideNotes($valideNotes = null) + { + $this->valideNotes = $valideNotes; + + return $this; + } + + /** + * Get valideNotes. + * + * @return string|null + */ + public function getValideNotes() + { + return $this->valideNotes; + } + + /** + * Set projetProfessionnelNote. + * + * @param string|null $projetProfessionnelNote + * + * @return ProjetProfessionnel + */ + public function setProjetProfessionnelNote($projetProfessionnelNote = null) + { + $this->projetProfessionnelNote = $projetProfessionnelNote; + + return $this; + } + + /** + * Get projetProfessionnelNote. + * + * @return string|null + */ + public function getProjetProfessionnelNote() + { + return $this->projetProfessionnelNote; + } + + public function getPerson(): Person + { + return $this->person; + } + + public function getSouhait(): Collection + { + return $this->souhait; + } + + public function getValide(): Collection + { + return $this->valide; + } + + public function setPerson(Person $person) + { + $this->person = $person; + + return $this; + } + + public function setSouhait(Collection $souhait) + { + $this->souhait = $souhait; + + return $this; + } + + public function addSouhait(Appellation $souhait) + { + $this->souhait->add($souhait); + + return $this; + } + + public function setValide(Collection $valide) + { + $this->valide = $valide; + + return $this; + } + + public function addValide(Appellation $valide) + { + $this->valide->add($valide); + + return $this; + } + + public function getDomaineActiviteSouhait(): ?string + { + return $this->domaineActiviteSouhait; + } + + public function getDomaineActiviteValide(): ?string + { + return $this->domaineActiviteValide; + } + + public function setDomaineActiviteSouhait(string $domaineActiviteSouhait = null) + { + $this->domaineActiviteSouhait = $domaineActiviteSouhait; + + return $this; + } + + public function setDomaineActiviteValide(string $domaineActiviteValide = null) + { + $this->domaineActiviteValide = $domaineActiviteValide; + + return $this; + } + + public function __toString() + { + return 'Rapport "projet professionnel" de '.$this->getPerson().' daté du '. + $this->getReportDate()->format('d-m-Y'); + } +} diff --git a/src/Bundle/ChillJobBundle/src/Entity/Rome/Appellation.php b/src/Bundle/ChillJobBundle/src/Entity/Rome/Appellation.php new file mode 100644 index 000000000..e3e2dedb4 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Entity/Rome/Appellation.php @@ -0,0 +1,125 @@ +id; + } + + /** + * Set code. + * + * @param string $code + * + * @return Appellation + */ + public function setCode($code) + { + $this->code = $code; + + return $this; + } + + /** + * Get code. + * + * @return string + */ + public function getCode() + { + return $this->code; + } + + /** + * Set libelle. + * + * @param string $libelle + * + * @return Appellation + */ + public function setLibelle($libelle) + { + $this->libelle = $libelle; + + return $this; + } + + /** + * Get libelle. + * + * @return string + */ + public function getLibelle() + { + return $this->libelle; + } + + public function getMetier(): Metier + { + return $this->metier; + } + + public function setMetier(Metier $metier) + { + $this->metier = $metier; + + return $this; + } + + + public function __toString() + { + return $this->libelle; + } +} diff --git a/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php b/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php new file mode 100644 index 000000000..d6ab5a751 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php @@ -0,0 +1,112 @@ +appellation = new ArrayCollection(); + } + + + /** + * Get id. + * + * @return int + */ + public function getId() + { + return $this->id; + } + + /** + * Set libelle. + * + * @param string $libelle + * + * @return Metier + */ + public function setLibelle($libelle) + { + $this->libelle = $libelle; + + return $this; + } + + /** + * Get libelle. + * + * @return string + */ + public function getLibelle() + { + return $this->libelle; + } + + /** + * Set code. + * + * @param string $code + * + * @return Metier + */ + public function setCode($code) + { + $this->code = $code; + + return $this; + } + + /** + * Get code. + * + * @return string + */ + public function getCode() + { + return $this->code; + } +} diff --git a/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php b/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php new file mode 100644 index 000000000..bc69b70fd --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php @@ -0,0 +1,653 @@ + CSPerson::RESSOURCES, + 'moyen_transport__label' => CSPerson::MOBILITE_MOYEN_TRANSPORT, + 'type_contrat__label' => CSPerson::TYPE_CONTRAT, + 'permis_conduire__label' => CSPerson::PERMIS_CONDUIRE, + 'accompagnement__label' => CSPerson::ACCOMPAGNEMENTS, + 'situation_professionnelle__label' => CSPerson::SITUATION_PROFESSIONNELLE, + 'neet_eligibility__label' => CSPerson::NEET_ELIGIBILITY + ]; + + /** + * @var array + */ + protected $personIds = []; + + /** EntityManagerInterface $em */ + protected $em; + /** TranslatorInterface $translator */ + protected $translator; + /** TranslatableStringHelper $translatableStringHelper */ + protected $translatableStringHelper; + /** CustomFieldProvider $customFieldProvider */ + protected $customFieldProvider; + + public function __construct( + EntityManagerInterface $em, + TranslatorInterface $translator, + TranslatableStringHelper $translatableStringHelper, + CustomFieldProvider $customFieldProvider + ) { + parent::__construct($em, $translator, $translatableStringHelper, $customFieldProvider); + } + + /** + * Rebuild fields array, combining parent ListPerson and ListCSPerson, + * adding query type as value + * + * @return array + */ + protected function allFields() + { + $fields = [ + 'id' => 'integer', + 'firstName' => 'string', + 'lastName' => 'string', + 'gender' => 'string', + 'birthdate' => 'date', + 'placeOfBirth' => 'string', + 'countryOfBirth' => 'json', + 'nationality' => 'json', + 'email' => 'string', + 'phonenumber' => 'string', + 'mobilenumber' => 'string', + 'contactInfo' => 'string', + 'memo' => 'string', + 'address_valid_from' => 'date', + 'address_street_address_1' => 'string', + 'address_street_address_2' => 'string', + 'address_postcode_code' => 'string', + 'address_postcode_label' => 'string', + 'address_country_name' => 'string', + 'address_country_code' => 'string', + 'address_isnoaddress' => 'boolean' + ]; + + $CSfields = [ + 'recentopeningdate' => 'date', + 'recentclosingdate' => 'date', + 'closingmotive' => 'json', + 'situation_familiale' => 'json', + 'enfantacharge' => 'integer', + 'accompagnement__label' => 'json', + 'findernieremploidate' => 'date', + 'prescripteur__name' => 'string', + 'prescripteur__email' => 'string', + 'prescripteur__phone' => 'string', + 'poleemploiid' => 'string', + 'cafid' => 'string', + 'cafinscriptiondate' => 'date', + 'contratiejdate' => 'date', + 'cerinscriptiondate' => 'date', + 'ppaeinscriptiondate' => 'date', + 'ppaesignataire' => 'string', + 'cersignataire' => 'string', + 'neet_eligibility__label' => 'string', + 'neetcommissiondate' => 'date', + 'fsemademarchecode' => 'string', + 'permis_conduire__label' => 'json', + 'situation_professionnelle__label' => 'string', + 'datefindernieremploi' => 'date', + 'type_contrat__label' => 'json', + 'ressource__label' => 'json', + 'moyen_transport__label' => 'json' + ]; + + return array_merge($fields, $CSfields); + } + + /** + * Return array FIELDS keys only + * + * @return array + */ + private function getFields() + { + return array_keys($this->allFields()); + } + + /** + * give the list of keys the current export added to the queryBuilder in + * self::initiateQuery + * + * Example: if your query builder will contains `SELECT count(id) AS count_id ...`, + * this function will return `array('count_id')`. + * + * @param mixed[] $data the data from the export's form (added by self::buildForm) + * @return array + */ + public function getQueryKeys($data) + { + $csperson = self::CSPERSON; + + $fields = []; + foreach ($data['fields'] as $key) { + switch ($key) { + + case 'ressource__label': + case 'moyen_transport__label': + foreach ($csperson[$key] as $item) { + $this->translationCompatKey($item, $key); + $fields[] = $item; + } + break; + + case 'prescripteur__name': + case 'prescripteur__email': + case 'prescripteur__phone': + $key = str_replace('__', '.', $key); + + case 'situation_professionnelle__label': + case 'neet_eligibility__label': + + case 'accompagnement__label': + case 'permis_conduire__label': + case 'type_contrat__label': + + default: + $fields[] = $key; + } + } + return $fields; + } + + /** + * Some fields values are arrays that have to be splitted in columns. + * This function split theses fields + * + * @param array $rows + * @return array|\Closure + */ + private function splitArrayToColumns($rows) + { + $csperson = self::CSPERSON; + + /** + * @var array $row each row exported + */ + $results = []; + foreach ($rows as $row) { + + /** + * @var string $key + * @var mixed $value + */ + $res = []; + foreach ($row as $key => $value) { + + switch ($key) { + case 'ressource__label': + case 'moyen_transport__label': + + foreach ($csperson[$key] as $item) { + $this->translationCompatKey($item, $key); + if (($value === null)||(count($value) === 0)) { + $res[$item] = ''; + } else { + foreach ($value as $v) { + $this->translationCompatKey($v, $key); + + if ($item === $v) { + $res[$item] = 'x'; + break; + } else { + $res[$item] = ''; + } + } + } + } + break; + + case 'situation_professionnelle__label': + + $f = false; + if ($value === 'en_activite') { + $f = true; + } + $res[$key] = $value; + break; + + case 'type_contrat__label': + + if (! empty($value)) { + $res[$key] = ($f) ? $value : null; + } else { + $res[$key] = null; + } + break; + + case 'prescripteur__name': + case 'prescripteur__email': + case 'prescripteur__phone': + + $key = str_replace('__', '.', $key); + + case 'neet_eligibility__label': + case 'accompagnement__label': + case 'permis_conduire__label': + + default: + $res[$key] = $value; + } + } + $results[] = $res; + } + return $results; + } + + /** + * Make item compatible with YAML messages ids + * for fields that are splitted in columns (with field key to replace) + * + * AVANT + * key: projet_prof__volume_horaire__label + * item: temps_plein + * APRES + * item: projet_prof.volume_horaire.temps_plein + * + * @param string $item (&) passed by reference + * @param string $key + */ + private function translationCompatKey(&$item, $key) + { + $key = str_replace('label', $item, $key); + $key = str_replace('__', '.', $key); + $item = $key; + } + + /** + * @param FormBuilderInterface $builder + */ + public function buildForm(FormBuilderInterface $builder) + { + parent::buildForm($builder); // ajouter un '?' dans la query + + $choices = array_combine($this->getFields(), $this->getFields()); + + $builder->add('fields', ChoiceType::class, array( + 'multiple' => true, + 'expanded' => true, + 'choices' => $choices, + 'data' => $choices, //les checkbox cochés !! + 'choices_as_values' => true, + 'label' => 'Fields to include in export', + 'choice_label' => function ($key) { + return str_replace('__', '.', $key); + }, + 'choice_attr' => function($val) { + if (substr($val, 0, 8) === 'address_') { + return ['data-display-target' => 'address_date']; + } else { + return []; + } + }, + 'constraints' => [new Callback(array( + 'callback' => function($selected, ExecutionContextInterface $context) { + if (count($selected) === 0) { + $context->buildViolation('You must select at least one element') + ->atPath('fields') + ->addViolation(); + } + } + ))] + )); + } + + /** + * @param array $requiredModifiers + * @param array $acl + * @param array $data + * @return \Doctrine\ORM\NativeQuery|\Doctrine\ORM\QueryBuilder + * @throws \Doctrine\DBAL\Exception\InvalidArgumentException + */ + public function initiateQuery(array $requiredModifiers, array $acl, array $data = array()) + { + $centers = array_map(function($el) { return $el['center']; }, $acl); + + // throw an error if any fields are present + if (!\array_key_exists('fields', $data)) { + throw new \Doctrine\DBAL\Exception\InvalidArgumentException("any fields " + . "have been checked"); + } + + $qb = $this->entityManager->createQueryBuilder() + ->from('ChillPersonBundle:Person', 'person') + ->join('person.center', 'center') + ->andWhere('center IN (:authorized_centers)') + ->setParameter('authorized_centers', $centers) + ; + return $qb; + } + + /** + * @param \Doctrine\ORM\NativeQuery|\Doctrine\ORM\QueryBuilder $qb + * @param mixed[] $data + * @return mixed|mixed[] + */ + public function getResult($qb, $data) + { + $qb->select('person.id'); + + $ids = $qb->getQuery()->getResult(Query::HYDRATE_SCALAR); + $this->personIds = array_map(function ($e) { return $e['id']; }, $ids); + + $personIdsParameters = '?'. \str_repeat(', ?', count($this->personIds) -1); + $query = \str_replace('%person_ids%', $personIdsParameters, self::QUERY); + + $rsm = new Query\ResultSetMapping(); + + + foreach ($this->allFields() as $name => $type) { + if ($data['fields'][$name]) { + $rsm->addScalarResult(strtolower($name), $name, $type); + } + } + + $nq = $this->entityManager->createNativeQuery($query, $rsm); + + $idx = 0; + for ($i=1; $i<=8; $i++) { + $idx++; + $nq->setParameter($idx, $data['address_date'], 'date'); + } + for ($i=1; $i<=(count($this->personIds)); $i++) { + $idx++; + $nq->setParameter($idx, $this->personIds[$i-1]); + } + + return $this->splitArrayToColumns( + $nq->getResult() + ); + } + + /** + * @param string $key The column key, as added in the query + * @param mixed[] $values The values from the result. if there are duplicates, those might be given twice. Example: array('FR', 'BE', 'CZ', 'FR', 'BE', 'FR') + * @param mixed $data The data from the export's form (as defined in `buildForm` + * + * @return \Closure where the first argument is the value, and the function should return the label to show in the formatted file. Example : `function($countryCode) use ($countries) { return $countries[$countryCode]->getName(); }` + */ + public function getLabels($key, array $values, $data) + { + $csperson = self::CSPERSON; + + switch ($key) { + case 'countryOfBirth': + case 'situation_familiale': + case 'closingmotive': + case 'nationality': + return function ($value) use ($key) { + if ($value === '_header') { return $key; } + return $value['fr']; + }; + case 'accompagnement__label': + case 'permis_conduire__label': + case 'type_contrat__label': + return function ($value) use ($key, $csperson) { + if ($value === '_header') { + return $this->translator->trans( + str_replace('__', '.', $key) + ); + } + if (empty($value)) { return ''; } + $arr = []; + foreach ($value as $v) { + $this->translationCompatKey($v, $key); + $arr[] = $this->translator->trans($v); + } + return implode(', ', $arr); + }; + case 'situation_professionnelle__label': + case 'neet_eligibility__label': + return function ($value) use ($key) { + if ($value === '_header') { + return $this->translator->trans( + str_replace('__', '.', $key) + ); + } + if (empty($value)) { return ''; } + $this->translationCompatKey($value, $key); + return $this->translator->trans($value); + }; + case 'birthdate': + case 'address_valid_from': + case 'recentopeningdate': + case 'recentclosingdate': + case 'findernieremploidate': + case 'cafinscriptiondate': + case 'contratiejdate': + case 'cerinscriptiondate': + case 'ppaeinscriptiondate': + case 'neetcommissiondate': + case 'datefindernieremploi': + /** @var \DateTime $value */ + return function($value) use ($key) { + if ($value === '_header') { return $key; } + if (empty($value)) { return ''; } + return $value->format('d-m-Y'); + }; + + // remplace les getLabels de ListPerson + // (pas possible d'utiliser parent qui appelle une méthode private pour les customfields) + case 'gender' : + return function ($value) { + if ($value === '_header') { return 'gender'; } + return $this->translator->trans($value); + }; + case 'address_country_name': + return function ($value) use ($key) { + if ($value === '_header') { return \strtolower($key); } + if ($value === null) { return ''; } + return $this->translatableStringHelper->localize(json_decode($value, true)); + }; + case 'address_isnoaddress': + return parent::getLabels($key, $values, $data); + default: + return function ($value) use ($key) { + if ($value === '_header') { + return $key; + } + if (empty($value)) { return ''; } + return $value; + }; + } + } + + /** + * Native Query SQL + */ + const QUERY = << 'integer', + 'firstname' => 'string', + 'lastname' => 'string', + 'gender' => 'string', + 'birthdate' => 'date', + 'placeofbirth' => 'string', + 'countryofbirth' => 'json', + 'formationlevel' => 'string', + ]; + + /** + * @var array + */ + protected $personIds = []; + + /** + * @var EntityManagerInterface + */ + protected $entityManager; + + /** + * ListAcquisition constructor. + * + * @param EntityManagerInterface $em + */ + public function __construct(EntityManagerInterface $em) + { + $this->entityManager = $em; + } + + /** + * validate the form's data and, if required, build a contraint + * violation on the data. + * + * @param mixed $data the data, as returned by the user + * @param ExecutionContextInterface $context + */ + public function validateForm($data, ExecutionContextInterface $context) {} + + /** + * get a title, which will be used in UI (and translated) + * + * @return string + */ + public function getTitle() + { + return "Liste des CVs par personne"; + } + + /** + * Add a form to collect data from the user. + * + * @param FormBuilderInterface $builder + */ + public function buildForm(FormBuilderInterface $builder) + { + $builder + ->add('fields', ChoiceType::class, [ + 'multiple' => true, + 'expanded' => true, + 'choices_as_values' => true, + 'label' => 'Fields to include in export', + 'choices' => array_combine($this->getFields(), $this->getFields()), + 'data' => array_combine($this->getFields(), $this->getFields()), + 'choice_attr' => [], + 'attr' => ['class' => ''], + 'constraints' => [new Callback([ + 'callback' => function ($selected, ExecutionContextInterface $context) { + if (count($selected) === 0) { + $context + ->buildViolation('You must select at least one element') + ->atPath('fields') + ->addViolation(); + } + } + ])] + ]) + ->add('reportdate_min', ChillDateType::class, [ + 'label' => 'Date du rapport après le', + 'required' => false, + 'label_attr' => [ + 'class' => 'reportdate_range' + ], + 'attr' => [ + 'class' => 'reportdate_range' + ] + ]) + ->add('reportdate_max', ChillDateType::class, [ + 'label' => 'Date du rapport avant le', + 'required' => false, + 'label_attr' => [ + 'class' => 'report_date_range' + ], + 'attr' => [ + 'class' => 'report_date_range' + ] + ]) + ; + } + + /** + * Return the Export's type. This will inform _on what_ export will apply. + * Most of the type, it will be a string which references an entity. + * + * Example of types : Chill\PersonBundle\Export\Declarations::PERSON_TYPE + * + * @return string + */ + public function getType() + { + return Person::class; + } + + /** + * A description, which will be used in the UI to explain what the export does. + * This description will be translated. + * + * @return string + */ + public function getDescription() + { + return "Crée une liste des CVs en fonction de différents paramètres."; + } + + /** + * The initial query, which will be modified by ModifiersInterface + * (i.e. AggregatorInterface, FilterInterface). + * + * This query should take into account the `$acl` and restrict result only to + * what the user is allowed to see. (Do not show personal data the user + * is not allowed to see). + * + * The returned object should be an instance of QueryBuilder or NativeQuery. + * + * @param array $requiredModifiers + * @param array $acl an array where each row has a `center` key containing the Chill\MainBundle\Entity\Center, and `circles` keys containing the reachable circles. Example: `array( array('center' => $centerA, 'circles' => array($circleA, $circleB) ) )` + * @param array $data the data from the form, if any + * @return QueryBuilder|\Doctrine\ORM\NativeQuery the query to execute. + */ + public function initiateQuery(array $requiredModifiers, array $acl, array $data = array()) + { + return $this->entityManager->createQueryBuilder() + ->from('ChillPersonBundle:Person', 'person'); + } + + /** + * Inform which ModifiersInterface (i.e. AggregatorInterface, FilterInterface) + * are allowed. The modifiers should be an array of types the _modifier_ apply on + * (@see ModifiersInterface::applyOn()). + * + * @return string[] + */ + public function supportsModifiers() + { + return [ 'cv', 'person' ]; + } + + /** + * Return the required Role to execute the Export. + * + * @return \Symfony\Component\Security\Core\Role\Role + * + */ + public function requiredRole() + { + return new Role(ExportsVoter::EXPORT); + } + + /** + * Return which formatter type is allowed for this report. + * + * @return string[] + */ + public function getAllowedFormattersTypes() + { + return [ FormatterInterface::TYPE_LIST ]; + } + + /** + * give the list of keys the current export added to the queryBuilder in + * self::initiateQuery + * + * Example: if your query builder will contains `SELECT count(id) AS count_id ...`, + * this function will return `array('count_id')`. + * + * @param mixed[] $data the data from the export's form (added by self::buildForm) + * @return array + */ + public function getQueryKeys($data) + { + return array_keys($data['fields']); + } + + /** + * Return array FIELDS keys only + * + * @return array + */ + private function getFields() + { + return array_keys(self::FIELDS); + } + + /** + * Return the results of the query builder. + * + * @param QueryBuilder|\Doctrine\ORM\NativeQuery $qb + * @param mixed[] $data the data from the export's form (added by self::buildForm) + * @return mixed[] an array of results + */ + public function getResult($qb, $data) + { + $qb->select('person.id'); + + $ids = $qb->getQuery()->getResult(Query::HYDRATE_SCALAR); + $this->personIds = array_map(function ($e) { return $e['id']; }, $ids); + $personIdsParameters = '?'. \str_repeat(', ?', count($this->personIds) -1); + $query = \str_replace('%person_ids%', $personIdsParameters, self::QUERY); + + $rsm = new Query\ResultSetMapping(); + + foreach (self::FIELDS as $name => $type) { + if ($data['fields'][$name]) { + $rsm->addScalarResult($name, $name, $type); + } + } + + $nq = $this->entityManager->createNativeQuery($query, $rsm); + + $idx = 1; + for ($i=1; $i<=(count($this->personIds)); $i++) { + $idx++; + $nq->setParameter($i, $this->personIds[$i-1]); + } + $nq->setParameter($idx++, $data['reportdate_min'], 'date'); + $nq->setParameter($idx , $data['reportdate_max'], 'date'); + + return $nq->getResult(); + } + + /** + * transform the results to viewable and understable string. + * + * The callable will have only one argument: the `value` to translate. + * + * The callable should also be able to return a key `_header`, which + * will contains the header of the column. + * + * The string returned **must** be already translated if necessary, + * **with an exception** for the string returned for `_header`. + * + * Example : + * + * ``` + * protected $translator; + * + * public function getLabels($key, array $values, $data) + * { + * return function($value) { + * case $value + * { + * case '_header' : + * return 'my header not translated'; + * case true: + * return $this->translator->trans('true'); + * case false: + * return $this->translator->trans('false'); + * default: + * // this should not happens ! + * throw new \LogicException(); + * } + * } + * ``` + * + * **Note:** Why each string must be translated with an exception for + * the `_header` ? For performance reasons: most of the value will be number + * which do not need to be translated, or value already translated in + * database. But the header must be, in every case, translated. + * + * + * @param string $key The column key, as added in the query + * @param mixed[] $values The values from the result. if there are duplicates, those might be given twice. Example: array('FR', 'BE', 'CZ', 'FR', 'BE', 'FR') + * @param mixed $data The data from the export's form (as defined in `buildForm` + * @return \Closure where the first argument is the value, and the function should return the label to show in the formatted file. Example : `function($countryCode) use ($countries) { return $countries[$countryCode]->getName(); }` + */ + public function getLabels($key, array $values, $data) + { + + switch ($key) { + case 'birthdate': + /** @var \DateTime $value */ + return function($value) use ($key) { + if ($value === '_header') { return $key; } + if (empty($value)) { return ''; } + return $value->format('d-m-Y'); + }; + case 'countryofbirth': + return function ($value) use ($key) { + if ($value === '_header') { + return $key; + } + return $value['fr']; + }; + case 'gender': + return function ($value) use ($key) { + $gend_array = [ 'man' => 'Homme', 'woman' => 'Femme', 'both' => 'Indéterminé' ]; + if ($value === '_header') { return $key; } + if (empty($value)) { return ''; } + return $gend_array[$value]; + }; + case 'id': + case 'firstname': + case 'lastname': + case 'placeofbirth': + case 'formationlevel': + default: + return function ($value) use ($key) { + if ($value === '_header') { + return $key; + } + return $value; + }; + } + } + + /** + * Native Query SQL + */ + const QUERY = << Frein::FREINS_PERSO, + 'freinsemploi' => Frein::FREINS_EMPLOI, + ]; + + /** + * @var array + */ + const FIELDS = [ + 'id' => 'integer', + 'firstname' => 'string', + 'lastname' => 'string', + 'gender' => 'string', + 'birthdate' => 'date', + 'placeofbirth' => 'string', + 'countryofbirth' => 'json', + 'reportdate' => 'date', + 'freinsperso' => 'json', + 'notesperso' => 'string', + 'freinsemploi' => 'json', + 'notesemploi' => 'string', + ]; + + /** + * @var array + */ + protected $personIds = []; + + + + /** + * @var EntityManagerInterface + */ + protected $entityManager; + + /** + * ListAcquisition constructor. + * + * @param EntityManagerInterface $em + */ + public function __construct(EntityManagerInterface $em) + { + $this->entityManager = $em; + } + + /** + * validate the form's data and, if required, build a contraint + * violation on the data. + * + * @param mixed $data the data, as returned by the user + * @param ExecutionContextInterface $context + */ + public function validateForm($data, ExecutionContextInterface $context) {} + + /** + * get a title, which will be used in UI (and translated) + * + * @return string + */ + public function getTitle() + { + return "Liste des freins identifiés par personne"; + } + + /** + * Add a form to collect data from the user. + * + * @param FormBuilderInterface $builder + */ + public function buildForm(FormBuilderInterface $builder) + { + $builder + ->add('fields', ChoiceType::class, [ + 'multiple' => true, + 'expanded' => true, + 'choices_as_values' => true, + 'label' => 'Fields to include in export', + 'choices' => array_combine($this->getFields(), $this->getFields()), + 'data' => array_combine($this->getFields(), $this->getFields()), + 'choice_attr' => [], + 'attr' => ['class' => ''], + 'constraints' => [new Callback([ + 'callback' => function ($selected, ExecutionContextInterface $context) { + if (count($selected) === 0) { + $context + ->buildViolation('You must select at least one element') + ->atPath('fields') + ->addViolation(); + } + }, + ])], + ]) + ->add('reportdate_min', ChillDateType::class, [ + 'label' => 'Date du rapport après le', + 'required' => false, + 'label_attr' => [ + 'class' => 'reportdate_range', + ], + 'attr' => [ + 'class' => 'reportdate_range', + ], + ]) + ->add('reportdate_max', ChillDateType::class, [ + 'label' => 'Date du rapport avant le', + 'required' => false, + 'label_attr' => [ + 'class' => 'report_date_range', + ], + 'attr' => [ + 'class' => 'report_date_range', + ], + ]) + ; + } + + /** + * Return the Export's type. This will inform _on what_ export will apply. + * Most of the type, it will be a string which references an entity. + * + * Example of types : Chill\PersonBundle\Export\Declarations::PERSON_TYPE + * + * @return string + */ + public function getType() + { + return Person::class; + } + + /** + * A description, which will be used in the UI to explain what the export does. + * This description will be translated. + * + * @return string + */ + public function getDescription() + { + return "Crée une liste des personnes et de leurs freins identifiés en fonction de différents paramètres."; + } + + /** + * The initial query, which will be modified by ModifiersInterface + * (i.e. AggregatorInterface, FilterInterface). + * + * This query should take into account the `$acl` and restrict result only to + * what the user is allowed to see. (Do not show personal data the user + * is not allowed to see). + * + * The returned object should be an instance of QueryBuilder or NativeQuery. + * + * @param array $requiredModifiers + * @param array $acl an array where each row has a `center` key containing the Chill\MainBundle\Entity\Center, and `circles` keys containing the reachable circles. Example: `array( array('center' => $centerA, 'circles' => array($circleA, $circleB) ) )` + * @param array $data the data from the form, if any + * @return QueryBuilder|\Doctrine\ORM\NativeQuery the query to execute. + */ + public function initiateQuery(array $requiredModifiers, array $acl, array $data = array()) + { + return $this->entityManager->createQueryBuilder() + ->from('ChillPersonBundle:Person', 'person'); + } + + /** + * Inform which ModifiersInterface (i.e. AggregatorInterface, FilterInterface) + * are allowed. The modifiers should be an array of types the _modifier_ apply on + * (@see ModifiersInterface::applyOn()). + * + * @return string[] + */ + public function supportsModifiers() + { + return [ 'frein', 'person' ]; + } + + /** + * Return the required Role to execute the Export. + * + * @return \Symfony\Component\Security\Core\Role\Role + * + */ + public function requiredRole() + { + return new Role(ExportsVoter::EXPORT); + } + + /** + * Return which formatter type is allowed for this report. + * + * @return string[] + */ + public function getAllowedFormattersTypes() + { + return [ FormatterInterface::TYPE_LIST ]; + } + + /** + * Return array FIELDS keys only + * + * @return array + */ + private function getFields() + { + return array_keys(self::FIELDS); + } + + /** + * give the list of keys the current export added to the queryBuilder in + * self::initiateQuery + * + * Example: if your query builder will contains `SELECT count(id) AS count_id ...`, + * this function will return `array('count_id')`. + * + * @param mixed[] $data the data from the export's form (added by self::buildForm) + * @return array + */ + public function getQueryKeys($data) + { + $freins = self::FREINS; + $fields = []; + foreach ($data['fields'] as $key) { + + switch ($key) { + case 'freinsperso': + case 'freinsemploi': + + foreach ($freins[$key] as $item) { + $this->translationCompatKey($item, $key); + $fields[] = $item; + } + break; + + default: + $fields[] = $key; + } + } + return $fields; + } + + /** + * Make key compatible with YAML messages ids + * for fields that are splitted in columns + * + * @param string $item (&) passed by reference + * @param string $key + */ + private function translationCompatKey(&$item, $key) + { + $prefix = substr_replace($key, 'freins_', 0, 6); + $item = $prefix .'.'. $item; + } + + /** + * Some fields values are arrays that have to be splitted in columns. + * This function split theses fields + * + * @param array $rows + * @return array|\Closure + */ + private function splitArrayToColumns($rows) + { + $freins = self::FREINS; + + /** + * @var array $row each row exported + */ + $results = []; + foreach ($rows as $row) { + + /** + * @var string $key + * @var mixed $value + */ + $res = []; + foreach ($row as $key => $value) { + + switch ($key) { + case 'freinsperso': + case 'freinsemploi': + + foreach ($freins[$key] as $item) { + $this->translationCompatKey($item, $key); + + if (count($value) === 0) { + $res[$item] = ''; + + } else { + foreach ($value as $v) { + + $this->translationCompatKey($v, $key); + if ($item === $v) { + $res[$item] = 'x'; + break; + } else { + $res[$item] = ''; + } + } + } + } + break; + + default: + $res[$key] = $value; + } + } + $results[] = $res; + } + return $results; + } + + /** + * Return the results of the query builder. + * + * @param QueryBuilder|\Doctrine\ORM\NativeQuery $qb + * @param mixed[] $data the data from the export's form (added by self::buildForm) + * @return mixed[]|\closure an array of results + */ + public function getResult($qb, $data) + { + $qb->select('person.id'); + + $ids = $qb->getQuery()->getResult(Query::HYDRATE_SCALAR); + $this->personIds = array_map(function ($e) { return $e['id']; }, $ids); + $personIdsParameters = '?'. \str_repeat(', ?', count($this->personIds) -1); + $query = \str_replace('%person_ids%', $personIdsParameters, self::QUERY); + + $rsm = new Query\ResultSetMapping(); + + foreach (self::FIELDS as $name => $type) { + if ($data['fields'][$name]) { + $rsm->addScalarResult($name, $name, $type); + } + } + + $nq = $this->entityManager->createNativeQuery($query, $rsm); + + $idx = 1; + for ($i=1; $i<=(count($this->personIds)); $i++) { + $idx++; + $nq->setParameter($i, $this->personIds[$i-1]); + } + $nq->setParameter($idx++, $data['reportdate_min'], 'date'); + $nq->setParameter($idx , $data['reportdate_max'], 'date'); + + return $this->splitArrayToColumns( + $nq->getResult() + ); + } + + /** + * transform the results to viewable and understable string. + * + * The callable will have only one argument: the `value` to translate. + * + * The callable should also be able to return a key `_header`, which + * will contains the header of the column. + * + * The string returned **must** be already translated if necessary, + * **with an exception** for the string returned for `_header`. + * + * Example : + * + * ``` + * protected $translator; + * + * public function getLabels($key, array $values, $data) + * { + * return function($value) { + * case $value + * { + * case '_header' : + * return 'my header not translated'; + * case true: + * return $this->translator->trans('true'); + * case false: + * return $this->translator->trans('false'); + * default: + * // this should not happens ! + * throw new \LogicException(); + * } + * } + * ``` + * + * **Note:** Why each string must be translated with an exception for + * the `_header` ? For performance reasons: most of the value will be number + * which do not need to be translated, or value already translated in + * database. But the header must be, in every case, translated. + * + * + * @param string $key The column key, as added in the query + * @param mixed[] $values The values from the result. if there are duplicates, those might be given twice. Example: array('FR', 'BE', 'CZ', 'FR', 'BE', 'FR') + * @param mixed $data The data from the export's form (as defined in `buildForm` + * @return \Closure where the first argument is the value, and the function should return the label to show in the formatted file. Example : `function($countryCode) use ($countries) { return $countries[$countryCode]->getName(); }` + */ + public function getLabels($key, array $values, $data) + { + + switch ($key) { + case 'reportdate': + case 'birthdate': + /** @var \DateTime $value */ + return function($value) use ($key) { + if ($value === '_header') { return $key; } + if (empty($value)) { return ''; } + return $value->format('d-m-Y'); + }; + case 'countryofbirth': + return function ($value) use ($key) { + if ($value === '_header') { + return $key; + } + return $value['fr']; + }; + case 'gender': + return function ($value) use ($key) { + $gend_array = [ 'man' => 'Homme', 'woman' => 'Femme', 'both' => 'Indéterminé' ]; + if ($value === '_header') { return $key; } + if (empty($value)) { return ''; } + return $gend_array[$value]; + }; + case 'id': + case 'firstname': + case 'lastname': + case 'placeofbirth': + case 'notesperso': + case 'notesemploi': + default: + return function ($value) use ($key) { + if ($value === '_header') { + return $key; + } + if (empty($value)) { return ''; } + return $value; + }; + } + } + + + /** + * Native Query SQL + */ + const QUERY = << ProjetProfessionnel::TYPE_CONTRAT, + 'projet_prof__volume_horaire__label' => ProjetProfessionnel::VOLUME_HORAIRES + ]; + + /** + * @var array + */ + const FIELDS = [ + 'id' => 'integer', + 'firstname' => 'string', + 'lastname' => 'string', + 'gender' => 'string', + 'birthdate' => 'date', + 'placeofbirth' => 'string', + 'countryofbirth' => 'json', + 'projet_prof__souhait__code' => 'string', + 'projet_prof__type_contrat__label' => 'json', + 'projet_prof__type_contrat__note' => 'string', + 'projet_prof__volume_horaire__label' => 'json', + 'projet_prof__volume_horaire__note' => 'string', + 'projet_prof__idee' => 'string', + 'projet_prof__encoursdeconstruction' => 'string', + 'projet_prof__valide__note' => 'string', + 'projet_prof__valide__code' => 'string', + 'projet_prof__note' => 'string', + ]; + + /** + * @var array + */ + protected $personIds = []; + + /** + * @var EntityManagerInterface + */ + protected $entityManager; + + /** + * ListAcquisition constructor. + * + * @param EntityManagerInterface $em + */ + public function __construct(EntityManagerInterface $em) + { + $this->entityManager = $em; + } + + /** + * validate the form's data and, if required, build a contraint + * violation on the data. + * + * @param mixed $data the data, as returned by the user + * @param ExecutionContextInterface $context + */ + public function validateForm($data, ExecutionContextInterface $context) {} + + /** + * get a title, which will be used in UI (and translated) + * + * @return string + */ + public function getTitle() + { + return "Liste des projets professionnels par personne"; + } + + /** + * Add a form to collect data from the user. + * + * @param FormBuilderInterface $builder + */ + public function buildForm(FormBuilderInterface $builder) + { + $builder + ->add('fields', ChoiceType::class, [ + 'multiple' => true, + 'expanded' => true, + 'choices_as_values' => true, + 'label' => 'Fields to include in export', + 'choice_label' => function ($key) { + return str_replace('__', '.', $key); + }, + 'choices' => array_combine($this->getFields(), $this->getFields()), + 'data' => array_combine($this->getFields(), $this->getFields()), + 'choice_attr' => [], + 'attr' => ['class' => ''], + 'constraints' => [new Callback([ + 'callback' => function ($selected, ExecutionContextInterface $context) { + if (count($selected) === 0) { + $context + ->buildViolation('You must select at least one element') + ->atPath('fields') + ->addViolation(); + } + }, + ])], + ]) + ->add('reportdate_min', ChillDateType::class, [ + 'label' => 'Date du rapport après le', + 'required' => false, + 'label_attr' => [ + 'class' => 'reportdate_range', + ], + 'attr' => [ + 'class' => 'reportdate_range', + ], + ]) + ->add('reportdate_max', ChillDateType::class, [ + 'label' => 'Date du rapport avant le', + 'required' => false, + 'label_attr' => [ + 'class' => 'report_date_range', + ], + 'attr' => [ + 'class' => 'report_date_range', + ], + ]) + ; + } + + /** + * Return the Export's type. This will inform _on what_ export will apply. + * Most of the type, it will be a string which references an entity. + * + * Example of types : Chill\PersonBundle\Export\Declarations::PERSON_TYPE + * + * @return string + */ + public function getType() + { + return Person::class; + } + + /** + * A description, which will be used in the UI to explain what the export does. + * This description will be translated. + * + * @return string + */ + public function getDescription() + { + return "Crée une liste des personnes et de leur projet professionnel en fonction de différents paramètres."; + } + + /** + * The initial query, which will be modified by ModifiersInterface + * (i.e. AggregatorInterface, FilterInterface). + * + * This query should take into account the `$acl` and restrict result only to + * what the user is allowed to see. (Do not show personal data the user + * is not allowed to see). + * + * The returned object should be an instance of QueryBuilder or NativeQuery. + * + * @param array $requiredModifiers + * @param array $acl an array where each row has a `center` key containing the Chill\MainBundle\Entity\Center, and `circles` keys containing the reachable circles. Example: `array( array('center' => $centerA, 'circles' => array($circleA, $circleB) ) )` + * @param array $data the data from the form, if any + * @return QueryBuilder|\Doctrine\ORM\NativeQuery the query to execute. + */ + public function initiateQuery(array $requiredModifiers, array $acl, array $data = array()) + { + return $this->entityManager->createQueryBuilder() + ->from('ChillPersonBundle:Person', 'person'); + } + + /** + * Inform which ModifiersInterface (i.e. AggregatorInterface, FilterInterface) + * are allowed. The modifiers should be an array of types the _modifier_ apply on + * (@see ModifiersInterface::applyOn()). + * + * @return string[] + */ + public function supportsModifiers() + { + return [ 'projetprofessionnel', 'person' ]; + } + + /** + * Return the required Role to execute the Export. + * + * @return \Symfony\Component\Security\Core\Role\Role + * + */ + public function requiredRole() + { + return new Role(ExportsVoter::EXPORT); + } + + /** + * Return which formatter type is allowed for this report. + * + * @return string[] + */ + public function getAllowedFormattersTypes() + { + return [ FormatterInterface::TYPE_LIST ]; + } + + /** + * Return array FIELDS keys only + * + * @return array + */ + private function getFields() + { + return array_keys(self::FIELDS); + } + + /** + * give the list of keys the current export added to the queryBuilder in + * self::initiateQuery + * + * Example: if your query builder will contains `SELECT count(id) AS count_id ...`, + * this function will return `array('count_id')`. + * + * @param mixed[] $data the data from the export's form (added by self::buildForm) + * @return array + */ + public function getQueryKeys($data) + { + $projet_professionnel = self::PPROF; + + $fields = []; + foreach ($data['fields'] as $key) { + + switch ($key) { + case 'projet_prof__type_contrat__label': + case 'projet_prof__volume_horaire__label': + + foreach ($projet_professionnel[$key] as $item) { + $this->translationCompatKey($item, $key); + $fields[] = $item; + } + break; + + case "projet_prof__souhait__code": + case "projet_prof__type_contrat__note": + case "projet_prof__volume_horaire__note": + case "projet_prof__idee": + case "projet_prof__encoursdeconstruction": + case "projet_prof__valide__note": + case "projet_prof__valide__code": + case "projet_prof__note": + $key = str_replace('__', '.', $key); + + default: + $fields[] = $key; + } + } + return $fields; + } + + /** + * Make item compatible with YAML messages ids + * for fields that are splitted in columns (with field key to replace) + * + * AVANT + * key: projet_prof__volume_horaire__label + * item: temps_plein + * APRES + * item: projet_prof.volume_horaire.temps_plein + * + * @param string $item (&) passed by reference + * @param string $key + */ + private function translationCompatKey(&$item, $key) + { + $key = str_replace('label', $item, $key); + $key = str_replace('__', '.', $key); + $item = $key; + } + + /** + * Some fields values are arrays that have to be splitted in columns. + * This function split theses fields + * + * @param array $rows + * @return array|\Closure + */ + private function splitArrayToColumns($rows) + { + $projet_professionnel = self::PPROF; + + /** + * @var array $row each row exported + */ + $results = []; + foreach ($rows as $row) { + + /** + * @var string $key + * @var mixed $value + */ + $res = []; + foreach ($row as $key => $value) { + + switch ($key) { + case 'projet_prof__type_contrat__label': + case 'projet_prof__volume_horaire__label': + + foreach ($projet_professionnel[$key] as $item) { + $this->translationCompatKey($item, $key); + + if (count($value) === 0) { + $res[$item] = ''; + + } else { + foreach ($value as $v) { + $this->translationCompatKey($v, $key); + + if ($item === $v) { + $res[$item] = 'x'; + break; + } else { + $res[$item] = ''; + } + } + } + } + break; + + case "projet_prof__souhait__code": + case "projet_prof__type_contrat__note": + case "projet_prof__volume_horaire__note": + case "projet_prof__idee": + case "projet_prof__encoursdeconstruction": + case "projet_prof__valide__note": + case "projet_prof__valide__code": + case "projet_prof__note": + $key = str_replace('__', '.', $key); + + default: + $res[$key] = $value; + } + } + $results[] = $res; + } + return $results; + } + + /** + * Return the results of the query builder. + * + * @param QueryBuilder|\Doctrine\ORM\NativeQuery $qb + * @param mixed[] $data the data from the export's form (added by self::buildForm) + * @return mixed[] an array of results + */ + public function getResult($qb, $data) + { + $qb->select('person.id'); + + $ids = $qb->getQuery()->getResult(Query::HYDRATE_SCALAR); + $this->personIds = array_map(function ($e) { return $e['id']; }, $ids); + $personIdsParameters = '?'. \str_repeat(', ?', count($this->personIds) -1); + $query = \str_replace('%person_ids%', $personIdsParameters, self::QUERY); + + $rsm = new Query\ResultSetMapping(); + + foreach (self::FIELDS as $name => $type) { + if ($data['fields'][$name]) { + $rsm->addScalarResult($name, $name, $type); + } + } + + $nq = $this->entityManager->createNativeQuery($query, $rsm); + + $idx = 1; + for ($i=1; $i<=(count($this->personIds)); $i++) { + $idx++; + $nq->setParameter($i, $this->personIds[$i-1]); + } + $nq->setParameter($idx++, $data['reportdate_min'], 'date'); + $nq->setParameter($idx , $data['reportdate_max'], 'date'); + + return $this->splitArrayToColumns( + $nq->getResult() + ); + } + + /** + * transform the results to viewable and understable string. + * + * The callable will have only one argument: the `value` to translate. + * + * The callable should also be able to return a key `_header`, which + * will contains the header of the column. + * + * The string returned **must** be already translated if necessary, + * **with an exception** for the string returned for `_header`. + * + * Example : + * + * ``` + * protected $translator; + * + * public function getLabels($key, array $values, $data) + * { + * return function($value) { + * case $value + * { + * case '_header' : + * return 'my header not translated'; + * case true: + * return $this->translator->trans('true'); + * case false: + * return $this->translator->trans('false'); + * default: + * // this should not happens ! + * throw new \LogicException(); + * } + * } + * ``` + * + * **Note:** Why each string must be translated with an exception for + * the `_header` ? For performance reasons: most of the value will be number + * which do not need to be translated, or value already translated in + * database. But the header must be, in every case, translated. + * + * + * @param string $key The column key, as added in the query + * @param mixed[] $values The values from the result. if there are duplicates, those might be given twice. Example: array('FR', 'BE', 'CZ', 'FR', 'BE', 'FR') + * @param mixed $data The data from the export's form (as defined in `buildForm` + * @return \Closure where the first argument is the value, and the function should return the label to show in the formatted file. Example : `function($countryCode) use ($countries) { return $countries[$countryCode]->getName(); }` + */ + public function getLabels($key, array $values, $data) + { + switch ($key) { + case 'birthdate': + /** @var \DateTime $value */ + return function($value) use ($key) { + if ($value === '_header') { return $key; } + if (empty($value)) { return ''; } + return $value->format('d-m-Y'); + }; + case 'countryofbirth': + return function ($value) use ($key) { + if ($value === '_header') { + return $key; + } + return $value['fr']; + }; + case 'projet_prof.valide.code': + case 'projet_prof.souhait.code': + return function ($value) use ($key) { + if ($value === '_header') { return $key; } + if ($value === '{NULL}') { return ''; } + return str_replace(['{','}'], '', $value); + }; + case 'gender': + return function ($value) use ($key) { + $gend_array = [ 'man' => 'Homme', 'woman' => 'Femme', 'both' => 'Indéterminé' ]; + if ($value === '_header') { return $key; } + if (empty($value)) { return ''; } + return $gend_array[$value]; + }; + case 'id': + case 'firstname': + case 'lastname': + case 'placeofbirth': + + default: + return function ($value) use ($key) { + if ($value === '_header') { + return $key; + } + if (empty($value)) { return ''; } + return $value; + }; + } + } + + /** + * Native Query SQL + */ + const QUERY = <<add('accompagnement', ChoiceType::class, [ + 'choices' => \array_combine(CSPerson::ACCOMPAGNEMENTS, CSPerson::ACCOMPAGNEMENTS), + 'required' => false, + 'label' => 'Accompagnement', + 'multiple' => true, + 'expanded' => true, + 'choice_label' => function($k) { return 'accompagnement.'.$k; } + ]) + ->add('accompagnementRQTHDate', ChillDateType::class, [ + 'label' => "Date d'accompagnement RQTH", + 'required' => false, + + ]) + ->add('accompagnementComment', TextAreaType::class, [ + 'label' => "Accompagnement autre: précisions", + 'required' => false, + + ]) + ->add('poleEmploiId', TextType::class, [ + 'label' => "Identifiant pôle emploi", + 'required' => false, + ]) + ->add('poleEmploiInscriptionDate', ChillDateType::class, [ + 'label' => "Date d'inscription Pôle emploi", + 'required' => false + ]) + ->add('cafId', TextType::class, [ + 'label' => "Numéro allocataire CAF", + 'required' => false + ]) + ->add('cafInscriptionDate', ChillDateType::class, [ + 'label' => "Date d'inscription à la CAF", + 'required' => false + ]) + ->add('cERInscriptionDate', ChillDateType::class, [ + 'label' => "Date CER", + 'required' => false + ]) + ->add('pPAEInscriptionDate', ChillDateType::class, [ + 'label' => "Date PPAE", + 'required' => false + ]) + ->add('nEETEligibilite', ChoiceType::class, [ + 'label' => "Éligibilité NEET", + 'choices' => \array_combine(CSPerson::NEET_ELIGIBILITY, CSPerson::NEET_ELIGIBILITY), + 'choice_label' => function($k) { return 'neet_eligibility.'.$k; }, + 'multiple' => false, + 'expanded' => true, + 'required' => false + ]) + ->add('cERSignataire', TextType::class, [ + 'label' => "Signataire CER", + 'required' => false + ]) + ->add('pPAESignataire', TextType::class, [ + 'label' => "Signataire PPAE", + 'required' => false + ]) + ->add('nEETCommissionDate', ChillDateType::class, [ + 'label' => "Date commission NEET", + 'required' => false + ]) + ->add('fSEMaDemarcheCode', TextType::class, [ + 'label' => 'Code "Ma démarche FSE"', + 'required' => false + ]) + ->add('prescripteur', PickThirdPartyType::class, [ + 'required' => false, + 'types' => ['prescripteur'], + 'label' => 'Prescripteur', + 'center' => $options['center'] + ]) + ->add('dispositifsNotes', TextareaType::class, [ + 'required' => false, + 'label' => "Notes" + ]) + ->add('dateContratIEJ', ChillDateType::class, [ + 'required' => false, + 'label' => " Date du contrat d’engagement IEJ" + ]) + ->add('dateAvenantIEJ', ChillDateType::class, [ + 'required' => false, + 'label' => " Date de l'avenant IEJ" + ]); + } + + /** + * {@inheritdoc} + */ + public function configureOptions(OptionsResolver $resolver) + { + $resolver->setDefaults(array( + 'data_class' => 'Chill\ChillJobBundle\Entity\CSPerson' + )); + + $resolver + ->setDefined('center') + ->setAllowedTypes('center', [\Chill\MainBundle\Entity\Center::class]) + ; + } + + /** + * {@inheritdoc} + */ + public function getBlockPrefix() + { + return 'csconnectes_spbundle_csperson'; + } +} diff --git a/src/Bundle/ChillJobBundle/src/Form/CSPersonPersonalSituationType.php b/src/Bundle/ChillJobBundle/src/Form/CSPersonPersonalSituationType.php new file mode 100644 index 000000000..2b2a8fa23 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Form/CSPersonPersonalSituationType.php @@ -0,0 +1,263 @@ +add('personMaritalStatus', Select2MaritalStatusType::class, array( + 'required' => false, + 'label' => 'État civil' + )) + ->add('situationLogement', ChoiceType::class, [ + 'choices' => \array_combine( + CSPerson::SITUATIONS_LOGEMENTS, + CSPerson::SITUATIONS_LOGEMENTS), + 'choice_label' => function($k) { return 'situation_logement.'.$k; }, + 'required' => false, + 'label' => 'Situation de logement', + 'multiple' => false, + 'expanded' => true + ]) + ->add('situationLogementPrecision', TextareaType::class, [ + 'label' => 'Précisions', + 'required' => false + ]) + ->add('enfantACharge', IntegerType::class, [ + 'label' => 'Enfants à charge', + 'required' => false + ]) + ->add('niveauMaitriseLangue', ChoiceType::class, [ + 'choices' => \array_combine( + CSPerson::NIVEAU_MAITRISE_LANGUE, + CSPerson::NIVEAU_MAITRISE_LANGUE), + 'choice_label' => function($k) { return 'niveau_maitrise_langue.'.$k; }, + 'multiple' => true, + 'required' => false, + 'expanded' => true, + 'label' => 'Maitrise de la langue française' + ]) + ->add('vehiculePersonnel', ChoiceType::class, [ + 'choices' => [ + 'Oui' => true, + 'Non' => false + ], + 'required' => false, + 'multiple' => false + ]) + ->add('permisConduire', ChoiceType::class, [ + 'choices' => [ + \array_combine(CSPerson::PERMIS_CONDUIRE, CSPerson::PERMIS_CONDUIRE) + ], + 'label' => 'Permis de conduire', + 'required' => false, + 'multiple' => true, + 'expanded' => true, + 'choice_label' => function($k) { return 'permis_conduire.'.$k; } + ]) + ->add('situationProfessionnelle', ChoiceType::class, [ + 'choices' => \array_combine(CSPerson::SITUATION_PROFESSIONNELLE, CSPerson::SITUATION_PROFESSIONNELLE), + 'required' => false, + 'multiple' => false, + 'expanded' => true, + 'choice_label' => function($k) { return 'situation_professionnelle.'.$k; } + ]) + ->add('dateFinDernierEmploi', ChillDateType::class, [ + 'label' => 'Date de la fin du dernier emploi', + 'required' => false + ]) + ->add('typeContrat', ChoiceType::class, [ + 'choices' => \array_combine(CSPerson::TYPE_CONTRAT, CSPerson::TYPE_CONTRAT), + 'label' => 'Type de contrat', + 'required' => false, + 'multiple' => true, + 'expanded' => true, + 'choice_label' => function($k) { return 'type_contrat.'.$k; } + ]) + ->add('typeContratAide', TextType::class, [ + 'label' => "Type de contrat aidé", + 'required' => false + ]) + ->add('ressources', ChoiceType::class, [ + 'choices' => \array_combine(CSPerson::RESSOURCES, CSPerson::RESSOURCES), + 'choice_label' => function($k) { return 'ressource.'.$k; }, + 'required' => false, + 'multiple' => true, + 'expanded' => true, + ]) + ->add('ressourcesComment', TextareaType::class, [ + 'label' => 'Information autre ressource', + 'required' => false + ]) + ->add('ressourceDate1Versement', ChillDateType::class, [ + 'label' => "Date du premier versement (si bénéficiaire d'une aide)", + 'required' => false, + ]) + ->add('cPFMontant', MoneyType::class, [ + 'label' => "Montant CPF", + 'required' => false, + ]) + ->add('acompteDIF', MoneyType::class, [ + 'label' => "Compte DIF", + 'required' => false, + ]) + ->add('handicapIs', ChoiceType::class, [ + 'label' => 'Handicap', + 'required' => false, + 'choices' => [ + 'Oui' => true, + 'Non' => false + ], + 'multiple' => false, + 'expanded' => true, + ]) + ->add('handicapNotes', TextareaType::class, [ + 'label' => 'Type de handicap', + 'required' => false, + ]) + ->add('handicapRecommandation', ChoiceType::class, [ + 'label' => 'Recommandation', + 'required' => false, + 'multiple' => false, + 'expanded' => true, + 'choices' => \array_combine(CSPerson::HANDICAP_RECOMMANDATIONS, CSPerson::HANDICAP_RECOMMANDATIONS), + 'choice_label' => function($k) { return 'handicap_recommandation.'.$k; } + ]) + ->add('handicapAccompagnement', PickThirdPartyType::class, [ + 'center' => $options['center'], + 'types' => [ 'prescripteur' ], + 'required' => false, + 'multiple' => false + ]) + ->add('mobiliteMoyenDeTransport', ChoiceType::class, [ + 'required' => false, + 'multiple' => true, + 'expanded' => true, + 'label' => "Moyens de transports accessibles", + 'choices' => \array_combine( + CSPerson::MOBILITE_MOYEN_TRANSPORT, + CSPerson::MOBILITE_MOYEN_TRANSPORT), + 'choice_label' => function($k) { + return 'moyen_transport.'.$k; + } + ]) + ->add('mobiliteNotes', TextareaType::class, [ + 'required' => false, + 'label' => "Notes concernant la mobilité" + ]) + ->add('documentCV', StoredObjectType::class, [ + 'label' => 'CV', + 'required' => false, + 'error_bubbling' => false + ]) + ->add('documentAgrementIAE', StoredObjectType::class, [ + 'label' => 'Document Agrément IAE', + 'required' => false, + 'error_bubbling' => false + ]) + ->add('documentRQTH', StoredObjectType::class, [ + 'label' => 'Document RQTH', + 'required' => false, + 'error_bubbling' => false + ]) + ->add('documentAttestationNEET', StoredObjectType::class, [ + 'label' => 'Attestation NEET', + 'required' => false, + 'error_bubbling' => false + ]) + ->add('documentCI', StoredObjectType::class, [ + 'label' => 'Carte d\'identité', + 'required' => false, + 'error_bubbling' => false + ]) + ->add('documentTitreSejour', StoredObjectType::class, [ + 'label' => 'Titre de séjour', + 'required' => false, + 'error_bubbling' => false + ]) + ->add('documentAttestationFiscale', StoredObjectType::class, [ + 'label' => 'Attestation fiscale', + 'required' => false, + 'error_bubbling' => false + ]) + ->add('documentPermis', StoredObjectType::class, [ + 'label' => 'Permis', + 'required' => false, + 'error_bubbling' => false + ]) + ->add('documentAttestationCAAF', StoredObjectType::class, [ + 'label' => 'Attestation CAF', + 'required' => false, + 'error_bubbling' => false + ]) + ->add('documentContraTravail', StoredObjectType::class, [ + 'label' => 'Contrat de travail', + 'required' => false, + 'error_bubbling' => false + ]) + ->add('documentAttestationFormation', StoredObjectType::class, [ + 'label' => 'Attestation formation', + 'required' => false, + 'error_bubbling' => false + ]) + ->add('documentQuittanceLoyer', StoredObjectType::class, [ + 'label' => 'Quittance de loyer', + 'required' => false, + 'error_bubbling' => false + ]) + ->add('documentFactureElectricite', StoredObjectType::class, [ + 'label' => 'Facture d\'électricité', + 'required' => false, + 'error_bubbling' => false + ]) + ->add('documentAttestationSecuriteSociale', StoredObjectType::class, [ + 'label' => 'Attestation de sécurité sociale', + 'required' => false, + 'error_bubbling' => false + ]) + ; + + }/** + * {@inheritdoc} + */ + public function configureOptions(OptionsResolver $resolver) + { + $resolver->setDefaults(array( + 'data_class' => 'Chill\ChillJobBundle\Entity\CSPerson' + )); + + $resolver->setRequired('center') + ->setAllowedTypes('center', [ \Chill\MainBundle\Entity\Center::class ]) + ; + } + + /** + * {@inheritdoc} + */ + public function getBlockPrefix() + { + return 'csconnectes_spbundle_csperson'; + } + + +} diff --git a/src/Bundle/ChillJobBundle/src/Form/CV/ExperienceType.php b/src/Bundle/ChillJobBundle/src/Form/CV/ExperienceType.php new file mode 100644 index 000000000..9950d2b87 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Form/CV/ExperienceType.php @@ -0,0 +1,72 @@ +add('poste', TextType::class, [ + 'required' => true, + 'label' => 'Poste', + 'label_attr' => [ + 'class' => 'required ' + ] + ]) + ->add('structure', TextType::class, [ + 'required' => false, + 'label' => "Nom de la structure" + ]) + ->add('startDate', ChillDateType::class, [ + 'required' => false, + 'label' => 'Date de début' + ]) + ->add('endDate', ChillDateType::class, [ + 'required' => false, + 'label' => "Date de fin" + ]) + ->add('contratType', ChoiceType::class, [ + 'required' => false, + 'expanded' => true, + 'multiple' => false, + 'choices' => \array_combine(Experience::CONTRAT_TYPE, Experience::CONTRAT_TYPE), + 'choice_label' => function($k) { return 'xp_contrat_type.'.$k; } + ]) + ->add('notes', TextareaType::class, [ + 'label' => 'Notes', + 'required' => false + ]) + ; + }/** + * {@inheritdoc} + */ + public function configureOptions(OptionsResolver $resolver) + { + $resolver->setDefaults(array( + 'data_class' => 'Chill\ChillJobBundle\Entity\CV\Experience' + )); + } + + /** + * {@inheritdoc} + */ + public function getBlockPrefix() + { + return 'csconnectes_spbundle_cv_experience'; + } + + +} diff --git a/src/Bundle/ChillJobBundle/src/Form/CV/FormationType.php b/src/Bundle/ChillJobBundle/src/Form/CV/FormationType.php new file mode 100644 index 000000000..ec1792713 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Form/CV/FormationType.php @@ -0,0 +1,77 @@ +add('title', TextType::class, [ + 'required' => true, + 'label' => "Nom de la formation", + 'label_attr' => [ + 'class' => 'required ' + ] + ]) + ->add('organisme', TextType::class, [ + 'label' => 'Organisme', + 'required' => false + ]) + ->add('startDate', ChillDateType::class, [ + 'required' => false, + 'label' => "Date de début" + ]) + ->add('endDate', ChillDateType::class, [ + 'required' => false, + 'label' => "Date de fin" + ]) + ->add('diplomaObtained', ChoiceType::class, [ + 'label' => "Diplôme obtenu ?", + 'required' => false, + 'multiple' => false, + 'expanded' => true, + 'choices' => \array_combine(F::DIPLOMA_OBTAINED, F::DIPLOMA_OBTAINED), + 'choice_label' => function($k) { return 'diploma_obtained.'.$k; } + ]) + ->add('diplomaReconnue', ChoiceType::class, [ + 'label' => "Diplôme reconnu en France ?", + 'required' => false, + 'multiple' => false, + 'expanded' => true, + 'choices' => \array_combine(F::DIPLOMA_RECONNU, F::DIPLOMA_RECONNU), + 'choice_label' => function($k) { return 'diploma_reconnu.'.$k; } + ]) + + ; + }/** + * {@inheritdoc} + */ + public function configureOptions(OptionsResolver $resolver) + { + $resolver->setDefaults(array( + 'data_class' => 'Chill\ChillJobBundle\Entity\CV\Formation' + )); + } + + /** + * {@inheritdoc} + */ + public function getBlockPrefix() + { + return 'csconnectes_spbundle_cv_formation'; + } + + +} diff --git a/src/Bundle/ChillJobBundle/src/Form/CVType.php b/src/Bundle/ChillJobBundle/src/Form/CVType.php new file mode 100644 index 000000000..a4265de2c --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Form/CVType.php @@ -0,0 +1,94 @@ +add('reportDate', ChillDateType::class, [ + 'label' => 'Date de rédaction du CV', + ]) + ->add('formationLevel', ChoiceType::class, [ + 'label' => 'Niveau de formation', + 'required' => true, + 'multiple' => false, + 'expanded' => true, + 'choices' => \array_combine(CV::FORMATION_LEVEL, CV::FORMATION_LEVEL), + 'choice_label' => function($k) { return 'formation_level.'.$k; } + ]) + ->add('formationType', ChoiceType::class, [ + 'label' => "Type de formation", + 'required' => false, + 'multiple' => false, + 'expanded' => true, + 'choices' => \array_combine(CV::FORMATION_TYPE, CV::FORMATION_TYPE), + 'choice_label' => function($k) { return 'formation_type.'.$k; } + ]) + ->add('spokenLanguages', Select2LanguageType::class, [ + 'required' => false, + 'multiple' => true, + + ]) + ->add('notes', TextareaType::class, [ + 'label' => "Note", + 'required' => false + ]) + ->add('formations', ChillCollectionType::class, [ + 'label' => "Formations", + 'entry_type' => FormationType::class, + 'allow_add' => true, + 'allow_delete' => true, + 'button_add_label' => 'Ajouter une formation', + 'button_remove_label' => 'Retirer cette formation', + 'required' => false, + 'by_reference' => false, + 'block_name' => 'formation_list' + ]) + ->add('experiences', ChillCollectionType::class, [ + 'label' => "Expériences", + 'entry_type' => ExperienceType::class, + 'allow_add' => true, + 'allow_delete' => true, + 'button_add_label' => 'Ajouter une expérience', + 'button_remove_label' => 'Retirer cette expérience', + 'required' => false, + 'by_reference' => false + ]) + ; + }/** + * {@inheritdoc} + */ + public function configureOptions(OptionsResolver $resolver) + { + $resolver->setDefaults(array( + 'data_class' => 'Chill\ChillJobBundle\Entity\CV' + )); + } + + /** + * {@inheritdoc} + */ + public function getBlockPrefix() + { + return 'csconnectes_spbundle_cv'; + } + + +} diff --git a/src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php b/src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php new file mode 100644 index 000000000..aab8fae7a --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php @@ -0,0 +1,144 @@ +em = $em; + $this->apiAppellation = $apiAppellation; + $this->appellationRepository = $em->getRepository(Appellation::class); + $this->validator = $validator; + } + + + public function loadChoiceList($value = null): ChoiceListInterface + { + return new ArrayChoiceList($this->lazyLoadedAppellations, $value); + } + + public function loadChoicesForValues($values, $value = null) + { + + $choices = []; + + foreach($values as $v) { + if (empty($v)) { + continue; + } + + // start with "original-" ? then we load from api + if (\substr($v, 0, \strlen('original-')) === 'original-') { + $code = \substr($v, \strlen('original-')); + $appellation = $this->appellationRepository->findOneByCode($code); + } else { + $id = $v; + $appellation = $this->appellationRepository->find($id); + } + + if (NULL === $appellation) { + $def = $this->apiAppellation->getAppellation($code); + $metier = $this->em->getRepository(Metier::class) + ->findOneByCode($def->metier->code) + ; + + if ($metier === NULL) { + $metier = (new Metier()) + ->setCode($def->metier->code) + ->setLibelle($def->metier->libelle) + ; + } + + $appellation = new Appellation(); + + $appellation + ->setCode($def->code) + ->setLibelle($def->libelle) + ->setMetier($metier) + ; + + if ($this->validator->validate($appellation) && $this->validator->validate($metier)) + { + $this->em->persist($appellation); + } + } + + if ($this->em->contains($metier) and $this->em->contains($appellation)) + { + $choices[] = $appellation; + } + } + + return $choices; + } + + public function loadValuesForChoices(array $choices, $value = null) + { + foreach ($choices as $choice) { + if (NULL === $choice) { + $values[] = null; + continue; + } + + $id = \call_user_func($value, $choice); + + $this->lazyLoadedAppellations[$id] = $choice; + } + + return $this->loadChoiceList($value)->getValuesForChoices($choices); + } +} diff --git a/src/Bundle/ChillJobBundle/src/Form/FreinType.php b/src/Bundle/ChillJobBundle/src/Form/FreinType.php new file mode 100644 index 000000000..8f9afdbb8 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Form/FreinType.php @@ -0,0 +1,68 @@ +add('reportDate', ChillDateType::class, [ + 'label' => 'Date du rapport' + ]) + ->add('freinsPerso', ChoiceType::class, [ + 'label' => 'Freins identifiés liés à la situation personnelle', + 'choices' => \array_combine(Frein::FREINS_PERSO, Frein::FREINS_PERSO), + 'choice_label' => function($k) { return 'freins_perso.'.$k; }, + 'required' => false, + 'expanded' => true, + 'multiple' => true, + ]) + ->add('freinsEmploi', ChoiceType::class, [ + 'label' => 'Freins identifiés liés à la situation professionnelle', + 'choices' => \array_combine(Frein::FREINS_EMPLOI, Frein::FREINS_EMPLOI), + 'choice_label' => function($k) { return 'freins_emploi.'.$k; }, + 'required' => false, + 'expanded' => true, + 'multiple' => true, + ]) + ->add('notesPerso', TextareaType::class, [ + 'label' => 'Notes concernant la situation personnelle', + 'required' => false + ]) + ->add('notesEmploi', TextareaType::class, [ + 'label' => 'Notes concernant l\'accès à l\'emploi', + 'required' => false + ]) + ; + }/** + * {@inheritdoc} + */ + public function configureOptions(OptionsResolver $resolver) + { + $resolver->setDefaults(array( + 'data_class' => 'Chill\ChillJobBundle\Entity\Frein' + )); + } + + /** + * {@inheritdoc} + */ + public function getBlockPrefix() + { + return 'csconnectes_spbundle_frein'; + } + + +} diff --git a/src/Bundle/ChillJobBundle/src/Form/ImmersionType.php b/src/Bundle/ChillJobBundle/src/Form/ImmersionType.php new file mode 100644 index 000000000..e237ba33c --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Form/ImmersionType.php @@ -0,0 +1,209 @@ +add('entreprise', PickThirdPartyType::class, [ + 'center' => $options['center'], + 'types' => [ 'entreprise' ], + 'label' => "Identité de l'entreprise", + 'required' => true, + 'multiple' => false + ]) + ->add('domaineActivite', TextType::class, [ + 'label' => "Domaine d'activité", + 'required' => true, + ]) + ->add('tuteurName', TextType::class, [ + 'label' => "Nom du tuteur", + 'required' => true + ]) + ->add('tuteurFonction', TextType::class, [ + 'label' => "Fonction du tuteur", + 'required' => true + ]) + ->add('tuteurPhoneNumber', TextType::class, [ + 'label' => "Téléphone du tuteur", + 'required' => true + ]) + ->add('structureAccName', TextType::class, [ + 'label' => "Nom de la structure", + "required" => false + ]) + ->add('structureAccPhonenumber', TextType::class, [ + 'label' => "Téléphone de la structure", + 'required' => false + ]) + ->add('structureAccEmail', EmailType::class, [ + 'label' => 'Email de la structure', + 'required' => false + ]) + ->add('structureAccAddress', AddressType::class, [ + 'label' => 'Addresse de la structure d\'accompagnement', + 'required' => false, + 'has_valid_from' => false, + 'null_if_empty' => true + ]) + ->add('posteTitle', TextType::class, [ + 'label' => 'Intitulé du poste', + 'required' => true + ]) + ->add('posteLieu', TextType::class, [ + 'label' => "Lieu d'exercice", + 'required' => true + ]) + ->add('debutDate', ChillDateType::class, [ + 'label' => "Date de début de l'immersion", + 'required' => true + ]) + ->add('duration', DateIntervalType::class, [ + 'unit_choices' => [ + "Weeks" => 'W', + "Months" => 'M', + "Days" => 'D' + ], + 'label' => "Durée de l'immersion", + 'required' => true + ]) + ->add('horaire', TextareaType::class, [ + 'label' => "Horaire du stagiaire", + 'required' => true, + ]) + ->add('objectifs', ChoiceType::class, [ + 'label' => "Objectifs", + 'required' => false, + 'multiple' => true, + 'expanded' => true, + 'choices' => \array_combine(Immersion::OBJECTIFS, Immersion::OBJECTIFS), + 'choice_label' => function($k) { return 'immersion_objectif.'.$k; } + ]) + ->add('objectifsAutre', TextareaType::class, [ + 'label' => 'Précision sur les objectifs', + 'required' => false + ]) + ->add('noteImmersion', TextareaType::class, [ + 'label' => "Note", + 'required' => false + ]) + ; + } elseif ($options['step'] === 'bilan') { + $builder + ->add('savoirEtre', ChoiceType::class, [ + 'label' => "Savoir-être du jeune", + 'required' => false, + 'multiple' => true, + 'expanded' => true, + 'choices' => \array_combine(Immersion::SAVOIR_ETRE, Immersion::SAVOIR_ETRE), + 'choice_label' => function($k) { return 'immersion_savoir_etre.'.$k; } + ]) + ->add('savoirEtreNote', TextareaType::class, [ + 'label' => "Note", + 'required' => false + ]) + ->add('principalesActivites', TextareaType::class, [ + 'label' => "Principales activités", + 'required' => false + ]) + ->add('competencesAcquises', TextareaType::class, [ + 'label' => "Compétences acquises", + 'required' => false + ]) + ->add('competencesADevelopper', TextareaType::class, [ + 'label' => "Compétences à développer", + 'required' => false + ]) + ->add('noteBilan', TextareaType::class, [ + 'label' => "Notes sur le bilan", + 'required' => false + ]) + + ; + + foreach ([ + ['ponctualiteSalarie', Immersion::PONCTUALITE_SALARIE, "Ponctualité du salarié"], + ['assiduite', Immersion::ASSIDUITE, "Assiduité"], + ['interetActivite', Immersion::YES_NO_NSP, "La personne s’intéresse à l’ensemble des activités et membres de l’entreprise"], + ['integreRegle', Immersion::INTEGRE_REGLE, "La personne a intégré les règles (les principes) de l’entreprise"], + ['espritInitiative', Immersion::YES_NO_NSP, "La personne fait preuve d’esprit d’initiative"], + ['organisation', Immersion::YES_NO_NSP, "La personne a fait preuve d’organisation"], + ['capaciteTravailEquipe', Immersion::YES_NO_NSP, "Sa capacité à travailler en équipe"], + ['styleVestimentaire', Immersion::YES_NO_NSP, "Style vestimentaire adapté"], + ['langageProf', Immersion::YES_NO_NSP, "Langage professionnel"], + ['appliqueConsigne', Immersion::YES_NO_NSP, "Applique les consignes"], + ['respectHierarchie', Immersion::YES_NO_NSP, "Respecte les niveaux hiérarchiques"], + + ] as list($name, $choices, $label)) { + + $builder + ->add($name, ChoiceType::class, [ + 'label' => $label, + 'multiple' => false, + 'required' => false, + 'expanded' => true, + 'choices' => $choices, + 'choice_label' => function($el) use ($choices, $name) { + if ($choices === Immersion::YES_NO_NSP) { + return 'immersion_nsp.'.$el; + } + + return 'immersion_'.$name.'.'.$el; + } + ]) + ->add($name.'Note', TextareaType::class, [ + 'label' => "Notes", + 'required' => false + ]); + + } + } + } + + /** + * {@inheritdoc} + */ + public function configureOptions(OptionsResolver $resolver) + { + $resolver->setDefaults(array( + 'data_class' => 'Chill\ChillJobBundle\Entity\Immersion', + 'step' => 'immersion' + )); + + $resolver + ->setAllowedValues('step', ['immersion', 'bilan']) + ->setRequired('center') + ->setAllowedTypes('center', \Chill\MainBundle\Entity\Center::class) + ; + } + + /** + * {@inheritdoc} + */ + public function getBlockPrefix() + { + return 'csconnectes_spbundle_immersion'; + } + + +} diff --git a/src/Bundle/ChillJobBundle/src/Form/ProjetProfessionnelType.php b/src/Bundle/ChillJobBundle/src/Form/ProjetProfessionnelType.php new file mode 100644 index 000000000..a03573d7c --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Form/ProjetProfessionnelType.php @@ -0,0 +1,109 @@ +add('souhait', PickRomeAppellationType::class, [ + 'label' => 'Souhait', + 'multiple' => true, + 'required' => false, + ]) + ->add('domaineActiviteSouhait', TextareaType::class, [ + 'label' => "Domaine d'activité souhaité", + 'required' => false + ]) + ->add('reportDate', ChillDateType::class, [ + 'label' => 'Date', + 'required' => true + ]) + ->add('typeContrat', ChoiceType::class, [ + 'label' => 'Type de contrat recherché', + 'multiple' => true, + 'expanded' => true, + 'choices' => \array_combine(ProjetProfessionnel::TYPE_CONTRAT, + ProjetProfessionnel::TYPE_CONTRAT), + 'choice_label' => function($k) { return 'projet_prof.type_contrat.'.$k; } + ]) + ->add('typeContratNotes', TextareaType::class, [ + 'label' => 'Notes concernant le contrat recherché', + 'required' => false, + ]) + ->add('volumeHoraire', ChoiceType::class, [ + 'label' => 'Volume horaire', + 'multiple' => true, + 'expanded' => true, + 'required' => true, + 'choices' => \array_combine(ProjetProfessionnel::VOLUME_HORAIRES, + ProjetProfessionnel::VOLUME_HORAIRES), + 'choice_label' => function($k) { return 'projet_prof.volume_horaire.'.$k; } + ]) + ->add('volumeHoraireNotes', TextareaType::class, [ + 'label' => 'Notes concernant le volume horaire', + 'required' => false + ]) + ->add('idee', TextareaType::class, [ + 'label' => 'Idée', + 'required' => false, + ]) + ->add('enCoursConstruction', TextareaType::class, [ + 'label' => 'En cours de construction', + 'required' => false, + ]) + ->add('valide', PickRomeAppellationType::class, [ + 'label' => 'Validé', + 'multiple' => true, + 'by_reference' => false, + 'required' => false, + ]) + ->add('domaineActiviteValide', TextareaType::class, [ + 'label' => "Domaine d'activité validé", + 'required' => false + ]) + ->add('valideNotes', TextareaType::class, [ + 'label' => 'Validé (notes)', + 'required' => false, + ]) + ->add('projetProfessionnelNote', TextareaType::class, [ + 'label' => 'Notes concernant le projet professionnel', + 'required' => false + ]) + ; + + + }/** + * {@inheritdoc} + */ + public function configureOptions(OptionsResolver $resolver) + { + $resolver->setDefaults(array( + 'data_class' => 'Chill\ChillJobBundle\Entity\ProjetProfessionnel' + )); + } + + /** + * {@inheritdoc} + */ + public function getBlockPrefix() + { + return 'csconnectes_spbundle_projetprofessionnel'; + } + + +} diff --git a/src/Bundle/ChillJobBundle/src/Form/Type/PickRomeAppellationType.php b/src/Bundle/ChillJobBundle/src/Form/Type/PickRomeAppellationType.php new file mode 100644 index 000000000..a7f761df6 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Form/Type/PickRomeAppellationType.php @@ -0,0 +1,125 @@ +translator = $translator; + $this->urlGenerator = $urlGenerator; + $this->em = $em; + $this->apiPartenaire = $apiPartenaire; + $this->validator = $validator; + } + + public function buildForm(FormBuilderInterface $builder, array $options) + { + $builder + //->addModelTransformer($this->romeAppellationTransformer) + ; + } + + public function configureOptions(OptionsResolver $resolver) + { + $resolver + ->setDefault('class', Appellation::class) + ->setDefault('choice_label', function(Appellation $a) { + return $a->getLibelle(); + }) + ->setDefault('placeholder', 'Choisir une appellation') + //->setDefault('attr', ['class' => 'select2 ']) + ->setDefault('choice_loader', function(Options $o) { + return new RomeAppellationChoiceLoader( + $this->em, + $this->apiPartenaire, + $this->validator + ); + }) + ; + } + + public function getParent() + { + return EntityType::class; + } + + public function buildView(\Symfony\Component\Form\FormView $view, \Symfony\Component\Form\FormInterface $form, array $options) + { + $view->vars['attr']['data-rome-appellation-picker'] = true; + $view->vars['attr']['data-select-interactive-loading'] = true; + $view->vars['attr']['data-search-url'] = $this->urlGenerator + ->generate('chill_pole_emploi_api_appellation_search', [ '_format' => 'json' ]); + $view->vars['attr']['data-placeholder'] = 'Choisir une appellation'; + $view->vars['attr']['data-no-results-label'] = $this->translator->trans('select2.no_results'); + $view->vars['attr']['data-error-load-label'] = $this->translator->trans('select2.error_loading'); + $view->vars['attr']['data-searching-label'] = $this->translator->trans('select2.searching'); + } +} diff --git a/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php b/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php new file mode 100644 index 000000000..3f40d11ba --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php @@ -0,0 +1,68 @@ +authorizationChecker = $authorizationChecker; + } + + public function buildMenu($menuId, MenuItem $menu, array $parameters) + { + /** @var \Chill\PersonBundle\Entity\Person $person */ + $person = $parameters['person']; + + if ($this->authorizationChecker->isGranted(CSConnectesVoter::REPORT_NEW, $person)) { + $menu->addChild('Situation personnelle', [ + 'route' => 'chill_crud_csperson_personal_situation_view', + 'routeParameters' => [ + 'id' => $person->getId() + ] + ]) + ->setExtras([ + 'order'=> 50 + ]); + $menu->addChild('Dispositifs', [ + 'route' => 'chill_crud_csperson_dispositifs_view', + 'routeParameters' => [ + 'id' => $person->getId() + ] + ]) + ->setExtras([ + 'order'=> 51 + ]); + } + + $menu->addChild('Parcours d\'accompagnement', [ + 'route' => 'chill_csconnectes_csreport_index', + 'routeParameters' => [ + 'person' => $person->getId() + ] + ]) + ->setExtras([ + 'order' => 52 + ]); + } + + public static function getMenuIds(): array + { + return [ 'person' ]; + } +} diff --git a/src/Bundle/ChillJobBundle/src/Repository/CSPersonRepository.php b/src/Bundle/ChillJobBundle/src/Repository/CSPersonRepository.php new file mode 100644 index 000000000..1b7fdee2e --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Repository/CSPersonRepository.php @@ -0,0 +1,13 @@ +abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + + $this->addSql('CREATE SCHEMA chill_csconnectes'); + $this->addSql('CREATE TABLE chill_csconnectes.cs_person ( + id INT NOT NULL, + person_id INT NOT NULL, + prescripteur_id INT DEFAULT NULL, + situationLogement VARCHAR(255) DEFAULT NULL, + enfantACharge INT DEFAULT NULL, + niveauMaitriseLangue JSONB DEFAULT NULL, + vehiculePersonnel BOOLEAN DEFAULT NULL, + permisConduire JSONB DEFAULT NULL, + situationProfessionnelle VARCHAR(255) DEFAULT NULL, + dateFinDernierEmploi DATE DEFAULT NULL, + typeContrat JSONB DEFAULT NULL, + ressources JSONB DEFAULT NULL, + ressourcesComment TEXT DEFAULT NULL, + ressourceDate1Versement DATE DEFAULT NULL, + CPFNombreHeures INT DEFAULT NULL, + accompagnement JSONB DEFAULT NULL, + accompagnementRQTHDate DATE DEFAULT NULL, + accompagnementComment VARCHAR(255) DEFAULT NULL, + poleEmploiId VARCHAR(255) DEFAULT NULL, + poleEmploiInscriptionDate DATE DEFAULT NULL, + cafId VARCHAR(255) DEFAULT NULL, + cafInscriptionDate DATE DEFAULT NULL, + CERInscriptionDate DATE DEFAULT NULL, + PPAEInscriptionDate DATE DEFAULT NULL, + NEETEligibilite BOOLEAN DEFAULT NULL, + NEETCommissionDate DATE DEFAULT NULL, + FSEMaDemarcheCode TEXT DEFAULT NULL, + documentCV_id INT DEFAULT NULL, + documentAgrementIAE_id INT DEFAULT NULL, + documentRQTH_id INT DEFAULT NULL, + documentAttestationNEET_id INT DEFAULT NULL, + documentCI_id INT DEFAULT NULL, + documentTitreSejour_id INT DEFAULT NULL, + documentAttestationFiscale_id INT DEFAULT NULL, + documentPermis_id INT DEFAULT NULL, + documentAttestationCAAF_id INT DEFAULT NULL, + documentContraTravail_id INT DEFAULT NULL, + documentAttestationFormation_id INT DEFAULT NULL, + documentQuittanceLoyer_id INT DEFAULT NULL, + documentFactureElectricite_id INT DEFAULT NULL, + PRIMARY KEY(id, person_id))'); + $this->addSql('CREATE INDEX IDX_10864F31217BBB47 ON chill_csconnectes.cs_person (person_id)'); + $this->addSql('CREATE INDEX IDX_10864F3154866550 ON chill_csconnectes.cs_person (documentCV_id)'); + $this->addSql('CREATE INDEX IDX_10864F318825E118 ON chill_csconnectes.cs_person (documentAgrementIAE_id)'); + $this->addSql('CREATE INDEX IDX_10864F31A396AFAC ON chill_csconnectes.cs_person (documentRQTH_id)'); + $this->addSql('CREATE INDEX IDX_10864F3187541764 ON chill_csconnectes.cs_person (documentAttestationNEET_id)'); + $this->addSql('CREATE INDEX IDX_10864F315CFC2299 ON chill_csconnectes.cs_person (documentCI_id)'); + $this->addSql('CREATE INDEX IDX_10864F3134FDF11D ON chill_csconnectes.cs_person (documentTitreSejour_id)'); + $this->addSql('CREATE INDEX IDX_10864F315742C99D ON chill_csconnectes.cs_person (documentAttestationFiscale_id)'); + $this->addSql('CREATE INDEX IDX_10864F31166494D4 ON chill_csconnectes.cs_person (documentPermis_id)'); + $this->addSql('CREATE INDEX IDX_10864F3172820D66 ON chill_csconnectes.cs_person (documentAttestationCAAF_id)'); + $this->addSql('CREATE INDEX IDX_10864F31AFA5E636 ON chill_csconnectes.cs_person (documentContraTravail_id)'); + $this->addSql('CREATE INDEX IDX_10864F3161E05C22 ON chill_csconnectes.cs_person (documentAttestationFormation_id)'); + $this->addSql('CREATE INDEX IDX_10864F316F744BB0 ON chill_csconnectes.cs_person (documentQuittanceLoyer_id)'); + $this->addSql('CREATE INDEX IDX_10864F31AC39B1B ON chill_csconnectes.cs_person (documentFactureElectricite_id)'); + $this->addSql('CREATE INDEX IDX_10864F31D486E642 ON chill_csconnectes.cs_person (prescripteur_id)'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F31217BBB47 FOREIGN KEY (person_id) REFERENCES chill_person_person (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F3154866550 FOREIGN KEY (documentCV_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F318825E118 FOREIGN KEY (documentAgrementIAE_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F31A396AFAC FOREIGN KEY (documentRQTH_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F3187541764 FOREIGN KEY (documentAttestationNEET_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F315CFC2299 FOREIGN KEY (documentCI_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F3134FDF11D FOREIGN KEY (documentTitreSejour_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F315742C99D FOREIGN KEY (documentAttestationFiscale_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F31166494D4 FOREIGN KEY (documentPermis_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F3172820D66 FOREIGN KEY (documentAttestationCAAF_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F31AFA5E636 FOREIGN KEY (documentContraTravail_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F3161E05C22 FOREIGN KEY (documentAttestationFormation_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F316F744BB0 FOREIGN KEY (documentQuittanceLoyer_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F31AC39B1B FOREIGN KEY (documentFactureElectricite_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F31D486E642 FOREIGN KEY (prescripteur_id) REFERENCES chill_3party.third_party (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('COMMENT ON COLUMN chill_csconnectes.cs_person.niveauMaitriseLangue IS NULL'); + $this->addSql('COMMENT ON COLUMN chill_csconnectes.cs_person.permisConduire IS NULL'); + $this->addSql('COMMENT ON COLUMN chill_csconnectes.cs_person.typeContrat IS NULL'); + $this->addSql('COMMENT ON COLUMN chill_csconnectes.cs_person.ressources IS NULL'); + $this->addSql('COMMENT ON COLUMN chill_csconnectes.cs_person.accompagnement IS NULL'); + + } + + public function down(Schema $schema) : void + { + $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + + $this->addSql('DROP TABLE chill_csconnectes.cs_person'); + $this->addSql('DROP SCHEMA chill_csconnectes CASCADE'); + } +} diff --git a/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20191129112321.php b/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20191129112321.php new file mode 100644 index 000000000..a27acc50f --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20191129112321.php @@ -0,0 +1,50 @@ +abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + + $this->addSql('DROP INDEX chill_csconnectes.IDX_10864f31217bbb47'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CERSignataire TEXT DEFAULT NULL'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD PPAESignataire TEXT DEFAULT NULL'); + $this->addSql('COMMENT ON COLUMN chill_csconnectes.cs_person.niveauMaitriseLangue IS NULL'); + $this->addSql('COMMENT ON COLUMN chill_csconnectes.cs_person.permisConduire IS NULL'); + $this->addSql('COMMENT ON COLUMN chill_csconnectes.cs_person.typeContrat IS NULL'); + $this->addSql('COMMENT ON COLUMN chill_csconnectes.cs_person.ressources IS NULL'); + $this->addSql('COMMENT ON COLUMN chill_csconnectes.cs_person.accompagnement IS NULL'); + $this->addSql('CREATE UNIQUE INDEX UNIQ_10864F31217BBB47 ON chill_csconnectes.cs_person (person_id)'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT cs_person_pkey'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD PRIMARY KEY (id)'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ALTER person_id DROP NOT NULL'); + } + + public function down(Schema $schema) : void + { + $this->throwIrreversibleMigrationException("this migration is not reversible (" + . "actions on primary keys)"); + $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + + $this->addSql('DROP INDEX UNIQ_10864F31217BBB47'); + $this->addSql('DROP INDEX cs_person_pkey'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CERSignataire'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP PPAESignataire'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ALTER person_id SET NOT NULL'); + $this->addSql('COMMENT ON COLUMN chill_csconnectes.cs_person.niveaumaitriselangue IS \'(DC2Type:json_array)\''); + $this->addSql('COMMENT ON COLUMN chill_csconnectes.cs_person.permisconduire IS \'(DC2Type:json_array)\''); + $this->addSql('COMMENT ON COLUMN chill_csconnectes.cs_person.typecontrat IS \'(DC2Type:json_array)\''); + $this->addSql('COMMENT ON COLUMN chill_csconnectes.cs_person.ressources IS \'(DC2Type:json_array)\''); + $this->addSql('COMMENT ON COLUMN chill_csconnectes.cs_person.accompagnement IS \'(DC2Type:json_array)\''); + $this->addSql('CREATE INDEX idx_10864f31217bbb47 ON chill_csconnectes.cs_person (person_id)'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD PRIMARY KEY (id, person_id)'); + } +} diff --git a/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200113104411.php b/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200113104411.php new file mode 100644 index 000000000..3784c8657 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200113104411.php @@ -0,0 +1,35 @@ +abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + + $this->addSql('CREATE SEQUENCE chill_csconnectes.immersion_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); + $this->addSql('CREATE TABLE chill_csconnectes.immersion (id INT NOT NULL, person_id INT DEFAULT NULL, entreprise_id INT DEFAULT NULL, referent_id INT DEFAULT NULL, domaineActivite TEXT DEFAULT NULL, tuteurName TEXT DEFAULT NULL, tuteurFonction TEXT DEFAULT NULL, tuteurPhoneNumber TEXT DEFAULT NULL, structureAccName TEXT DEFAULT NULL, structureAccPhonenumber TEXT DEFAULT NULL, posteDescriptif TEXT DEFAULT NULL, posteTitle TEXT DEFAULT NULL, posteLieu TEXT DEFAULT NULL, debutDate DATE DEFAULT NULL, duration INTERVAL DEFAULT NULL, horaire TEXT DEFAULT NULL, objectifs JSONB DEFAULT NULL, savoirEtre JSONB DEFAULT NULL, noteimmersion TEXT NOT NULL, principalesActivites TEXT DEFAULT NULL, competencesAcquises TEXT DEFAULT NULL, competencesADevelopper TEXT DEFAULT NULL, noteBilan TEXT DEFAULT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE INDEX IDX_FBB3CBB4217BBB47 ON chill_csconnectes.immersion (person_id)'); + $this->addSql('CREATE INDEX IDX_FBB3CBB4A4AEAFEA ON chill_csconnectes.immersion (entreprise_id)'); + $this->addSql('CREATE INDEX IDX_FBB3CBB435E47E35 ON chill_csconnectes.immersion (referent_id)'); + $this->addSql('COMMENT ON COLUMN chill_csconnectes.immersion.duration IS \'(DC2Type:dateinterval)\''); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD CONSTRAINT FK_FBB3CBB4217BBB47 FOREIGN KEY (person_id) REFERENCES chill_person_person (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD CONSTRAINT FK_FBB3CBB4A4AEAFEA FOREIGN KEY (entreprise_id) REFERENCES chill_3party.third_party (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD CONSTRAINT FK_FBB3CBB435E47E35 FOREIGN KEY (referent_id) REFERENCES users (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + } + + public function down(Schema $schema) : void + { + $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + + $this->addSql('DROP SEQUENCE chill_csconnectes.immersion_id_seq CASCADE'); + $this->addSql('DROP TABLE chill_csconnectes.immersion'); + } +} diff --git a/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200113142525.php b/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200113142525.php new file mode 100644 index 000000000..422547759 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200113142525.php @@ -0,0 +1,33 @@ +abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD structureAccEmail TEXT DEFAULT NULL'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD structureAccAddress_id INT DEFAULT NULL'); + $this->addSql('CREATE INDEX IDX_FBB3CBB4B5E04267 ON chill_csconnectes.immersion (structureAccAddress_id)'); + } + + public function down(Schema $schema) : void + { + $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP structureAccEmail'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP structureAccAddress_id'); + } +} diff --git a/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200114081435.php b/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200114081435.php new file mode 100644 index 000000000..3761e700e --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200114081435.php @@ -0,0 +1,34 @@ +abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD is_bilan_fullfilled BOOLEAN DEFAULT \'false\' NOT NULL'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD savoirEtreNote TEXT DEFAULT NULL'); + $this->addSql('COMMENT ON COLUMN chill_csconnectes.immersion.savoirEtre IS NULL'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD CONSTRAINT FK_FBB3CBB4B5E04267 FOREIGN KEY (structureAccAddress_id) REFERENCES chill_main_address (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + } + + public function down(Schema $schema) : void + { + $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP CONSTRAINT FK_FBB3CBB4B5E04267'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP is_bilan_fullfilled'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP savoirEtreNote'); + } +} diff --git a/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200124130244.php b/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200124130244.php new file mode 100644 index 000000000..9c5bc73ad --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200124130244.php @@ -0,0 +1,27 @@ +abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD datecontratIEJ DATE DEFAULT NULL'); + } + + public function down(Schema $schema) : void + { + $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + + $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP datecontratIEJ'); + + } +} diff --git a/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200124132321.php b/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200124132321.php new file mode 100644 index 000000000..143e62cec --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200124132321.php @@ -0,0 +1,26 @@ +abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD typeContratAide TEXT DEFAULT NULL'); + } + + public function down(Schema $schema) : void + { + $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + + $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP typeContratAide'); + } +} diff --git a/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200127132932.php b/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200127132932.php new file mode 100644 index 000000000..e81ab2d3b --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200127132932.php @@ -0,0 +1,27 @@ +abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD objectifsAutre TEXT DEFAULT NULL'); + } + + public function down(Schema $schema) : void + { + $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP objectifsAutre'); + + } +} diff --git a/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200205132532.php b/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200205132532.php new file mode 100644 index 000000000..9111382ba --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200205132532.php @@ -0,0 +1,76 @@ +abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + + $this->addSql('DROP SEQUENCE report_id_seq CASCADE'); + $this->addSql('CREATE SEQUENCE chill_csconnectes.rome_appellation_id_seq ' + . 'INCREMENT BY 1 MINVALUE 1 START 1'); + $this->addSql('CREATE SEQUENCE chill_csconnectes.rome_metier_id_seq ' + . 'INCREMENT BY 1 MINVALUE 1 START 1'); + $this->addSql('CREATE SEQUENCE chill_csconnectes.projet_professionnel_id_seq ' + . 'INCREMENT BY 1 MINVALUE 1 START 1'); + $this->addSql('CREATE TABLE chill_csconnectes.rome_appellation (' + . 'id INT NOT NULL, metier_id INT DEFAULT NULL, code VARCHAR(40) NOT NULL, ' + . 'libelle TEXT NOT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE INDEX IDX_D9E9CABCED16FA20 ON chill_csconnectes.rome_appellation (metier_id)'); + $this->addSql('CREATE TABLE chill_csconnectes.rome_metier (id INT NOT NULL, ' + . 'libelle TEXT NOT NULL, code VARCHAR(20) NOT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE TABLE chill_csconnectes.projet_professionnel (id INT NOT NULL, ' + . 'person_id INT DEFAULT NULL, reportDate DATE NOT NULL, ' + . 'typeContrat JSONB DEFAULT NULL, typeContratNotes TEXT DEFAULT NULL, ' + . 'volumeHoraire JSONB DEFAULT NULL, volumeHoraireNotes TEXT DEFAULT NULL, ' + . 'idee TEXT DEFAULT NULL, enCoursConstruction TEXT DEFAULT NULL, ' + . 'valideNotes TEXT DEFAULT NULL, projetProfessionnelNote TEXT DEFAULT NULL, ' + . 'PRIMARY KEY(id))'); + $this->addSql('CREATE INDEX IDX_12E4FFBF217BBB47 ON chill_csconnectes.projet_professionnel (person_id)'); + $this->addSql('CREATE TABLE chill_csconnectes.projetprofessionnel_souhait (projetprofessionnel_id INT NOT NULL, appellation_id INT NOT NULL, PRIMARY KEY(projetprofessionnel_id, appellation_id))'); + $this->addSql('CREATE INDEX IDX_3280B96DB87BF7B5 ON chill_csconnectes.projetprofessionnel_souhait (projetprofessionnel_id)'); + $this->addSql('CREATE INDEX IDX_3280B96D7CDE30DD ON chill_csconnectes.projetprofessionnel_souhait (appellation_id)'); + $this->addSql('CREATE TABLE chill_csconnectes.projetprofessionnel_valide (projetprofessionnel_id INT NOT NULL, appellation_id INT NOT NULL, PRIMARY KEY(projetprofessionnel_id, appellation_id))'); + $this->addSql('CREATE INDEX IDX_E0501BE0B87BF7B5 ON chill_csconnectes.projetprofessionnel_valide (projetprofessionnel_id)'); + $this->addSql('CREATE INDEX IDX_E0501BE07CDE30DD ON chill_csconnectes.projetprofessionnel_valide (appellation_id)'); + $this->addSql('ALTER TABLE chill_csconnectes.rome_appellation ADD CONSTRAINT FK_D9E9CABCED16FA20 FOREIGN KEY (metier_id) REFERENCES chill_csconnectes.rome_metier (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.projet_professionnel ADD CONSTRAINT FK_12E4FFBF217BBB47 FOREIGN KEY (person_id) REFERENCES chill_person_person (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.projetprofessionnel_souhait ADD CONSTRAINT FK_3280B96DB87BF7B5 FOREIGN KEY (projetprofessionnel_id) REFERENCES chill_csconnectes.projet_professionnel (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.projetprofessionnel_souhait ADD CONSTRAINT FK_3280B96D7CDE30DD FOREIGN KEY (appellation_id) REFERENCES chill_csconnectes.rome_appellation (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.projetprofessionnel_valide ADD CONSTRAINT FK_E0501BE0B87BF7B5 FOREIGN KEY (projetprofessionnel_id) REFERENCES chill_csconnectes.projet_professionnel (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.projetprofessionnel_valide ADD CONSTRAINT FK_E0501BE07CDE30DD FOREIGN KEY (appellation_id) REFERENCES chill_csconnectes.rome_appellation (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); + + + } + + public function down(Schema $schema) : void + { + $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + + $this->addSql('ALTER TABLE chill_csconnectes.projetprofessionnel_souhait DROP CONSTRAINT FK_3280B96D7CDE30DD'); + $this->addSql('ALTER TABLE chill_csconnectes.projetprofessionnel_valide DROP CONSTRAINT FK_E0501BE07CDE30DD'); + $this->addSql('ALTER TABLE chill_csconnectes.rome_appellation DROP CONSTRAINT FK_D9E9CABCED16FA20'); + $this->addSql('ALTER TABLE chill_csconnectes.projetprofessionnel_souhait DROP CONSTRAINT FK_3280B96DB87BF7B5'); + $this->addSql('ALTER TABLE chill_csconnectes.projetprofessionnel_valide DROP CONSTRAINT FK_E0501BE0B87BF7B5'); + $this->addSql('DROP SEQUENCE chill_csconnectes.rome_appellation_id_seq CASCADE'); + $this->addSql('DROP SEQUENCE chill_csconnectes.rome_metier_id_seq CASCADE'); + $this->addSql('DROP SEQUENCE chill_csconnectes.projet_professionnel_id_seq CASCADE'); + + $this->addSql('DROP TABLE chill_csconnectes.rome_appellation'); + $this->addSql('DROP TABLE chill_csconnectes.rome_metier'); + $this->addSql('DROP TABLE chill_csconnectes.projet_professionnel'); + $this->addSql('DROP TABLE chill_csconnectes.projetprofessionnel_souhait'); + $this->addSql('DROP TABLE chill_csconnectes.projetprofessionnel_valide'); + + + } +} diff --git a/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200207224152.php b/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200207224152.php new file mode 100644 index 000000000..4cac2715e --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200207224152.php @@ -0,0 +1,28 @@ +abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + + $this->addSql('CREATE INDEX code_appellation_idx ON chill_csconnectes.rome_appellation (code)'); + $this->addSql('CREATE INDEX code_metier_idx ON chill_csconnectes.rome_metier (code)'); + } + + public function down(Schema $schema) : void + { + $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + + $this->addSql('DROP INDEX code_appellation_idx ON chill_csconnectes.rome_appellation'); + $this->addSql('DROP INDEX code_metier_idx ON chill_csconnectes.rome_metier'); + } +} diff --git a/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200210105342.php b/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200210105342.php new file mode 100644 index 000000000..e49d01087 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200210105342.php @@ -0,0 +1,27 @@ +addSql("CREATE UNIQUE INDEX UNIQ_D9E9CABC77153098 ON chill_csconnectes.rome_appellation (code);"); + $this->addSql("CREATE UNIQUE INDEX UNIQ_3274952577153098 ON chill_csconnectes.rome_metier (code);"); + $this->addSql("DROP INDEX IF EXISTS chill_csconnectes.code_metier_idx "); + $this->addSql("DROP INDEX IF EXISTS chill_csconnectes.code_appellation_idx "); + + } + + public function down(Schema $schema) : void + { + $this->addSql("DROP INDEX chill_csconnectes.UNIQ_D9E9CABC77153098"); + $this->addSql("DROP INDEX chill_csconnectes.UNIQ_3274952577153098"); + } +} diff --git a/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200313124323.php b/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200313124323.php new file mode 100644 index 000000000..a82b10520 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200313124323.php @@ -0,0 +1,78 @@ +abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + + $this->addSql('ALTER TABLE chill_csconnectes.cv_formation ALTER diplomaobtained TYPE VARCHAR(255)'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD ponctualite_salarie TEXT DEFAULT NULL'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD ponctualite_salarie_note TEXT DEFAULT NULL'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD assiduite TEXT DEFAULT NULL'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD assiduite_note TEXT DEFAULT NULL'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD interet_activite TEXT DEFAULT NULL'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD interet_activite_note TEXT DEFAULT NULL'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD integre_regle TEXT DEFAULT NULL'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD integre_regle_note TEXT DEFAULT NULL'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD esprit_initiative TEXT DEFAULT NULL'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD esprit_initiative_note TEXT DEFAULT NULL'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD organisation TEXT DEFAULT NULL'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD organisation_note TEXT DEFAULT NULL'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD capacite_travail_equipe TEXT DEFAULT NULL'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD capacite_travail_equipe_note TEXT DEFAULT NULL'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD style_vestimentaire TEXT DEFAULT NULL'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD style_vestimentaire_note TEXT DEFAULT NULL'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD langage_prof TEXT DEFAULT NULL'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD langage_prof_note TEXT DEFAULT NULL'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD applique_consigne TEXT DEFAULT NULL'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD applique_consigne_note TEXT DEFAULT NULL'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD respect_hierarchie TEXT DEFAULT NULL'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD respect_hierarchie_note TEXT DEFAULT NULL'); + $this->addSql('COMMENT ON COLUMN chill_csconnectes.immersion.objectifs IS NULL'); + $this->addSql('COMMENT ON COLUMN chill_csconnectes.immersion.savoirEtre IS NULL'); + $this->addSql('COMMENT ON COLUMN chill_csconnectes.frein.freinsPerso IS NULL'); + $this->addSql('COMMENT ON COLUMN chill_csconnectes.frein.freinsEmploi IS NULL'); + $this->addSql('COMMENT ON COLUMN chill_csconnectes.projet_professionnel.typeContrat IS NULL'); + $this->addSql('COMMENT ON COLUMN chill_csconnectes.projet_professionnel.volumeHoraire IS NULL'); + $this->addSql('COMMENT ON COLUMN chill_3party.third_party.types IS NULL'); + } + + public function down(Schema $schema) : void + { + $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP ponctualite_salarie'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP ponctualite_salarie_note'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP assiduite'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP assiduite_note'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP interet_activite'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP interet_activite_note'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP integre_regle'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP integre_regle_note'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP esprit_initiative'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP esprit_initiative_note'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP organisation'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP organisation_note'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP capacite_travail_equipe'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP capacite_travail_equipe_note'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP style_vestimentaire'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP style_vestimentaire_note'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP langage_prof'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP langage_prof_note'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP applique_consigne'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP applique_consigne_note'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP respect_hierarchie'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP respect_hierarchie_note'); + $this->addSql('COMMENT ON COLUMN chill_csconnectes.immersion.objectifs IS \'(DC2Type:json_array)\''); + $this->addSql('COMMENT ON COLUMN chill_csconnectes.immersion.savoiretre IS \'(DC2Type:json_array)\''); + } +} diff --git a/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200403114520.php b/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200403114520.php new file mode 100644 index 000000000..7e5971f8e --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200403114520.php @@ -0,0 +1,25 @@ +addSql("ALTER TABLE chill_csconnectes.projet_professionnel ADD domaineActiviteSouhait TEXT DEFAULT NULL;"); + $this->addSql("ALTER TABLE chill_csconnectes.projet_professionnel ADD domaineActiviteValide TEXT DEFAULT NULL;"); + } + + public function down(Schema $schema) : void + { + $this->addSql("ALTER TABLE chill_csconnectes.projet_professionnel DROP domaineActiviteSouhait"); + $this->addSql("ALTER TABLE chill_csconnectes.projet_professionnel DROP domaineActiviteValide"); + } +} diff --git a/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200403123148.php b/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200403123148.php new file mode 100644 index 000000000..63106ee14 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200403123148.php @@ -0,0 +1,22 @@ +addSql("ALTER TABLE chill_csconnectes.cs_person ADD dateavenantIEJ DATE DEFAULT NULL;"); + } + + public function down(Schema $schema) : void + { + $this->addSql("ALTER TABLE chill_csconnectes.cs_person DROP dateavenantIEJ"); + } +} diff --git a/src/Bundle/ChillJobBundle/src/Resources/public/images/footer_bandeau.jpg b/src/Bundle/ChillJobBundle/src/Resources/public/images/footer_bandeau.jpg new file mode 100644 index 0000000000000000000000000000000000000000..3e0347d3be8a18d629cb94ad3934998f8898d308 GIT binary patch literal 39797 zcmbrk1yo$kvM4-wfIx5vZoyrH2Z!M9&fxA&5&{I5po6;&?jGDNxCeK4f0NJdIrsf< zt#j7jdsgr2vff?2tGa7?zs$Y-0-$}Akd^>IK|uk2KrX<`8X!sB!_o`@kdp(@0RVtk z0C*@201O0zf?NP7d;r`ZFaV$qMeq--4@L7A4>SM(jrl+P!Il8nzxW|K|0q8oHAK_z z-XM3FXaE2K0>QGdv9e_T4YRVaWI|}aIbL2MHKe?(!L(brxH#}KGut^c8JXG}1DQ|SeOC)LLLrACe}a~Qe&XGrJVrvNpm|jsimm^wFajgi=2Zf(85y6%L%CB zC9i7YWo^P^N-ZRa#P7lDVe4QEbTK0Ju(h#s=JgPu{zEx01pbX?riL&%nVRt`i%I;& z0%-|Q|Me{H?(R(P>`eAf=FF@-JUq-SY|LzIj1Ue+XHPp9BM(M9X9|c0B+@^0hyk5V zoGcw&EbZ<7(glPV`yXZhHn886KSl--Cne?o-Q<G8jCuqxElX4U`so5K~@G**1u%_FWSFLDcU<*{vN?^DN%?W zfKEWuf0g`K`ahE5kcm?VIywI~*lN9pu|Md)ilm2G?M~A4rjlGi!#5;h3;!aLLS0_@--w$sGB&BgPviY-Z zVsB^X3MA#?hX=$JT!xR_Y@*y!kZWO(>Q zL?k36n7HJW2!w`XSv5z`MDUUL8dkX3MvKR}u=gDffAko)g~v1jjS;SQh+ALS~-Y5ouy zjW%rAVcg^)1we`|g#^<-3&pU`p8(vhz7zleN2c{R1pp9qy|;TUe+i(c4aJUrdu%KC z<*w})0ATErFC>*B9bs|xhOL&h`eL8;UPba~r>Mq*?{3S~>&U(FB4ff+|I?p};BUGn zy;^l|#xr5E?`HP}%>s0Wrq>DEvjBpT$B*T44o~upQP}`!)tzNug`mGXM-bQ@(wgL% zu$V;OX2VW$#@U3JjH$X7=*#SLg!c*c~JpZyHVn>t@~xnp(}WpvCA5N z%-yE?=|?r?KXkoTyLVa1(8zT1NL+_J(cSD`11sOS@>_p`d}=e7q{N;w>V@q>_N4`1 zxC`Gdlv0keVa`a4;S1}@Bk)|(%(sLvXKcogL?z!x=XH-cn4WF>!hD(Q(>XV+Hy6hO zcnqvod7j?Hvn5npVA1I${m~_N8*$3?{!UvU#w)jWT)pyyPFS6t6_RQG+&4MR?etsx zLMmk@yPp8@Hq8YEr|WRs$u`Csx_Z1v-CG>n6bk~wGO3O(`vV3bIQK*zbtQUm(Ey!T zPXth2nK1)m78EbnHu-S5l0mQ2!zEwBz5+t=12^jKzSunEO0ImS?oDd}l|(=0`H^Om za{e1XKR@l`bpK3_a?!E5JFg~$#6zo_t6#TzJfr1&*q5u+2zF92lkCKi0b5?5UMmGs zU<;rP{E9Yp+20{be%`(80c8*Y(3hF`cb-1 z07funf;Uogv6r~TvD_p$+w+P2qK2<0OdPpl_GV0Pulu(x|1qTifjd$8blv%)(?&y9 zXG6P0hsFfV?(xasX|kL1vw^?u>Oikb31Pao%jGknV-)vcxtxHkG5f*1 z+l5i@Pjd!6-XhHScE$tcDIMeto8-aG8L`QQX0B&btAo6Y2Z1-`JJ)HCZQc_J_?HL# zX=vLVg5gahf-RE;M3X4*x>rNSo7fhdTJ}dmjLP+@2|8*_5A6Q1bXm&5?fi;gcs_wa zX^p+i*!&%Dojv!iXK%Y&tB^6{#_+YMUJa%V?zE6E@ce zOm1M6=2P=qw~I#(jFm&(v<$@6fQCVf@6sxomAiXN#Jn}8q%K%BLFr}y0Ln>l{*hPX zNsdhP*u|(d;sQ@;y_0?q*EHL8qY(FkcFI@5$dkvi!=LXsn>lBlF70SbP4;Y3?pnIS z_8uVb_D0Oz3qYspXnTL|J_&qZ=leL^mipZ`C}ik(A?$F`GilIes7~{B^SzM4=gHx{3|CtEFn;fDpBC77aMe}B(a=gRsrOHVmnYpA8)-hf-h!^0a z-iaseEiIn;joK~}d7d=>GQRGzUO%2`x;lyVou!OyEyuA{=nW&)|K_#aprE! zpiPT&DEOuU@H6aPPDiXf5dm2M<#+eXM((W37r+Nk5_IF)jg_dWp)wWP#EZ8bcv?b*IHI^?>1qD?`|4)r~^i#8%&Zb!?u$ZLllqzQt=yLMMvp+?xNQ zImKaXLC*Heq7Ww0L-!>-fz2=dMtf?hxnBFpc7aPCcR!}6)aT%#-4%D)!9~5@p(S~t zk2a}`BCW2GV0S;_Z;9bU3j3QO- zT35Ki__xf^6N&ZwyhlT~ei^o_gLTQ*T?iR=)9s0<%{Jbio!H!oHYOTkV@cj0PU~y! z7vE3M98RH2fn=9KT44|34fT!SF!M1lwl4iN>+d;X*B7pKa_6q~+`E0*&Ih^n={;#@ zb>O*Ffs#D?43({wK?WJq(MN;o6t_M-%!Sk3oq`6B8j(qX`mp-!JHN8{3m(b+!$r#i zvWJtT((?;UcjENvb+2D2STo@rzfO(5SCY?@jvlS{J&_dMzv;jAz*$Up^KLp`oeFm=nD{KoN?d%XePVo=I9Y`C17n54G zA}m^wC)h9Aeb2mmljp}OE)HTxe>sndCVH&z-i_`0v}U9zW$et1WWPJuf6H)^>vnOx zq=(L^>sEUnj&rx|IBC1N2s4ou5_XkZrm@o&%(by|<>Jp>jw8h!$7-7GXmP3~K#Y>P z=|iGbwy`@78!cM`T=o?T!XxxWOz0$X!`+T!kVublvsRUepfht_?*cCFQ!thjYAz7D zCEM7{T-bjt0YXeXdzs&pcBSV$yknDQTY4akHn!t2i9b^_y5mueS2Ck#4jjELnI+S) zYT9XDD@$2DZz%ON)i7YkF&B6N1TU}LJ~jAEPd{qQoz%Tq?tMD2=i6eRv>B7r@t5rM z$!Dy&4((Ppd$Pn>co6e!vlkQ|e((z*lXYEguGTttDPztU-Rk{2utPBiYj^c*Oq-F| zsYQ=DTVCRh+@Q!5F!?TzF;$zH3|E3w1cDj_s$(#@5^i2;fcJGO@ALu`4t7F3=I&~z znof)M_}XzLNBu>&y#81R0RV#4H}cb)H@Y;Q%s63N$mX$@SXH(=RKM;=oJqt0un?08 z2nAz>kXK;^0)?TpkVL9-;eb*Aj3S6-eyn^qc2qBON~~mcqMGUp7%uOc*gRJZu!v%T zKMQI~)adJIdn@|@k82?0vw2Unk+Ooe&B@3X%sDVv(Qb95`=l+YP;SeSoTBSkzk2~Y za+@2vom^2zFJD^!h8^VggwPO?Lc*7QcKZQ#lSgG z`WnVnjE;_YqkdqcSKw`W`_?rS($x&Fl;A1e+cv%HldMcnKbaSXwc&p({_l*C z%`h_>01C1tZ7P1+J1HfZpqoHGBaBz~cvf+@iuzw)ua-e(%*&x4yFhRjV zzX1BT>Pkc9%}RKR!P~{vpyE-h{{;s9Y_jwZjAcE3)}Z5T=`nN0P99b_XVpsm??5Dn zK>i#!Y)`ADtrF*i(oyYt9;+qs<0NUc$QAWw9__;|>+1Nj?x%^1&OSSdk^cEc0&WVk zO`D~NZ&Lg1yRjA~dgF~vxZEP!ySmHBDOt`gOm=}I{|^*J0*_Ew`-5GZ$*#h(UmD*< zMu+2>df`kje-Xig&-n&wyc5N?8tU{b>b%d6unaQ37LiQrS^KJatj3j5(C=OurH=@% zZcZ3bls?T)h$AKOSeS)xGP4GAPtrLCj7U z`qgw7nOVUtM!3%kJF-LG@r9LlZ#8vSEB1r$OqPGbfeVj|%KU8ySsrqr$k*2&%0ajx z^c99WFv$jct`<=~#-V4+lj^MJL;M>d$Tp!h9G`~s(#xhq7shUvk`E`3(7Hd)X;u6O~c=id1j3b{{gBlR_oSer0t;dFMS zXlJLFt_G(3I_v#5E2j9f(a}a&@;+s6H84g7tB9epyI&sFT#iAp?yX63wcKmkc4RWp z+wYvrtz|cNR$RN{{X*Frn`aa;j!N3CK2C1kk>Vetz8h4xGcw;U`_!c-a3zxqnrQ7? z-hav;R1bXwdK*W9%*)OeldTRwbmBqlu4hdeXHi@@cm1S+QS_IciEg?u@7 zo8I*0RJOA9PLhP&?H8prqyuG{(V(sTcqhbAc(27-^6ai8Vp zUV)!8W$MqPauSxfdzW&CS#}PG&bW1%%2=;{+1QoVAPm!M6WXIz5PhxH;_!Z$yyklu z(mWP&nJ;6Up=~_m<@NCaldsm-Lf@Nob(VcCy2(b?0W!ur`4+2T%3~uVw<-M)9Ee8b zz>H*g9gQYIb?HI&{mw&66$Ac%_CJ~3c zo3O4=fmAjtro-|)SG)wDEd;qC5l+xrMn^jl1`+tan27eQsd=#j4>e3)j1PW9=ES=7 zq226@2nOSA8+7pXb*aXp#*7HN`Fr8jIj6OT@&(>N%y5sGmLb~pxe1Nx9)_6C-U<=m zpECyf^>ZPRemk9t!3+jQUv^TpO^$5$YN>Lpd~kJ6n98d^)_*{0e)sadlmSu3M9IVH z>FUhKTXXCjmse9KO=xH+FqL1ZeW zQf_Zn;qBU#I6?eGf|y9;$Va5y@^cx;9QJ}KbCs)9v!1(P%cBFxaFB^)&d46xg8k=| z(<%vskHuo&XQ&!J29;em>8uY#P&JdILRF^%^IrWq)k||9#Eo*$BLqfw$ht^6fbGI@P%CxXFXZLgduw6KIEiHJ`Zk zSUa*b^L9j%FNXv{Op23WX`^suTZ?&qH6iiQPDy>4fJ%9;t&N-Pjeo>lb~|BZiM>~k z>W|4rwALcFI*$a2=PV>`a^v}o_-Xfn(KNHwwfm+d_MJ7psH->52PO{L|CtWt|^61 zgoYS?e0@$4*?4Yya2Af+sgjAOX^hV9j2pA^c1G%hDOxWq_!KI|fxXXQPoX9c1@jJ3 z0`w^>8=Oz+v6)PpAAMOGY8g_N9B#{9o|8%^)Wqa}(HCxbB4O+6)P{N-i$}0za{`-` zp0M)`*f)gf#MKi4qGl)$CXa;A&LN%(cO4_tynfvs+_U&c&^)+);H^j-PtslVo?Ds6 z(_?6}%B)k|#{f<23bL!Z6p+0_nrVDJxG)p6^}u)j^92x*I`-wDCUUgfYi`~Lh{@+H z?#JW2zw-J-H$Z$h=KF2IicHGzC);@@wX++fUL}*8PDt!YJ5PHTuTxf59y?EyrWyB1Q;ciPApB6t<<1Aw_rhsD ze0QjX*Nrz+=;^MkCXsRd{#Jzluo?RbHBa=E0Wcm8Vp zblJXPPk=MlLrjwfT8janNrI$HtsS!FM5)UXxB_`-V>PBcRgq}U@%A)eY(@J!Q8{g- z1b-;GU!#48iwAGy6@3@54GFB$(n6gQ>~&)7uQudjPo@{)G9=KI3qPJ}f1}8TwHd}cKS}L{kd=t+!?N}X@DQ*Y(WJ; zEJ!!6R;a(@(CFW1mqJne=`K8vO`mMdn^YHN@m=dXs)7+8Vr6Rn{2Qwq^kJqsc5^DJ zqn6UGSC{o?QyI)x2*>wsvWIEj)bayq-**qw_^90E)4oG$2-20g73C;A6ZnN&sH(+s zEt2;xGm`hp#1Kb#LDi{;aD4dN8xX1>2D#x#oS!&V;F~2@ly|;juD`vad_a^S&)esK z@`xsJJMO`Sr>!EN7?C)eeSqJgm%S&H6Yg7|X;nY=axw-XI;^yzEx!|2DCn)WZQ;eB zE(+Rraq^GnNAEmq>!q%>pwJlcEOh!IzL8HBK&)q^I8d-p80+iilHjcQoKZJ6c|Cvc zwkedHfnYw(cd;#p%mPQZU(pG;-dH)|)bWk2rt~@F@3!1We>USWav^lfcr}tm)ChgorPI&=&wCcj7|_K*2ym z&OqQ0V4;4Wr9zG!AO{KP7?@el@|g8F%rpy;{;r32Upm$zSMz1>fnXXKP;YjH?!SzglbB zth#u_Tn#i@!kMQ2AEB)mj^d{~8#IvCbe)6JrAKmb^@qUE$@)Vj|5T8sm=+f;ArtiB z`D31&r=M~&e><&Sx*#5IJ&OjjMvEkE~+pE8`WY_Zd^Pk{2_ zbSeEX-KjyNGxG5T;C7PrD08!ATsqjd9HDMNGp)o^ra^~CMAj)6T2wGJ_uRjZkKKhD zxzoA#^{3trh=-z7^R-~vp1|RLDMiB z0k^5Qxo~>r~C`*8=ZQt_q81z97_g`)Tw3Ir(Nwr%gwu< zbs%%(pv<3gUtBrB7o5ry&Fn`Yn-bbZ|0*LWH=bvaX37@;tw;idDem4=lWF_>Pz|RI zx*}!%H!*`?;{usVVh;txl$)E*>dq-iu*qf7kBT>pr+mMuyRTQ_j6U{&ekT>cxU>o9+IDa12z#Z{av)zgA% z&03_HllEcH$t~;TC4&88w(@JAjSEzbcQZ&L+9PU&4QZbOl}~$(YbSxxX_z6v0F|)C zBAQseuVi6FA!0(s!|#O^dY1w71&#(XlPA)d^dvhQrOiE_U zEt2IE)3s0;Y_rx5ty~y;RqY9<3eMajZMf2tqLzWj!x}l9V~70y1$9J}hgi?SfNvu( zEZjhGO*-=Kquzaab|#7dphow*uk3FM_2&wou&L1#6wgnDT}8Xi(hd7)+xAxFT}WQ{ z5Fx)+G}DzlUc5pwmqM5ii`NnmHF|f5b6?CvwvZ|gF7Ze-_tPgRB-Z*kiyE4cHCeN6 z8&5=O6MsVFBENo!X;_!0fl**t)0P>i!Iv3DAU<`So|G6Rj;tjv7j~!WBc|F=5k_O# z%^8f^&BT850;u|x?oLahNc78sV!r_#%lm;6XY*-%HJV%D6}4S}O(mdS-u63}`tPeB} zOba`zqQIpTq8b`@ln$keI;CT$i~#n@=8kpiRDECcDb2zI0!jKTL7l=)(*R7AsVRrC zlFqWV(vaksn~ZJ#WrZNJcMq)@htABSLM)rxwS)5!xGJclHeF3oY&~s(Y%D!gYjRr( z6ZfQ(+q7AE^-eEpF~H)ndc74|$0CntjkLr^dw%uprFWKoyK(4f&B$o<>XCLeJRTk{PtweDIqFdize zkSvzY%$f%45_E%cr9MIo?u(0e8#OO>K}72RAv>|AE0o>j1rXR}#g@AJZoI&uFpbIl zR#&359eVc z%(###JdbHRRi$T4vpj;Q;s~Frn=^%$M2zIf%h?xW`aQ%9h^dK?I+d9I25IbQrvf3 zRE=Du_WokGy@5rCCN6D-9|TkaBjRb^^)7+2gZZ3HBg2>Thib@B#?G5{UjRJMo^0tFVYMZdY-SP$4Z8B_8dDfE#kZ6mkt3I~oD=oP_CQ&y^a0rV zc}X}~b4+cOG(B7UVJ>S+Z+f)0>3gfxJDo<_`8n6t?*#A4re*|{OSu!(EZ=5xyXBdE zSxPM7*gGc zLls6HHxic$vcpVqnORJ=a!-(#(!SECUvGk%S$%>W{l!Y6Fg2KsZaz&jY8kQ$4XTMX zER5&9C$8508YSzxwCdX>_^xP?SaEWIwHi9$YwyH0C?17D(dtLBN3P=@ah?o)o*TFQ zl7G@gkbBpbY{*HY#rEzhQP>xd`>@@y<6SUsM6~0)t`~#u75;gr`<4^vfWe)ApU7;U zwL!;jgC8Sin$KjQ94fFV3hFBvy~AghcX$Kx&M+*sJcrKWlR#^U1AiWmZ)mRVH z=_VfOV_Toy00`KHhRZ>zdjTv&RB_(;trR8%ac#jQ4Xg9r(=4ueR9@ca$M#`xOip{q z+By4+$(zpbEo+}0$`_cfnUl}MZl;xef@d}KRhrnhSfQj^DOPXnnDff-eMGgbo%qlR z^BLiZ&d8*aL|h|Frj9{>(3?nIxNbfx7*88p&PUO*QH}HGSljZ> zU6d0~8Xj3&F)n8mT*t@l#?2aw-1wiK&5-Q|5BDphnIV82j!+Zy<}PUbBMcg1N4>){8vE55k3tX+(W$%Wr8Sw9xiE1mdD{m=uMlKt{xf&OXtZlV30@P3D{ z?8u)Or)ae}c9e#`*t`H1leuuU&aNb~vIMhAr+KZtsAO-5bOyjSm!*adu&%0=T;-P6nyh8QE(Y7}Gk43H02qC^ibj6vhovXgEXP9)cy- z)m0KynivXPwB&cI(k6g>*@N!lamQh_%Qz}cR1&|AooX5^s`RUJwUn{r$@{$qWAOCV zWoA^v-W|~Hial?Dh?+PKMdj`0O@*@i{l%l7!^oa+MDH1bFSXw6R*_8nM`#)fXZf~g zR0@vQKb8|~_i_LIhuKgn8W^>%y9lmLsG89p(z0d*{yPX-q)W%lquTT%aq;^`UNMH$^$q7^U7LUec5ATL zyfJU~kxf8|=5Zx~o^cg(l_m93yg8$iC7I5IA(xybYWp?mC$%q~*k3Ayvy702UTKO{ ze9(Ddgk&PTzcUdicsOV{7$}5)G7)rG3{0%wsR)~}5~(sd3%ilyhtH=X6b>M3#7UR=dMi0r7To^_f}W7w;Gf?(voidi&UVMXHjH7 zNE(&aG$eDRW$9bO$XpA|y9U>^O(!HSRQ-HV*EX>FFGy3j>7$v+n5#c=^dWLXM_Qh~ zCCm_&Th|v%Fs|QL>CxNNDSW^ZcUvCxU4t#FbQeA)Bj@GZzroWdIYf<*O=>^O;$2Ge z^yv2fuLdpT6t?<_>REs?C^Wu3fA&)E-01$Zc%!_nl{%)lmC`rcWxSvt`x$T(qcp>j zP3S{iS=cm^uuu5dwmA6%!FW#-p^GHlL~5qB$fAC0l2bx*_PfZzml<+(UjAl0gLDF9 z3bO}x8&|BhgSQ_722bxy$JI=nlC?f{T4k!p&n7-F`YodsOOYIwYL(i{W-)frQ4$-!ud3MhzYFyi2gZ z)0(5z94$K}+n&E=x6N_yUj#bEM~t zR2Qd^)AezC@SLr3$l9FM*QR6!I&}&cBlQy>Rgh*-c zpKMptuJ1O9e`Zi+AVu`uhj!b?e_N${@X5SR*92b-p|>fL9)`fUP+HDqe^`b_?T_Zx zj5rVYycnlLZ95Q|wdpRqw`CybsU}pAIyiKxU0TY`%@>A~NTnh7+ieC0=NS5dB{Ywlt*K|E+pXlvwfH}Rfxnx4@8Rc$$b5kt4j zW0=rS`;83Tv5916-sjbk@78jj173U0O~39A+0$0qcgi1q8yB9#8sRHrg5Rqb14yX5 zs$KxaU_7)GRb`wzYz|Ic=)ngyu+|we{Jp!f!vUUQ+rqe|!S)Nl6%QkkXYUKGAOI7u zx9VZC%t+rtc>Kr}_#--?Ldl4KcUc90u^~#qgmCC^%P0#KmV$$kx00A;=$2u;;C;i? zd99IIjq>U(a**TAL|0OO`U%**$TYbpB%@`vX1x|%a@1D zXIUIc)l|aNLn&vA6)`B_9sRF zqW0Im6=hfY1tkvrB9b{$x?+jcZ6!n&9Y^gmZBE)=aMKR0zNp2d((?eg2C8Wt`_?L@ zok_sbH9qTbpO*=-hsx)c4K&SdbgR)E=ymlw%)1ZeCUoMdGXZBwEn{p%DBN=VdqF;HLZNNIZh!4q#{mnKI)vb zFs>e-y%rnEgXfzEV#!##o;<`ZL#EF&?JI3Ye>Mo@IF2jiHMmt*D9pyq<_;8bUd%OA zq;8UE+kg+#?Lc}kE}a1trXS+7J7h4F*)>CUw?-u@x{E4y%|$vkn(gLrrnRvSdHd?k zI)?VkS`3k89Lpd3e~bg&fj$F_8-oY-`o|T?Whpr@qB5FTT-LdX)FORIXcde3DO5Gw zc9P=lypLi2A9RIs&&i7|DqS2iHI?R{nf5v^KretZA|&Sk@sE90#gIZ+;{;z!yf;UpIY%!f;!v_1X2++-Zto+fdE6|H{6;wq0%x*!6=YK`FoKV=cc=o zO)kkBp7@mAT2*?vR9Rs-=pQuYaKGI!fz)1kqfWOcZqjYPfdaX-G&`#aTl=^l2afSa zCqh)3Ifp;F6=;1q&Iuuqy{3tqcE(U5WQ37J@DGnnozyzqeESMpX!|pQ(r`2<9b#sU zk5aV%hP+#Q_OXa1J`GY}($|7sDqF3rXS>v&lOmv>8y~=@OZb_+5ntfI(W?`J2P;h0 zgT916-IUwNmyyEZSumTtlYU9^@#JRdz`diJHN^~#%mY?7@Zs2%sYiXmsiCdE(4q1-%ymbDa{RYYtY?xmnAJIqt8ClKDdRmwqZ|f#CRa1)qrRS zVO*8oBjtQ`rM-c|RdPn%k8v*X^dUpe^Px$&5eq7=cU4bUwcBkVlkb0zrOTIz0Bp)s zeYN~b<&XJGSrqL@stPlGM>M(YDYk5tyRUfektORpb+a;=I*5btV_ZF;>Xt@F4xO=V zb!<(kx2qHvbGfCV^w3x1b-n+5BCylLPv2ATCQ}Y~0S8klB;+VZ?*jY+P^1_DGtILN zBPiS0nhnZ)AfSdsuX~2yi&mtMXyE+qCyOMTQk(f7H6bkCy+DKp>wb4}b-&oox~vK_q^D9S5!R@K$7ZL_yVZCc*Y_Z6K)g^gMU zm{!lVD4GLB5nzG2ZH>9*{G{%myV{pM+x4rqu`Eut9@w1;nlN{9XgY{;H4N3XIWiqB z33fGEJJl>V4Aoz~*sXoSb*?^q0d#V=;e$o>1oy^TX!ZMJ$5C9A1x8>e-X~y+u5q-W z6esH(3-|8MDuZ@}+D&J1)8x2>Ph1st(m>;QOhUkSQTI7hR6ouSY9t8wz4-U5DuuEJ zrIRsPHk7X3OzPYtjAfM1EWZF$aQY8Z-;g6YyyHQ$D0C6CRulC^FV1Qzv?$6$Tby8v z$|bj``B2+ZD$w{@Mf}qX;MIrq6ezclN{uETMwpUlsI$*%1foPm!dVf#MN-|$4SGWH z1fNhOE_AZwExg5%!gZa()MHf7?;}*wPE)#R1T&TEE?nf|bFB(es{O>c`gQPN!I#A9 zUT^3H5aQDV2FHZA%rnoc$33-n`Tr!)O;`t>;RKA1P-x0+rG%In;b&QXW#~rc!N5s^ z#wnEO*Iw63k`Lp=7#2|}MYrBHjWm}QS*8)2noU6=#IYlx=f;gs2^$>g*)m%{uXgm* zYG?s3>8sl@|7V0!=PHR$lNZaFx>o9XVN5-V#zU3BxvE1=lqVSy7Y4;jksf5M|L4uS zoJw|_rg9E)C9j#`=SK_KOVE$GdOQbl>$<8O2~NrR$xyT^G-^4vsv}#wH^l?Kd zvn#P#K4eW$8audrIX!zPs`!0P<*$#^;DsO`r+u|0OzMxHnhQHF^L-QHyz66~A-bV^ zPlCTQemg4|+}n65$T^mE_7~C8I1CrF*$x2tSAJR(BWRenJyk2>)6}d$Sa0K@KIfS6 zS(!I(g!5dBb$ZW+?lm+1PNm0xNwml(L5pRzjI53e{mIJEC4F-!fk6?PEp2$P@6E?aF8^;~%he=^ia@2d4r zX-XQ>SW!H(TKMak92v<3ovmuUz@}Rrbf&ciSI}Y~-5MEx`T_!xjXGYMu8T4k0&PSe zQ#In(wD@NFi1qwi^Xq4jec%n4yTSj>8Dh|l8^`vt>HHH{D)~(g-pDzn z^rj+Fl&96LU^kHiV;N zoiwA`&Go~{gpT9x^p|n}(cAA4M$20HG33ItB7|5-4gu1#0TNhq<tXn? zlLYqp$UmE=R$o6az0LljpMqJLdQqHGyGkEN{V@?=bJi);2|BEpy5Wd8Ep{Rz%CqwE_{FGH zGB+altmazGh?b7kR(1E8iyNm5)Ua)2KSXSB0wX=-a^E-J1DuYqP&zSg+rc4^l>~2hl}~H z^}7cA#@U7-yF+{0lA}#sDaYE|dY1#4ZTBHt`>wAy&r6uUPH%HN!2s{K$%QS)vBpt3 zT39-wFMzGr4ABzTxNqWgl`;&!quH>dOp$f9rb{$dRNP&w!=QXtv#uMXy{^gaRR|4L z9fgg7tpHqUoIYZOp^A-B2HKxvCCQqxCc%y-V*#En&%<5NV|*&VU7mqCCM4RNzuAHU z8i<=DQwDjm-I2*6S>AdV3sD*7LJJdHnmKyExiIKDt72%JtXGPtU6ax9Rf3QsZnfI9-E9`tB0#;1^)qiUl7zU-dSCUc^OX>U z`EaMkgwDg6@gkiE)R9<4OO(YVEPHhg1V@=wi;%p#@#pN zdm=K+7g@azBWV~b*lp51LWU6U1@L~)6-IdamWm}`*wJ`-YR&V`K0UHO%aQEPTaCd zcHZq9^=_$&()!|+XwlI43>_GvCOWQ#BX$BO3uCVN_ls3ms)fT?9NjqkGjZY}T3&W- zBSwa16dc02N2PUBh)COrwsg8=+>#OBh$QNirK@!7M?O|aCn2&ed5hF})-cB-e88$k zbS^z~sVx>L8a^9|OK+uZBP$fRhxZXHd?GVxm74R^7dN|3SVBB~-p;(~!Pk<69O*64 ztV@@V=G=&X3}uo5(6ATA>c?7B#(r8>^QJ7ckS4m8dn)4C6KZ`e`pKy@PW9Kv#D167 z*Rn%N=^q5JL6WNa3$kKBt?~23Pd8I90OnQ`{v)DRYFtLP9z;?!juBXv%m zSqs-;`$;QL>Hw3FE%UY(>pjUQ`b>O4d#ef8hp)qp_7??16Xk%!McB+kaJao!;yMUv zKIq&^EZW7zMU`3vHmrQDHDrkHyEKNpGdGr_l`I$aAYM2@?m3PsVW#zfqtRTApG}YS z9#}O+eA{hkQq$kZ@9I;!nZ-u`uLgn=+;9Fg>#SNv{f8T|`4x_Le1jgTQfzRn72}NJ z!6G69KFc+4J;2=PiYC#;>qw5DuS?ANfdqv!n(x-Hh{RuW(J+~9Ry=Bsg)h;DEo8lR z_g@`5O*NZl1kJ2WIEwT)!Y*SvzRLUH-&{1Vir>Z~O1 zEKD44^J9&f?(%A*)QaEYRrSZNP!XYkvUSb)5Gh|d0|OQXYDkEZg!$bxMhx+kIWWvp zp;c|29c<3f8NwDt(Syyt!)}iTXD3)h=IY_sVeZj9U(M_|l)vw`CR^eyW~N+gHC<}k z_u%wQGVkCvJrd4dwlNt4!Kco1!UK#qs8`BE%tVooK`L;<*vbW{R(!^u| zQg%=I`7Oh4E7ea^DH@D1PUVKb1~X&5;DCmzkpUfWKzp|! z{X*zpaKmQ^`bD75_iQ-HKN;`bVq2<-9u(KW=GaPQ^}R(^2;JWg^DH61+p-c#oAanh z5Juh7P%E&J!RlQU6qZfze1ILq6^QSO$f-JZC?00U(1|CoR#ua(7~HVTquxd87hm`k zIj{xq6*1m?32?$GJf*>_~Ge;@g9 z9%_AQ{Zt5IS{!IB%DHyoGeZsFL6~k>bb3EPd&qw~D7$c8@nrfebk(Cp&h3ape^5a9gg|Xn)l0VC)=3--b z3Q}sSvCD69``3Xa2rWjY#))bwGphty%sybe~0PnJvThwnq*7G;@tH=4?QWnc)B7G{geUjXM1p`o-{T11}* zKd#JV2cV#I2FEHvL4XHWO`95 zRz7r=7jsc__=0>pHO9FuJT{e&XGI!JVdO^V*2Staq4f@gpr38&EqP^SYcK9ckjs%{Ms0yv-o$;9F`%%IW z>gO6Op}(QE9?9AMF?0$ZJJ<16T{mReY9m*4OA?q^&kXG&)L1BR*5TN8S>>&h(*8OB zv9#Q^ke6@}@>eP!m54iWC~2L!ol-fMN}uo3m+vjlR|sRDIX9@W3wi6L;nS|_5*BsyoRph4F;*4v#5PW_CjL;n!_s`qspF9jb9neM#y6zwB zf;GIJZaJ52>G=D8X03A@JjhA;i4^dtwbDmeIJq2_Dc)PZ3UC0nYjMw>7AE#jnlQ9g zzPT>kmc>eldRwb$U#Q(Bbb42@hvuEkCr*X_7!%@5bUUP3l+z{iHU$>YZlLB_hTC7= z#SqBeFCR1wiL8_6-3(*NT6D%qJp4Q8>{tdve&40BK|X?{j&rDx?PO@mmdt8Lx+nCt z3*?_{*)V+n23-&`M_#Z9R31Y2J>Gq5j?8PBc-&JH$X>Pb>v;{w7@^BOz}gWwHxQQ#cA92z%=PaP}79aWmbTV4Inl9Wz7B3^7y8%#N9vnVH#+ znVFfHxy^QLC&ri=vz_n1_urY_dv|B%(Rri-b+x3DR7a=Y^PZx(uTRwrp2O7dNkBU` zuEWG8{EprJCZ=!doQTLTT}`a#Ts7rk@_C0-Wl-NGjh3~e!5pSi&a9%&dMBLhJl*$h zRe`!9^+c)2BqbX9AoOSCP;YeP0rlmFm3^4M9ilqYt*xnbZI+8V7yNT;vXc!TJsg4Y zHLiMaN_ltZuraPs_6)B4MwCDGkMEXjg4Xrr*jiN5KjLW=J29;KzV9FH>lmMv*zoTS z>ogk3suK|L%@AHin<5lcJ37;SiR41=E-CL`n&j??%HC0kJC#%5wWNR#weKzAlcbrJ zf&?NN&3F_|t`e<4ez-?QNVKv*&9A0n9>HJ^kChl2#j|FkFgY=n$xBD0?_;1&6`C&I zqb1`-4@yOwX|{3jrJHyB;=EO%M~F?|Ql2(VRgh~{>rJ(}brOxE{sTxYUGP|MR+vJL zx|NXd7;gd(k5!_wL^I(6NUqyeW|kyA9j$-)pozJ)g8k_Rwz97L`5eyKNrnX8hC*h3 zcsCJ=l|YPYNa|7Nm$Wl2Lb_=7Z^jj+m)TE!~`jxf}SYe+|Baq1Apg#Mpj$= zLx&CI⪙u=rnFwiOmc48q%1%CAog^ZMEaP=x2q~1EbZS%Wf78aXoihkrbCyA@umD zyeDjhwfeP)S1s|Ex;DJKy@^=^YE6&?Rm)=<6(0s(!{`E?KNlNBMz@$N@~6{!Pk#c* zhHl=UKKG5^EBO|F!%uQ4*1c}`Q?L%QjLf_+ZGuXc8;!G+p0x3JthLzw;>oxzLpoS< zIpULrVSObXGO)Mrn-w&&vHWe=sBnWVB!=EnQ8H#otcrFLo`aK&fr)Um?V+;@IYXCU zyd+v6p{?+odXZn#hwjM*gJA4Lwx4 zqo`Fw8PH~H%(5iRjOnd(!ls{i7z7m>dQnp&e^V^MDKcueCpJVICG?FEkJ9NJXu+bF z+HP_LZi!3NCP>Jz{GOg65i#)M>2SHB4C;Dz>HQytK z&DVNv6K(I4G>gzB8AKYP32PpyeHp@#B={xR3|x)LZ#7p@=Z=S}zVW>w35TQQ@f?ss z5^dIL8Zi+W0j9+aiKHNozEBK;C79jG+ia%>sk520w(6EePw}0h;~;Mg^vd_CFjA-ZlpGIwwV#4s5B4XePX=D$CZ7~1 zf3AaVu|KPTj+f>OVcVp%&U+OyNR6YWU&J; zLq~HyF}G$XLzL=?alh}0vDExw;%e~)#M?5i2hm`+c$^rFqNIVZagvx^J@m300Sf-m zzMNoWYU|5OA^TMiY9W^9jV+V=mcdv2eF?DJ)TrTCYG-AnBsjTE&bZN&0wIBAW@Yc9 z>!E9$$Gz<*E{BUZf_8TYyC2&+?J6KUi8#5FTCJ4|W$jnYM6p04ufUiZk6`csr#b}+ zgpBWr1w?9W4XRDGCC--0;~rIhq%AMj=#$X-ziWG1*eRM)*Fpw4^Z5q}R5w8}!%cM*I#be-~Jwe4J%a ztT;ogr_l3;8~@_>#`bCPI`O>{oRv^auGpLlo2$Kgu`>Xb8Jo>a$7SuZJdKvnbjC~# zIJ01%D=~2dLDNZ`;0@|Z2fIpS>#bv3J4CUW&@9zd99j`C6k=r8wdrcLbY*&I448-* ziRX;YjS>k7q!V_sdhtRBXxw1OF72DJSt_0a9m_uL$dVgB7AdI?JNYx*M#F2A=5!XC zw(@P3TUy-E{l+sz1&5m{?1{uy@B3=my5#FG(Pk(;;ig6k2yiiBb7Pze;S*{qqum&spM#Iyj$z8-q$!A09$7KwO9Y^tkGdQ zN-A2dg5wbE;3lu2om%<2irz=EFQnOYkpr8huG@@VM@8MI1E(Irm!Fb<0P8Zd>zSSu zGo4Knshc$=J&1#ROlK3FS;7OFm$t1h%LS`kH6M2)-_%ehn_o{U7)mJ|*4;MjPv7ty zQHz6{)mCkCXJn!~#KRFQyCzZTv;7)$H}9hkcdIoxK?dZuGpw0D&05=+5odeg|86Bk zMurn@+)xaPJpBZE6JtMxUGK~OUJ<_O_JTBqXedS!V`pm@;s<+t{IJdruIda(LcN~e=vT+~^m~Qi@2{UU{#Pog+|_4nR~RZ6w6gXOYa7K- zOz=Ch_+CeQynM|%9G;fDl*2h{(!)k$3-#Pr8X3E)-0#qhhD;gTfj-vZe*nf8`4I)G zb`a0p*)(^G=P)3IIOg#JU~iMDy998yPcxS!5Y;Y0yeiSRQxtgsd&DtjE`r6Lsls3y zfJczOnc5j6g9(ttt*{GnM?PgHbVN*qBVgsX-T|I&D@>p_BAldbA+~k!Rp72?Ni$Y6 zmxf%NlxmS1sKd7w#je;zIT$OEWil{NDrJqmDt+Gk1E@)V{E$Ws(y8AFVA{}eT)ux& zJt6Dj*^))za#xc@49(0E-?i4^Y^@;B*hfQ~M*_Am>C%naX0Sr*bF{Uoancrok+AGA zb)t|wp%QD}qLm;n&^8zgdLK(S;)V9Lo=R$_up5R72rm)kF+GQwnE1XZ(h}$IJa%kb zK^Qae`MF(`#gk4^-XeDabz`k}(>9c13lU3KJ9^KTAw)~pYe1gnFJvsPXU6{iPk%9Q zbf_S28<77E)L-I)e|QbR0BE0BK~qInsE&b&1*9O5+ck^up2L5V76^R;krvG7=OuCe z0T9V3r|J0TX>f(_4S&#&C`5V9Y{19S6J0p*$2afIrQ z8Dwn0%~iQ1@|Qb=zx-P-D*O-fLKC%<~RN`;p4SH`!MkbK1;}H?Zpm;w)4Cbk##I#d`qs0Ok9u!^K571p6%mc-e~5H9 za6k!ho6U%!j_w-M%!%*o)#(P*CbaM$uRY0sfem*1A)~r#m;A^+|GU-9UWA~5$lxXh zCx(-G(YfE+vY2H7o2IJ)knfZ`pW}xB9(j%7A^F?+IYmP_NURnM?zd-|68JA0Qj|irL zlpV43B`;480{X}_{2?VfZjrjW5}9Aj5(8I;Fuoh+!HXJrMuSm{t3wZ24z{l!+U883 ztUK5N$x0qhydVdWeO@?@?wN6A-E8PTx5am>`ebBQ7FXl!+uk6p-nb87rS%Qzk zc@PJp=rj%XAX*1p)0^s|Fcq7mN(aIwiIh8D1aZ#sWrX)xx#XScK2*l@$zH^HVe+{eD1hZD3=kQCH`hVWMtzy4(ABF~50N@(IGJg%h?>uap z9zPW%v29(pV|hBpkLYr>*#ESs#X4_`KO+8v9Iz&;q<3jXN4>r}l`&DYSu_>d9O%^+ z^3nw($W?BL;LEv6JXeMXz5lVX?E$*^a2BI5v%h$Apw(IsInoKkImD<`(#K4}>=>lD zkF|R75>XHMmN^~}Ow=yu^4UTPL5yffat`mC`bCgL9&xjz^pIlcKe4wFD<^E2Hm97x z-q)+CargETdH_y-4YxaNwp_iisIE{Q7VmH4w3=J&Tobk@?0&-;9eC|kTpQdu1vbe} zYMy`d4yjhO%p^3p!1@k!8(pigWODjcnlaqfTS?qPDfb#-z`pT=sRZDhVaq_6w)(5CY%Sw57UYMGndZ= z82mlR4Kxy=I?oZg%9mAlKGd6o$LZfD)?TJEXI^62S{-Tcw6Ml-7%8d@C-haCo%zgB z@YPq}BYH`2aSz7hyEZHqfB?_ej=-o}vytJ-!1zZ5&mL^g!7kEqSQgHC)IRHnmU6YYIVS02Nx1%@MZWehUvx{tnN(Y=PWJI-7xUOhYdGfkxx0LwEDTBW>?i%EW*+*t5Q`3Qp+0RI3O8kMygCt0gqJ7_}^)T3Di zP=bdJ-cYQcWo>9QJ*J7e!UOlhtMQ%1`)>#&u9?(BOT}p2@I5g;W2*k13)JhAI>ByM zbx4Mxrl@xqyH5>N_cQy~jh!C~p3b1WF*>j_U&!z{u^AX^6-}J@F!_ZaiSXP&6H&18 z49Ngt_L*OiV9UQ7zn}8K{)y_-$P50Acr$af>*y^R>hYMZKx-;KPL_e!>u^CJJA)1r zQ^Wj=Rh+AEpyocN5F6W>aSo(eHzw`OfG|d=0oS3by;D)0v`j#wn(7kG?9y*KRVLpv zlh!jql*>JBgVtM-m zw42fJEk0A1<*>0&4rq+UgOokFH1L(?CUABIi_E*p!;h(|U^OCqeU0D^3bGmvjlri+ znhh24pIwdQAH{2u7O!u^(D3E)R$D33J-`^s!fjy-oOU5g>hkb^8|pdD{kTs{i+Rq= zE0U6#sgvCM=bpy>4e*(h%88S)nIcwSyQcoY-B)m+*LM4%*bMs<3)Y| zySFW44QzyKUt@tt4y&#L?F2?z{NNV-f?C_T2+!fNo&m=W-&Bm&7~6Ke3{tU0SQJ14 z@hcXn+^VZ)5?BG`zK6u~2%ci34T1N{563~uKParIH6zUmhqyMN!XeCoST8{GjfSeS z+nl5W*MV$y&|q1osRrWu={p0Zv&{U(B1$$UV$di8%V>*D;d5}VnkuPkS zcjb|}ot54F%h&W5c$KEgoOGo2ki`ysqm@(1RBc@ZfBv5f;MiuLF^Z(*No1bTuhREJ#Z-}p#3}&NrIRHo){2acd)HS5V*D4Rw#XX|w)&bvT@*__BRL{A?PM+0VOqa0n`STD(+s zN9o{Js=E@ddx?wZjatshk!@Bgt)yu+x=}+vh8AiP^sN@Jq;j)Ob@^5H`{(EY)y}qo z@T_#?9veNV=TBvZUy(n1k}zC!m*%Cv^yJB@FQ22UcxlZ^t3&XlX}?_^PYHioA`1q7 zPyY-?S*~b5o7&y9Ctu(EpbCb%BzABv>6t~*B0Ph#j|ULzzbtaWI>HqH#j#SFB_o;^ zG$mHLXCBO^q#3$oFEO>sdcnJ5ei`CABXX@v&`gCEshpNsLv3_$22yd=m%YU~V1}Uw z{NSw+2UG*_!S+iF0&q$3AypLn=^`KuAEN%2XV8J1LfIjP4t|8pE4PM;JAYIAc^`op z31JL(V7hG4L#J4SenfUataULuc`8ozN~zXxmlAgdV6V1~fRLWK>SDGn2%iY12D{1F zvMrcjy@VdH+R#w*+%mQd=p1Cf&p^tK42PwJLj894A}H5u429jxJ0R^l+HB(TCgVQ7 zm)c7rG>o0nIV*r#{|PEhMCLVH1ivck)Phiee-EA!ZcD3H5KT#Lze1(q$YXkX@YEoA z^YVv~#oDm78mbH0r??pSn3_E$yHl!?R45-dUHNI+1ewZ=gkX(Q(ivd8v`I5Ngx9{2 z@Pskgwem`~1nf-5N^Y4}WdOgOBv)!&Hky%ef9o^qfF#iM)UmJlmLRL-D1F^Mj zzu$Jf9=SixUS8(z?(+5Zy8HWFd_4dE7iY4ol@~Rkl&wo)3P?Q_tLdugt1hpE3E~0; z$kO-1F5m^J8V6TBs=bVjC#@|k=!sVturS>@9-|aDp7E0jz^7`*^BjChgMYrC%|-|O zm zC3Bfmo7{$%t9;c~uWeJvF*F`C>Z(KF6HQa;uhM%T@n$E+yMw07We4#YOzZ+NkS4}r)&zpZ2O2JVROM^4AdphYp8XdL^pTMnGUh5`q=6eIhlcESWjKyC$dChal@U9w(P>^#w5**m( ztvM15DKeAd#%7bh*gR`KKv5)vMn_Uzw?l5a;YdqZCbt3purid-{0pEvDG9?8JdsM5 zhm?9K=TK@BU%H7`qBzOgflzwHIW$dK_%HPldlW@7Z{S`Mgai7w1Yg8^<4jEYVU@7p zMS;r>3J5uAihyLIoJ_KnpnBLye1nOJe_bz%aX=CPG9*d5kqRR93fG2nJ5jy%3BxZ* z_(!S~+swoWAv8Xk5=DX=s8@f60;WN9<==ww;Qr&ssiaB5fB@Ab+5c=U>D#|Lu?s78F1QgJ|UGiypjnWi(;!^+7$I}1N!2d#)9K97*;NR{4Z~XA@U;MRGqy4p0gF{09 zJLbf{?9`|rp9WHpox0)bf3#EoC51x$1NdnL@>}Kvo%5vPA3y?j{DU@QF8fKDJg?=F zLYB)?>3^9Kr_~jyK2vD^D~>YDW|41jZ_=OzHY(S&piCrh(EKX%jmjVHZz3boKK~D3 zF<1+jYx&=Z1$o&s&7}Y4WjARhSEPdfrnhu}`(`s3Sk1Jswcj)`ZDdF(p$vH*mV+h| z+2$lPj93vD{a0Jiakp8PU+tzx@s;8g>$=@vy{;Z|&G?x%uG_TgFh;)O3*AeY%h0Tb z%aHN>0erH`-Qp54+d(Npo#%89PBW`gImiEr8=EV{uMr!&%4LB~!)LjneEJ8lXKLXZ z$3d7k^ct%w;6JwO!SKQnpEqKT7bEW4+)mfir^r`_clkIqmX(aClX2IG+}nG_OX|E^ z#~_OB&>jlyB+kAg`Lv^2P)dUECdAtgOp`%e z8q-Ql)f!FZ4*>e_$#m^63ya;P@b92_z0JA3J$)1<59=)K6d1Q`V1c+AxKhfI+ntwC zfjpJlp2)shZxWPwmZA8>F)e^o7OX-fJ)%Nf=ShFGI2CvFvvg^Ty$x;jlT4qfYCY_n z=)7TL!-}KP#VfGl)xED_-!W&1k(*o|6OLh&AF79}%A;L1SI13MyvYmIVM<1+6wf*z z^Du59>9rLke~wij0u0JFV!6YsR^CM`yEKP`8wXvV57ncX<4R;w=`@h25tf>f(>F^$ z@xm3om|j|Ky+4c7`S`uY>BsTEwI1PjJJxVY>Tk@Y2|d<4IlZdMhAAYL%iC+KnrNqT zslVTZKomo^+o|?)Xg9>4$)$Zy+Q)OGK}KFMz3t*Cn%MgmmXBjekWjBp2v}uZsCkN- zP=gH?kT*G=|OJ&1Alb5^4?h8f8$V;!zsX0f8_1A@sfrFV4RV?!goVyN~76Rv)@v9H=w z+**Y|(tRVBbj?l|{kCrLHEW-7fHro=fmFt;NIa5&X3X_X$~23n)a_j3jqi`)9|=o*+&Y*sHbZ{PyWbpm?? zG`AsiG4$3Mnl7&q1Ig1vN4WG7MK^-Xz9SW?=XaMUd+3!_OF}jFQ+44S?$X_8xn{N9 zk-iDYKdir3kMPeWSChq>cV&GjDORfZe!^m`X-+%cxvJ#b5irs(=COzIg}a38?7G4a zopCJ>fNQH%-;0=WQwwJzsJz)YsIr!&^K#-=Q#nGjb*Fw0_{rBys zJjaOxhccld`W`8!An&f{+we1criz_XpC$kzLNS}ldawCli1C6iTvb5riHp;^&!Z4E zj}0T^jln60tcaINaJMUOpxy;;^U|^X`5@EF`&||~XbO)&O`jhNz1nch*eMRU$}kfAsHs-Z zo9nN{*bJ~;39^@R)9-tR#{UY_d*FdpvH;nT9~$zk)E#j37bVt zG=OSHf~<1`17TPM=t3>3R9vY1r1$xdeeSZ)`So(^_Y7%oSf`ubcZNYXmd*|&h9E%S++cqhKb+Eig_kw~2hNT8Uy zw+hMK8q%iTA6Pn$JB*8<@9$9ZNb3@Phb7M*0NP~*>6V#t3dp$6=SQmH1W&w~m4L}u zU#53t-d8`rK2s0BT{W|%3C2wv@mbpYQU+_d^MFE2WXpQ^MhySb@9fpb2>XsyN=!n& z?@b+ME{OcQxh#KPmX7JHuBy1_Qir5H)z(Ac5fkg|@eD?!`uz+&pI)pF{6z3JfP^|4 z>eDQs!JN5MIJ@Bp`{;=E2N-JHmesx~S*04mlDm1UgAL35I zc9BX$3{+AfK$zk!)=3>mX`5|{+)I!BRVq@OKDo{<^lXAB}^UuI-iz<%GXHdo9Y1e^;yaRdFma~jA+gmLSw zk)rfPk8jFb{kjRdJ=R1Ag|j{IHhJ$H0}5G^YS&IbfrxeBP(NP9e9}nh8M@tsCUVz+ z$8997Q|*4WS=`a3R-?C`oy^?VBsR23-Wp1DuhcDbGYxa+RhFxKAY4pwA6=}%PZzE} zm)7_&5^9pMSSN~(vlq63d6JfSD(o1!n&Et8v8kZbxyEn^p{GM(>*r}7KcX2QDv}A8 z1@g|VSkAbEF~>-PN2j{N6jWrY_T%nHb-%L~5k~E3GZ>;ZQe$hBc08!J0qE zb*g64GS)}JVjk?n<3@24tgX-7!11! ze;!C^Zh>7uz{-JdBM*~Jk4=T7At*U)UtD}4#~>hyIsClgLz3x!;1zQ62apER7+K0N z!Ww;R8I)hgG+$?QU$3ymefQPh#=H+9w_iv6>j}#A>uL0nd%?<2>{#Y4j%wUy8tYpcSlx&JRjjg0 z=WO1h8L>fT)(>{FS6|lv_KeC>$Y?8H|9ThyYx{pI?|(ri{~0juU&^}?s?uMK$rULJ z2xS7onEc;FN+9KZeDD+AT+Z|VAWzTzz6DSmul<$Oyv}9+UxH$R3MJ8{@a+&JGHqhj zE>tTDn0p{`5iiNH9L|ycM~+_PKXIEQaBB_DVmma2<}mF2KQdV5ucAWd50@oFir78D zYC&M^pg2RXf^!|@x~0%{Unqo+ODs!GOe1Q#(jnZ3d)YhhLc77dOl0FOY^p~2JL4k# zOmC&=JPh*6@$1IQdd^{r#z1@@7c`A6kr(mPt{@Ms-uJIgzRVZ?xf<#PbgE{NRrjw4 z@4O$Z!mUm-XeV=!vVtqi9=tX&Bh6J7;3pjgIE1D<0rvq86rUu8YD<#pJqX4g*7@H| zc|o6-GeaxStQ(l`d3Gp9CIHy^~M6+{-Gp6ql;lF*K&mmab2erJ|skgpI6m z=nb_7b7+#KA{1w+WQrSW9ZD`$l?eA#VMFYsd#$w zH&N5hj|F_?DW3_8(C_nzp;?CO4gqnJOxE~;2qBv=VdWcvQ$2iL3E=eZR&`VM$el^$ zKxRQ~gV66RgvLK1?0&Urgt1h)o}KrZ%kFn5%9Pi*?)?E67Ea=Qsqf~kD0GVo4~4@w ziwP|i@3v%3tDuzIj@nLeH{1~H-tyH161+_kxy@UiA-LYk|Kg`yJj$Lc##&>}N*fU# zX%%F#V0D3+p_Hh!bD&A_OrQO9EBLG1^# zM4+`us?3%|J6R#Q`a2TUc(h2&mbpFQr=p$#4krBH>Z?O}F%T`*6M1|crKd+i!Klf8 z*$+{jtOfxO94fi_-;x$jsa$^#>4THA^Qu}YT#dQ-&5p&Fd|8e(WrgTkL^Dn7!pkOm z>FKHf@zGQs-j=Xe>5TjGC^LH0KGr$@RC9gUZOS)nTxS_L|AGHG?Lgs{yA_I-&1%z9 zBXouZqwIoS+@=Wgq`93N2|2Uq#|J4K*oc+T_y9edR}+ah&HL!^0^6PvI@zdO>=qu! z5PtZA9)mdRyyC+1g>a7>%E@zN+4Zjf>vQh#osd0AMy&C?8^{Yfw%aVmOVC>^R*k%R zgO9(2w9K6a7iX6OKTM|ZwEM?2gcLC$p{&))uj4?w1QB!b3WYxalU=|3duh26InzPD zx|tH)I!jlQ?%ttMG_dwyQG&&+>M~D-Yof!rFzRN$;+2C~tUNsDI)Mvoc_HG?kI!Au zODY2q+PZb%UtNXB8D29Zu>DNQSpjd2NzJ9$YLbti<8A^|A~Y%|`=jW)d6W7LOI%j3 zv#x-~1Tvgf;)>P)_+SY-3~d5)yQpO_51HPu>=9okuxKSFMjf5sAC`QT3zbA#cBMr%*#A{3W2AXscHP z7Z`PwSv>N5h{`$ZToz)dia(Xv+AcOw%j^-tz_n=1D%;RVqm{(YJQhN%%HFLjt&I#q zX-y@Yg1lq)$x!Wm#z>ubj1oJDup}BVl22z1sxTXL)yG&VQ$6m$k{qeg|4JvNEDbN7 zypnZSe>)SjWi@u9ViVR17l+d*lbkTNDuI#)qbd^1MroO*QjlJL;NXBx3}A3iG>sCR z;1eeul1%KK_0x=BJ5#r~3Z1I(S8Ev_QPz@t0^y(800 zq}j)(qPf?{(eNS{!*w0DFSACszJ*AV#}5~6(D7jzp zkQe6%9WFw8bk0-_7158U?dasM>aGBTT_t#5?bla=dI~Kq-MKynD(fQu0F0vMe`A5i zxTxz}K>*4_3twIE3{i#Mrojk%S627F+_I&U>zb|_8tBO zuB!mRQf`6K&%lfY%B68bAbsGso&1u>)+S9QW(%3^lET-1Mfv?ErK^*=1K5I`ZB~#M z_APE!0a_FI5eq$JJ+3w{fs%ZNC`NYac(oy)f`MgPA1vFKa~|Kq^b`Nu++>RjF%}dl zx}tQUm?3Z+oUOZK6%gF6ymv8d8GFh>8N+nal4ZH^ij`8`k#WM(QJ7Qxx}g7{+g;UK zCb*Dxfu5>Uj>m>Gii%C6d6bFISAY9X=WRz#KKAAZaI)Kso)E&6+a8(jO2t(gN2Fqi zBSz7IyklW{xgQjGXT@uXJz5xtD?yyqy{!pdT~Z1? zVwLp}Ph0#4&^ON6t`O)23y7{3h89aNx7na6+8|5+k*?B35Lo9?35AtGM_Ys@LqIr! z?o()%G2(tgG$Uc=Qsx+x{?upk`3i~T=ab~KAlk>*5dY-8|1u*xQn7yeUP7m%{UWl= zw#RPVUE&(cofBUS1|A+^Yv>`1+kK4=+cXGK7M5s8xr(-rSd{gG(@e!$Hc8H?pCA4$ z{ttj&&@qpDF2{V9?FjES=6TfT;J+>Se2R3td3jmrkv#mJ;+i^=UkbteMIt0eCCX8O zc7(eObN_!%643 zHnPc#7(@AtPv1E<=+(haSK?<#&u5mLo$i2;?!9}3_`RQFwpyY_)ONkJ$81eW3$D2p zt#P0Mp0r3V9J`ay%wE;pqhdp{86~*XiMj#=eEl$oLh+3=cSCf2IbM^M5ZCWnln}ek z;-M|3&C0F#I<}pq^r&6#t2`s;JNU>lmpQ$8eQ%_duD6?$I_miX>~C^2(C_ziEZ+vI zZWav@7OS8R8;=SMcIo-TXfNem!w29&^wjcha!b;4$i1jsU=Vc{we*iy7;@@=s z1!4aO!wvxn{&#ZV?<@)$;2#LPW8f8PV!;Aw1Ixg*u*2TJA?$yr1{A~;WM$}e<9yQ3 z1QG7@pkC&J-pvR6ntt?YT^UqAF#~;Y{#ImbASW_#toaY-tA*isZ!-W~3}62MG8JHg zz^l%KgKVEq@~B_tlHbiIKAL|10chR$S3e5@ee%u(zuy0^)^zQaF4K>E!F-G>WCfj9 z{5h{2 z{jkVzP5x;Ixd~(KZbC{Crkw&a#ylYZTo1yeVI4f^VTaP6BhEcyV7l)@);Wc~(XUdzq9ZTfI?I06L( ztSnb%ke39w&%NlLIh|V^`c5m-k0QbY_W8LJ1jVG?{G%&jHsKEH@X$Pvw`>u*FY)q7 zHo**qQ3(xye6ELQ-o^aYcH4}YY)33FOUj2y5$(W>wDYJL-jBN#@!R<;gT;)yuMYfM zehUAU_rA}V6H|W|)hEZ_po#oFP8)7WFz?Xz8hS;cE&e=n-Wi9ll1+QNPk*m3As0_P zC~9cONV75yXiCbY{7i)kb1A^9ICnqS-GTAim2eVz^-GbauRrCzMb`E47kL@_8ZSdT z5yKOj<<2TE_kKo*<`se*J)&t_2a!)$F7B!9&fTqIhKZ>7SRxaB#gJ)e=;^9cBvi8S zNswOSg$h9e)B(Ajt9W6!RSD2z`8+de&aj%S(xQ9WqQ>wJs|HK#xT@}mF7Wd*`UK)} z@>nR9GEzy{39HWALxG4Q;Dq7xtiZHxDFLLg*)?k(Z_36Cf-eP2VHpS=up0VvT%F&( zs|1uAj0=LCl=Fgyjil#vQz&-`J<=0yVxC z&?J*j3PGIaf|p{56$g6Cf%OYUoMa33H0{3%jn!ACvqCg7HCPm1AyqyMV-)w_9SyO7!G3sZ2X>1;pG^~^tiRy!cnY)*69)uBbBc_ z&pifb)QwJcHet^WJ;z3T;{4WU0|EZr;!S}X`L~I*eC!N$dfaQ24X8iMbk#>OmF7Ec z=N^;o_ORCTwDZt*5h3cDY6Z~0KcV%*#*;5QyFE!RE`~GA3B7+k}lcslqy&odNKIFZcs3E2l^#PspE@mY;g28C)!-qWhJk;n)hTNd`F zn)C4B$faE+GT-Ct*S#?e-_nbCAIBO+h0_BkqUVJy*q8LeoE)qq%#DwK;XZcw3ql^# z1@m<}y@rDm+0u|d-Uqh#n<-s1jFfzPdW$g~XjBf3svTXB3a;0=Ec}2a*a9D&kLm`=%n6qha!^B+xe2bzF=@fA(EZHHK1EW7(JZm++0q02~N8i_g$ zqYEgAOEA8Clb*$ROjVK*msE3^7}+Y2!B3&AA9WC9`bO>awe5q*6k9x2wVz0B24h4D za}BjNwDCx2SL77_ejzXm%o1C;SU9*I_seOj4!X_Vh=sZsMhv8ZPW)1ta^So2LpSXEUYYogvTp0UVqLDJBjX%0OW zvm_f6b1e~n$6XS>3MJB@bV+a%xheD@luQ*UEi+8lo34O8P(wZ5elwg|hRV0FTzpL# zrdCROVcUlCYBl{e!@i&3vGfxN#k48Ud5imE2phQBA1iW^>5&*{HJ-c3!*#}hD&=IK zSMxREGMPB7YdUNgrlhXpDYLQ+t>ELrcW15g%^U?{E`@Zs<%`qEjQ(S;1Rl}EVG&|(r&kH8%e_u9!L#5~P8xY6znl@)Q+8%^ufS0az z*4>~s;!D9N=Ss^D8T5sb%)ht34>E^CYNtG_zq(>mYgA6)El2k5-V&xCttynx54-EX zKsW3t_>uPFKI}w%0SwnCxt7xt4D<-zn#tr=vT;#ae&I4W$9mMQBja|z6>BTAWmeCo zDS0oiLiO>JbF${n^%L+M>IVaU=nHk*fKUt=Dt#tpwW_#|XD<+6BizSLRcBIe(mI}O zV1;wgK4(gJ4y3@!2pif6qfv>*T(a09D@QiwI?)6`Q6vm}RoIwu$-;4px`C$K7LRCG z%KwoJ#Uz~d#KP|R!k-gcR8QdebJ>WpZgy4458%mR5D6+(%F zWdIhns8+vhRnWc-ZQ{NXH6)QHv%NU%0n**gE4Mx!6mRV-Hb;{vj7bH?F0ldFyaXKg zFsA>>=;vuDmuo0mSBC@)EW{IPt%}Gl zcArnEbu3AAO=4W5PQ&Wbej*SwC-sC>@Mg2ADfuCKX1f@=>9;1=IdJ`QG(&<9khd-+ z5SLTb>TUObDA&#pYqs9xSO{oM^*Vl8eu{gddGrT5O0ge5y>gtfm~m2z*Yy!UWv(GB z(k8X9@AM0G|6c(L5cTg<)WO~u!c-iou3J(8bXqgi54Hypf;|9^d{=fnKuL-fuPS}8 z>H+UC&;tixXK39J@ErO6?D+oJk4TiSv6@Jz4bQsPo;QT0X%__$ z)a~P2I>+KYf&~NDRz0y4BJ7H7w_IuaXUg`#0w9i&>wsNqkF8U~^1R8+Byi-al}Lg#ZUd2|9P<4r~LiEon{y(~FH4xZ!9#fbwXkbNKVt0NkYP zI&mAE+(|^Lh}jEuym%TA3fs^QI^s7vP?1ZmWvCt^N;|iwQx%a6S*V4bQT$-_F>En% zTIk-gC`P8mqr~0y)^@Ha=u%1&@2k^tFkHo<9z=M`J)}D*ImEE+0tP5|#O?3MyqR)y zSsnqv;rrpjL_!c>mil-);&Vo^;vHZ*c4;wjUeH5GbVpyqlLTPzHVR5Xt$JK@=f z39T97IbImyeVTB6`FtD3U5$#aVYYyCO0wc~)J`bTikfqH98GlFbmcT~$2+&!j2jDE z{;mT+XgzzkHuc2I6hvta-&CU>?i95jr$m4pBhQR?SuW-{g|TLn3FX)kI&Uf5y6P}Q3}9(rRGv)Qc*@V&YozfFr5DMHU=_kNK-4VK1P8(NLc zV~m<10Vp?sfaM%OZ5(du?qzUIz#tnn%EBsdx{o*9v)eEA4K+oyhXGQ~4CcV@%O-ahMc4*S9YHPt(K(KW+mIA{Py&&9by}BP z)N#{5DnOK{GO2tR6`P1#KiAL*)XL*7E${|kx#`wyJL(_=@p3)xjiY z>ZzxjKCCFJMmw_H&`cYyl9$xPh>D?e*H7yo4KZ6EI>2|z1|JB2SOJH2hk&n6Fs`N9O<$1fad6egI8+NpMdAj_h-lU!ac!8 zDM&ta!H7*263_I zj<`f{Rpo}wL!kaMz0hF_)w0fa-zeg!GQbzIer7N>7(;-bW*$btyQ2E!m9%SpLpAB= z5jR8K!mFiM#&AmZlJD#7GFV7u52h*S#x@b>us03Wm$#;V7xd@B_F={~Y&oiSyy*T&p#tf~JtJPPkyT8Na`~IUhB&ddkM|jYp|u9Lv6vxZMs!6T05s;HZE!|} zTGotQnehlEq3BT!fO_K!fOZWgaKtn7%)LcR2AX$xVe+ ztdD>lE+SL&qS9fc^vM)dr&147Y>NPX+&B@JTj+6zQM+EiSjAkaWsOLOU5C5d4hBT6 z=%|_od0X6Va^U^1u8@SivyTX$s-2M&iyV*w6GlB0 zdd3Y9#oD9f#idE(KjRn`fqNPM01H13udES)nNxkJ=ccj*(6KERlukP)BBDZ5By+i} zg~6~2*XjequQ)J}0}D2W<>h4E!GVxhad>R^!gEZ+r&OGF^vQ=%B_U0q-#r{Cy}}KL z3kI8Vlk>unSAg)Hc{$Y|O-kP2cpj%)LQAMuxGAh*UX)^fY!39S-h0juecgA$sq^P}XLWS`^**)voO3r8Dt zKH0X5fIF*)oWY8hr>+8tYR7|{>6Di1BE5=3eMk44I&ztP5ln9Aq9IG?hAJmHiabS- zd2W1vY*&a^n~yo;{Ji3k4&|&VsH670WW(N7aYv=ssh%&(&UF^8o389K)Gw=^Jb1+t znqjKCcn+Bp?CuH?P$tuKi-2V-H(N~_Y18eOsFzrZn(k~(LuA5QEh=;tw_=zCgL%L` zv=+hFsGmk$h3Z6-cMiDB_(9OyezTUU+JMzg~MUdzNYN5Y;u~w>$x%;pK7%mU!g;jkZtaNDV`xWQSvT9eS+`#9sJ(edPtwsNmj-jAwaLoEtTyc=L7rr3{a)#W6;~B1bE-W-o39Qoz&WV#_41|+drAx_h2mo{p zLW%Ae%}csm1ORpnj2E~r00JCR;^Rc%n$I|_iHD(&Vtr~WviT?-=;tmhFP*LekveaR zWn>i56$11OU&T3SPM~*gQ-H%s!4#@JEaaK599j|_E{SoFJ+`|_Dce04BUj*BXh#a? zA)w5MLTuPw5#s=MlQ!rfIt`@R95*c@G>VRgpzED6c_IT|gRskH1ltzXP+eu%Z+gZ# zT!j>5OXT**&9=g{;7_;k`2OEU>eTI64youE67)?LH5o%D=LTSz!2=6%s>=H8`g~V! zsP?TkDHp3=H=E<#$`5&2IyR=WdUjF+VsT3rJ%o{gGjOQ`yRF-?K4602T1u7KvIepf zGFe8c8ft9i&c2ZO1=NQ7jzKkBDyi!@_s%LqVO-*{)Q?05d&JqT0-`)JYY8K!DhfDI z>61(eiU6|;^G|DIZ<7xuD+L=X?#4gGs0q`JHsQPt6FTp3eX`?dA=`5}x$(SnPMx_) z>=0iU0aaBU)i`FHDKZY&y%9JEy5Il+2nSE+v8nQEF|%F&0LRxZT)A@P%aDTt?T$83y}1j*ZaKggEh0(Xt$JXk0H6^# zO=|=@D#hKqUQAvo0n|1XFWb9{gU?0t8K=n5cLM%(})cr+(doHxs0 zA!pJ+bQCbYa1#;-X~G>f##`SKNRoO)hhb+p`ff)qzYD;0)(mYXo>7Pj&4uR_^)OoJ z9&B&FTucH($P3VQPX;cn3sG5jSn?iBS`LVB51XuW3yXYOkP9?6JDHAvMoMq}uZ3nn ztt9dw@*+oJLs)$XbO3-Iu`k}W0veg}{{XD`f7X0I>pma#pAY)ahy7c@V&sk@94ms%;8@@s997VG&UJ z7psA~Bvqrc>r0Fs$CDXTfYmrBonJ$?DG)Fagg(Xy34jP4j6co<*DV1O_|^+hs>Ai8 z=ppNx@#Dv^AK^H?@O`8-t%CFn{?>ospXGRPy4nPKH;bZX%cMexcokL1*zC!^ zc5Pcw=2u%|iO}zH`Chm(i6NRo(|%l<{{RWu7DbgV0d=#!b6tw=Y7|MJi?@YR8>Jfo zg`m(cRNfqbB*0PzCZWLDqD7=bG%x`;O}C+0N^*IZpaW^VQ9i~C)v+&MVITew9=k&v z4F@w}&bOOLq78Trq!Mwz1}(H@zDig?2vQr-fhkTk1fI$abFCl-D@&DEj$9ay7ss(x zbgQF`4&rXk0EG*5RvW-XNVdss^);;BP0E4_UV}+)@N$`I-V{|zHsAuoTTZCkEr0wm QoM?_HgwXc?0OH^O*{`R%s{jB1 literal 0 HcmV?d00001 diff --git a/src/Bundle/ChillJobBundle/src/Resources/public/images/index.js b/src/Bundle/ChillJobBundle/src/Resources/public/images/index.js new file mode 100644 index 000000000..f8435adf5 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/public/images/index.js @@ -0,0 +1 @@ +require('./footer_bandeau.jpg'); diff --git a/src/Bundle/ChillJobBundle/src/Resources/public/module/cv_edit/index.js b/src/Bundle/ChillJobBundle/src/Resources/public/module/cv_edit/index.js new file mode 100644 index 000000000..43917ddad --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/public/module/cv_edit/index.js @@ -0,0 +1,43 @@ +import { ShowHide } from 'ShowHide/show_hide.js'; +// listen to adding of formation and register a show hide + +var make_show_hide = function(entry) { + let + obtained = entry.querySelector('[data-diploma-obtained]'), + reconnue = entry.querySelector('[data-diploma-reconnue]') + ; + var a = new ShowHide({ + load_event: null, + froms: [ obtained ], + container: [ reconnue ], + test: function(froms, event) { + for (let f of froms.values()) { + for (let input of f.querySelectorAll('input').values()) { + if (input.value === 'non-fr') { + return input.checked; + } + } + } + + return false; + } + }); +}; + +window.addEventListener('collection-add-entry', function(e) { + if (e.detail.collection.dataset.collectionName === 'formations') { + make_show_hide(e.detail.entry); + } +}); + +// starting the formation on load +window.addEventListener('load', function(_e) { + let + formations = document.querySelectorAll('[data-formation-entry]') + ; + + for (let f of formations.values()) { + make_show_hide(f); + } +}); + diff --git a/src/Bundle/ChillJobBundle/src/Resources/public/module/dispositif_edit/index.js b/src/Bundle/ChillJobBundle/src/Resources/public/module/dispositif_edit/index.js new file mode 100644 index 000000000..c8dba4ff7 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/public/module/dispositif_edit/index.js @@ -0,0 +1,72 @@ +import { ShowHide } from 'ShowHide/show_hide.js'; + +var + div_accompagnement = document.getElementById("form_accompagnement"), + div_accompagnement_rqth = document.getElementById("form_accompagnement_rqth"), + div_accompagnement_comment = document.getElementById("form_accompagnement_comment"), + div_caf_id = document.getElementById("cafId"), + div_caf_inscription_date = document.getElementById("cafInscriptionDate"), + div_neet_eligibilite = document.getElementById("neetEligibilite"), + div_neet_commission_date = document.getElementById("neetCommissionDate") + ; + +// faire apparaitre / disparaitre RQTH si RQTH coché +new ShowHide({ + "froms": [div_accompagnement], + "test": function(froms, event) { + for (let el of froms.values()) { + for (let input of el.querySelectorAll('input').values()) { + if (input.value === 'rqth') { + return input.checked; + } + } + } + }, + "container": [div_accompagnement_rqth] +}); + +// faire apparaitre / disparaitre commetnaire si coché +new ShowHide({ + "froms": [div_accompagnement], + "test": function(froms, event) { + for (let el of froms.values()) { + for (let input of el.querySelectorAll('input').values()) { + if (input.value === 'autre') { + return input.checked; + } + } + } + + return false; + }, + "container": [div_accompagnement_comment] +}); + +// faire apparaitre cafInscriptionDate seulement si cafID est rempli +new ShowHide({ + froms: [ div_caf_id ], + test: function(froms, event) { + for (let el of froms.values()) { + return el.querySelector("input").value !== ""; + } + }, + container: [ div_caf_inscription_date ], + event_name: 'input' +}); + +// faire apparaitre date de commission neet seulement si eligible +new ShowHide({ + froms: [ div_neet_eligibilite ], + test: function(froms, event) { + for (let el of froms.values()) { + for (let input of el.querySelectorAll('input').values()) { + if (input.value === "oui") { + return input.checked; + } + } + } + + return false; + }, + container: [ div_neet_commission_date ] +}); \ No newline at end of file diff --git a/src/Bundle/ChillJobBundle/src/Resources/public/module/immersion_edit/index.js b/src/Bundle/ChillJobBundle/src/Resources/public/module/immersion_edit/index.js new file mode 100644 index 000000000..c934b0b32 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/public/module/immersion_edit/index.js @@ -0,0 +1,20 @@ +import { ShowHide } from 'ShowHide/show_hide.js'; + +var + div_objectifs = document.getElementById("objectifs"), + div_objectifs_autre = document.getElementById("objectifsAutre") + ; + +new ShowHide({ + froms: [div_objectifs], + container: [div_objectifs_autre], + test: function(froms, event) { + for (let el of froms.values()) { + for (let input of el.querySelectorAll('input').values()) { + if (input.value === 'autre') { + return input.checked; + } + } + } + } +}); \ No newline at end of file diff --git a/src/Bundle/ChillJobBundle/src/Resources/public/module/personal_situation/index.js b/src/Bundle/ChillJobBundle/src/Resources/public/module/personal_situation/index.js new file mode 100644 index 000000000..4cb4bb246 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/public/module/personal_situation/index.js @@ -0,0 +1,103 @@ +import { ShowHide } from 'ShowHide/show_hide.js'; +var + ressources = document.getElementById("ressources"), + ressources_comment = document.getElementById("ressourcesComment"), + handicap_is = document.getElementById('handicap_is'), + handicap_if = document.getElementById('handicap_if'), + situation_prof = document.getElementById('situation_prof'), + type_contrat = document.getElementById('type_contrat'), + type_contrat_aide = document.getElementById('type_contrat_aide'), + situation_logement = document.getElementById('situation_logement'), + situation_logement_precision = document.getElementById('situation_logement_precision') + ; + +new ShowHide({ + froms: [ressources], + container: [ressources_comment], + test: function(froms) { + for (let f of froms.values()) { + for (let input of f.querySelectorAll('input').values()) { + if (input.value === 'autre') { + return input.checked; + } + } + } + } +}); + +new ShowHide({ + froms: [handicap_is], + container: [handicap_if], + test: function(froms) { + for (let f of froms.values()) { + for (let input of f.querySelectorAll('input').values()) { + if (input.value === '1') { + return input.checked; + } + } + } + + return false; + } +}); + +var show_hide_contrat_aide = new ShowHide({ + froms: [type_contrat], + container: [type_contrat_aide], + test: function(froms) { + for (let f of froms.values()) { + for (let input of f.querySelectorAll('input').values()) { + if (input.value === 'contrat_aide') { + return input.checked; + } + } + } + + return false; + } +}); + +new ShowHide({ + id: 'situation_prof_type_contrat', + froms: [situation_prof], + container: [type_contrat], + test: function(froms) { + for (let f of froms.values()) { + for (let input of f.querySelectorAll('input').values()) { + if (input.value === 'en_activite') { + return input.checked; + } + } + } + + return false; + } +}); + +window.addEventListener('show-hide-hide', function (e) { + if (e.detail.id = 'situation_prof_type_contrat') { + show_hide_contrat_aide.forceHide(); + } +}); + +window.addEventListener('show-hide-show', function (e) { + if (e.detail.id = 'situation_prof_type_contrat') { + show_hide_contrat_aide.forceCompute(); + } +}); + +new ShowHide({ + froms: [situation_logement], + container: [situation_logement_precision], + test: function(froms) { + for (let f of froms.values()) { + for (let input of f.querySelectorAll('input')) { + if (input.value === 'heberge_chez_tiers') { + return input.checked; + } + } + } + + return false; + } +}); \ No newline at end of file diff --git a/src/Bundle/ChillJobBundle/src/Resources/public/sass/csconnectes.scss b/src/Bundle/ChillJobBundle/src/Resources/public/sass/csconnectes.scss new file mode 100644 index 000000000..6405c0f00 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/public/sass/csconnectes.scss @@ -0,0 +1,19 @@ +footer.footer { + padding: 0; + background-color: white; + border-top: 1px solid grey; + div.sponsors { + p { + padding-bottom: 10px; + color: #000; + font-size: 16px; + } + background-color: white; + padding: 2em 0; + img { + display: block; + margin: auto; + } + } +} + diff --git a/src/Bundle/ChillJobBundle/src/Resources/public/sass/index.js b/src/Bundle/ChillJobBundle/src/Resources/public/sass/index.js new file mode 100644 index 000000000..657c9677d --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/public/sass/index.js @@ -0,0 +1 @@ +require('./csconnectes.scss'); diff --git a/src/Bundle/ChillJobBundle/src/Resources/translations/messages.fr.yml b/src/Bundle/ChillJobBundle/src/Resources/translations/messages.fr.yml new file mode 100644 index 000000000..9f9e652bd --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/translations/messages.fr.yml @@ -0,0 +1,250 @@ +situation_logement: + proprietaire: Propriétaire + locataire: Locataire + heberge_chez_tiers: Hébergé chez un tiers + heberge_chez_parents: Hébergé chez un parent + hebergement_en_foyer: Hébergé en foyer + sans_domicile: Sans domicile +niveau_maitrise_langue: + lu: Lu + ecrit: Écrit + parle: Parlé + aucun: Aucun +permis_conduire: + a: Permis A + b: Permis B + c: Permis C + d: Permis D + e: Permis E + en_cours: En cours + pas_de_permis: Pas de permis + caces: CACES + label: "Permis de conduire" +situation_professionnelle: + sans_emploi: Sans emploi + en_activite: En activité + etudiant: Étudiant + etudiant_descolarise: Étudiant déscolarisé + label: "Situation professionnelle" +type_contrat: + cdd: CDD + cdi: CDI + contrat_interim: Contrat intérim + contrat_aide: Contrat aidé + cdd_insertion: CDD insertion + contrat_extra: Contrat extra + service_civique: Service civique + label: "Type de contrat" +ressource: + salaires: Salaire(s) + ARE: ARE + are: ARE + ASS: ASS + ass: ASS + RSA: RSA + rsa: RSA + AAH: AAH + aah: AAH + autre: Autre + label: "Ressource" +accompagnement: + plie: PLIE + pole_emploi: Pôle emploi + referent_RSA: Référent RSA + mission_locale: Mission locale + rqth: RQTH + autre: Autre + label: "Accompagnement" +freins_perso: + situation_administrative: Situation administrative + situation_personnelle_et_familiale: Situation personnelle et familiale + comportement: Comportement + etat_de_sante: État de santé + precarite_situation_materielle: Précarité de la situation matérielle + condition_ou_absence_logement: Condition ou absence de logement + autres: Autres +freins_emploi: + garde_d_enfants: Garde d'enfants + sante: Santé + famille: Famille + finances: Finances + maitrise_de_la_langue: Maitrise de la langue + autres: Autres +neet_eligibility: + oui: Oui + non: Non + en_attente: En attente + label: "Éligibilité NEET" +handicap_recommandation: + travail_esat: Travail en ESAT + milieu_ordinaire: Milieu ordinaire + entreprise_adaptee: Entreprise adaptée +moyen_transport: + transport_commun: Transport en commun + scooter: Scooter + velo: Vélo + voiture: Voiture + autre: Autre + label: "Moyen de transport" +formation_level: + sans_diplome: Sans diplôme + BEP_CAP: BEP CAP + BAC: BAC + BAC+2: BAC +2 + BAC+3: BAC +3 + BAC+4: BAC +4 + BAC+5: BAC +5 + BAC+8: BAC +8 +formation_type: + formation_initiale: Formation initiale + formation_continue: Formation continue +diploma_obtained: + fr: En France + non-fr: À l'étranger + aucun: Aucun +diploma_reconnu: + oui: Oui + non: Non + nsp: Ne sait pas +xp_contrat_type: + cddi: CDDI + cdd-6mois: CDD -6mois + cdd+6mois: CDD +6mois + interim: Intérim + apprentissage: Apprentissage + contrat_prof: Contrat professionnel + cui: CUI + cae: CAE + cdi: CDI + stage: Stage + volontariat: Volontariat + benevolat: Bénévolat + autres: Autres +immersion_objectif: + 'decouvrir_metier': "Découvrir un métier ou un secteur d'activité" + 'confirmer_projet_prof': "Confirmer un projet professionnel" + 'acquerir_experience': "Acquérir une expérience professionnelle" + 'acquerir_competences': "Acquérir de nouvelles compétences" + 'initier_demarche_recrutement': "Initier une démarche de recrutement" + 'autre': "Autre" +immersion_savoir_etre: + 'assiduite': "Assiduité" + 'ponctualite': "Ponctualité" + 'respect_consigne_securite': "Respect des consignes de sécurité" + 'relation_hierarchie': "Relation avec la hiérarchie" + 'capacite_adaptation': "Capacité d'adaptation" + 'motivation_travail': "Motivation au travail" +immersion_ponctualiteSalarie: + un: Un retard + aucun: Aucun retard + plusieurs: Plusieurs retards +immersion_assiduite: + aucun: Aucune absence + un: Une absence + plusieurs: Plusieurs absences +immersion_integreRegle: + 1_temps: Au bout d'un certain temps + rapidement: Rapidement + pas_encore: Ne les a pas encore intégrées +immersion_nsp: + oui: Oui + non: Non + nsp: Ne sait pas +projet_prof: + type_contrat: + cdd: "CDD" + cdi: "CDI" + contrat_insertion: "Contrat d'insertion" + interim: "Intérim" + indifferent: "Indifférent" + label: "Type de contrat recherché" + apprentissage: Contrat d'apprentissage + personnalisation: Personnalisation + creation_entreprise: Création d'entreprise + note: "Notes contrat recherché" + volume_horaire: + temps_plein: "Temps plein" + temps_partiel: "Temps partiel" + label: "Volume horaire" + note: "Notes volume horaire" + idee: "Idées" + encoursdeconstruction: "En cours de construction" + valide: + note: "Notes validés" + code: "Codes validés" + note: "Notes" + souhait: + code: "Codes souhaits" + + +chill_3party: + key_label: + prescripteur: Prescripteur + entreprise: Entreprise + +crud: + csfrein: + title_new: Nouveau rapport "frein" pour %person% + title_view: Rapport 'Frein' pour %person% + title_edit: Modifier un rapport "frein" + title_delete: Supprimer un Frein + button_delete: Supprimer + confirm_message_delete: Supprimer le %as_string% ? + cscv: + title_new: Nouveau CV pour %person% + title_view: CV pour %person% + title_edit: Modifier un CV + title_delete: Supprimer un CV + button_delete: Supprimer + confirm_message_delete: Supprimer le %as_string% ? + immersion: + title_new: Nouvelle immersion pour %person% + title_view: Immersion pour %person% + title_edit: Modifier immersion + title_delete: Supprimer immersion + button_delete: Supprimer + confirm_message_delete: Supprimer le %as_string% ? + projet_prof: + title_new: Nouveau projet professionnel pour %person% + title_view: Projet professionnel pour %person% + title_edit: Modifier un projet professionnel + title_delete: Supprimer le projet professionnel + button_delete: Supprimer + confirm_message_delete: Supprimer le %as_string% ? + +# +# Exports +# +placeofbirth: 'Lieu de naissance' +countryofbirth: 'Pays de naissance' +formationlevel: 'Niveau de formation' +reportdate: 'Date du rapport' +notesperso: 'Notes situation personnelle' +notesemploi: "Notes accès à l’emploi" + +prescripteur: + name: "Prescripteur" + email: "Email prescripteur" + phone: "Téléphone prescripteur" + +recentopeningdate: "Date récente d’ouverture du dossier" +recentclosingdate: "Date récente de fermeture du dossier" +closingmotive: "Motif de fermeture" +situation_familiale: "Situation familiale" +enfantacharge: "Enfants à charge" +poleemploiid: "Identifiant pôle emploi" +cafid: "Numéro allocataire CAF" +cafinscriptiondate: "Date de l’inscription CAF" +cerinscriptiondate: "Date de l’inscription CER" +contratiejdate: "Date de l’avenant du contrat" +ppaeinscriptiondate: "Date de l’inscription PPAE" +ppaesignataire: "Signataire PPAE" +cersignataire: "Signataire CER" +neetcommissiondate: "Date de commission NEET" +fsemademarchecode: "Code démarche FSE" +findernieremploidate: "Date de fin dernier emploi" + +CHILL_CSCONNECTES_REPORT_NEW: Création et modification des rapports CSConnectes +CHILL_CSCONNECTES_REPORT_DELETE: Suppression des rapports CSConnectes +CHILL_CSCONNECTES_REPORT_CV: Création et modification des rapports CSConnectes (CV uniquement) +CHILL_CSCONNECTES_EXPORTS: Exports CSConnectes \ No newline at end of file diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/dispositifs_edit.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/dispositifs_edit.html.twig new file mode 100644 index 000000000..82a4682d9 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/dispositifs_edit.html.twig @@ -0,0 +1,91 @@ +{% extends '@ChillPerson/CRUD/edit.html.twig' %} + +{% block title 'Dispositifs de ' ~ entity.person.firstName ~ ' ' ~ entity.person.lastName %} + +{% block personcontent %} +{% embed '@ChillPerson/CRUD/_edit_content.html.twig' %} + {% block crud_content_header %} +

    Dispositifs

    + {% endblock %} + + {# surcharge le block "retour" par un lien vers la page vue #} + {% block content_form_actions_back %} +
  • + + {{ 'Cancel'|trans }} + +
  • + {% endblock %} + + {% block content_form_actions_view %} + {# no view acceptable #} + {% endblock %} + + {% block content_form_actions_save_and_close %} + {# save and close does not makes sens #} + {% endblock %} + + {% block crud_content_form_rows %} +

    Accompagnement

    + +
    + {{ form_row(form.accompagnement) }} +
    + +
    + {{ form_row(form.accompagnementRQTHDate) }} +
    + +
    + {{ form_row(form.accompagnementComment) }} +
    + {{ form_row(form.prescripteur) }} + + {{ form_row(form.dispositifsNotes) }} + +

    Pôle emploi

    + + {{ form_row(form.poleEmploiId) }} + {{ form_row(form.poleEmploiInscriptionDate) }} + + +

    CAF

    + +
    + {{ form_row(form.cafId) }} +
    +
    + {{ form_row(form.cafInscriptionDate) }} +
    + + +

    Autres informations

    + + + {{ form_row(form.cERInscriptionDate) }} + {{ form_row(form.cERSignataire) }} + {{ form_row(form.pPAEInscriptionDate) }} + {{ form_row(form.pPAESignataire) }} + +
    + {{ form_row(form.nEETEligibilite) }} +
    + +
    + {{ form_row(form.nEETCommissionDate) }} +
    + + {{ form_row(form.fSEMaDemarcheCode) }} + {{ form_row(form.dateContratIEJ) }} + {{ form_row(form.dateAvenantIEJ) }} + {% endblock %} +{% endembed %} +{% endblock %} + +{% block js %} + {{ parent() }} + + +{% endblock js %} \ No newline at end of file diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/dispositifs_view.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/dispositifs_view.html.twig new file mode 100644 index 000000000..569aa7078 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/dispositifs_view.html.twig @@ -0,0 +1,126 @@ +{% extends "ChillPersonBundle::layout.html.twig" %} + +{% set person = entity.getPerson() %} + +{% set activeRouteKey = '' %} +{% set accompagnements = constant('CSConnectes\\SPBundle\\Entity\\CSPerson::ACCOMPAGNEMENTS') %} + + +{% import '@ChillDocStore/Macro/macro.html.twig' as doc %} + +{% block title 'Dispositifs d\'accompagnement de %name%'|trans( { '%name%': person.firstName ~ ' ' ~ person.lastName } ) %} + +{% block personcontent %} +

    {{ 'Dispositifs d\'accompagnement de %name%'|trans( { '%name%': person.firstName ~ ' ' ~ person.lastName } ) }}

    + +

    Accompagnement

    + +
    + +
    Accompagnements
    + {% if entity.accompagnement is null or entity.accompagnement|length == 0 %} +
    {{ null|chill_print_or_message }}
    + {% else %} +
    +
      + {% for e in accompagnements %} + {% if e in entity.accompagnement %} + {% if e == 'autre' %} +
    • Autre:
      {{ entity.accompagnementComment|chill_print_or_message(null, 'blockquote') }}
    • + {% elseif e == 'rqth' %} +
    • {{ ('accompagnement.' ~ e)|trans }} - Date de l'accompagnement: {{ entity.accompagnementRQTHDate|chill_print_or_message }}
    • + {% else %} +
    • {{ ('accompagnement.' ~ e)|trans }}
    • + {% endif %} + {% endif %} + {% endfor %} +
    +
    + {% endif %} + +
    Prescripteur
    + + {% if entity.prescripteur is not null %} +
    {{ entity.prescripteur|chill_entity_render_box({'with_valid_from': false}) }}
    + {% else %} +
    {{ null|chill_print_or_message }}
    + {% endif %} + +
    Notes
    +
    {{ entity.dispositifsNotes|chill_print_or_message("Aucune note", 'blockquote') }}
    +
    + +

    Pôle emploi

    + +
    +
    Identifiant pôle emploi
    +
    {{ entity.poleEmploiId|chill_print_or_message }}
    + +
    Date d'inscription pôle emploi
    +
    {{ entity.poleEmploiInscriptionDate|chill_print_or_message }}
    + +
    + +

    CAF

    + +
    +
    Identifiant CAF
    +
    {{ entity.cafId|chill_print_or_message }}
    + +
    Date d'inscription CAF
    +
    {{ entity.cafInscriptionDate|chill_print_or_message }}
    + +
    + +

    Autres informations

    + +
    + {% for item in [ + ['cERInscriptionDate', 'Date CER'], + ['cERSignataire', 'Signataire CER'], + ['pPAEInscriptionDate', 'Date PPAE'], + ['pPAESignataire', 'Signataire PPAE'], + ] %} +
    {{ item[1] }}
    +
    {{ attribute(entity, item[0])|chill_print_or_message }}
    + {% endfor %} + +
    Éligibilite NEET
    +
    + {% if entity.nEETEligibilite is null %} + {{ null|chill_print_or_message }} + {% elseif entity.nEETEligibilite == 'oui' %} + Oui Date de commission : {{ entity.nEETCommissionDate|chill_print_or_message }} + {% elseif entity.nEETEligibilite == 'non' %} + Non + {% else %} + {{ ('neet_eligibility.' ~ entity.nEETEligibilite)|trans }} + {% endif %} +
    + +
    Code "Ma démarche FSE"
    +
    {{ entity.fSEMaDemarcheCode|chill_print_or_message }}
    + + {% if entity.dateContratIEJ != null or entity.dateAvenantIEJ != null %} +
    IEJ
    +
    + {% if entity.dateContratIEJ != null %} +

    Date du contrat IEJ : {{ entity.dateContratIEJ|localizeddate('long', 'none') }}

    + {% endif %} + {% if entity.dateAvenantIEJ != null %} +

    Date de l'avenant IEJ : {{ entity.dateAvenantIEJ|localizeddate('long', 'none') }}

    + {% endif %} +
    + {% endif %} +
    + + + + +{% endblock personcontent %} + +{% block css %} + +{% endblock %} \ No newline at end of file diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_edit.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_edit.html.twig new file mode 100644 index 000000000..04f73a0ed --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_edit.html.twig @@ -0,0 +1,124 @@ +{% extends '@ChillPerson/CRUD/edit.html.twig' %} + +{% block title 'Situation personnelle de ' ~ entity.person.firstName ~ ' ' ~ entity.person.lastName %} + +{% block personcontent %} +{% embed '@ChillPerson/CRUD/_edit_content.html.twig' %} + {% block crud_content_header %} +

    Situation personnelle

    + {% endblock %} + + {# surcharge le block "retour" par un lien vers la page vue #} + {% block content_form_actions_back %} +
  • + + {{ 'Cancel'|trans }} + +
  • + {% endblock %} + + {% block content_form_actions_view %} + {# no view acceptable #} + {% endblock %} + + {% block content_form_actions_save_and_close %} + {# save and close does not makes sens #} + {% endblock %} + + {% block crud_content_form_rows %} +

    Logement

    + +
    + {{ form_row(form.situationLogement) }} +
    + +
    + {{ form_row(form.situationLogementPrecision) }} +
    + +

    Situation familiale

    + + {{ form_row(form.enfantACharge) }} + {{ form_row(form.personMaritalStatus) }} + +

    Maitrise de la langue

    + + {{ form_row(form.niveauMaitriseLangue) }} + +

    Mobilité

    + + {{ form_row(form.mobiliteMoyenDeTransport) }} + {{ form_row(form.vehiculePersonnel) }} + {{ form_row(form.permisConduire) }} + {{ form_row(form.mobiliteNotes) }} + +

    Situation professionnelle et économique

    + +
    + {{ form_row(form.situationProfessionnelle) }} +
    + + {{ form_row(form.dateFinDernierEmploi) }} + +
    + {{ form_row(form.typeContrat) }} +
    + +
    + {{ form_row(form.typeContratAide) }} +
    + +
    + {{ form_row(form.ressources) }} +
    + +
    + {{ form_row(form.ressourcesComment) }} +
    + + {{ form_row(form.ressourceDate1Versement) }} + {{ form_row(form.cPFMontant) }} + {{ form_row(form.acompteDIF) }} + +

    Situation de handicap

    + +
    + {{ form_row(form.handicapIs) }} +
    + +
    + {{ form_row(form.handicapNotes) }} + {{ form_row(form.handicapRecommandation) }} + {{ form_row(form.handicapAccompagnement) }} +
    + +

    Documents

    + + {{ form_row(form.documentCV) }} + {{ form_row(form.documentAgrementIAE) }} + {{ form_row(form.documentRQTH) }} + {{ form_row(form.documentAttestationNEET) }} + {{ form_row(form.documentCI) }} + {{ form_row(form.documentTitreSejour) }} + {{ form_row(form.documentAttestationFiscale) }} + {{ form_row(form.documentPermis) }} + {{ form_row(form.documentAttestationCAAF) }} + {{ form_row(form.documentContraTravail) }} + {{ form_row(form.documentAttestationFormation) }} + {{ form_row(form.documentQuittanceLoyer) }} + {{ form_row(form.documentFactureElectricite) }} + {{ form_row(form.documentAttestationSecuriteSociale) }} + {% endblock %} +{% endembed %} +{% endblock %} + +{% block css %} + {{ parent() }} + +{% endblock css %} + +{% block js %} + {{ parent() }} + + +{% endblock js %} diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_view.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_view.html.twig new file mode 100644 index 000000000..a0063cabd --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_view.html.twig @@ -0,0 +1,282 @@ +{% extends "ChillPersonBundle::layout.html.twig" %} + +{% set person = entity.getPerson() %} + +{% set activeRouteKey = '' %} +{% set niveaux_maitrise_langue = constant('CSConnectes\\SPBundle\\Entity\\CSPerson::NIVEAU_MAITRISE_LANGUE') %} +{% set permis_conduire = constant('CSConnectes\\SPBundle\\Entity\\CSPerson::PERMIS_CONDUIRE') %} +{% set types_contrat = constant('CSConnectes\\SPBundle\\Entity\\CSPerson::TYPE_CONTRAT') %} +{% set ressources = constant('CSConnectes\\SPBundle\\Entity\\CSPerson::RESSOURCES') %} + +{% import '@ChillDocStore/Macro/macro.html.twig' as doc %} + +{% block title 'Situation personnelle de %name%'|trans( { '%name%': person.firstName ~ ' ' ~ person.lastName } ) %} + +{% block personcontent %} +

    {{ 'Situation personnelle de %name%'|trans( { '%name%': person.firstName ~ ' ' ~ person.lastName } ) }}

    + +

    Logement

    + +
    + +
    Situation de logement
    + {% if entity.situationLogement is not null %} +
    {{ ('situation_logement.' ~ entity.situationLogement)|trans }}
    + {% else %} +
    {{ null|chill_print_or_message("Aucune information") }}
    + {% endif %} + +
    + +

    Situation familiale

    + +
    + +
    Enfants à charge
    + {% if entity.enfantACharge is not null %} +
    + {% if entity.enfantACharge == 0 %}Aucun enfant{% elseif entity.enfantACharge == 1 %}Un enfant{% else %}{{ entity.enfantACharge }} enfants{% endif %} à charge
    + {% else %} +
    {{ null|chill_print_or_message }}
    + {% endif %} + +
    {{'Marital status'|trans}} :
    +
    + {% if entity.person.maritalStatus is not null %} + {{ entity.person.maritalStatus.name|localize_translatable_string }} + {% else %} + {{ 'No data given'|trans }} + {% endif %} +
    + +
    + +

    Maitrise de la langue

    + +
    + +
    Niveau de maitrise de la langue française
    + {% if entity.niveauMaitriseLangue is null or entity.niveauMaitriseLangue|length == 0 %} +
    {{ null|chill_print_or_message }}
    + {% else %} +
    +
      + {% for niveau in niveaux_maitrise_langue %} + {% if niveau in entity.niveauMaitriseLangue %} +
    • {{ ('niveau_maitrise_langue.' ~ niveau)|trans }}
    • + {% endif %} + {% endfor %} +
    +
    + {% endif %} +
    + +

    Mobilité

    + + +
    + +
    Moyens de transports accessibles
    +
    + {% if entity.mobiliteMoyenDeTransport is null or entity.mobiliteMoyenDeTransport|length == 0 %} + {{ null|chill_print_or_message("Aucun moyen de transport renseigné") }} + {% else %} +
      + {% for e in entity.mobiliteMoyenDeTransport %} +
    • {{ ('moyen_transport.' ~ e)|trans }}
    • + {% endfor %} +
    + {% endif %} +
    + +
    Véhicule Personnel
    + {% if entity.vehiculePersonnel is null %} +
    {{ null|chill_print_or_message }}
    + {% elseif entity.vehiculePersonnel == true %} +
    A un véhicule personnel
    + {% else %} +
    N'a pas de véhicule personnel
    + {% endif %} + +
    Permis de conduire
    + {% if entity.permisConduire is null or entity.permisConduire|length == 0 %} +
    {{ null|chill_print_or_message }}
    + {% else %} +
    +
      + {% for e in permis_conduire %} + {% if e in entity.permisConduire %} +
    • {{ ('permis_conduire.' ~ e)|trans }}
    • + {% endif %} + {% endfor %} +
    +
    + {% endif %} + +
    Notes concernant la mobilité
    +
    + {{ entity.mobiliteNotes|chill_print_or_message("Aucune note", 'blockquote') }} +
    +
    + +

    Situation professionnelle et économique

    + +
    + +
    Situation professionnelle
    + {% if entity.situationProfessionnelle is not null %} +
    {{ ('situation_professionnelle.' ~ entity.situationProfessionnelle)|trans }}
    + {% else %} +
    {{ null|chill_print_or_message }}
    + {% endif %} + +
    Date de fin du dernier emploi
    + {% if entity.dateFinDernierEmploi is not null %} +
    {{ entity.dateFinDernierEmploi|localizeddate('medium', 'none') }} + {% else %} +
    {{ null|chill_print_or_message }}
    + {% endif %} + + {% if entity.situationProfessionnelle == 'en_activite' %} +
    Type de contrat
    + {% if entity.typeContrat is null or entity.typeContrat|length == 0 %} +
    {{ null|chill_print_or_message }}
    + {% else %} +
    +
      + {% for e in types_contrat %} + {% if e in entity.typeContrat %} +
    • {{ ('type_contrat.' ~ e)|trans }}
    • + {% endif %} + {% endfor %} +
    +
    + {% endif %} + {% endif %} + +
    Ressources
    + {% if entity.ressources is null or entity.ressources|length == 0 %} +
    {{ null|chill_print_or_message }}
    + {% else %} +
    +
      + {% for e in ressources %} + {% if e in entity.ressources %} + {% if e == 'autre' %} +
    • Autre: {{ entity.ressourcesComment|chill_print_or_message }}
    • + {% else %} +
    • {{ ('ressource.' ~ e)|trans }}
    • + {% endif %} + {% endif %} + {% endfor %} +
    +
    + {% endif %} + +
    Date du premier versement
    + {% if entity.ressourceDate1Versement is not null %} +
    {{ entity.ressourceDate1Versement|localizeddate('medium', 'none') }} + {% else %} +
    {{ null|chill_print_or_message }}
    + {% endif %} + +
    Montant CPF
    + {% if entity.cPFMontant is not null %} +
    {{ entity.cPFMontant|localizedcurrency('EUR') }}
    + {% else %} +
    {{ null|chill_print_or_message }}
    + {% endif %} + + +
    Montant acompte DIF
    + {% if entity.acompteDIF is not null %} +
    {{ entity.acompteDIF|localizedcurrency('EUR') }}
    + {% else %} +
    {{ null|chill_print_or_message }}
    + {% endif %} + +
    + +

    Handicap

    + +
    +
    Handicap ?
    +
    + {% if entity.handicapIs is null %} + {{ null|chill_print_or_message }} + {% elseif entity.handicapIs %} + Oui
    +
    + Type de handicap : {{ entity.handicapNotes|chill_print_or_message("Aucune précision", 'blockquote') }} + {% else %} + Non + {% endif %} +
    + + {% if entity.handicapIs %} +
    Recommandation
    +
    + {% if entity.handicapRecommandation is null %} + {{ null|chill_print_or_message("Aucune recommandation renseignée") }} + {% else %} + {{ ('handicap_recommandation.' ~ entity.handicapRecommandation)|trans }} + {% endif %} +
    + +
    Accompagnement
    + {% if entity.handicapAccompagnement is not null %} +
    {{ entity.handicapAccompagnement.name }}
    + {% else %} +
    {{ null|chill_print_or_message }}
    + {% endif %} + {% endif %} +
    + +

    Documents

    + +
    + + {% for r in [ + ['documentCV', 'CV'], + ['documentAgrementIAE', 'Document Agrément AIE'], + ['documentRQTH', 'Document RQTH'], + ['documentAttestationNEET', 'Attestation NEET'], + ['documentCI', "Carte d'identité"], + ['documentTitreSejour', 'Titre de séjour'], + ['documentAttestationFiscale', 'Attestation fiscale'], + ['documentPermis', 'Permis'], + ['documentAttestationCAAF', 'Attestation CAAF'], + ['documentContraTravail', 'Contrat de travail'], + ['documentAttestationFormation', 'Attestation formation'], + ['documentQuittanceLoyer', 'Quittance de loyer'], + ['documentFactureElectricite', "Facture d'électricité"], + ['documentAttestationSecuriteSociale', "Attestation sécurité sociale"], + ] %} + +
    {{ r[1] }}
    + {% set document = attribute(entity, r[0]) %} + {% if document is null %} +
    {{ null|chill_print_or_message("Aucun document") }}
    + {% else %} +
    {{ doc.download_button(document, r[1] ~ " de " ~ person.firstName ~ " " ~ person.lastName) }}
    + {% endif %} + + {% endfor %} + +
    + + + +{% endblock %} + +{% block css %} + {{ parent() }} + +{% endblock css %} + +{% block js %} + {{ parent() }} + +{% endblock js %} \ No newline at end of file diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CV/edit.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CV/edit.html.twig new file mode 100644 index 000000000..96b9428ce --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CV/edit.html.twig @@ -0,0 +1,61 @@ +{% extends '@ChillPerson/layout.html.twig' %} + +{% set person = entity.person %} +{% set activeRouteKey = '' %} + +{% block title %} +{% include('@ChillMain/CRUD/_edit_title.html.twig') %} +{% endblock title %} + +{% form_theme form _self %} +{% block csconnectes_spbundle_cv_formation_widget %} +
    + {{ form_row(form.title) }} + {{ form_row(form.organisme) }} + {{ form_row(form.startDate) }} + {{ form_row(form.endDate) }} +
    + {{ form_row(form.diplomaObtained) }} +
    +
    + {{ form_row(form.diplomaReconnue) }} +
    +
    + +{% endblock %} + +{% block personcontent %} +{% embed '@ChillPerson/CRUD/_edit_content.html.twig' %} + {% block crud_content_form_rows %} + + + + + {{ form_row(form.reportDate) }} + {{ form_row(form.formationLevel) }} + {{ form_row(form.formationType) }} + {{ form_row(form.spokenLanguages) }} + +

    Formations

    + {{ form_widget(form.formations) }} + +

    Expériences

    + {{ form_widget(form.experiences) }} + +

    Notes

    + {{ form_widget(form.notes) }} + {% endblock crud_content_form_rows %} + + {% block content_form_actions_back %} +
  • + + {{ 'Cancel'|trans }} + +
  • + {% endblock %} +{% endembed %} +{% endblock %} + +{% block css %} + +{% endblock css %} \ No newline at end of file diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CV/new.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CV/new.html.twig new file mode 100644 index 000000000..c7842f048 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CV/new.html.twig @@ -0,0 +1,61 @@ +{% extends '@ChillPerson/layout.html.twig' %} + +{% set person = entity.person %} +{% set activeRouteKey = '' %} + +{% block title %} +{% embed('@ChillPerson/CRUD/_new_title.html.twig') %}{% endembed %} +{% endblock %} + +{% form_theme form _self %} +{% block csconnectes_spbundle_cv_formation_widget %} +
    + {{ form_row(form.title) }} + {{ form_row(form.organisme) }} + {{ form_row(form.startDate) }} + {{ form_row(form.endDate) }} +
    + {{ form_row(form.diplomaObtained) }} +
    +
    + {{ form_row(form.diplomaReconnue) }} +
    +
    + +{% endblock %} + +{% block personcontent %} +{% embed '@ChillMain/CRUD/_new_content.html.twig' %} + {% block crud_content_header %} +

    {{ ('crud.'~crud_name~'.title_new')|trans({'%person%': person|chill_entity_render_string }) }}

    + {% endblock crud_content_header %} + + {% block crud_content_form_rows %} + {{ form_row(form.reportDate) }} + {{ form_row(form.formationLevel) }} + {{ form_row(form.formationType) }} + {{ form_row(form.spokenLanguages) }} + +

    Formations

    + {{ form_widget(form.formations) }} + +

    Expériences

    + {{ form_widget(form.experiences) }} + +

    Notes

    + {{ form_widget(form.notes) }} + {% endblock crud_content_form_rows %} + + {% block content_form_actions_back %} +
  • + + {{ 'Cancel'|trans }} + +
  • + {% endblock %} +{% endembed %} +{% endblock %} + +{% block css %} + +{% endblock css %} \ No newline at end of file diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CV/view.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CV/view.html.twig new file mode 100644 index 000000000..cf9c3a962 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CV/view.html.twig @@ -0,0 +1,142 @@ +{% extends '@ChillPerson/CRUD/view.html.twig' %} + +{% block personcontent %} +{% embed '@ChillPerson/CRUD/_view_content.html.twig' %} + {% block crud_content_header %} +

    {{ ('crud.' ~ crud_name ~ '.title_view')|trans({'%person%': person|chill_entity_render_string }) }}

    + {% endblock crud_content_header %} + + {% block crud_content_view_details %} +
    +
    Date du rapport
    +
    {{ entity.reportDate|localizeddate('long', 'none') }}
    + +

    Compétences

    + +
    Langues parlées
    +
    + {% if entity.spokenLanguages is null or entity.spokenLanguages|length == 0 %} + {{ null|chill_print_or_message }} + {% else %} + {% for lang in entity.spokenLanguages %} + {{ lang.name|localize_translatable_string }}{% if not loop.last %},{% endif %} + {% endfor %} + {% endif %} +
    + +

    Formation

    + +
    Niveau de formation
    +
    + {{ (entity.formationLevel is null ? null : ('formation_level.' ~ entity.formationLevel))|chill_print_or_message("Aucune information") }} +
    + +
    Type de formation
    +
    + {{ (entity.formationType is null ? null : ('formation_type.' ~ entity.formationType))|chill_print_or_message("Aucune information") }} +
    +
    + +

    Formations suivies

    + +
    + {% for f in entity.formations %} +
    +

    {{ f.title }}{% if f.organisme is not empty %} auprès de {{ f.organisme }}{% endif %}

    + +
    + +
    Dates de formation
    +
    + {% if f.startDate is null and f.endDate is null %} + {{ null|chill_print_or_message("Aucune date indiquée") }} + {% elseif f.startDate is null %} + Jusqu'au {{ f.endDate|localizeddate('long', 'none') }} (date de début inconnue) + {% elseif f.endDate is null %} + Depuis le {{ f.startDate|localizeddate('long', 'none') }} (date de fin inconnue) + {% else %} + Du {{ f.startDate|localizeddate('long', 'none') }} au {{ f.endDate|localizeddate('long', 'none') }} + {% endif %} +
    + +
    Diplôme
    +
    +

    Diplôme obtenu: {{ (f.diplomaObtained is null ? null : ('diploma_obtained.' ~ f.diplomaObtained))|chill_print_or_message("Aucune information") }}

    +

    Diplôme reconnu en France: {{ (f.diplomaReconnue is null ? null : ('diploma_reconnu.' ~ f.diplomaReconnue))|chill_print_or_message("Aucune information") }}

    +
    +
    +
    + {% else %} +

    Aucune formation renseignée

    + {% endfor %} +
    + +

    Expériences

    + +
    + {% for f in entity.experiences %} +
    +

    {{ f.poste }} {% if f.structure is not empty %}auprès de {{ f.structure }}{% endif %}

    + +
    + +
    Dates de l'expérience
    +
    + {% if f.startDate is null and f.endDate is null %} + {{ null|chill_print_or_message("Aucune date indiquée") }} + {% elseif f.startDate is null %} + Jusqu'au {{ f.endDate|localizeddate('long', 'none') }} (date de début inconnue) + {% elseif f.endDate is null %} + Depuis le {{ f.startDate|localizeddate('long', 'none') }} (date de fin inconnue) + {% else %} + Du {{ f.startDate|localizeddate('long', 'none') }} au {{ f.endDate|localizeddate('long', 'none') }} + {% endif %} +
    + +
    Type de contrat
    +
    + {{ (f.contratType is null ? null : ('xp_contrat_type.'~f.contratType))|chill_print_or_message }} +
    + + {% if f.notes is not empty %} +
    Notes
    +
    + {{ f.notes|chill_print_or_message(null, 'blockquote') }} +
    + {% endif %} +
    +
    + {% else %} +

    Aucune formation renseignée

    + {% endfor %} +
    + + +

    Note

    + + {{ entity.notes|chill_print_or_message("Aucune note", 'blockquote') }} + {% endblock crud_content_view_details %} + + {% block content_view_actions_back %} +
  • + + {{ 'Cancel'|trans }} + +
  • + {% endblock %} +{% endembed %} +{% endblock %} + +{% block css %} + +{% endblock %} \ No newline at end of file diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Frein/edit.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Frein/edit.html.twig new file mode 100644 index 000000000..8e022d6b1 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Frein/edit.html.twig @@ -0,0 +1,20 @@ +{% extends '@ChillPerson/layout.html.twig' %} + +{% set person = entity.person %} +{% set activeRouteKey = '' %} + +{% block title %} +{% include('@ChillMain/CRUD/_edit_title.html.twig') %} +{% endblock title %} + +{% block personcontent %} +{% embed '@ChillPerson/CRUD/_edit_content.html.twig' %} + {% block content_form_actions_back %} +
  • + + {{ 'Cancel'|trans }} + +
  • + {% endblock %} +{% endembed %} +{% endblock %} \ No newline at end of file diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Frein/new.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Frein/new.html.twig new file mode 100644 index 000000000..be8d2a84a --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Frein/new.html.twig @@ -0,0 +1,23 @@ +{% extends '@ChillPerson/layout.html.twig' %} + +{% set person = entity.person %} +{% set activeRouteKey = '' %} + +{% block title %} +{% embed('@ChillPerson/CRUD/_new_title.html.twig') %}{% endembed %} +{% endblock %} + +{% block personcontent %} +{% embed '@ChillMain/CRUD/_new_content.html.twig' %} + {% block crud_content_header %} +

    {{ ('crud.'~crud_name~'.title_new')|trans({'%person%': person|chill_entity_render_string }) }}

    + {% endblock crud_content_header %} + {% block content_form_actions_back %} +
  • + + {{ 'Cancel'|trans }} + +
  • + {% endblock %} +{% endembed %} +{% endblock %} diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Frein/view.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Frein/view.html.twig new file mode 100644 index 000000000..e32d4a453 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Frein/view.html.twig @@ -0,0 +1,58 @@ +{% extends '@ChillPerson/CRUD/view.html.twig' %} + +{% block personcontent %} +{% embed '@ChillPerson/CRUD/_view_content.html.twig' %} + {% block crud_content_header %} +

    {{ ('crud.' ~ crud_name ~ '.title_view')|trans({'%person%': person|chill_entity_render_string }) }}

    + {% endblock crud_content_header %} + + {% block crud_content_view_details %} +
    +
    Date du rapport
    +
    {{ entity.reportDate|localizeddate('long', 'none') }}
    + +
    Freins identifiés
    +
    + {% if entity.freinsPerso|length > 0 %} +
      + {% for e in entity.freinsPerso %} +
    • {{ ('freins_perso.' ~ e)|trans }}
    • + {% endfor %} +
    + {% else %} +

    {{ null|chill_print_or_message("Aucun frein personnel renseigné") }} + {% endif %} + + {% if entity.notesPerso is not empty %} + {{ entity.notesPerso|chill_print_or_message(null, 'blockquote') }} + {% endif %} +

    + +
    Freins d'accès à l'emploi
    +
    + {% if entity.freinsEmploi|length > 0 %} +
      + {% for e in entity.freinsEmploi %} +
    • {{ ('freins_emploi.' ~ e)|trans }}
    • + {% endfor %} +
    + {% else %} +

    {{ null|chill_print_or_message("Aucun frein à l'emploi renseigné") }} + {% endif %} + + {% if entity.notesEmploi is not empty %} + {{ entity.notesEmploi|chill_print_or_message(null, 'blockquote') }} + {% endif %} +

    +
    + {% endblock crud_content_view_details %} + + {% block content_view_actions_back %} +
  • + + {{ 'Cancel'|trans }} + +
  • + {% endblock %} +{% endembed %} +{% endblock %} \ No newline at end of file diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit-bilan.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit-bilan.html.twig new file mode 100644 index 000000000..37ca1f40a --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit-bilan.html.twig @@ -0,0 +1,92 @@ +{% extends '@ChillPerson/layout.html.twig' %} + +{% set person = entity.person %} +{% set activeRouteKey = '' %} + +{% block title %} +Bilan d'immersion +{% endblock title %} + +{% block personcontent %} +{% embed '@ChillPerson/CRUD/_edit_content.html.twig' %} + {% block crud_content_header %} +

    Bilan d'immersion

    + {% endblock crud_content_header %} + + {% block content_form_actions_back %} +
  • + + {{ 'Cancel'|trans }} + +
  • + {% endblock %} + + {% block crud_content_form_rows %} +

    + Immersion du {{ entity.debutDate|localizeddate('long', 'none') }} au {{ entity.getDateEndComputed|localizeddate('long', 'none') }}, + auprès de

    {{ entity.entreprise.name }}
    + Domaine d'activité: {{ entity.domaineActivite }} +

    + Modifier +

    + +

    Savoir-être du jeune

    + + {{ form_widget(form.savoirEtre) }} + + {{ form_row(form.savoirEtreNote) }} + +

    Ponctualité

    + + {{ form_row(form.ponctualiteSalarie) }} + {{ form_row(form.ponctualiteSalarieNote) }} + +

    Assiduité

    + {{ form_row(form.assiduite) }} + {{ form_row(form.assiduiteNote) }} + +

    Intégration

    + {{ form_row(form.interetActivite) }} + {{ form_row(form.interetActiviteNote) }} + + {{ form_row(form.integreRegle) }} + {{ form_row(form.integreRegleNote) }} + +

    Autonomie

    + {{ form_row(form.espritInitiative) }} + {{ form_row(form.espritInitiativeNote) }} + + {{ form_row(form.organisation) }} + {{ form_row(form.organisationNote) }} + +

    Attitude

    + {{ form_row(form.capaciteTravailEquipe) }} + {{ form_row(form.capaciteTravailEquipeNote) }} + +

    Posture professionnelle

    + {{ form_row(form.styleVestimentaire) }} + {{ form_row(form.styleVestimentaireNote) }} + + {{ form_row(form.langageProf) }} + {{ form_row(form.langageProfNote) }} + +

    Relation avec la hiérarchie

    + {{ form_row(form.appliqueConsigne) }} + {{ form_row(form.appliqueConsigneNote) }} + + {{ form_row(form.respectHierarchie) }} + {{ form_row(form.respectHierarchieNote) }} + +

    Savoir-faire développés

    + + {{ form_row(form.principalesActivites) }} + {{ form_row(form.competencesAcquises) }} + {{ form_row(form.competencesADevelopper) }} + +

    Notes

    + + {{ form_widget(form.noteBilan) }} + + {% endblock %} +{% endembed %} +{% endblock %} \ No newline at end of file diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit.html.twig new file mode 100644 index 000000000..aacfc14fd --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit.html.twig @@ -0,0 +1,65 @@ +{% extends '@ChillPerson/layout.html.twig' %} + +{% set person = entity.person %} +{% set activeRouteKey = '' %} + +{% block title %} +{% include('@ChillMain/CRUD/_edit_title.html.twig') %} +{% endblock title %} + +{% block personcontent %} +{% embed '@ChillPerson/CRUD/_edit_content.html.twig' %} + {% block content_form_actions_back %} +
  • + + {{ 'Cancel'|trans }} + +
  • + {% endblock %} + + {% block crud_content_form_rows %} + {{ form_row(form.entreprise) }} + {{ form_row(form.domaineActivite) }} + +

    Tuteur

    + + {{ form_row(form.tuteurName) }} + {{ form_row(form.tuteurFonction) }} + {{ form_row(form.tuteurPhoneNumber) }} + +

    Structure d'accompagnement

    + + {{ form_row(form.structureAccName) }} + {{ form_row(form.structureAccPhonenumber) }} + {{ form_row(form.structureAccEmail) }} + {{ form_widget(form.structureAccAddress) }} + +

    Descriptif du poste occupé

    + + {{ form_row(form.posteTitle) }} + {{ form_row(form.posteLieu) }} + {{ form_row(form.debutDate) }} + {{ form_row(form.duration) }} + {{ form_row(form.horaire) }} + +

    Objectifs

    + +
    + {{ form_widget(form.objectifs) }} +
    + +
    + {{ form_row(form.objectifsAutre) }} +
    + +

    Notes

    + + {{ form_widget(form.noteImmersion) }} + + {% endblock %} +{% endembed %} +{% endblock %} + +{% block js %} + +{% endblock %} \ No newline at end of file diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/new.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/new.html.twig new file mode 100644 index 000000000..eeeb1b2c4 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/new.html.twig @@ -0,0 +1,68 @@ +{% extends '@ChillPerson/layout.html.twig' %} + +{% set person = entity.person %} +{% set activeRouteKey = '' %} + +{% block title %} +{% embed('@ChillPerson/CRUD/_new_title.html.twig') %}{% endembed %} +{% endblock %} + +{% block personcontent %} +{% embed '@ChillMain/CRUD/_new_content.html.twig' %} + {% block crud_content_header %} +

    {{ ('crud.'~crud_name~'.title_new')|trans({'%person%': person|chill_entity_render_string }) }}

    + {% endblock crud_content_header %} + {% block content_form_actions_back %} +
  • + + {{ 'Cancel'|trans }} + +
  • + {% endblock %} + + {% block crud_content_form_rows %} + {{ form_row(form.entreprise) }} + {{ form_row(form.domaineActivite) }} + +

    Tuteur

    + + {{ form_row(form.tuteurName) }} + {{ form_row(form.tuteurFonction) }} + {{ form_row(form.tuteurPhoneNumber) }} + +

    Structure d'accompagnement

    + + {{ form_row(form.structureAccName) }} + {{ form_row(form.structureAccPhonenumber) }} + {{ form_row(form.structureAccEmail) }} + {{ form_widget(form.structureAccAddress) }} + +

    Descriptif du poste occupé

    + + {{ form_row(form.posteTitle) }} + {{ form_row(form.posteLieu) }} + {{ form_row(form.debutDate) }} + {{ form_row(form.duration) }} + {{ form_row(form.horaire) }} + +

    Objectifs

    + +
    + {{ form_widget(form.objectifs) }} +
    + +
    + {{ form_row(form.objectifsAutre) }} +
    + +

    Notes

    + + {{ form_widget(form.noteImmersion) }} + + {% endblock %} +{% endembed %} +{% endblock %} + +{% block js %} + +{% endblock %} diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/view.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/view.html.twig new file mode 100644 index 000000000..d5f789431 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/view.html.twig @@ -0,0 +1,209 @@ +{% extends '@ChillPerson/CRUD/view.html.twig' %} + +{% block personcontent %} +{% embed '@ChillPerson/CRUD/_view_content.html.twig' %} + {% block crud_content_header %} +

    {{ ('crud.' ~ crud_name ~ '.title_view')|trans({'%person%': person|chill_entity_render_string }) }}

    + {% endblock crud_content_header %} + + {% block crud_content_view_details %} + {% import 'ChillMainBundle:Address:macro.html.twig' as macro_address %} + +
    +

    Entreprise

    + +
    Entreprise
    +
    {{ entity.entreprise|chill_entity_render_box({'with_valid_from': false}) }}
    + +
    Domaine d'activité
    +
    {{ entity.domaineActivite }}
    + +

    Tuteur

    + +
    Nom du tuteur
    +
    {{ entity.tuteurName }}
    + +
    Fonction du tuteur
    +
    {{ entity.tuteurFonction }}
    + + {% if entity.tuteurPhoneNumber is not empty %} +
    Téléphone du tuteur
    +
    +
    {{ entity.tuteurPhoneNumber|chill_format_phonenumber }}
    +
    + {% endif %} + +

    Structure d'accompagnement

    + +
    + {% for el in ['structureAccName', 'structureAccPhonenumber', 'structureAccEmail'] %} + {% set el_data = attribute(entity, el) %} + {% if el_data is not empty %}{{ el_data }}
    {% endif %} + {% endfor %} + {% if entity.structureAccAddress is not empty %} + {{ macro_address._render(entity.structureAccAddress, { 'with_valid_from': false }) }} + {% endif %} +
    + +

    Poste occupé

    + +
    Titre
    +
    {{ entity.posteTitle|chill_print_or_message }}
    + +
    Lieu du poste
    +
    {{ entity.posteLieu|chill_print_or_message }}
    + +
    Dates
    +
    Du {{ entity.debutDate|localizeddate('long', 'none') }} + au {{ entity.getDateEndComputed|localizeddate('long', 'none') }} +
    + +
    Horaire
    +
    {{ entity.horaire|nl2br }}
    + +

    Objectifs

    + +
    Objectifs
    +
    + {% for el in entity.objectifs %} + {% if loop.first %}
      {% endif %} +
    • {{ ('immersion_objectif.' ~ el)|trans }}
    • + {% if loop.last %}
    {% endif %} + {% else %} +

    Aucun objectif renseigné

    + {% endfor %} + + {% if 'autre' in entity.objectifs and entity.objectifsAutre is not empty %} + +
    + {{ entity.objectifsAutre|nl2br }} +
    + {% endif %} +
    + +

    Note

    + +
    + {{ entity.noteImmersion|chill_print_or_message('Aucune note') }} +
    + + {% if entity.isBilanFullfilled %} +

    Bilan

    + +

    Savoir-êtres du jeune

    + +
    Savoir-être du jeune
    +
    + {% for el in entity.savoirEtre %} + {% if loop.first %}
      {% endif %} +
    • {{ ('immersion_savoir_etre.' ~ el)|trans }}
    • + {% if loop.last %}
    {% endif %} + {% else %} +

    Aucun élément indiqué

    + {% endfor %} + + {% if entity.savoirEtreNote is not empty %} + {{ entity.savoirEtreNote|chill_print_or_message(null, 'blockquote') }} + {% endif %} +
    + + {% for line in [ + ['Ponctualité'], + ['ponctualiteSalarie', "Ponctualité du salarié"], + ['Assiduité'], + ['assiduite', "Assiduité"], + ['Intégration'], + ['interetActivite', "La personne s’intéresse à l’ensemble des activités et membres de l’entreprise"], + ['integreRegle', "La personne a intégré les règles (les principes) de l’entreprise"], + ['Autonomie'], + ['espritInitiative', "La personne fait preuve d’esprit d’initiative"], + ['organisation', "La personne a fait preuve d’organisation"], + ['Attitude'], + ['capaciteTravailEquipe', "Capacité à travailler à en équipe"], + ['Posture professionnelle'], + ['styleVestimentaire', 'Style vestimentaire adapté'], + ['langageProf', "Langage professionnel"], + ['Relation avec la hiérarchie'], + ['appliqueConsigne', "Applique les consignes"], + ['respectHierarchie', "Respecte les niveaux hiérarchiques"], + ] %} + {% if line|length == 1 %} +

    {{ line[0] }}

    + {% else %} + +
    {{ line[1] }}
    +
    + {% set attr = attribute(entity, line[0]) %} + {% if attr != null %} + {% if attr in constant('CSConnectes\\SPBundle\\Entity\\Immersion::YES_NO_NSP') %} + {{ ('immersion_nsp.'~attr)|trans }} + {% else %} + {{ ('immersion_' ~ line[0] ~ '.' ~ attr)|trans }} + {% endif %} + {% else %} + {{ null|chill_print_or_message("Aucune information") }} + {% endif %} + {% set note = attribute(entity, (line[0] ~ 'Note')) %} + {% if note != null %} + {{ note|chill_print_or_message(null, 'blockquote') }} + {% endif %} +
    + {% endif %} + {% endfor %} + + {% if entity.principalesActivites is not empty + or entity.competencesAcquises is not empty + or entity.competencesADevelopper is not empty %} +

    Savoir-faire développés

    + + {% for el in ['principalesActivites', 'competencesAcquises','competencesADevelopper'] %} + {% set data = attribute(entity, el) %} + {% if data is not empty %} +
    {% if el == 'principalesActivites' %} + Principales activités + {% elseif el == 'competencesAcquises' %} + Compétences acquises + {% else %} + Compétences à développer + {% endif %}
    +
    + {{ data|chill_print_or_message(null, 'blockquote') }} +
    + {% endif %} + {% endfor %} + + {% endif %} + + {% if entity.noteBilan is not empty %} +

    Note

    + +
    + {{ entity.noteBilan|chill_print_or_message(null, 'blockquote') }} +
    + + {% endif %} + {% endif %} +
    + {% endblock crud_content_view_details %} + + {% block content_view_actions_back %} +
  • + + {{ 'Cancel'|trans }} + +
  • + {% endblock %} + {% block content_view_actions_after %} +
  • + + + Bilan + +
  • + {% endblock %} +{% endembed %} +{% endblock %} + +{% block css %} + +{% endblock %} \ No newline at end of file diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/edit.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/edit.html.twig new file mode 100644 index 000000000..335019564 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/edit.html.twig @@ -0,0 +1,52 @@ +{% extends '@ChillPerson/layout.html.twig' %} + +{% set person = entity.person %} +{% set activeRouteKey = '' %} + +{% block title %} +{% include('@ChillMain/CRUD/_edit_title.html.twig') %} +{% endblock title %} + +{% block personcontent %} +{% embed '@ChillPerson/CRUD/_edit_content.html.twig' %} + {% block crud_content_header %} +

    {{ ('crud.'~crud_name~'.title_edit')|trans({'%person%': person|chill_entity_render_string }) }}

    + {% endblock crud_content_header %} + + {% block crud_content_form_rows %} + {{ form_row(form.reportDate) }} + +

    Orientation souhaitée

    + + {{ form_row(form.souhait) }} + {{ form_row(form.domaineActiviteSouhait) }} + + {{ form_row(form.typeContrat) }} + {{ form_row(form.typeContratNotes) }} + + {{ form_row(form.volumeHoraire) }} + {{ form_row(form.volumeHoraireNotes) }} + +

    Projet professionnel

    + + {{ form_row(form.idee) }} + {{ form_row(form.enCoursConstruction) }} + + {{ form_row(form.valide) }} + {{ form_row(form.domaineActiviteValide) }} + {{ form_row(form.valideNotes) }} + +

    Notes

    + + {{ form_widget(form.projetProfessionnelNote) }} + {% endblock %} + + {% block content_form_actions_back %} +
  • + + {{ 'Cancel'|trans }} + +
  • + {% endblock %} +{% endembed %} +{% endblock %} diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/new.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/new.html.twig new file mode 100644 index 000000000..c27a45419 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/new.html.twig @@ -0,0 +1,52 @@ +{% extends '@ChillPerson/layout.html.twig' %} + +{% set person = entity.person %} +{% set activeRouteKey = '' %} + +{% block title %} +{% embed('@ChillPerson/CRUD/_new_title.html.twig') %}{% endembed %} +{% endblock %} + +{% block personcontent %} +{% embed '@ChillMain/CRUD/_new_content.html.twig' %} + {% block crud_content_header %} +

    {{ ('crud.'~crud_name~'.title_new')|trans({'%person%': person|chill_entity_render_string }) }}

    + {% endblock crud_content_header %} + + {% block crud_content_form_rows %} + {{ form_row(form.reportDate) }} + +

    Orientation souhaitée

    + + {{ form_row(form.souhait) }} + {{ form_row(form.domaineActiviteSouhait) }} + + {{ form_row(form.typeContrat) }} + {{ form_row(form.typeContratNotes) }} + + {{ form_row(form.volumeHoraire) }} + {{ form_row(form.volumeHoraireNotes) }} + +

    Projet professionnel

    + + {{ form_row(form.idee) }} + {{ form_row(form.enCoursConstruction) }} + + {{ form_row(form.valide) }} + {{ form_row(form.domaineActiviteValide) }} + {{ form_row(form.valideNotes) }} + +

    Notes

    + + {{ form_widget(form.projetProfessionnelNote) }} + {% endblock %} + + {% block content_form_actions_back %} +
  • + + {{ 'Cancel'|trans }} + +
  • + {% endblock %} +{% endembed %} +{% endblock %} diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/view.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/view.html.twig new file mode 100644 index 000000000..ba221ef62 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/view.html.twig @@ -0,0 +1,108 @@ +{% extends '@ChillPerson/CRUD/view.html.twig' %} + +{% block personcontent %} +{% embed '@ChillPerson/CRUD/_view_content.html.twig' %} + {% block crud_content_header %} +

    {{ ('crud.' ~ crud_name ~ '.title_view')|trans({'%person%': person|chill_entity_render_string }) }}

    + {% endblock crud_content_header %} + + {% block crud_content_view_details %} +
    +
    Date
    +
    {{ entity.reportDate|localizeddate('long', 'none') }}
    + +

    Souhaits

    + +
    Orientation souhaitée
    +
    + {% for r in entity.souhait %} + {% if loop.first %}
      {% endif %} +
    • {{ r.libelle }} ({{ r.metier.code }} - {{ r.metier.libelle }})
    • + {% if loop.last %}
    {% endif %} + {% else %} +

    Aucune orientation indiquée

    + {% endfor %} + {% if entity.domaineActiviteSouhait is not empty %} +

    Domaine d'activité souhaité :

    +
    {{ entity.domaineActiviteSouhait|nl2br }}
    + {% endif %} +
    + +
    Type de contrat recherché
    +
    + {% for type in entity.typeContrat %} + {% if loop.first %}
      {% endif %} +
    • {{ ('projet_prof.type_contrat.' ~ type)|trans }}
    • + {% if loop.last %}
    {% endif %} + {% endfor %} + + {% if entity.typeContratNotes is not empty %} +
    {{ entity.typeContratNotes|nl2br }}
    + {% endif %} +
    + +
    Volume horaire souhaité
    +
    + {% for type in entity.volumeHoraire %} + {% if loop.first %}
      {% endif %} +
    • {{ ('projet_prof.volume_horaire.' ~ type)|trans }}
    • + {% if loop.last %}
    {% endif %} + {% endfor %} + + {% if entity.volumeHoraireNotes is not empty %} +
    {{ entity.volumeHoraireNotes|nl2br }}
    + {% endif %} +
    + +

    Projet professionnel

    + +
    Idée
    +
    + {{ entity.idee|chill_print_or_message('Aucune information', 'blockquote') }} +
    + +
    En cours de construction
    +
    + {{ entity.enCoursConstruction|chill_print_or_message('Aucune information', 'blockquote') }} +
    + +
    Validé
    +
    + {% for r in entity.valide %} + {% if loop.first %}
      {% endif %} +
    • {{ r.libelle }} ({{ r.metier.code }} - {{ r.metier.libelle }})
    • + {% if loop.last %}
    {% endif %} + {% else %} +

    Aucune orientation indiquée

    + {% endfor %} + + {% if entity.valideNotes is not empty %} +
    + {{ entity.valideNotes|nl2br }} +
    + {% endif %} + {% if entity.domaineActiviteValide is not empty %} +

    Domaine d'activité validé :

    +
    {{ entity.domaineActiviteValide|nl2br }}
    + {% endif %} +
    +
    + +

    Notes

    + + {{ entity.projetProfessionnelNote|chill_print_or_message('Aucune note', 'blockquote') }} + + + {% endblock crud_content_view_details %} + + {% block content_view_actions_back %} +
  • + + {{ 'Cancel'|trans }} + +
  • + {% endblock %} + {% block content_view_actions_after %} + {% endblock %} +{% endembed %} +{% endblock %} \ No newline at end of file diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Report/delete.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Report/delete.html.twig new file mode 100644 index 000000000..d805dfdac --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Report/delete.html.twig @@ -0,0 +1,16 @@ +{% extends '@ChillPerson/layout.html.twig' %} + +{% set person = entity.person %} +{% set activeRouteKey = '' %} + +{% block personcontent %} +{% embed '@ChillMain/CRUD/_delete_content.html.twig' %} + {% block content_form_actions_back %} +
  • + + {{ 'Cancel'|trans }} + +
  • + {% endblock %} +{% endembed %} +{% endblock %} diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Report/index.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Report/index.html.twig new file mode 100644 index 000000000..a9d3fcba0 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Report/index.html.twig @@ -0,0 +1,253 @@ +{% extends '@ChillPerson/layout.html.twig' %} + +{% set activeRouteKey = '' %} + +{% block personcontent %} +
    +

    Rapports pour {{ person|chill_entity_render_string }}

    + + {% if cvs is defined %} +

    CV

    + + {% if cvs|length == 0 %} +

    {{ null|chill_print_or_message("Aucun CV enregistré") }}

    + {% else %} + + + + + + + + + {% for cv in cvs %} + + + + + {% endfor %} + +
    Date 
    {{ cv.reportDate|localizeddate('short', 'none') }} +
      +
    • + +
    • +
    • + +
    • + {% if is_granted('CHILL_CSCONNECTES_REPORT_DELETE', cv) %} +
    • + +
    • + {% endif %} +
    +
    + {% endif %} + + + {% endif %} + + {% if freins is defined %} +

    Freins

    + + {% if freins|length == 0 %} +

    {{ null|chill_print_or_message("Aucun rapport enregistré") }}

    + {% else %} + + + + + + + + + + {% for frein in freins %} + + + + + + {% endfor %} + +
    DateFreins identifiés 
    {{ frein.reportDate|localizeddate('short', 'none') }} + {% if frein.freinsPerso|merge(frein.freinsEmploi)|length > 0 %} +
      + {% for e in frein.freinsPerso %} +
    • {{ ('freins_perso.' ~ e)|trans }}
    • + {% endfor %} + {% for e in frein.freinsEmploi %} +
    • {{ ('freins_emploi.' ~ e)|trans }}
    • + {% endfor %} +
    + {% else %} +

    {{ null|chill_print_or_message("Aucun frein renseigné") }} + {% endif %} +

    +
      +
    • + +
    • +
    • + +
    • + {% if is_granted('CHILL_CSCONNECTES_REPORT_DELETE', frein) %} +
    • + +
    • + {% endif %} +
    +
    + {% endif %} + + + + {% endif %} + + {% if immersions is defined %} +

    Immersions

    + + {% if immersions|length == 0 %} +

    {{ null|chill_print_or_message("Aucun rapport enregistré") }}

    + {% else %} + + + + + + + + + + {% for im in immersions %} + + + + + + + {% endfor %} + +
    Date de début de l'immersionEntreprise 
    {{ im.debutDate|localizeddate('short', 'none') }} + {{ im.entreprise.name }} + +
      +
    • + +
    • +
    • + +
    • +
    • + + + +
    • + {% if is_granted('CHILL_CSCONNECTES_REPORT_DELETE', im) %} +
    • + +
    • + {% endif %} +
    +
    + {% endif %} + + + {% endif %} + + {% if projet_professionnels is defined %} + +

    Projets professionnels

    + + {% if projet_professionnels|length == 0 %} +

    {{ null|chill_print_or_message("Aucun rapport enregistré") }}

    + {% else %} + + + + + + + + + + + {% for pr in projet_professionnels %} + + + + + + + + {% endfor %} + +
    Date de créationProjet validé ou souhaitéType de contrat 
    {{ pr.reportDate|localizeddate('short', 'none') }} + {% set romes = [] %} + {% if pr.valide|length > 0 %} +

    Projet validé :

    + {% set romes = pr.valide %} + {% elseif pr.souhait|length > 0 %} +

    Projet souhaité :

    + {% set romes = pr.souhait %} + {% else %} +

    Aucun souhait rempli

    + {% endif %} + +
      + {% for a in romes %} +
    • {{ a.libelle }} ({{ a.metier.code }} - {{ a.metier.libelle }})
    • + {% endfor %} +
    +
    +
      + {% for type in pr.typeContrat %} +
    • {{ ('projet_prof.type_contrat.' ~ type)|trans }}
    • + {% endfor %} +
    +
    +
      +
    • + +
    • +
    • + +
    • + {% if is_granted('CHILL_CSCONNECTES_REPORT_DELETE', pr) %} +
    • + +
    • + {% endif %} +
    +
    + {% endif %} + + + {% endif %} +
    + +{% endblock %} \ No newline at end of file diff --git a/src/Bundle/ChillJobBundle/src/Security/Authorization/CSConnectesVoter.php b/src/Bundle/ChillJobBundle/src/Security/Authorization/CSConnectesVoter.php new file mode 100644 index 000000000..13d155a37 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Security/Authorization/CSConnectesVoter.php @@ -0,0 +1,120 @@ +date15DaysAgo = new \DateTime('-15 days'); + $this->authorizationHelper = $authorizationHelper; + } + + + protected function supports($attribute, $subject) + { + if (!\in_array($attribute, self::ALL)) { + return false; + } + + if ($subject instanceof Frein + || $subject instanceof CV + || $subject instanceof Immersion + || $subject instanceof ProjetProfessionnel + || $subject instanceof Person) { + return true; + } + + return false; + } + + protected function voteOnAttribute($attribute, $subject, TokenInterface $token) + { + if ($subject instanceof Person) { + $center = $subject->getCenter(); + } else { + $center = $subject->getPerson()->getCenter(); + } + + switch($attribute) { + case self::REPORT_NEW: + + return $this->authorizationHelper->userHasAccess($token->getUser(), $center, $attribute); + + case self::REPORT_CV: + if (! ($subject instanceof CV || $subject instanceof Person)) { + return false; + } + + return $this->authorizationHelper->userHasAccess($token->getUser(), $center, $attribute); + + case self::REPORT_DELETE: + + if ($subject instanceof Immersion) { + $date = \DateTimeImmutable::createFromMutable($subject->getDebutDate())->add($subject->getDuration()); + } else { + $date = $subject->getReportDate(); + } + + if (!$this->authorizationHelper->userHasAccess($token->getUser(), $center, $attribute)) { + return false; + } + + return $this->date15DaysAgo < $date; + } + + return true; + } + + public function getRoles() + { + return self::ALL; + } + + public function getRolesWithHierarchy(): array + { + return ['CSConnectes' => $this->getRoles()]; + } + + public function getRolesWithoutScope(): array + { + return $this->getRoles(); + } +} diff --git a/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php b/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php new file mode 100644 index 000000000..620dcbcf9 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php @@ -0,0 +1,121 @@ +authorizationHelper = $authorizationHelper; + } + + /** + * @param $attribute + * @param $subject + * @return bool + */ + protected function supports($attribute, $subject) + { + if ($subject instanceof Center) { + return $attribute === self::EXPORT; + } elseif ($subject === NULL) { + return $attribute === self::EXPORT; + } + return false; + } + + /** + * @param $attribute + * @param $subject + * @param TokenInterface $token + * @return bool + */ + protected function voteOnAttribute($attribute, $subject, TokenInterface $token) + { + $user = $token->getUser(); + + if (!$user instanceof User) { + return false; + } + + $centers = $this->authorizationHelper->getReachableCenters($user, new Role($attribute)); + + if ($subject === null) { + return count($centers) > 0; + } + + return $this->authorizationHelper->userHasAccess($user, $subject, $attribute); + } + + /** + * Return an array of roles, where keys are the hierarchy, and values + * an array of roles. + * + * Example: + * + * ``` + * [ 'Title' => [ 'CHILL_FOO_SEE', 'CHILL_FOO_UPDATE' ] ] + * ``` + * + * @return array where keys are the hierarchy, and values an array of roles: `[ 'title' => [ 'CHILL_FOO_SEE', 'CHILL_FOO_UPDATE' ] ]` + */ + public function getRolesWithHierarchy() + { + return [ 'CSConnectes' => $this->getRoles() ]; + } + + /** + * return an array of role provided by the object + * + * @return string[] array of roles (as string) + */ + public function getRoles() + { + return $this->getAttributes(); + } + + /** + * return roles which doesn't need + * + * @return string[] array of roles without scopes + */ + public function getRolesWithoutScope() + { + return $this->getAttributes(); + } + + /** + * @return array + */ + private function getAttributes() { + return [ self::EXPORT ]; + } +} diff --git a/src/Bundle/ChillJobBundle/src/Tests/Controller/CSPersonControllerTest.php b/src/Bundle/ChillJobBundle/src/Tests/Controller/CSPersonControllerTest.php new file mode 100644 index 000000000..e92f9fb0b --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Tests/Controller/CSPersonControllerTest.php @@ -0,0 +1,9 @@ + Date: Fri, 19 Apr 2024 10:33:40 +0200 Subject: [PATCH 012/136] Move migrations directory to src --- .../migrations/Version20191119172511.php | 84 +++++++++---------- .../migrations/Version20191129112321.php | 2 +- .../migrations/Version20200113104411.php | 2 +- .../migrations/Version20200113142525.php | 2 +- .../migrations/Version20200114081435.php | 4 +- .../migrations/Version20200124130244.php | 2 +- .../migrations/Version20200124132321.php | 2 +- .../migrations/Version20200127132932.php | 6 +- .../migrations/Version20200205132532.php | 8 +- .../migrations/Version20200207224152.php | 2 +- .../migrations/Version20200210105342.php | 2 +- .../migrations/Version20200313124323.php | 2 +- .../migrations/Version20200403114520.php | 2 +- .../migrations/Version20200403123148.php | 2 +- 14 files changed, 61 insertions(+), 61 deletions(-) rename src/Bundle/ChillJobBundle/src/{Resources => }/migrations/Version20191119172511.php (75%) rename src/Bundle/ChillJobBundle/src/{Resources => }/migrations/Version20191129112321.php (98%) rename src/Bundle/ChillJobBundle/src/{Resources => }/migrations/Version20200113104411.php (98%) rename src/Bundle/ChillJobBundle/src/{Resources => }/migrations/Version20200113142525.php (97%) rename src/Bundle/ChillJobBundle/src/{Resources => }/migrations/Version20200114081435.php (97%) rename src/Bundle/ChillJobBundle/src/{Resources => }/migrations/Version20200124130244.php (96%) rename src/Bundle/ChillJobBundle/src/{Resources => }/migrations/Version20200124132321.php (96%) rename src/Bundle/ChillJobBundle/src/{Resources => }/migrations/Version20200127132932.php (94%) rename src/Bundle/ChillJobBundle/src/{Resources => }/migrations/Version20200205132532.php (98%) rename src/Bundle/ChillJobBundle/src/{Resources => }/migrations/Version20200207224152.php (96%) rename src/Bundle/ChillJobBundle/src/{Resources => }/migrations/Version20200210105342.php (96%) rename src/Bundle/ChillJobBundle/src/{Resources => }/migrations/Version20200313124323.php (99%) rename src/Bundle/ChillJobBundle/src/{Resources => }/migrations/Version20200403114520.php (96%) rename src/Bundle/ChillJobBundle/src/{Resources => }/migrations/Version20200403123148.php (94%) diff --git a/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20191119172511.php b/src/Bundle/ChillJobBundle/src/migrations/Version20191119172511.php similarity index 75% rename from src/Bundle/ChillJobBundle/src/Resources/migrations/Version20191119172511.php rename to src/Bundle/ChillJobBundle/src/migrations/Version20191119172511.php index b63c15162..1686dc454 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20191119172511.php +++ b/src/Bundle/ChillJobBundle/src/migrations/Version20191119172511.php @@ -1,12 +1,12 @@ addSql('CREATE SCHEMA chill_csconnectes'); $this->addSql('CREATE TABLE chill_csconnectes.cs_person ( - id INT NOT NULL, - person_id INT NOT NULL, - prescripteur_id INT DEFAULT NULL, - situationLogement VARCHAR(255) DEFAULT NULL, - enfantACharge INT DEFAULT NULL, - niveauMaitriseLangue JSONB DEFAULT NULL, - vehiculePersonnel BOOLEAN DEFAULT NULL, - permisConduire JSONB DEFAULT NULL, - situationProfessionnelle VARCHAR(255) DEFAULT NULL, - dateFinDernierEmploi DATE DEFAULT NULL, - typeContrat JSONB DEFAULT NULL, - ressources JSONB DEFAULT NULL, - ressourcesComment TEXT DEFAULT NULL, + id INT NOT NULL, + person_id INT NOT NULL, + prescripteur_id INT DEFAULT NULL, + situationLogement VARCHAR(255) DEFAULT NULL, + enfantACharge INT DEFAULT NULL, + niveauMaitriseLangue JSONB DEFAULT NULL, + vehiculePersonnel BOOLEAN DEFAULT NULL, + permisConduire JSONB DEFAULT NULL, + situationProfessionnelle VARCHAR(255) DEFAULT NULL, + dateFinDernierEmploi DATE DEFAULT NULL, + typeContrat JSONB DEFAULT NULL, + ressources JSONB DEFAULT NULL, + ressourcesComment TEXT DEFAULT NULL, ressourceDate1Versement DATE DEFAULT NULL, - CPFNombreHeures INT DEFAULT NULL, - accompagnement JSONB DEFAULT NULL, - accompagnementRQTHDate DATE DEFAULT NULL, - accompagnementComment VARCHAR(255) DEFAULT NULL, - poleEmploiId VARCHAR(255) DEFAULT NULL, - poleEmploiInscriptionDate DATE DEFAULT NULL, - cafId VARCHAR(255) DEFAULT NULL, - cafInscriptionDate DATE DEFAULT NULL, - CERInscriptionDate DATE DEFAULT NULL, - PPAEInscriptionDate DATE DEFAULT NULL, - NEETEligibilite BOOLEAN DEFAULT NULL, - NEETCommissionDate DATE DEFAULT NULL, - FSEMaDemarcheCode TEXT DEFAULT NULL, - documentCV_id INT DEFAULT NULL, - documentAgrementIAE_id INT DEFAULT NULL, - documentRQTH_id INT DEFAULT NULL, - documentAttestationNEET_id INT DEFAULT NULL, - documentCI_id INT DEFAULT NULL, - documentTitreSejour_id INT DEFAULT NULL, - documentAttestationFiscale_id INT DEFAULT NULL, - documentPermis_id INT DEFAULT NULL, - documentAttestationCAAF_id INT DEFAULT NULL, - documentContraTravail_id INT DEFAULT NULL, - documentAttestationFormation_id INT DEFAULT NULL, - documentQuittanceLoyer_id INT DEFAULT NULL, - documentFactureElectricite_id INT DEFAULT NULL, + CPFNombreHeures INT DEFAULT NULL, + accompagnement JSONB DEFAULT NULL, + accompagnementRQTHDate DATE DEFAULT NULL, + accompagnementComment VARCHAR(255) DEFAULT NULL, + poleEmploiId VARCHAR(255) DEFAULT NULL, + poleEmploiInscriptionDate DATE DEFAULT NULL, + cafId VARCHAR(255) DEFAULT NULL, + cafInscriptionDate DATE DEFAULT NULL, + CERInscriptionDate DATE DEFAULT NULL, + PPAEInscriptionDate DATE DEFAULT NULL, + NEETEligibilite BOOLEAN DEFAULT NULL, + NEETCommissionDate DATE DEFAULT NULL, + FSEMaDemarcheCode TEXT DEFAULT NULL, + documentCV_id INT DEFAULT NULL, + documentAgrementIAE_id INT DEFAULT NULL, + documentRQTH_id INT DEFAULT NULL, + documentAttestationNEET_id INT DEFAULT NULL, + documentCI_id INT DEFAULT NULL, + documentTitreSejour_id INT DEFAULT NULL, + documentAttestationFiscale_id INT DEFAULT NULL, + documentPermis_id INT DEFAULT NULL, + documentAttestationCAAF_id INT DEFAULT NULL, + documentContraTravail_id INT DEFAULT NULL, + documentAttestationFormation_id INT DEFAULT NULL, + documentQuittanceLoyer_id INT DEFAULT NULL, + documentFactureElectricite_id INT DEFAULT NULL, PRIMARY KEY(id, person_id))'); $this->addSql('CREATE INDEX IDX_10864F31217BBB47 ON chill_csconnectes.cs_person (person_id)'); $this->addSql('CREATE INDEX IDX_10864F3154866550 ON chill_csconnectes.cs_person (documentCV_id)'); @@ -92,7 +92,7 @@ final class Version20191119172511 extends AbstractMigration $this->addSql('COMMENT ON COLUMN chill_csconnectes.cs_person.typeContrat IS NULL'); $this->addSql('COMMENT ON COLUMN chill_csconnectes.cs_person.ressources IS NULL'); $this->addSql('COMMENT ON COLUMN chill_csconnectes.cs_person.accompagnement IS NULL'); - + } public function down(Schema $schema) : void diff --git a/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20191129112321.php b/src/Bundle/ChillJobBundle/src/migrations/Version20191129112321.php similarity index 98% rename from src/Bundle/ChillJobBundle/src/Resources/migrations/Version20191129112321.php rename to src/Bundle/ChillJobBundle/src/migrations/Version20191129112321.php index a27acc50f..593ae7c5f 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20191129112321.php +++ b/src/Bundle/ChillJobBundle/src/migrations/Version20191129112321.php @@ -1,6 +1,6 @@ abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); - + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP objectifsAutre'); - + } } diff --git a/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200205132532.php b/src/Bundle/ChillJobBundle/src/migrations/Version20200205132532.php similarity index 98% rename from src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200205132532.php rename to src/Bundle/ChillJobBundle/src/migrations/Version20200205132532.php index 9111382ba..94fe839f9 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200205132532.php +++ b/src/Bundle/ChillJobBundle/src/migrations/Version20200205132532.php @@ -1,6 +1,6 @@ addSql('ALTER TABLE chill_csconnectes.projetprofessionnel_valide ADD CONSTRAINT FK_E0501BE0B87BF7B5 FOREIGN KEY (projetprofessionnel_id) REFERENCES chill_csconnectes.projet_professionnel (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); $this->addSql('ALTER TABLE chill_csconnectes.projetprofessionnel_valide ADD CONSTRAINT FK_E0501BE07CDE30DD FOREIGN KEY (appellation_id) REFERENCES chill_csconnectes.rome_appellation (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); - + } public function down(Schema $schema) : void @@ -70,7 +70,7 @@ final class Version20200205132532 extends AbstractMigration $this->addSql('DROP TABLE chill_csconnectes.projet_professionnel'); $this->addSql('DROP TABLE chill_csconnectes.projetprofessionnel_souhait'); $this->addSql('DROP TABLE chill_csconnectes.projetprofessionnel_valide'); - - + + } } diff --git a/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200207224152.php b/src/Bundle/ChillJobBundle/src/migrations/Version20200207224152.php similarity index 96% rename from src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200207224152.php rename to src/Bundle/ChillJobBundle/src/migrations/Version20200207224152.php index 4cac2715e..0eeca852f 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/migrations/Version20200207224152.php +++ b/src/Bundle/ChillJobBundle/src/migrations/Version20200207224152.php @@ -1,6 +1,6 @@ Date: Fri, 19 Apr 2024 10:56:49 +0200 Subject: [PATCH 013/136] rector rules for upgrade to php 8.2 and symfony 5.4 applied + php cs fixer --- rector.php | 8 +- src/Bundle/ChillEventBundle/Entity/Event.php | 2 +- .../src/ApiHelper/ApiWrapper.php | 59 ++- .../ApiHelper/PartenaireRomeAppellation.php | 65 ++-- .../src/ApiHelper/ProcessRequestTrait.php | 61 ++-- .../src/ChillFranceTravailApiBundle.php | 13 +- .../src/Controller/RomeController.php | 13 +- .../ChillFranceTravailApiExtension.php | 14 +- .../src/DependencyInjection/Configuration.php | 12 +- .../PartenaireRomeAppellationTest.php | 46 ++- .../Tests/Controller/RomeControllerTest.php | 15 +- .../ChillJobBundle/src/ChillJobBundle.php | 13 +- .../src/Controller/CSCrudReportController.php | 70 ++-- .../src/Controller/CSPersonController.php | 97 ++--- .../src/Controller/CSReportController.php | 29 +- .../DependencyInjection/ChillJobExtension.php | 16 +- .../src/DependencyInjection/Configuration.php | 12 +- .../ChillJobBundle/src/Entity/CSPerson.php | 343 +++++++----------- src/Bundle/ChillJobBundle/src/Entity/CV.php | 119 +++--- .../src/Entity/CV/Experience.php | 98 ++--- .../src/Entity/CV/Formation.php | 98 ++--- .../ChillJobBundle/src/Entity/Frein.php | 96 +++-- .../ChillJobBundle/src/Entity/Immersion.php | 247 ++++++------- .../src/Entity/ProjetProfessionnel.php | 151 +++----- .../src/Entity/Rome/Appellation.php | 62 ++-- .../ChillJobBundle/src/Entity/Rome/Metier.php | 57 ++- .../src/Export/ListCSPerson.php | 294 +++++++-------- .../ChillJobBundle/src/Export/ListCV.php | 162 +++++---- .../ChillJobBundle/src/Export/ListFrein.php | 181 +++++---- .../src/Export/ListProjetProfessionnel.php | 233 ++++++------ .../src/Form/CSPersonDispositifsType.php | 83 ++--- .../Form/CSPersonPersonalSituationType.php | 137 ++++--- .../src/Form/CV/ExperienceType.php | 46 ++- .../src/Form/CV/FormationType.php | 52 ++- src/Bundle/ChillJobBundle/src/Form/CVType.php | 51 ++- .../RomeAppellationChoiceLoader.php | 43 +-- .../ChillJobBundle/src/Form/FreinType.php | 42 +-- .../ChillJobBundle/src/Form/ImmersionType.php | 151 ++++---- .../src/Form/ProjetProfessionnelType.php | 61 ++-- .../src/Form/Type/PickRomeAppellationType.php | 47 +-- .../ChillJobBundle/src/Menu/MenuBuilder.php | 56 +-- .../src/Repository/CSPersonRepository.php | 15 +- .../Repository/CV/ExperienceRepository.php | 15 +- .../src/Repository/CV/FormationRepository.php | 15 +- .../src/Repository/CVRepository.php | 15 +- .../src/Repository/FreinRepository.php | 15 +- .../src/Repository/ImmersionRepository.php | 15 +- .../ProjetProfessionnelRepository.php | 15 +- .../Repository/Rome/AppellationRepository.php | 15 +- .../src/Repository/Rome/MetierRepository.php | 15 +- .../Authorization/CSConnectesVoter.php | 32 +- .../Security/Authorization/ExportsVoter.php | 43 ++- .../Controller/CSPersonControllerTest.php | 18 +- .../Controller/CSReportControllerTest.php | 18 +- .../src/ThirdParty/EntrepriseType.php | 10 +- .../src/ThirdParty/PrescripteurType.php | 10 +- .../src/migrations/Version20191119172511.php | 22 +- .../src/migrations/Version20191129112321.php | 25 +- .../src/migrations/Version20200113104411.php | 21 +- .../src/migrations/Version20200113142525.php | 19 +- .../src/migrations/Version20200114081435.php | 19 +- .../src/migrations/Version20200124130244.php | 22 +- .../src/migrations/Version20200124132321.php | 21 +- .../src/migrations/Version20200127132932.php | 22 +- .../src/migrations/Version20200205132532.php | 47 +-- .../src/migrations/Version20200207224152.php | 21 +- .../src/migrations/Version20200210105342.php | 28 +- .../src/migrations/Version20200313124323.php | 19 +- .../src/migrations/Version20200403114520.php | 23 +- .../src/migrations/Version20200403123148.php | 21 +- 70 files changed, 2026 insertions(+), 2025 deletions(-) diff --git a/rector.php b/rector.php index 7604667ea..6a6bf88ce 100644 --- a/rector.php +++ b/rector.php @@ -36,12 +36,8 @@ return static function (RectorConfig $rectorConfig): void { //define sets of rules $rectorConfig->sets([ - \Rector\Symfony\Set\SymfonySetList::SYMFONY_50, - \Rector\Symfony\Set\SymfonySetList::SYMFONY_50_TYPES, - \Rector\Symfony\Set\SymfonySetList::SYMFONY_51, - \Rector\Symfony\Set\SymfonySetList::SYMFONY_52, - \Rector\Symfony\Set\SymfonySetList::SYMFONY_53, - \Rector\Symfony\Set\SymfonySetList::SYMFONY_54, + \Rector\Set\ValueObject\LevelSetList::UP_TO_PHP_82, + \Rector\Symfony\Set\SymfonyLevelSetList::UP_TO_SYMFONY_54, \Rector\Doctrine\Set\DoctrineSetList::DOCTRINE_CODE_QUALITY, \Rector\Doctrine\Set\DoctrineSetList::ANNOTATIONS_TO_ATTRIBUTES, ]); diff --git a/src/Bundle/ChillEventBundle/Entity/Event.php b/src/Bundle/ChillEventBundle/Entity/Event.php index 6f7ee7ef0..2f323d11a 100644 --- a/src/Bundle/ChillEventBundle/Entity/Event.php +++ b/src/Bundle/ChillEventBundle/Entity/Event.php @@ -47,7 +47,7 @@ class Event implements HasCenterInterface, HasScopeInterface, TrackCreationInter private ?Scope $circle = null; #[ORM\Column(type: \Doctrine\DBAL\Types\Types::DATETIME_MUTABLE)] - private ?\DateTime $date; + private ?\DateTime $date = null; #[ORM\Id] #[ORM\Column(name: 'id', type: \Doctrine\DBAL\Types\Types::INTEGER)] diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php index 15e51c1f2..7fe43bae1 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php @@ -1,31 +1,27 @@ clientId = $clientId; - $this->clientSecret = $clientSecret; - $this->redis = $redis; $this->client = new Client([ - 'base_uri' => 'https://entreprise.pole-emploi.fr/connexion/oauth2/access_token' + 'base_uri' => 'https://entreprise.pole-emploi.fr/connexion/oauth2/access_token', ]); } @@ -61,28 +54,29 @@ class ApiWrapper $response = $this->client->post('', [ 'query' => ['realm' => '/partenaire'], 'headers' => [ - 'Content-Type' => 'application/x-www-form-urlencoded' + 'Content-Type' => 'application/x-www-form-urlencoded', ], - //'body' => 'grant_type=client_credentials&client_id=PAR_chillcsconnectesdev_0e20082886f1bc5d8ff4f8b34868603e2bcc7ed6bc5963e648e3709c639aced9&client_secret=4e626fa3123bcf4d299591c09731fa3242a7e75bbc003955f903aebc33cdd022&scope=api_romev1%20nomenclatureRome%20application_PAR_chillcsconnectesdev_0e20082886f1bc5d8ff4f8b34868603e2bcc7ed6bc5963e648e3709c639aced9' + // 'body' => 'grant_type=client_credentials&client_id=PAR_chillcsconnectesdev_0e20082886f1bc5d8ff4f8b34868603e2bcc7ed6bc5963e648e3709c639aced9&client_secret=4e626fa3123bcf4d299591c09731fa3242a7e75bbc003955f903aebc33cdd022&scope=api_romev1%20nomenclatureRome%20application_PAR_chillcsconnectesdev_0e20082886f1bc5d8ff4f8b34868603e2bcc7ed6bc5963e648e3709c639aced9' 'form_params' => [ 'grant_type' => 'client_credentials', 'client_id' => $this->clientId, 'client_secret' => $this->clientSecret, - 'scope' => \implode(' ', \array_merge($scopes, [ 'application_'.$this->clientId ])), - ] - //]); - ]); - // - } - catch (ClientException $e) { + 'scope' => \implode(' ', \array_merge($scopes, ['application_'.$this->clientId])), + ], + // ]); + ]); + } catch (ClientException $e) { dump(Psr7\str($e->getRequest())); - dump( Psr7\str($e->getResponse())); + dump(Psr7\str($e->getResponse())); } $data = \json_decode((string) $response->getBody()); // set the key with an expiry time - $this->redis->setEx($cacheKey, $data->expires_in - 2, - \serialize($data)); + $this->redis->setEx( + $cacheKey, + $data->expires_in - 2, + \serialize($data) + ); return $data->access_token; } @@ -91,5 +85,4 @@ class ApiWrapper { return self::UNPERSONAL_BEARER.implode('', $scopes); } - } diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php index 9f05834d6..27679a61d 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php @@ -1,41 +1,41 @@ wrapper = $wrapper; $this->logger = $logger; $this->client = new Client([ - 'base_uri' => 'https://api.emploi-store.fr/partenaire/rome/v1/' + 'base_uri' => 'https://api.emploi-store.fr/partenaire/rome/v1/', ]); } @@ -52,11 +52,10 @@ class PartenaireRomeAppellation return $this->wrapper->getPublicBearer([ 'api_romev1', 'nomenclatureRome', - ]); + ]); } /** - * * @param string $search */ public function getListeAppellation($search) @@ -65,16 +64,20 @@ class PartenaireRomeAppellation $request = new Request('GET', 'appellation'); $parameters = [ - 'query' => [ - 'q' => $search, - 'qf' => 'libelle' - ], - 'headers' => [ - 'Authorization' => 'Bearer '.$bearer - ] - ]; - $response = $this->handleRequest($request, $parameters, $this->client, - $this->logger); + 'query' => [ + 'q' => $search, + 'qf' => 'libelle', + ], + 'headers' => [ + 'Authorization' => 'Bearer '.$bearer, + ], + ]; + $response = $this->handleRequest( + $request, + $parameters, + $this->client, + $this->logger + ); return \GuzzleHttp\json_decode((string) $response->getBody()); } @@ -86,15 +89,19 @@ class PartenaireRomeAppellation $request = new Request('GET', sprintf('appellation/%s', $code)); $parameters = [ 'headers' => [ - 'Authorization' => 'Bearer '.$bearer + 'Authorization' => 'Bearer '.$bearer, ], 'query' => [ - 'champs' => 'code,libelle,metier(code,libelle)' - ] + 'champs' => 'code,libelle,metier(code,libelle)', + ], ]; - $response = $this->handleRequest($request, $parameters, $this->client, - $this->logger); + $response = $this->handleRequest( + $request, + $parameters, + $this->client, + $this->logger + ); return \GuzzleHttp\json_decode((string) $response->getBody()); } diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ProcessRequestTrait.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ProcessRequestTrait.php index 7561c3b40..6284f5fe6 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ProcessRequestTrait.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ProcessRequestTrait.php @@ -1,6 +1,14 @@ handleRequestRecursive($request, $parameters, - $client, $logger); + return $this->handleRequestRecursive( + $request, + $parameters, + $client, + $logger + ); } /** - * internal method to handle recursive requests + * internal method to handle recursive requests. * - * @param Request $request - * @param array $parameters - * @param Client $client - * @param LoggerInterface $logger * @param type $counter + * * @return type + * * @throws BadResponseException */ private function handleRequestRecursive( @@ -54,21 +62,17 @@ trait ProcessRequestTrait LoggerInterface $logger, $counter = 0 ) { - try { + try { return $client->send($request, $parameters); - } catch (BadResponseException $e) { if ( // get 429 exceptions $e instanceof ClientException - && - $e->getResponse()->getStatusCode() === 429 - && - count($e->getResponse()->getHeader('Retry-After')) > 0) { - + && 429 === $e->getResponse()->getStatusCode() + && count($e->getResponse()->getHeader('Retry-After')) > 0) { if ($counter > 5) { - $logger->error("too much 429 response", [ - 'request' => Psr7\str($e->getRequest()) + $logger->error('too much 429 response', [ + 'request' => Psr7\str($e->getRequest()), ]); throw $e; @@ -79,12 +83,17 @@ trait ProcessRequestTrait sleep($delay); - return $this->handleRequestRecursive($request, $parameters, - $client, $logger, $counter + 1); + return $this->handleRequestRecursive( + $request, + $parameters, + $client, + $logger, + $counter + 1 + ); } // handling other errors - $logger->error("Error while querying ROME api", [ + $logger->error('Error while querying ROME api', [ 'status_code' => $e->getResponse()->getStatusCode(), 'part' => 'appellation', 'request' => Psr7\str($e->getRequest()), diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ChillFranceTravailApiBundle.php b/src/Bundle/ChillFranceTravailApiBundle/src/ChillFranceTravailApiBundle.php index 9f428c6a2..6ebf66d2a 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ChillFranceTravailApiBundle.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ChillFranceTravailApiBundle.php @@ -1,9 +1,16 @@ query->has('q') === FALSE) { + if (false === $request->query->has('q')) { return new JsonResponse([]); } @@ -50,5 +58,4 @@ class RomeController extends Controller return new JsonResponse($computed); } - } diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/DependencyInjection/ChillFranceTravailApiExtension.php b/src/Bundle/ChillFranceTravailApiBundle/src/DependencyInjection/ChillFranceTravailApiExtension.php index 15bbf3d30..1e7f3f45d 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/DependencyInjection/ChillFranceTravailApiExtension.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/DependencyInjection/ChillFranceTravailApiExtension.php @@ -1,5 +1,14 @@ + * + * @internal + * + * @coversNothing */ class PartenaireRomeAppellationTest extends KernelTestCase { @@ -25,7 +36,7 @@ class PartenaireRomeAppellationTest extends KernelTestCase $appellations = self::$kernel ->getContainer() ->get(PartenaireRomeAppellation::class) - ; + ; $data = $appellations->getListeAppellation('arb'); @@ -40,7 +51,7 @@ class PartenaireRomeAppellationTest extends KernelTestCase $appellations = self::$kernel ->getContainer() ->get(PartenaireRomeAppellation::class) - ; + ; $appellations->getListeAppellation('arb'); $appellations->getListeAppellation('ing'); @@ -48,8 +59,10 @@ class PartenaireRomeAppellationTest extends KernelTestCase $appellations->getListeAppellation('chori'); $data = $appellations->getListeAppellation('camion'); - $this->assertTrue($data[0] instanceof \stdClass, - 'assert that first index of data is an instance of stdClass'); + $this->assertTrue( + $data[0] instanceof \stdClass, + 'assert that first index of data is an instance of stdClass' + ); } public function testGetAppellation() @@ -58,18 +71,23 @@ class PartenaireRomeAppellationTest extends KernelTestCase $appellations = self::$kernel ->getContainer() ->get(PartenaireRomeAppellation::class) - ; + ; $a = $appellations->getListeAppellation('arb'); $full = $appellations->getAppellation($a[0]->code); - $this->assertNotNull($full->libelle, - 'assert that libelle is not null'); - $this->assertTrue($full->metier instanceof \stdClass, - 'assert that metier is returned'); - $this->assertNotNull($full->metier->libelle, - 'assert that metier->libelle is not null'); - + $this->assertNotNull( + $full->libelle, + 'assert that libelle is not null' + ); + $this->assertTrue( + $full->metier instanceof \stdClass, + 'assert that metier is returned' + ); + $this->assertNotNull( + $full->metier->libelle, + 'assert that metier->libelle is not null' + ); } } diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/Tests/Controller/RomeControllerTest.php b/src/Bundle/ChillFranceTravailApiBundle/src/Tests/Controller/RomeControllerTest.php index b0127a85d..a64ce5ae5 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/Tests/Controller/RomeControllerTest.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/Tests/Controller/RomeControllerTest.php @@ -1,9 +1,23 @@ request('GET', '/{_locale}/pole-emploi/appellation/search'); } - } diff --git a/src/Bundle/ChillJobBundle/src/ChillJobBundle.php b/src/Bundle/ChillJobBundle/src/ChillJobBundle.php index 5120f4a79..e583a271b 100644 --- a/src/Bundle/ChillJobBundle/src/ChillJobBundle.php +++ b/src/Bundle/ChillJobBundle/src/ChillJobBundle.php @@ -1,9 +1,16 @@ request->get("submit", "save-and-close"); + $next = $request->request->get('submit', 'save-and-close'); - switch ($next) { - case "save-and-close": - case "delete-and-close": - return $this->redirectToRoute('chill_csconnectes_csreport_index', [ - 'person' => $entity->getPerson()->getId() - ]); - default: - return parent::onBeforeRedirectAfterSubmission($action, $entity, $form, $request); - } + return match ($next) { + 'save-and-close', 'delete-and-close' => $this->redirectToRoute('chill_csconnectes_csreport_index', [ + 'person' => $entity->getPerson()->getId(), + ]), + default => parent::onBeforeRedirectAfterSubmission($action, $entity, $form, $request), + }; } protected function duplicateEntity(string $action, Request $request) { - - if ($this->getCrudName() === 'cscv') { + if ('cscv' === $this->getCrudName()) { $id = $request->query->get('duplicate_id', 0); /** @var \Chill\ChillJobBundle\Entity\CV $cv */ $cv = $this->getEntity($action, $id, $request); - $em = $this->getDoctrine()->getManager(); + $em = $this->managerRegistry->getManager(); $em->detach($cv); - foreach($cv->getExperiences() as $experience) { + foreach ($cv->getExperiences() as $experience) { $cv->removeExperience($experience); $em->detach($experience); $cv->addExperience($experience); } - foreach($cv->getFormations() as $formation) { + foreach ($cv->getFormations() as $formation) { $cv->removeFormation($formation); $em->detach($formation); $cv->addFormation($formation); } return $cv; - } elseif ($this->getCrudName() === 'projet_prof') { + } + if ('projet_prof' === $this->getCrudName()) { $id = $request->query->get('duplicate_id', 0); /** @var \Chill\ChillJobBundle\Entity\ProjetProfessionnel $original */ $original = $this->getEntity($action, $id, $request); @@ -72,23 +78,24 @@ class CSCrudReportController extends EntityPersonCRUDController return parent::duplicateEntity($action, $request); } - protected function createFormFor(string $action, $entity, string $formClass = null, array $formOptions = []): FormInterface + protected function createFormFor(string $action, $entity, ?string $formClass = null, array $formOptions = []): FormInterface { if ($entity instanceof Immersion) { if ('edit' === $action || 'new' === $action) { return parent::createFormFor($action, $entity, $formClass, [ - 'center' => $entity->getPerson()->getCenter() + 'center' => $entity->getPerson()->getCenter(), ]); - } elseif ('bilan' === $action) { + } + if ('bilan' === $action) { return parent::createFormFor($action, $entity, $formClass, [ 'center' => $entity->getPerson()->getCenter(), - 'step' => 'bilan' + 'step' => 'bilan', ]); - } elseif ($action === 'delete') { - return parent::createFormFor($action, $entity, $formClass, $formOptions); - } else { - throw new \LogicException("this step $action is not supported"); } + if ('delete' === $action) { + return parent::createFormFor($action, $entity, $formClass, $formOptions); + } + throw new \LogicException("this step {$action} is not supported"); } return parent::createFormFor($action, $entity, $formClass, $formOptions); @@ -105,20 +112,13 @@ class CSCrudReportController extends EntityPersonCRUDController parent::onPreFlush($action, $entity, $form, $request); } - /** - * Edit immersion bilan + * Edit immersion bilan. * - * @param Request $request * @param type $id - * @return \Symfony\Component\HttpFoundation\Response */ public function editBilan(Request $request, $id): \Symfony\Component\HttpFoundation\Response { return $this->formEditAction('bilan', $request, $id); } - - - - } diff --git a/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php b/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php index fb1ed69a9..102817702 100644 --- a/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php +++ b/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php @@ -1,15 +1,22 @@ denyAccessUnlessGranted(PersonVoter::UPDATE, - $entity->getPerson()); - break; - case 'ps_situation_view': - case 'dispositifs_view': - $this->denyAccessUnlessGranted(PersonVoter::SEE, - $entity->getPerson()); - break; - default: - parent::checkACL($action, $entity); - } + match ($action) { + 'ps_situation_edit', 'dispositifs_edit' => $this->denyAccessUnlessGranted( + PersonVoter::UPDATE, + $entity->getPerson() + ), + 'ps_situation_view', 'dispositifs_view' => $this->denyAccessUnlessGranted( + PersonVoter::SEE, + $entity->getPerson() + ), + default => parent::checkACL($action, $entity), + }; } protected function onBeforeRedirectAfterSubmission(string $action, $entity, FormInterface $form, Request $request) { - switch($action) { - case 'ps_situation_edit': - return $this->redirectToRoute('chill_crud_'.$this->getCrudName().'_personal_situation_view', - ['id' => $entity->getId()]); - - case 'dispositifs_edit': - return $this->redirectToRoute('chill_crud_'.$this->getCrudName().'_dispositifs_view', - ['id' => $entity->getId()]); - - default: - return null; - } + return match ($action) { + 'ps_situation_edit' => $this->redirectToRoute( + 'chill_crud_'.$this->getCrudName().'_personal_situation_view', + ['id' => $entity->getId()] + ), + 'dispositifs_edit' => $this->redirectToRoute( + 'chill_crud_'.$this->getCrudName().'_dispositifs_view', + ['id' => $entity->getId()] + ), + default => null, + }; } protected function getTemplateFor($action, $entity, Request $request) @@ -110,22 +113,26 @@ class CSPersonController extends OneToOneEntityPersonCRUDController } } - protected function createFormFor(string $action, $entity, string $formClass = null, array $formOptions = []): FormInterface + protected function createFormFor(string $action, $entity, ?string $formClass = null, array $formOptions = []): FormInterface { switch ($action) { case 'dispositifs_edit': - $form = $this->createForm($formClass, $entity, \array_merge( - $formOptions, [ 'center' => $entity->getPerson()->getCenter() ])); - $this->customizeForm($action, $form); + $form = $this->createForm($formClass, $entity, \array_merge( + $formOptions, + ['center' => $entity->getPerson()->getCenter()] + )); + $this->customizeForm($action, $form); - return $form; + return $form; case 'ps_situation_edit': - $form = $this->createForm($formClass, $entity, \array_merge( - $formOptions, [ 'center' => $entity->getPerson()->getCenter() ])); - $this->customizeForm($action, $form); + $form = $this->createForm($formClass, $entity, \array_merge( + $formOptions, + ['center' => $entity->getPerson()->getCenter()] + )); + $this->customizeForm($action, $form); - return $form; + return $form; default: return parent::createFormFor($action, $entity, $formClass, $formOptions); @@ -134,18 +141,16 @@ class CSPersonController extends OneToOneEntityPersonCRUDController protected function generateLabelForButton($action, $formName, $form) { - switch($action): + switch ($action) { case 'ps_situation_edit': case 'dispositifs_edit': - if ($formName === 'submit') { + if ('submit' === $formName) { return 'Enregistrer'; - } else { - throw new \LogicException("this formName is not supported: $formName"); } + throw new \LogicException("this formName is not supported: {$formName}"); break; default: return parent::generateLabelForButton($action, $formName, $form); - endswitch; + } } - } diff --git a/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php b/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php index 353474be8..6d4d61fc2 100644 --- a/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php +++ b/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php @@ -1,5 +1,14 @@ denyAccessUnlessGranted(PersonVoter::SEE, $person, "The access to " - . "person is denied"); + $this->denyAccessUnlessGranted(PersonVoter::SEE, $person, 'The access to ' + .'person is denied'); $reports = $this->getReports($person); return $this->render('@CSConnectesSP/Report/index.html.twig', \array_merge([ 'person' => $person, - ], $reports)); + ], $reports)); } protected function getReports(Person $person) @@ -54,14 +61,10 @@ class CSReportController extends Controller } foreach ($kinds as $key => $className) { - switch ($key) { - case 'immersions': - $ordering = [ 'debutDate' => 'DESC' ]; - break; - default: - $ordering = [ 'reportDate' => 'DESC' ]; - break; - } + $ordering = match ($key) { + 'immersions' => ['debutDate' => 'DESC'], + default => ['reportDate' => 'DESC'], + }; $results[$key] = $this->getDoctrine()->getManager() ->getRepository($className) ->findByPerson($person, $ordering); diff --git a/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php b/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php index 9284b1af0..de01124bf 100644 --- a/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php +++ b/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php @@ -1,5 +1,14 @@ load('services.yml'); // exports: list_CSperson override list_person - $container->setAlias('chill.person.export.list_person','Chill\ChillJobBundle\Export\ListCSPerson'); + $container->setAlias('chill.person.export.list_person', \Chill\ChillJobBundle\Export\ListCSPerson::class); } } diff --git a/src/Bundle/ChillJobBundle/src/DependencyInjection/Configuration.php b/src/Bundle/ChillJobBundle/src/DependencyInjection/Configuration.php index b20154466..b11c109fc 100644 --- a/src/Bundle/ChillJobBundle/src/DependencyInjection/Configuration.php +++ b/src/Bundle/ChillJobBundle/src/DependencyInjection/Configuration.php @@ -1,5 +1,14 @@ 'DESC', 'endDate' => 'DESC'])] + private Collection $formations; /** - * - * @var Collection - * @ORM\OneToMany( - * targetEntity="Chill\ChillJobBundle\Entity\CV\Experience", - * mappedBy="CV", - * cascade={"persist", "remove", "detach"}, - * orphanRemoval=true - * ) - * @ORM\OrderBy({"startDate"= "DESC", "endDate"="DESC"}) * @Assert\Valid(traverse=true) */ - private $experiences; + #[ORM\OneToMany(targetEntity: CV\Experience::class, mappedBy: 'CV', cascade: ['persist', 'remove', 'detach'], orphanRemoval: true)] + #[ORM\OrderBy(['startDate' => 'DESC', 'endDate' => 'DESC'])] + private Collection $experiences; - /** - * - * @var \Chill\PersonBundle\Entity\Person - * @ORM\ManyToOne( - * targetEntity="Chill\PersonBundle\Entity\Person" - * ) - */ - private $person; + #[ORM\ManyToOne(targetEntity: Person::class)] + private ?Person $person = null; public function __construct() { @@ -122,7 +93,7 @@ class CV $this->reportDate = new \DateTime('now'); } - /** + /** * Get id. * * @return int @@ -265,7 +236,7 @@ class CV public function setFormations(Collection $formations) { foreach ($formations as $formation) { - /** @var CV\Formation $formation */ + /* @var CV\Formation $formation */ $formation->setCV($this); } $this->formations = $formations; @@ -287,7 +258,7 @@ class CV public function removeFormation(CV\Formation $formation) { - if (FALSE === $this->formations->contains($formation)) { + if (false === $this->formations->contains($formation)) { return $this; } @@ -300,7 +271,7 @@ class CV public function setExperiences(Collection $experiences) { foreach ($experiences as $experience) { - /** @var CV\Experience $experience */ + /* @var CV\Experience $experience */ $experience->setCV($this); } @@ -323,7 +294,7 @@ class CV public function removeExperience(CV\Experience $experience) { - if (FALSE === $this->experiences->contains($experience)) { + if (false === $this->experiences->contains($experience)) { return $this; } @@ -341,13 +312,13 @@ class CV public function setPerson(Person $person) { $this->person = $person; + return $this; } - public function __toString() + public function __toString(): string { return 'CV de '.$this->getPerson().' daté du '. $this->getReportDate()->format('d-m-Y'); } - } diff --git a/src/Bundle/ChillJobBundle/src/Entity/CV/Experience.php b/src/Bundle/ChillJobBundle/src/Entity/CV/Experience.php index aed41e9da..86e1c0fb9 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CV/Experience.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CV/Experience.php @@ -1,5 +1,14 @@ reportDate = new \DateTime('today'); } - /** + /** * Get id. * * @return int @@ -159,11 +153,9 @@ class Frein implements HasPerson /** * Set notesPerso. * - * @param string $notesPerso - * * @return Frein */ - public function setNotesPerso(string $notesPerso = null) + public function setNotesPerso(?string $notesPerso = null) { $this->notesPerso = (string) $notesPerso; @@ -207,11 +199,9 @@ class Frein implements HasPerson /** * Set notesEmploi. * - * @param string $notesEmploi - * * @return Frein */ - public function setNotesEmploi(string $notesEmploi = null) + public function setNotesEmploi(?string $notesEmploi = null) { $this->notesEmploi = (string) $notesEmploi; @@ -233,7 +223,7 @@ class Frein implements HasPerson return $this->person; } - public function setPerson(\Chill\PersonBundle\Entity\Person $person = null): HasPerson + public function setPerson(?\Chill\PersonBundle\Entity\Person $person = null): HasPerson { $this->person = $person; @@ -241,19 +231,19 @@ class Frein implements HasPerson } /** - * Vérifie qu'au moins un frein a été coché parmi les freins perso + emploi + * Vérifie qu'au moins un frein a été coché parmi les freins perso + emploi. * - * @param ExecutionContextInterface $context * @param array $payload + * * @Assert\Callback() */ public function validateFreinsCount(ExecutionContextInterface $context, $payload) { $nb = count($this->getFreinsEmploi()) + count($this->getFreinsPerso()); - if ($nb === 0) { - $msg = "Indiquez au moins un frein parmi les freins " - . "liés à l'emploi et les freins liés à la situation personnelle."; + if (0 === $nb) { + $msg = 'Indiquez au moins un frein parmi les freins ' + ."liés à l'emploi et les freins liés à la situation personnelle."; $context->buildViolation($msg) ->atPath('freinsEmploi') ->addViolation(); @@ -264,7 +254,7 @@ class Frein implements HasPerson } } - public function __toString() + public function __toString(): string { return 'Rapport "frein" de '.$this->getPerson().' daté du '. $this->getReportDate()->format('d-m-Y'); diff --git a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php index 69bf513ad..cbaac80f7 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php @@ -12,13 +12,12 @@ use Chill\MainBundle\Validation\Constraint\PhonenumberConstraint; /** * Immersion - * - * @ORM\Table(name="chill_csconnectes.immersion") - * @ORM\Entity(repositoryClass="Chill\ChillJobBundle\Repository\ImmersionRepository") */ -class Immersion +#[ORM\Table(name: 'chill_csconnectes.immersion')] +#[ORM\Entity(repositoryClass: \Chill\ChillJobBundle\Repository\ImmersionRepository::class)] +class Immersion implements \Stringable { - const YES_NO_NSP = [ + public const YES_NO_NSP = [ 'oui', 'non', 'nsp' @@ -26,12 +25,11 @@ class Immersion /** * @var int - * - * @ORM\Column(name="id", type="integer") - * @ORM\Id - * @ORM\GeneratedValue(strategy="AUTO") */ - private $id; + #[ORM\Column(name: 'id', type: 'integer')] + #[ORM\Id] + #[ORM\GeneratedValue(strategy: 'AUTO')] + private ?int $id = null; /** * @@ -47,144 +45,134 @@ class Immersion /** * @var ThirdParty|null * - * @ORM\ManyToOne( - * targetEntity="\Chill\ThirdPartyBundle\Entity\ThirdParty" - * ) * @Assert\NotNull() * @Assert\Length(min=2) */ - private $entreprise; + #[ORM\ManyToOne(targetEntity: \\Chill\ThirdPartyBundle\Entity\ThirdParty::class)] + private ?\Chill\ThirdPartyBundle\Entity\ThirdParty $entreprise = null; /** * @var User|null - * - * @ORM\ManyToOne( - * targetEntity="\Chill\MainBundle\Entity\User" - * ) */ - private $referent; + #[ORM\ManyToOne(targetEntity: \\Chill\MainBundle\Entity\User::class)] + private ?\Chill\MainBundle\Entity\User $referent = null; /** * @var string|null * - * @ORM\Column(name="domaineActivite", type="text", nullable=true) * @Assert\NotNull() * @Assert\Length(min=2) */ - private $domaineActivite; + #[ORM\Column(name: 'domaineActivite', type: 'text', nullable: true)] + private ?string $domaineActivite = null; /** * @var string|null * - * @ORM\Column(name="tuteurName", type="text", nullable=true) * @Assert\NotNull() * @Assert\Length(min=2) */ - private $tuteurName; + #[ORM\Column(name: 'tuteurName', type: 'text', nullable: true)] + private ?string $tuteurName = null; /** * @var string|null * - * @ORM\Column(name="tuteurFonction", type="text", nullable=true) * @Assert\NotNull() * @Assert\Length(min=2) */ - private $tuteurFonction; + #[ORM\Column(name: 'tuteurFonction', type: 'text', nullable: true)] + private ?string $tuteurFonction = null; /** * @var string|null * - * @ORM\Column(name="tuteurPhoneNumber", type="text", nullable=true) * @Assert\NotNull() * @Assert\NotBlank() - * @PhonenumberConstraint(type="any") */ - private $tuteurPhoneNumber; + #[ORM\Column(name: 'tuteurPhoneNumber', type: 'text', nullable: true)] + #[PhonenumberConstraint(type: 'any')] + private ?string $tuteurPhoneNumber = null; /** * @var string|null - * - * @ORM\Column(name="structureAccName", type="text", nullable=true) */ - private $structureAccName; + #[ORM\Column(name: 'structureAccName', type: 'text', nullable: true)] + private ?string $structureAccName = null; /** * @var string - * - * @ORM\Column(name="structureAccPhonenumber", type="text", nullable=true) - * @PhonenumberConstraint(type="any") */ - private $structureAccPhonenumber; + #[ORM\Column(name: 'structureAccPhonenumber', type: 'text', nullable: true)] + #[PhonenumberConstraint(type: 'any')] + private ?string $structureAccPhonenumber = null; /** * @var string - * - * @ORM\Column(name="structureAccEmail", type="text", nullable=true) */ - private $structureAccEmail; + #[ORM\Column(name: 'structureAccEmail', type: 'text', nullable: true)] + private ?string $structureAccEmail = null; /** * * @var Address|null - * @ORM\ManyToOne(targetEntity="\Chill\MainBundle\Entity\Address", - * cascade={"persist", "remove"}) */ - private $structureAccAddress; + #[ORM\ManyToOne(targetEntity: \\Chill\MainBundle\Entity\Address::class, cascade: ['persist', 'remove'])] + private ?\Chill\MainBundle\Entity\Address $structureAccAddress = null; + + /** + * @var string|null + */ + #[ORM\Column(name: 'posteDescriptif', type: 'text', nullable: true)] + private ?string $posteDescriptif = null; /** * @var string|null * - * @ORM\Column(name="posteDescriptif", type="text", nullable=true) - */ - private $posteDescriptif; - - /** - * @var string|null - * - * @ORM\Column(name="posteTitle", type="text", nullable=true) * @Assert\NotNull() * @Assert\Length(min=2) */ - private $posteTitle; + #[ORM\Column(name: 'posteTitle', type: 'text', nullable: true)] + private ?string $posteTitle = null; /** * @var string|null * - * @ORM\Column(name="posteLieu", type="text", nullable=true) * @Assert\NotNull() * @Assert\Length(min=2) */ - private $posteLieu; + #[ORM\Column(name: 'posteLieu', type: 'text', nullable: true)] + private ?string $posteLieu = null; /** - * @var \DateTime|null + * @var \DateTimeInterface|null * - * @ORM\Column(name="debutDate", type="date", nullable=true) * @Assert\NotNull() */ - private $debutDate; + #[ORM\Column(name: 'debutDate', type: 'date', nullable: true)] + private ?\DateTimeInterface $debutDate = null; /** * @var string|null * - * @ORM\Column(name="duration", type="dateinterval", nullable=true) * @Assert\NotNull() */ + #[ORM\Column(name: 'duration', type: 'dateinterval', nullable: true)] private $duration; /** * @var string|null * - * @ORM\Column(name="horaire", type="text", nullable=true) * @Assert\NotNull() * @Assert\Length(min=2) */ - private $horaire; + #[ORM\Column(name: 'horaire', type: 'text', nullable: true)] + private ?string $horaire = null; - const OBJECTIFS = [ + public const OBJECTIFS = [ 'decouvrir_metier', 'confirmer_projet_prof', 'acquerir_experience', @@ -195,26 +183,25 @@ class Immersion /** * @var array|null - * - * @ORM\Column(name="objectifs", type="json", nullable=true) */ + #[ORM\Column(name: 'objectifs', type: 'json', nullable: true)] private $objectifs; /** * * @var string - * @ORM\Column(name="objectifsAutre", type="text", nullable=true) */ - private $objectifsAutre; + #[ORM\Column(name: 'objectifsAutre', type: 'text', nullable: true)] + private ?string $objectifsAutre = null; /** * * @var bool - * @ORM\Column(name="is_bilan_fullfilled", type="boolean", options={"default"=false}) */ - private $isBilanFullfilled = false; + #[ORM\Column(name: 'is_bilan_fullfilled', type: 'boolean', options: ['default' => false])] + private ?bool $isBilanFullfilled = false; - const SAVOIR_ETRE = [ + public const SAVOIR_ETRE = [ 'assiduite', 'ponctualite', 'respect_consigne_securite', @@ -225,54 +212,48 @@ class Immersion /** * @var array|null - * - * @ORM\Column(name="savoirEtre", type="json", nullable=true) */ + #[ORM\Column(name: 'savoirEtre', type: 'json', nullable: true)] private $savoirEtre; /** * * @var string - * @ORM\Column(name="savoirEtreNote", type="text", nullable=true) */ - private $savoirEtreNote; + #[ORM\Column(name: 'savoirEtreNote', type: 'text', nullable: true)] + private ?string $savoirEtreNote = null; /** * @var string - * - * @ORM\Column(name="noteimmersion", type="text") */ - private $noteImmersion = ''; + #[ORM\Column(name: 'noteimmersion', type: 'text')] + private ?string $noteImmersion = ''; /** * @var string|null - * - * @ORM\Column(name="principalesActivites", type="text", nullable=true) */ - private $principalesActivites; + #[ORM\Column(name: 'principalesActivites', type: 'text', nullable: true)] + private ?string $principalesActivites = null; /** * @var string|null - * - * @ORM\Column(name="competencesAcquises", type="text", nullable=true) */ - private $competencesAcquises; + #[ORM\Column(name: 'competencesAcquises', type: 'text', nullable: true)] + private ?string $competencesAcquises = null; /** * @var string|null - * - * @ORM\Column(name="competencesADevelopper", type="text", nullable=true) */ - private $competencesADevelopper; + #[ORM\Column(name: 'competencesADevelopper', type: 'text', nullable: true)] + private ?string $competencesADevelopper = null; /** * @var string|null - * - * @ORM\Column(name="noteBilan", type="text", nullable=true) */ - private $noteBilan; + #[ORM\Column(name: 'noteBilan', type: 'text', nullable: true)] + private ?string $noteBilan = null; - const PONCTUALITE_SALARIE = [ + public const PONCTUALITE_SALARIE = [ 'aucun', 'un', 'plusieurs' @@ -281,18 +262,18 @@ class Immersion /** * * @var string|null - * @ORM\Column(name="ponctualite_salarie", type="text", nullable=true) */ - private $ponctualiteSalarie; + #[ORM\Column(name: 'ponctualite_salarie', type: 'text', nullable: true)] + private ?string $ponctualiteSalarie = null; /** * * @var string|null - * @ORM\Column(name="ponctualite_salarie_note", type="text", nullable=true) */ - private $ponctualiteSalarieNote; + #[ORM\Column(name: 'ponctualite_salarie_note', type: 'text', nullable: true)] + private ?string $ponctualiteSalarieNote = null; - const ASSIDUITE = [ + public const ASSIDUITE = [ 'aucun', 'un', 'plusieurs' @@ -301,32 +282,32 @@ class Immersion /** * * @var string|null - * @ORM\Column(name="assiduite", type="text", nullable=true) */ - private $assiduite; + #[ORM\Column(name: 'assiduite', type: 'text', nullable: true)] + private ?string $assiduite = null; /** * * @var string|null - * @ORM\Column(name="assiduite_note", type="text", nullable=true) */ - private $assiduiteNote; + #[ORM\Column(name: 'assiduite_note', type: 'text', nullable: true)] + private ?string $assiduiteNote = null; /** * * @var string|null - * @ORM\Column(name="interet_activite", type="text", nullable=true) */ - private $interetActivite; + #[ORM\Column(name: 'interet_activite', type: 'text', nullable: true)] + private ?string $interetActivite = null; /** * * @var string|null - * @ORM\Column(name="interet_activite_note", type="text", nullable=true) */ - private $interetActiviteNote; + #[ORM\Column(name: 'interet_activite_note', type: 'text', nullable: true)] + private ?string $interetActiviteNote = null; - const INTEGRE_REGLE = [ + public const INTEGRE_REGLE = [ '1_temps', 'rapidement', 'pas_encore' @@ -335,114 +316,114 @@ class Immersion /** * * @var string|null - * @ORM\Column(name="integre_regle", type="text", nullable=true) */ - private $integreRegle; + #[ORM\Column(name: 'integre_regle', type: 'text', nullable: true)] + private ?string $integreRegle = null; /** * * @var string|null - * @ORM\Column(name="integre_regle_note", type="text", nullable=true) */ - private $integreRegleNote; + #[ORM\Column(name: 'integre_regle_note', type: 'text', nullable: true)] + private ?string $integreRegleNote = null; /** * * @var string|null - * @ORM\Column(name="esprit_initiative", type="text", nullable=true) */ - private $espritInitiative; + #[ORM\Column(name: 'esprit_initiative', type: 'text', nullable: true)] + private ?string $espritInitiative = null; /** * * @var string|null - * @ORM\Column(name="esprit_initiative_note", type="text", nullable=true) */ - private $espritInitiativeNote; + #[ORM\Column(name: 'esprit_initiative_note', type: 'text', nullable: true)] + private ?string $espritInitiativeNote = null; /** * * @var string|null - * @ORM\Column(name="organisation", type="text", nullable=true) */ - private $organisation; + #[ORM\Column(name: 'organisation', type: 'text', nullable: true)] + private ?string $organisation = null; /** * * @var string|null - * @ORM\Column(name="organisation_note", type="text", nullable=true) */ - private $organisationNote; + #[ORM\Column(name: 'organisation_note', type: 'text', nullable: true)] + private ?string $organisationNote = null; /** * * @var string|null - * @ORM\Column(name="capacite_travail_equipe", type="text", nullable=true) */ - private $capaciteTravailEquipe; + #[ORM\Column(name: 'capacite_travail_equipe', type: 'text', nullable: true)] + private ?string $capaciteTravailEquipe = null; /** * * @var string|null - * @ORM\Column(name="capacite_travail_equipe_note", type="text", nullable=true) */ - private $capaciteTravailEquipeNote; + #[ORM\Column(name: 'capacite_travail_equipe_note', type: 'text', nullable: true)] + private ?string $capaciteTravailEquipeNote = null; /** * * @var string|null - * @ORM\Column(name="style_vestimentaire", type="text", nullable=true) */ - private $styleVestimentaire; + #[ORM\Column(name: 'style_vestimentaire', type: 'text', nullable: true)] + private ?string $styleVestimentaire = null; /** * * @var string|null - * @ORM\Column(name="style_vestimentaire_note", type="text", nullable=true) */ - private $styleVestimentaireNote; + #[ORM\Column(name: 'style_vestimentaire_note', type: 'text', nullable: true)] + private ?string $styleVestimentaireNote = null; /** * * @var string|null - * @ORM\Column(name="langage_prof", type="text", nullable=true) */ - private $langageProf; + #[ORM\Column(name: 'langage_prof', type: 'text', nullable: true)] + private ?string $langageProf = null; /** * * @var string|null - * @ORM\Column(name="langage_prof_note", type="text", nullable=true) */ - private $langageProfNote; + #[ORM\Column(name: 'langage_prof_note', type: 'text', nullable: true)] + private ?string $langageProfNote = null; /** * * @var string|null - * @ORM\Column(name="applique_consigne", type="text", nullable=true) */ - private $appliqueConsigne; + #[ORM\Column(name: 'applique_consigne', type: 'text', nullable: true)] + private ?string $appliqueConsigne = null; /** * * @var string|null - * @ORM\Column(name="applique_consigne_note", type="text", nullable=true) */ - private $appliqueConsigneNote; + #[ORM\Column(name: 'applique_consigne_note', type: 'text', nullable: true)] + private ?string $appliqueConsigneNote = null; /** * * @var string|null - * @ORM\Column(name="respect_hierarchie", type="text", nullable=true) */ - private $respectHierarchie; + #[ORM\Column(name: 'respect_hierarchie', type: 'text', nullable: true)] + private ?string $respectHierarchie = null; /** * * @var string|null - * @ORM\Column(name="respect_hierarchie_note", type="text", nullable=true) */ - private $respectHierarchieNote; + #[ORM\Column(name: 'respect_hierarchie_note', type: 'text', nullable: true)] + private ?string $respectHierarchieNote = null; /** * Get id. @@ -1248,7 +1229,7 @@ class Immersion return $this; } - public function __toString() + public function __toString(): string { return 'Rapport "immersion" de '.$this->getPerson(); } diff --git a/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php b/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php index 95e0fc136..cc60faa45 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php +++ b/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php @@ -1,5 +1,14 @@ domaineActiviteValide; } - public function setDomaineActiviteSouhait(string $domaineActiviteSouhait = null) + public function setDomaineActiviteSouhait(?string $domaineActiviteSouhait = null) { $this->domaineActiviteSouhait = $domaineActiviteSouhait; return $this; } - public function setDomaineActiviteValide(string $domaineActiviteValide = null) + public function setDomaineActiviteValide(?string $domaineActiviteValide = null) { $this->domaineActiviteValide = $domaineActiviteValide; return $this; } - public function __toString() + public function __toString(): string { return 'Rapport "projet professionnel" de '.$this->getPerson().' daté du '. $this->getReportDate()->format('d-m-Y'); diff --git a/src/Bundle/ChillJobBundle/src/Entity/Rome/Appellation.php b/src/Bundle/ChillJobBundle/src/Entity/Rome/Appellation.php index e3e2dedb4..3b389c4d7 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Rome/Appellation.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Rome/Appellation.php @@ -1,51 +1,38 @@ libelle; } diff --git a/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php b/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php index d6ab5a751..c3908c77a 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php @@ -1,57 +1,46 @@ appellations = new ArrayCollection(); $this->appellation = new ArrayCollection(); } - /** * Get id. * diff --git a/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php b/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php index bc69b70fd..f840c024b 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php @@ -1,6 +1,16 @@ CSPerson::RESSOURCES, 'moyen_transport__label' => CSPerson::MOBILITE_MOYEN_TRANSPORT, 'type_contrat__label' => CSPerson::TYPE_CONTRAT, 'permis_conduire__label' => CSPerson::PERMIS_CONDUIRE, 'accompagnement__label' => CSPerson::ACCOMPAGNEMENTS, 'situation_professionnelle__label' => CSPerson::SITUATION_PROFESSIONNELLE, - 'neet_eligibility__label' => CSPerson::NEET_ELIGIBILITY + 'neet_eligibility__label' => CSPerson::NEET_ELIGIBILITY, ]; /** @@ -62,7 +70,7 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal /** * Rebuild fields array, combining parent ListPerson and ListCSPerson, - * adding query type as value + * adding query type as value. * * @return array */ @@ -89,7 +97,7 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal 'address_postcode_label' => 'string', 'address_country_name' => 'string', 'address_country_code' => 'string', - 'address_isnoaddress' => 'boolean' + 'address_isnoaddress' => 'boolean', ]; $CSfields = [ @@ -119,14 +127,14 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal 'datefindernieremploi' => 'date', 'type_contrat__label' => 'json', 'ressource__label' => 'json', - 'moyen_transport__label' => 'json' + 'moyen_transport__label' => 'json', ]; return array_merge($fields, $CSfields); } /** - * Return array FIELDS keys only + * Return array FIELDS keys only. * * @return array */ @@ -137,12 +145,13 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal /** * give the list of keys the current export added to the queryBuilder in - * self::initiateQuery + * self::initiateQuery. * * Example: if your query builder will contains `SELECT count(id) AS count_id ...`, * this function will return `array('count_id')`. * * @param mixed[] $data the data from the export's form (added by self::buildForm) + * * @return array */ public function getQueryKeys($data) @@ -152,7 +161,6 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal $fields = []; foreach ($data['fields'] as $key) { switch ($key) { - case 'ressource__label': case 'moyen_transport__label': foreach ($csperson[$key] as $item) { @@ -164,27 +172,28 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal case 'prescripteur__name': case 'prescripteur__email': case 'prescripteur__phone': - $key = str_replace('__', '.', $key); + $key = str_replace('__', '.', (string) $key); + // no break case 'situation_professionnelle__label': case 'neet_eligibility__label': - case 'accompagnement__label': case 'permis_conduire__label': case 'type_contrat__label': - default: $fields[] = $key; } } + return $fields; } /** * Some fields values are arrays that have to be splitted in columns. - * This function split theses fields + * This function split theses fields. * * @param array $rows + * * @return array|\Closure */ private function splitArrayToColumns($rows) @@ -196,21 +205,17 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal */ $results = []; foreach ($rows as $row) { - /** * @var string $key - * @var mixed $value */ $res = []; foreach ($row as $key => $value) { - switch ($key) { case 'ressource__label': case 'moyen_transport__label': - foreach ($csperson[$key] as $item) { $this->translationCompatKey($item, $key); - if (($value === null)||(count($value) === 0)) { + if ((null === $value) || (0 === count($value))) { $res[$item] = ''; } else { foreach ($value as $v) { @@ -219,25 +224,22 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal if ($item === $v) { $res[$item] = 'x'; break; - } else { - $res[$item] = ''; } + $res[$item] = ''; } } } break; case 'situation_professionnelle__label': - $f = false; - if ($value === 'en_activite') { + if ('en_activite' === $value) { $f = true; } $res[$key] = $value; break; case 'type_contrat__label': - if (! empty($value)) { $res[$key] = ($f) ? $value : null; } else { @@ -248,25 +250,25 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal case 'prescripteur__name': case 'prescripteur__email': case 'prescripteur__phone': + $key = str_replace('__', '.', (string) $key); - $key = str_replace('__', '.', $key); - + // no break case 'neet_eligibility__label': case 'accompagnement__label': case 'permis_conduire__label': - default: $res[$key] = $value; } } $results[] = $res; } + return $results; } /** * Make item compatible with YAML messages ids - * for fields that are splitted in columns (with field key to replace) + * for fields that are splitted in columns (with field key to replace). * * AVANT * key: projet_prof__volume_horaire__label @@ -274,7 +276,7 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal * APRES * item: projet_prof.volume_horaire.temps_plein * - * @param string $item (&) passed by reference + * @param string $item (&) passed by reference * @param string $key */ private function translationCompatKey(&$item, $key) @@ -284,73 +286,64 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal $item = $key; } - /** - * @param FormBuilderInterface $builder - */ public function buildForm(FormBuilderInterface $builder) { parent::buildForm($builder); // ajouter un '?' dans la query $choices = array_combine($this->getFields(), $this->getFields()); - $builder->add('fields', ChoiceType::class, array( + $builder->add('fields', ChoiceType::class, [ 'multiple' => true, 'expanded' => true, 'choices' => $choices, - 'data' => $choices, //les checkbox cochés !! + 'data' => $choices, + // les checkbox cochés !! 'choices_as_values' => true, 'label' => 'Fields to include in export', - 'choice_label' => function ($key) { - return str_replace('__', '.', $key); - }, - 'choice_attr' => function($val) { - if (substr($val, 0, 8) === 'address_') { + 'choice_label' => fn ($key) => str_replace('__', '.', (string) $key), + 'choice_attr' => function ($val) { + if (str_starts_with($val, 'address_')) { return ['data-display-target' => 'address_date']; - } else { - return []; } + + return []; }, - 'constraints' => [new Callback(array( - 'callback' => function($selected, ExecutionContextInterface $context) { - if (count($selected) === 0) { - $context->buildViolation('You must select at least one element') - ->atPath('fields') - ->addViolation(); - } + 'constraints' => [new Callback(['callback' => function ($selected, ExecutionContextInterface $context) { + if (0 === count($selected)) { + $context->buildViolation('You must select at least one element') + ->atPath('fields') + ->addViolation(); } - ))] - )); + }])], + ]); } /** - * @param array $requiredModifiers - * @param array $acl - * @param array $data * @return \Doctrine\ORM\NativeQuery|\Doctrine\ORM\QueryBuilder + * * @throws \Doctrine\DBAL\Exception\InvalidArgumentException */ - public function initiateQuery(array $requiredModifiers, array $acl, array $data = array()) + public function initiateQuery(array $requiredModifiers, array $acl, array $data = []) { - $centers = array_map(function($el) { return $el['center']; }, $acl); + $centers = array_map(fn ($el) => $el['center'], $acl); // throw an error if any fields are present if (!\array_key_exists('fields', $data)) { - throw new \Doctrine\DBAL\Exception\InvalidArgumentException("any fields " - . "have been checked"); + throw new \Doctrine\DBAL\Exception\InvalidArgumentException('any fields have been checked'); } - $qb = $this->entityManager->createQueryBuilder() + return $this->entityManager->createQueryBuilder() ->from('ChillPersonBundle:Person', 'person') ->join('person.center', 'center') ->andWhere('center IN (:authorized_centers)') ->setParameter('authorized_centers', $centers) ; - return $qb; } /** * @param \Doctrine\ORM\NativeQuery|\Doctrine\ORM\QueryBuilder $qb - * @param mixed[] $data + * @param mixed[] $data + * * @return mixed|mixed[] */ public function getResult($qb, $data) @@ -358,14 +351,13 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal $qb->select('person.id'); $ids = $qb->getQuery()->getResult(Query::HYDRATE_SCALAR); - $this->personIds = array_map(function ($e) { return $e['id']; }, $ids); + $this->personIds = array_map(fn ($e) => $e['id'], $ids); - $personIdsParameters = '?'. \str_repeat(', ?', count($this->personIds) -1); + $personIdsParameters = '?'.\str_repeat(', ?', count($this->personIds) - 1); $query = \str_replace('%person_ids%', $personIdsParameters, self::QUERY); $rsm = new Query\ResultSetMapping(); - foreach ($this->allFields() as $name => $type) { if ($data['fields'][$name]) { $rsm->addScalarResult(strtolower($name), $name, $type); @@ -375,13 +367,13 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal $nq = $this->entityManager->createNativeQuery($query, $rsm); $idx = 0; - for ($i=1; $i<=8; $i++) { - $idx++; + for ($i = 1; $i <= 8; ++$i) { + ++$idx; $nq->setParameter($idx, $data['address_date'], 'date'); } - for ($i=1; $i<=(count($this->personIds)); $i++) { - $idx++; - $nq->setParameter($idx, $this->personIds[$i-1]); + for ($i = 1; $i <= count($this->personIds); ++$i) { + ++$idx; + $nq->setParameter($idx, $this->personIds[$i - 1]); } return $this->splitArrayToColumns( @@ -390,9 +382,9 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal } /** - * @param string $key The column key, as added in the query + * @param string $key The column key, as added in the query * @param mixed[] $values The values from the result. if there are duplicates, those might be given twice. Example: array('FR', 'BE', 'CZ', 'FR', 'BE', 'FR') - * @param mixed $data The data from the export's form (as defined in `buildForm` + * @param mixed $data The data from the export's form (as defined in `buildForm` * * @return \Closure where the first argument is the value, and the function should return the label to show in the formatted file. Example : `function($countryCode) use ($countries) { return $countries[$countryCode]->getName(); }` */ @@ -400,92 +392,89 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal { $csperson = self::CSPERSON; - switch ($key) { - case 'countryOfBirth': - case 'situation_familiale': - case 'closingmotive': - case 'nationality': - return function ($value) use ($key) { - if ($value === '_header') { return $key; } - return $value['fr']; - }; - case 'accompagnement__label': - case 'permis_conduire__label': - case 'type_contrat__label': - return function ($value) use ($key, $csperson) { - if ($value === '_header') { - return $this->translator->trans( - str_replace('__', '.', $key) - ); - } - if (empty($value)) { return ''; } - $arr = []; - foreach ($value as $v) { - $this->translationCompatKey($v, $key); - $arr[] = $this->translator->trans($v); - } - return implode(', ', $arr); - }; - case 'situation_professionnelle__label': - case 'neet_eligibility__label': - return function ($value) use ($key) { - if ($value === '_header') { - return $this->translator->trans( - str_replace('__', '.', $key) - ); - } - if (empty($value)) { return ''; } - $this->translationCompatKey($value, $key); - return $this->translator->trans($value); - }; - case 'birthdate': - case 'address_valid_from': - case 'recentopeningdate': - case 'recentclosingdate': - case 'findernieremploidate': - case 'cafinscriptiondate': - case 'contratiejdate': - case 'cerinscriptiondate': - case 'ppaeinscriptiondate': - case 'neetcommissiondate': - case 'datefindernieremploi': - /** @var \DateTime $value */ - return function($value) use ($key) { - if ($value === '_header') { return $key; } - if (empty($value)) { return ''; } - return $value->format('d-m-Y'); - }; + return match ($key) { + 'countryOfBirth', 'situation_familiale', 'closingmotive', 'nationality' => function ($value) use ($key) { + if ('_header' === $value) { + return $key; + } - // remplace les getLabels de ListPerson - // (pas possible d'utiliser parent qui appelle une méthode private pour les customfields) - case 'gender' : - return function ($value) { - if ($value === '_header') { return 'gender'; } - return $this->translator->trans($value); - }; - case 'address_country_name': - return function ($value) use ($key) { - if ($value === '_header') { return \strtolower($key); } - if ($value === null) { return ''; } - return $this->translatableStringHelper->localize(json_decode($value, true)); - }; - case 'address_isnoaddress': - return parent::getLabels($key, $values, $data); - default: - return function ($value) use ($key) { - if ($value === '_header') { - return $key; - } - if (empty($value)) { return ''; } - return $value; - }; - } + return $value['fr']; + }, + 'accompagnement__label', 'permis_conduire__label', 'type_contrat__label' => function ($value) use ($key) { + if ('_header' === $value) { + return $this->translator->trans( + str_replace('__', '.', $key) + ); + } + if (empty($value)) { + return ''; + } + $arr = []; + foreach ($value as $v) { + $this->translationCompatKey($v, $key); + $arr[] = $this->translator->trans($v); + } + + return implode(', ', $arr); + }, + 'situation_professionnelle__label', 'neet_eligibility__label' => function ($value) use ($key) { + if ('_header' === $value) { + return $this->translator->trans( + str_replace('__', '.', $key) + ); + } + if (empty($value)) { + return ''; + } + $this->translationCompatKey($value, $key); + + return $this->translator->trans($value); + }, + 'birthdate', 'address_valid_from', 'recentopeningdate', 'recentclosingdate', 'findernieremploidate', 'cafinscriptiondate', 'contratiejdate', 'cerinscriptiondate', 'ppaeinscriptiondate', 'neetcommissiondate', 'datefindernieremploi' => function ($value) use ($key) { + if ('_header' === $value) { + return $key; + } + if (empty($value)) { + return ''; + } + + return $value->format('d-m-Y'); + }, + 'gender' => function ($value) { + if ('_header' === $value) { + return 'gender'; + } + + return $this->translator->trans($value); + }, + 'address_country_name' => function ($value) use ($key) { + if ('_header' === $value) { + return \strtolower($key); + } + if (null === $value) { + return ''; + } + + return $this->translatableStringHelper->localize(json_decode($value, true)); + }, + 'address_isnoaddress' => parent::getLabels($key, $values, $data), + default => function ($value) use ($key) { + if ('_header' === $value) { + return $key; + } + if (empty($value)) { + return ''; + } + + return $value; + }, + }; } /** - * Native Query SQL + * Native Query SQL. */ - const QUERY = << 'integer', 'firstname' => 'string', 'lastname' => 'string', @@ -52,8 +59,6 @@ class ListCV implements ListInterface, ExportElementValidatedInterface /** * ListAcquisition constructor. - * - * @param EntityManagerInterface $em */ public function __construct(EntityManagerInterface $em) { @@ -65,24 +70,21 @@ class ListCV implements ListInterface, ExportElementValidatedInterface * violation on the data. * * @param mixed $data the data, as returned by the user - * @param ExecutionContextInterface $context */ public function validateForm($data, ExecutionContextInterface $context) {} /** - * get a title, which will be used in UI (and translated) + * get a title, which will be used in UI (and translated). * * @return string */ public function getTitle() { - return "Liste des CVs par personne"; + return 'Liste des CVs par personne'; } /** * Add a form to collect data from the user. - * - * @param FormBuilderInterface $builder */ public function buildForm(FormBuilderInterface $builder) { @@ -98,34 +100,34 @@ class ListCV implements ListInterface, ExportElementValidatedInterface 'attr' => ['class' => ''], 'constraints' => [new Callback([ 'callback' => function ($selected, ExecutionContextInterface $context) { - if (count($selected) === 0) { + if (0 === count($selected)) { $context ->buildViolation('You must select at least one element') ->atPath('fields') ->addViolation(); } - } - ])] + }, + ])], ]) ->add('reportdate_min', ChillDateType::class, [ 'label' => 'Date du rapport après le', 'required' => false, 'label_attr' => [ - 'class' => 'reportdate_range' + 'class' => 'reportdate_range', ], 'attr' => [ - 'class' => 'reportdate_range' - ] + 'class' => 'reportdate_range', + ], ]) ->add('reportdate_max', ChillDateType::class, [ 'label' => 'Date du rapport avant le', 'required' => false, 'label_attr' => [ - 'class' => 'report_date_range' + 'class' => 'report_date_range', ], 'attr' => [ - 'class' => 'report_date_range' - ] + 'class' => 'report_date_range', + ], ]) ; } @@ -151,7 +153,7 @@ class ListCV implements ListInterface, ExportElementValidatedInterface */ public function getDescription() { - return "Crée une liste des CVs en fonction de différents paramètres."; + return 'Crée une liste des CVs en fonction de différents paramètres.'; } /** @@ -164,12 +166,12 @@ class ListCV implements ListInterface, ExportElementValidatedInterface * * The returned object should be an instance of QueryBuilder or NativeQuery. * - * @param array $requiredModifiers - * @param array $acl an array where each row has a `center` key containing the Chill\MainBundle\Entity\Center, and `circles` keys containing the reachable circles. Example: `array( array('center' => $centerA, 'circles' => array($circleA, $circleB) ) )` + * @param array $acl an array where each row has a `center` key containing the Chill\MainBundle\Entity\Center, and `circles` keys containing the reachable circles. Example: `array( array('center' => $centerA, 'circles' => array($circleA, $circleB) ) )` * @param array $data the data from the form, if any - * @return QueryBuilder|\Doctrine\ORM\NativeQuery the query to execute. + * + * @return QueryBuilder|\Doctrine\ORM\NativeQuery the query to execute */ - public function initiateQuery(array $requiredModifiers, array $acl, array $data = array()) + public function initiateQuery(array $requiredModifiers, array $acl, array $data = []) { return $this->entityManager->createQueryBuilder() ->from('ChillPersonBundle:Person', 'person'); @@ -184,14 +186,13 @@ class ListCV implements ListInterface, ExportElementValidatedInterface */ public function supportsModifiers() { - return [ 'cv', 'person' ]; + return ['cv', 'person']; } /** * Return the required Role to execute the Export. * - * @return \Symfony\Component\Security\Core\Role\Role - * + * @return Role */ public function requiredRole() { @@ -205,17 +206,18 @@ class ListCV implements ListInterface, ExportElementValidatedInterface */ public function getAllowedFormattersTypes() { - return [ FormatterInterface::TYPE_LIST ]; + return [FormatterInterface::TYPE_LIST]; } /** * give the list of keys the current export added to the queryBuilder in - * self::initiateQuery + * self::initiateQuery. * * Example: if your query builder will contains `SELECT count(id) AS count_id ...`, * this function will return `array('count_id')`. * * @param mixed[] $data the data from the export's form (added by self::buildForm) + * * @return array */ public function getQueryKeys($data) @@ -224,7 +226,7 @@ class ListCV implements ListInterface, ExportElementValidatedInterface } /** - * Return array FIELDS keys only + * Return array FIELDS keys only. * * @return array */ @@ -237,7 +239,8 @@ class ListCV implements ListInterface, ExportElementValidatedInterface * Return the results of the query builder. * * @param QueryBuilder|\Doctrine\ORM\NativeQuery $qb - * @param mixed[] $data the data from the export's form (added by self::buildForm) + * @param mixed[] $data the data from the export's form (added by self::buildForm) + * * @return mixed[] an array of results */ public function getResult($qb, $data) @@ -245,8 +248,8 @@ class ListCV implements ListInterface, ExportElementValidatedInterface $qb->select('person.id'); $ids = $qb->getQuery()->getResult(Query::HYDRATE_SCALAR); - $this->personIds = array_map(function ($e) { return $e['id']; }, $ids); - $personIdsParameters = '?'. \str_repeat(', ?', count($this->personIds) -1); + $this->personIds = array_map(fn ($e) => $e['id'], $ids); + $personIdsParameters = '?'.\str_repeat(', ?', count($this->personIds) - 1); $query = \str_replace('%person_ids%', $personIdsParameters, self::QUERY); $rsm = new Query\ResultSetMapping(); @@ -260,12 +263,12 @@ class ListCV implements ListInterface, ExportElementValidatedInterface $nq = $this->entityManager->createNativeQuery($query, $rsm); $idx = 1; - for ($i=1; $i<=(count($this->personIds)); $i++) { - $idx++; - $nq->setParameter($i, $this->personIds[$i-1]); + for ($i = 1; $i <= count($this->personIds); ++$i) { + ++$idx; + $nq->setParameter($i, $this->personIds[$i - 1]); } $nq->setParameter($idx++, $data['reportdate_min'], 'date'); - $nq->setParameter($idx , $data['reportdate_max'], 'date'); + $nq->setParameter($idx, $data['reportdate_max'], 'date'); return $nq->getResult(); } @@ -309,56 +312,57 @@ class ListCV implements ListInterface, ExportElementValidatedInterface * which do not need to be translated, or value already translated in * database. But the header must be, in every case, translated. * - * - * @param string $key The column key, as added in the query + * @param string $key The column key, as added in the query * @param mixed[] $values The values from the result. if there are duplicates, those might be given twice. Example: array('FR', 'BE', 'CZ', 'FR', 'BE', 'FR') - * @param mixed $data The data from the export's form (as defined in `buildForm` + * @param mixed $data The data from the export's form (as defined in `buildForm` + * * @return \Closure where the first argument is the value, and the function should return the label to show in the formatted file. Example : `function($countryCode) use ($countries) { return $countries[$countryCode]->getName(); }` */ public function getLabels($key, array $values, $data) { + return match ($key) { + 'birthdate' => function ($value) use ($key) { + if ('_header' === $value) { + return $key; + } + if (empty($value)) { + return ''; + } - switch ($key) { - case 'birthdate': - /** @var \DateTime $value */ - return function($value) use ($key) { - if ($value === '_header') { return $key; } - if (empty($value)) { return ''; } - return $value->format('d-m-Y'); - }; - case 'countryofbirth': - return function ($value) use ($key) { - if ($value === '_header') { - return $key; - } - return $value['fr']; - }; - case 'gender': - return function ($value) use ($key) { - $gend_array = [ 'man' => 'Homme', 'woman' => 'Femme', 'both' => 'Indéterminé' ]; - if ($value === '_header') { return $key; } - if (empty($value)) { return ''; } - return $gend_array[$value]; - }; - case 'id': - case 'firstname': - case 'lastname': - case 'placeofbirth': - case 'formationlevel': - default: - return function ($value) use ($key) { - if ($value === '_header') { - return $key; - } - return $value; - }; - } + return $value->format('d-m-Y'); + }, + 'countryofbirth' => function ($value) use ($key) { + if ('_header' === $value) { + return $key; + } + + return $value['fr']; + }, + 'gender' => function ($value) use ($key) { + $gend_array = ['man' => 'Homme', 'woman' => 'Femme', 'both' => 'Indéterminé']; + if ('_header' === $value) { + return $key; + } + if (empty($value)) { + return ''; + } + + return $gend_array[$value]; + }, + default => function ($value) use ($key) { + if ('_header' === $value) { + return $key; + } + + return $value; + }, + }; } /** - * Native Query SQL + * Native Query SQL. */ - const QUERY = << Frein::FREINS_PERSO, 'freinsemploi' => Frein::FREINS_EMPLOI, ]; @@ -38,7 +45,7 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface /** * @var array */ - const FIELDS = [ + public const FIELDS = [ 'id' => 'integer', 'firstname' => 'string', 'lastname' => 'string', @@ -58,8 +65,6 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface */ protected $personIds = []; - - /** * @var EntityManagerInterface */ @@ -67,8 +72,6 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface /** * ListAcquisition constructor. - * - * @param EntityManagerInterface $em */ public function __construct(EntityManagerInterface $em) { @@ -80,24 +83,21 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface * violation on the data. * * @param mixed $data the data, as returned by the user - * @param ExecutionContextInterface $context */ public function validateForm($data, ExecutionContextInterface $context) {} /** - * get a title, which will be used in UI (and translated) + * get a title, which will be used in UI (and translated). * * @return string */ public function getTitle() { - return "Liste des freins identifiés par personne"; + return 'Liste des freins identifiés par personne'; } /** * Add a form to collect data from the user. - * - * @param FormBuilderInterface $builder */ public function buildForm(FormBuilderInterface $builder) { @@ -113,7 +113,7 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface 'attr' => ['class' => ''], 'constraints' => [new Callback([ 'callback' => function ($selected, ExecutionContextInterface $context) { - if (count($selected) === 0) { + if (0 === count($selected)) { $context ->buildViolation('You must select at least one element') ->atPath('fields') @@ -166,7 +166,7 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface */ public function getDescription() { - return "Crée une liste des personnes et de leurs freins identifiés en fonction de différents paramètres."; + return 'Crée une liste des personnes et de leurs freins identifiés en fonction de différents paramètres.'; } /** @@ -179,15 +179,15 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface * * The returned object should be an instance of QueryBuilder or NativeQuery. * - * @param array $requiredModifiers - * @param array $acl an array where each row has a `center` key containing the Chill\MainBundle\Entity\Center, and `circles` keys containing the reachable circles. Example: `array( array('center' => $centerA, 'circles' => array($circleA, $circleB) ) )` + * @param array $acl an array where each row has a `center` key containing the Chill\MainBundle\Entity\Center, and `circles` keys containing the reachable circles. Example: `array( array('center' => $centerA, 'circles' => array($circleA, $circleB) ) )` * @param array $data the data from the form, if any - * @return QueryBuilder|\Doctrine\ORM\NativeQuery the query to execute. + * + * @return QueryBuilder|\Doctrine\ORM\NativeQuery the query to execute */ - public function initiateQuery(array $requiredModifiers, array $acl, array $data = array()) + public function initiateQuery(array $requiredModifiers, array $acl, array $data = []) { return $this->entityManager->createQueryBuilder() - ->from('ChillPersonBundle:Person', 'person'); + ->from('ChillPersonBundle:Person', 'person'); } /** @@ -199,14 +199,13 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface */ public function supportsModifiers() { - return [ 'frein', 'person' ]; + return ['frein', 'person']; } /** * Return the required Role to execute the Export. * - * @return \Symfony\Component\Security\Core\Role\Role - * + * @return Role */ public function requiredRole() { @@ -220,11 +219,11 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface */ public function getAllowedFormattersTypes() { - return [ FormatterInterface::TYPE_LIST ]; + return [FormatterInterface::TYPE_LIST]; } /** - * Return array FIELDS keys only + * Return array FIELDS keys only. * * @return array */ @@ -235,12 +234,13 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface /** * give the list of keys the current export added to the queryBuilder in - * self::initiateQuery + * self::initiateQuery. * * Example: if your query builder will contains `SELECT count(id) AS count_id ...`, * this function will return `array('count_id')`. * * @param mixed[] $data the data from the export's form (added by self::buildForm) + * * @return array */ public function getQueryKeys($data) @@ -248,11 +248,9 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface $freins = self::FREINS; $fields = []; foreach ($data['fields'] as $key) { - switch ($key) { case 'freinsperso': case 'freinsemploi': - foreach ($freins[$key] as $item) { $this->translationCompatKey($item, $key); $fields[] = $item; @@ -263,27 +261,29 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface $fields[] = $key; } } + return $fields; } /** * Make key compatible with YAML messages ids - * for fields that are splitted in columns + * for fields that are splitted in columns. * - * @param string $item (&) passed by reference + * @param string $item (&) passed by reference * @param string $key */ private function translationCompatKey(&$item, $key) { $prefix = substr_replace($key, 'freins_', 0, 6); - $item = $prefix .'.'. $item; + $item = $prefix.'.'.$item; } /** * Some fields values are arrays that have to be splitted in columns. - * This function split theses fields + * This function split theses fields. * * @param array $rows + * * @return array|\Closure */ private function splitArrayToColumns($rows) @@ -295,34 +295,27 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface */ $results = []; foreach ($rows as $row) { - /** * @var string $key - * @var mixed $value */ $res = []; foreach ($row as $key => $value) { - switch ($key) { case 'freinsperso': case 'freinsemploi': - foreach ($freins[$key] as $item) { $this->translationCompatKey($item, $key); - if (count($value) === 0) { + if (0 === count($value)) { $res[$item] = ''; - } else { foreach ($value as $v) { - $this->translationCompatKey($v, $key); if ($item === $v) { $res[$item] = 'x'; break; - } else { - $res[$item] = ''; } + $res[$item] = ''; } } } @@ -334,6 +327,7 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface } $results[] = $res; } + return $results; } @@ -341,7 +335,8 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface * Return the results of the query builder. * * @param QueryBuilder|\Doctrine\ORM\NativeQuery $qb - * @param mixed[] $data the data from the export's form (added by self::buildForm) + * @param mixed[] $data the data from the export's form (added by self::buildForm) + * * @return mixed[]|\closure an array of results */ public function getResult($qb, $data) @@ -349,8 +344,8 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface $qb->select('person.id'); $ids = $qb->getQuery()->getResult(Query::HYDRATE_SCALAR); - $this->personIds = array_map(function ($e) { return $e['id']; }, $ids); - $personIdsParameters = '?'. \str_repeat(', ?', count($this->personIds) -1); + $this->personIds = array_map(fn ($e) => $e['id'], $ids); + $personIdsParameters = '?'.\str_repeat(', ?', count($this->personIds) - 1); $query = \str_replace('%person_ids%', $personIdsParameters, self::QUERY); $rsm = new Query\ResultSetMapping(); @@ -364,12 +359,12 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface $nq = $this->entityManager->createNativeQuery($query, $rsm); $idx = 1; - for ($i=1; $i<=(count($this->personIds)); $i++) { - $idx++; - $nq->setParameter($i, $this->personIds[$i-1]); + for ($i = 1; $i <= count($this->personIds); ++$i) { + ++$idx; + $nq->setParameter($i, $this->personIds[$i - 1]); } $nq->setParameter($idx++, $data['reportdate_min'], 'date'); - $nq->setParameter($idx , $data['reportdate_max'], 'date'); + $nq->setParameter($idx, $data['reportdate_max'], 'date'); return $this->splitArrayToColumns( $nq->getResult() @@ -415,60 +410,60 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface * which do not need to be translated, or value already translated in * database. But the header must be, in every case, translated. * - * - * @param string $key The column key, as added in the query + * @param string $key The column key, as added in the query * @param mixed[] $values The values from the result. if there are duplicates, those might be given twice. Example: array('FR', 'BE', 'CZ', 'FR', 'BE', 'FR') - * @param mixed $data The data from the export's form (as defined in `buildForm` + * @param mixed $data The data from the export's form (as defined in `buildForm` + * * @return \Closure where the first argument is the value, and the function should return the label to show in the formatted file. Example : `function($countryCode) use ($countries) { return $countries[$countryCode]->getName(); }` */ public function getLabels($key, array $values, $data) { + return match ($key) { + 'reportdate', 'birthdate' => function ($value) use ($key) { + if ('_header' === $value) { + return $key; + } + if (empty($value)) { + return ''; + } - switch ($key) { - case 'reportdate': - case 'birthdate': - /** @var \DateTime $value */ - return function($value) use ($key) { - if ($value === '_header') { return $key; } - if (empty($value)) { return ''; } - return $value->format('d-m-Y'); - }; - case 'countryofbirth': - return function ($value) use ($key) { - if ($value === '_header') { - return $key; - } - return $value['fr']; - }; - case 'gender': - return function ($value) use ($key) { - $gend_array = [ 'man' => 'Homme', 'woman' => 'Femme', 'both' => 'Indéterminé' ]; - if ($value === '_header') { return $key; } - if (empty($value)) { return ''; } - return $gend_array[$value]; - }; - case 'id': - case 'firstname': - case 'lastname': - case 'placeofbirth': - case 'notesperso': - case 'notesemploi': - default: - return function ($value) use ($key) { - if ($value === '_header') { - return $key; - } - if (empty($value)) { return ''; } - return $value; - }; - } + return $value->format('d-m-Y'); + }, + 'countryofbirth' => function ($value) use ($key) { + if ('_header' === $value) { + return $key; + } + + return $value['fr']; + }, + 'gender' => function ($value) use ($key) { + $gend_array = ['man' => 'Homme', 'woman' => 'Femme', 'both' => 'Indéterminé']; + if ('_header' === $value) { + return $key; + } + if (empty($value)) { + return ''; + } + + return $gend_array[$value]; + }, + default => function ($value) use ($key) { + if ('_header' === $value) { + return $key; + } + if (empty($value)) { + return ''; + } + + return $value; + }, + }; } - /** - * Native Query SQL + * Native Query SQL. */ - const QUERY = << ProjetProfessionnel::TYPE_CONTRAT, - 'projet_prof__volume_horaire__label' => ProjetProfessionnel::VOLUME_HORAIRES + 'projet_prof__volume_horaire__label' => ProjetProfessionnel::VOLUME_HORAIRES, ]; /** * @var array */ - const FIELDS = [ + public const FIELDS = [ 'id' => 'integer', 'firstname' => 'string', 'lastname' => 'string', @@ -70,8 +77,6 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn /** * ListAcquisition constructor. - * - * @param EntityManagerInterface $em */ public function __construct(EntityManagerInterface $em) { @@ -83,24 +88,21 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn * violation on the data. * * @param mixed $data the data, as returned by the user - * @param ExecutionContextInterface $context */ public function validateForm($data, ExecutionContextInterface $context) {} /** - * get a title, which will be used in UI (and translated) + * get a title, which will be used in UI (and translated). * * @return string */ public function getTitle() { - return "Liste des projets professionnels par personne"; + return 'Liste des projets professionnels par personne'; } /** * Add a form to collect data from the user. - * - * @param FormBuilderInterface $builder */ public function buildForm(FormBuilderInterface $builder) { @@ -110,16 +112,14 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn 'expanded' => true, 'choices_as_values' => true, 'label' => 'Fields to include in export', - 'choice_label' => function ($key) { - return str_replace('__', '.', $key); - }, + 'choice_label' => fn ($key) => str_replace('__', '.', (string) $key), 'choices' => array_combine($this->getFields(), $this->getFields()), 'data' => array_combine($this->getFields(), $this->getFields()), 'choice_attr' => [], 'attr' => ['class' => ''], 'constraints' => [new Callback([ 'callback' => function ($selected, ExecutionContextInterface $context) { - if (count($selected) === 0) { + if (0 === count($selected)) { $context ->buildViolation('You must select at least one element') ->atPath('fields') @@ -172,7 +172,7 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn */ public function getDescription() { - return "Crée une liste des personnes et de leur projet professionnel en fonction de différents paramètres."; + return 'Crée une liste des personnes et de leur projet professionnel en fonction de différents paramètres.'; } /** @@ -185,12 +185,12 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn * * The returned object should be an instance of QueryBuilder or NativeQuery. * - * @param array $requiredModifiers - * @param array $acl an array where each row has a `center` key containing the Chill\MainBundle\Entity\Center, and `circles` keys containing the reachable circles. Example: `array( array('center' => $centerA, 'circles' => array($circleA, $circleB) ) )` + * @param array $acl an array where each row has a `center` key containing the Chill\MainBundle\Entity\Center, and `circles` keys containing the reachable circles. Example: `array( array('center' => $centerA, 'circles' => array($circleA, $circleB) ) )` * @param array $data the data from the form, if any - * @return QueryBuilder|\Doctrine\ORM\NativeQuery the query to execute. + * + * @return QueryBuilder|\Doctrine\ORM\NativeQuery the query to execute */ - public function initiateQuery(array $requiredModifiers, array $acl, array $data = array()) + public function initiateQuery(array $requiredModifiers, array $acl, array $data = []) { return $this->entityManager->createQueryBuilder() ->from('ChillPersonBundle:Person', 'person'); @@ -205,14 +205,13 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn */ public function supportsModifiers() { - return [ 'projetprofessionnel', 'person' ]; + return ['projetprofessionnel', 'person']; } /** * Return the required Role to execute the Export. * - * @return \Symfony\Component\Security\Core\Role\Role - * + * @return Role */ public function requiredRole() { @@ -226,11 +225,11 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn */ public function getAllowedFormattersTypes() { - return [ FormatterInterface::TYPE_LIST ]; + return [FormatterInterface::TYPE_LIST]; } /** - * Return array FIELDS keys only + * Return array FIELDS keys only. * * @return array */ @@ -241,12 +240,13 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn /** * give the list of keys the current export added to the queryBuilder in - * self::initiateQuery + * self::initiateQuery. * * Example: if your query builder will contains `SELECT count(id) AS count_id ...`, * this function will return `array('count_id')`. * * @param mixed[] $data the data from the export's form (added by self::buildForm) + * * @return array */ public function getQueryKeys($data) @@ -255,37 +255,37 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn $fields = []; foreach ($data['fields'] as $key) { - switch ($key) { case 'projet_prof__type_contrat__label': case 'projet_prof__volume_horaire__label': - foreach ($projet_professionnel[$key] as $item) { $this->translationCompatKey($item, $key); $fields[] = $item; } break; - case "projet_prof__souhait__code": - case "projet_prof__type_contrat__note": - case "projet_prof__volume_horaire__note": - case "projet_prof__idee": - case "projet_prof__encoursdeconstruction": - case "projet_prof__valide__note": - case "projet_prof__valide__code": - case "projet_prof__note": - $key = str_replace('__', '.', $key); + case 'projet_prof__souhait__code': + case 'projet_prof__type_contrat__note': + case 'projet_prof__volume_horaire__note': + case 'projet_prof__idee': + case 'projet_prof__encoursdeconstruction': + case 'projet_prof__valide__note': + case 'projet_prof__valide__code': + case 'projet_prof__note': + $key = str_replace('__', '.', (string) $key); + // no break default: $fields[] = $key; } } + return $fields; } /** * Make item compatible with YAML messages ids - * for fields that are splitted in columns (with field key to replace) + * for fields that are splitted in columns (with field key to replace). * * AVANT * key: projet_prof__volume_horaire__label @@ -293,7 +293,7 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn * APRES * item: projet_prof.volume_horaire.temps_plein * - * @param string $item (&) passed by reference + * @param string $item (&) passed by reference * @param string $key */ private function translationCompatKey(&$item, $key) @@ -305,9 +305,10 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn /** * Some fields values are arrays that have to be splitted in columns. - * This function split theses fields + * This function split theses fields. * * @param array $rows + * * @return array|\Closure */ private function splitArrayToColumns($rows) @@ -319,24 +320,19 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn */ $results = []; foreach ($rows as $row) { - /** * @var string $key - * @var mixed $value */ $res = []; foreach ($row as $key => $value) { - switch ($key) { case 'projet_prof__type_contrat__label': case 'projet_prof__volume_horaire__label': - foreach ($projet_professionnel[$key] as $item) { $this->translationCompatKey($item, $key); - if (count($value) === 0) { + if (0 === count($value)) { $res[$item] = ''; - } else { foreach ($value as $v) { $this->translationCompatKey($v, $key); @@ -344,30 +340,31 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn if ($item === $v) { $res[$item] = 'x'; break; - } else { - $res[$item] = ''; } + $res[$item] = ''; } } } break; - case "projet_prof__souhait__code": - case "projet_prof__type_contrat__note": - case "projet_prof__volume_horaire__note": - case "projet_prof__idee": - case "projet_prof__encoursdeconstruction": - case "projet_prof__valide__note": - case "projet_prof__valide__code": - case "projet_prof__note": - $key = str_replace('__', '.', $key); + case 'projet_prof__souhait__code': + case 'projet_prof__type_contrat__note': + case 'projet_prof__volume_horaire__note': + case 'projet_prof__idee': + case 'projet_prof__encoursdeconstruction': + case 'projet_prof__valide__note': + case 'projet_prof__valide__code': + case 'projet_prof__note': + $key = str_replace('__', '.', (string) $key); + // no break default: $res[$key] = $value; } } $results[] = $res; } + return $results; } @@ -375,16 +372,17 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn * Return the results of the query builder. * * @param QueryBuilder|\Doctrine\ORM\NativeQuery $qb - * @param mixed[] $data the data from the export's form (added by self::buildForm) + * @param mixed[] $data the data from the export's form (added by self::buildForm) + * * @return mixed[] an array of results */ public function getResult($qb, $data) { - $qb->select('person.id'); + $qb->select('person.id'); $ids = $qb->getQuery()->getResult(Query::HYDRATE_SCALAR); - $this->personIds = array_map(function ($e) { return $e['id']; }, $ids); - $personIdsParameters = '?'. \str_repeat(', ?', count($this->personIds) -1); + $this->personIds = array_map(fn ($e) => $e['id'], $ids); + $personIdsParameters = '?'.\str_repeat(', ?', count($this->personIds) - 1); $query = \str_replace('%person_ids%', $personIdsParameters, self::QUERY); $rsm = new Query\ResultSetMapping(); @@ -398,12 +396,12 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn $nq = $this->entityManager->createNativeQuery($query, $rsm); $idx = 1; - for ($i=1; $i<=(count($this->personIds)); $i++) { - $idx++; - $nq->setParameter($i, $this->personIds[$i-1]); + for ($i = 1; $i <= count($this->personIds); ++$i) { + ++$idx; + $nq->setParameter($i, $this->personIds[$i - 1]); } $nq->setParameter($idx++, $data['reportdate_min'], 'date'); - $nq->setParameter($idx , $data['reportdate_max'], 'date'); + $nq->setParameter($idx, $data['reportdate_max'], 'date'); return $this->splitArrayToColumns( $nq->getResult() @@ -449,63 +447,70 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn * which do not need to be translated, or value already translated in * database. But the header must be, in every case, translated. * - * - * @param string $key The column key, as added in the query + * @param string $key The column key, as added in the query * @param mixed[] $values The values from the result. if there are duplicates, those might be given twice. Example: array('FR', 'BE', 'CZ', 'FR', 'BE', 'FR') - * @param mixed $data The data from the export's form (as defined in `buildForm` + * @param mixed $data The data from the export's form (as defined in `buildForm` + * * @return \Closure where the first argument is the value, and the function should return the label to show in the formatted file. Example : `function($countryCode) use ($countries) { return $countries[$countryCode]->getName(); }` */ public function getLabels($key, array $values, $data) { - switch ($key) { - case 'birthdate': - /** @var \DateTime $value */ - return function($value) use ($key) { - if ($value === '_header') { return $key; } - if (empty($value)) { return ''; } - return $value->format('d-m-Y'); - }; - case 'countryofbirth': - return function ($value) use ($key) { - if ($value === '_header') { - return $key; - } - return $value['fr']; - }; - case 'projet_prof.valide.code': - case 'projet_prof.souhait.code': - return function ($value) use ($key) { - if ($value === '_header') { return $key; } - if ($value === '{NULL}') { return ''; } - return str_replace(['{','}'], '', $value); - }; - case 'gender': - return function ($value) use ($key) { - $gend_array = [ 'man' => 'Homme', 'woman' => 'Femme', 'both' => 'Indéterminé' ]; - if ($value === '_header') { return $key; } - if (empty($value)) { return ''; } - return $gend_array[$value]; - }; - case 'id': - case 'firstname': - case 'lastname': - case 'placeofbirth': + return match ($key) { + 'birthdate' => function ($value) use ($key) { + if ('_header' === $value) { + return $key; + } + if (empty($value)) { + return ''; + } - default: - return function ($value) use ($key) { - if ($value === '_header') { - return $key; - } - if (empty($value)) { return ''; } - return $value; - }; - } + return $value->format('d-m-Y'); + }, + 'countryofbirth' => function ($value) use ($key) { + if ('_header' === $value) { + return $key; + } + + return $value['fr']; + }, + 'projet_prof.valide.code', 'projet_prof.souhait.code' => function ($value) use ($key) { + if ('_header' === $value) { + return $key; + } + if ('{NULL}' === $value) { + return ''; + } + + return str_replace(['{', '}'], '', $value); + }, + 'gender' => function ($value) use ($key) { + $gend_array = ['man' => 'Homme', 'woman' => 'Femme', 'both' => 'Indéterminé']; + if ('_header' === $value) { + return $key; + } + if (empty($value)) { + return ''; + } + + return $gend_array[$value]; + }, + default => function ($value) use ($key) { + if ('_header' === $value) { + return $key; + } + if (empty($value)) { + return ''; + } + + return $value; + }, + }; } /** - * Native Query SQL + * Native Query SQL. */ - const QUERY = << 'Accompagnement', 'multiple' => true, 'expanded' => true, - 'choice_label' => function($k) { return 'accompagnement.'.$k; } - ]) + 'choice_label' => fn ($k) => 'accompagnement.'.$k, + ]) ->add('accompagnementRQTHDate', ChillDateType::class, [ 'label' => "Date d'accompagnement RQTH", 'required' => false, - - ]) - ->add('accompagnementComment', TextAreaType::class, [ - 'label' => "Accompagnement autre: précisions", + ]) + ->add('accompagnementComment', TextareaType::class, [ + 'label' => 'Accompagnement autre: précisions', 'required' => false, - ]) ->add('poleEmploiId', TextType::class, [ - 'label' => "Identifiant pôle emploi", + 'label' => 'Identifiant pôle emploi', 'required' => false, ]) ->add('poleEmploiInscriptionDate', ChillDateType::class, [ 'label' => "Date d'inscription Pôle emploi", - 'required' => false + 'required' => false, ]) ->add('cafId', TextType::class, [ - 'label' => "Numéro allocataire CAF", - 'required' => false + 'label' => 'Numéro allocataire CAF', + 'required' => false, ]) ->add('cafInscriptionDate', ChillDateType::class, [ 'label' => "Date d'inscription à la CAF", - 'required' => false + 'required' => false, ]) ->add('cERInscriptionDate', ChillDateType::class, [ - 'label' => "Date CER", - 'required' => false + 'label' => 'Date CER', + 'required' => false, ]) ->add('pPAEInscriptionDate', ChillDateType::class, [ - 'label' => "Date PPAE", - 'required' => false + 'label' => 'Date PPAE', + 'required' => false, ]) ->add('nEETEligibilite', ChoiceType::class, [ - 'label' => "Éligibilité NEET", + 'label' => 'Éligibilité NEET', 'choices' => \array_combine(CSPerson::NEET_ELIGIBILITY, CSPerson::NEET_ELIGIBILITY), - 'choice_label' => function($k) { return 'neet_eligibility.'.$k; }, + 'choice_label' => fn ($k) => 'neet_eligibility.'.$k, 'multiple' => false, 'expanded' => true, - 'required' => false + 'required' => false, ]) ->add('cERSignataire', TextType::class, [ - 'label' => "Signataire CER", - 'required' => false + 'label' => 'Signataire CER', + 'required' => false, ]) ->add('pPAESignataire', TextType::class, [ - 'label' => "Signataire PPAE", - 'required' => false + 'label' => 'Signataire PPAE', + 'required' => false, ]) ->add('nEETCommissionDate', ChillDateType::class, [ - 'label' => "Date commission NEET", - 'required' => false + 'label' => 'Date commission NEET', + 'required' => false, ]) ->add('fSEMaDemarcheCode', TextType::class, [ 'label' => 'Code "Ma démarche FSE"', - 'required' => false + 'required' => false, ]) ->add('prescripteur', PickThirdPartyType::class, [ 'required' => false, 'types' => ['prescripteur'], 'label' => 'Prescripteur', - 'center' => $options['center'] + 'center' => $options['center'], ]) ->add('dispositifsNotes', TextareaType::class, [ 'required' => false, - 'label' => "Notes" + 'label' => 'Notes', ]) ->add('dateContratIEJ', ChillDateType::class, [ 'required' => false, - 'label' => " Date du contrat d’engagement IEJ" + 'label' => ' Date du contrat d’engagement IEJ', ]) ->add('dateAvenantIEJ', ChillDateType::class, [ 'required' => false, - 'label' => " Date de l'avenant IEJ" + 'label' => " Date de l'avenant IEJ", ]); } - /** - * {@inheritdoc} - */ public function configureOptions(OptionsResolver $resolver) { - $resolver->setDefaults(array( - 'data_class' => 'Chill\ChillJobBundle\Entity\CSPerson' - )); + $resolver->setDefaults(['data_class' => CSPerson::class]); $resolver ->setDefined('center') ->setAllowedTypes('center', [\Chill\MainBundle\Entity\Center::class]) - ; + ; } - /** - * {@inheritdoc} - */ public function getBlockPrefix() { return 'csconnectes_spbundle_csperson'; diff --git a/src/Bundle/ChillJobBundle/src/Form/CSPersonPersonalSituationType.php b/src/Bundle/ChillJobBundle/src/Form/CSPersonPersonalSituationType.php index 2b2a8fa23..ea6896553 100644 --- a/src/Bundle/ChillJobBundle/src/Form/CSPersonPersonalSituationType.php +++ b/src/Bundle/ChillJobBundle/src/Form/CSPersonPersonalSituationType.php @@ -1,5 +1,14 @@ add('personMaritalStatus', Select2MaritalStatusType::class, array( - 'required' => false, - 'label' => 'État civil' - )) + ->add('personMaritalStatus', Select2MaritalStatusType::class, ['required' => false, 'label' => 'État civil']) ->add('situationLogement', ChoiceType::class, [ 'choices' => \array_combine( CSPerson::SITUATIONS_LOGEMENTS, - CSPerson::SITUATIONS_LOGEMENTS), - 'choice_label' => function($k) { return 'situation_logement.'.$k; }, + CSPerson::SITUATIONS_LOGEMENTS + ), + 'choice_label' => fn ($k) => 'situation_logement.'.$k, 'required' => false, 'label' => 'Situation de logement', 'multiple' => false, - 'expanded' => true + 'expanded' => true, ]) ->add('situationLogementPrecision', TextareaType::class, [ 'label' => 'Précisions', - 'required' => false + 'required' => false, ]) ->add('enfantACharge', IntegerType::class, [ 'label' => 'Enfants à charge', - 'required' => false + 'required' => false, ]) ->add('niveauMaitriseLangue', ChoiceType::class, [ 'choices' => \array_combine( CSPerson::NIVEAU_MAITRISE_LANGUE, - CSPerson::NIVEAU_MAITRISE_LANGUE), - 'choice_label' => function($k) { return 'niveau_maitrise_langue.'.$k; }, + CSPerson::NIVEAU_MAITRISE_LANGUE + ), + 'choice_label' => fn ($k) => 'niveau_maitrise_langue.'.$k, 'multiple' => true, 'required' => false, 'expanded' => true, - 'label' => 'Maitrise de la langue française' + 'label' => 'Maitrise de la langue française', ]) ->add('vehiculePersonnel', ChoiceType::class, [ 'choices' => [ 'Oui' => true, - 'Non' => false + 'Non' => false, ], 'required' => false, - 'multiple' => false + 'multiple' => false, ]) ->add('permisConduire', ChoiceType::class, [ 'choices' => [ - \array_combine(CSPerson::PERMIS_CONDUIRE, CSPerson::PERMIS_CONDUIRE) + \array_combine(CSPerson::PERMIS_CONDUIRE, CSPerson::PERMIS_CONDUIRE), ], 'label' => 'Permis de conduire', 'required' => false, 'multiple' => true, 'expanded' => true, - 'choice_label' => function($k) { return 'permis_conduire.'.$k; } + 'choice_label' => fn ($k) => 'permis_conduire.'.$k, ]) ->add('situationProfessionnelle', ChoiceType::class, [ 'choices' => \array_combine(CSPerson::SITUATION_PROFESSIONNELLE, CSPerson::SITUATION_PROFESSIONNELLE), 'required' => false, 'multiple' => false, 'expanded' => true, - 'choice_label' => function($k) { return 'situation_professionnelle.'.$k; } + 'choice_label' => fn ($k) => 'situation_professionnelle.'.$k, ]) ->add('dateFinDernierEmploi', ChillDateType::class, [ 'label' => 'Date de la fin du dernier emploi', - 'required' => false + 'required' => false, ]) ->add('typeContrat', ChoiceType::class, [ 'choices' => \array_combine(CSPerson::TYPE_CONTRAT, CSPerson::TYPE_CONTRAT), @@ -92,33 +97,33 @@ class CSPersonPersonalSituationType extends AbstractType 'required' => false, 'multiple' => true, 'expanded' => true, - 'choice_label' => function($k) { return 'type_contrat.'.$k; } + 'choice_label' => fn ($k) => 'type_contrat.'.$k, ]) ->add('typeContratAide', TextType::class, [ - 'label' => "Type de contrat aidé", - 'required' => false + 'label' => 'Type de contrat aidé', + 'required' => false, ]) ->add('ressources', ChoiceType::class, [ 'choices' => \array_combine(CSPerson::RESSOURCES, CSPerson::RESSOURCES), - 'choice_label' => function($k) { return 'ressource.'.$k; }, + 'choice_label' => fn ($k) => 'ressource.'.$k, 'required' => false, 'multiple' => true, 'expanded' => true, ]) ->add('ressourcesComment', TextareaType::class, [ 'label' => 'Information autre ressource', - 'required' => false + 'required' => false, ]) ->add('ressourceDate1Versement', ChillDateType::class, [ 'label' => "Date du premier versement (si bénéficiaire d'une aide)", 'required' => false, ]) ->add('cPFMontant', MoneyType::class, [ - 'label' => "Montant CPF", + 'label' => 'Montant CPF', 'required' => false, ]) ->add('acompteDIF', MoneyType::class, [ - 'label' => "Compte DIF", + 'label' => 'Compte DIF', 'required' => false, ]) ->add('handicapIs', ChoiceType::class, [ @@ -126,7 +131,7 @@ class CSPersonPersonalSituationType extends AbstractType 'required' => false, 'choices' => [ 'Oui' => true, - 'Non' => false + 'Non' => false, ], 'multiple' => false, 'expanded' => true, @@ -141,123 +146,113 @@ class CSPersonPersonalSituationType extends AbstractType 'multiple' => false, 'expanded' => true, 'choices' => \array_combine(CSPerson::HANDICAP_RECOMMANDATIONS, CSPerson::HANDICAP_RECOMMANDATIONS), - 'choice_label' => function($k) { return 'handicap_recommandation.'.$k; } + 'choice_label' => fn ($k) => 'handicap_recommandation.'.$k, ]) ->add('handicapAccompagnement', PickThirdPartyType::class, [ 'center' => $options['center'], - 'types' => [ 'prescripteur' ], + 'types' => ['prescripteur'], 'required' => false, - 'multiple' => false + 'multiple' => false, ]) ->add('mobiliteMoyenDeTransport', ChoiceType::class, [ 'required' => false, 'multiple' => true, 'expanded' => true, - 'label' => "Moyens de transports accessibles", + 'label' => 'Moyens de transports accessibles', 'choices' => \array_combine( CSPerson::MOBILITE_MOYEN_TRANSPORT, - CSPerson::MOBILITE_MOYEN_TRANSPORT), - 'choice_label' => function($k) { - return 'moyen_transport.'.$k; - } + CSPerson::MOBILITE_MOYEN_TRANSPORT + ), + 'choice_label' => fn ($k) => 'moyen_transport.'.$k, ]) ->add('mobiliteNotes', TextareaType::class, [ 'required' => false, - 'label' => "Notes concernant la mobilité" + 'label' => 'Notes concernant la mobilité', ]) ->add('documentCV', StoredObjectType::class, [ 'label' => 'CV', 'required' => false, - 'error_bubbling' => false + 'error_bubbling' => false, ]) ->add('documentAgrementIAE', StoredObjectType::class, [ 'label' => 'Document Agrément IAE', 'required' => false, - 'error_bubbling' => false + 'error_bubbling' => false, ]) ->add('documentRQTH', StoredObjectType::class, [ 'label' => 'Document RQTH', 'required' => false, - 'error_bubbling' => false + 'error_bubbling' => false, ]) ->add('documentAttestationNEET', StoredObjectType::class, [ 'label' => 'Attestation NEET', 'required' => false, - 'error_bubbling' => false + 'error_bubbling' => false, ]) ->add('documentCI', StoredObjectType::class, [ 'label' => 'Carte d\'identité', 'required' => false, - 'error_bubbling' => false + 'error_bubbling' => false, ]) ->add('documentTitreSejour', StoredObjectType::class, [ 'label' => 'Titre de séjour', 'required' => false, - 'error_bubbling' => false + 'error_bubbling' => false, ]) ->add('documentAttestationFiscale', StoredObjectType::class, [ 'label' => 'Attestation fiscale', 'required' => false, - 'error_bubbling' => false + 'error_bubbling' => false, ]) ->add('documentPermis', StoredObjectType::class, [ 'label' => 'Permis', 'required' => false, - 'error_bubbling' => false + 'error_bubbling' => false, ]) ->add('documentAttestationCAAF', StoredObjectType::class, [ 'label' => 'Attestation CAF', 'required' => false, - 'error_bubbling' => false + 'error_bubbling' => false, ]) ->add('documentContraTravail', StoredObjectType::class, [ 'label' => 'Contrat de travail', 'required' => false, - 'error_bubbling' => false + 'error_bubbling' => false, ]) ->add('documentAttestationFormation', StoredObjectType::class, [ 'label' => 'Attestation formation', 'required' => false, - 'error_bubbling' => false + 'error_bubbling' => false, ]) ->add('documentQuittanceLoyer', StoredObjectType::class, [ 'label' => 'Quittance de loyer', 'required' => false, - 'error_bubbling' => false + 'error_bubbling' => false, ]) ->add('documentFactureElectricite', StoredObjectType::class, [ 'label' => 'Facture d\'électricité', 'required' => false, - 'error_bubbling' => false + 'error_bubbling' => false, ]) ->add('documentAttestationSecuriteSociale', StoredObjectType::class, [ 'label' => 'Attestation de sécurité sociale', 'required' => false, - 'error_bubbling' => false + 'error_bubbling' => false, ]) - ; - - }/** - * {@inheritdoc} - */ - public function configureOptions(OptionsResolver $resolver) - { - $resolver->setDefaults(array( - 'data_class' => 'Chill\ChillJobBundle\Entity\CSPerson' - )); - - $resolver->setRequired('center') - ->setAllowedTypes('center', [ \Chill\MainBundle\Entity\Center::class ]) - ; + ; + } + + public function configureOptions(OptionsResolver $resolver) + { + $resolver->setDefaults(['data_class' => CSPerson::class]); + + $resolver->setRequired('center') + ->setAllowedTypes('center', [\Chill\MainBundle\Entity\Center::class]) + ; } - /** - * {@inheritdoc} - */ public function getBlockPrefix() { return 'csconnectes_spbundle_csperson'; } - - } diff --git a/src/Bundle/ChillJobBundle/src/Form/CV/ExperienceType.php b/src/Bundle/ChillJobBundle/src/Form/CV/ExperienceType.php index 9950d2b87..6b5e0df3a 100644 --- a/src/Bundle/ChillJobBundle/src/Form/CV/ExperienceType.php +++ b/src/Bundle/ChillJobBundle/src/Form/CV/ExperienceType.php @@ -1,5 +1,14 @@ true, 'label' => 'Poste', 'label_attr' => [ - 'class' => 'required ' - ] + 'class' => 'required ', + ], ]) ->add('structure', TextType::class, [ 'required' => false, - 'label' => "Nom de la structure" + 'label' => 'Nom de la structure', ]) ->add('startDate', ChillDateType::class, [ 'required' => false, - 'label' => 'Date de début' + 'label' => 'Date de début', ]) ->add('endDate', ChillDateType::class, [ 'required' => false, - 'label' => "Date de fin" + 'label' => 'Date de fin', ]) ->add('contratType', ChoiceType::class, [ 'required' => false, 'expanded' => true, 'multiple' => false, 'choices' => \array_combine(Experience::CONTRAT_TYPE, Experience::CONTRAT_TYPE), - 'choice_label' => function($k) { return 'xp_contrat_type.'.$k; } + 'choice_label' => fn ($k) => 'xp_contrat_type.'.$k, ]) ->add('notes', TextareaType::class, [ 'label' => 'Notes', - 'required' => false + 'required' => false, ]) - ; - }/** - * {@inheritdoc} - */ - public function configureOptions(OptionsResolver $resolver) - { - $resolver->setDefaults(array( - 'data_class' => 'Chill\ChillJobBundle\Entity\CV\Experience' - )); + ; + } + + public function configureOptions(OptionsResolver $resolver) + { + $resolver->setDefaults(['data_class' => Experience::class]); } - /** - * {@inheritdoc} - */ public function getBlockPrefix() { return 'csconnectes_spbundle_cv_experience'; } - - } diff --git a/src/Bundle/ChillJobBundle/src/Form/CV/FormationType.php b/src/Bundle/ChillJobBundle/src/Form/CV/FormationType.php index ec1792713..fa0e75982 100644 --- a/src/Bundle/ChillJobBundle/src/Form/CV/FormationType.php +++ b/src/Bundle/ChillJobBundle/src/Form/CV/FormationType.php @@ -1,5 +1,14 @@ add('title', TextType::class, [ 'required' => true, - 'label' => "Nom de la formation", + 'label' => 'Nom de la formation', 'label_attr' => [ - 'class' => 'required ' - ] + 'class' => 'required ', + ], ]) ->add('organisme', TextType::class, [ 'label' => 'Organisme', - 'required' => false + 'required' => false, ]) ->add('startDate', ChillDateType::class, [ 'required' => false, - 'label' => "Date de début" + 'label' => 'Date de début', ]) ->add('endDate', ChillDateType::class, [ 'required' => false, - 'label' => "Date de fin" + 'label' => 'Date de fin', ]) ->add('diplomaObtained', ChoiceType::class, [ - 'label' => "Diplôme obtenu ?", + 'label' => 'Diplôme obtenu ?', 'required' => false, 'multiple' => false, 'expanded' => true, 'choices' => \array_combine(F::DIPLOMA_OBTAINED, F::DIPLOMA_OBTAINED), - 'choice_label' => function($k) { return 'diploma_obtained.'.$k; } + 'choice_label' => fn ($k) => 'diploma_obtained.'.$k, ]) ->add('diplomaReconnue', ChoiceType::class, [ - 'label' => "Diplôme reconnu en France ?", + 'label' => 'Diplôme reconnu en France ?', 'required' => false, 'multiple' => false, 'expanded' => true, 'choices' => \array_combine(F::DIPLOMA_RECONNU, F::DIPLOMA_RECONNU), - 'choice_label' => function($k) { return 'diploma_reconnu.'.$k; } + 'choice_label' => fn ($k) => 'diploma_reconnu.'.$k, ]) - ; - }/** - * {@inheritdoc} - */ - public function configureOptions(OptionsResolver $resolver) - { - $resolver->setDefaults(array( - 'data_class' => 'Chill\ChillJobBundle\Entity\CV\Formation' - )); + ; + } + + public function configureOptions(OptionsResolver $resolver) + { + $resolver->setDefaults(['data_class' => F::class]); } - /** - * {@inheritdoc} - */ public function getBlockPrefix() { return 'csconnectes_spbundle_cv_formation'; } - - } diff --git a/src/Bundle/ChillJobBundle/src/Form/CVType.php b/src/Bundle/ChillJobBundle/src/Form/CVType.php index a4265de2c..38f3ae7eb 100644 --- a/src/Bundle/ChillJobBundle/src/Form/CVType.php +++ b/src/Bundle/ChillJobBundle/src/Form/CVType.php @@ -1,5 +1,14 @@ false, 'expanded' => true, 'choices' => \array_combine(CV::FORMATION_LEVEL, CV::FORMATION_LEVEL), - 'choice_label' => function($k) { return 'formation_level.'.$k; } + 'choice_label' => fn ($k) => 'formation_level.'.$k, ]) ->add('formationType', ChoiceType::class, [ - 'label' => "Type de formation", + 'label' => 'Type de formation', 'required' => false, 'multiple' => false, 'expanded' => true, 'choices' => \array_combine(CV::FORMATION_TYPE, CV::FORMATION_TYPE), - 'choice_label' => function($k) { return 'formation_type.'.$k; } + 'choice_label' => fn ($k) => 'formation_type.'.$k, ]) ->add('spokenLanguages', Select2LanguageType::class, [ 'required' => false, 'multiple' => true, - ]) ->add('notes', TextareaType::class, [ - 'label' => "Note", - 'required' => false + 'label' => 'Note', + 'required' => false, ]) ->add('formations', ChillCollectionType::class, [ - 'label' => "Formations", + 'label' => 'Formations', 'entry_type' => FormationType::class, 'allow_add' => true, 'allow_delete' => true, @@ -59,36 +64,28 @@ class CVType extends AbstractType 'button_remove_label' => 'Retirer cette formation', 'required' => false, 'by_reference' => false, - 'block_name' => 'formation_list' + 'block_name' => 'formation_list', ]) ->add('experiences', ChillCollectionType::class, [ - 'label' => "Expériences", + 'label' => 'Expériences', 'entry_type' => ExperienceType::class, 'allow_add' => true, 'allow_delete' => true, 'button_add_label' => 'Ajouter une expérience', 'button_remove_label' => 'Retirer cette expérience', 'required' => false, - 'by_reference' => false + 'by_reference' => false, ]) - ; - }/** - * {@inheritdoc} - */ - public function configureOptions(OptionsResolver $resolver) - { - $resolver->setDefaults(array( - 'data_class' => 'Chill\ChillJobBundle\Entity\CV' - )); + ; + } + + public function configureOptions(OptionsResolver $resolver) + { + $resolver->setDefaults(['data_class' => CV::class]); } - /** - * {@inheritdoc} - */ public function getBlockPrefix() { return 'csconnectes_spbundle_cv'; } - - } diff --git a/src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php b/src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php index aab8fae7a..c1fd33334 100644 --- a/src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php +++ b/src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php @@ -1,6 +1,14 @@ validator = $validator; } - public function loadChoiceList($value = null): ChoiceListInterface { return new ArrayChoiceList($this->lazyLoadedAppellations, $value); @@ -73,16 +71,15 @@ class RomeAppellationChoiceLoader implements ChoiceLoaderInterface public function loadChoicesForValues($values, $value = null) { - $choices = []; - foreach($values as $v) { + foreach ($values as $v) { if (empty($v)) { continue; } // start with "original-" ? then we load from api - if (\substr($v, 0, \strlen('original-')) === 'original-') { + if (str_starts_with($v, 'original-')) { $code = \substr($v, \strlen('original-')); $appellation = $this->appellationRepository->findOneByCode($code); } else { @@ -90,17 +87,17 @@ class RomeAppellationChoiceLoader implements ChoiceLoaderInterface $appellation = $this->appellationRepository->find($id); } - if (NULL === $appellation) { + if (null === $appellation) { $def = $this->apiAppellation->getAppellation($code); $metier = $this->em->getRepository(Metier::class) ->findOneByCode($def->metier->code) - ; + ; - if ($metier === NULL) { + if (null === $metier) { $metier = (new Metier()) ->setCode($def->metier->code) ->setLibelle($def->metier->libelle) - ; + ; } $appellation = new Appellation(); @@ -109,16 +106,14 @@ class RomeAppellationChoiceLoader implements ChoiceLoaderInterface ->setCode($def->code) ->setLibelle($def->libelle) ->setMetier($metier) - ; + ; - if ($this->validator->validate($appellation) && $this->validator->validate($metier)) - { + if ($this->validator->validate($appellation) && $this->validator->validate($metier)) { $this->em->persist($appellation); } } - if ($this->em->contains($metier) and $this->em->contains($appellation)) - { + if ($this->em->contains($metier) and $this->em->contains($appellation)) { $choices[] = $appellation; } } @@ -129,7 +124,7 @@ class RomeAppellationChoiceLoader implements ChoiceLoaderInterface public function loadValuesForChoices(array $choices, $value = null) { foreach ($choices as $choice) { - if (NULL === $choice) { + if (null === $choice) { $values[] = null; continue; } diff --git a/src/Bundle/ChillJobBundle/src/Form/FreinType.php b/src/Bundle/ChillJobBundle/src/Form/FreinType.php index 8f9afdbb8..6aa9f71bd 100644 --- a/src/Bundle/ChillJobBundle/src/Form/FreinType.php +++ b/src/Bundle/ChillJobBundle/src/Form/FreinType.php @@ -1,5 +1,14 @@ add('reportDate', ChillDateType::class, [ - 'label' => 'Date du rapport' + 'label' => 'Date du rapport', ]) ->add('freinsPerso', ChoiceType::class, [ 'label' => 'Freins identifiés liés à la situation personnelle', 'choices' => \array_combine(Frein::FREINS_PERSO, Frein::FREINS_PERSO), - 'choice_label' => function($k) { return 'freins_perso.'.$k; }, + 'choice_label' => fn ($k) => 'freins_perso.'.$k, 'required' => false, 'expanded' => true, 'multiple' => true, @@ -32,37 +38,29 @@ class FreinType extends AbstractType ->add('freinsEmploi', ChoiceType::class, [ 'label' => 'Freins identifiés liés à la situation professionnelle', 'choices' => \array_combine(Frein::FREINS_EMPLOI, Frein::FREINS_EMPLOI), - 'choice_label' => function($k) { return 'freins_emploi.'.$k; }, + 'choice_label' => fn ($k) => 'freins_emploi.'.$k, 'required' => false, 'expanded' => true, 'multiple' => true, ]) ->add('notesPerso', TextareaType::class, [ 'label' => 'Notes concernant la situation personnelle', - 'required' => false + 'required' => false, ]) ->add('notesEmploi', TextareaType::class, [ 'label' => 'Notes concernant l\'accès à l\'emploi', - 'required' => false + 'required' => false, ]) - ; - }/** - * {@inheritdoc} - */ - public function configureOptions(OptionsResolver $resolver) - { - $resolver->setDefaults(array( - 'data_class' => 'Chill\ChillJobBundle\Entity\Frein' - )); + ; + } + + public function configureOptions(OptionsResolver $resolver) + { + $resolver->setDefaults(['data_class' => Frein::class]); } - /** - * {@inheritdoc} - */ public function getBlockPrefix() { return 'csconnectes_spbundle_frein'; } - - } diff --git a/src/Bundle/ChillJobBundle/src/Form/ImmersionType.php b/src/Bundle/ChillJobBundle/src/Form/ImmersionType.php index e237ba33c..655b32bb4 100644 --- a/src/Bundle/ChillJobBundle/src/Form/ImmersionType.php +++ b/src/Bundle/ChillJobBundle/src/Form/ImmersionType.php @@ -1,5 +1,14 @@ add('entreprise', PickThirdPartyType::class, [ 'center' => $options['center'], - 'types' => [ 'entreprise' ], + 'types' => ['entreprise'], 'label' => "Identité de l'entreprise", 'required' => true, - 'multiple' => false + 'multiple' => false, ]) ->add('domaineActivite', TextType::class, [ 'label' => "Domaine d'activité", 'required' => true, ]) ->add('tuteurName', TextType::class, [ - 'label' => "Nom du tuteur", - 'required' => true + 'label' => 'Nom du tuteur', + 'required' => true, ]) ->add('tuteurFonction', TextType::class, [ - 'label' => "Fonction du tuteur", - 'required' => true + 'label' => 'Fonction du tuteur', + 'required' => true, ]) ->add('tuteurPhoneNumber', TextType::class, [ - 'label' => "Téléphone du tuteur", - 'required' => true + 'label' => 'Téléphone du tuteur', + 'required' => true, ]) ->add('structureAccName', TextType::class, [ - 'label' => "Nom de la structure", - "required" => false + 'label' => 'Nom de la structure', + 'required' => false, ]) ->add('structureAccPhonenumber', TextType::class, [ - 'label' => "Téléphone de la structure", - 'required' => false + 'label' => 'Téléphone de la structure', + 'required' => false, ]) ->add('structureAccEmail', EmailType::class, [ 'label' => 'Email de la structure', - 'required' => false + 'required' => false, ]) ->add('structureAccAddress', AddressType::class, [ 'label' => 'Addresse de la structure d\'accompagnement', 'required' => false, 'has_valid_from' => false, - 'null_if_empty' => true + 'null_if_empty' => true, ]) ->add('posteTitle', TextType::class, [ 'label' => 'Intitulé du poste', - 'required' => true + 'required' => true, ]) ->add('posteLieu', TextType::class, [ 'label' => "Lieu d'exercice", - 'required' => true + 'required' => true, ]) ->add('debutDate', ChillDateType::class, [ 'label' => "Date de début de l'immersion", - 'required' => true + 'required' => true, ]) ->add('duration', DateIntervalType::class, [ 'unit_choices' => [ - "Weeks" => 'W', - "Months" => 'M', - "Days" => 'D' - ], + 'Weeks' => 'W', + 'Months' => 'M', + 'Days' => 'D', + ], 'label' => "Durée de l'immersion", - 'required' => true + 'required' => true, ]) ->add('horaire', TextareaType::class, [ - 'label' => "Horaire du stagiaire", + 'label' => 'Horaire du stagiaire', 'required' => true, ]) ->add('objectifs', ChoiceType::class, [ - 'label' => "Objectifs", + 'label' => 'Objectifs', 'required' => false, 'multiple' => true, 'expanded' => true, 'choices' => \array_combine(Immersion::OBJECTIFS, Immersion::OBJECTIFS), - 'choice_label' => function($k) { return 'immersion_objectif.'.$k; } + 'choice_label' => fn ($k) => 'immersion_objectif.'.$k, ]) ->add('objectifsAutre', TextareaType::class, [ 'label' => 'Précision sur les objectifs', - 'required' => false + 'required' => false, ]) ->add('noteImmersion', TextareaType::class, [ - 'label' => "Note", - 'required' => false + 'label' => 'Note', + 'required' => false, ]) ; - } elseif ($options['step'] === 'bilan') { + } elseif ('bilan' === $options['step']) { $builder ->add('savoirEtre', ChoiceType::class, [ - 'label' => "Savoir-être du jeune", + 'label' => 'Savoir-être du jeune', 'required' => false, 'multiple' => true, 'expanded' => true, 'choices' => \array_combine(Immersion::SAVOIR_ETRE, Immersion::SAVOIR_ETRE), - 'choice_label' => function($k) { return 'immersion_savoir_etre.'.$k; } + 'choice_label' => fn ($k) => 'immersion_savoir_etre.'.$k, ]) ->add('savoirEtreNote', TextareaType::class, [ - 'label' => "Note", - 'required' => false + 'label' => 'Note', + 'required' => false, ]) ->add('principalesActivites', TextareaType::class, [ - 'label' => "Principales activités", - 'required' => false + 'label' => 'Principales activités', + 'required' => false, ]) ->add('competencesAcquises', TextareaType::class, [ - 'label' => "Compétences acquises", - 'required' => false + 'label' => 'Compétences acquises', + 'required' => false, ]) ->add('competencesADevelopper', TextareaType::class, [ - 'label' => "Compétences à développer", - 'required' => false + 'label' => 'Compétences à développer', + 'required' => false, ]) ->add('noteBilan', TextareaType::class, [ - 'label' => "Notes sur le bilan", - 'required' => false + 'label' => 'Notes sur le bilan', + 'required' => false, ]) - ; + ; foreach ([ - ['ponctualiteSalarie', Immersion::PONCTUALITE_SALARIE, "Ponctualité du salarié"], - ['assiduite', Immersion::ASSIDUITE, "Assiduité"], - ['interetActivite', Immersion::YES_NO_NSP, "La personne s’intéresse à l’ensemble des activités et membres de l’entreprise"], - ['integreRegle', Immersion::INTEGRE_REGLE, "La personne a intégré les règles (les principes) de l’entreprise"], - ['espritInitiative', Immersion::YES_NO_NSP, "La personne fait preuve d’esprit d’initiative"], - ['organisation', Immersion::YES_NO_NSP, "La personne a fait preuve d’organisation"], - ['capaciteTravailEquipe', Immersion::YES_NO_NSP, "Sa capacité à travailler en équipe"], - ['styleVestimentaire', Immersion::YES_NO_NSP, "Style vestimentaire adapté"], - ['langageProf', Immersion::YES_NO_NSP, "Langage professionnel"], - ['appliqueConsigne', Immersion::YES_NO_NSP, "Applique les consignes"], - ['respectHierarchie', Immersion::YES_NO_NSP, "Respecte les niveaux hiérarchiques"], - - ] as list($name, $choices, $label)) { - + ['ponctualiteSalarie', Immersion::PONCTUALITE_SALARIE, 'Ponctualité du salarié'], + ['assiduite', Immersion::ASSIDUITE, 'Assiduité'], + ['interetActivite', Immersion::YES_NO_NSP, 'La personne s’intéresse à l’ensemble des activités et membres de l’entreprise'], + ['integreRegle', Immersion::INTEGRE_REGLE, 'La personne a intégré les règles (les principes) de l’entreprise'], + ['espritInitiative', Immersion::YES_NO_NSP, 'La personne fait preuve d’esprit d’initiative'], + ['organisation', Immersion::YES_NO_NSP, 'La personne a fait preuve d’organisation'], + ['capaciteTravailEquipe', Immersion::YES_NO_NSP, 'Sa capacité à travailler en équipe'], + ['styleVestimentaire', Immersion::YES_NO_NSP, 'Style vestimentaire adapté'], + ['langageProf', Immersion::YES_NO_NSP, 'Langage professionnel'], + ['appliqueConsigne', Immersion::YES_NO_NSP, 'Applique les consignes'], + ['respectHierarchie', Immersion::YES_NO_NSP, 'Respecte les niveaux hiérarchiques'], + ] as [$name, $choices, $label]) { $builder ->add($name, ChoiceType::class, [ 'label' => $label, @@ -163,47 +166,35 @@ class ImmersionType extends AbstractType 'required' => false, 'expanded' => true, 'choices' => $choices, - 'choice_label' => function($el) use ($choices, $name) { - if ($choices === Immersion::YES_NO_NSP) { + 'choice_label' => function ($el) use ($choices, $name) { + if (Immersion::YES_NO_NSP === $choices) { return 'immersion_nsp.'.$el; } return 'immersion_'.$name.'.'.$el; - } + }, ]) ->add($name.'Note', TextareaType::class, [ - 'label' => "Notes", - 'required' => false + 'label' => 'Notes', + 'required' => false, ]); - } } } - /** - * {@inheritdoc} - */ public function configureOptions(OptionsResolver $resolver) { - $resolver->setDefaults(array( - 'data_class' => 'Chill\ChillJobBundle\Entity\Immersion', - 'step' => 'immersion' - )); + $resolver->setDefaults(['data_class' => Immersion::class, 'step' => 'immersion']); $resolver ->setAllowedValues('step', ['immersion', 'bilan']) ->setRequired('center') ->setAllowedTypes('center', \Chill\MainBundle\Entity\Center::class) - ; + ; } - /** - * {@inheritdoc} - */ public function getBlockPrefix() { return 'csconnectes_spbundle_immersion'; } - - } diff --git a/src/Bundle/ChillJobBundle/src/Form/ProjetProfessionnelType.php b/src/Bundle/ChillJobBundle/src/Form/ProjetProfessionnelType.php index a03573d7c..76f3e5b32 100644 --- a/src/Bundle/ChillJobBundle/src/Form/ProjetProfessionnelType.php +++ b/src/Bundle/ChillJobBundle/src/Form/ProjetProfessionnelType.php @@ -1,5 +1,14 @@ add('domaineActiviteSouhait', TextareaType::class, [ 'label' => "Domaine d'activité souhaité", - 'required' => false + 'required' => false, ]) ->add('reportDate', ChillDateType::class, [ 'label' => 'Date', - 'required' => true + 'required' => true, ]) ->add('typeContrat', ChoiceType::class, [ 'label' => 'Type de contrat recherché', 'multiple' => true, 'expanded' => true, - 'choices' => \array_combine(ProjetProfessionnel::TYPE_CONTRAT, - ProjetProfessionnel::TYPE_CONTRAT), - 'choice_label' => function($k) { return 'projet_prof.type_contrat.'.$k; } + 'choices' => \array_combine( + ProjetProfessionnel::TYPE_CONTRAT, + ProjetProfessionnel::TYPE_CONTRAT + ), + 'choice_label' => fn ($k) => 'projet_prof.type_contrat.'.$k, ]) ->add('typeContratNotes', TextareaType::class, [ 'label' => 'Notes concernant le contrat recherché', @@ -50,13 +57,15 @@ class ProjetProfessionnelType extends AbstractType 'multiple' => true, 'expanded' => true, 'required' => true, - 'choices' => \array_combine(ProjetProfessionnel::VOLUME_HORAIRES, - ProjetProfessionnel::VOLUME_HORAIRES), - 'choice_label' => function($k) { return 'projet_prof.volume_horaire.'.$k; } + 'choices' => \array_combine( + ProjetProfessionnel::VOLUME_HORAIRES, + ProjetProfessionnel::VOLUME_HORAIRES + ), + 'choice_label' => fn ($k) => 'projet_prof.volume_horaire.'.$k, ]) ->add('volumeHoraireNotes', TextareaType::class, [ 'label' => 'Notes concernant le volume horaire', - 'required' => false + 'required' => false, ]) ->add('idee', TextareaType::class, [ 'label' => 'Idée', @@ -74,7 +83,7 @@ class ProjetProfessionnelType extends AbstractType ]) ->add('domaineActiviteValide', TextareaType::class, [ 'label' => "Domaine d'activité validé", - 'required' => false + 'required' => false, ]) ->add('valideNotes', TextareaType::class, [ 'label' => 'Validé (notes)', @@ -82,28 +91,18 @@ class ProjetProfessionnelType extends AbstractType ]) ->add('projetProfessionnelNote', TextareaType::class, [ 'label' => 'Notes concernant le projet professionnel', - 'required' => false + 'required' => false, ]) - ; - - - }/** - * {@inheritdoc} - */ - public function configureOptions(OptionsResolver $resolver) - { - $resolver->setDefaults(array( - 'data_class' => 'Chill\ChillJobBundle\Entity\ProjetProfessionnel' - )); + ; + } + + public function configureOptions(OptionsResolver $resolver) + { + $resolver->setDefaults(['data_class' => ProjetProfessionnel::class]); } - /** - * {@inheritdoc} - */ public function getBlockPrefix() { return 'csconnectes_spbundle_projetprofessionnel'; } - - } diff --git a/src/Bundle/ChillJobBundle/src/Form/Type/PickRomeAppellationType.php b/src/Bundle/ChillJobBundle/src/Form/Type/PickRomeAppellationType.php index a7f761df6..471d5e7ce 100644 --- a/src/Bundle/ChillJobBundle/src/Form/Type/PickRomeAppellationType.php +++ b/src/Bundle/ChillJobBundle/src/Form/Type/PickRomeAppellationType.php @@ -1,6 +1,14 @@ addModelTransformer($this->romeAppellationTransformer) - ; + // ->addModelTransformer($this->romeAppellationTransformer) } public function configureOptions(OptionsResolver $resolver) { $resolver ->setDefault('class', Appellation::class) - ->setDefault('choice_label', function(Appellation $a) { - return $a->getLibelle(); - }) - ->setDefault('placeholder', 'Choisir une appellation') - //->setDefault('attr', ['class' => 'select2 ']) - ->setDefault('choice_loader', function(Options $o) { - return new RomeAppellationChoiceLoader( - $this->em, - $this->apiPartenaire, - $this->validator - ); - }) + ->setDefault('choice_label', fn (Appellation $a) => $a->getLibelle()) + ->setDefault('placeholder', 'Choisir une appellation') + // ->setDefault('attr', ['class' => 'select2 ']) + ->setDefault('choice_loader', fn (Options $o) => new RomeAppellationChoiceLoader( + $this->em, + $this->apiPartenaire, + $this->validator + )) ; } @@ -116,7 +107,7 @@ class PickRomeAppellationType extends AbstractType $view->vars['attr']['data-rome-appellation-picker'] = true; $view->vars['attr']['data-select-interactive-loading'] = true; $view->vars['attr']['data-search-url'] = $this->urlGenerator - ->generate('chill_pole_emploi_api_appellation_search', [ '_format' => 'json' ]); + ->generate('chill_pole_emploi_api_appellation_search', ['_format' => 'json']); $view->vars['attr']['data-placeholder'] = 'Choisir une appellation'; $view->vars['attr']['data-no-results-label'] = $this->translator->trans('select2.no_results'); $view->vars['attr']['data-error-load-label'] = $this->translator->trans('select2.error_loading'); diff --git a/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php b/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php index 3f40d11ba..bd329e440 100644 --- a/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php +++ b/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php @@ -1,5 +1,14 @@ authorizationChecker->isGranted(CSConnectesVoter::REPORT_NEW, $person)) { - $menu->addChild('Situation personnelle', [ - 'route' => 'chill_crud_csperson_personal_situation_view', - 'routeParameters' => [ - 'id' => $person->getId() - ] - ]) + $menu->addChild('Situation personnelle', [ + 'route' => 'chill_crud_csperson_personal_situation_view', + 'routeParameters' => [ + 'id' => $person->getId(), + ], + ]) ->setExtras([ - 'order'=> 50 + 'order' => 50, ]); - $menu->addChild('Dispositifs', [ - 'route' => 'chill_crud_csperson_dispositifs_view', - 'routeParameters' => [ - 'id' => $person->getId() - ] - ]) + $menu->addChild('Dispositifs', [ + 'route' => 'chill_crud_csperson_dispositifs_view', + 'routeParameters' => [ + 'id' => $person->getId(), + ], + ]) ->setExtras([ - 'order'=> 51 + 'order' => 51, ]); } $menu->addChild('Parcours d\'accompagnement', [ - 'route' => 'chill_csconnectes_csreport_index', - 'routeParameters' => [ - 'person' => $person->getId() - ] - ]) + 'route' => 'chill_csconnectes_csreport_index', + 'routeParameters' => [ + 'person' => $person->getId(), + ], + ]) ->setExtras([ - 'order' => 52 + 'order' => 52, ]); } public static function getMenuIds(): array { - return [ 'person' ]; + return ['person']; } } diff --git a/src/Bundle/ChillJobBundle/src/Repository/CSPersonRepository.php b/src/Bundle/ChillJobBundle/src/Repository/CSPersonRepository.php index 1b7fdee2e..177917364 100644 --- a/src/Bundle/ChillJobBundle/src/Repository/CSPersonRepository.php +++ b/src/Bundle/ChillJobBundle/src/Repository/CSPersonRepository.php @@ -1,13 +1,20 @@ authorizationHelper = $authorizationHelper; } - protected function supports($attribute, $subject) { if (!\in_array($attribute, self::ALL)) { @@ -73,9 +75,8 @@ class CSConnectesVoter extends AbstractChillVoter implements ProvideRoleHierarch $center = $subject->getPerson()->getCenter(); } - switch($attribute) { + switch ($attribute) { case self::REPORT_NEW: - return $this->authorizationHelper->userHasAccess($token->getUser(), $center, $attribute); case self::REPORT_CV: @@ -86,7 +87,6 @@ class CSConnectesVoter extends AbstractChillVoter implements ProvideRoleHierarch return $this->authorizationHelper->userHasAccess($token->getUser(), $center, $attribute); case self::REPORT_DELETE: - if ($subject instanceof Immersion) { $date = \DateTimeImmutable::createFromMutable($subject->getDebutDate())->add($subject->getDuration()); } else { diff --git a/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php b/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php index 620dcbcf9..0949bcfc9 100644 --- a/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php +++ b/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php @@ -1,5 +1,14 @@ authorizationHelper->getReachableCenters($user, new Role($attribute)); - if ($subject === null) { + if (null === $subject) { return count($centers) > 0; } @@ -89,11 +91,11 @@ class ExportsVoter extends AbstractChillVoter implements ProvideRoleHierarchyInt */ public function getRolesWithHierarchy() { - return [ 'CSConnectes' => $this->getRoles() ]; + return ['CSConnectes' => $this->getRoles()]; } /** - * return an array of role provided by the object + * return an array of role provided by the object. * * @return string[] array of roles (as string) */ @@ -103,7 +105,7 @@ class ExportsVoter extends AbstractChillVoter implements ProvideRoleHierarchyInt } /** - * return roles which doesn't need + * return roles which doesn't need. * * @return string[] array of roles without scopes */ @@ -115,7 +117,8 @@ class ExportsVoter extends AbstractChillVoter implements ProvideRoleHierarchyInt /** * @return array */ - private function getAttributes() { - return [ self::EXPORT ]; + private function getAttributes() + { + return [self::EXPORT]; } } diff --git a/src/Bundle/ChillJobBundle/src/Tests/Controller/CSPersonControllerTest.php b/src/Bundle/ChillJobBundle/src/Tests/Controller/CSPersonControllerTest.php index e92f9fb0b..4e983c8b9 100644 --- a/src/Bundle/ChillJobBundle/src/Tests/Controller/CSPersonControllerTest.php +++ b/src/Bundle/ChillJobBundle/src/Tests/Controller/CSPersonControllerTest.php @@ -1,9 +1,21 @@ abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); $this->addSql('CREATE SCHEMA chill_csconnectes'); $this->addSql('CREATE TABLE chill_csconnectes.cs_person ( @@ -92,12 +101,11 @@ final class Version20191119172511 extends AbstractMigration $this->addSql('COMMENT ON COLUMN chill_csconnectes.cs_person.typeContrat IS NULL'); $this->addSql('COMMENT ON COLUMN chill_csconnectes.cs_person.ressources IS NULL'); $this->addSql('COMMENT ON COLUMN chill_csconnectes.cs_person.accompagnement IS NULL'); - } - public function down(Schema $schema) : void + public function down(Schema $schema): void { - $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); $this->addSql('DROP TABLE chill_csconnectes.cs_person'); $this->addSql('DROP SCHEMA chill_csconnectes CASCADE'); diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20191129112321.php b/src/Bundle/ChillJobBundle/src/migrations/Version20191129112321.php index 593ae7c5f..361c68207 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20191129112321.php +++ b/src/Bundle/ChillJobBundle/src/migrations/Version20191129112321.php @@ -1,4 +1,13 @@ -abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); $this->addSql('DROP INDEX chill_csconnectes.IDX_10864f31217bbb47'); $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CERSignataire TEXT DEFAULT NULL'); @@ -28,11 +37,11 @@ final class Version20191129112321 extends AbstractMigration $this->addSql('ALTER TABLE chill_csconnectes.cs_person ALTER person_id DROP NOT NULL'); } - public function down(Schema $schema) : void + public function down(Schema $schema): void { - $this->throwIrreversibleMigrationException("this migration is not reversible (" - . "actions on primary keys)"); - $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + $this->throwIrreversibleMigrationException('this migration is not reversible (' + .'actions on primary keys)'); + $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); $this->addSql('DROP INDEX UNIQ_10864F31217BBB47'); $this->addSql('DROP INDEX cs_person_pkey'); diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20200113104411.php b/src/Bundle/ChillJobBundle/src/migrations/Version20200113104411.php index e5c859844..57228f5b6 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20200113104411.php +++ b/src/Bundle/ChillJobBundle/src/migrations/Version20200113104411.php @@ -1,4 +1,13 @@ -abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); $this->addSql('CREATE SEQUENCE chill_csconnectes.immersion_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); $this->addSql('CREATE TABLE chill_csconnectes.immersion (id INT NOT NULL, person_id INT DEFAULT NULL, entreprise_id INT DEFAULT NULL, referent_id INT DEFAULT NULL, domaineActivite TEXT DEFAULT NULL, tuteurName TEXT DEFAULT NULL, tuteurFonction TEXT DEFAULT NULL, tuteurPhoneNumber TEXT DEFAULT NULL, structureAccName TEXT DEFAULT NULL, structureAccPhonenumber TEXT DEFAULT NULL, posteDescriptif TEXT DEFAULT NULL, posteTitle TEXT DEFAULT NULL, posteLieu TEXT DEFAULT NULL, debutDate DATE DEFAULT NULL, duration INTERVAL DEFAULT NULL, horaire TEXT DEFAULT NULL, objectifs JSONB DEFAULT NULL, savoirEtre JSONB DEFAULT NULL, noteimmersion TEXT NOT NULL, principalesActivites TEXT DEFAULT NULL, competencesAcquises TEXT DEFAULT NULL, competencesADevelopper TEXT DEFAULT NULL, noteBilan TEXT DEFAULT NULL, PRIMARY KEY(id))'); @@ -25,9 +34,9 @@ final class Version20200113104411 extends AbstractMigration $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD CONSTRAINT FK_FBB3CBB435E47E35 FOREIGN KEY (referent_id) REFERENCES users (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); } - public function down(Schema $schema) : void + public function down(Schema $schema): void { - $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); $this->addSql('DROP SEQUENCE chill_csconnectes.immersion_id_seq CASCADE'); $this->addSql('DROP TABLE chill_csconnectes.immersion'); diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20200113142525.php b/src/Bundle/ChillJobBundle/src/migrations/Version20200113142525.php index 92677a8bc..03d4c44e6 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20200113142525.php +++ b/src/Bundle/ChillJobBundle/src/migrations/Version20200113142525.php @@ -1,4 +1,13 @@ -abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD structureAccEmail TEXT DEFAULT NULL'); $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD structureAccAddress_id INT DEFAULT NULL'); $this->addSql('CREATE INDEX IDX_FBB3CBB4B5E04267 ON chill_csconnectes.immersion (structureAccAddress_id)'); } - public function down(Schema $schema) : void + public function down(Schema $schema): void { - $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP structureAccEmail'); $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP structureAccAddress_id'); diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20200114081435.php b/src/Bundle/ChillJobBundle/src/migrations/Version20200114081435.php index 9cbb47b8c..9d4000b44 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20200114081435.php +++ b/src/Bundle/ChillJobBundle/src/migrations/Version20200114081435.php @@ -1,4 +1,13 @@ -abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD is_bilan_fullfilled BOOLEAN DEFAULT \'false\' NOT NULL'); $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD savoirEtreNote TEXT DEFAULT NULL'); @@ -23,9 +32,9 @@ final class Version20200114081435 extends AbstractMigration $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD CONSTRAINT FK_FBB3CBB4B5E04267 FOREIGN KEY (structureAccAddress_id) REFERENCES chill_main_address (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); } - public function down(Schema $schema) : void + public function down(Schema $schema): void { - $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP CONSTRAINT FK_FBB3CBB4B5E04267'); $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP is_bilan_fullfilled'); diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20200124130244.php b/src/Bundle/ChillJobBundle/src/migrations/Version20200124130244.php index 4f3e79c49..1d2e5e4d1 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20200124130244.php +++ b/src/Bundle/ChillJobBundle/src/migrations/Version20200124130244.php @@ -1,4 +1,13 @@ -abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD datecontratIEJ DATE DEFAULT NULL'); } - public function down(Schema $schema) : void + public function down(Schema $schema): void { - $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP datecontratIEJ'); - } } diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20200124132321.php b/src/Bundle/ChillJobBundle/src/migrations/Version20200124132321.php index ebfaaf5ff..cd12ef238 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20200124132321.php +++ b/src/Bundle/ChillJobBundle/src/migrations/Version20200124132321.php @@ -1,4 +1,13 @@ -abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD typeContratAide TEXT DEFAULT NULL'); } - public function down(Schema $schema) : void + public function down(Schema $schema): void { - $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP typeContratAide'); } diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20200127132932.php b/src/Bundle/ChillJobBundle/src/migrations/Version20200127132932.php index fb11969c4..6cf29a7dd 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20200127132932.php +++ b/src/Bundle/ChillJobBundle/src/migrations/Version20200127132932.php @@ -1,4 +1,13 @@ -abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD objectifsAutre TEXT DEFAULT NULL'); } - public function down(Schema $schema) : void + public function down(Schema $schema): void { - $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP objectifsAutre'); - } } diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20200205132532.php b/src/Bundle/ChillJobBundle/src/migrations/Version20200205132532.php index 94fe839f9..495943467 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20200205132532.php +++ b/src/Bundle/ChillJobBundle/src/migrations/Version20200205132532.php @@ -1,4 +1,13 @@ -abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); $this->addSql('DROP SEQUENCE report_id_seq CASCADE'); $this->addSql('CREATE SEQUENCE chill_csconnectes.rome_appellation_id_seq ' - . 'INCREMENT BY 1 MINVALUE 1 START 1'); + .'INCREMENT BY 1 MINVALUE 1 START 1'); $this->addSql('CREATE SEQUENCE chill_csconnectes.rome_metier_id_seq ' - . 'INCREMENT BY 1 MINVALUE 1 START 1'); + .'INCREMENT BY 1 MINVALUE 1 START 1'); $this->addSql('CREATE SEQUENCE chill_csconnectes.projet_professionnel_id_seq ' - . 'INCREMENT BY 1 MINVALUE 1 START 1'); + .'INCREMENT BY 1 MINVALUE 1 START 1'); $this->addSql('CREATE TABLE chill_csconnectes.rome_appellation (' - . 'id INT NOT NULL, metier_id INT DEFAULT NULL, code VARCHAR(40) NOT NULL, ' - . 'libelle TEXT NOT NULL, PRIMARY KEY(id))'); + .'id INT NOT NULL, metier_id INT DEFAULT NULL, code VARCHAR(40) NOT NULL, ' + .'libelle TEXT NOT NULL, PRIMARY KEY(id))'); $this->addSql('CREATE INDEX IDX_D9E9CABCED16FA20 ON chill_csconnectes.rome_appellation (metier_id)'); $this->addSql('CREATE TABLE chill_csconnectes.rome_metier (id INT NOT NULL, ' - . 'libelle TEXT NOT NULL, code VARCHAR(20) NOT NULL, PRIMARY KEY(id))'); + .'libelle TEXT NOT NULL, code VARCHAR(20) NOT NULL, PRIMARY KEY(id))'); $this->addSql('CREATE TABLE chill_csconnectes.projet_professionnel (id INT NOT NULL, ' - . 'person_id INT DEFAULT NULL, reportDate DATE NOT NULL, ' - . 'typeContrat JSONB DEFAULT NULL, typeContratNotes TEXT DEFAULT NULL, ' - . 'volumeHoraire JSONB DEFAULT NULL, volumeHoraireNotes TEXT DEFAULT NULL, ' - . 'idee TEXT DEFAULT NULL, enCoursConstruction TEXT DEFAULT NULL, ' - . 'valideNotes TEXT DEFAULT NULL, projetProfessionnelNote TEXT DEFAULT NULL, ' - . 'PRIMARY KEY(id))'); + .'person_id INT DEFAULT NULL, reportDate DATE NOT NULL, ' + .'typeContrat JSONB DEFAULT NULL, typeContratNotes TEXT DEFAULT NULL, ' + .'volumeHoraire JSONB DEFAULT NULL, volumeHoraireNotes TEXT DEFAULT NULL, ' + .'idee TEXT DEFAULT NULL, enCoursConstruction TEXT DEFAULT NULL, ' + .'valideNotes TEXT DEFAULT NULL, projetProfessionnelNote TEXT DEFAULT NULL, ' + .'PRIMARY KEY(id))'); $this->addSql('CREATE INDEX IDX_12E4FFBF217BBB47 ON chill_csconnectes.projet_professionnel (person_id)'); $this->addSql('CREATE TABLE chill_csconnectes.projetprofessionnel_souhait (projetprofessionnel_id INT NOT NULL, appellation_id INT NOT NULL, PRIMARY KEY(projetprofessionnel_id, appellation_id))'); $this->addSql('CREATE INDEX IDX_3280B96DB87BF7B5 ON chill_csconnectes.projetprofessionnel_souhait (projetprofessionnel_id)'); @@ -48,13 +57,11 @@ final class Version20200205132532 extends AbstractMigration $this->addSql('ALTER TABLE chill_csconnectes.projetprofessionnel_souhait ADD CONSTRAINT FK_3280B96D7CDE30DD FOREIGN KEY (appellation_id) REFERENCES chill_csconnectes.rome_appellation (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); $this->addSql('ALTER TABLE chill_csconnectes.projetprofessionnel_valide ADD CONSTRAINT FK_E0501BE0B87BF7B5 FOREIGN KEY (projetprofessionnel_id) REFERENCES chill_csconnectes.projet_professionnel (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); $this->addSql('ALTER TABLE chill_csconnectes.projetprofessionnel_valide ADD CONSTRAINT FK_E0501BE07CDE30DD FOREIGN KEY (appellation_id) REFERENCES chill_csconnectes.rome_appellation (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); - - } - public function down(Schema $schema) : void + public function down(Schema $schema): void { - $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); $this->addSql('ALTER TABLE chill_csconnectes.projetprofessionnel_souhait DROP CONSTRAINT FK_3280B96D7CDE30DD'); $this->addSql('ALTER TABLE chill_csconnectes.projetprofessionnel_valide DROP CONSTRAINT FK_E0501BE07CDE30DD'); @@ -70,7 +77,5 @@ final class Version20200205132532 extends AbstractMigration $this->addSql('DROP TABLE chill_csconnectes.projet_professionnel'); $this->addSql('DROP TABLE chill_csconnectes.projetprofessionnel_souhait'); $this->addSql('DROP TABLE chill_csconnectes.projetprofessionnel_valide'); - - } } diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20200207224152.php b/src/Bundle/ChillJobBundle/src/migrations/Version20200207224152.php index 0eeca852f..9384f5ea5 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20200207224152.php +++ b/src/Bundle/ChillJobBundle/src/migrations/Version20200207224152.php @@ -1,4 +1,13 @@ -abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); $this->addSql('CREATE INDEX code_appellation_idx ON chill_csconnectes.rome_appellation (code)'); $this->addSql('CREATE INDEX code_metier_idx ON chill_csconnectes.rome_metier (code)'); } - public function down(Schema $schema) : void + public function down(Schema $schema): void { - $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); $this->addSql('DROP INDEX code_appellation_idx ON chill_csconnectes.rome_appellation'); $this->addSql('DROP INDEX code_metier_idx ON chill_csconnectes.rome_metier'); diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20200210105342.php b/src/Bundle/ChillJobBundle/src/migrations/Version20200210105342.php index f7001d23d..dc5dc7fab 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20200210105342.php +++ b/src/Bundle/ChillJobBundle/src/migrations/Version20200210105342.php @@ -1,4 +1,13 @@ -addSql("CREATE UNIQUE INDEX UNIQ_D9E9CABC77153098 ON chill_csconnectes.rome_appellation (code);"); - $this->addSql("CREATE UNIQUE INDEX UNIQ_3274952577153098 ON chill_csconnectes.rome_metier (code);"); - $this->addSql("DROP INDEX IF EXISTS chill_csconnectes.code_metier_idx "); - $this->addSql("DROP INDEX IF EXISTS chill_csconnectes.code_appellation_idx "); - + $this->addSql('CREATE UNIQUE INDEX UNIQ_D9E9CABC77153098 ON chill_csconnectes.rome_appellation (code);'); + $this->addSql('CREATE UNIQUE INDEX UNIQ_3274952577153098 ON chill_csconnectes.rome_metier (code);'); + $this->addSql('DROP INDEX IF EXISTS chill_csconnectes.code_metier_idx '); + $this->addSql('DROP INDEX IF EXISTS chill_csconnectes.code_appellation_idx '); } - public function down(Schema $schema) : void + public function down(Schema $schema): void { - $this->addSql("DROP INDEX chill_csconnectes.UNIQ_D9E9CABC77153098"); - $this->addSql("DROP INDEX chill_csconnectes.UNIQ_3274952577153098"); + $this->addSql('DROP INDEX chill_csconnectes.UNIQ_D9E9CABC77153098'); + $this->addSql('DROP INDEX chill_csconnectes.UNIQ_3274952577153098'); } } diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20200313124323.php b/src/Bundle/ChillJobBundle/src/migrations/Version20200313124323.php index 93777f2b8..de2dbafab 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20200313124323.php +++ b/src/Bundle/ChillJobBundle/src/migrations/Version20200313124323.php @@ -1,4 +1,13 @@ -abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); $this->addSql('ALTER TABLE chill_csconnectes.cv_formation ALTER diplomaobtained TYPE VARCHAR(255)'); $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD ponctualite_salarie TEXT DEFAULT NULL'); @@ -46,9 +55,9 @@ final class Version20200313124323 extends AbstractMigration $this->addSql('COMMENT ON COLUMN chill_3party.third_party.types IS NULL'); } - public function down(Schema $schema) : void + public function down(Schema $schema): void { - $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'postgresql', 'Migration can only be executed safely on \'postgresql\'.'); + $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP ponctualite_salarie'); $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP ponctualite_salarie_note'); diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20200403114520.php b/src/Bundle/ChillJobBundle/src/migrations/Version20200403114520.php index f7e68f9e0..a1a4e4f5e 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20200403114520.php +++ b/src/Bundle/ChillJobBundle/src/migrations/Version20200403114520.php @@ -1,4 +1,13 @@ -addSql("ALTER TABLE chill_csconnectes.projet_professionnel ADD domaineActiviteSouhait TEXT DEFAULT NULL;"); - $this->addSql("ALTER TABLE chill_csconnectes.projet_professionnel ADD domaineActiviteValide TEXT DEFAULT NULL;"); + $this->addSql('ALTER TABLE chill_csconnectes.projet_professionnel ADD domaineActiviteSouhait TEXT DEFAULT NULL;'); + $this->addSql('ALTER TABLE chill_csconnectes.projet_professionnel ADD domaineActiviteValide TEXT DEFAULT NULL;'); } - public function down(Schema $schema) : void + public function down(Schema $schema): void { - $this->addSql("ALTER TABLE chill_csconnectes.projet_professionnel DROP domaineActiviteSouhait"); - $this->addSql("ALTER TABLE chill_csconnectes.projet_professionnel DROP domaineActiviteValide"); + $this->addSql('ALTER TABLE chill_csconnectes.projet_professionnel DROP domaineActiviteSouhait'); + $this->addSql('ALTER TABLE chill_csconnectes.projet_professionnel DROP domaineActiviteValide'); } } diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20200403123148.php b/src/Bundle/ChillJobBundle/src/migrations/Version20200403123148.php index b6c40b5f9..c117ed34b 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20200403123148.php +++ b/src/Bundle/ChillJobBundle/src/migrations/Version20200403123148.php @@ -1,4 +1,13 @@ -addSql("ALTER TABLE chill_csconnectes.cs_person ADD dateavenantIEJ DATE DEFAULT NULL;"); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD dateavenantIEJ DATE DEFAULT NULL;'); } - public function down(Schema $schema) : void + public function down(Schema $schema): void { - $this->addSql("ALTER TABLE chill_csconnectes.cs_person DROP dateavenantIEJ"); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP dateavenantIEJ'); } } From 63fe8070c48ca0b77ada85e508a8796826b8dc13 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Fri, 19 Apr 2024 11:07:45 +0200 Subject: [PATCH 014/136] Rector passed again on JobBundle entities --- .../ChillJobBundle/src/Entity/CSPerson.php | 108 +++++++++--------- src/Bundle/ChillJobBundle/src/Entity/CV.php | 18 +-- .../src/Entity/CV/Experience.php | 14 +-- .../src/Entity/CV/Formation.php | 14 +-- .../ChillJobBundle/src/Entity/Frein.php | 12 +- .../ChillJobBundle/src/Entity/Immersion.php | 101 ++++++++-------- .../src/Entity/ProjetProfessionnel.php | 34 +++--- .../src/Entity/Rome/Appellation.php | 8 +- .../ChillJobBundle/src/Entity/Rome/Metier.php | 9 +- 9 files changed, 166 insertions(+), 152 deletions(-) diff --git a/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php b/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php index 1103ccdd1..f832c8fe1 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php @@ -21,7 +21,7 @@ class CSPerson /** * @var int */ - #[ORM\Column(name: 'id', type: 'integer')] + #[ORM\Column(name: 'id', type: \Doctrine\DBAL\Types\Types::INTEGER)] #[ORM\Id] #[ORM\GeneratedValue(strategy: 'NONE')] private ?int $id = null; @@ -45,14 +45,14 @@ class CSPerson /** * @var string|null */ - #[ORM\Column(name: 'situationLogement', type: 'string', length: 255, nullable: true)] + #[ORM\Column(name: 'situationLogement', type: \Doctrine\DBAL\Types\Types::STRING, length: 255, nullable: true)] private ?string $situationLogement = null; /** * * @var string */ - #[ORM\Column(name: 'situationLogementPrecision', type: 'text', nullable: true)] + #[ORM\Column(name: 'situationLogementPrecision', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $situationLogementPrecision = null; /** @@ -60,7 +60,7 @@ class CSPerson * * @Assert\GreaterThanOrEqual(0) */ - #[ORM\Column(name: 'enfantACharge', type: 'integer', nullable: true)] + #[ORM\Column(name: 'enfantACharge', type: \Doctrine\DBAL\Types\Types::INTEGER, nullable: true)] private ?int $enfantACharge = null; public const NIVEAU_MAITRISE_LANGUE = [ @@ -70,13 +70,13 @@ class CSPerson /** * @var string[]|null */ - #[ORM\Column(name: 'niveauMaitriseLangue', type: 'json', nullable: true)] + #[ORM\Column(name: 'niveauMaitriseLangue', type: \Doctrine\DBAL\Types\Types::JSON, nullable: true)] private $niveauMaitriseLangue; /** * @var bool|null */ - #[ORM\Column(name: 'vehiculePersonnel', type: 'boolean', nullable: true)] + #[ORM\Column(name: 'vehiculePersonnel', type: \Doctrine\DBAL\Types\Types::BOOLEAN, nullable: true)] private ?bool $vehiculePersonnel = null; public const PERMIS_CONDUIRE = [ @@ -86,7 +86,7 @@ class CSPerson /** * @var string[]|null */ - #[ORM\Column(name: 'permisConduire', type: 'json', nullable: true)] + #[ORM\Column(name: 'permisConduire', type: \Doctrine\DBAL\Types\Types::JSON, nullable: true)] private $permisConduire; public const SITUATION_PROFESSIONNELLE = [ @@ -96,13 +96,13 @@ class CSPerson /** * @var string */ - #[ORM\Column(name: 'situationProfessionnelle', type: 'string', length: 255, nullable: true)] + #[ORM\Column(name: 'situationProfessionnelle', type: \Doctrine\DBAL\Types\Types::STRING, length: 255, nullable: true)] private ?string $situationProfessionnelle = null; /** * @var \DateTimeInterface */ - #[ORM\Column(name: 'dateFinDernierEmploi', type: 'date', nullable: true)] + #[ORM\Column(name: 'dateFinDernierEmploi', type: \Doctrine\DBAL\Types\Types::DATE_MUTABLE, nullable: true)] private ?\DateTimeInterface $dateFinDernierEmploi = null; public const TYPE_CONTRAT = [ @@ -118,14 +118,14 @@ class CSPerson /** * @var string[]|null */ - #[ORM\Column(name: 'typeContrat', type: 'json', nullable: true)] + #[ORM\Column(name: 'typeContrat', type: \Doctrine\DBAL\Types\Types::JSON, nullable: true)] private $typeContrat; /** * * @var string */ - #[ORM\Column(name: 'typeContratAide', type: 'text', nullable: true)] + #[ORM\Column(name: 'typeContratAide', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $typeContratAide = null; public const RESSOURCES = [ @@ -140,32 +140,32 @@ class CSPerson /** * @var string[]|null */ - #[ORM\Column(name: 'ressources', type: 'json', nullable: true)] + #[ORM\Column(name: 'ressources', type: \Doctrine\DBAL\Types\Types::JSON, nullable: true)] private $ressources; /** * @var string */ - #[ORM\Column(name: 'ressourcesComment', type: 'text', nullable: true)] + #[ORM\Column(name: 'ressourcesComment', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $ressourcesComment = null; /** * @var \DateTimeInterface */ - #[ORM\Column(name: 'ressourceDate1Versement', type: 'date', nullable: true)] + #[ORM\Column(name: 'ressourceDate1Versement', type: \Doctrine\DBAL\Types\Types::DATE_MUTABLE, nullable: true)] private ?\DateTimeInterface $ressourceDate1Versement = null; /** * @var double */ - #[ORM\Column(name: 'CPFMontant', type: 'decimal', nullable: true, precision: 10, scale: 2)] // Assert\GreaterOrEqualThan(0) + #[ORM\Column(name: 'CPFMontant', type: \Doctrine\DBAL\Types\Types::DECIMAL, nullable: true, precision: 10, scale: 2)] // Assert\GreaterOrEqualThan(0) private ?string $cPFMontant = null; /** * * @var double */ - #[ORM\Column(name: 'acomptedif', type: 'decimal', nullable: true, precision: 10, scale: 2)] // Assert\GreaterOrEqualThan(0) + #[ORM\Column(name: 'acomptedif', type: \Doctrine\DBAL\Types\Types::DECIMAL, nullable: true, precision: 10, scale: 2)] // Assert\GreaterOrEqualThan(0) private ?string $acompteDIF = null; public const ACCOMPAGNEMENTS = [ @@ -180,69 +180,69 @@ class CSPerson /** * @var string[]|null */ - #[ORM\Column(name: 'accompagnement', type: 'json', nullable: true)] + #[ORM\Column(name: 'accompagnement', type: \Doctrine\DBAL\Types\Types::JSON, nullable: true)] private $accompagnement; /** * @var \DateTimeInterface */ - #[ORM\Column(name: 'accompagnementRQTHDate', type: 'date', nullable: true)] + #[ORM\Column(name: 'accompagnementRQTHDate', type: \Doctrine\DBAL\Types\Types::DATE_MUTABLE, nullable: true)] private ?\DateTimeInterface $accompagnementRQTHDate = null; /** * @var string */ - #[ORM\Column(name: 'accompagnementComment', type: 'string', length: 255, nullable: true)] + #[ORM\Column(name: 'accompagnementComment', type: \Doctrine\DBAL\Types\Types::STRING, length: 255, nullable: true)] private ?string $accompagnementComment = null; /** * @var string */ - #[ORM\Column(name: 'poleEmploiId', type: 'string', length: 255, nullable: true)] + #[ORM\Column(name: 'poleEmploiId', type: \Doctrine\DBAL\Types\Types::STRING, length: 255, nullable: true)] private ?string $poleEmploiId = null; /** * @var \DateTimeInterface */ - #[ORM\Column(name: 'poleEmploiInscriptionDate', type: 'date', nullable: true)] + #[ORM\Column(name: 'poleEmploiInscriptionDate', type: \Doctrine\DBAL\Types\Types::DATE_MUTABLE, nullable: true)] private ?\DateTimeInterface $poleEmploiInscriptionDate = null; /** * @var string */ - #[ORM\Column(name: 'cafId', type: 'string', length: 255, nullable: true)] + #[ORM\Column(name: 'cafId', type: \Doctrine\DBAL\Types\Types::STRING, length: 255, nullable: true)] private ?string $cafId = null; /** * @var \DateTimeInterface */ - #[ORM\Column(name: 'cafInscriptionDate', type: 'date', nullable: true)] + #[ORM\Column(name: 'cafInscriptionDate', type: \Doctrine\DBAL\Types\Types::DATE_MUTABLE, nullable: true)] private ?\DateTimeInterface $cafInscriptionDate = null; /** * @var \DateTimeInterface */ - #[ORM\Column(name: 'CERInscriptionDate', type: 'date', nullable: true)] + #[ORM\Column(name: 'CERInscriptionDate', type: \Doctrine\DBAL\Types\Types::DATE_MUTABLE, nullable: true)] private ?\DateTimeInterface $cERInscriptionDate = null; /** * @var \DateTimeInterface */ - #[ORM\Column(name: 'PPAEInscriptionDate', type: 'date', nullable: true)] + #[ORM\Column(name: 'PPAEInscriptionDate', type: \Doctrine\DBAL\Types\Types::DATE_MUTABLE, nullable: true)] private ?\DateTimeInterface $pPAEInscriptionDate = null; /** * * @var string|null */ - #[ORM\Column(name: 'CERSignataire', type: 'text', nullable: true)] + #[ORM\Column(name: 'CERSignataire', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $cERSignataire = null; /** * * @var string|null */ - #[ORM\Column(name: 'PPAESignataire', type: 'text', nullable: true)] + #[ORM\Column(name: 'PPAESignataire', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $pPAESignataire = null; public const NEET_ELIGIBILITY = [ @@ -254,19 +254,19 @@ class CSPerson /** * @var bool */ - #[ORM\Column(name: 'NEETEligibilite', type: 'string', nullable: true)] + #[ORM\Column(name: 'NEETEligibilite', type: \Doctrine\DBAL\Types\Types::STRING, nullable: true)] private ?string $nEETEligibilite = null; /** * @var \DateTimeInterface */ - #[ORM\Column(name: 'NEETCommissionDate', type: 'date', nullable: true)] + #[ORM\Column(name: 'NEETCommissionDate', type: \Doctrine\DBAL\Types\Types::DATE_MUTABLE, nullable: true)] private ?\DateTimeInterface $nEETCommissionDate = null; /** * @var string */ - #[ORM\Column(name: 'FSEMaDemarcheCode', type: 'text', nullable: true)] + #[ORM\Column(name: 'FSEMaDemarcheCode', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $fSEMaDemarcheCode = null; @@ -275,35 +275,35 @@ class CSPerson * * @var \DateTimeInterface */ - #[ORM\Column(name: 'datecontratIEJ', type: 'date', nullable: true)] + #[ORM\Column(name: 'datecontratIEJ', type: \Doctrine\DBAL\Types\Types::DATE_MUTABLE, nullable: true)] private ?\DateTimeInterface $dateContratIEJ = null; /** * * @var \DateTimeInterface */ - #[ORM\Column(name: 'dateavenantIEJ', type: 'date', nullable: true)] + #[ORM\Column(name: 'dateavenantIEJ', type: \Doctrine\DBAL\Types\Types::DATE_MUTABLE, nullable: true)] private ?\DateTimeInterface $dateAvenantIEJ = null; /** * * @var string */ - #[ORM\Column(name: 'dispositifs_notes', type: 'text', nullable: true)] + #[ORM\Column(name: 'dispositifs_notes', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $dispositifsNotes = null; /** * * @var bool */ - #[ORM\Column(name: 'handicap', type: 'boolean', nullable: true)] + #[ORM\Column(name: 'handicap', type: \Doctrine\DBAL\Types\Types::BOOLEAN, nullable: true)] private ?bool $handicapIs = null; /** * * @var string */ - #[ORM\Column(name: 'handicapnotes', type: 'text', nullable: true)] + #[ORM\Column(name: 'handicapnotes', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $handicapNotes = null; public const HANDICAP_RECOMMANDATIONS = [ @@ -316,7 +316,7 @@ class CSPerson * * @var string */ - #[ORM\Column(name: 'handicapRecommandation', type: 'string', length: 50, nullable: true)] + #[ORM\Column(name: 'handicapRecommandation', type: \Doctrine\DBAL\Types\Types::STRING, length: 50, nullable: true)] private ?string $handicapRecommandation = null; /** @@ -324,7 +324,7 @@ class CSPerson * @var ThirdParty * */ - #[ORM\ManyToOne(targetEntity: \\Chill\ThirdPartyBundle\Entity\ThirdParty::class)] + #[ORM\ManyToOne(targetEntity: ThirdParty::class)] private ?\Chill\ThirdPartyBundle\Entity\ThirdParty $handicapAccompagnement = null; public const MOBILITE_MOYEN_TRANSPORT = [ @@ -339,20 +339,20 @@ class CSPerson * * @var string[] */ - #[ORM\Column(name: 'mobilitemoyentransport', type: 'json', nullable: true)] + #[ORM\Column(name: 'mobilitemoyentransport', type: \Doctrine\DBAL\Types\Types::JSON, nullable: true)] private $mobiliteMoyenDeTransport; /** * * @var string */ - #[ORM\Column(name: 'mobilitenotes', type: 'text', nullable: true)] + #[ORM\Column(name: 'mobilitenotes', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $mobiliteNotes = null; /** * @var StoredObject|null */ - #[ORM\ManyToOne(targetEntity: \\Chill\DocStoreBundle\Entity\StoredObject::class, cascade: ['persist'])] + #[ORM\ManyToOne(targetEntity: StoredObject::class, cascade: ['persist'])] private ?\Chill\DocStoreBundle\Entity\StoredObject $documentCV = null; /** @@ -360,7 +360,7 @@ class CSPerson * * @Assert\Valid() */ - #[ORM\ManyToOne(targetEntity: \\Chill\DocStoreBundle\Entity\StoredObject::class, cascade: ['persist'])] + #[ORM\ManyToOne(targetEntity: StoredObject::class, cascade: ['persist'])] private ?\Chill\DocStoreBundle\Entity\StoredObject $documentAgrementIAE = null; /** @@ -368,7 +368,7 @@ class CSPerson * * @Assert\Valid() */ - #[ORM\ManyToOne(targetEntity: \\Chill\DocStoreBundle\Entity\StoredObject::class, cascade: ['persist'])] + #[ORM\ManyToOne(targetEntity: StoredObject::class, cascade: ['persist'])] private ?\Chill\DocStoreBundle\Entity\StoredObject $documentRQTH = null; /** @@ -376,7 +376,7 @@ class CSPerson * * @Assert\Valid() */ - #[ORM\ManyToOne(targetEntity: \\Chill\DocStoreBundle\Entity\StoredObject::class, cascade: ['persist'])] + #[ORM\ManyToOne(targetEntity: StoredObject::class, cascade: ['persist'])] private ?\Chill\DocStoreBundle\Entity\StoredObject $documentAttestationNEET = null; @@ -385,7 +385,7 @@ class CSPerson * * @Assert\Valid() */ - #[ORM\ManyToOne(targetEntity: \\Chill\DocStoreBundle\Entity\StoredObject::class, cascade: ['persist'])] + #[ORM\ManyToOne(targetEntity: StoredObject::class, cascade: ['persist'])] private ?\Chill\DocStoreBundle\Entity\StoredObject $documentCI = null; /** @@ -393,7 +393,7 @@ class CSPerson * * @Assert\Valid() */ - #[ORM\ManyToOne(targetEntity: \\Chill\DocStoreBundle\Entity\StoredObject::class, cascade: ['persist'])] + #[ORM\ManyToOne(targetEntity: StoredObject::class, cascade: ['persist'])] private ?\Chill\DocStoreBundle\Entity\StoredObject $documentTitreSejour = null; /** @@ -401,7 +401,7 @@ class CSPerson * * @Assert\Valid() */ - #[ORM\ManyToOne(targetEntity: \\Chill\DocStoreBundle\Entity\StoredObject::class, cascade: ['persist'])] + #[ORM\ManyToOne(targetEntity: StoredObject::class, cascade: ['persist'])] private ?\Chill\DocStoreBundle\Entity\StoredObject $documentAttestationFiscale = null; /** @@ -409,7 +409,7 @@ class CSPerson * * @Assert\Valid() */ - #[ORM\ManyToOne(targetEntity: \\Chill\DocStoreBundle\Entity\StoredObject::class, cascade: ['persist'])] + #[ORM\ManyToOne(targetEntity: StoredObject::class, cascade: ['persist'])] private ?\Chill\DocStoreBundle\Entity\StoredObject $documentPermis = null; /** @@ -417,7 +417,7 @@ class CSPerson * * @Assert\Valid() */ - #[ORM\ManyToOne(targetEntity: \\Chill\DocStoreBundle\Entity\StoredObject::class, cascade: ['persist'])] + #[ORM\ManyToOne(targetEntity: StoredObject::class, cascade: ['persist'])] private ?\Chill\DocStoreBundle\Entity\StoredObject $documentAttestationCAAF = null; /** @@ -425,7 +425,7 @@ class CSPerson * * @Assert\Valid() */ - #[ORM\ManyToOne(targetEntity: \\Chill\DocStoreBundle\Entity\StoredObject::class, cascade: ['persist'])] + #[ORM\ManyToOne(targetEntity: StoredObject::class, cascade: ['persist'])] private ?\Chill\DocStoreBundle\Entity\StoredObject $documentContraTravail = null; /** @@ -433,7 +433,7 @@ class CSPerson * * @Assert\Valid() */ - #[ORM\ManyToOne(targetEntity: \\Chill\DocStoreBundle\Entity\StoredObject::class, cascade: ['persist'])] + #[ORM\ManyToOne(targetEntity: StoredObject::class, cascade: ['persist'])] private ?\Chill\DocStoreBundle\Entity\StoredObject $documentAttestationFormation = null; /** @@ -441,7 +441,7 @@ class CSPerson * * @Assert\Valid() */ - #[ORM\ManyToOne(targetEntity: \\Chill\DocStoreBundle\Entity\StoredObject::class, cascade: ['persist'])] + #[ORM\ManyToOne(targetEntity: StoredObject::class, cascade: ['persist'])] private ?\Chill\DocStoreBundle\Entity\StoredObject $documentQuittanceLoyer = null; /** @@ -449,7 +449,7 @@ class CSPerson * * @Assert\Valid() */ - #[ORM\ManyToOne(targetEntity: \\Chill\DocStoreBundle\Entity\StoredObject::class, cascade: ['persist'])] + #[ORM\ManyToOne(targetEntity: StoredObject::class, cascade: ['persist'])] private ?\Chill\DocStoreBundle\Entity\StoredObject $documentFactureElectricite = null; /** @@ -457,13 +457,13 @@ class CSPerson * * @Assert\Valid() */ - #[ORM\ManyToOne(targetEntity: \\Chill\DocStoreBundle\Entity\StoredObject::class, cascade: ['persist'])] + #[ORM\ManyToOne(targetEntity: StoredObject::class, cascade: ['persist'])] private ?\Chill\DocStoreBundle\Entity\StoredObject $documentAttestationSecuriteSociale = null; /** * @var ThirdParty|null */ - #[ORM\ManyToOne(targetEntity: \\Chill\ThirdPartyBundle\Entity\ThirdParty::class)] + #[ORM\ManyToOne(targetEntity: ThirdParty::class)] private ?\Chill\ThirdPartyBundle\Entity\ThirdParty $prescripteur = null; /** diff --git a/src/Bundle/ChillJobBundle/src/Entity/CV.php b/src/Bundle/ChillJobBundle/src/Entity/CV.php index f61ff0fca..7783dc40e 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CV.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CV.php @@ -24,7 +24,7 @@ use Symfony\Component\Validator\Constraints as Assert; #[ORM\Entity(repositoryClass: \Chill\ChillJobBundle\Repository\CVRepository::class)] class CV implements \Stringable { - #[ORM\Column(name: 'id', type: 'integer')] + #[ORM\Column(name: 'id', type: \Doctrine\DBAL\Types\Types::INTEGER)] #[ORM\Id] #[ORM\GeneratedValue(strategy: 'AUTO')] private ?int $id = null; @@ -32,7 +32,7 @@ class CV implements \Stringable /** * @Assert\NotNull() */ - #[ORM\Column(name: 'reportDate', type: 'date')] + #[ORM\Column(name: 'reportDate', type: \Doctrine\DBAL\Types\Types::DATE_MUTABLE)] private ?\DateTimeInterface $reportDate = null; public const FORMATION_LEVEL = [ @@ -49,7 +49,7 @@ class CV implements \Stringable /** * @Assert\NotBlank() */ - #[ORM\Column(name: 'formationLevel', type: 'string', length: 255, nullable: true)] + #[ORM\Column(name: 'formationLevel', type: \Doctrine\DBAL\Types\Types::STRING, length: 255, nullable: true)] private ?string $formationLevel = null; public const FORMATION_TYPE = [ @@ -57,30 +57,32 @@ class CV implements \Stringable 'formation_continue', ]; - #[ORM\Column(name: 'formationType', type: 'string', length: 255, nullable: true)] + #[ORM\Column(name: 'formationType', type: \Doctrine\DBAL\Types\Types::STRING, length: 255, nullable: true)] private ?string $formationType = null; /** * @var string[]|null */ - #[ORM\Column(name: 'spokenLanguages', type: 'json', nullable: true)] + #[ORM\Column(name: 'spokenLanguages', type: \Doctrine\DBAL\Types\Types::JSON, nullable: true)] private $spokenLanguages; - #[ORM\Column(name: 'notes', type: 'text', nullable: true)] + #[ORM\Column(name: 'notes', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $notes = null; /** * @Assert\Valid(traverse=true) + * @var \Doctrine\Common\Collections\Collection */ #[ORM\OneToMany(targetEntity: CV\Formation::class, mappedBy: 'CV', cascade: ['persist', 'remove', 'detach'], orphanRemoval: true)] - #[ORM\OrderBy(['startDate' => 'DESC', 'endDate' => 'DESC'])] + #[ORM\OrderBy(['startDate' => \Doctrine\Common\Collections\Criteria::DESC, 'endDate' => 'DESC'])] private Collection $formations; /** * @Assert\Valid(traverse=true) + * @var \Doctrine\Common\Collections\Collection */ #[ORM\OneToMany(targetEntity: CV\Experience::class, mappedBy: 'CV', cascade: ['persist', 'remove', 'detach'], orphanRemoval: true)] - #[ORM\OrderBy(['startDate' => 'DESC', 'endDate' => 'DESC'])] + #[ORM\OrderBy(['startDate' => \Doctrine\Common\Collections\Criteria::DESC, 'endDate' => 'DESC'])] private Collection $experiences; #[ORM\ManyToOne(targetEntity: Person::class)] diff --git a/src/Bundle/ChillJobBundle/src/Entity/CV/Experience.php b/src/Bundle/ChillJobBundle/src/Entity/CV/Experience.php index 86e1c0fb9..4bcd2e94f 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CV/Experience.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CV/Experience.php @@ -22,24 +22,24 @@ use Symfony\Component\Validator\Constraints as Assert; #[ORM\Entity(repositoryClass: \Chill\ChillJobBundle\Repository\CV\ExperienceRepository::class)] class Experience { - #[ORM\Column(name: 'id', type: 'integer')] + #[ORM\Column(name: 'id', type: \Doctrine\DBAL\Types\Types::INTEGER)] #[ORM\Id] #[ORM\GeneratedValue(strategy: 'AUTO')] private ?int $id = null; - #[ORM\Column(name: 'poste', type: 'text', nullable: true)] + #[ORM\Column(name: 'poste', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $poste = null; - #[ORM\Column(name: 'structure', type: 'text', nullable: true)] + #[ORM\Column(name: 'structure', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $structure = null; - #[ORM\Column(name: 'startDate', type: 'date', nullable: true)] + #[ORM\Column(name: 'startDate', type: \Doctrine\DBAL\Types\Types::DATE_MUTABLE, nullable: true)] private ?\DateTimeInterface $startDate = null; /** * @Assert\GreaterThan(propertyPath="startDate", message="La date de fin doit être postérieure à la date de début") */ - #[ORM\Column(name: 'endDate', type: 'date', nullable: true)] + #[ORM\Column(name: 'endDate', type: \Doctrine\DBAL\Types\Types::DATE_MUTABLE, nullable: true)] private ?\DateTimeInterface $endDate = null; public const CONTRAT_TYPE = [ @@ -58,10 +58,10 @@ class Experience 'autres', ]; - #[ORM\Column(name: 'contratType', type: 'string', length: 100)] + #[ORM\Column(name: 'contratType', type: \Doctrine\DBAL\Types\Types::STRING, length: 100)] private ?string $contratType = null; - #[ORM\Column(name: 'notes', type: 'text', nullable: true)] + #[ORM\Column(name: 'notes', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $notes = null; #[ORM\ManyToOne(targetEntity: CV::class, inversedBy: 'experiences')] diff --git a/src/Bundle/ChillJobBundle/src/Entity/CV/Formation.php b/src/Bundle/ChillJobBundle/src/Entity/CV/Formation.php index e297e139d..e9ac3f7ea 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CV/Formation.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CV/Formation.php @@ -22,7 +22,7 @@ use Symfony\Component\Validator\Constraints as Assert; #[ORM\Entity(repositoryClass: \Chill\ChillJobBundle\Repository\CV\FormationRepository::class)] class Formation { - #[ORM\Column(name: 'id', type: 'integer')] + #[ORM\Column(name: 'id', type: \Doctrine\DBAL\Types\Types::INTEGER)] #[ORM\Id] #[ORM\GeneratedValue(strategy: 'AUTO')] private ?int $id = null; @@ -32,33 +32,33 @@ class Formation * * @Assert\NotNull() */ - #[ORM\Column(name: 'title', type: 'text')] + #[ORM\Column(name: 'title', type: \Doctrine\DBAL\Types\Types::TEXT)] private ?string $title = null; - #[ORM\Column(name: 'startDate', type: 'date', nullable: true)] + #[ORM\Column(name: 'startDate', type: \Doctrine\DBAL\Types\Types::DATE_MUTABLE, nullable: true)] private ?\DateTimeInterface $startDate = null; /** * @Assert\GreaterThan(propertyPath="startDate", message="La date de fin doit être postérieure à la date de début") */ - #[ORM\Column(name: 'endDate', type: 'date', nullable: true)] + #[ORM\Column(name: 'endDate', type: \Doctrine\DBAL\Types\Types::DATE_MUTABLE, nullable: true)] private ?\DateTimeInterface $endDate = null; public const DIPLOMA_OBTAINED = [ 'fr', 'non-fr', 'aucun', ]; - #[ORM\Column(name: 'diplomaObtained', type: 'string', nullable: true)] + #[ORM\Column(name: 'diplomaObtained', type: \Doctrine\DBAL\Types\Types::STRING, nullable: true)] private ?string $diplomaObtained = null; public const DIPLOMA_RECONNU = [ 'oui', 'non', 'nsp', ]; - #[ORM\Column(name: 'diplomaReconnue', type: 'string', length: 50, nullable: true)] + #[ORM\Column(name: 'diplomaReconnue', type: \Doctrine\DBAL\Types\Types::STRING, length: 50, nullable: true)] private ?string $diplomaReconnue = null; - #[ORM\Column(name: 'organisme', type: 'text', nullable: true)] + #[ORM\Column(name: 'organisme', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $organisme = null; #[ORM\ManyToOne(targetEntity: CV::class, inversedBy: 'formations')] diff --git a/src/Bundle/ChillJobBundle/src/Entity/Frein.php b/src/Bundle/ChillJobBundle/src/Entity/Frein.php index 90a578679..a7a19d8d5 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Frein.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Frein.php @@ -23,7 +23,7 @@ use Symfony\Component\Validator\Context\ExecutionContextInterface; #[ORM\Entity(repositoryClass: \Chill\ChillJobBundle\Repository\FreinRepository::class)] class Frein implements HasPerson, \Stringable { - #[ORM\Column(name: 'id', type: 'integer')] + #[ORM\Column(name: 'id', type: \Doctrine\DBAL\Types\Types::INTEGER)] #[ORM\Id] #[ORM\GeneratedValue(strategy: 'AUTO')] private ?int $id = null; @@ -37,7 +37,7 @@ class Frein implements HasPerson, \Stringable * message="La date du rapport ne peut pas être plus de cinq ans dans le passé" * ) */ - #[ORM\Column(name: 'reportDate', type: 'date')] + #[ORM\Column(name: 'reportDate', type: \Doctrine\DBAL\Types\Types::DATE_MUTABLE)] private ?\DateTimeInterface $reportDate = null; public const FREINS_PERSO = [ @@ -53,10 +53,10 @@ class Frein implements HasPerson, \Stringable /** * @var string[] */ - #[ORM\Column(name: 'freinsPerso', type: 'json')] + #[ORM\Column(name: 'freinsPerso', type: \Doctrine\DBAL\Types\Types::JSON)] private $freinsPerso = []; - #[ORM\Column(name: 'notesPerso', type: 'text')] + #[ORM\Column(name: 'notesPerso', type: \Doctrine\DBAL\Types\Types::TEXT)] private ?string $notesPerso = ''; public const FREINS_EMPLOI = [ @@ -71,10 +71,10 @@ class Frein implements HasPerson, \Stringable /** * @var string[] */ - #[ORM\Column(name: 'freinsEmploi', type: 'json')] + #[ORM\Column(name: 'freinsEmploi', type: \Doctrine\DBAL\Types\Types::JSON)] private $freinsEmploi = []; - #[ORM\Column(name: 'notesEmploi', type: 'text')] + #[ORM\Column(name: 'notesEmploi', type: \Doctrine\DBAL\Types\Types::TEXT)] private ?string $notesEmploi = ''; /** diff --git a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php index cbaac80f7..320ffb9d8 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php @@ -2,6 +2,7 @@ namespace Chill\ChillJobBundle\Entity; +use Chill\ChillJobBundle\Repository\ImmersionRepository; use Doctrine\ORM\Mapping as ORM; use Chill\ThirdPartyBundle\Entity\ThirdParty; use Chill\PersonBundle\Entity\Person; @@ -14,7 +15,7 @@ use Chill\MainBundle\Validation\Constraint\PhonenumberConstraint; * Immersion */ #[ORM\Table(name: 'chill_csconnectes.immersion')] -#[ORM\Entity(repositoryClass: \Chill\ChillJobBundle\Repository\ImmersionRepository::class)] +#[ORM\Entity(repositoryClass: ImmersionRepository::class)] class Immersion implements \Stringable { public const YES_NO_NSP = [ @@ -26,7 +27,7 @@ class Immersion implements \Stringable /** * @var int */ - #[ORM\Column(name: 'id', type: 'integer')] + #[ORM\Column(name: 'id', type: \Doctrine\DBAL\Types\Types::INTEGER)] #[ORM\Id] #[ORM\GeneratedValue(strategy: 'AUTO')] private ?int $id = null; @@ -48,14 +49,14 @@ class Immersion implements \Stringable * @Assert\NotNull() * @Assert\Length(min=2) */ - #[ORM\ManyToOne(targetEntity: \\Chill\ThirdPartyBundle\Entity\ThirdParty::class)] + #[ORM\ManyToOne(targetEntity: ThirdParty::class)] private ?\Chill\ThirdPartyBundle\Entity\ThirdParty $entreprise = null; /** * @var User|null */ - #[ORM\ManyToOne(targetEntity: \\Chill\MainBundle\Entity\User::class)] + #[ORM\ManyToOne(targetEntity: User::class)] private ?\Chill\MainBundle\Entity\User $referent = null; @@ -66,7 +67,7 @@ class Immersion implements \Stringable * @Assert\NotNull() * @Assert\Length(min=2) */ - #[ORM\Column(name: 'domaineActivite', type: 'text', nullable: true)] + #[ORM\Column(name: 'domaineActivite', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $domaineActivite = null; /** @@ -75,7 +76,7 @@ class Immersion implements \Stringable * @Assert\NotNull() * @Assert\Length(min=2) */ - #[ORM\Column(name: 'tuteurName', type: 'text', nullable: true)] + #[ORM\Column(name: 'tuteurName', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $tuteurName = null; /** @@ -84,7 +85,7 @@ class Immersion implements \Stringable * @Assert\NotNull() * @Assert\Length(min=2) */ - #[ORM\Column(name: 'tuteurFonction', type: 'text', nullable: true)] + #[ORM\Column(name: 'tuteurFonction', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $tuteurFonction = null; /** @@ -93,40 +94,40 @@ class Immersion implements \Stringable * @Assert\NotNull() * @Assert\NotBlank() */ - #[ORM\Column(name: 'tuteurPhoneNumber', type: 'text', nullable: true)] + #[ORM\Column(name: 'tuteurPhoneNumber', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] #[PhonenumberConstraint(type: 'any')] private ?string $tuteurPhoneNumber = null; /** * @var string|null */ - #[ORM\Column(name: 'structureAccName', type: 'text', nullable: true)] + #[ORM\Column(name: 'structureAccName', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $structureAccName = null; /** * @var string */ - #[ORM\Column(name: 'structureAccPhonenumber', type: 'text', nullable: true)] + #[ORM\Column(name: 'structureAccPhonenumber', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] #[PhonenumberConstraint(type: 'any')] private ?string $structureAccPhonenumber = null; /** * @var string */ - #[ORM\Column(name: 'structureAccEmail', type: 'text', nullable: true)] + #[ORM\Column(name: 'structureAccEmail', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $structureAccEmail = null; /** * * @var Address|null */ - #[ORM\ManyToOne(targetEntity: \\Chill\MainBundle\Entity\Address::class, cascade: ['persist', 'remove'])] + #[ORM\ManyToOne(targetEntity: Address::class, cascade: ['persist', 'remove'])] private ?\Chill\MainBundle\Entity\Address $structureAccAddress = null; /** * @var string|null */ - #[ORM\Column(name: 'posteDescriptif', type: 'text', nullable: true)] + #[ORM\Column(name: 'posteDescriptif', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $posteDescriptif = null; /** @@ -135,7 +136,7 @@ class Immersion implements \Stringable * @Assert\NotNull() * @Assert\Length(min=2) */ - #[ORM\Column(name: 'posteTitle', type: 'text', nullable: true)] + #[ORM\Column(name: 'posteTitle', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $posteTitle = null; /** @@ -144,7 +145,7 @@ class Immersion implements \Stringable * @Assert\NotNull() * @Assert\Length(min=2) */ - #[ORM\Column(name: 'posteLieu', type: 'text', nullable: true)] + #[ORM\Column(name: 'posteLieu', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $posteLieu = null; /** @@ -152,7 +153,7 @@ class Immersion implements \Stringable * * @Assert\NotNull() */ - #[ORM\Column(name: 'debutDate', type: 'date', nullable: true)] + #[ORM\Column(name: 'debutDate', type: \Doctrine\DBAL\Types\Types::DATE_MUTABLE, nullable: true)] private ?\DateTimeInterface $debutDate = null; /** @@ -160,7 +161,7 @@ class Immersion implements \Stringable * * @Assert\NotNull() */ - #[ORM\Column(name: 'duration', type: 'dateinterval', nullable: true)] + #[ORM\Column(name: 'duration', type: \Doctrine\DBAL\Types\Types::DATEINTERVAL, nullable: true)] private $duration; /** @@ -169,7 +170,7 @@ class Immersion implements \Stringable * @Assert\NotNull() * @Assert\Length(min=2) */ - #[ORM\Column(name: 'horaire', type: 'text', nullable: true)] + #[ORM\Column(name: 'horaire', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $horaire = null; public const OBJECTIFS = [ @@ -184,21 +185,21 @@ class Immersion implements \Stringable /** * @var array|null */ - #[ORM\Column(name: 'objectifs', type: 'json', nullable: true)] + #[ORM\Column(name: 'objectifs', type: \Doctrine\DBAL\Types\Types::JSON, nullable: true)] private $objectifs; /** * * @var string */ - #[ORM\Column(name: 'objectifsAutre', type: 'text', nullable: true)] + #[ORM\Column(name: 'objectifsAutre', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $objectifsAutre = null; /** * * @var bool */ - #[ORM\Column(name: 'is_bilan_fullfilled', type: 'boolean', options: ['default' => false])] + #[ORM\Column(name: 'is_bilan_fullfilled', type: \Doctrine\DBAL\Types\Types::BOOLEAN, options: ['default' => false])] private ?bool $isBilanFullfilled = false; public const SAVOIR_ETRE = [ @@ -213,44 +214,44 @@ class Immersion implements \Stringable /** * @var array|null */ - #[ORM\Column(name: 'savoirEtre', type: 'json', nullable: true)] + #[ORM\Column(name: 'savoirEtre', type: \Doctrine\DBAL\Types\Types::JSON, nullable: true)] private $savoirEtre; /** * * @var string */ - #[ORM\Column(name: 'savoirEtreNote', type: 'text', nullable: true)] + #[ORM\Column(name: 'savoirEtreNote', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $savoirEtreNote = null; /** * @var string */ - #[ORM\Column(name: 'noteimmersion', type: 'text')] + #[ORM\Column(name: 'noteimmersion', type: \Doctrine\DBAL\Types\Types::TEXT)] private ?string $noteImmersion = ''; /** * @var string|null */ - #[ORM\Column(name: 'principalesActivites', type: 'text', nullable: true)] + #[ORM\Column(name: 'principalesActivites', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $principalesActivites = null; /** * @var string|null */ - #[ORM\Column(name: 'competencesAcquises', type: 'text', nullable: true)] + #[ORM\Column(name: 'competencesAcquises', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $competencesAcquises = null; /** * @var string|null */ - #[ORM\Column(name: 'competencesADevelopper', type: 'text', nullable: true)] + #[ORM\Column(name: 'competencesADevelopper', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $competencesADevelopper = null; /** * @var string|null */ - #[ORM\Column(name: 'noteBilan', type: 'text', nullable: true)] + #[ORM\Column(name: 'noteBilan', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $noteBilan = null; public const PONCTUALITE_SALARIE = [ @@ -263,14 +264,14 @@ class Immersion implements \Stringable * * @var string|null */ - #[ORM\Column(name: 'ponctualite_salarie', type: 'text', nullable: true)] + #[ORM\Column(name: 'ponctualite_salarie', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $ponctualiteSalarie = null; /** * * @var string|null */ - #[ORM\Column(name: 'ponctualite_salarie_note', type: 'text', nullable: true)] + #[ORM\Column(name: 'ponctualite_salarie_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $ponctualiteSalarieNote = null; public const ASSIDUITE = [ @@ -283,28 +284,28 @@ class Immersion implements \Stringable * * @var string|null */ - #[ORM\Column(name: 'assiduite', type: 'text', nullable: true)] + #[ORM\Column(name: 'assiduite', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $assiduite = null; /** * * @var string|null */ - #[ORM\Column(name: 'assiduite_note', type: 'text', nullable: true)] + #[ORM\Column(name: 'assiduite_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $assiduiteNote = null; /** * * @var string|null */ - #[ORM\Column(name: 'interet_activite', type: 'text', nullable: true)] + #[ORM\Column(name: 'interet_activite', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $interetActivite = null; /** * * @var string|null */ - #[ORM\Column(name: 'interet_activite_note', type: 'text', nullable: true)] + #[ORM\Column(name: 'interet_activite_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $interetActiviteNote = null; public const INTEGRE_REGLE = [ @@ -317,112 +318,112 @@ class Immersion implements \Stringable * * @var string|null */ - #[ORM\Column(name: 'integre_regle', type: 'text', nullable: true)] + #[ORM\Column(name: 'integre_regle', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $integreRegle = null; /** * * @var string|null */ - #[ORM\Column(name: 'integre_regle_note', type: 'text', nullable: true)] + #[ORM\Column(name: 'integre_regle_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $integreRegleNote = null; /** * * @var string|null */ - #[ORM\Column(name: 'esprit_initiative', type: 'text', nullable: true)] + #[ORM\Column(name: 'esprit_initiative', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $espritInitiative = null; /** * * @var string|null */ - #[ORM\Column(name: 'esprit_initiative_note', type: 'text', nullable: true)] + #[ORM\Column(name: 'esprit_initiative_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $espritInitiativeNote = null; /** * * @var string|null */ - #[ORM\Column(name: 'organisation', type: 'text', nullable: true)] + #[ORM\Column(name: 'organisation', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $organisation = null; /** * * @var string|null */ - #[ORM\Column(name: 'organisation_note', type: 'text', nullable: true)] + #[ORM\Column(name: 'organisation_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $organisationNote = null; /** * * @var string|null */ - #[ORM\Column(name: 'capacite_travail_equipe', type: 'text', nullable: true)] + #[ORM\Column(name: 'capacite_travail_equipe', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $capaciteTravailEquipe = null; /** * * @var string|null */ - #[ORM\Column(name: 'capacite_travail_equipe_note', type: 'text', nullable: true)] + #[ORM\Column(name: 'capacite_travail_equipe_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $capaciteTravailEquipeNote = null; /** * * @var string|null */ - #[ORM\Column(name: 'style_vestimentaire', type: 'text', nullable: true)] + #[ORM\Column(name: 'style_vestimentaire', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $styleVestimentaire = null; /** * * @var string|null */ - #[ORM\Column(name: 'style_vestimentaire_note', type: 'text', nullable: true)] + #[ORM\Column(name: 'style_vestimentaire_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $styleVestimentaireNote = null; /** * * @var string|null */ - #[ORM\Column(name: 'langage_prof', type: 'text', nullable: true)] + #[ORM\Column(name: 'langage_prof', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $langageProf = null; /** * * @var string|null */ - #[ORM\Column(name: 'langage_prof_note', type: 'text', nullable: true)] + #[ORM\Column(name: 'langage_prof_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $langageProfNote = null; /** * * @var string|null */ - #[ORM\Column(name: 'applique_consigne', type: 'text', nullable: true)] + #[ORM\Column(name: 'applique_consigne', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $appliqueConsigne = null; /** * * @var string|null */ - #[ORM\Column(name: 'applique_consigne_note', type: 'text', nullable: true)] + #[ORM\Column(name: 'applique_consigne_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $appliqueConsigneNote = null; /** * * @var string|null */ - #[ORM\Column(name: 'respect_hierarchie', type: 'text', nullable: true)] + #[ORM\Column(name: 'respect_hierarchie', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $respectHierarchie = null; /** * * @var string|null */ - #[ORM\Column(name: 'respect_hierarchie_note', type: 'text', nullable: true)] + #[ORM\Column(name: 'respect_hierarchie_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $respectHierarchieNote = null; /** diff --git a/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php b/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php index cc60faa45..747edd1bc 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php +++ b/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php @@ -11,6 +11,8 @@ declare(strict_types=1); namespace Chill\ChillJobBundle\Entity; +use Chill\ChillJobBundle\Repository\ProjetProfessionnelRepository; +use Doctrine\DBAL\Types\Types; use Doctrine\ORM\Mapping as ORM; use Doctrine\Common\Collections\Collection; use Doctrine\Common\Collections\ArrayCollection; @@ -22,10 +24,10 @@ use Chill\ChillJobBundle\Entity\Rome\Appellation; * ProjetProfessionnel. */ #[ORM\Table(name: 'chill_csconnectes.projet_professionnel')] -#[ORM\Entity(repositoryClass: \Chill\ChillJobBundle\Repository\ProjetProfessionnelRepository::class)] +#[ORM\Entity(repositoryClass: ProjetProfessionnelRepository::class)] class ProjetProfessionnel implements \Stringable { - #[ORM\Column(name: 'id', type: 'integer')] + #[ORM\Column(name: 'id', type: Types::INTEGER)] #[ORM\Id] #[ORM\GeneratedValue(strategy: 'AUTO')] private ?int $id = null; @@ -43,14 +45,17 @@ class ProjetProfessionnel implements \Stringable /** * @Assert\NotNull() */ - #[ORM\Column(name: 'reportDate', type: 'date')] + #[ORM\Column(name: 'reportDate', type: Types::DATE_MUTABLE)] private ?\DateTimeInterface $reportDate = null; + /** + * @var \Doctrine\Common\Collections\Collection + */ #[ORM\JoinTable(name: 'chill_csconnectes.projetprofessionnel_souhait')] #[ORM\ManyToMany(targetEntity: Appellation::class, cascade: ['persist'])] private Collection $souhait; - #[ORM\Column(name: 'domaineActiviteSouhait', type: 'text', nullable: true)] + #[ORM\Column(name: 'domaineActiviteSouhait', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $domaineActiviteSouhait = null; public const TYPE_CONTRAT = [ @@ -64,10 +69,10 @@ class ProjetProfessionnel implements \Stringable * * @Assert\Count(min=1, minMessage="Indiquez au moins un type de contrat") */ - #[ORM\Column(name: 'typeContrat', type: 'json', nullable: true)] + #[ORM\Column(name: 'typeContrat', type: Types::JSON, nullable: true)] private $typeContrat; - #[ORM\Column(name: 'typeContratNotes', type: 'text', nullable: true)] + #[ORM\Column(name: 'typeContratNotes', type: Types::TEXT, nullable: true)] private ?string $typeContratNotes = null; public const VOLUME_HORAIRES = [ @@ -80,29 +85,32 @@ class ProjetProfessionnel implements \Stringable * * @Assert\Count(min=1, minMessage="Indiquez un volume horaire souhaité") */ - #[ORM\Column(name: 'volumeHoraire', type: 'json', nullable: true)] + #[ORM\Column(name: 'volumeHoraire', type: Types::JSON, nullable: true)] private $volumeHoraire; - #[ORM\Column(name: 'volumeHoraireNotes', type: 'text', nullable: true)] + #[ORM\Column(name: 'volumeHoraireNotes', type: Types::TEXT, nullable: true)] private ?string $volumeHoraireNotes = null; - #[ORM\Column(name: 'idee', type: 'text', nullable: true)] + #[ORM\Column(name: 'idee', type: Types::TEXT, nullable: true)] private ?string $idee = null; - #[ORM\Column(name: 'enCoursConstruction', type: 'text', nullable: true)] + #[ORM\Column(name: 'enCoursConstruction', type: Types::TEXT, nullable: true)] private ?string $enCoursConstruction = null; + /** + * @var \Doctrine\Common\Collections\Collection + */ #[ORM\JoinTable(name: 'chill_csconnectes.projetprofessionnel_valide')] #[ORM\ManyToMany(targetEntity: Appellation::class)] private Collection $valide; - #[ORM\Column(name: 'domaineActiviteValide', type: 'text', nullable: true)] + #[ORM\Column(name: 'domaineActiviteValide', type: Types::TEXT, nullable: true)] private ?string $domaineActiviteValide = null; - #[ORM\Column(name: 'valideNotes', type: 'text', nullable: true)] + #[ORM\Column(name: 'valideNotes', type: Types::TEXT, nullable: true)] private ?string $valideNotes = null; - #[ORM\Column(name: 'projetProfessionnelNote', type: 'text', nullable: true)] + #[ORM\Column(name: 'projetProfessionnelNote', type: Types::TEXT, nullable: true)] private ?string $projetProfessionnelNote = null; public function __construct() diff --git a/src/Bundle/ChillJobBundle/src/Entity/Rome/Appellation.php b/src/Bundle/ChillJobBundle/src/Entity/Rome/Appellation.php index 3b389c4d7..c17e7352f 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Rome/Appellation.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Rome/Appellation.php @@ -20,15 +20,15 @@ use Doctrine\ORM\Mapping as ORM; #[ORM\Entity(repositoryClass: \Chill\ChillJobBundle\Repository\Rome\AppellationRepository::class)] class Appellation implements \Stringable { - #[ORM\Column(name: 'id', type: 'integer')] + #[ORM\Column(name: 'id', type: \Doctrine\DBAL\Types\Types::INTEGER)] #[ORM\Id] #[ORM\GeneratedValue(strategy: 'AUTO')] private ?int $id = null; - #[ORM\Column(name: 'code', type: 'string', length: 40, unique: true)] + #[ORM\Column(name: 'code', type: \Doctrine\DBAL\Types\Types::STRING, length: 40, unique: true)] private ?string $code = ''; - #[ORM\Column(name: 'libelle', type: 'text')] + #[ORM\Column(name: 'libelle', type: \Doctrine\DBAL\Types\Types::TEXT)] private ?string $libelle = ''; #[ORM\ManyToOne(targetEntity: Metier::class, inversedBy: 'appellations', cascade: ['persist'])] @@ -106,6 +106,6 @@ class Appellation implements \Stringable public function __toString(): string { - return $this->libelle; + return (string) $this->libelle; } } diff --git a/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php b/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php index c3908c77a..fa797558d 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php @@ -21,17 +21,20 @@ use Doctrine\Common\Collections\ArrayCollection; #[ORM\Entity(repositoryClass: \Chill\ChillJobBundle\Repository\Rome\MetierRepository::class)] class Metier { - #[ORM\Column(name: 'id', type: 'integer')] + #[ORM\Column(name: 'id', type: \Doctrine\DBAL\Types\Types::INTEGER)] #[ORM\Id] #[ORM\GeneratedValue(strategy: 'AUTO')] private ?int $id = null; - #[ORM\Column(name: 'libelle', type: 'text')] + #[ORM\Column(name: 'libelle', type: \Doctrine\DBAL\Types\Types::TEXT)] private ?string $libelle = ''; - #[ORM\Column(name: 'code', type: 'string', length: 20, unique: true)] + #[ORM\Column(name: 'code', type: \Doctrine\DBAL\Types\Types::STRING, length: 20, unique: true)] private ?string $code = ''; + /** + * @var \Doctrine\Common\Collections\Collection + */ #[ORM\OneToMany(targetEntity: Appellation::class, mappedBy: 'metier')] private readonly \Doctrine\Common\Collections\Collection $appellations; From ed3e0f889e6ee8c2868f4c2aeb548354816eaef3 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Tue, 23 Apr 2024 17:43:23 +0200 Subject: [PATCH 015/136] Rector changes + namespace changes --- .../_static/code/exports/BirthdateFilter.php | 2 +- rector.php | 3 + .../Entity/ActivityReason.php | 6 +- .../ChillBudgetBundle/Entity/Charge.php | 2 +- .../Entity/CustomField.php | 11 +- .../Entity/CustomFieldLongChoice/Option.php | 6 +- .../Entity/CustomFieldsDefaultGroup.php | 4 +- .../Entity/CustomFieldsGroup.php | 2 +- .../ChillDocStoreBundle/Entity/Document.php | 2 +- .../Entity/DocumentCategory.php | 2 +- .../Entity/PersonDocument.php | 4 +- src/Bundle/ChillEventBundle/Entity/Event.php | 2 +- .../ChillEventBundle/Entity/EventType.php | 3 +- src/Bundle/ChillEventBundle/Entity/Role.php | 3 +- src/Bundle/ChillEventBundle/Entity/Status.php | 3 +- .../src/ApiHelper/ApiWrapper.php | 7 +- .../ApiHelper/PartenaireRomeAppellation.php | 7 +- .../src/ApiHelper/ProcessRequestTrait.php | 7 +- .../src/ChillFranceTravailApiBundle.php | 2 +- .../src/Controller/RomeController.php | 17 +-- .../ChillFranceTravailApiExtension.php | 22 +++- .../src/DependencyInjection/Configuration.php | 7 +- .../src/Resources/config/routing.yml | 6 +- .../src/Resources/config/services.yml | 14 +-- .../PartenaireRomeAppellationTest.php | 6 +- .../Tests/Controller/RomeControllerTest.php | 2 +- .../ChillJobBundle/src/ChillJobBundle.php | 2 +- .../src/Controller/CSCrudReportController.php | 15 +-- .../src/Controller/CSPersonController.php | 33 +++--- .../src/Controller/CSReportController.php | 34 +++--- .../DependencyInjection/ChillJobExtension.php | 65 ++++++++++- .../src/DependencyInjection/Configuration.php | 6 +- .../ChillJobBundle/src/Entity/CSPerson.php | 101 ++++++++--------- src/Bundle/ChillJobBundle/src/Entity/CV.php | 49 ++++----- .../src/Entity/CV/Experience.php | 36 +++--- .../src/Entity/CV/Formation.php | 33 +++--- .../ChillJobBundle/src/Entity/Frein.php | 103 ++++-------------- .../ChillJobBundle/src/Entity/Immersion.php | 99 ++++++++--------- .../src/Entity/ProjetProfessionnel.php | 30 ++--- .../src/Entity/Rome/Appellation.php | 8 +- .../ChillJobBundle/src/Entity/Rome/Metier.php | 10 +- .../src/Export/ListCSPerson.php | 21 ++-- .../ChillJobBundle/src/Export/ListCV.php | 11 +- .../ChillJobBundle/src/Export/ListFrein.php | 13 ++- .../src/Export/ListProjetProfessionnel.php | 13 ++- .../src/Form/CSPersonDispositifsType.php | 4 +- .../Form/CSPersonPersonalSituationType.php | 4 +- .../src/Form/CV/ExperienceType.php | 4 +- .../src/Form/CV/FormationType.php | 4 +- src/Bundle/ChillJobBundle/src/Form/CVType.php | 8 +- .../RomeAppellationChoiceLoader.php | 8 +- .../ChillJobBundle/src/Form/FreinType.php | 4 +- .../ChillJobBundle/src/Form/ImmersionType.php | 4 +- .../src/Form/ProjetProfessionnelType.php | 6 +- .../src/Form/Type/PickRomeAppellationType.php | 12 +- .../ChillJobBundle/src/Menu/MenuBuilder.php | 20 ++-- .../src/Repository/CSPersonRepository.php | 2 +- .../Repository/CV/ExperienceRepository.php | 2 +- .../src/Repository/CV/FormationRepository.php | 2 +- .../src/Repository/CVRepository.php | 2 +- .../src/Repository/FreinRepository.php | 2 +- .../src/Repository/ImmersionRepository.php | 2 +- .../ProjetProfessionnelRepository.php | 2 +- .../Repository/Rome/AppellationRepository.php | 2 +- .../src/Repository/Rome/MetierRepository.php | 2 +- .../src/Resources/config/routing.yml | 6 +- .../src/Resources/config/services.yml | 2 +- .../Resources/config/services/3party_type.yml | 4 +- .../Resources/config/services/controller.yml | 12 +- .../src/Resources/config/services/export.yml | 8 +- .../src/Resources/config/services/form.yml | 4 +- .../src/Resources/config/services/menu.yml | 2 +- .../Resources/config/services/security.yml | 4 +- .../views/CSPerson/dispositifs_edit.html.twig | 28 ++--- .../views/CSPerson/dispositifs_view.html.twig | 52 ++++----- .../personal_situation_edit.html.twig | 54 ++++----- .../personal_situation_view.html.twig | 86 +++++++-------- .../src/Resources/views/CV/edit.html.twig | 18 +-- .../src/Resources/views/CV/new.html.twig | 16 +-- .../src/Resources/views/CV/view.html.twig | 56 +++++----- .../src/Resources/views/Frein/edit.html.twig | 4 +- .../src/Resources/views/Frein/new.html.twig | 2 +- .../src/Resources/views/Frein/view.html.twig | 10 +- .../views/Immersion/edit-bilan.html.twig | 50 ++++----- .../Resources/views/Immersion/edit.html.twig | 30 ++--- .../Resources/views/Immersion/new.html.twig | 28 ++--- .../Resources/views/Immersion/view.html.twig | 32 +++--- .../views/ProjetProfessionnel/edit.html.twig | 24 ++-- .../views/ProjetProfessionnel/new.html.twig | 24 ++-- .../views/ProjetProfessionnel/view.html.twig | 38 +++---- .../Resources/views/Report/delete.html.twig | 2 +- .../Resources/views/Report/index.html.twig | 26 ++--- .../Authorization/CSConnectesVoter.php | 12 +- .../Security/Authorization/ExportsVoter.php | 8 +- .../Controller/CSPersonControllerTest.php | 2 +- .../Controller/CSReportControllerTest.php | 2 +- .../src/ThirdParty/EntrepriseType.php | 2 +- .../src/ThirdParty/PrescripteurType.php | 2 +- src/Bundle/ChillMainBundle/Entity/Address.php | 2 +- src/Bundle/ChillMainBundle/Entity/Center.php | 2 +- .../Entity/Embeddable/CommentEmbeddable.php | 2 +- .../Embeddable/PrivateCommentEmbeddable.php | 2 +- .../ChillMainBundle/Entity/Language.php | 4 +- .../Entity/PermissionsGroup.php | 2 +- .../ChillMainBundle/Entity/PostalCode.php | 7 +- src/Bundle/ChillMainBundle/Entity/User.php | 10 +- .../Authorization/AuthorizationHelper.php | 2 +- .../Templating/Listing/FilterOrderHelper.php | 2 +- .../AccompanyingPeriod/ClosingMotive.php | 3 +- .../ChillPersonBundle/Entity/Person.php | 4 +- .../Entity/PersonNotDuplicate.php | 2 +- .../Export/Export/ListPerson.php | 8 +- .../ChillReportBundle/Entity/Report.php | 2 +- .../ChillTaskBundle/Entity/RecurringTask.php | 6 +- .../ChillTaskBundle/Entity/SingleTask.php | 4 +- .../Entity/Task/AbstractTaskPlaceEvent.php | 3 +- 116 files changed, 816 insertions(+), 831 deletions(-) diff --git a/docs/source/_static/code/exports/BirthdateFilter.php b/docs/source/_static/code/exports/BirthdateFilter.php index e25d8b42f..fca768ab3 100644 --- a/docs/source/_static/code/exports/BirthdateFilter.php +++ b/docs/source/_static/code/exports/BirthdateFilter.php @@ -21,7 +21,7 @@ use Symfony\Component\Validator\Context\ExecutionContextInterface; class BirthdateFilter implements ExportElementValidatedInterface, FilterInterface { // add specific role for this filter - public function addRole() + public function addRole(): ?string { // we do not need any new role for this filter, so we return null return null; diff --git a/rector.php b/rector.php index 6a6bf88ce..0b4f5b1fe 100644 --- a/rector.php +++ b/rector.php @@ -28,6 +28,9 @@ return static function (RectorConfig $rectorConfig): void { // register a single rule $rectorConfig->rule(InlineConstructorDefaultToPropertyRector::class); + $rectorConfig->rule(Rector\TypeDeclaration\Rector\ClassMethod\AddParamTypeFromPropertyTypeRector::class); + $rectorConfig->rule(Rector\TypeDeclaration\Rector\Class_\MergeDateTimePropertyTypeDeclarationRector::class); + $rectorConfig->rule(Rector\TypeDeclaration\Rector\ClassMethod\AddReturnTypeDeclarationBasedOnParentClassMethodRector::class); // part of the symfony 54 rules $rectorConfig->rule(\Rector\Symfony\Symfony53\Rector\StaticPropertyFetch\KernelTestCaseContainerPropertyDeprecationRector::class); diff --git a/src/Bundle/ChillActivityBundle/Entity/ActivityReason.php b/src/Bundle/ChillActivityBundle/Entity/ActivityReason.php index 5c6576497..bf3542630 100644 --- a/src/Bundle/ChillActivityBundle/Entity/ActivityReason.php +++ b/src/Bundle/ChillActivityBundle/Entity/ActivityReason.php @@ -79,11 +79,10 @@ class ActivityReason /** * Set active. * - * @param bool $active * * @return ActivityReason */ - public function setActive($active) + public function setActive(bool $active) { $this->active = $active; @@ -110,11 +109,10 @@ class ActivityReason /** * Set name. * - * @param array $name * * @return ActivityReason */ - public function setName($name) + public function setName(array $name) { $this->name = $name; diff --git a/src/Bundle/ChillBudgetBundle/Entity/Charge.php b/src/Bundle/ChillBudgetBundle/Entity/Charge.php index 5857b8b67..b4b2918c9 100644 --- a/src/Bundle/ChillBudgetBundle/Entity/Charge.php +++ b/src/Bundle/ChillBudgetBundle/Entity/Charge.php @@ -100,7 +100,7 @@ class Charge extends AbstractElement implements HasCentersInterface return $this; } - public function setHelp($help) + public function setHelp(?string $help) { $this->help = $help; diff --git a/src/Bundle/ChillCustomFieldsBundle/Entity/CustomField.php b/src/Bundle/ChillCustomFieldsBundle/Entity/CustomField.php index 9fddc10b3..169d2ad46 100644 --- a/src/Bundle/ChillCustomFieldsBundle/Entity/CustomField.php +++ b/src/Bundle/ChillCustomFieldsBundle/Entity/CustomField.php @@ -172,11 +172,10 @@ class CustomField /** * Set active. * - * @param bool $active * * @return CustomField */ - public function setActive($active) + public function setActive(bool $active) { $this->active = $active; @@ -228,14 +227,14 @@ class CustomField * * @return CustomField */ - public function setOrdering($order) + public function setOrdering(?float $order) { $this->ordering = $order; return $this; } - public function setRequired($required) + public function setRequired(bool $required) { $this->required = $required; @@ -245,7 +244,7 @@ class CustomField /** * @return $this */ - public function setSlug($slug) + public function setSlug(?string $slug) { $this->slug = $slug; @@ -259,7 +258,7 @@ class CustomField * * @return CustomField */ - public function setType($type) + public function setType(?string $type) { $this->type = $type; diff --git a/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldLongChoice/Option.php b/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldLongChoice/Option.php index 497cf7150..f57c6f253 100644 --- a/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldLongChoice/Option.php +++ b/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldLongChoice/Option.php @@ -129,7 +129,7 @@ class Option /** * @return $this */ - public function setActive($active) + public function setActive(bool $active) { $this->active = $active; @@ -139,7 +139,7 @@ class Option /** * @return $this */ - public function setInternalKey($internal_key) + public function setInternalKey(string $internal_key) { $this->internalKey = $internal_key; @@ -149,7 +149,7 @@ class Option /** * @return $this */ - public function setKey($key) + public function setKey(?string $key) { $this->key = $key; diff --git a/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsDefaultGroup.php b/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsDefaultGroup.php index 918872860..6f7c7a930 100644 --- a/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsDefaultGroup.php +++ b/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsDefaultGroup.php @@ -69,7 +69,7 @@ class CustomFieldsDefaultGroup * * @return CustomFieldsDefaultGroup */ - public function setCustomFieldsGroup($customFieldsGroup) + public function setCustomFieldsGroup(?\Chill\CustomFieldsBundle\Entity\CustomFieldsGroup $customFieldsGroup) { $this->customFieldsGroup = $customFieldsGroup; @@ -83,7 +83,7 @@ class CustomFieldsDefaultGroup * * @return CustomFieldsDefaultGroup */ - public function setEntity($entity) + public function setEntity(?string $entity) { $this->entity = $entity; diff --git a/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsGroup.php b/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsGroup.php index 25040ec5f..4ec64f6b6 100644 --- a/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsGroup.php +++ b/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsGroup.php @@ -169,7 +169,7 @@ class CustomFieldsGroup * * @return CustomFieldsGroup */ - public function setEntity($entity) + public function setEntity(?string $entity) { $this->entity = $entity; diff --git a/src/Bundle/ChillDocStoreBundle/Entity/Document.php b/src/Bundle/ChillDocStoreBundle/Entity/Document.php index b8c15c27c..1970d1127 100644 --- a/src/Bundle/ChillDocStoreBundle/Entity/Document.php +++ b/src/Bundle/ChillDocStoreBundle/Entity/Document.php @@ -129,7 +129,7 @@ class Document implements TrackCreationInterface, TrackUpdateInterface return $this; } - public function setUser($user): self + public function setUser(?\Chill\MainBundle\Entity\User $user): self { $this->user = $user; diff --git a/src/Bundle/ChillDocStoreBundle/Entity/DocumentCategory.php b/src/Bundle/ChillDocStoreBundle/Entity/DocumentCategory.php index 452f463f8..bac09414a 100644 --- a/src/Bundle/ChillDocStoreBundle/Entity/DocumentCategory.php +++ b/src/Bundle/ChillDocStoreBundle/Entity/DocumentCategory.php @@ -86,7 +86,7 @@ class DocumentCategory return $this; } - public function setDocumentClass($documentClass): self + public function setDocumentClass(?string $documentClass): self { $this->documentClass = $documentClass; diff --git a/src/Bundle/ChillDocStoreBundle/Entity/PersonDocument.php b/src/Bundle/ChillDocStoreBundle/Entity/PersonDocument.php index dfc5b72a9..437695b9d 100644 --- a/src/Bundle/ChillDocStoreBundle/Entity/PersonDocument.php +++ b/src/Bundle/ChillDocStoreBundle/Entity/PersonDocument.php @@ -55,14 +55,14 @@ class PersonDocument extends Document implements HasCenterInterface, HasScopeInt return $this->scope; } - public function setPerson($person): self + public function setPerson(\Chill\PersonBundle\Entity\Person $person): self { $this->person = $person; return $this; } - public function setScope($scope): self + public function setScope(?\Chill\MainBundle\Entity\Scope $scope): self { $this->scope = $scope; diff --git a/src/Bundle/ChillEventBundle/Entity/Event.php b/src/Bundle/ChillEventBundle/Entity/Event.php index 2f323d11a..55b152132 100644 --- a/src/Bundle/ChillEventBundle/Entity/Event.php +++ b/src/Bundle/ChillEventBundle/Entity/Event.php @@ -269,7 +269,7 @@ class Event implements HasCenterInterface, HasScopeInterface, TrackCreationInter * * @return Event */ - public function setName($label) + public function setName(?string $label) { $this->name = $label; diff --git a/src/Bundle/ChillEventBundle/Entity/EventType.php b/src/Bundle/ChillEventBundle/Entity/EventType.php index 5aa257ee9..b0448325a 100644 --- a/src/Bundle/ChillEventBundle/Entity/EventType.php +++ b/src/Bundle/ChillEventBundle/Entity/EventType.php @@ -146,11 +146,10 @@ class EventType /** * Set active. * - * @param bool $active * * @return EventType */ - public function setActive($active) + public function setActive(bool $active) { $this->active = $active; diff --git a/src/Bundle/ChillEventBundle/Entity/Role.php b/src/Bundle/ChillEventBundle/Entity/Role.php index 90f3c43e6..968e52353 100644 --- a/src/Bundle/ChillEventBundle/Entity/Role.php +++ b/src/Bundle/ChillEventBundle/Entity/Role.php @@ -81,11 +81,10 @@ class Role /** * Set active. * - * @param bool $active * * @return Role */ - public function setActive($active) + public function setActive(bool $active) { $this->active = $active; diff --git a/src/Bundle/ChillEventBundle/Entity/Status.php b/src/Bundle/ChillEventBundle/Entity/Status.php index 4153967af..99dd84451 100644 --- a/src/Bundle/ChillEventBundle/Entity/Status.php +++ b/src/Bundle/ChillEventBundle/Entity/Status.php @@ -81,11 +81,10 @@ class Status /** * Set active. * - * @param bool $active * * @return Status */ - public function setActive($active) + public function setActive(bool $active) { $this->active = $active; diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php index 7fe43bae1..35879fb2f 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php @@ -9,7 +9,7 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillFranceTravailApiBundle\ApiHelper; +namespace Chill\FranceTravailApiBundle\ApiHelper; use Chill\MainBundle\Redis\ChillRedis; use GuzzleHttp\Client; @@ -33,7 +33,7 @@ class ApiWrapper */ public const UNPERSONAL_BEARER = 'api_pemploi_bear_'; - public function __construct(private $clientId, private $clientSecret, private readonly ChillRedis $redis) + public function __construct(private $clientId, private $clientSecret, private ChillRedis $redis) { $this->client = new Client([ 'base_uri' => 'https://entreprise.pole-emploi.fr/connexion/oauth2/access_token', @@ -66,8 +66,7 @@ class ApiWrapper // ]); ]); } catch (ClientException $e) { - dump(Psr7\str($e->getRequest())); - dump(Psr7\str($e->getResponse())); + dump($e->getResponse()); } $data = \json_decode((string) $response->getBody()); diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php index 27679a61d..4a30432c9 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php @@ -9,10 +9,11 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillFranceTravailApiBundle\ApiHelper; +namespace Chill\FranceTravailApiBundle\ApiHelper; use GuzzleHttp\Client; use GuzzleHttp\Psr7\Request; +use GuzzleHttp\Utils; use Psr\Log\LoggerInterface; /** @@ -79,7 +80,7 @@ class PartenaireRomeAppellation $this->logger ); - return \GuzzleHttp\json_decode((string) $response->getBody()); + return Utils::jsonDecode((string) $response->getBody()); } public function getAppellation($code) @@ -103,6 +104,6 @@ class PartenaireRomeAppellation $this->logger ); - return \GuzzleHttp\json_decode((string) $response->getBody()); + return Utils::jsonDecode((string) $response->getBody()); } } diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ProcessRequestTrait.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ProcessRequestTrait.php index 6284f5fe6..b7078861c 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ProcessRequestTrait.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ProcessRequestTrait.php @@ -9,7 +9,7 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillFranceTravailApiBundle\ApiHelper; +namespace Chill\FranceTravailApiBundle\ApiHelper; use GuzzleHttp\Client; use GuzzleHttp\Psr7\Request; @@ -30,7 +30,6 @@ trait ProcessRequestTrait * @param Request $request the request * @param array $parameters the requests parameters * - * @return type */ protected function handleRequest( Request $request, @@ -49,10 +48,6 @@ trait ProcessRequestTrait /** * internal method to handle recursive requests. * - * @param type $counter - * - * @return type - * * @throws BadResponseException */ private function handleRequestRecursive( diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ChillFranceTravailApiBundle.php b/src/Bundle/ChillFranceTravailApiBundle/src/ChillFranceTravailApiBundle.php index 6ebf66d2a..c235fc2c5 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ChillFranceTravailApiBundle.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ChillFranceTravailApiBundle.php @@ -9,7 +9,7 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillFranceTravailApiBundle; +namespace Chill\FranceTravailApiBundle; use Symfony\Component\HttpKernel\Bundle\Bundle; diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/Controller/RomeController.php b/src/Bundle/ChillFranceTravailApiBundle/src/Controller/RomeController.php index 4c3670412..ef7a0619f 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/Controller/RomeController.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/Controller/RomeController.php @@ -9,15 +9,15 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillFranceTravailApiBundle\Controller; +namespace Chill\FranceTravailApiBundle\Controller; -use Symfony\Bundle\FrameworkBundle\Controller\Controller; -use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route; +use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Request; -use Chill\ChillFranceTravailApiBundle\ApiHelper\PartenaireRomeAppellation; +use Chill\FranceTravailApiBundle\ApiHelper\PartenaireRomeAppellation; use Symfony\Component\HttpFoundation\JsonResponse; +use Symfony\Component\Routing\Annotation\Route; -class RomeController extends Controller +class RomeController extends AbstractController { /** * @var PartenaireRomeAppellation @@ -29,12 +29,7 @@ class RomeController extends Controller $this->apiAppellation = $apiAppellation; } - /** - * @Route("/{_locale}/pole-emploi/appellation/search.{_format}", - * name="chill_pole_emploi_api_appellation_search", - * requirements={ "_format" = "json" } - * ) - */ + #[Route(path: '/{_locale}/france-travail/appellation/search.{_format}', name: 'chill_france_travail_api_appellation_search')] public function appellationSearchAction(Request $request) { if (false === $request->query->has('q')) { diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/DependencyInjection/ChillFranceTravailApiExtension.php b/src/Bundle/ChillFranceTravailApiBundle/src/DependencyInjection/ChillFranceTravailApiExtension.php index 1e7f3f45d..1f69b80c2 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/DependencyInjection/ChillFranceTravailApiExtension.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/DependencyInjection/ChillFranceTravailApiExtension.php @@ -9,10 +9,11 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillFranceTravailApiBundle\DependencyInjection; +namespace Chill\FranceTravailApiBundle\DependencyInjection; use Symfony\Component\DependencyInjection\ContainerBuilder; use Symfony\Component\Config\FileLocator; +use Symfony\Component\DependencyInjection\Extension\PrependExtensionInterface; use Symfony\Component\HttpKernel\DependencyInjection\Extension; use Symfony\Component\DependencyInjection\Loader; @@ -21,7 +22,7 @@ use Symfony\Component\DependencyInjection\Loader; * * @see http://symfony.com/doc/current/cookbook/bundles/extension.html */ -class ChillFranceTravailApiExtension extends Extension +class ChillFranceTravailApiExtension extends Extension implements PrependExtensionInterface { public function load(array $configs, ContainerBuilder $container) { @@ -31,4 +32,21 @@ class ChillFranceTravailApiExtension extends Extension $loader = new Loader\YamlFileLoader($container, new FileLocator(__DIR__.'/../Resources/config')); $loader->load('services.yml'); } + + public function prepend(ContainerBuilder $container): void + { + $this->prependRoute($container); + } + + protected function prependRoute(ContainerBuilder $container): void + { + // declare routes for france travail api bundle + $container->prependExtensionConfig('chill_main', [ + 'routing' => [ + 'resources' => [ + '@ChillFranceTravailApiBundle/Resources/config/routing.yml', + ], + ], + ]); + } } diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/DependencyInjection/Configuration.php b/src/Bundle/ChillFranceTravailApiBundle/src/DependencyInjection/Configuration.php index 38198c906..2d94678d4 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/DependencyInjection/Configuration.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/DependencyInjection/Configuration.php @@ -9,7 +9,7 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillFranceTravailApiBundle\DependencyInjection; +namespace Chill\FranceTravailApiBundle\DependencyInjection; use Symfony\Component\Config\Definition\Builder\TreeBuilder; use Symfony\Component\Config\Definition\ConfigurationInterface; @@ -23,9 +23,8 @@ class Configuration implements ConfigurationInterface { public function getConfigTreeBuilder() { - $treeBuilder = new TreeBuilder(); - $rootNode = $treeBuilder->root('chill_pole_emploi_api'); - + $treeBuilder = new TreeBuilder('chill_france_travail_api'); + $rootNode = $treeBuilder->getRootNode(); // Here you should define the parameters that are allowed to // configure your bundle. See the documentation linked above for // more information on that topic. diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/Resources/config/routing.yml b/src/Bundle/ChillFranceTravailApiBundle/src/Resources/config/routing.yml index 6d0204b6e..fdb34eb87 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/Resources/config/routing.yml +++ b/src/Bundle/ChillFranceTravailApiBundle/src/Resources/config/routing.yml @@ -1,3 +1,3 @@ -chill_poleemploi_api_controllers: - resource: "@ChillPoleEmploiApiBundle/Controller" - type: annotation \ No newline at end of file +chill_france_travail_api_controllers: + resource: "@ChillFranceTravailApiBundle/Controller" + type: annotation diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/Resources/config/services.yml b/src/Bundle/ChillFranceTravailApiBundle/src/Resources/config/services.yml index ff2352d7a..cc41a540c 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/Resources/config/services.yml +++ b/src/Bundle/ChillFranceTravailApiBundle/src/Resources/config/services.yml @@ -1,14 +1,14 @@ services: - Chill\ChillFranceTravailApiBundle\ApiHelper\ApiWrapper: - $clientId: '%pole_emploi_dev_client_id%' - $clientSecret: '%pole_emploi_dev_client_secret%' + Chill\FranceTravailApiBundle\ApiHelper\ApiWrapper: +# $clientId: '%pole_emploi_dev_client_id%' +# $clientSecret: '%pole_emploi_dev_client_secret%' $redis: '@Chill\MainBundle\Redis\ChillRedis' - Chill\ChillFranceTravailApiBundle\ApiHelper\PartenaireRomeAppellation: - $wrapper: '@Chill\ChillFranceTravailApiBundle\ApiHelper\ApiWrapper' + Chill\FranceTravailApiBundle\ApiHelper\PartenaireRomeAppellation: + $wrapper: '@Chill\FranceTravailApiBundle\ApiHelper\ApiWrapper' $logger: '@Psr\Log\LoggerInterface' - Chill\ChillFranceTravailApiBundle\Controller\RomeController: + Chill\FranceTravailApiBundle\Controller\RomeController: arguments: - $apiAppellation: '@Chill\ChillFranceTravailApiBundle\ApiHelper\PartenaireRomeAppellation' + $apiAppellation: '@Chill\FranceTravailApiBundle\ApiHelper\PartenaireRomeAppellation' tags: ['controller.service_arguments'] diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/Tests/ApiHelper/PartenaireRomeAppellationTest.php b/src/Bundle/ChillFranceTravailApiBundle/src/Tests/ApiHelper/PartenaireRomeAppellationTest.php index 8f5cde9a7..4096d5e94 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/Tests/ApiHelper/PartenaireRomeAppellationTest.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/Tests/ApiHelper/PartenaireRomeAppellationTest.php @@ -9,10 +9,10 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillFranceTravailApiBundle\Tests\ApiHelper; +namespace Chill\FranceTravailApiBundle\Tests\ApiHelper; use Symfony\Bundle\FrameworkBundle\Test\KernelTestCase; -use Chill\ChillFranceTravailApiBundle\ApiHelper\PartenaireRomeAppellation; +use Chill\FranceTravailApiBundle\ApiHelper\PartenaireRomeAppellation; /** * @author Julien Fastré @@ -23,7 +23,7 @@ use Chill\ChillFranceTravailApiBundle\ApiHelper\PartenaireRomeAppellation; */ class PartenaireRomeAppellationTest extends KernelTestCase { - protected function setUp() + protected function setUp(): void { parent::setUp(); diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/Tests/Controller/RomeControllerTest.php b/src/Bundle/ChillFranceTravailApiBundle/src/Tests/Controller/RomeControllerTest.php index a64ce5ae5..ef88ccf75 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/Tests/Controller/RomeControllerTest.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/Tests/Controller/RomeControllerTest.php @@ -9,7 +9,7 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillFranceTravailApiBundle\Tests\Controller; +namespace Chill\FranceTravailApiBundle\Tests\Controller; use Symfony\Bundle\FrameworkBundle\Test\WebTestCase; diff --git a/src/Bundle/ChillJobBundle/src/ChillJobBundle.php b/src/Bundle/ChillJobBundle/src/ChillJobBundle.php index e583a271b..b8b4a2146 100644 --- a/src/Bundle/ChillJobBundle/src/ChillJobBundle.php +++ b/src/Bundle/ChillJobBundle/src/ChillJobBundle.php @@ -9,7 +9,7 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle; +namespace Chill\JobBundle; use Symfony\Component\HttpKernel\Bundle\Bundle; diff --git a/src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php b/src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php index 44f98074a..3e6abfebb 100644 --- a/src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php +++ b/src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php @@ -9,12 +9,13 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Controller; +namespace Chill\JobBundle\Controller; use Chill\PersonBundle\CRUD\Controller\EntityPersonCRUDController; use Symfony\Component\Form\FormInterface; use Symfony\Component\HttpFoundation\Request; -use Chill\ChillJobBundle\Entity\Immersion; +use Chill\JobBundle\Entity\Immersion; +use Symfony\Component\HttpFoundation\Response; /** * CRUD Controller for reports (Frein, ...). @@ -23,12 +24,12 @@ class CSCrudReportController extends EntityPersonCRUDController { public function __construct(private readonly \Doctrine\Persistence\ManagerRegistry $managerRegistry) {} - protected function onBeforeRedirectAfterSubmission(string $action, $entity, FormInterface $form, Request $request) + protected function onBeforeRedirectAfterSubmission(string $action, $entity, FormInterface $form, Request $request): ?Response { $next = $request->request->get('submit', 'save-and-close'); return match ($next) { - 'save-and-close', 'delete-and-close' => $this->redirectToRoute('chill_csconnectes_csreport_index', [ + 'save-and-close', 'delete-and-close' => $this->redirectToRoute('chill_job_report_index', [ 'person' => $entity->getPerson()->getId(), ]), default => parent::onBeforeRedirectAfterSubmission($action, $entity, $form, $request), @@ -39,7 +40,7 @@ class CSCrudReportController extends EntityPersonCRUDController { if ('cscv' === $this->getCrudName()) { $id = $request->query->get('duplicate_id', 0); - /** @var \Chill\ChillJobBundle\Entity\CV $cv */ + /** @var \Chill\JobBundle\Entity\CV $cv */ $cv = $this->getEntity($action, $id, $request); $em = $this->managerRegistry->getManager(); @@ -60,7 +61,7 @@ class CSCrudReportController extends EntityPersonCRUDController } if ('projet_prof' === $this->getCrudName()) { $id = $request->query->get('duplicate_id', 0); - /** @var \Chill\ChillJobBundle\Entity\ProjetProfessionnel $original */ + /** @var \Chill\JobBundle\Entity\ProjetProfessionnel $original */ $original = $this->getEntity($action, $id, $request); $new = parent::duplicateEntity($action, $request); @@ -115,7 +116,7 @@ class CSCrudReportController extends EntityPersonCRUDController /** * Edit immersion bilan. * - * @param type $id + * @param int $id */ public function editBilan(Request $request, $id): \Symfony\Component\HttpFoundation\Response { diff --git a/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php b/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php index 102817702..a85188216 100644 --- a/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php +++ b/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php @@ -9,15 +9,16 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Controller; +namespace Chill\JobBundle\Controller; use Chill\PersonBundle\CRUD\Controller\OneToOneEntityPersonCRUDController; use Chill\PersonBundle\Security\Authorization\PersonVoter; use Symfony\Component\Form\FormInterface; use Symfony\Component\HttpFoundation\Request; -use Chill\ChillJobBundle\Form\CSPersonPersonalSituationType; -use Chill\ChillJobBundle\Form\CSPersonDispositifsType; +use Chill\JobBundle\Form\CSPersonPersonalSituationType; +use Chill\JobBundle\Form\CSPersonDispositifsType; use Symfony\Component\HttpFoundation\Response; +use Symfony\Component\Routing\Annotation\Route; class CSPersonController extends OneToOneEntityPersonCRUDController { @@ -41,18 +42,22 @@ class CSPersonController extends OneToOneEntityPersonCRUDController ); } - public function personalSituationView(Request $request, $id): Response + #[Route(path: '{_locale}/person/job/{person}/personal_situation', name: 'chill_job_personal_situation_view')] + public function personalSituationView(Request $request, $person): Response { - return $this->viewAction('ps_situation_view', $request, $id); + return $this->viewAction('ps_situation_view', $request, $person); } - public function dispositifsView(Request $request, $id): Response + #[Route(path: '{_locale}/person/job/{person}/dispositifs', name: 'chill_job_dispositifs_view')] + public function dispositifsView(Request $request, $person): Response { - return $this->viewAction('dispositifs_view', $request, $id); + return $this->viewAction('dispositifs_view', $request, $person); } - protected function generateRedirectOnCreateRoute($action, Request $request, $entity) + protected function generateRedirectOnCreateRoute($action, Request $request, $entity): string { + $route = ''; + switch ($action) { case 'ps_situation_view': $route = 'chill_crud_csperson_personal_situation_edit'; @@ -82,7 +87,7 @@ class CSPersonController extends OneToOneEntityPersonCRUDController }; } - protected function onBeforeRedirectAfterSubmission(string $action, $entity, FormInterface $form, Request $request) + protected function onBeforeRedirectAfterSubmission(string $action, $entity, FormInterface $form, Request $request): ?Response { return match ($action) { 'ps_situation_edit' => $this->redirectToRoute( @@ -101,13 +106,13 @@ class CSPersonController extends OneToOneEntityPersonCRUDController { switch ($action) { case 'ps_situation_edit': - return '@CSConnectesSP/CSPerson/personal_situation_edit.html.twig'; + return '@ChillJob/CSPerson/personal_situation_edit.html.twig'; case 'dispositifs_edit': - return '@CSConnectesSP/CSPerson/dispositifs_edit.html.twig'; + return '@ChillJob/CSPerson/dispositifs_edit.html.twig'; case 'ps_situation_view': - return '@CSConnectesSP/CSPerson/personal_situation_view.html.twig'; + return '@ChillJob/CSPerson/personal_situation_view.html.twig'; case 'dispositifs_view': - return '@CSConnectesSP/CSPerson/dispositifs_view.html.twig'; + return '@ChillJob/CSPerson/dispositifs_view.html.twig'; default: parent::getTemplateFor($action, $entity, $request); } @@ -150,7 +155,7 @@ class CSPersonController extends OneToOneEntityPersonCRUDController throw new \LogicException("this formName is not supported: {$formName}"); break; default: - return parent::generateLabelForButton($action, $formName, $form); + return 'Enregistrer'; } } } diff --git a/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php b/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php index 6d4d61fc2..c3dbf472f 100644 --- a/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php +++ b/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php @@ -9,26 +9,26 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Controller; +namespace Chill\JobBundle\Controller; -use Symfony\Bundle\FrameworkBundle\Controller\Controller; -use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route; +use Symfony\Component\Routing\Annotation\Route; +use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Chill\PersonBundle\Entity\Person; use Symfony\Component\HttpFoundation\Response; -use Chill\ChillJobBundle\Entity\Frein; -use Chill\ChillJobBundle\Entity\CV; -use Chill\ChillJobBundle\Entity\Immersion; -use Chill\ChillJobBundle\Entity\ProjetProfessionnel; +use Chill\JobBundle\Entity\Frein; +use Chill\JobBundle\Entity\CV; +use Chill\JobBundle\Entity\Immersion; +use Chill\JobBundle\Entity\ProjetProfessionnel; use Chill\PersonBundle\Security\Authorization\PersonVoter; -use Chill\ChillJobBundle\Security\Authorization\CSConnectesVoter; +use Chill\JobBundle\Security\Authorization\CSConnectesVoter; -class CSReportController extends Controller +class CSReportController extends AbstractController { - /** - * @Route("{_locale}/csconnectes/person/{person}/report", - * name="chill_csconnectes_csreport_index" - * ) - */ + public function __construct(private \Doctrine\Persistence\ManagerRegistry $managerRegistry) + { + } + + #[Route(path: '{_locale}/person/job/{person}/report', name: 'chill_job_report_index')] public function index(Person $person): Response { $this->denyAccessUnlessGranted(PersonVoter::SEE, $person, 'The access to ' @@ -36,12 +36,12 @@ class CSReportController extends Controller $reports = $this->getReports($person); - return $this->render('@CSConnectesSP/Report/index.html.twig', \array_merge([ + return $this->render('@ChillJob/Report/index.html.twig', \array_merge([ 'person' => $person, ], $reports)); } - protected function getReports(Person $person) + protected function getReports(Person $person): array { $results = []; @@ -65,7 +65,7 @@ class CSReportController extends Controller 'immersions' => ['debutDate' => 'DESC'], default => ['reportDate' => 'DESC'], }; - $results[$key] = $this->getDoctrine()->getManager() + $results[$key] = $this->managerRegistry->getManager() ->getRepository($className) ->findByPerson($person, $ordering); } diff --git a/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php b/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php index de01124bf..ffc760768 100644 --- a/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php +++ b/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php @@ -9,10 +9,14 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\DependencyInjection; +namespace Chill\JobBundle\DependencyInjection; +use Chill\JobBundle\Controller\CSPersonController; +use Chill\JobBundle\Entity\CSPerson; +use Chill\JobBundle\Form\CSPersonPersonalSituationType; use Symfony\Component\DependencyInjection\ContainerBuilder; use Symfony\Component\Config\FileLocator; +use Symfony\Component\DependencyInjection\Extension\PrependExtensionInterface; use Symfony\Component\HttpKernel\DependencyInjection\Extension; use Symfony\Component\DependencyInjection\Loader; @@ -21,17 +25,70 @@ use Symfony\Component\DependencyInjection\Loader; * * @see http://symfony.com/doc/current/cookbook/bundles/extension.html */ -class ChillJobExtension extends Extension +class ChillJobExtension extends Extension implements PrependExtensionInterface { - public function load(array $configs, ContainerBuilder $container) + public function load(array $configs, ContainerBuilder $container): void { $configuration = new Configuration(); $config = $this->processConfiguration($configuration, $configs); $loader = new Loader\YamlFileLoader($container, new FileLocator(__DIR__.'/../Resources/config')); $loader->load('services.yml'); + $loader->load('services/3party_type.yml'); + $loader->load('services/controller.yml'); + $loader->load('services/form.yml'); + $loader->load('services/export.yml'); + $loader->load('services/menu.yml'); + $loader->load('services/security.yml'); // exports: list_CSperson override list_person - $container->setAlias('chill.person.export.list_person', \Chill\ChillJobBundle\Export\ListCSPerson::class); + $container->setAlias('chill.person.export.list_person', \Chill\JobBundle\Export\ListCSPerson::class); + } + + public function prepend(ContainerBuilder $container): void + { + $this->prependRoute($container); + } + +/* protected function prependCruds(ContainerBuilder $container) + { + $container->prependExtensionConfig('chill_main', [ + 'cruds' => [ + [ + 'class' => CSPerson::class, + 'controller' => CSPersonController::class, + 'name' => 'admin_personal_situation', +// 'base_path' => '/admin/main/personal_situation', + 'base_role' => 'ROLE_USER', + 'form_class' => CSPersonPersonalSituationType::class, + 'actions' => [ + 'index' => [ + 'role' => 'ROLE_USER', + 'template' => '@ChillPerson/CRUD/index.html.twig', + ], + 'new' => [ + 'role' => 'ROLE_USER', + 'template' => '@ChillPerson/CRUD/new.html.twig', + ], + 'edit' => [ + 'role' => 'ROLE_USER', + 'template' => '@ChillPerson/CRUD/edit.html.twig', + ], + ], + ] + ], + ]); + }*/ + + protected function prependRoute(ContainerBuilder $container): void + { + // declare routes for job bundle + $container->prependExtensionConfig('chill_main', [ + 'routing' => [ + 'resources' => [ + '@ChillJobBundle/Resources/config/routing.yml', + ], + ], + ]); } } diff --git a/src/Bundle/ChillJobBundle/src/DependencyInjection/Configuration.php b/src/Bundle/ChillJobBundle/src/DependencyInjection/Configuration.php index b11c109fc..f4140defa 100644 --- a/src/Bundle/ChillJobBundle/src/DependencyInjection/Configuration.php +++ b/src/Bundle/ChillJobBundle/src/DependencyInjection/Configuration.php @@ -9,7 +9,7 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\DependencyInjection; +namespace Chill\JobBundle\DependencyInjection; use Symfony\Component\Config\Definition\Builder\TreeBuilder; use Symfony\Component\Config\Definition\ConfigurationInterface; @@ -23,8 +23,8 @@ class Configuration implements ConfigurationInterface { public function getConfigTreeBuilder() { - $treeBuilder = new TreeBuilder(); - $rootNode = $treeBuilder->root('cs_connectes_sp'); + $treeBuilder = new TreeBuilder('chill_job'); + $rootNode = $treeBuilder->getRootNode(); // Here you should define the parameters that are allowed to // configure your bundle. See the documentation linked above for diff --git a/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php b/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php index f832c8fe1..65f7c9b3b 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php @@ -1,6 +1,6 @@ situationLogement = $situationLogement; @@ -503,11 +502,10 @@ class CSPerson /** * Set enfantACharge. * - * @param int|null $enfantACharge * * @return CSPerson */ - public function setEnfantACharge($enfantACharge = null) + public function setEnfantACharge(?int $enfantACharge = null) { $this->enfantACharge = $enfantACharge; @@ -527,8 +525,6 @@ class CSPerson /** * Set niveauMaitriseLangue. * - * @param json $niveauMaitriseLangue - * * @return CSPerson */ public function setNiveauMaitriseLangue($niveauMaitriseLangue) @@ -583,7 +579,7 @@ class CSPerson * * @return CSPerson */ - public function setVehiculePersonnel($vehiculePersonnel) + public function setVehiculePersonnel(?bool $vehiculePersonnel) { $this->vehiculePersonnel = $vehiculePersonnel; @@ -603,8 +599,6 @@ class CSPerson /** * Set permisConduire. * - * @param json $permisConduire - * * @return CSPerson */ public function setPermisConduire($permisConduire) @@ -617,7 +611,6 @@ class CSPerson /** * Get permisConduire. * - * @return json */ public function getPermisConduire() { @@ -631,7 +624,7 @@ class CSPerson * * @return CSPerson */ - public function setSituationProfessionnelle($situationProfessionnelle) + public function setSituationProfessionnelle(?string $situationProfessionnelle) { $this->situationProfessionnelle = $situationProfessionnelle; @@ -655,7 +648,7 @@ class CSPerson * * @return CSPerson */ - public function setDateFinDernierEmploi($dateFinDernierEmploi) + public function setDateFinDernierEmploi(?\DateTimeInterface $dateFinDernierEmploi) { $this->dateFinDernierEmploi = $dateFinDernierEmploi; @@ -675,7 +668,6 @@ class CSPerson /** * Set typeContrat. * - * @param json $typeContrat * * @return CSPerson */ @@ -689,7 +681,6 @@ class CSPerson /** * Get typeContrat. * - * @return json */ public function getTypeContrat() { @@ -699,8 +690,6 @@ class CSPerson /** * Set ressources. * - * @param json $ressources - * * @return CSPerson */ public function setRessources($ressources) @@ -713,7 +702,6 @@ class CSPerson /** * Get ressources. * - * @return json */ public function getRessources() { @@ -727,7 +715,7 @@ class CSPerson * * @return CSPerson */ - public function setRessourcesComment($ressourcesComment) + public function setRessourcesComment(?string $ressourcesComment) { $this->ressourcesComment = $ressourcesComment; @@ -751,7 +739,7 @@ class CSPerson * * @return CSPerson */ - public function setRessourceDate1Versement($ressourceDate1Versement) + public function setRessourceDate1Versement(?\DateTimeInterface $ressourceDate1Versement) { $this->ressourceDate1Versement = $ressourceDate1Versement; @@ -761,7 +749,7 @@ class CSPerson /** * Get ressourceDate1Versement. * - * @return \DateTime + * @return \DateTimeInterface */ public function getRessourceDate1Versement() { @@ -773,7 +761,7 @@ class CSPerson return $this->cPFMontant; } - function setCPFMontant($cPFMontant) + function setCPFMontant(?float $cPFMontant) { $this->cPFMontant = $cPFMontant; @@ -783,8 +771,6 @@ class CSPerson /** * Set accompagnement. * - * @param json $accompagnement - * * @return CSPerson */ public function setAccompagnement($accompagnement) @@ -797,7 +783,6 @@ class CSPerson /** * Get accompagnement. * - * @return json */ public function getAccompagnement() { @@ -811,7 +796,7 @@ class CSPerson * * @return CSPerson */ - public function setAccompagnementRQTHDate($accompagnementRQTHDate) + public function setAccompagnementRQTHDate(?\DateTimeInterface $accompagnementRQTHDate) { $this->accompagnementRQTHDate = $accompagnementRQTHDate; @@ -821,7 +806,7 @@ class CSPerson /** * Get accompagnementRQTHDate. * - * @return \DateTime + * @return \DateTimeInterface */ public function getAccompagnementRQTHDate() { @@ -835,7 +820,7 @@ class CSPerson * * @return CSPerson */ - public function setAccompagnementComment($accompagnementComment) + public function setAccompagnementComment(?string $accompagnementComment) { $this->accompagnementComment = $accompagnementComment; @@ -859,7 +844,7 @@ class CSPerson * * @return CSPerson */ - public function setPoleEmploiId($poleEmploiId) + public function setPoleEmploiId(?string $poleEmploiId) { $this->poleEmploiId = $poleEmploiId; @@ -883,7 +868,7 @@ class CSPerson * * @return CSPerson */ - public function setPoleEmploiInscriptionDate($poleEmploiInscriptionDate) + public function setPoleEmploiInscriptionDate(?\DateTimeInterface $poleEmploiInscriptionDate) { $this->poleEmploiInscriptionDate = $poleEmploiInscriptionDate; @@ -893,7 +878,7 @@ class CSPerson /** * Get poleEmploiInscriptionDate. * - * @return \DateTime + * @return \DateTimeInterface */ public function getPoleEmploiInscriptionDate() { @@ -907,7 +892,7 @@ class CSPerson * * @return CSPerson */ - public function setCafId($cafId) + public function setCafId(?string $cafId) { $this->cafId = $cafId; @@ -931,7 +916,7 @@ class CSPerson * * @return CSPerson */ - public function setCafInscriptionDate($cafInscriptionDate) + public function setCafInscriptionDate(?\DateTimeInterface $cafInscriptionDate) { $this->cafInscriptionDate = $cafInscriptionDate; @@ -941,7 +926,7 @@ class CSPerson /** * Get cafInscriptionDate. * - * @return \DateTime + * @return \DateTimeInterface */ public function getCafInscriptionDate() { @@ -955,7 +940,7 @@ class CSPerson * * @return CSPerson */ - public function setCERInscriptionDate($cERInscriptionDate) + public function setCERInscriptionDate(?\DateTimeInterface $cERInscriptionDate) { $this->cERInscriptionDate = $cERInscriptionDate; @@ -965,7 +950,7 @@ class CSPerson /** * Get cERInscriptionDate. * - * @return \DateTime + * @return \DateTimeInterface */ public function getCERInscriptionDate() { @@ -979,7 +964,7 @@ class CSPerson * * @return CSPerson */ - public function setPPAEInscriptionDate($pPAEInscriptionDate) + public function setPPAEInscriptionDate(?\DateTimeInterface $pPAEInscriptionDate) { $this->pPAEInscriptionDate = $pPAEInscriptionDate; @@ -989,7 +974,7 @@ class CSPerson /** * Get pPAEInscriptionDate. * - * @return \DateTime + * @return \DateTimeInterface */ public function getPPAEInscriptionDate() { @@ -1006,12 +991,12 @@ class CSPerson return $this->pPAESignataire; } - public function setCERSignataire($cERSignataire) + public function setCERSignataire(?string $cERSignataire) { $this->cERSignataire = $cERSignataire; } - public function setPPAESignataire($pPAESignataire) + public function setPPAESignataire(?string $pPAESignataire) { $this->pPAESignataire = $pPAESignataire; } @@ -1024,7 +1009,7 @@ class CSPerson * * @return CSPerson */ - public function setNEETEligibilite($nEETEligibilite) + public function setNEETEligibilite(?bool $nEETEligibilite) { $this->nEETEligibilite = $nEETEligibilite; @@ -1048,7 +1033,7 @@ class CSPerson * * @return CSPerson */ - public function setNEETCommissionDate($nEETCommissionDate) + public function setNEETCommissionDate(?\DateTimeInterface $nEETCommissionDate) { $this->nEETCommissionDate = $nEETCommissionDate; @@ -1058,7 +1043,7 @@ class CSPerson /** * Get nEETCommissionDate. * - * @return \DateTime + * @return \DateTimeInterface */ public function getNEETCommissionDate() { @@ -1072,7 +1057,7 @@ class CSPerson * * @return CSPerson */ - public function setFSEMaDemarcheCode($fSEMaDemarcheCode) + public function setFSEMaDemarcheCode(?string $fSEMaDemarcheCode) { $this->fSEMaDemarcheCode = $fSEMaDemarcheCode; @@ -1094,7 +1079,7 @@ class CSPerson return $this->dispositifsNotes; } - function setDispositifsNotes($dispositifsNotes) + function setDispositifsNotes(?string $dispositifsNotes) { $this->dispositifsNotes = $dispositifsNotes; } @@ -1305,7 +1290,7 @@ class CSPerson return $this; } - public function setMobiliteNotes($mobiliteNotes) + public function setMobiliteNotes(?string $mobiliteNotes) { $this->mobiliteNotes = $mobiliteNotes; @@ -1322,31 +1307,31 @@ class CSPerson return $this->documentAttestationSecuriteSociale; } - public function setSituationLogementPrecision($situationLogementPrecision) + public function setSituationLogementPrecision(?string $situationLogementPrecision) { $this->situationLogementPrecision = $situationLogementPrecision; return $this; } - public function setAcompteDIF($acompteDIF) + public function setAcompteDIF(?float $acompteDIF) { $this->acompteDIF = $acompteDIF; return $this; } - public function setHandicapIs($handicapIs) + public function setHandicapIs(?bool $handicapIs) { $this->handicapIs = $handicapIs; return $this; } - public function setHandicapNotes($handicapNotes) + public function setHandicapNotes(?string $handicapNotes) { $this->handicapNotes = $handicapNotes; return $this; } - public function setHandicapRecommandation($handicapRecommandation) + public function setHandicapRecommandation(?string $handicapRecommandation) { $this->handicapRecommandation = $handicapRecommandation; return $this; @@ -1364,7 +1349,7 @@ class CSPerson return $this; } - public function getDateContratIEJ(): ?\DateTime + public function getDateContratIEJ(): \DateTimeInterface { return $this->dateContratIEJ; } @@ -1380,13 +1365,13 @@ class CSPerson return $this->typeContratAide; } - public function setTypeContratAide($typeContratAide) + public function setTypeContratAide(?string $typeContratAide) { $this->typeContratAide = $typeContratAide; return $this; } - public function getDateAvenantIEJ(): ?\DateTime + public function getDateAvenantIEJ(): \DateTimeInterface { return $this->dateAvenantIEJ; } diff --git a/src/Bundle/ChillJobBundle/src/Entity/CV.php b/src/Bundle/ChillJobBundle/src/Entity/CV.php index 7783dc40e..90a8e772e 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CV.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CV.php @@ -9,8 +9,9 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Entity; +namespace Chill\JobBundle\Entity; +use Doctrine\Common\Collections\Order; use Doctrine\ORM\Mapping as ORM; use Chill\PersonBundle\Entity\Person; use Doctrine\Common\Collections\ArrayCollection; @@ -21,7 +22,7 @@ use Symfony\Component\Validator\Constraints as Assert; * CV. */ #[ORM\Table(name: 'chill_csconnectes.cv')] -#[ORM\Entity(repositoryClass: \Chill\ChillJobBundle\Repository\CVRepository::class)] +#[ORM\Entity(repositoryClass: \Chill\JobBundle\Repository\CVRepository::class)] class CV implements \Stringable { #[ORM\Column(name: 'id', type: \Doctrine\DBAL\Types\Types::INTEGER)] @@ -71,18 +72,18 @@ class CV implements \Stringable /** * @Assert\Valid(traverse=true) - * @var \Doctrine\Common\Collections\Collection + * @var \Doctrine\Common\Collections\Collection */ #[ORM\OneToMany(targetEntity: CV\Formation::class, mappedBy: 'CV', cascade: ['persist', 'remove', 'detach'], orphanRemoval: true)] - #[ORM\OrderBy(['startDate' => \Doctrine\Common\Collections\Criteria::DESC, 'endDate' => 'DESC'])] + #[ORM\OrderBy(['startDate' => Order::Descending, 'endDate' => 'DESC'])] private Collection $formations; /** * @Assert\Valid(traverse=true) - * @var \Doctrine\Common\Collections\Collection + * @var \Doctrine\Common\Collections\Collection */ #[ORM\OneToMany(targetEntity: CV\Experience::class, mappedBy: 'CV', cascade: ['persist', 'remove', 'detach'], orphanRemoval: true)] - #[ORM\OrderBy(['startDate' => \Doctrine\Common\Collections\Criteria::DESC, 'endDate' => 'DESC'])] + #[ORM\OrderBy(['startDate' => Order::Descending, 'endDate' => 'DESC'])] private Collection $experiences; #[ORM\ManyToOne(targetEntity: Person::class)] @@ -108,11 +109,10 @@ class CV implements \Stringable /** * Set reportDate. * - * @param \DateTime $reportDate * * @return CV */ - public function setReportDate($reportDate) + public function setReportDate(\DateTime $reportDate): self { $this->reportDate = $reportDate; @@ -122,9 +122,8 @@ class CV implements \Stringable /** * Get reportDate. * - * @return \DateTime */ - public function getReportDate() + public function getReportDate(): \DateTimeInterface|null { return $this->reportDate; } @@ -136,7 +135,7 @@ class CV implements \Stringable * * @return CV */ - public function setFormationLevel($formationLevel = null) + public function setFormationLevel(string $formationLevel = null): self { $this->formationLevel = $formationLevel; @@ -156,11 +155,10 @@ class CV implements \Stringable /** * Set formationType. * - * @param string $formationType * * @return CV */ - public function setFormationType($formationType) + public function setFormationType(string $formationType): self { $this->formationType = $formationType; @@ -172,7 +170,7 @@ class CV implements \Stringable * * @return string */ - public function getFormationType() + public function getFormationType(): ?string { return $this->formationType; } @@ -180,11 +178,9 @@ class CV implements \Stringable /** * Set spokenLanguages. * - * @param json|null $spokenLanguages - * * @return CV */ - public function setSpokenLanguages($spokenLanguages = null) + public function setSpokenLanguages($spokenLanguages = null): self { $this->spokenLanguages = $spokenLanguages; @@ -194,9 +190,8 @@ class CV implements \Stringable /** * Get spokenLanguages. * - * @return json|null */ - public function getSpokenLanguages() + public function getSpokenLanguages(): array { return $this->spokenLanguages ?? []; } @@ -208,7 +203,7 @@ class CV implements \Stringable * * @return CV */ - public function setNotes($notes = null) + public function setNotes(string $notes = null): self { $this->notes = $notes; @@ -220,7 +215,7 @@ class CV implements \Stringable * * @return string|null */ - public function getNotes() + public function getNotes(): ?string { return $this->notes; } @@ -235,7 +230,7 @@ class CV implements \Stringable return $this->experiences; } - public function setFormations(Collection $formations) + public function setFormations(Collection $formations): self { foreach ($formations as $formation) { /* @var CV\Formation $formation */ @@ -246,7 +241,7 @@ class CV implements \Stringable return $this; } - public function addFormation(CV\Formation $formation) + public function addFormation(CV\Formation $formation): self { if ($this->formations->contains($formation)) { return $this; @@ -258,7 +253,7 @@ class CV implements \Stringable return $this; } - public function removeFormation(CV\Formation $formation) + public function removeFormation(CV\Formation $formation): self { if (false === $this->formations->contains($formation)) { return $this; @@ -270,7 +265,7 @@ class CV implements \Stringable return $this; } - public function setExperiences(Collection $experiences) + public function setExperiences(Collection $experiences): self { foreach ($experiences as $experience) { /* @var CV\Experience $experience */ @@ -282,7 +277,7 @@ class CV implements \Stringable return $this; } - public function addExperience(CV\Experience $experience) + public function addExperience(CV\Experience $experience): self { if ($this->experiences->contains($experience)) { return $this; @@ -294,7 +289,7 @@ class CV implements \Stringable return $this; } - public function removeExperience(CV\Experience $experience) + public function removeExperience(CV\Experience $experience): self { if (false === $this->experiences->contains($experience)) { return $this; diff --git a/src/Bundle/ChillJobBundle/src/Entity/CV/Experience.php b/src/Bundle/ChillJobBundle/src/Entity/CV/Experience.php index 4bcd2e94f..f0978e139 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CV/Experience.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CV/Experience.php @@ -9,17 +9,17 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Entity\CV; +namespace Chill\JobBundle\Entity\CV; use Doctrine\ORM\Mapping as ORM; -use Chill\ChillJobBundle\Entity\CV; +use Chill\JobBundle\Entity\CV; use Symfony\Component\Validator\Constraints as Assert; /** * Experience. */ #[ORM\Table(name: 'chill_csconnectes.cv_experience')] -#[ORM\Entity(repositoryClass: \Chill\ChillJobBundle\Repository\CV\ExperienceRepository::class)] +#[ORM\Entity(repositoryClass: \Chill\JobBundle\Repository\CV\ExperienceRepository::class)] class Experience { #[ORM\Column(name: 'id', type: \Doctrine\DBAL\Types\Types::INTEGER)] @@ -72,7 +72,7 @@ class Experience * * @return int */ - public function getId() + public function getId(): ?int { return $this->id; } @@ -80,11 +80,10 @@ class Experience /** * Set poste. * - * @param string|null $poste * * @return Experience */ - public function setPoste($poste = null) + public function setPoste(?string $poste = null): self { $this->poste = $poste; @@ -96,7 +95,7 @@ class Experience * * @return string|null */ - public function getPoste() + public function getPoste(): ?string { return $this->poste; } @@ -104,11 +103,10 @@ class Experience /** * Set structure. * - * @param string|null $structure * * @return Experience */ - public function setStructure($structure = null) + public function setStructure(?string $structure = null): self { $this->structure = $structure; @@ -120,7 +118,7 @@ class Experience * * @return string|null */ - public function getStructure() + public function getStructure(): ?string { return $this->structure; } @@ -132,7 +130,7 @@ class Experience * * @return Experience */ - public function setStartDate($startDate = null) + public function setStartDate(?\DateTimeInterface $startDate = null): self { $this->startDate = $startDate; @@ -142,7 +140,7 @@ class Experience /** * Get startDate. * - * @return \DateTime|null + * @return \DateTimeInterface */ public function getStartDate() { @@ -156,7 +154,7 @@ class Experience * * @return Experience */ - public function setEndDate($endDate = null) + public function setEndDate(?\DateTimeInterface $endDate = null): self { $this->endDate = $endDate; @@ -166,7 +164,7 @@ class Experience /** * Get endDate. * - * @return \DateTime|null + * @return \DateTimeInterface */ public function getEndDate() { @@ -180,7 +178,7 @@ class Experience * * @return Experience */ - public function setContratType($contratType) + public function setContratType(?string $contratType): self { $this->contratType = $contratType; @@ -192,7 +190,7 @@ class Experience * * @return string */ - public function getContratType() + public function getContratType(): ?string { return $this->contratType; } @@ -204,7 +202,7 @@ class Experience * * @return Experience */ - public function setNotes($notes) + public function setNotes(?string $notes): self { $this->notes = $notes; @@ -216,7 +214,7 @@ class Experience * * @return string */ - public function getNotes() + public function getNotes(): ?string { return $this->notes; } @@ -226,7 +224,7 @@ class Experience return $this->CV; } - public function setCV(?CV $CV = null) + public function setCV(?CV $CV = null): self { $this->CV = $CV; diff --git a/src/Bundle/ChillJobBundle/src/Entity/CV/Formation.php b/src/Bundle/ChillJobBundle/src/Entity/CV/Formation.php index e9ac3f7ea..1c4343e3d 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CV/Formation.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CV/Formation.php @@ -9,17 +9,17 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Entity\CV; +namespace Chill\JobBundle\Entity\CV; use Doctrine\ORM\Mapping as ORM; -use Chill\ChillJobBundle\Entity\CV; +use Chill\JobBundle\Entity\CV; use Symfony\Component\Validator\Constraints as Assert; /** * Formation. */ #[ORM\Table(name: 'chill_csconnectes.cv_formation')] -#[ORM\Entity(repositoryClass: \Chill\ChillJobBundle\Repository\CV\FormationRepository::class)] +#[ORM\Entity(repositoryClass: \Chill\JobBundle\Repository\CV\FormationRepository::class)] class Formation { #[ORM\Column(name: 'id', type: \Doctrine\DBAL\Types\Types::INTEGER)] @@ -81,7 +81,7 @@ class Formation * * @return Formation */ - public function setTitle($title) + public function setTitle(?string $title) { $this->title = $title; @@ -105,7 +105,7 @@ class Formation * * @return Formation */ - public function setStartDate($startDate = null) + public function setStartDate(?\DateTimeInterface $startDate = null) { $this->startDate = $startDate; @@ -115,7 +115,7 @@ class Formation /** * Get startDate. * - * @return \DateTime|null + * @return \DateTimeInterface */ public function getStartDate() { @@ -129,7 +129,7 @@ class Formation * * @return Formation */ - public function setEndDate($endDate = null) + public function setEndDate(?\DateTimeInterface $endDate = null) { $this->endDate = $endDate; @@ -139,7 +139,7 @@ class Formation /** * Get endDate. * - * @return \DateTime|null + * @return \DateTimeInterface */ public function getEndDate() { @@ -149,11 +149,9 @@ class Formation /** * Set diplomaObtained. * - * @param json|null $diplomaObtained - * * @return Formation */ - public function setDiplomaObtained($diplomaObtained = null) + public function setDiplomaObtained(?string $diplomaObtained = null) { $this->diplomaObtained = $diplomaObtained; @@ -162,8 +160,6 @@ class Formation /** * Get diplomaObtained. - * - * @return json|null */ public function getDiplomaObtained() { @@ -173,11 +169,10 @@ class Formation /** * Set diplomaReconnue. * - * @param string|null $diplomaReconnue * * @return Formation */ - public function setDiplomaReconnue($diplomaReconnue = null) + public function setDiplomaReconnue(?string $diplomaReconnue = null): self { $this->diplomaReconnue = $diplomaReconnue; @@ -189,7 +184,7 @@ class Formation * * @return string|null */ - public function getDiplomaReconnue() + public function getDiplomaReconnue(): ?string { return $this->diplomaReconnue; } @@ -201,7 +196,7 @@ class Formation * * @return Formation */ - public function setOrganisme($organisme) + public function setOrganisme(?string $organisme): self { $this->organisme = $organisme; @@ -213,7 +208,7 @@ class Formation * * @return string */ - public function getOrganisme() + public function getOrganisme(): ?string { return $this->organisme; } @@ -223,7 +218,7 @@ class Formation return $this->CV; } - public function setCV(?CV $CV = null) + public function setCV(?CV $CV = null): self { $this->CV = $CV; diff --git a/src/Bundle/ChillJobBundle/src/Entity/Frein.php b/src/Bundle/ChillJobBundle/src/Entity/Frein.php index a7a19d8d5..437df44fe 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Frein.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Frein.php @@ -9,8 +9,9 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Entity; +namespace Chill\JobBundle\Entity; +use Chill\PersonBundle\Entity\Person; use Doctrine\ORM\Mapping as ORM; use Chill\PersonBundle\Entity\HasPerson; use Symfony\Component\Validator\Constraints as Assert; @@ -20,7 +21,7 @@ use Symfony\Component\Validator\Context\ExecutionContextInterface; * Frein. */ #[ORM\Table(name: 'chill_csconnectes.frein')] -#[ORM\Entity(repositoryClass: \Chill\ChillJobBundle\Repository\FreinRepository::class)] +#[ORM\Entity(repositoryClass: \Chill\JobBundle\Repository\FreinRepository::class)] class Frein implements HasPerson, \Stringable { #[ORM\Column(name: 'id', type: \Doctrine\DBAL\Types\Types::INTEGER)] @@ -78,152 +79,92 @@ class Frein implements HasPerson, \Stringable private ?string $notesEmploi = ''; /** - * @var Person * * @ORM\ManytoOne( * targetEntity="Chill\PersonBundle\Entity\Person") * * @Assert\NotNull() */ - private $person; + private Person $person; public function __construct() { $this->reportDate = new \DateTime('today'); } - /** - * Get id. - * - * @return int - */ - public function getId() + public function getId(): ?int { return $this->id; } - /** - * Set reportDate. - * - * @param \DateTime $reportDate - * - * @return Frein - */ - public function setReportDate($reportDate) + + public function setReportDate(?\DateTimeInterface $reportDate): self { $this->reportDate = $reportDate; return $this; } - /** - * Get reportDate. - * - * @return \DateTime - */ - public function getReportDate() + + public function getReportDate(): ?\DateTimeInterface { return $this->reportDate; } - /** - * Set freinsPerso. - * - * @param string[] $freinsPerso - * - * @return Frein - */ - public function setFreinsPerso(array $freinsPerso = []) + public function setFreinsPerso(array $freinsPerso = []): self { $this->freinsPerso = $freinsPerso; return $this; } - /** - * Get freinsPerso. - * - * @return json - */ - public function getFreinsPerso() + public function getFreinsPerso(): array { return $this->freinsPerso; } - /** - * Set notesPerso. - * - * @return Frein - */ - public function setNotesPerso(?string $notesPerso = null) + public function setNotesPerso(?string $notesPerso = null): self { $this->notesPerso = (string) $notesPerso; return $this; } - /** - * Get notesPerso. - * - * @return string - */ - public function getNotesPerso() + public function getNotesPerso(): ?string { return $this->notesPerso; } - /** - * Set freinsEmploi. - * - * @param json $freinsEmploi - * - * @return Frein - */ - public function setFreinsEmploi(array $freinsEmploi = []) + public function setFreinsEmploi(array $freinsEmploi = []): self { $this->freinsEmploi = $freinsEmploi; return $this; } - /** - * Get freinsEmploi. - * - * @return json - */ - public function getFreinsEmploi() + public function getFreinsEmploi(): array { return $this->freinsEmploi; } - /** - * Set notesEmploi. - * - * @return Frein - */ - public function setNotesEmploi(?string $notesEmploi = null) + public function setNotesEmploi(?string $notesEmploi = null): self { $this->notesEmploi = (string) $notesEmploi; return $this; } - /** - * Get notesEmploi. - * - * @return string - */ - public function getNotesEmploi() + public function getNotesEmploi(): ?string { return $this->notesEmploi; } - public function getPerson(): ?\Chill\PersonBundle\Entity\Person + public function getPerson(): ?Person { return $this->person; } - public function setPerson(?\Chill\PersonBundle\Entity\Person $person = null): HasPerson + public function setPerson(?Person $person = null): HasPerson { $this->person = $person; @@ -231,13 +172,9 @@ class Frein implements HasPerson, \Stringable } /** - * Vérifie qu'au moins un frein a été coché parmi les freins perso + emploi. - * - * @param array $payload - * * @Assert\Callback() */ - public function validateFreinsCount(ExecutionContextInterface $context, $payload) + public function validateFreinsCount(ExecutionContextInterface $context, $payload): void { $nb = count($this->getFreinsEmploi()) + count($this->getFreinsPerso()); diff --git a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php index 320ffb9d8..f789bbad7 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php @@ -1,8 +1,8 @@ domaineActivite = $domaineActivite; @@ -463,11 +462,10 @@ class Immersion implements \Stringable /** * Set tuteurName. * - * @param string|null $tuteurName * * @return Immersion */ - public function setTuteurName($tuteurName = null) + public function setTuteurName(?string $tuteurName = null) { $this->tuteurName = $tuteurName; @@ -487,11 +485,10 @@ class Immersion implements \Stringable /** * Set tuteurFonction. * - * @param string|null $tuteurFonction * * @return Immersion */ - public function setTuteurFonction($tuteurFonction = null) + public function setTuteurFonction(?string $tuteurFonction = null) { $this->tuteurFonction = $tuteurFonction; @@ -511,11 +508,10 @@ class Immersion implements \Stringable /** * Set tuteurPhoneNumber. * - * @param string|null $tuteurPhoneNumber * * @return Immersion */ - public function setTuteurPhoneNumber($tuteurPhoneNumber = null) + public function setTuteurPhoneNumber(?string $tuteurPhoneNumber = null) { $this->tuteurPhoneNumber = $tuteurPhoneNumber; @@ -535,11 +531,10 @@ class Immersion implements \Stringable /** * Set structureAccName. * - * @param string|null $structureAccName * * @return Immersion */ - public function setStructureAccName($structureAccName = null) + public function setStructureAccName(?string $structureAccName = null) { $this->structureAccName = $structureAccName; @@ -563,7 +558,7 @@ class Immersion implements \Stringable * * @return Immersion */ - public function setStructureAccPhonenumber($structureAccPhonenumber) + public function setStructureAccPhonenumber(?string $structureAccPhonenumber) { $this->structureAccPhonenumber = $structureAccPhonenumber; @@ -583,11 +578,10 @@ class Immersion implements \Stringable /** * Set posteDescriptif. * - * @param string|null $posteDescriptif * * @return Immersion */ - public function setPosteDescriptif($posteDescriptif = null) + public function setPosteDescriptif(?string $posteDescriptif = null) { $this->posteDescriptif = $posteDescriptif; @@ -607,11 +601,10 @@ class Immersion implements \Stringable /** * Set posteTitle. * - * @param string|null $posteTitle * * @return Immersion */ - public function setPosteTitle($posteTitle = null) + public function setPosteTitle(?string $posteTitle = null) { $this->posteTitle = $posteTitle; @@ -631,11 +624,10 @@ class Immersion implements \Stringable /** * Set posteLieu. * - * @param string|null $posteLieu * * @return Immersion */ - public function setPosteLieu($posteLieu = null) + public function setPosteLieu(?string $posteLieu = null) { $this->posteLieu = $posteLieu; @@ -659,7 +651,7 @@ class Immersion implements \Stringable * * @return Immersion */ - public function setDebutDate($debutDate = null) + public function setDebutDate(?\DateTimeInterface $debutDate = null) { $this->debutDate = $debutDate; @@ -710,11 +702,10 @@ class Immersion implements \Stringable /** * Set horaire. * - * @param string|null $horaire * * @return Immersion */ - public function setHoraire($horaire = null) + public function setHoraire(?string $horaire = null) { $this->horaire = $horaire; @@ -760,7 +751,7 @@ class Immersion implements \Stringable return $this->objectifsAutre; } - public function setObjectifsAutre($objectifsAutre) + public function setObjectifsAutre(?string $objectifsAutre) { $this->objectifsAutre = $objectifsAutre; @@ -818,11 +809,10 @@ class Immersion implements \Stringable /** * Set principalesActivites. * - * @param string|null $principalesActivites * * @return Immersion */ - public function setPrincipalesActivites($principalesActivites = null) + public function setPrincipalesActivites(?string $principalesActivites = null) { $this->principalesActivites = $principalesActivites; @@ -842,11 +832,10 @@ class Immersion implements \Stringable /** * Set competencesAcquises. * - * @param string|null $competencesAcquises * * @return Immersion */ - public function setCompetencesAcquises($competencesAcquises = null) + public function setCompetencesAcquises(?string $competencesAcquises = null) { $this->competencesAcquises = $competencesAcquises; @@ -866,11 +855,10 @@ class Immersion implements \Stringable /** * Set competencesADevelopper. * - * @param string|null $competencesADevelopper * * @return Immersion */ - public function setCompetencesADevelopper($competencesADevelopper = null) + public function setCompetencesADevelopper(?string $competencesADevelopper = null) { $this->competencesADevelopper = $competencesADevelopper; @@ -890,11 +878,10 @@ class Immersion implements \Stringable /** * Set noteBilan. * - * @param string|null $noteBilan * * @return Immersion */ - public function setNoteBilan($noteBilan = null) + public function setNoteBilan(?string $noteBilan = null) { $this->noteBilan = $noteBilan; @@ -954,7 +941,7 @@ class Immersion implements \Stringable return $this->structureAccAddress; } - public function setStructureAccEmail($structureAccEmail) + public function setStructureAccEmail(?string $structureAccEmail) { $this->structureAccEmail = $structureAccEmail; return $this; @@ -976,13 +963,13 @@ class Immersion implements \Stringable return $this->savoirEtreNote; } - public function setIsBilanFullfilled($isBilanFullfilled) + public function setIsBilanFullfilled(?bool $isBilanFullfilled) { $this->isBilanFullfilled = $isBilanFullfilled; return $this; } - public function setSavoirEtreNote($savoirEtreNote) + public function setSavoirEtreNote(?string $savoirEtreNote) { $this->savoirEtreNote = $savoirEtreNote; return $this; @@ -1098,133 +1085,133 @@ class Immersion implements \Stringable return $this->respectHierarchieNote; } - public function setPonctualiteSalarie($ponctualiteSalarie) + public function setPonctualiteSalarie(?string $ponctualiteSalarie) { $this->ponctualiteSalarie = $ponctualiteSalarie; return $this; } - public function setPonctualiteSalarieNote($ponctualiteSalarieNote) + public function setPonctualiteSalarieNote(?string $ponctualiteSalarieNote) { $this->ponctualiteSalarieNote = $ponctualiteSalarieNote; return $this; } - public function setAssiduite($assiduite) + public function setAssiduite(?string $assiduite) { $this->assiduite = $assiduite; return $this; } - public function setAssiduiteNote($assiduiteNote) + public function setAssiduiteNote(?string $assiduiteNote) { $this->assiduiteNote = $assiduiteNote; return $this; } - public function setInteretActivite($interetActivite) + public function setInteretActivite(?string $interetActivite) { $this->interetActivite = $interetActivite; return $this; } - public function setInteretActiviteNote($interetActiviteNote) + public function setInteretActiviteNote(?string $interetActiviteNote) { $this->interetActiviteNote = $interetActiviteNote; return $this; } - public function setIntegreRegle($integreRegle) + public function setIntegreRegle(?string $integreRegle) { $this->integreRegle = $integreRegle; return $this; } - public function setIntegreRegleNote($integreRegleNote) + public function setIntegreRegleNote(?string $integreRegleNote) { $this->integreRegleNote = $integreRegleNote; return $this; } - public function setEspritInitiative($espritInitiative) + public function setEspritInitiative(?string $espritInitiative) { $this->espritInitiative = $espritInitiative; return $this; } - public function setEspritInitiativeNote($espritInitiativeNote) + public function setEspritInitiativeNote(?string $espritInitiativeNote) { $this->espritInitiativeNote = $espritInitiativeNote; return $this; } - public function setOrganisation($organisation) + public function setOrganisation(?string $organisation) { $this->organisation = $organisation; return $this; } - public function setOrganisationNote($organisationNote) + public function setOrganisationNote(?string $organisationNote) { $this->organisationNote = $organisationNote; return $this; } - public function setCapaciteTravailEquipe($capaciteTravailEquipe) + public function setCapaciteTravailEquipe(?string $capaciteTravailEquipe) { $this->capaciteTravailEquipe = $capaciteTravailEquipe; return $this; } - public function setCapaciteTravailEquipeNote($capaciteTravailEquipeNote) + public function setCapaciteTravailEquipeNote(?string $capaciteTravailEquipeNote) { $this->capaciteTravailEquipeNote = $capaciteTravailEquipeNote; return $this; } - public function setStyleVestimentaire($styleVestimentaire) + public function setStyleVestimentaire(?string $styleVestimentaire) { $this->styleVestimentaire = $styleVestimentaire; return $this; } - public function setStyleVestimentaireNote($styleVestimentaireNote) + public function setStyleVestimentaireNote(?string $styleVestimentaireNote) { $this->styleVestimentaireNote = $styleVestimentaireNote; return $this; } - public function setLangageProf($langageProf) + public function setLangageProf(?string $langageProf) { $this->langageProf = $langageProf; return $this; } - public function setLangageProfNote($langageProfNote) + public function setLangageProfNote(?string $langageProfNote) { $this->langageProfNote = $langageProfNote; return $this; } - public function setAppliqueConsigne($appliqueConsigne) + public function setAppliqueConsigne(?string $appliqueConsigne) { $this->appliqueConsigne = $appliqueConsigne; return $this; } - public function setAppliqueConsigneNote($appliqueConsigneNote) + public function setAppliqueConsigneNote(?string $appliqueConsigneNote) { $this->appliqueConsigneNote = $appliqueConsigneNote; return $this; } - public function setRespectHierarchie($respectHierarchie) + public function setRespectHierarchie(?string $respectHierarchie) { $this->respectHierarchie = $respectHierarchie; return $this; } - public function setRespectHierarchieNote($respectHierarchieNote) + public function setRespectHierarchieNote(?string $respectHierarchieNote) { $this->respectHierarchieNote = $respectHierarchieNote; return $this; diff --git a/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php b/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php index 747edd1bc..2c6cb039b 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php +++ b/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php @@ -9,16 +9,16 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Entity; +namespace Chill\JobBundle\Entity; -use Chill\ChillJobBundle\Repository\ProjetProfessionnelRepository; +use Chill\JobBundle\Repository\ProjetProfessionnelRepository; use Doctrine\DBAL\Types\Types; use Doctrine\ORM\Mapping as ORM; use Doctrine\Common\Collections\Collection; use Doctrine\Common\Collections\ArrayCollection; use Symfony\Component\Validator\Constraints as Assert; use Chill\PersonBundle\Entity\Person; -use Chill\ChillJobBundle\Entity\Rome\Appellation; +use Chill\JobBundle\Entity\Rome\Appellation; /** * ProjetProfessionnel. @@ -49,7 +49,7 @@ class ProjetProfessionnel implements \Stringable private ?\DateTimeInterface $reportDate = null; /** - * @var \Doctrine\Common\Collections\Collection + * @var \Doctrine\Common\Collections\Collection */ #[ORM\JoinTable(name: 'chill_csconnectes.projetprofessionnel_souhait')] #[ORM\ManyToMany(targetEntity: Appellation::class, cascade: ['persist'])] @@ -98,7 +98,7 @@ class ProjetProfessionnel implements \Stringable private ?string $enCoursConstruction = null; /** - * @var \Doctrine\Common\Collections\Collection + * @var \Doctrine\Common\Collections\Collection */ #[ORM\JoinTable(name: 'chill_csconnectes.projetprofessionnel_valide')] #[ORM\ManyToMany(targetEntity: Appellation::class)] @@ -136,7 +136,7 @@ class ProjetProfessionnel implements \Stringable * * @return ProjetProfessionnel */ - public function setReportDate($reportDate) + public function setReportDate(?\DateTimeInterface $reportDate) { $this->reportDate = $reportDate; @@ -180,11 +180,10 @@ class ProjetProfessionnel implements \Stringable /** * Set typeContratNotes. * - * @param string|null $typeContratNotes * * @return ProjetProfessionnel */ - public function setTypeContratNotes($typeContratNotes = null) + public function setTypeContratNotes(?string $typeContratNotes = null) { $this->typeContratNotes = $typeContratNotes; @@ -228,11 +227,10 @@ class ProjetProfessionnel implements \Stringable /** * Set volumeHoraireNotes. * - * @param string|null $volumeHoraireNotes * * @return ProjetProfessionnel */ - public function setVolumeHoraireNotes($volumeHoraireNotes = null) + public function setVolumeHoraireNotes(?string $volumeHoraireNotes = null) { $this->volumeHoraireNotes = $volumeHoraireNotes; @@ -252,11 +250,10 @@ class ProjetProfessionnel implements \Stringable /** * Set idee. * - * @param string|null $idee * * @return ProjetProfessionnel */ - public function setIdee($idee = null) + public function setIdee(?string $idee = null) { $this->idee = $idee; @@ -276,11 +273,10 @@ class ProjetProfessionnel implements \Stringable /** * Set enCoursConstruction. * - * @param string|null $enCoursConstruction * * @return ProjetProfessionnel */ - public function setEnCoursConstruction($enCoursConstruction = null) + public function setEnCoursConstruction(?string $enCoursConstruction = null) { $this->enCoursConstruction = $enCoursConstruction; @@ -300,11 +296,10 @@ class ProjetProfessionnel implements \Stringable /** * Set valideNotes. * - * @param string|null $valideNotes * * @return ProjetProfessionnel */ - public function setValideNotes($valideNotes = null) + public function setValideNotes(?string $valideNotes = null) { $this->valideNotes = $valideNotes; @@ -324,11 +319,10 @@ class ProjetProfessionnel implements \Stringable /** * Set projetProfessionnelNote. * - * @param string|null $projetProfessionnelNote * * @return ProjetProfessionnel */ - public function setProjetProfessionnelNote($projetProfessionnelNote = null) + public function setProjetProfessionnelNote(?string $projetProfessionnelNote = null) { $this->projetProfessionnelNote = $projetProfessionnelNote; diff --git a/src/Bundle/ChillJobBundle/src/Entity/Rome/Appellation.php b/src/Bundle/ChillJobBundle/src/Entity/Rome/Appellation.php index c17e7352f..455240181 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Rome/Appellation.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Rome/Appellation.php @@ -9,7 +9,7 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Entity\Rome; +namespace Chill\JobBundle\Entity\Rome; use Doctrine\ORM\Mapping as ORM; @@ -17,7 +17,7 @@ use Doctrine\ORM\Mapping as ORM; * Appellation. */ #[ORM\Table(name: 'chill_csconnectes.rome_appellation')] -#[ORM\Entity(repositoryClass: \Chill\ChillJobBundle\Repository\Rome\AppellationRepository::class)] +#[ORM\Entity(repositoryClass: \Chill\JobBundle\Repository\Rome\AppellationRepository::class)] class Appellation implements \Stringable { #[ORM\Column(name: 'id', type: \Doctrine\DBAL\Types\Types::INTEGER)] @@ -51,7 +51,7 @@ class Appellation implements \Stringable * * @return Appellation */ - public function setCode($code) + public function setCode(?string $code) { $this->code = $code; @@ -75,7 +75,7 @@ class Appellation implements \Stringable * * @return Appellation */ - public function setLibelle($libelle) + public function setLibelle(?string $libelle) { $this->libelle = $libelle; diff --git a/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php b/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php index fa797558d..49b65734e 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php @@ -9,7 +9,7 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Entity\Rome; +namespace Chill\JobBundle\Entity\Rome; use Doctrine\ORM\Mapping as ORM; use Doctrine\Common\Collections\ArrayCollection; @@ -18,7 +18,7 @@ use Doctrine\Common\Collections\ArrayCollection; * Metier. */ #[ORM\Table(name: 'chill_csconnectes.rome_metier')] -#[ORM\Entity(repositoryClass: \Chill\ChillJobBundle\Repository\Rome\MetierRepository::class)] +#[ORM\Entity(repositoryClass: \Chill\JobBundle\Repository\Rome\MetierRepository::class)] class Metier { #[ORM\Column(name: 'id', type: \Doctrine\DBAL\Types\Types::INTEGER)] @@ -33,7 +33,7 @@ class Metier private ?string $code = ''; /** - * @var \Doctrine\Common\Collections\Collection + * @var \Doctrine\Common\Collections\Collection */ #[ORM\OneToMany(targetEntity: Appellation::class, mappedBy: 'metier')] private readonly \Doctrine\Common\Collections\Collection $appellations; @@ -61,7 +61,7 @@ class Metier * * @return Metier */ - public function setLibelle($libelle) + public function setLibelle(?string $libelle) { $this->libelle = $libelle; @@ -85,7 +85,7 @@ class Metier * * @return Metier */ - public function setCode($code) + public function setCode(?string $code) { $this->code = $code; diff --git a/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php b/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php index f840c024b..7a88a6452 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php @@ -9,21 +9,21 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Export; +namespace Chill\JobBundle\Export; use Chill\MainBundle\Export\ExportElementValidatedInterface; use Chill\MainBundle\Export\ListInterface; use Chill\PersonBundle\Export\Export\ListPerson; -use Chill\ChillJobBundle\Entity\CSPerson; +use Chill\JobBundle\Entity\CSPerson; use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\Query; use Symfony\Component\Form\Extension\Core\Type\ChoiceType; use Symfony\Component\Form\FormBuilderInterface; -use Symfony\Component\Translation\TranslatorInterface; use Chill\MainBundle\Templating\TranslatableStringHelper; use Chill\CustomFieldsBundle\Service\CustomFieldProvider; use Symfony\Component\Validator\Constraints\Callback; use Symfony\Component\Validator\Context\ExecutionContextInterface; +use Symfony\Contracts\Translation\TranslatorInterface; /** * Class ListCSPerson. @@ -240,7 +240,7 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal break; case 'type_contrat__label': - if (! empty($value)) { + if ($value !== '') { $res[$key] = ($f) ? $value : null; } else { $res[$key] = null; @@ -406,7 +406,7 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal str_replace('__', '.', $key) ); } - if (empty($value)) { + if ($value === '') { return ''; } $arr = []; @@ -423,7 +423,7 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal str_replace('__', '.', $key) ); } - if (empty($value)) { + if ($value === '') { return ''; } $this->translationCompatKey($value, $key); @@ -434,7 +434,7 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal if ('_header' === $value) { return $key; } - if (empty($value)) { + if ($value === '') { return ''; } @@ -462,7 +462,7 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal if ('_header' === $value) { return $key; } - if (empty($value)) { + if ($value === '') { return ''; } @@ -638,4 +638,9 @@ WHERE ORDER BY p.id ASC SQL; + + public function validateForm(mixed $data, ExecutionContextInterface $context) + { + // TODO: Implement validateForm() method. + } } diff --git a/src/Bundle/ChillJobBundle/src/Export/ListCV.php b/src/Bundle/ChillJobBundle/src/Export/ListCV.php index 7e55a2ad7..084f9ead3 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListCV.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListCV.php @@ -9,14 +9,14 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Export; +namespace Chill\JobBundle\Export; use Chill\MainBundle\Export\ExportElementValidatedInterface; use Chill\MainBundle\Export\FormatterInterface; use Chill\MainBundle\Export\ListInterface; use Chill\MainBundle\Form\Type\ChillDateType; use Chill\PersonBundle\Entity\Person; -use Chill\ChillJobBundle\Security\Authorization\ExportsVoter; +use Chill\JobBundle\Security\Authorization\ExportsVoter; use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\Query; use Doctrine\ORM\QueryBuilder; @@ -194,7 +194,7 @@ class ListCV implements ListInterface, ExportElementValidatedInterface * * @return Role */ - public function requiredRole() + public function requiredRole(): string { return new Role(ExportsVoter::EXPORT); } @@ -393,4 +393,9 @@ AND ( ORDER BY cv.reportdate DESC SQL; + + public function getFormDefaultData(): array + { + return []; + } } diff --git a/src/Bundle/ChillJobBundle/src/Export/ListFrein.php b/src/Bundle/ChillJobBundle/src/Export/ListFrein.php index 38aca4556..e965bc30c 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListFrein.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListFrein.php @@ -9,15 +9,15 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Export; +namespace Chill\JobBundle\Export; use Chill\MainBundle\Export\ExportElementValidatedInterface; use Chill\MainBundle\Export\FormatterInterface; use Chill\MainBundle\Export\ListInterface; use Chill\MainBundle\Form\Type\ChillDateType; use Chill\PersonBundle\Entity\Person; -use Chill\ChillJobBundle\Entity\Frein; -use Chill\ChillJobBundle\Security\Authorization\ExportsVoter; +use Chill\JobBundle\Entity\Frein; +use Chill\JobBundle\Security\Authorization\ExportsVoter; use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\Query; use Doctrine\ORM\QueryBuilder; @@ -207,7 +207,7 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface * * @return Role */ - public function requiredRole() + public function requiredRole(): string { return new Role(ExportsVoter::EXPORT); } @@ -498,4 +498,9 @@ AND ( ORDER BY fr.reportdate DESC SQL; + + public function getFormDefaultData(): array + { + return []; + } } diff --git a/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php b/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php index 992989426..62b4f9e56 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php @@ -9,15 +9,15 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Export; +namespace Chill\JobBundle\Export; use Chill\MainBundle\Export\ExportElementValidatedInterface; use Chill\MainBundle\Export\FormatterInterface; use Chill\MainBundle\Export\ListInterface; use Chill\MainBundle\Form\Type\ChillDateType; use Chill\PersonBundle\Entity\Person; -use Chill\ChillJobBundle\Entity\ProjetProfessionnel; -use Chill\ChillJobBundle\Security\Authorization\ExportsVoter; +use Chill\JobBundle\Entity\ProjetProfessionnel; +use Chill\JobBundle\Security\Authorization\ExportsVoter; use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\Query; use Doctrine\ORM\QueryBuilder; @@ -213,7 +213,7 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn * * @return Role */ - public function requiredRole() + public function requiredRole(): string { return new Role(ExportsVoter::EXPORT); } @@ -586,4 +586,9 @@ AND ( ORDER BY pp.reportdate DESC SQL; + + public function getFormDefaultData(): array + { + return []; + } } diff --git a/src/Bundle/ChillJobBundle/src/Form/CSPersonDispositifsType.php b/src/Bundle/ChillJobBundle/src/Form/CSPersonDispositifsType.php index 7307c6fe9..f5147c43f 100644 --- a/src/Bundle/ChillJobBundle/src/Form/CSPersonDispositifsType.php +++ b/src/Bundle/ChillJobBundle/src/Form/CSPersonDispositifsType.php @@ -9,12 +9,12 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Form; +namespace Chill\JobBundle\Form; use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\FormBuilderInterface; use Symfony\Component\OptionsResolver\OptionsResolver; -use Chill\ChillJobBundle\Entity\CSPerson; +use Chill\JobBundle\Entity\CSPerson; use Symfony\Component\Form\Extension\Core\Type\TextType; use Symfony\Component\Form\Extension\Core\Type\TextareaType; use Symfony\Component\Form\Extension\Core\Type\ChoiceType; diff --git a/src/Bundle/ChillJobBundle/src/Form/CSPersonPersonalSituationType.php b/src/Bundle/ChillJobBundle/src/Form/CSPersonPersonalSituationType.php index ea6896553..be71025d9 100644 --- a/src/Bundle/ChillJobBundle/src/Form/CSPersonPersonalSituationType.php +++ b/src/Bundle/ChillJobBundle/src/Form/CSPersonPersonalSituationType.php @@ -9,12 +9,12 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Form; +namespace Chill\JobBundle\Form; use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\FormBuilderInterface; use Symfony\Component\OptionsResolver\OptionsResolver; -use Chill\ChillJobBundle\Entity\CSPerson; +use Chill\JobBundle\Entity\CSPerson; use Symfony\Component\Form\Extension\Core\Type\TextType; use Symfony\Component\Form\Extension\Core\Type\TextareaType; use Symfony\Component\Form\Extension\Core\Type\ChoiceType; diff --git a/src/Bundle/ChillJobBundle/src/Form/CV/ExperienceType.php b/src/Bundle/ChillJobBundle/src/Form/CV/ExperienceType.php index 6b5e0df3a..d38a69adf 100644 --- a/src/Bundle/ChillJobBundle/src/Form/CV/ExperienceType.php +++ b/src/Bundle/ChillJobBundle/src/Form/CV/ExperienceType.php @@ -9,7 +9,7 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Form\CV; +namespace Chill\JobBundle\Form\CV; use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\FormBuilderInterface; @@ -18,7 +18,7 @@ use Symfony\Component\Form\Extension\Core\Type\TextType; use Symfony\Component\Form\Extension\Core\Type\ChoiceType; use Chill\MainBundle\Form\Type\ChillDateType; use Symfony\Component\Form\Extension\Core\Type\TextareaType; -use Chill\ChillJobBundle\Entity\CV\Experience; +use Chill\JobBundle\Entity\CV\Experience; class ExperienceType extends AbstractType { diff --git a/src/Bundle/ChillJobBundle/src/Form/CV/FormationType.php b/src/Bundle/ChillJobBundle/src/Form/CV/FormationType.php index fa0e75982..90d537a44 100644 --- a/src/Bundle/ChillJobBundle/src/Form/CV/FormationType.php +++ b/src/Bundle/ChillJobBundle/src/Form/CV/FormationType.php @@ -9,7 +9,7 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Form\CV; +namespace Chill\JobBundle\Form\CV; use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\FormBuilderInterface; @@ -17,7 +17,7 @@ use Symfony\Component\OptionsResolver\OptionsResolver; use Symfony\Component\Form\Extension\Core\Type\TextType; use Chill\MainBundle\Form\Type\ChillDateType; use Symfony\Component\Form\Extension\Core\Type\ChoiceType; -use Chill\ChillJobBundle\Entity\CV\Formation as F; +use Chill\JobBundle\Entity\CV\Formation as F; class FormationType extends AbstractType { diff --git a/src/Bundle/ChillJobBundle/src/Form/CVType.php b/src/Bundle/ChillJobBundle/src/Form/CVType.php index 38f3ae7eb..f5125e2bb 100644 --- a/src/Bundle/ChillJobBundle/src/Form/CVType.php +++ b/src/Bundle/ChillJobBundle/src/Form/CVType.php @@ -9,7 +9,7 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Form; +namespace Chill\JobBundle\Form; use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\FormBuilderInterface; @@ -17,10 +17,10 @@ use Symfony\Component\OptionsResolver\OptionsResolver; use Chill\MainBundle\Form\Type\ChillDateType; use Symfony\Component\Form\Extension\Core\Type\ChoiceType; use Symfony\Component\Form\Extension\Core\Type\TextareaType; -use Chill\ChillJobBundle\Entity\CV; +use Chill\JobBundle\Entity\CV; use Chill\MainBundle\Form\Type\ChillCollectionType; -use Chill\ChillJobBundle\Form\CV\FormationType; -use Chill\ChillJobBundle\Form\CV\ExperienceType; +use Chill\JobBundle\Form\CV\FormationType; +use Chill\JobBundle\Form\CV\ExperienceType; use Chill\MainBundle\Form\Type\Select2LanguageType; class CVType extends AbstractType diff --git a/src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php b/src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php index c1fd33334..4a7486ddd 100644 --- a/src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php +++ b/src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php @@ -9,15 +9,15 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Form\ChoiceLoader; +namespace Chill\JobBundle\Form\ChoiceLoader; use Symfony\Component\Form\ChoiceList\Loader\ChoiceLoaderInterface; use Symfony\Component\Form\ChoiceList\ChoiceListInterface; use Symfony\Component\Form\ChoiceList\ArrayChoiceList; -use Chill\ChillJobBundle\Entity\Rome\Appellation; +use Chill\JobBundle\Entity\Rome\Appellation; use Doctrine\ORM\EntityManagerInterface; use Chill\PoleEmploiApiBundle\ApiHelper\PartenaireRomeAppellation; -use Chill\ChillJobBundle\Entity\Rome\Metier; +use Chill\JobBundle\Entity\Rome\Metier; use Symfony\Component\Validator\Validator\ValidatorInterface; /** @@ -36,7 +36,7 @@ class RomeAppellationChoiceLoader implements ChoiceLoaderInterface protected $em; /** - * @var \Chill\ChillJobBundle\Repository\Rome\AppellationRepository + * @var \Chill\JobBundle\Repository\Rome\AppellationRepository */ protected $appellationRepository; diff --git a/src/Bundle/ChillJobBundle/src/Form/FreinType.php b/src/Bundle/ChillJobBundle/src/Form/FreinType.php index 6aa9f71bd..62d822d56 100644 --- a/src/Bundle/ChillJobBundle/src/Form/FreinType.php +++ b/src/Bundle/ChillJobBundle/src/Form/FreinType.php @@ -9,14 +9,14 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Form; +namespace Chill\JobBundle\Form; use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\FormBuilderInterface; use Symfony\Component\OptionsResolver\OptionsResolver; use Chill\MainBundle\Form\Type\ChillDateType; use Symfony\Component\Form\Extension\Core\Type\ChoiceType; -use Chill\ChillJobBundle\Entity\Frein; +use Chill\JobBundle\Entity\Frein; use Symfony\Component\Form\Extension\Core\Type\TextareaType; class FreinType extends AbstractType diff --git a/src/Bundle/ChillJobBundle/src/Form/ImmersionType.php b/src/Bundle/ChillJobBundle/src/Form/ImmersionType.php index 655b32bb4..96bc1a1a6 100644 --- a/src/Bundle/ChillJobBundle/src/Form/ImmersionType.php +++ b/src/Bundle/ChillJobBundle/src/Form/ImmersionType.php @@ -9,7 +9,7 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Form; +namespace Chill\JobBundle\Form; use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\FormBuilderInterface; @@ -21,7 +21,7 @@ use Chill\ThirdPartyBundle\Form\Type\PickThirdPartyType; use Symfony\Component\Form\Extension\Core\Type\EmailType; use Chill\MainBundle\Form\Type\DateIntervalType; use Symfony\Component\Form\Extension\Core\Type\ChoiceType; -use Chill\ChillJobBundle\Entity\Immersion; +use Chill\JobBundle\Entity\Immersion; use Chill\MainBundle\Form\Type\AddressType; class ImmersionType extends AbstractType diff --git a/src/Bundle/ChillJobBundle/src/Form/ProjetProfessionnelType.php b/src/Bundle/ChillJobBundle/src/Form/ProjetProfessionnelType.php index 76f3e5b32..60b23b814 100644 --- a/src/Bundle/ChillJobBundle/src/Form/ProjetProfessionnelType.php +++ b/src/Bundle/ChillJobBundle/src/Form/ProjetProfessionnelType.php @@ -9,7 +9,7 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Form; +namespace Chill\JobBundle\Form; use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\FormBuilderInterface; @@ -17,8 +17,8 @@ use Symfony\Component\OptionsResolver\OptionsResolver; use Chill\MainBundle\Form\Type\ChillDateType; use Symfony\Component\Form\Extension\Core\Type\TextareaType; use Symfony\Component\Form\Extension\Core\Type\ChoiceType; -use Chill\ChillJobBundle\Entity\ProjetProfessionnel; -use Chill\ChillJobBundle\Form\Type\PickRomeAppellationType; +use Chill\JobBundle\Entity\ProjetProfessionnel; +use Chill\JobBundle\Form\Type\PickRomeAppellationType; class ProjetProfessionnelType extends AbstractType { diff --git a/src/Bundle/ChillJobBundle/src/Form/Type/PickRomeAppellationType.php b/src/Bundle/ChillJobBundle/src/Form/Type/PickRomeAppellationType.php index 471d5e7ce..da538f649 100644 --- a/src/Bundle/ChillJobBundle/src/Form/Type/PickRomeAppellationType.php +++ b/src/Bundle/ChillJobBundle/src/Form/Type/PickRomeAppellationType.php @@ -9,20 +9,20 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Form\Type; +namespace Chill\JobBundle\Form\Type; +use Chill\FranceTravailApiBundle\ApiHelper\PartenaireRomeAppellation; use Symfony\Component\Form\AbstractType; use Symfony\Component\OptionsResolver\OptionsResolver; use Symfony\Component\Form\FormBuilderInterface; -use Chill\ChillJobBundle\Entity\Rome\Appellation; +use Chill\JobBundle\Entity\Rome\Appellation; use Symfony\Bridge\Doctrine\Form\Type\EntityType; -use Symfony\Component\Translation\TranslatorInterface; use Symfony\Component\Routing\Generator\UrlGeneratorInterface; -use Chill\PoleEmploiApiBundle\ApiHelper\PartenaireRomeAppellation; use Doctrine\ORM\EntityManagerInterface; use Symfony\Component\OptionsResolver\Options; -use Chill\ChillJobBundle\Form\ChoiceLoader\RomeAppellationChoiceLoader; +use Chill\JobBundle\Form\ChoiceLoader\RomeAppellationChoiceLoader; use Symfony\Component\Validator\Validator\ValidatorInterface; +use Symfony\Contracts\Translation\TranslatorInterface; /** * Allow to grab an appellation. @@ -41,7 +41,7 @@ class PickRomeAppellationType extends AbstractType // /** // * - // * @var \Chill\ChillJobBundle\Form\DataTransformer\RomeAppellationTransformer + // * @var \Chill\JobBundle\Form\DataTransformer\RomeAppellationTransformer // */ // protected $romeAppellationTransformer; diff --git a/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php b/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php index bd329e440..b9d521a54 100644 --- a/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php +++ b/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php @@ -9,12 +9,12 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Menu; +namespace Chill\JobBundle\Menu; use Chill\MainBundle\Routing\LocalMenuBuilderInterface; use Knp\Menu\MenuItem; use Symfony\Component\Security\Core\Authorization\AuthorizationCheckerInterface; -use Chill\ChillJobBundle\Security\Authorization\CSConnectesVoter; +use Chill\JobBundle\Security\Authorization\CSConnectesVoter; class MenuBuilder implements LocalMenuBuilderInterface { @@ -33,29 +33,29 @@ class MenuBuilder implements LocalMenuBuilderInterface /** @var \Chill\PersonBundle\Entity\Person $person */ $person = $parameters['person']; - if ($this->authorizationChecker->isGranted(CSConnectesVoter::REPORT_NEW, $person)) { +// if ($this->authorizationChecker->isGranted(CSConnectesVoter::REPORT_NEW, $person)) { $menu->addChild('Situation personnelle', [ - 'route' => 'chill_crud_csperson_personal_situation_view', + 'route' => 'chill_job_personal_situation_view', 'routeParameters' => [ - 'id' => $person->getId(), + 'person' => $person->getId(), ], ]) ->setExtras([ 'order' => 50, ]); $menu->addChild('Dispositifs', [ - 'route' => 'chill_crud_csperson_dispositifs_view', + 'route' => 'chill_job_dispositifs_view', 'routeParameters' => [ - 'id' => $person->getId(), + 'person' => $person->getId(), ], ]) ->setExtras([ 'order' => 51, ]); - } +// } - $menu->addChild('Parcours d\'accompagnement', [ - 'route' => 'chill_csconnectes_csreport_index', + $menu->addChild('Emploi', [ + 'route' => 'chill_job_report_index', 'routeParameters' => [ 'person' => $person->getId(), ], diff --git a/src/Bundle/ChillJobBundle/src/Repository/CSPersonRepository.php b/src/Bundle/ChillJobBundle/src/Repository/CSPersonRepository.php index 177917364..ac833113e 100644 --- a/src/Bundle/ChillJobBundle/src/Repository/CSPersonRepository.php +++ b/src/Bundle/ChillJobBundle/src/Repository/CSPersonRepository.php @@ -9,7 +9,7 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Repository; +namespace Chill\JobBundle\Repository; /** * CSPersonRepository. diff --git a/src/Bundle/ChillJobBundle/src/Repository/CV/ExperienceRepository.php b/src/Bundle/ChillJobBundle/src/Repository/CV/ExperienceRepository.php index 4651e13e8..46d6a52d7 100644 --- a/src/Bundle/ChillJobBundle/src/Repository/CV/ExperienceRepository.php +++ b/src/Bundle/ChillJobBundle/src/Repository/CV/ExperienceRepository.php @@ -9,7 +9,7 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Repository\CV; +namespace Chill\JobBundle\Repository\CV; /** * ExperienceRepository. diff --git a/src/Bundle/ChillJobBundle/src/Repository/CV/FormationRepository.php b/src/Bundle/ChillJobBundle/src/Repository/CV/FormationRepository.php index 3278c3c18..29635d537 100644 --- a/src/Bundle/ChillJobBundle/src/Repository/CV/FormationRepository.php +++ b/src/Bundle/ChillJobBundle/src/Repository/CV/FormationRepository.php @@ -9,7 +9,7 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Repository\CV; +namespace Chill\JobBundle\Repository\CV; /** * FormationRepository. diff --git a/src/Bundle/ChillJobBundle/src/Repository/CVRepository.php b/src/Bundle/ChillJobBundle/src/Repository/CVRepository.php index 0b9cdc8b9..5656871bf 100644 --- a/src/Bundle/ChillJobBundle/src/Repository/CVRepository.php +++ b/src/Bundle/ChillJobBundle/src/Repository/CVRepository.php @@ -9,7 +9,7 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Repository; +namespace Chill\JobBundle\Repository; /** * CVRepository. diff --git a/src/Bundle/ChillJobBundle/src/Repository/FreinRepository.php b/src/Bundle/ChillJobBundle/src/Repository/FreinRepository.php index 5be7c12c3..f87e33852 100644 --- a/src/Bundle/ChillJobBundle/src/Repository/FreinRepository.php +++ b/src/Bundle/ChillJobBundle/src/Repository/FreinRepository.php @@ -9,7 +9,7 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Repository; +namespace Chill\JobBundle\Repository; /** * FreinRepository. diff --git a/src/Bundle/ChillJobBundle/src/Repository/ImmersionRepository.php b/src/Bundle/ChillJobBundle/src/Repository/ImmersionRepository.php index 779bb070c..aa3d2d0d0 100644 --- a/src/Bundle/ChillJobBundle/src/Repository/ImmersionRepository.php +++ b/src/Bundle/ChillJobBundle/src/Repository/ImmersionRepository.php @@ -9,7 +9,7 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Repository; +namespace Chill\JobBundle\Repository; /** * ImmersionRepository. diff --git a/src/Bundle/ChillJobBundle/src/Repository/ProjetProfessionnelRepository.php b/src/Bundle/ChillJobBundle/src/Repository/ProjetProfessionnelRepository.php index e46dcf2fd..f884245fc 100644 --- a/src/Bundle/ChillJobBundle/src/Repository/ProjetProfessionnelRepository.php +++ b/src/Bundle/ChillJobBundle/src/Repository/ProjetProfessionnelRepository.php @@ -9,7 +9,7 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Repository; +namespace Chill\JobBundle\Repository; /** * ProjetProfessionnelRepository. diff --git a/src/Bundle/ChillJobBundle/src/Repository/Rome/AppellationRepository.php b/src/Bundle/ChillJobBundle/src/Repository/Rome/AppellationRepository.php index 6bbec7056..fcb152cd9 100644 --- a/src/Bundle/ChillJobBundle/src/Repository/Rome/AppellationRepository.php +++ b/src/Bundle/ChillJobBundle/src/Repository/Rome/AppellationRepository.php @@ -9,7 +9,7 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Repository\Rome; +namespace Chill\JobBundle\Repository\Rome; /** * AppellationRepository. diff --git a/src/Bundle/ChillJobBundle/src/Repository/Rome/MetierRepository.php b/src/Bundle/ChillJobBundle/src/Repository/Rome/MetierRepository.php index bd6ebc488..04cbac60c 100644 --- a/src/Bundle/ChillJobBundle/src/Repository/Rome/MetierRepository.php +++ b/src/Bundle/ChillJobBundle/src/Repository/Rome/MetierRepository.php @@ -9,7 +9,7 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Repository\Rome; +namespace Chill\JobBundle\Repository\Rome; /** * MetierRepository. diff --git a/src/Bundle/ChillJobBundle/src/Resources/config/routing.yml b/src/Bundle/ChillJobBundle/src/Resources/config/routing.yml index 6e695ca80..9617e558d 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/config/routing.yml +++ b/src/Bundle/ChillJobBundle/src/Resources/config/routing.yml @@ -1,3 +1,3 @@ -csconnectes_sp_controllers: - resource: "@CSConnectesSPBundle/Controller" - type: annotation \ No newline at end of file +chill_job_controllers: + resource: "@ChillJobBundle/Controller" + type: annotation diff --git a/src/Bundle/ChillJobBundle/src/Resources/config/services.yml b/src/Bundle/ChillJobBundle/src/Resources/config/services.yml index a655348c4..7fbad064e 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/config/services.yml +++ b/src/Bundle/ChillJobBundle/src/Resources/config/services.yml @@ -8,5 +8,5 @@ imports: services: # cs_connectes_sp.example: -# class: Chill\ChillJobBundle\Example +# class: Chill\JobBundle\Example # arguments: ["@service_id", "plain_value", "%parameter%"] diff --git a/src/Bundle/ChillJobBundle/src/Resources/config/services/3party_type.yml b/src/Bundle/ChillJobBundle/src/Resources/config/services/3party_type.yml index 50cca8c30..aef7e8a71 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/config/services/3party_type.yml +++ b/src/Bundle/ChillJobBundle/src/Resources/config/services/3party_type.yml @@ -1,9 +1,9 @@ services: - Chill\ChillJobBundle\ThirdParty\PrescripteurType: + Chill\JobBundle\ThirdParty\PrescripteurType: tags: - { name: chill_3party.provider } - Chill\ChillJobBundle\ThirdParty\EntrepriseType: + Chill\JobBundle\ThirdParty\EntrepriseType: tags: - { name: chill_3party.provider } diff --git a/src/Bundle/ChillJobBundle/src/Resources/config/services/controller.yml b/src/Bundle/ChillJobBundle/src/Resources/config/services/controller.yml index 350953d57..517fa143d 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/config/services/controller.yml +++ b/src/Bundle/ChillJobBundle/src/Resources/config/services/controller.yml @@ -1,3 +1,13 @@ services: - Chill\ChillJobBundle\Controller\CSReportController: + Chill\JobBundle\Controller\CSReportController: + autoconfigure: true + autowire: true tags: ['controller.service_arguments'] + Chill\JobBundle\Controller\CSPersonController: + autoconfigure: true + autowire: true + tags: ['controller.service_arguments'] + Chill\JobBundle\Controller\CSCrudReportController: + autoconfigure: true + autowire: true + tags: [ 'controller.service_arguments' ] diff --git a/src/Bundle/ChillJobBundle/src/Resources/config/services/export.yml b/src/Bundle/ChillJobBundle/src/Resources/config/services/export.yml index 10a547740..e03ca2c37 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/config/services/export.yml +++ b/src/Bundle/ChillJobBundle/src/Resources/config/services/export.yml @@ -1,6 +1,6 @@ services: - Chill\ChillJobBundle\Export\ListCSPerson: + Chill\JobBundle\Export\ListCSPerson: arguments: $em: '@doctrine.orm.entity_manager' $translator: "@translator" @@ -9,19 +9,19 @@ services: tags: - { name: chill.export, alias: list_CSPerson } - Chill\ChillJobBundle\Export\ListCV: + Chill\JobBundle\Export\ListCV: arguments: $em: '@doctrine.orm.entity_manager' tags: - { name: chill.export, alias: list_CV } - Chill\ChillJobBundle\Export\ListFrein: + Chill\JobBundle\Export\ListFrein: arguments: $em: '@doctrine.orm.entity_manager' tags: - { name: chill.export, alias: list_Frein } - Chill\ChillJobBundle\Export\ListProjetProfessionnel: + Chill\JobBundle\Export\ListProjetProfessionnel: arguments: $em: '@doctrine.orm.entity_manager' tags: diff --git a/src/Bundle/ChillJobBundle/src/Resources/config/services/form.yml b/src/Bundle/ChillJobBundle/src/Resources/config/services/form.yml index 3dcc5d709..ecb99167a 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/config/services/form.yml +++ b/src/Bundle/ChillJobBundle/src/Resources/config/services/form.yml @@ -1,8 +1,8 @@ services: - Chill\ChillJobBundle\Form\Type\PickRomeAppellationType: + Chill\JobBundle\Form\Type\PickRomeAppellationType: autowire: true tags: - { name: form.type } - Chill\ChillJobBundle\Form\DataTransformer\RomeAppellationTransformer: + Chill\JobBundle\Form\DataTransformer\RomeAppellationTransformer: autowire: true diff --git a/src/Bundle/ChillJobBundle/src/Resources/config/services/menu.yml b/src/Bundle/ChillJobBundle/src/Resources/config/services/menu.yml index 0dfd289ea..ebc62af6e 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/config/services/menu.yml +++ b/src/Bundle/ChillJobBundle/src/Resources/config/services/menu.yml @@ -1,5 +1,5 @@ services: - Chill\ChillJobBundle\Menu\MenuBuilder: + Chill\JobBundle\Menu\MenuBuilder: arguments: $authorizationChecker: '@Symfony\Component\Security\Core\Authorization\AuthorizationCheckerInterface' tags: diff --git a/src/Bundle/ChillJobBundle/src/Resources/config/services/security.yml b/src/Bundle/ChillJobBundle/src/Resources/config/services/security.yml index e3745a9ef..3d94cec44 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/config/services/security.yml +++ b/src/Bundle/ChillJobBundle/src/Resources/config/services/security.yml @@ -1,12 +1,12 @@ services: - Chill\ChillJobBundle\Security\Authorization\CSConnectesVoter: + Chill\JobBundle\Security\Authorization\CSConnectesVoter: arguments: $authorizationHelper: '@Chill\MainBundle\Security\Authorization\AuthorizationHelper' tags: - { name: security.voter } - { name: chill.role } - Chill\ChillJobBundle\Security\Authorization\ExportsVoter: + Chill\JobBundle\Security\Authorization\ExportsVoter: arguments: $authorizationHelper: '@Chill\MainBundle\Security\Authorization\AuthorizationHelper' tags: diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/dispositifs_edit.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/dispositifs_edit.html.twig index 82a4682d9..a2151e5cb 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/dispositifs_edit.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/dispositifs_edit.html.twig @@ -7,24 +7,24 @@ {% block crud_content_header %}

    Dispositifs

    {% endblock %} - + {# surcharge le block "retour" par un lien vers la page vue #} {% block content_form_actions_back %}
  • - + {{ 'Cancel'|trans }}
  • {% endblock %} - + {% block content_form_actions_view %} {# no view acceptable #} - {% endblock %} - + {% endblock %} + {% block content_form_actions_save_and_close %} {# save and close does not makes sens #} {% endblock %} - + {% block crud_content_form_rows %}

    Accompagnement

    @@ -35,12 +35,12 @@
    {{ form_row(form.accompagnementRQTHDate) }}
    - +
    {{ form_row(form.accompagnementComment) }}
    {{ form_row(form.prescripteur) }} - + {{ form_row(form.dispositifsNotes) }}

    Pôle emploi

    @@ -48,7 +48,7 @@ {{ form_row(form.poleEmploiId) }} {{ form_row(form.poleEmploiInscriptionDate) }} - +

    CAF

    @@ -61,20 +61,20 @@

    Autres informations

    - + {{ form_row(form.cERInscriptionDate) }} {{ form_row(form.cERSignataire) }} {{ form_row(form.pPAEInscriptionDate) }} {{ form_row(form.pPAESignataire) }} - +
    {{ form_row(form.nEETEligibilite) }}
    - +
    {{ form_row(form.nEETCommissionDate) }}
    - + {{ form_row(form.fSEMaDemarcheCode) }} {{ form_row(form.dateContratIEJ) }} {{ form_row(form.dateAvenantIEJ) }} @@ -88,4 +88,4 @@ -{% endblock js %} \ No newline at end of file +{% endblock js %} diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/dispositifs_view.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/dispositifs_view.html.twig index 569aa7078..1cecaf0ad 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/dispositifs_view.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/dispositifs_view.html.twig @@ -10,13 +10,13 @@ {% block title 'Dispositifs d\'accompagnement de %name%'|trans( { '%name%': person.firstName ~ ' ' ~ person.lastName } ) %} -{% block personcontent %} +{% block content %}

    {{ 'Dispositifs d\'accompagnement de %name%'|trans( { '%name%': person.firstName ~ ' ' ~ person.lastName } ) }}

    - +

    Accompagnement

    - +
    - +
    Accompagnements
    {% if entity.accompagnement is null or entity.accompagnement|length == 0 %}
    {{ null|chill_print_or_message }}
    @@ -37,46 +37,46 @@ {% endif %} - +
    Prescripteur
    - + {% if entity.prescripteur is not null %}
    {{ entity.prescripteur|chill_entity_render_box({'with_valid_from': false}) }}
    {% else %}
    {{ null|chill_print_or_message }}
    {% endif %} - +
    Notes
    {{ entity.dispositifsNotes|chill_print_or_message("Aucune note", 'blockquote') }}
    - +

    Pôle emploi

    - +
    Identifiant pôle emploi
    {{ entity.poleEmploiId|chill_print_or_message }}
    - +
    Date d'inscription pôle emploi
    {{ entity.poleEmploiInscriptionDate|chill_print_or_message }}
    - +
    - +

    CAF

    - +
    Identifiant CAF
    {{ entity.cafId|chill_print_or_message }}
    - +
    Date d'inscription CAF
    {{ entity.cafInscriptionDate|chill_print_or_message }}
    - +
    - +

    Autres informations

    - +
    {% for item in [ - ['cERInscriptionDate', 'Date CER'], + ['cERInscriptionDate', 'Date CER'], ['cERSignataire', 'Signataire CER'], ['pPAEInscriptionDate', 'Date PPAE'], ['pPAESignataire', 'Signataire PPAE'], @@ -84,7 +84,7 @@
    {{ item[1] }}
    {{ attribute(entity, item[0])|chill_print_or_message }}
    {% endfor %} - +
    Éligibilite NEET
    {% if entity.nEETEligibilite is null %} @@ -97,30 +97,30 @@ {{ ('neet_eligibility.' ~ entity.nEETEligibilite)|trans }} {% endif %}
    - +
    Code "Ma démarche FSE"
    {{ entity.fSEMaDemarcheCode|chill_print_or_message }}
    - + {% if entity.dateContratIEJ != null or entity.dateAvenantIEJ != null %}
    IEJ
    {% if entity.dateContratIEJ != null %} -

    Date du contrat IEJ : {{ entity.dateContratIEJ|localizeddate('long', 'none') }}

    +

    Date du contrat IEJ : {{ entity.dateContratIEJ|format_date('long', 'none') }}

    {% endif %} {% if entity.dateAvenantIEJ != null %} -

    Date de l'avenant IEJ : {{ entity.dateAvenantIEJ|localizeddate('long', 'none') }}

    +

    Date de l'avenant IEJ : {{ entity.dateAvenantIEJ|format_date('long', 'none') }}

    {% endif %}
    {% endif %}
    - + {% endblock personcontent %} - + {% block css %} -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_edit.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_edit.html.twig index 04f73a0ed..314c00791 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_edit.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_edit.html.twig @@ -7,93 +7,93 @@ {% block crud_content_header %}

    Situation personnelle

    {% endblock %} - + {# surcharge le block "retour" par un lien vers la page vue #} {% block content_form_actions_back %}
  • - + {{ 'Cancel'|trans }}
  • {% endblock %} - + {% block content_form_actions_view %} {# no view acceptable #} - {% endblock %} - + {% endblock %} + {% block content_form_actions_save_and_close %} {# save and close does not makes sens #} {% endblock %} - + {% block crud_content_form_rows %}

    Logement

    - +
    {{ form_row(form.situationLogement) }}
    - +
    {{ form_row(form.situationLogementPrecision) }}
    - +

    Situation familiale

    - + {{ form_row(form.enfantACharge) }} {{ form_row(form.personMaritalStatus) }} - +

    Maitrise de la langue

    - + {{ form_row(form.niveauMaitriseLangue) }} - +

    Mobilité

    - + {{ form_row(form.mobiliteMoyenDeTransport) }} {{ form_row(form.vehiculePersonnel) }} {{ form_row(form.permisConduire) }} {{ form_row(form.mobiliteNotes) }} - +

    Situation professionnelle et économique

    - +
    {{ form_row(form.situationProfessionnelle) }}
    - + {{ form_row(form.dateFinDernierEmploi) }} - +
    {{ form_row(form.typeContrat) }}
    - +
    {{ form_row(form.typeContratAide) }}
    - +
    {{ form_row(form.ressources) }}
    - +
    {{ form_row(form.ressourcesComment) }}
    - + {{ form_row(form.ressourceDate1Versement) }} {{ form_row(form.cPFMontant) }} {{ form_row(form.acompteDIF) }} - +

    Situation de handicap

    - +
    {{ form_row(form.handicapIs) }}
    - +
    {{ form_row(form.handicapNotes) }} {{ form_row(form.handicapRecommandation) }} {{ form_row(form.handicapAccompagnement) }}
    - +

    Documents

    - + {{ form_row(form.documentCV) }} {{ form_row(form.documentAgrementIAE) }} {{ form_row(form.documentRQTH) }} diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_view.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_view.html.twig index a0063cabd..7f8798801 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_view.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_view.html.twig @@ -12,26 +12,26 @@ {% block title 'Situation personnelle de %name%'|trans( { '%name%': person.firstName ~ ' ' ~ person.lastName } ) %} -{% block personcontent %} +{% block content %}

    {{ 'Situation personnelle de %name%'|trans( { '%name%': person.firstName ~ ' ' ~ person.lastName } ) }}

    - +

    Logement

    - +
    - +
    Situation de logement
    {% if entity.situationLogement is not null %}
    {{ ('situation_logement.' ~ entity.situationLogement)|trans }}
    {% else %}
    {{ null|chill_print_or_message("Aucune information") }}
    {% endif %} - +
    - +

    Situation familiale

    - +
    - +
    Enfants à charge
    {% if entity.enfantACharge is not null %}
    @@ -39,7 +39,7 @@ {% else %}
    {{ null|chill_print_or_message }}
    {% endif %} - +
    {{'Marital status'|trans}} :
    {% if entity.person.maritalStatus is not null %} @@ -48,13 +48,13 @@ {{ 'No data given'|trans }} {% endif %}
    - +
    - +

    Maitrise de la langue

    - +
    - +
    Niveau de maitrise de la langue française
    {% if entity.niveauMaitriseLangue is null or entity.niveauMaitriseLangue|length == 0 %}
    {{ null|chill_print_or_message }}
    @@ -70,12 +70,12 @@ {% endif %}
    - +

    Mobilité

    - +
    - +
    Moyens de transports accessibles
    {% if entity.mobiliteMoyenDeTransport is null or entity.mobiliteMoyenDeTransport|length == 0 %} @@ -88,16 +88,16 @@ {% endif %}
    - +
    Véhicule Personnel
    - {% if entity.vehiculePersonnel is null %} + {% if entity.vehiculePersonnel is null %}
    {{ null|chill_print_or_message }}
    {% elseif entity.vehiculePersonnel == true %}
    A un véhicule personnel
    {% else %}
    N'a pas de véhicule personnel
    {% endif %} - +
    Permis de conduire
    {% if entity.permisConduire is null or entity.permisConduire|length == 0 %}
    {{ null|chill_print_or_message }}
    @@ -112,31 +112,31 @@ {% endif %} - +
    Notes concernant la mobilité
    {{ entity.mobiliteNotes|chill_print_or_message("Aucune note", 'blockquote') }}
    - +

    Situation professionnelle et économique

    - +
    - +
    Situation professionnelle
    {% if entity.situationProfessionnelle is not null %}
    {{ ('situation_professionnelle.' ~ entity.situationProfessionnelle)|trans }}
    {% else %}
    {{ null|chill_print_or_message }}
    {% endif %} - +
    Date de fin du dernier emploi
    {% if entity.dateFinDernierEmploi is not null %} -
    {{ entity.dateFinDernierEmploi|localizeddate('medium', 'none') }} +
    {{ entity.dateFinDernierEmploi|format_date('medium', 'none') }} {% else %}
    {{ null|chill_print_or_message }}
    {% endif %} - + {% if entity.situationProfessionnelle == 'en_activite' %}
    Type de contrat
    {% if entity.typeContrat is null or entity.typeContrat|length == 0 %} @@ -172,10 +172,10 @@ {% endif %} - +
    Date du premier versement
    {% if entity.ressourceDate1Versement is not null %} -
    {{ entity.ressourceDate1Versement|localizeddate('medium', 'none') }} +
    {{ entity.ressourceDate1Versement|format_date('medium', 'none') }} {% else %}
    {{ null|chill_print_or_message }}
    {% endif %} @@ -186,19 +186,19 @@ {% else %}
    {{ null|chill_print_or_message }}
    {% endif %} - - + +
    Montant acompte DIF
    {% if entity.acompteDIF is not null %}
    {{ entity.acompteDIF|localizedcurrency('EUR') }}
    {% else %}
    {{ null|chill_print_or_message }}
    {% endif %} - +
    - +

    Handicap

    - +
    Handicap ?
    @@ -212,7 +212,7 @@ Non {% endif %}
    - + {% if entity.handicapIs %}
    Recommandation
    @@ -222,7 +222,7 @@ {{ ('handicap_recommandation.' ~ entity.handicapRecommandation)|trans }} {% endif %}
    - +
    Accompagnement
    {% if entity.handicapAccompagnement is not null %}
    {{ entity.handicapAccompagnement.name }}
    @@ -231,11 +231,11 @@ {% endif %} {% endif %}
    - +

    Documents

    - +
    - + {% for r in [ ['documentCV', 'CV'], ['documentAgrementIAE', 'Document Agrément AIE'], @@ -252,7 +252,7 @@ ['documentFactureElectricite', "Facture d'électricité"], ['documentAttestationSecuriteSociale', "Attestation sécurité sociale"], ] %} - +
    {{ r[1] }}
    {% set document = attribute(entity, r[0]) %} {% if document is null %} @@ -262,10 +262,10 @@ {% endif %} {% endfor %} - +
    - - + + @@ -279,4 +279,4 @@ {% block js %} {{ parent() }} -{% endblock js %} \ No newline at end of file +{% endblock js %} diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CV/edit.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CV/edit.html.twig index 96b9428ce..b0d11ec8c 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/CV/edit.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CV/edit.html.twig @@ -21,34 +21,34 @@ {{ form_row(form.diplomaReconnue) }}
    - + {% endblock %} {% block personcontent %} {% embed '@ChillPerson/CRUD/_edit_content.html.twig' %} {% block crud_content_form_rows %} - - + + {{ form_row(form.reportDate) }} {{ form_row(form.formationLevel) }} {{ form_row(form.formationType) }} {{ form_row(form.spokenLanguages) }} - +

    Formations

    {{ form_widget(form.formations) }} - +

    Expériences

    {{ form_widget(form.experiences) }} - +

    Notes

    {{ form_widget(form.notes) }} {% endblock crud_content_form_rows %} - + {% block content_form_actions_back %}
  • - + {{ 'Cancel'|trans }}
  • @@ -58,4 +58,4 @@ {% block css %} -{% endblock css %} \ No newline at end of file +{% endblock css %} diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CV/new.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CV/new.html.twig index c7842f048..8d3b970e3 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/CV/new.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CV/new.html.twig @@ -21,7 +21,7 @@ {{ form_row(form.diplomaReconnue) }} - + {% endblock %} {% block personcontent %} @@ -29,26 +29,26 @@ {% block crud_content_header %}

    {{ ('crud.'~crud_name~'.title_new')|trans({'%person%': person|chill_entity_render_string }) }}

    {% endblock crud_content_header %} - + {% block crud_content_form_rows %} {{ form_row(form.reportDate) }} {{ form_row(form.formationLevel) }} {{ form_row(form.formationType) }} {{ form_row(form.spokenLanguages) }} - +

    Formations

    {{ form_widget(form.formations) }} - +

    Expériences

    {{ form_widget(form.experiences) }} - +

    Notes

    {{ form_widget(form.notes) }} {% endblock crud_content_form_rows %} - + {% block content_form_actions_back %}
  • - + {{ 'Cancel'|trans }}
  • @@ -58,4 +58,4 @@ {% block css %} -{% endblock css %} \ No newline at end of file +{% endblock css %} diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CV/view.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CV/view.html.twig index cf9c3a962..89655a425 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/CV/view.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CV/view.html.twig @@ -9,10 +9,10 @@ {% block crud_content_view_details %}
    Date du rapport
    -
    {{ entity.reportDate|localizeddate('long', 'none') }}
    +
    {{ entity.reportDate|format_date('long', 'none') }}

    Compétences

    - +
    Langues parlées
    {% if entity.spokenLanguages is null or entity.spokenLanguages|length == 0 %} @@ -23,42 +23,42 @@ {% endfor %} {% endif %}
    - +

    Formation

    - +
    Niveau de formation
    {{ (entity.formationLevel is null ? null : ('formation_level.' ~ entity.formationLevel))|chill_print_or_message("Aucune information") }}
    - +
    Type de formation
    {{ (entity.formationType is null ? null : ('formation_type.' ~ entity.formationType))|chill_print_or_message("Aucune information") }}
    - +

    Formations suivies

    - +
    {% for f in entity.formations %}

    {{ f.title }}{% if f.organisme is not empty %} auprès de {{ f.organisme }}{% endif %}

    - +
    - +
    Dates de formation
    {% if f.startDate is null and f.endDate is null %} {{ null|chill_print_or_message("Aucune date indiquée") }} {% elseif f.startDate is null %} - Jusqu'au {{ f.endDate|localizeddate('long', 'none') }} (date de début inconnue) + Jusqu'au {{ f.endDate|format_date('long', 'none') }} (date de début inconnue) {% elseif f.endDate is null %} - Depuis le {{ f.startDate|localizeddate('long', 'none') }} (date de fin inconnue) + Depuis le {{ f.startDate|format_date('long', 'none') }} (date de fin inconnue) {% else %} - Du {{ f.startDate|localizeddate('long', 'none') }} au {{ f.endDate|localizeddate('long', 'none') }} + Du {{ f.startDate|format_date('long', 'none') }} au {{ f.endDate|format_date('long', 'none') }} {% endif %}
    - +
    Diplôme

    Diplôme obtenu: {{ (f.diplomaObtained is null ? null : ('diploma_obtained.' ~ f.diplomaObtained))|chill_print_or_message("Aucune information") }}

    @@ -70,34 +70,34 @@

    Aucune formation renseignée

    {% endfor %}
    - +

    Expériences

    - +
    {% for f in entity.experiences %}

    {{ f.poste }} {% if f.structure is not empty %}auprès de {{ f.structure }}{% endif %}

    - +
    - +
    Dates de l'expérience
    {% if f.startDate is null and f.endDate is null %} {{ null|chill_print_or_message("Aucune date indiquée") }} {% elseif f.startDate is null %} - Jusqu'au {{ f.endDate|localizeddate('long', 'none') }} (date de début inconnue) + Jusqu'au {{ f.endDate|format_date('long', 'none') }} (date de début inconnue) {% elseif f.endDate is null %} - Depuis le {{ f.startDate|localizeddate('long', 'none') }} (date de fin inconnue) + Depuis le {{ f.startDate|format_date('long', 'none') }} (date de fin inconnue) {% else %} - Du {{ f.startDate|localizeddate('long', 'none') }} au {{ f.endDate|localizeddate('long', 'none') }} + Du {{ f.startDate|format_date('long', 'none') }} au {{ f.endDate|format_date('long', 'none') }} {% endif %}
    - +
    Type de contrat
    {{ (f.contratType is null ? null : ('xp_contrat_type.'~f.contratType))|chill_print_or_message }}
    - + {% if f.notes is not empty %}
    Notes
    @@ -110,16 +110,16 @@

    Aucune formation renseignée

    {% endfor %}
    - - + +

    Note

    - + {{ entity.notes|chill_print_or_message("Aucune note", 'blockquote') }} {% endblock crud_content_view_details %} - + {% block content_view_actions_back %}
  • - + {{ 'Cancel'|trans }}
  • @@ -139,4 +139,4 @@ background-color: var(--chill-beige); } -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Frein/edit.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Frein/edit.html.twig index 8e022d6b1..296ea7d56 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Frein/edit.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Frein/edit.html.twig @@ -11,10 +11,10 @@ {% embed '@ChillPerson/CRUD/_edit_content.html.twig' %} {% block content_form_actions_back %}
  • - + {{ 'Cancel'|trans }}
  • {% endblock %} {% endembed %} -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Frein/new.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Frein/new.html.twig index be8d2a84a..415f1f610 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Frein/new.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Frein/new.html.twig @@ -14,7 +14,7 @@ {% endblock crud_content_header %} {% block content_form_actions_back %}
  • - + {{ 'Cancel'|trans }}
  • diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Frein/view.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Frein/view.html.twig index e32d4a453..a93f9dbf6 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Frein/view.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Frein/view.html.twig @@ -9,7 +9,7 @@ {% block crud_content_view_details %}
    Date du rapport
    -
    {{ entity.reportDate|localizeddate('long', 'none') }}
    +
    {{ entity.reportDate|format_date('long', 'none') }}
    Freins identifiés
    @@ -27,7 +27,7 @@ {{ entity.notesPerso|chill_print_or_message(null, 'blockquote') }} {% endif %}
    - +
    Freins d'accès à l'emploi
    {% if entity.freinsEmploi|length > 0 %} @@ -46,13 +46,13 @@
    {% endblock crud_content_view_details %} - + {% block content_view_actions_back %}
  • - + {{ 'Cancel'|trans }}
  • {% endblock %} {% endembed %} -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit-bilan.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit-bilan.html.twig index 37ca1f40a..b5449a158 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit-bilan.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit-bilan.html.twig @@ -12,81 +12,81 @@ Bilan d'immersion {% block crud_content_header %}

    Bilan d'immersion

    {% endblock crud_content_header %} - + {% block content_form_actions_back %}
  • - + {{ 'Cancel'|trans }}
  • {% endblock %} - + {% block crud_content_form_rows %}

    - Immersion du {{ entity.debutDate|localizeddate('long', 'none') }} au {{ entity.getDateEndComputed|localizeddate('long', 'none') }}, + Immersion du {{ entity.debutDate|format_date('long', 'none') }} au {{ entity.getDateEndComputed|format_date('long', 'none') }}, auprès de

    {{ entity.entreprise.name }}
    Domaine d'activité: {{ entity.domaineActivite }}

    Modifier

    - +

    Savoir-être du jeune

    - + {{ form_widget(form.savoirEtre) }} - + {{ form_row(form.savoirEtreNote) }} - +

    Ponctualité

    - + {{ form_row(form.ponctualiteSalarie) }} {{ form_row(form.ponctualiteSalarieNote) }} - +

    Assiduité

    {{ form_row(form.assiduite) }} {{ form_row(form.assiduiteNote) }} - +

    Intégration

    {{ form_row(form.interetActivite) }} {{ form_row(form.interetActiviteNote) }} - + {{ form_row(form.integreRegle) }} {{ form_row(form.integreRegleNote) }} - +

    Autonomie

    {{ form_row(form.espritInitiative) }} {{ form_row(form.espritInitiativeNote) }} - + {{ form_row(form.organisation) }} {{ form_row(form.organisationNote) }} - +

    Attitude

    {{ form_row(form.capaciteTravailEquipe) }} {{ form_row(form.capaciteTravailEquipeNote) }} - +

    Posture professionnelle

    {{ form_row(form.styleVestimentaire) }} {{ form_row(form.styleVestimentaireNote) }} - + {{ form_row(form.langageProf) }} {{ form_row(form.langageProfNote) }} - +

    Relation avec la hiérarchie

    {{ form_row(form.appliqueConsigne) }} {{ form_row(form.appliqueConsigneNote) }} - + {{ form_row(form.respectHierarchie) }} {{ form_row(form.respectHierarchieNote) }} - +

    Savoir-faire développés

    - + {{ form_row(form.principalesActivites) }} {{ form_row(form.competencesAcquises) }} {{ form_row(form.competencesADevelopper) }} - +

    Notes

    - + {{ form_widget(form.noteBilan) }} - + {% endblock %} {% endembed %} -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit.html.twig index aacfc14fd..8fad837dd 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit.html.twig @@ -11,55 +11,55 @@ {% embed '@ChillPerson/CRUD/_edit_content.html.twig' %} {% block content_form_actions_back %}
  • - + {{ 'Cancel'|trans }}
  • {% endblock %} - + {% block crud_content_form_rows %} {{ form_row(form.entreprise) }} {{ form_row(form.domaineActivite) }} - +

    Tuteur

    - + {{ form_row(form.tuteurName) }} {{ form_row(form.tuteurFonction) }} {{ form_row(form.tuteurPhoneNumber) }} - +

    Structure d'accompagnement

    - + {{ form_row(form.structureAccName) }} {{ form_row(form.structureAccPhonenumber) }} {{ form_row(form.structureAccEmail) }} {{ form_widget(form.structureAccAddress) }} - +

    Descriptif du poste occupé

    - + {{ form_row(form.posteTitle) }} {{ form_row(form.posteLieu) }} {{ form_row(form.debutDate) }} {{ form_row(form.duration) }} {{ form_row(form.horaire) }} - +

    Objectifs

    - +
    {{ form_widget(form.objectifs) }}
    - +
    {{ form_row(form.objectifsAutre) }}
    - +

    Notes

    - + {{ form_widget(form.noteImmersion) }} - + {% endblock %} {% endembed %} {% endblock %} {% block js %} -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/new.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/new.html.twig index eeeb1b2c4..20da94044 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/new.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/new.html.twig @@ -14,51 +14,51 @@ {% endblock crud_content_header %} {% block content_form_actions_back %}
  • - + {{ 'Cancel'|trans }}
  • {% endblock %} - + {% block crud_content_form_rows %} {{ form_row(form.entreprise) }} {{ form_row(form.domaineActivite) }} - +

    Tuteur

    - + {{ form_row(form.tuteurName) }} {{ form_row(form.tuteurFonction) }} {{ form_row(form.tuteurPhoneNumber) }} - +

    Structure d'accompagnement

    - + {{ form_row(form.structureAccName) }} {{ form_row(form.structureAccPhonenumber) }} {{ form_row(form.structureAccEmail) }} {{ form_widget(form.structureAccAddress) }} - +

    Descriptif du poste occupé

    - + {{ form_row(form.posteTitle) }} {{ form_row(form.posteLieu) }} {{ form_row(form.debutDate) }} {{ form_row(form.duration) }} {{ form_row(form.horaire) }} - +

    Objectifs

    - +
    {{ form_widget(form.objectifs) }}
    - +
    {{ form_row(form.objectifsAutre) }}
    - +

    Notes

    - + {{ form_widget(form.noteImmersion) }} - + {% endblock %} {% endembed %} {% endblock %} diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/view.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/view.html.twig index d5f789431..26d4c2efc 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/view.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/view.html.twig @@ -8,24 +8,24 @@ {% block crud_content_view_details %} {% import 'ChillMainBundle:Address:macro.html.twig' as macro_address %} - +

    Entreprise

    - +
    Entreprise
    {{ entity.entreprise|chill_entity_render_box({'with_valid_from': false}) }}
    - +
    Domaine d'activité
    {{ entity.domaineActivite }}
    - +

    Tuteur

    - +
    Nom du tuteur
    {{ entity.tuteurName }}
    - +
    Fonction du tuteur
    {{ entity.tuteurFonction }}
    - + {% if entity.tuteurPhoneNumber is not empty %}
    Téléphone du tuteur
    @@ -54,8 +54,8 @@
    {{ entity.posteLieu|chill_print_or_message }}
    Dates
    -
    Du {{ entity.debutDate|localizeddate('long', 'none') }} - au {{ entity.getDateEndComputed|localizeddate('long', 'none') }} +
    Du {{ entity.debutDate|format_date('long', 'none') }} + au {{ entity.getDateEndComputed|format_date('long', 'none') }}
    Horaire
    @@ -123,8 +123,8 @@ ['Posture professionnelle'], ['styleVestimentaire', 'Style vestimentaire adapté'], ['langageProf', "Langage professionnel"], - ['Relation avec la hiérarchie'], - ['appliqueConsigne', "Applique les consignes"], + ['Relation avec la hiérarchie'], + ['appliqueConsigne', "Applique les consignes"], ['respectHierarchie', "Respecte les niveaux hiérarchiques"], ] %} {% if line|length == 1 %} @@ -151,8 +151,8 @@ {% endif %} {% endfor %} - {% if entity.principalesActivites is not empty - or entity.competencesAcquises is not empty + {% if entity.principalesActivites is not empty + or entity.competencesAcquises is not empty or entity.competencesADevelopper is not empty %}

    Savoir-faire développés

    @@ -185,10 +185,10 @@ {% endif %}
    {% endblock crud_content_view_details %} - + {% block content_view_actions_back %}
  • - + {{ 'Cancel'|trans }}
  • @@ -206,4 +206,4 @@ {% block css %} -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/edit.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/edit.html.twig index 335019564..2a25f9186 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/edit.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/edit.html.twig @@ -12,38 +12,38 @@ {% block crud_content_header %}

    {{ ('crud.'~crud_name~'.title_edit')|trans({'%person%': person|chill_entity_render_string }) }}

    {% endblock crud_content_header %} - + {% block crud_content_form_rows %} {{ form_row(form.reportDate) }} - +

    Orientation souhaitée

    - + {{ form_row(form.souhait) }} {{ form_row(form.domaineActiviteSouhait) }} - + {{ form_row(form.typeContrat) }} {{ form_row(form.typeContratNotes) }} - + {{ form_row(form.volumeHoraire) }} {{ form_row(form.volumeHoraireNotes) }} - +

    Projet professionnel

    - + {{ form_row(form.idee) }} {{ form_row(form.enCoursConstruction) }} - + {{ form_row(form.valide) }} {{ form_row(form.domaineActiviteValide) }} {{ form_row(form.valideNotes) }} - +

    Notes

    - + {{ form_widget(form.projetProfessionnelNote) }} {% endblock %} - + {% block content_form_actions_back %}
  • - + {{ 'Cancel'|trans }}
  • diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/new.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/new.html.twig index c27a45419..9ccc87bdb 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/new.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/new.html.twig @@ -12,38 +12,38 @@ {% block crud_content_header %}

    {{ ('crud.'~crud_name~'.title_new')|trans({'%person%': person|chill_entity_render_string }) }}

    {% endblock crud_content_header %} - + {% block crud_content_form_rows %} {{ form_row(form.reportDate) }} - +

    Orientation souhaitée

    - + {{ form_row(form.souhait) }} {{ form_row(form.domaineActiviteSouhait) }} - + {{ form_row(form.typeContrat) }} {{ form_row(form.typeContratNotes) }} - + {{ form_row(form.volumeHoraire) }} {{ form_row(form.volumeHoraireNotes) }} - +

    Projet professionnel

    - + {{ form_row(form.idee) }} {{ form_row(form.enCoursConstruction) }} - + {{ form_row(form.valide) }} {{ form_row(form.domaineActiviteValide) }} {{ form_row(form.valideNotes) }} - +

    Notes

    - + {{ form_widget(form.projetProfessionnelNote) }} {% endblock %} - + {% block content_form_actions_back %}
  • - + {{ 'Cancel'|trans }}
  • diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/view.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/view.html.twig index ba221ef62..fa3a28329 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/view.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/view.html.twig @@ -9,10 +9,10 @@ {% block crud_content_view_details %}
    Date
    -
    {{ entity.reportDate|localizeddate('long', 'none') }}
    - +
    {{ entity.reportDate|format_date('long', 'none') }}
    +

    Souhaits

    - +
    Orientation souhaitée
    {% for r in entity.souhait %} @@ -27,7 +27,7 @@
    {{ entity.domaineActiviteSouhait|nl2br }}
    {% endif %}
    - +
    Type de contrat recherché
    {% for type in entity.typeContrat %} @@ -35,12 +35,12 @@
  • {{ ('projet_prof.type_contrat.' ~ type)|trans }}
  • {% if loop.last %}{% endif %} {% endfor %} - + {% if entity.typeContratNotes is not empty %}
    {{ entity.typeContratNotes|nl2br }}
    {% endif %}
    - +
    Volume horaire souhaité
    {% for type in entity.volumeHoraire %} @@ -48,24 +48,24 @@
  • {{ ('projet_prof.volume_horaire.' ~ type)|trans }}
  • {% if loop.last %}{% endif %} {% endfor %} - + {% if entity.volumeHoraireNotes is not empty %}
    {{ entity.volumeHoraireNotes|nl2br }}
    {% endif %}
    - +

    Projet professionnel

    - +
    Idée
    {{ entity.idee|chill_print_or_message('Aucune information', 'blockquote') }}
    - +
    En cours de construction
    {{ entity.enCoursConstruction|chill_print_or_message('Aucune information', 'blockquote') }}
    - +
    Validé
    {% for r in entity.valide %} @@ -75,7 +75,7 @@ {% else %}

    Aucune orientation indiquée

    {% endfor %} - + {% if entity.valideNotes is not empty %}
    {{ entity.valideNotes|nl2br }} @@ -87,17 +87,17 @@ {% endif %}
    - +

    Notes

    - + {{ entity.projetProfessionnelNote|chill_print_or_message('Aucune note', 'blockquote') }} - - + + {% endblock crud_content_view_details %} - + {% block content_view_actions_back %}
  • - + {{ 'Cancel'|trans }}
  • @@ -105,4 +105,4 @@ {% block content_view_actions_after %} {% endblock %} {% endembed %} -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Report/delete.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Report/delete.html.twig index d805dfdac..5b09e3622 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Report/delete.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Report/delete.html.twig @@ -7,7 +7,7 @@ {% embed '@ChillMain/CRUD/_delete_content.html.twig' %} {% block content_form_actions_back %}
  • - + {{ 'Cancel'|trans }}
  • diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Report/index.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Report/index.html.twig index a9d3fcba0..b8fe5105b 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Report/index.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Report/index.html.twig @@ -1,11 +1,11 @@ -{% extends '@ChillPerson/layout.html.twig' %} +{% extends '@ChillPerson/Person/layout.html.twig' %} {% set activeRouteKey = '' %} -{% block personcontent %} +{% block content %}

    Rapports pour {{ person|chill_entity_render_string }}

    - + {% if cvs is defined %}

    CV

    @@ -22,7 +22,7 @@ {% for cv in cvs %} - {{ cv.reportDate|localizeddate('short', 'none') }} + {{ cv.reportDate|format_date('short', 'none') }}
    • @@ -52,7 +52,7 @@
    {% endif %} - + {% if freins is defined %}

    Freins

    @@ -70,7 +70,7 @@ {% for frein in freins %} - {{ frein.reportDate|localizeddate('short', 'none') }} + {{ frein.reportDate|format_date('short', 'none') }} {% if frein.freinsPerso|merge(frein.freinsEmploi)|length > 0 %}
      @@ -113,9 +113,9 @@
    - + {% endif %} - + {% if immersions is defined %}

    Immersions

    @@ -133,7 +133,7 @@ {% for im in immersions %} - {{ im.debutDate|localizeddate('short', 'none') }} + {{ im.debutDate|format_date('short', 'none') }} {{ im.entreprise.name }} @@ -172,8 +172,8 @@ {% endif %} - - {% if projet_professionnels is defined %} + + {% if projet_professionnels is defined %}

    Projets professionnels

    @@ -192,7 +192,7 @@ {% for pr in projet_professionnels %} - {{ pr.reportDate|localizeddate('short', 'none') }} + {{ pr.reportDate|format_date('short', 'none') }} {% set romes = [] %} {% if pr.valide|length > 0 %} @@ -250,4 +250,4 @@ {% endif %}
    -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/Bundle/ChillJobBundle/src/Security/Authorization/CSConnectesVoter.php b/src/Bundle/ChillJobBundle/src/Security/Authorization/CSConnectesVoter.php index 6e284b631..1e1196b59 100644 --- a/src/Bundle/ChillJobBundle/src/Security/Authorization/CSConnectesVoter.php +++ b/src/Bundle/ChillJobBundle/src/Security/Authorization/CSConnectesVoter.php @@ -9,15 +9,15 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Security\Authorization; +namespace Chill\JobBundle\Security\Authorization; use Chill\MainBundle\Security\Authorization\AbstractChillVoter; use Symfony\Component\Security\Core\Authentication\Token\TokenInterface; -use Chill\ChillJobBundle\Entity\Frein; -use Chill\ChillJobBundle\Entity\CV; +use Chill\JobBundle\Entity\Frein; +use Chill\JobBundle\Entity\CV; use Symfony\Component\Security\Core\Authorization\Voter\VoterInterface; -use Chill\ChillJobBundle\Entity\Immersion; -use Chill\ChillJobBundle\Entity\ProjetProfessionnel; +use Chill\JobBundle\Entity\Immersion; +use Chill\JobBundle\Entity\ProjetProfessionnel; use Chill\MainBundle\Security\ProvideRoleHierarchyInterface; use Chill\PersonBundle\Entity\Person; use Chill\MainBundle\Security\Authorization\AuthorizationHelper; @@ -103,7 +103,7 @@ class CSConnectesVoter extends AbstractChillVoter implements ProvideRoleHierarch return true; } - public function getRoles() + public function getRoles(): array { return self::ALL; } diff --git a/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php b/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php index 0949bcfc9..d66507ba5 100644 --- a/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php +++ b/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php @@ -9,7 +9,7 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Security\Authorization; +namespace Chill\JobBundle\Security\Authorization; use Chill\MainBundle\Entity\Center; use Chill\MainBundle\Entity\User; @@ -89,7 +89,7 @@ class ExportsVoter extends AbstractChillVoter implements ProvideRoleHierarchyInt * * @return array where keys are the hierarchy, and values an array of roles: `[ 'title' => [ 'CHILL_FOO_SEE', 'CHILL_FOO_UPDATE' ] ]` */ - public function getRolesWithHierarchy() + public function getRolesWithHierarchy(): array { return ['CSConnectes' => $this->getRoles()]; } @@ -99,7 +99,7 @@ class ExportsVoter extends AbstractChillVoter implements ProvideRoleHierarchyInt * * @return string[] array of roles (as string) */ - public function getRoles() + public function getRoles(): array { return $this->getAttributes(); } @@ -109,7 +109,7 @@ class ExportsVoter extends AbstractChillVoter implements ProvideRoleHierarchyInt * * @return string[] array of roles without scopes */ - public function getRolesWithoutScope() + public function getRolesWithoutScope(): array { return $this->getAttributes(); } diff --git a/src/Bundle/ChillJobBundle/src/Tests/Controller/CSPersonControllerTest.php b/src/Bundle/ChillJobBundle/src/Tests/Controller/CSPersonControllerTest.php index 4e983c8b9..a6b19e648 100644 --- a/src/Bundle/ChillJobBundle/src/Tests/Controller/CSPersonControllerTest.php +++ b/src/Bundle/ChillJobBundle/src/Tests/Controller/CSPersonControllerTest.php @@ -9,7 +9,7 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Tests\Controller; +namespace Chill\JobBundle\Tests\Controller; use Symfony\Bundle\FrameworkBundle\Test\WebTestCase; diff --git a/src/Bundle/ChillJobBundle/src/Tests/Controller/CSReportControllerTest.php b/src/Bundle/ChillJobBundle/src/Tests/Controller/CSReportControllerTest.php index 091597b24..fd81b8e99 100644 --- a/src/Bundle/ChillJobBundle/src/Tests/Controller/CSReportControllerTest.php +++ b/src/Bundle/ChillJobBundle/src/Tests/Controller/CSReportControllerTest.php @@ -9,7 +9,7 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\Tests\Controller; +namespace Chill\JobBundle\Tests\Controller; use Symfony\Bundle\FrameworkBundle\Test\WebTestCase; diff --git a/src/Bundle/ChillJobBundle/src/ThirdParty/EntrepriseType.php b/src/Bundle/ChillJobBundle/src/ThirdParty/EntrepriseType.php index 9c9b8dbd9..347d9c7d9 100644 --- a/src/Bundle/ChillJobBundle/src/ThirdParty/EntrepriseType.php +++ b/src/Bundle/ChillJobBundle/src/ThirdParty/EntrepriseType.php @@ -9,7 +9,7 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\ThirdParty; +namespace Chill\JobBundle\ThirdParty; use Chill\ThirdPartyBundle\ThirdPartyType\ThirdPartyTypeProviderInterface; diff --git a/src/Bundle/ChillJobBundle/src/ThirdParty/PrescripteurType.php b/src/Bundle/ChillJobBundle/src/ThirdParty/PrescripteurType.php index f850b5c12..a53c16547 100644 --- a/src/Bundle/ChillJobBundle/src/ThirdParty/PrescripteurType.php +++ b/src/Bundle/ChillJobBundle/src/ThirdParty/PrescripteurType.php @@ -9,7 +9,7 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\ChillJobBundle\ThirdParty; +namespace Chill\JobBundle\ThirdParty; use Chill\ThirdPartyBundle\ThirdPartyType\ThirdPartyTypeProviderInterface; diff --git a/src/Bundle/ChillMainBundle/Entity/Address.php b/src/Bundle/ChillMainBundle/Entity/Address.php index cd2917798..72ad60ace 100644 --- a/src/Bundle/ChillMainBundle/Entity/Address.php +++ b/src/Bundle/ChillMainBundle/Entity/Address.php @@ -446,7 +446,7 @@ class Address implements TrackCreationInterface, TrackUpdateInterface return $this; } - public function setLinkedToThirdParty($linkedToThirdParty): self + public function setLinkedToThirdParty(?\Chill\ThirdPartyBundle\Entity\ThirdParty $linkedToThirdParty): self { $this->linkedToThirdParty = $linkedToThirdParty; diff --git a/src/Bundle/ChillMainBundle/Entity/Center.php b/src/Bundle/ChillMainBundle/Entity/Center.php index 61a026b5e..e898fea8c 100644 --- a/src/Bundle/ChillMainBundle/Entity/Center.php +++ b/src/Bundle/ChillMainBundle/Entity/Center.php @@ -111,7 +111,7 @@ class Center implements HasCenterInterface, \Stringable /** * @return $this */ - public function setName($name) + public function setName(string $name) { $this->name = $name; diff --git a/src/Bundle/ChillMainBundle/Entity/Embeddable/CommentEmbeddable.php b/src/Bundle/ChillMainBundle/Entity/Embeddable/CommentEmbeddable.php index aec4e3dde..ee90fb88b 100644 --- a/src/Bundle/ChillMainBundle/Entity/Embeddable/CommentEmbeddable.php +++ b/src/Bundle/ChillMainBundle/Entity/Embeddable/CommentEmbeddable.php @@ -64,7 +64,7 @@ class CommentEmbeddable /** * @param int $userId */ - public function setUserId($userId) + public function setUserId(?int $userId) { $this->userId = $userId; } diff --git a/src/Bundle/ChillMainBundle/Entity/Embeddable/PrivateCommentEmbeddable.php b/src/Bundle/ChillMainBundle/Entity/Embeddable/PrivateCommentEmbeddable.php index 6e5168c63..0c2af22f7 100644 --- a/src/Bundle/ChillMainBundle/Entity/Embeddable/PrivateCommentEmbeddable.php +++ b/src/Bundle/ChillMainBundle/Entity/Embeddable/PrivateCommentEmbeddable.php @@ -57,7 +57,7 @@ class PrivateCommentEmbeddable return $this; } - public function setComments($comments) + public function setComments(array $comments) { $this->comments = $comments; diff --git a/src/Bundle/ChillMainBundle/Entity/Language.php b/src/Bundle/ChillMainBundle/Entity/Language.php index ae7cb865f..079b31d22 100644 --- a/src/Bundle/ChillMainBundle/Entity/Language.php +++ b/src/Bundle/ChillMainBundle/Entity/Language.php @@ -63,7 +63,7 @@ class Language * * @return Language */ - public function setId($id) + public function setId(?string $id) { $this->id = $id; @@ -77,7 +77,7 @@ class Language * * @return Language */ - public function setName($name) + public function setName(array $name) { $this->name = $name; diff --git a/src/Bundle/ChillMainBundle/Entity/PermissionsGroup.php b/src/Bundle/ChillMainBundle/Entity/PermissionsGroup.php index 480270e74..a52b3f427 100644 --- a/src/Bundle/ChillMainBundle/Entity/PermissionsGroup.php +++ b/src/Bundle/ChillMainBundle/Entity/PermissionsGroup.php @@ -137,7 +137,7 @@ class PermissionsGroup /** * @return $this */ - public function setName($name) + public function setName(string $name) { $this->name = $name; diff --git a/src/Bundle/ChillMainBundle/Entity/PostalCode.php b/src/Bundle/ChillMainBundle/Entity/PostalCode.php index 3449e0184..ed81a2b4b 100644 --- a/src/Bundle/ChillMainBundle/Entity/PostalCode.php +++ b/src/Bundle/ChillMainBundle/Entity/PostalCode.php @@ -161,7 +161,7 @@ class PostalCode implements TrackUpdateInterface, TrackCreationInterface * * @return PostalCode */ - public function setCode($code) + public function setCode(?string $code) { $this->code = $code; @@ -187,7 +187,7 @@ class PostalCode implements TrackUpdateInterface, TrackCreationInterface * * @return PostalCode */ - public function setName($name) + public function setName(?string $name) { $this->name = $name; @@ -197,11 +197,10 @@ class PostalCode implements TrackUpdateInterface, TrackCreationInterface /** * Set origin. * - * @param int $origin * * @return PostalCode */ - public function setOrigin($origin) + public function setOrigin(int $origin) { $this->origin = $origin; diff --git a/src/Bundle/ChillMainBundle/Entity/User.php b/src/Bundle/ChillMainBundle/Entity/User.php index d00b241b2..22b1404e7 100644 --- a/src/Bundle/ChillMainBundle/Entity/User.php +++ b/src/Bundle/ChillMainBundle/Entity/User.php @@ -432,7 +432,7 @@ class User implements UserInterface, \Stringable, PasswordAuthenticatedUserInter /** * @return $this */ - public function setEmail($email) + public function setEmail(?string $email) { $this->email = $email; @@ -442,7 +442,7 @@ class User implements UserInterface, \Stringable, PasswordAuthenticatedUserInter /** * @return $this */ - public function setEmailCanonical($emailCanonical) + public function setEmailCanonical(?string $emailCanonical) { $this->emailCanonical = $emailCanonical; @@ -516,7 +516,7 @@ class User implements UserInterface, \Stringable, PasswordAuthenticatedUserInter /** * @return $this */ - public function setPassword($password) + public function setPassword(string $password) { $this->password = $password; @@ -526,7 +526,7 @@ class User implements UserInterface, \Stringable, PasswordAuthenticatedUserInter /** * @return $this */ - public function setSalt($salt) + public function setSalt(?string $salt) { $this->salt = $salt; @@ -588,7 +588,7 @@ class User implements UserInterface, \Stringable, PasswordAuthenticatedUserInter /** * @return $this */ - public function setUsernameCanonical($usernameCanonical) + public function setUsernameCanonical(?string $usernameCanonical) { $this->usernameCanonical = $usernameCanonical; diff --git a/src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php b/src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php index 4cfab08bb..9ca1bdc0b 100644 --- a/src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php +++ b/src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php @@ -202,7 +202,7 @@ class AuthorizationHelper implements AuthorizationHelperInterface * * @return bool true if the user has access */ - public function userHasAccess(User $user, mixed $entity, string $attribute) + public function userHasAccess(UserInterface $user, mixed $entity, string $attribute): bool { $centers = $this->centerResolverManager->resolveCenters($entity); diff --git a/src/Bundle/ChillMainBundle/Templating/Listing/FilterOrderHelper.php b/src/Bundle/ChillMainBundle/Templating/Listing/FilterOrderHelper.php index 6421ffcba..48a25670d 100644 --- a/src/Bundle/ChillMainBundle/Templating/Listing/FilterOrderHelper.php +++ b/src/Bundle/ChillMainBundle/Templating/Listing/FilterOrderHelper.php @@ -205,7 +205,7 @@ final class FilterOrderHelper return null !== $this->searchBoxFields; } - public function setSearchBox($searchBoxFields = null): self + public function setSearchBox(?array $searchBoxFields = null): self { $this->searchBoxFields = $searchBoxFields; diff --git a/src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/ClosingMotive.php b/src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/ClosingMotive.php index 4c6e21fd7..6cfd17f26 100644 --- a/src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/ClosingMotive.php +++ b/src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/ClosingMotive.php @@ -182,11 +182,10 @@ class ClosingMotive /** * Set name. * - * @param array $name * * @return ClosingMotive */ - public function setName($name) + public function setName(array $name) { $this->name = $name; diff --git a/src/Bundle/ChillPersonBundle/Entity/Person.php b/src/Bundle/ChillPersonBundle/Entity/Person.php index 0a9bf9612..6c5abf00a 100644 --- a/src/Bundle/ChillPersonBundle/Entity/Person.php +++ b/src/Bundle/ChillPersonBundle/Entity/Person.php @@ -1412,7 +1412,7 @@ class Person implements HasCenterInterface, TrackCreationInterface, TrackUpdateI /** * @param \DateTime $birthdate */ - public function setBirthdate($birthdate): self + public function setBirthdate(?\DateTime $birthdate): self { $this->birthdate = $birthdate; @@ -1527,7 +1527,7 @@ class Person implements HasCenterInterface, TrackCreationInterface, TrackUpdateI return $this; } - public function setFullnameCanonical($fullnameCanonical): self + public function setFullnameCanonical(?string $fullnameCanonical): self { $this->fullnameCanonical = $fullnameCanonical; diff --git a/src/Bundle/ChillPersonBundle/Entity/PersonNotDuplicate.php b/src/Bundle/ChillPersonBundle/Entity/PersonNotDuplicate.php index 7b562d5f3..323752e54 100644 --- a/src/Bundle/ChillPersonBundle/Entity/PersonNotDuplicate.php +++ b/src/Bundle/ChillPersonBundle/Entity/PersonNotDuplicate.php @@ -76,7 +76,7 @@ class PersonNotDuplicate $this->date = $date; } - public function setId($id) + public function setId(?int $id) { $this->id = $id; } diff --git a/src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php b/src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php index 37b7ca7d7..794dcf0d7 100644 --- a/src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php +++ b/src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php @@ -39,11 +39,11 @@ class ListPerson implements ListInterface, GroupedExportInterface private readonly bool $filterStatsByCenters; public function __construct( - private readonly CustomFieldProvider $customFieldProvider, - private readonly ListPersonHelper $listPersonHelper, - private readonly EntityManagerInterface $entityManager, + private readonly CustomFieldProvider $customFieldProvider, + private readonly ListPersonHelper $listPersonHelper, + protected readonly EntityManagerInterface $entityManager, private readonly TranslatableStringHelper $translatableStringHelper, - ParameterBagInterface $parameterBag, + ParameterBagInterface $parameterBag, ) { $this->filterStatsByCenters = $parameterBag->get('chill_main')['acl']['filter_stats_by_center']; } diff --git a/src/Bundle/ChillReportBundle/Entity/Report.php b/src/Bundle/ChillReportBundle/Entity/Report.php index 367f784fa..a1579b2a1 100644 --- a/src/Bundle/ChillReportBundle/Entity/Report.php +++ b/src/Bundle/ChillReportBundle/Entity/Report.php @@ -158,7 +158,7 @@ class Report implements HasCenterInterface, HasScopeInterface * * @return Report */ - public function setDate($date) + public function setDate(?\DateTime $date) { $this->date = $date; diff --git a/src/Bundle/ChillTaskBundle/Entity/RecurringTask.php b/src/Bundle/ChillTaskBundle/Entity/RecurringTask.php index 007a9834d..f63912b32 100644 --- a/src/Bundle/ChillTaskBundle/Entity/RecurringTask.php +++ b/src/Bundle/ChillTaskBundle/Entity/RecurringTask.php @@ -116,7 +116,7 @@ class RecurringTask extends AbstractTask * * @return RecurringTask */ - public function setFirstOccurenceEndDate($firstOccurenceEndDate) + public function setFirstOccurenceEndDate(?\DateTime $firstOccurenceEndDate) { $this->firstOccurenceEndDate = $firstOccurenceEndDate; @@ -130,7 +130,7 @@ class RecurringTask extends AbstractTask * * @return RecurringTask */ - public function setLastOccurenceEndDate($lastOccurenceEndDate) + public function setLastOccurenceEndDate(?\DateTime $lastOccurenceEndDate) { $this->lastOccurenceEndDate = $lastOccurenceEndDate; @@ -144,7 +144,7 @@ class RecurringTask extends AbstractTask * * @return RecurringTask */ - public function setOccurenceFrequency($occurenceFrequency) + public function setOccurenceFrequency(?string $occurenceFrequency) { $this->occurenceFrequency = $occurenceFrequency; diff --git a/src/Bundle/ChillTaskBundle/Entity/SingleTask.php b/src/Bundle/ChillTaskBundle/Entity/SingleTask.php index a03da4beb..c8427b725 100644 --- a/src/Bundle/ChillTaskBundle/Entity/SingleTask.php +++ b/src/Bundle/ChillTaskBundle/Entity/SingleTask.php @@ -140,7 +140,7 @@ class SingleTask extends AbstractTask * * @return SingleTask */ - public function setEndDate($endDate) + public function setEndDate(?\DateTime $endDate) { $this->endDate = $endDate; @@ -159,7 +159,7 @@ class SingleTask extends AbstractTask * * @return SingleTask */ - public function setStartDate($startDate) + public function setStartDate(?\DateTime $startDate) { $this->startDate = $startDate; diff --git a/src/Bundle/ChillTaskBundle/Entity/Task/AbstractTaskPlaceEvent.php b/src/Bundle/ChillTaskBundle/Entity/Task/AbstractTaskPlaceEvent.php index e2d763585..92de2c496 100644 --- a/src/Bundle/ChillTaskBundle/Entity/Task/AbstractTaskPlaceEvent.php +++ b/src/Bundle/ChillTaskBundle/Entity/Task/AbstractTaskPlaceEvent.php @@ -105,11 +105,10 @@ class AbstractTaskPlaceEvent /** * Set transition. * - * @param string $transition * * @return AbstractTaskPlaceEvent */ - public function setTransition($transition) + public function setTransition(string $transition) { $this->transition = $transition; From dcc285e976642e269f672fc4bb4be94ca281a797 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Tue, 23 Apr 2024 20:52:22 +0200 Subject: [PATCH 016/136] fix phpstan errors level 2 --- phpstan.neon.dist | 2 +- .../src/ApiHelper/ApiWrapper.php | 2 +- .../src/ApiHelper/ProcessRequestTrait.php | 2 +- .../src/Controller/CSCrudReportController.php | 2 -- .../src/Controller/CSPersonController.php | 4 ++-- .../src/Controller/CSReportController.php | 2 +- .../ChillJobBundle/src/Entity/CSPerson.php | 3 +-- .../ChillJobBundle/src/Entity/Immersion.php | 2 +- .../src/Entity/ProjetProfessionnel.php | 5 ----- .../ChillJobBundle/src/Entity/Rome/Metier.php | 2 +- .../ChillJobBundle/src/Export/ListCSPerson.php | 17 +++++++---------- src/Bundle/ChillJobBundle/src/Export/ListCV.php | 10 ++++------ .../ChillJobBundle/src/Export/ListFrein.php | 16 ++++++---------- .../src/Export/ListProjetProfessionnel.php | 15 ++++++--------- .../src/Form/CSPersonDispositifsType.php | 4 ++-- .../src/Form/CSPersonPersonalSituationType.php | 4 ++-- .../RomeAppellationChoiceLoader.php | 15 +++++++++------ .../ChillJobBundle/src/Form/ImmersionType.php | 4 ++-- .../Security/Authorization/CSConnectesVoter.php | 2 +- .../src/Security/Authorization/ExportsVoter.php | 2 +- .../Controller/EntityPersonCRUDController.php | 2 +- 21 files changed, 50 insertions(+), 67 deletions(-) diff --git a/phpstan.neon.dist b/phpstan.neon.dist index e09bb5081..15421cde9 100644 --- a/phpstan.neon.dist +++ b/phpstan.neon.dist @@ -1,5 +1,5 @@ parameters: - level: 5 + level: 2 paths: - src/ - utils/ diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php index 35879fb2f..0e75e6e79 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php @@ -71,7 +71,7 @@ class ApiWrapper $data = \json_decode((string) $response->getBody()); // set the key with an expiry time - $this->redis->setEx( + $this->redis->setex( $cacheKey, $data->expires_in - 2, \serialize($data) diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ProcessRequestTrait.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ProcessRequestTrait.php index b7078861c..7af5cb32d 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ProcessRequestTrait.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ProcessRequestTrait.php @@ -67,7 +67,7 @@ trait ProcessRequestTrait && count($e->getResponse()->getHeader('Retry-After')) > 0) { if ($counter > 5) { $logger->error('too much 429 response', [ - 'request' => Psr7\str($e->getRequest()), + 'request' => Psr7\get($e->getRequest()), ]); throw $e; diff --git a/src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php b/src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php index 3e6abfebb..1d26e9089 100644 --- a/src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php +++ b/src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php @@ -22,8 +22,6 @@ use Symfony\Component\HttpFoundation\Response; */ class CSCrudReportController extends EntityPersonCRUDController { - public function __construct(private readonly \Doctrine\Persistence\ManagerRegistry $managerRegistry) {} - protected function onBeforeRedirectAfterSubmission(string $action, $entity, FormInterface $form, Request $request): ?Response { $next = $request->request->get('submit', 'save-and-close'); diff --git a/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php b/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php index a85188216..fd32ac8d8 100644 --- a/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php +++ b/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php @@ -102,7 +102,7 @@ class CSPersonController extends OneToOneEntityPersonCRUDController }; } - protected function getTemplateFor($action, $entity, Request $request) + protected function getTemplateFor($action, $entity, Request $request): string { switch ($action) { case 'ps_situation_edit': @@ -114,7 +114,7 @@ class CSPersonController extends OneToOneEntityPersonCRUDController case 'dispositifs_view': return '@ChillJob/CSPerson/dispositifs_view.html.twig'; default: - parent::getTemplateFor($action, $entity, $request); + return parent::getTemplateFor($action, $entity, $request); } } diff --git a/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php b/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php index c3dbf472f..6b7745cc4 100644 --- a/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php +++ b/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php @@ -67,7 +67,7 @@ class CSReportController extends AbstractController }; $results[$key] = $this->managerRegistry->getManager() ->getRepository($className) - ->findByPerson($person, $ordering); + ->findBy(['person' => $person], $ordering); } return $results; diff --git a/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php b/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php index 65f7c9b3b..d9f2e7978 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php @@ -544,7 +544,6 @@ class CSPerson /** * Get niveauMaitriseLangue. * - * @return json */ public function getNiveauMaitriseLangue() { @@ -562,7 +561,7 @@ class CSPerson return; } - if (\in_array('aucun', $this->getNiveauMaitriseLangue())) { + if (\in_array('aucun', $this->getNiveauMaitriseLangue(), true)) { if (count($this->getNiveauMaitriseLangue()) > 1) { $context->buildViolation("Si \"Aucun\" est choisi dans la liste, il n'est " . "pas possible de cocher d'autres indications") diff --git a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php index f789bbad7..e952882e7 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php @@ -791,7 +791,7 @@ class Immersion implements \Stringable */ public function setNoteImmersion($note) { - $this->noteImmersion = (string) $note; + $this->noteImmersion = $note; return $this; } diff --git a/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php b/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php index 2c6cb039b..e912a5daf 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php +++ b/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php @@ -156,7 +156,6 @@ class ProjetProfessionnel implements \Stringable /** * Set typeContrat. * - * @param json|null $typeContrat * * @return ProjetProfessionnel */ @@ -170,7 +169,6 @@ class ProjetProfessionnel implements \Stringable /** * Get typeContrat. * - * @return json|null */ public function getTypeContrat() { @@ -180,7 +178,6 @@ class ProjetProfessionnel implements \Stringable /** * Set typeContratNotes. * - * * @return ProjetProfessionnel */ public function setTypeContratNotes(?string $typeContratNotes = null) @@ -203,7 +200,6 @@ class ProjetProfessionnel implements \Stringable /** * Set volumeHoraire. * - * @param json|null $volumeHoraire * * @return ProjetProfessionnel */ @@ -217,7 +213,6 @@ class ProjetProfessionnel implements \Stringable /** * Get volumeHoraire. * - * @return json|null */ public function getVolumeHoraire() { diff --git a/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php b/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php index 49b65734e..eeaaff951 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php @@ -41,7 +41,7 @@ class Metier public function __construct() { $this->appellations = new ArrayCollection(); - $this->appellation = new ArrayCollection(); +// $this->appellation = new ArrayCollection(); } /** diff --git a/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php b/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php index 7a88a6452..e8de7702c 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php @@ -15,8 +15,10 @@ use Chill\MainBundle\Export\ExportElementValidatedInterface; use Chill\MainBundle\Export\ListInterface; use Chill\PersonBundle\Export\Export\ListPerson; use Chill\JobBundle\Entity\CSPerson; +use Chill\PersonBundle\Export\Helper\ListPersonHelper; use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\Query; +use Symfony\Component\DependencyInjection\ParameterBag\ParameterBagInterface; use Symfony\Component\Form\Extension\Core\Type\ChoiceType; use Symfony\Component\Form\FormBuilderInterface; use Chill\MainBundle\Templating\TranslatableStringHelper; @@ -61,11 +63,12 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal public function __construct( EntityManagerInterface $em, - TranslatorInterface $translator, + ListPersonHelper $listPersonHelper, TranslatableStringHelper $translatableStringHelper, - CustomFieldProvider $customFieldProvider + CustomFieldProvider $customFieldProvider, + ParameterBagInterface $parameterBag ) { - parent::__construct($em, $translator, $translatableStringHelper, $customFieldProvider); + parent::__construct($customFieldProvider, $listPersonHelper, $em, $translatableStringHelper, $parameterBag); } /** @@ -200,14 +203,8 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal { $csperson = self::CSPERSON; - /** - * @var array $row each row exported - */ $results = []; foreach ($rows as $row) { - /** - * @var string $key - */ $res = []; foreach ($row as $key => $value) { switch ($key) { @@ -359,7 +356,7 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal $rsm = new Query\ResultSetMapping(); foreach ($this->allFields() as $name => $type) { - if ($data['fields'][$name]) { + if (null !== $data['fields'][$name]) { $rsm->addScalarResult(strtolower($name), $name, $type); } } diff --git a/src/Bundle/ChillJobBundle/src/Export/ListCV.php b/src/Bundle/ChillJobBundle/src/Export/ListCV.php index 084f9ead3..a0afd0aa8 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListCV.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListCV.php @@ -191,12 +191,10 @@ class ListCV implements ListInterface, ExportElementValidatedInterface /** * Return the required Role to execute the Export. - * - * @return Role */ public function requiredRole(): string { - return new Role(ExportsVoter::EXPORT); + return ExportsVoter::EXPORT; } /** @@ -255,7 +253,7 @@ class ListCV implements ListInterface, ExportElementValidatedInterface $rsm = new Query\ResultSetMapping(); foreach (self::FIELDS as $name => $type) { - if ($data['fields'][$name]) { + if (null !== $data['fields'][$name]) { $rsm->addScalarResult($name, $name, $type); } } @@ -325,7 +323,7 @@ class ListCV implements ListInterface, ExportElementValidatedInterface if ('_header' === $value) { return $key; } - if (empty($value)) { + if (null === $value || '' === $value) { return ''; } @@ -343,7 +341,7 @@ class ListCV implements ListInterface, ExportElementValidatedInterface if ('_header' === $value) { return $key; } - if (empty($value)) { + if (null === $value || '' === $value) { return ''; } diff --git a/src/Bundle/ChillJobBundle/src/Export/ListFrein.php b/src/Bundle/ChillJobBundle/src/Export/ListFrein.php index e965bc30c..cb72ce6d7 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListFrein.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListFrein.php @@ -205,11 +205,10 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface /** * Return the required Role to execute the Export. * - * @return Role */ public function requiredRole(): string { - return new Role(ExportsVoter::EXPORT); + return ExportsVoter::EXPORT; } /** @@ -290,9 +289,6 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface { $freins = self::FREINS; - /** - * @var array $row each row exported - */ $results = []; foreach ($rows as $row) { /** @@ -337,7 +333,7 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface * @param QueryBuilder|\Doctrine\ORM\NativeQuery $qb * @param mixed[] $data the data from the export's form (added by self::buildForm) * - * @return mixed[]|\closure an array of results + * @return mixed[]|\Closure an array of results */ public function getResult($qb, $data) { @@ -351,7 +347,7 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface $rsm = new Query\ResultSetMapping(); foreach (self::FIELDS as $name => $type) { - if ($data['fields'][$name]) { + if (null !== $data['fields'][$name]) { $rsm->addScalarResult($name, $name, $type); } } @@ -423,7 +419,7 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface if ('_header' === $value) { return $key; } - if (empty($value)) { + if (null === $value || '' === $value) { return ''; } @@ -441,7 +437,7 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface if ('_header' === $value) { return $key; } - if (empty($value)) { + if (null === $value || '' === $value) { return ''; } @@ -451,7 +447,7 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface if ('_header' === $value) { return $key; } - if (empty($value)) { + if (null === $value || '' === $value) { return ''; } diff --git a/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php b/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php index 62b4f9e56..2b72aaec3 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php @@ -211,11 +211,10 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn /** * Return the required Role to execute the Export. * - * @return Role */ public function requiredRole(): string { - return new Role(ExportsVoter::EXPORT); + return ExportsVoter::EXPORT; } /** @@ -315,10 +314,8 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn { $projet_professionnel = self::PPROF; - /** - * @var array $row each row exported - */ $results = []; + foreach ($rows as $row) { /** * @var string $key @@ -388,7 +385,7 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn $rsm = new Query\ResultSetMapping(); foreach (self::FIELDS as $name => $type) { - if ($data['fields'][$name]) { + if (null !== $data['fields'][$name]) { $rsm->addScalarResult($name, $name, $type); } } @@ -460,7 +457,7 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn if ('_header' === $value) { return $key; } - if (empty($value)) { + if (null === $value || '' === $value) { return ''; } @@ -488,7 +485,7 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn if ('_header' === $value) { return $key; } - if (empty($value)) { + if (null === $value || '' === $value) { return ''; } @@ -498,7 +495,7 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn if ('_header' === $value) { return $key; } - if (empty($value)) { + if (null === $value || '' === $value) { return ''; } diff --git a/src/Bundle/ChillJobBundle/src/Form/CSPersonDispositifsType.php b/src/Bundle/ChillJobBundle/src/Form/CSPersonDispositifsType.php index f5147c43f..8ad7e4cfd 100644 --- a/src/Bundle/ChillJobBundle/src/Form/CSPersonDispositifsType.php +++ b/src/Bundle/ChillJobBundle/src/Form/CSPersonDispositifsType.php @@ -11,6 +11,7 @@ declare(strict_types=1); namespace Chill\JobBundle\Form; +use Chill\ThirdPartyBundle\Form\Type\PickThirdpartyDynamicType; use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\FormBuilderInterface; use Symfony\Component\OptionsResolver\OptionsResolver; @@ -19,7 +20,6 @@ use Symfony\Component\Form\Extension\Core\Type\TextType; use Symfony\Component\Form\Extension\Core\Type\TextareaType; use Symfony\Component\Form\Extension\Core\Type\ChoiceType; use Chill\MainBundle\Form\Type\ChillDateType; -use Chill\ThirdPartyBundle\Form\Type\PickThirdPartyType; class CSPersonDispositifsType extends AbstractType { @@ -90,7 +90,7 @@ class CSPersonDispositifsType extends AbstractType 'label' => 'Code "Ma démarche FSE"', 'required' => false, ]) - ->add('prescripteur', PickThirdPartyType::class, [ + ->add('prescripteur', PickThirdpartyDynamicType::class, [ 'required' => false, 'types' => ['prescripteur'], 'label' => 'Prescripteur', diff --git a/src/Bundle/ChillJobBundle/src/Form/CSPersonPersonalSituationType.php b/src/Bundle/ChillJobBundle/src/Form/CSPersonPersonalSituationType.php index be71025d9..08c8c112f 100644 --- a/src/Bundle/ChillJobBundle/src/Form/CSPersonPersonalSituationType.php +++ b/src/Bundle/ChillJobBundle/src/Form/CSPersonPersonalSituationType.php @@ -11,6 +11,7 @@ declare(strict_types=1); namespace Chill\JobBundle\Form; +use Chill\ThirdPartyBundle\Form\Type\PickThirdpartyDynamicType; use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\FormBuilderInterface; use Symfony\Component\OptionsResolver\OptionsResolver; @@ -19,7 +20,6 @@ use Symfony\Component\Form\Extension\Core\Type\TextType; use Symfony\Component\Form\Extension\Core\Type\TextareaType; use Symfony\Component\Form\Extension\Core\Type\ChoiceType; use Chill\MainBundle\Form\Type\ChillDateType; -use Chill\ThirdPartyBundle\Form\Type\PickThirdPartyType; use Symfony\Component\Form\Extension\Core\Type\IntegerType; use Chill\DocStoreBundle\Form\StoredObjectType; use Symfony\Component\Form\Extension\Core\Type\MoneyType; @@ -148,7 +148,7 @@ class CSPersonPersonalSituationType extends AbstractType 'choices' => \array_combine(CSPerson::HANDICAP_RECOMMANDATIONS, CSPerson::HANDICAP_RECOMMANDATIONS), 'choice_label' => fn ($k) => 'handicap_recommandation.'.$k, ]) - ->add('handicapAccompagnement', PickThirdPartyType::class, [ + ->add('handicapAccompagnement', PickThirdpartyDynamicType::class, [ 'center' => $options['center'], 'types' => ['prescripteur'], 'required' => false, diff --git a/src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php b/src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php index 4a7486ddd..0952991e4 100644 --- a/src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php +++ b/src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php @@ -11,12 +11,12 @@ declare(strict_types=1); namespace Chill\JobBundle\Form\ChoiceLoader; +use Chill\FranceTravailApiBundle\ApiHelper\PartenaireRomeAppellation; use Symfony\Component\Form\ChoiceList\Loader\ChoiceLoaderInterface; use Symfony\Component\Form\ChoiceList\ChoiceListInterface; use Symfony\Component\Form\ChoiceList\ArrayChoiceList; use Chill\JobBundle\Entity\Rome\Appellation; use Doctrine\ORM\EntityManagerInterface; -use Chill\PoleEmploiApiBundle\ApiHelper\PartenaireRomeAppellation; use Chill\JobBundle\Entity\Rome\Metier; use Symfony\Component\Validator\Validator\ValidatorInterface; @@ -72,25 +72,26 @@ class RomeAppellationChoiceLoader implements ChoiceLoaderInterface public function loadChoicesForValues($values, $value = null) { $choices = []; + $code = ''; foreach ($values as $v) { - if (empty($v)) { + if (null === $v || '' === $v) { continue; } // start with "original-" ? then we load from api if (str_starts_with($v, 'original-')) { $code = \substr($v, \strlen('original-')); - $appellation = $this->appellationRepository->findOneByCode($code); + $appellation = $this->appellationRepository->findOneBy(['code' => $code]); } else { $id = $v; $appellation = $this->appellationRepository->find($id); } - if (null === $appellation) { + if (null === $appellation && '' !== $code) { $def = $this->apiAppellation->getAppellation($code); $metier = $this->em->getRepository(Metier::class) - ->findOneByCode($def->metier->code) + ->findOneBy(['code' => $def->metier->code]) ; if (null === $metier) { @@ -108,7 +109,7 @@ class RomeAppellationChoiceLoader implements ChoiceLoaderInterface ->setMetier($metier) ; - if ($this->validator->validate($appellation) && $this->validator->validate($metier)) { + if ([] === $this->validator->validate($appellation) && [] === $this->validator->validate($metier)) { $this->em->persist($appellation); } } @@ -123,6 +124,8 @@ class RomeAppellationChoiceLoader implements ChoiceLoaderInterface public function loadValuesForChoices(array $choices, $value = null) { + $values = []; + foreach ($choices as $choice) { if (null === $choice) { $values[] = null; diff --git a/src/Bundle/ChillJobBundle/src/Form/ImmersionType.php b/src/Bundle/ChillJobBundle/src/Form/ImmersionType.php index 96bc1a1a6..833143deb 100644 --- a/src/Bundle/ChillJobBundle/src/Form/ImmersionType.php +++ b/src/Bundle/ChillJobBundle/src/Form/ImmersionType.php @@ -11,13 +11,13 @@ declare(strict_types=1); namespace Chill\JobBundle\Form; +use Chill\ThirdPartyBundle\Form\Type\PickThirdpartyDynamicType; use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\FormBuilderInterface; use Symfony\Component\OptionsResolver\OptionsResolver; use Chill\MainBundle\Form\Type\ChillDateType; use Symfony\Component\Form\Extension\Core\Type\TextType; use Symfony\Component\Form\Extension\Core\Type\TextareaType; -use Chill\ThirdPartyBundle\Form\Type\PickThirdPartyType; use Symfony\Component\Form\Extension\Core\Type\EmailType; use Chill\MainBundle\Form\Type\DateIntervalType; use Symfony\Component\Form\Extension\Core\Type\ChoiceType; @@ -30,7 +30,7 @@ class ImmersionType extends AbstractType { if ('immersion' === $options['step']) { $builder - ->add('entreprise', PickThirdPartyType::class, [ + ->add('entreprise', PickThirdpartyDynamicType::class, [ 'center' => $options['center'], 'types' => ['entreprise'], 'label' => "Identité de l'entreprise", diff --git a/src/Bundle/ChillJobBundle/src/Security/Authorization/CSConnectesVoter.php b/src/Bundle/ChillJobBundle/src/Security/Authorization/CSConnectesVoter.php index 1e1196b59..94f800c7f 100644 --- a/src/Bundle/ChillJobBundle/src/Security/Authorization/CSConnectesVoter.php +++ b/src/Bundle/ChillJobBundle/src/Security/Authorization/CSConnectesVoter.php @@ -52,7 +52,7 @@ class CSConnectesVoter extends AbstractChillVoter implements ProvideRoleHierarch protected function supports($attribute, $subject) { - if (!\in_array($attribute, self::ALL)) { + if (!\in_array($attribute, self::ALL, true)) { return false; } diff --git a/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php b/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php index d66507ba5..3066eda97 100644 --- a/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php +++ b/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php @@ -68,7 +68,7 @@ class ExportsVoter extends AbstractChillVoter implements ProvideRoleHierarchyInt return false; } - $centers = $this->authorizationHelper->getReachableCenters($user, new Role($attribute)); + $centers = $this->authorizationHelper->getReachableCenters($user, $attribute); if (null === $subject) { return count($centers) > 0; diff --git a/src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php b/src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php index b2d9d5f29..6980e84b1 100644 --- a/src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php +++ b/src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php @@ -23,7 +23,7 @@ use Symfony\Component\HttpFoundation\Response; */ class EntityPersonCRUDController extends CRUDController { - public function __construct(private readonly \Doctrine\Persistence\ManagerRegistry $managerRegistry) {} + public function __construct(protected readonly \Doctrine\Persistence\ManagerRegistry $managerRegistry) {} /** * Override the base method to add a filtering step to a person. From b1082f6a556e9acfa18844e0d01513a0f62dd2ad Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Tue, 23 Apr 2024 21:03:42 +0200 Subject: [PATCH 017/136] fix phpstan errors level 3 --- phpstan.neon.dist | 2 +- src/Bundle/ChillJobBundle/src/Entity/CSPerson.php | 2 +- src/Bundle/ChillJobBundle/src/Entity/Immersion.php | 2 +- src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php | 2 +- src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php | 2 -- src/Bundle/ChillJobBundle/src/Export/ListCV.php | 2 -- src/Bundle/ChillJobBundle/src/Export/ListFrein.php | 2 -- .../ChillJobBundle/src/Export/ListProjetProfessionnel.php | 2 -- .../ChillJobBundle/src/Security/Authorization/ExportsVoter.php | 1 - 9 files changed, 4 insertions(+), 13 deletions(-) diff --git a/phpstan.neon.dist b/phpstan.neon.dist index 15421cde9..ab7c97139 100644 --- a/phpstan.neon.dist +++ b/phpstan.neon.dist @@ -1,5 +1,5 @@ parameters: - level: 2 + level: 3 paths: - src/ - utils/ diff --git a/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php b/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php index d9f2e7978..286d334ad 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php @@ -657,7 +657,7 @@ class CSPerson /** * Get dateFinDernierEmploi. * - * @return \DateTime + * @return \DateTimeInterface */ public function getDateFinDernierEmploi() { diff --git a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php index e952882e7..e39c053d1 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php @@ -661,7 +661,7 @@ class Immersion implements \Stringable /** * Get debutDate. * - * @return \DateTime|null + * @return \DateTimeInterface */ public function getDebutDate() { diff --git a/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php b/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php index e912a5daf..ecf172d95 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php +++ b/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php @@ -146,7 +146,7 @@ class ProjetProfessionnel implements \Stringable /** * Get reportDate. * - * @return \DateTime + * @return \DateTimeInterface */ public function getReportDate() { diff --git a/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php b/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php index e8de7702c..74486efdc 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php @@ -341,7 +341,6 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal * @param \Doctrine\ORM\NativeQuery|\Doctrine\ORM\QueryBuilder $qb * @param mixed[] $data * - * @return mixed|mixed[] */ public function getResult($qb, $data) { @@ -383,7 +382,6 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal * @param mixed[] $values The values from the result. if there are duplicates, those might be given twice. Example: array('FR', 'BE', 'CZ', 'FR', 'BE', 'FR') * @param mixed $data The data from the export's form (as defined in `buildForm` * - * @return \Closure where the first argument is the value, and the function should return the label to show in the formatted file. Example : `function($countryCode) use ($countries) { return $countries[$countryCode]->getName(); }` */ public function getLabels($key, array $values, $data) { diff --git a/src/Bundle/ChillJobBundle/src/Export/ListCV.php b/src/Bundle/ChillJobBundle/src/Export/ListCV.php index a0afd0aa8..90a0312e4 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListCV.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListCV.php @@ -239,7 +239,6 @@ class ListCV implements ListInterface, ExportElementValidatedInterface * @param QueryBuilder|\Doctrine\ORM\NativeQuery $qb * @param mixed[] $data the data from the export's form (added by self::buildForm) * - * @return mixed[] an array of results */ public function getResult($qb, $data) { @@ -314,7 +313,6 @@ class ListCV implements ListInterface, ExportElementValidatedInterface * @param mixed[] $values The values from the result. if there are duplicates, those might be given twice. Example: array('FR', 'BE', 'CZ', 'FR', 'BE', 'FR') * @param mixed $data The data from the export's form (as defined in `buildForm` * - * @return \Closure where the first argument is the value, and the function should return the label to show in the formatted file. Example : `function($countryCode) use ($countries) { return $countries[$countryCode]->getName(); }` */ public function getLabels($key, array $values, $data) { diff --git a/src/Bundle/ChillJobBundle/src/Export/ListFrein.php b/src/Bundle/ChillJobBundle/src/Export/ListFrein.php index cb72ce6d7..0d5ecb3da 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListFrein.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListFrein.php @@ -333,7 +333,6 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface * @param QueryBuilder|\Doctrine\ORM\NativeQuery $qb * @param mixed[] $data the data from the export's form (added by self::buildForm) * - * @return mixed[]|\Closure an array of results */ public function getResult($qb, $data) { @@ -410,7 +409,6 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface * @param mixed[] $values The values from the result. if there are duplicates, those might be given twice. Example: array('FR', 'BE', 'CZ', 'FR', 'BE', 'FR') * @param mixed $data The data from the export's form (as defined in `buildForm` * - * @return \Closure where the first argument is the value, and the function should return the label to show in the formatted file. Example : `function($countryCode) use ($countries) { return $countries[$countryCode]->getName(); }` */ public function getLabels($key, array $values, $data) { diff --git a/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php b/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php index 2b72aaec3..0704a8686 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php @@ -371,7 +371,6 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn * @param QueryBuilder|\Doctrine\ORM\NativeQuery $qb * @param mixed[] $data the data from the export's form (added by self::buildForm) * - * @return mixed[] an array of results */ public function getResult($qb, $data) { @@ -448,7 +447,6 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn * @param mixed[] $values The values from the result. if there are duplicates, those might be given twice. Example: array('FR', 'BE', 'CZ', 'FR', 'BE', 'FR') * @param mixed $data The data from the export's form (as defined in `buildForm` * - * @return \Closure where the first argument is the value, and the function should return the label to show in the formatted file. Example : `function($countryCode) use ($countries) { return $countries[$countryCode]->getName(); }` */ public function getLabels($key, array $values, $data) { diff --git a/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php b/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php index 3066eda97..39a1eb348 100644 --- a/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php +++ b/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php @@ -87,7 +87,6 @@ class ExportsVoter extends AbstractChillVoter implements ProvideRoleHierarchyInt * [ 'Title' => [ 'CHILL_FOO_SEE', 'CHILL_FOO_UPDATE' ] ] * ``` * - * @return array where keys are the hierarchy, and values an array of roles: `[ 'title' => [ 'CHILL_FOO_SEE', 'CHILL_FOO_UPDATE' ] ]` */ public function getRolesWithHierarchy(): array { From a71573136a6276554805e226f17c43b3d71585c5 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Tue, 23 Apr 2024 21:12:57 +0200 Subject: [PATCH 018/136] adjust phpstan baselines --- phpstan-baseline-level-2.neon | 302 +-- phpstan-baseline-level-3.neon | 844 ++---- phpstan-baseline-level-4.neon | 4821 ++------------------------------- phpstan-baseline-level-5.neon | 3326 ++++++++++++++++++++--- phpstan-baseline.neon | 76 - phpstan.neon.dist | 2 +- 6 files changed, 3395 insertions(+), 5976 deletions(-) diff --git a/phpstan-baseline-level-2.neon b/phpstan-baseline-level-2.neon index 6f7cec495..a9d62a9c6 100644 --- a/phpstan-baseline-level-2.neon +++ b/phpstan-baseline-level-2.neon @@ -1,301 +1,101 @@ parameters: ignoreErrors: - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\ActivityBundle\\\\Entity\\\\Activity\\|null given\\.$#" + message: "#^Foreach overwrites \\$key with its key variable\\.$#" count: 1 - path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php - - - - message: "#^Only booleans are allowed in a ternary operator condition, Chill\\\\MainBundle\\\\Entity\\\\Scope\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php - - - - message: "#^Only booleans are allowed in a ternary operator condition, Chill\\\\PersonBundle\\\\Entity\\\\Person\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php - - - - message: "#^Only booleans are allowed in a ternary operator condition, DateTime\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php - - - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\ActivityBundle\\\\Entity\\\\ActivityReasonCategory\\|null given\\.$#" - count: 3 - path: src/Bundle/ChillActivityBundle/Controller/ActivityReasonCategoryController.php - - - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\ActivityBundle\\\\Entity\\\\ActivityReason\\|null given\\.$#" - count: 2 - path: src/Bundle/ChillActivityBundle/Controller/ActivityReasonController.php - - - - message: "#^Call to method DateTime\\:\\:setTimezone\\(\\) with incorrect case\\: setTimeZone$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Form/ActivityType.php - - - - message: "#^Only booleans are allowed in &&, Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\|null given on the right side\\.$#" - count: 2 - path: src/Bundle/ChillActivityBundle/Form/ActivityType.php - - - - message: "#^Only booleans are allowed in an if condition, Chill\\\\AsideActivityBundle\\\\Entity\\\\AsideActivityCategory\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillAsideActivityBundle/src/Entity/AsideActivityCategory.php - - - - message: "#^Call to method DateTimeImmutable\\:\\:setTimezone\\(\\) with incorrect case\\: setTimeZone$#" - count: 1 - path: src/Bundle/ChillAsideActivityBundle/src/Form/AsideActivityFormType.php - - - - message: "#^Only booleans are allowed in a ternary operator condition, Chill\\\\MainBundle\\\\Entity\\\\Location\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Controller/CalendarController.php - - - - message: "#^Only booleans are allowed in an if condition, Symfony\\\\Component\\\\Validator\\\\ConstraintViolationListInterface given\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Command/CreateFieldsOnGroupCommand.php - - - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldController.php - - - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomField\\|null given\\.$#" - count: 3 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldController.php - - - - message: "#^Only booleans are allowed in a ternary operator condition, Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup given\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldController.php - - - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup\\|null given\\.$#" - count: 4 path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php - - message: "#^Only booleans are allowed in a ternary operator condition, string given\\.$#" + message: "#^Only booleans are allowed in an if condition, mixed given\\.$#" count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php + path: src/Bundle/ChillCustomFieldsBundle/Entity/CustomField.php - - message: "#^Only booleans are allowed in a negated boolean, string given\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/CustomFieldsGroupToIdTransformer.php - - - - message: "#^Call to method Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:getFirstName\\(\\) with incorrect case\\: getFirstname$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/EventController.php - - - - message: "#^Call to method Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:getLastName\\(\\) with incorrect case\\: getLastname$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/EventController.php - - - - message: "#^Call to method Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:getMobilenumber\\(\\) with incorrect case\\: getMobileNumber$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/EventController.php - - - - message: "#^Call to method Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:getPhonenumber\\(\\) with incorrect case\\: getPhoneNumber$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/EventController.php - - - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\EventBundle\\\\Entity\\\\Event given\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/EventController.php - - - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\EventBundle\\\\Entity\\\\Event\\|null given\\.$#" + message: "#^Variable \\$participation might not be defined\\.$#" count: 3 - path: src/Bundle/ChillEventBundle/Controller/EventController.php - - - - message: "#^Only booleans are allowed in a ternary operator condition, int given\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/EventController.php - - - - message: "#^Only numeric types are allowed in pre\\-increment, string given\\.$#" - count: 2 - path: src/Bundle/ChillEventBundle/Controller/EventController.php - - - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\EventBundle\\\\Entity\\\\EventType\\|null given\\.$#" - count: 4 - path: src/Bundle/ChillEventBundle/Controller/EventTypeController.php - - - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\EventBundle\\\\Entity\\\\Participation\\|null given\\.$#" - count: 1 path: src/Bundle/ChillEventBundle/Controller/ParticipationController.php - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\EventBundle\\\\Entity\\\\Role\\|null given\\.$#" - count: 4 - path: src/Bundle/ChillEventBundle/Controller/RoleController.php - - - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\EventBundle\\\\Entity\\\\Status\\|null given\\.$#" - count: 4 - path: src/Bundle/ChillEventBundle/Controller/StatusController.php - - - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\MainBundle\\\\Entity\\\\Language\\|null given\\.$#" + message: "#^Foreach overwrites \\$value with its value variable\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Command/LoadAndUpdateLanguagesCommand.php + path: src/Bundle/ChillEventBundle/Form/ChoiceLoader/EventChoiceLoader.php - - message: "#^Only booleans are allowed in an if condition, Chill\\\\MainBundle\\\\Entity\\\\Language\\|null given\\.$#" + message: "#^Comparison operation \"\\>\" between \\(bool\\|int\\|Redis\\) and 0 results in an error\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Command/LoadAndUpdateLanguagesCommand.php + path: src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php - - message: "#^Only booleans are allowed in an if condition, int given\\.$#" + message: "#^Variable \\$response might not be defined\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Command/LoadPostalCodesCommand.php + path: src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\MainBundle\\\\Entity\\\\Center\\|null given\\.$#" - count: 3 - path: src/Bundle/ChillMainBundle/Controller/CenterController.php + message: "#^Function GuzzleHttp\\\\Psr7\\\\get not found\\.$#" + count: 1 + path: src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php - - message: "#^Call to method Redis\\:\\:setex\\(\\) with incorrect case\\: setEx$#" + message: "#^Function GuzzleHttp\\\\Psr7\\\\str not found\\.$#" count: 2 + path: src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php + + - + message: "#^Variable \\$f might not be defined\\.$#" + count: 1 + path: src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php + + - + message: "#^Variable \\$metier might not be defined\\.$#" + count: 1 + path: src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php + + - + message: "#^Cannot unset offset '_token' on array\\{formatter\\: mixed, export\\: mixed, centers\\: mixed, alias\\: string\\}\\.$#" + count: 1 path: src/Bundle/ChillMainBundle/Controller/ExportController.php - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\MainBundle\\\\Entity\\\\PermissionsGroup\\|null given\\.$#" - count: 5 - path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php + message: "#^Foreach overwrites \\$line with its value variable\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Export/Formatter/CSVFormatter.php - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\MainBundle\\\\Entity\\\\RoleScope\\|null given\\.$#" + message: "#^Foreach overwrites \\$key with its key variable\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\MainBundle\\\\Entity\\\\Scope\\|null given\\.$#" + message: "#^Foreach overwrites \\$key with its value variable\\.$#" count: 3 - path: src/Bundle/ChillMainBundle/Controller/ScopeController.php + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\MainBundle\\\\Entity\\\\GroupCenter\\|null given\\.$#" + message: "#^Foreach overwrites \\$value with its value variable\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/ChoiceLoader/PostalCodeChoiceLoader.php + + - + message: "#^Only booleans are allowed in an if condition, mixed given\\.$#" count: 2 - path: src/Bundle/ChillMainBundle/Controller/UserController.php + path: src/Bundle/ChillMainBundle/Repository/NotificationRepository.php - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\MainBundle\\\\Entity\\\\User\\|null given\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Controller/UserController.php - - - - message: "#^Only booleans are allowed in an if condition, int given\\.$#" + message: "#^Only booleans are allowed in an if condition, mixed given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/DataFixtures/ORM/LoadPostalCodes.php + path: src/Bundle/ChillMainBundle/Templating/ChillTwigRoutingHelper.php - - message: "#^Only numeric types are allowed in pre\\-increment, string given\\.$#" + message: "#^Foreach overwrites \\$value with its value variable\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadsheetListFormatter.php + path: src/Bundle/ChillPersonBundle/Form/ChoiceLoader/PersonChoiceLoader.php - - message: "#^Only booleans are allowed in an if condition, int given\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Form/DataTransformer/IdToEntityDataTransformer.php - - - - message: "#^Only booleans are allowed in a ternary operator condition, string\\|null given\\.$#" + message: "#^Only booleans are allowed in an if condition, mixed given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Form/Type/PickUserLocationType.php + path: src/Bundle/ChillPersonBundle/Form/PersonType.php - - message: "#^Only booleans are allowed in a ternary operator condition, int\\<0, max\\> given\\.$#" - count: 4 - path: src/Bundle/ChillMainBundle/Search/SearchApiQuery.php - - - - message: "#^Call to method Chill\\\\MainBundle\\\\Entity\\\\Address\\:\\:getPostcode\\(\\) with incorrect case\\: getPostCode$#" - count: 6 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php - - - - message: "#^Only booleans are allowed in an if condition, Symfony\\\\Component\\\\Serializer\\\\Mapping\\\\ClassDiscriminatorMapping\\|null given\\.$#" + message: "#^Foreach overwrites \\$value with its value variable\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DoctrineExistingEntityNormalizer.php - - - - message: "#^Only booleans are allowed in a negated boolean, null given\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Only booleans are allowed in a ternary operator condition, Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriodParticipation\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Call to method Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:getFirstName\\(\\) with incorrect case\\: getFirstname$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Form/Type/PickPersonType.php - - - - message: "#^Call to method Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:getLastName\\(\\) with incorrect case\\: getLastname$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Form/Type/PickPersonType.php - - - - message: "#^Only booleans are allowed in an if condition, int\\<0, max\\> given\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Search/SimilarPersonMatcher.php - - - - message: "#^Only booleans are allowed in &&, null given on the left side\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/MembersEditorNormalizer.php - - - - message: "#^Only booleans are allowed in a ternary operator condition, Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\Household\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonJsonNormalizer.php - - - - message: "#^Only booleans are allowed in a ternary operator condition, array\\ given\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonJsonNormalizer.php - - - - message: "#^Call to method Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:getDeathdate\\(\\) with incorrect case\\: getDeathDate$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Templating/Entity/PersonRender.php - - - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\PersonBundle\\\\Entity\\\\Person\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\ReportBundle\\\\Entity\\\\Report given\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Call to method Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\:\\:setFirstname\\(\\) with incorrect case\\: setFirstName$#" - count: 1 - path: src/Bundle/ChillThirdPartyBundle/EventListener/ThirdPartyEventListener.php - - - - message: "#^Dynamic call to static method Chill\\\\ThirdPartyBundle\\\\ThirdPartyType\\\\ThirdPartyTypeProviderInterface\\:\\:getKey\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillThirdPartyBundle/ThirdPartyType/ThirdPartyTypeManager.php + path: src/Bundle/ChillThirdPartyBundle/Form/ChoiceLoader/ThirdPartyChoiceLoader.php diff --git a/phpstan-baseline-level-3.neon b/phpstan-baseline-level-3.neon index b7091f4ad..3e6a20bc5 100644 --- a/phpstan-baseline-level-3.neon +++ b/phpstan-baseline-level-3.neon @@ -1,804 +1,276 @@ parameters: ignoreErrors: - - message: "#^Return type \\(array\\\\) of method Chill\\\\ActivityBundle\\\\Repository\\\\ActivityACLAwareRepository\\:\\:findByPerson\\(\\) should be covariant with return type \\(array\\\\) of method Chill\\\\ActivityBundle\\\\Repository\\\\ActivityACLAwareRepositoryInterface\\:\\:findByPerson\\(\\)$#" + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\ActivityBundle\\\\Entity\\\\Activity\\|null given\\.$#" count: 1 - path: src/Bundle/ChillActivityBundle/Repository/ActivityACLAwareRepository.php + path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php - - message: "#^Return type \\(array\\\\) of method Chill\\\\ActivityBundle\\\\Repository\\\\ActivityReasonRepository\\:\\:findAll\\(\\) should be covariant with return type \\(array\\\\) of method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findAll\\(\\)$#" + message: "#^Only booleans are allowed in a ternary operator condition, Chill\\\\MainBundle\\\\Entity\\\\Scope\\|null given\\.$#" count: 1 - path: src/Bundle/ChillActivityBundle/Repository/ActivityReasonRepository.php + path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php - - message: "#^Return type \\(array\\\\>\\) of method Chill\\\\AsideActivityBundle\\\\Security\\\\AsideActivityVoter\\:\\:getRolesWithHierarchy\\(\\) should be covariant with return type \\(array\\\\>\\) of method Chill\\\\MainBundle\\\\Security\\\\ProvideRoleHierarchyInterface\\:\\:getRolesWithHierarchy\\(\\)$#" + message: "#^Only booleans are allowed in a ternary operator condition, Chill\\\\PersonBundle\\\\Entity\\\\Person\\|null given\\.$#" count: 1 - path: src/Bundle/ChillAsideActivityBundle/src/Security/AsideActivityVoter.php + path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php - - message: "#^Parameter \\#1 \\$criteria \\(array\\\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepository\\:\\:findBy\\(\\) should be contravariant with parameter \\$criteria \\(array\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepositoryInterface\\:\\:findBy\\(\\)$#" + message: "#^Only booleans are allowed in a ternary operator condition, DateTime\\|null given\\.$#" count: 1 - path: src/Bundle/ChillCalendarBundle/Repository/CalendarDocRepository.php + path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php - - message: "#^Parameter \\#1 \\$criteria \\(array\\\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepository\\:\\:findOneBy\\(\\) should be contravariant with parameter \\$criteria \\(array\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepositoryInterface\\:\\:findOneBy\\(\\)$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Repository/CalendarDocRepository.php + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\ActivityBundle\\\\Entity\\\\ActivityReasonCategory\\|null given\\.$#" + count: 3 + path: src/Bundle/ChillActivityBundle/Controller/ActivityReasonCategoryController.php - - message: "#^Parameter \\#2 \\$orderBy \\(array\\\\|null\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepository\\:\\:findBy\\(\\) should be contravariant with parameter \\$orderBy \\(array\\|null\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepositoryInterface\\:\\:findBy\\(\\)$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Repository/CalendarDocRepository.php + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\ActivityBundle\\\\Entity\\\\ActivityReason\\|null given\\.$#" + count: 2 + path: src/Bundle/ChillActivityBundle/Controller/ActivityReasonController.php - - message: "#^Return type \\(array\\\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepository\\:\\:findAll\\(\\) should be covariant with return type \\(array\\\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepositoryInterface\\:\\:findAll\\(\\)$#" + message: "#^Call to method DateTime\\:\\:setTimezone\\(\\) with incorrect case\\: setTimeZone$#" count: 1 - path: src/Bundle/ChillCalendarBundle/Repository/CalendarDocRepository.php + path: src/Bundle/ChillActivityBundle/Form/ActivityType.php - - message: "#^Return type \\(array\\\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepository\\:\\:findBy\\(\\) should be covariant with return type \\(array\\\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepositoryInterface\\:\\:findBy\\(\\)$#" + message: "#^Only booleans are allowed in an if condition, Chill\\\\AsideActivityBundle\\\\Entity\\\\AsideActivityCategory\\|null given\\.$#" count: 1 - path: src/Bundle/ChillCalendarBundle/Repository/CalendarDocRepository.php + path: src/Bundle/ChillAsideActivityBundle/src/Entity/AsideActivityCategory.php - - message: "#^Parameter \\#2 \\$subject \\(Chill\\\\CalendarBundle\\\\Entity\\\\CalendarDoc\\) of method Chill\\\\CalendarBundle\\\\Security\\\\Voter\\\\CalendarDocVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" + message: "#^Call to method DateTimeImmutable\\:\\:setTimezone\\(\\) with incorrect case\\: setTimeZone$#" count: 1 - path: src/Bundle/ChillCalendarBundle/Security/Voter/CalendarDocVoter.php + path: src/Bundle/ChillAsideActivityBundle/src/Form/AsideActivityFormType.php - - message: "#^Parameter \\#2 \\$subject \\(Chill\\\\CalendarBundle\\\\Entity\\\\Invite\\) of method Chill\\\\CalendarBundle\\\\Security\\\\Voter\\\\InviteVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" + message: "#^Only booleans are allowed in a ternary operator condition, Chill\\\\MainBundle\\\\Entity\\\\Location\\|null given\\.$#" count: 1 - path: src/Bundle/ChillCalendarBundle/Security/Voter/InviteVoter.php - + path: src/Bundle/ChillCalendarBundle/Controller/CalendarController.php - - message: "#^Return type \\(int\\|void\\|null\\) of method Chill\\\\CustomFieldsBundle\\\\Command\\\\CreateFieldsOnGroupCommand\\:\\:execute\\(\\) should be covariant with return type \\(int\\) of method Symfony\\\\Component\\\\Console\\\\Command\\\\Command\\:\\:execute\\(\\)$#" + message: "#^Only booleans are allowed in an if condition, Symfony\\\\Component\\\\Validator\\\\ConstraintViolationListInterface given\\.$#" count: 1 path: src/Bundle/ChillCustomFieldsBundle/Command/CreateFieldsOnGroupCommand.php - - message: "#^Parameter \\#1 \\$customFieldsGroup \\(Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup\\|null\\) of method Chill\\\\CustomFieldsBundle\\\\Form\\\\DataTransformer\\\\CustomFieldsGroupToIdTransformer\\:\\:transform\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataTransformerInterface\\:\\:transform\\(\\)$#" + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup\\|null given\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldController.php + + - + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomField\\|null given\\.$#" + count: 2 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldController.php + + - + message: "#^Only booleans are allowed in a ternary operator condition, Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup given\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldController.php + + - + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup\\|null given\\.$#" + count: 4 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php + + - + message: "#^Only booleans are allowed in a ternary operator condition, string given\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php + + - + message: "#^Property Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomField\\:\\:\\$required \\(false\\) does not accept bool\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Entity/CustomField.php + + - + message: "#^Only booleans are allowed in a negated boolean, string given\\.$#" count: 1 path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/CustomFieldsGroupToIdTransformer.php - - message: "#^Parameter \\#1 \\$id \\(string\\) of method Chill\\\\CustomFieldsBundle\\\\Form\\\\DataTransformer\\\\CustomFieldsGroupToIdTransformer\\:\\:reverseTransform\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataTransformerInterface\\:\\:reverseTransform\\(\\)$#" + message: "#^Call to method Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:getFirstName\\(\\) with incorrect case\\: getFirstname$#" count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/CustomFieldsGroupToIdTransformer.php + path: src/Bundle/ChillEventBundle/Controller/EventController.php - - message: "#^Parameter \\#2 \\$query \\(Doctrine\\\\ORM\\\\QueryBuilder\\) of method Chill\\\\DocGeneratorBundle\\\\Controller\\\\AdminDocGeneratorTemplateController\\:\\:orderQuery\\(\\) should be contravariant with parameter \\$query \\(mixed\\) of method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\CRUDController\\:\\:orderQuery\\(\\)$#" + message: "#^Call to method Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:getLastName\\(\\) with incorrect case\\: getLastname$#" count: 1 - path: src/Bundle/ChillDocGeneratorBundle/Controller/AdminDocGeneratorTemplateController.php + path: src/Bundle/ChillEventBundle/Controller/EventController.php - - message: "#^Parameter \\#1 \\$object \\(Doctrine\\\\Common\\\\Collections\\\\Collection\\) of method Chill\\\\DocGeneratorBundle\\\\Serializer\\\\Normalizer\\\\CollectionDocGenNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + message: "#^Call to method Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:getMobilenumber\\(\\) with incorrect case\\: getMobileNumber$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/EventController.php + + - + message: "#^Call to method Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:getPhonenumber\\(\\) with incorrect case\\: getPhoneNumber$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/EventController.php + + - + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\EventBundle\\\\Entity\\\\Event given\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/EventController.php + + - + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\EventBundle\\\\Entity\\\\Event\\|null given\\.$#" + count: 3 + path: src/Bundle/ChillEventBundle/Controller/EventController.php + + - + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\EventBundle\\\\Entity\\\\EventType\\|null given\\.$#" + count: 4 + path: src/Bundle/ChillEventBundle/Controller/EventTypeController.php + + - + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\EventBundle\\\\Entity\\\\Participation\\|null given\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/ParticipationController.php + + - + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\EventBundle\\\\Entity\\\\Role\\|null given\\.$#" + count: 4 + path: src/Bundle/ChillEventBundle/Controller/RoleController.php + + - + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\EventBundle\\\\Entity\\\\Status\\|null given\\.$#" + count: 4 + path: src/Bundle/ChillEventBundle/Controller/StatusController.php + + - + message: "#^Property Chill\\\\JobBundle\\\\Form\\\\ChoiceLoader\\\\RomeAppellationChoiceLoader\\:\\:\\$appellationRepository \\(Chill\\\\JobBundle\\\\Repository\\\\Rome\\\\AppellationRepository\\) does not accept Doctrine\\\\ORM\\\\EntityRepository\\\\.$#" + count: 1 + path: src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php + + - + message: "#^Only booleans are allowed in an if condition, int given\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Command/LoadPostalCodesCommand.php + + - + message: "#^Call to method Redis\\:\\:setex\\(\\) with incorrect case\\: setEx$#" count: 2 - path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/CollectionDocGenNormalizer.php + path: src/Bundle/ChillMainBundle/Controller/ExportController.php - - message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\DocGeneratorBundle\\\\Serializer\\\\Normalizer\\\\CollectionDocGenNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\ContextAwareNormalizerInterface\\:\\:supportsNormalization\\(\\)$#" + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\MainBundle\\\\Entity\\\\PermissionsGroup\\|null given\\.$#" + count: 5 + path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php + + - + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\MainBundle\\\\Entity\\\\RoleScope\\|null given\\.$#" count: 1 - path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/CollectionDocGenNormalizer.php + path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php - - message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\DocGeneratorBundle\\\\Serializer\\\\Normalizer\\\\CollectionDocGenNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:supportsNormalization\\(\\)$#" + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\MainBundle\\\\Entity\\\\Scope\\|null given\\.$#" count: 1 - path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/CollectionDocGenNormalizer.php + path: src/Bundle/ChillMainBundle/Controller/ScopeController.php - - message: "#^Return type \\(array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|void\\|null\\) of method Chill\\\\DocGeneratorBundle\\\\Serializer\\\\Normalizer\\\\CollectionDocGenNormalizer\\:\\:normalize\\(\\) should be covariant with return type \\(array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\MainBundle\\\\Entity\\\\GroupCenter\\|null given\\.$#" count: 2 - path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/CollectionDocGenNormalizer.php + path: src/Bundle/ChillMainBundle/Controller/UserController.php - - message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\DocGeneratorBundle\\\\Serializer\\\\Normalizer\\\\DocGenObjectNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" - count: 1 - path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/DocGenObjectNormalizer.php - - - - message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\DocGeneratorBundle\\\\Serializer\\\\Normalizer\\\\DocGenObjectNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:supportsNormalization\\(\\)$#" - count: 1 - path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/DocGenObjectNormalizer.php - - - - message: "#^Return type \\(Chill\\\\MainBundle\\\\Entity\\\\Scope\\|null\\) of method Chill\\\\DocStoreBundle\\\\Entity\\\\PersonDocument\\:\\:getScope\\(\\) should be covariant with return type \\(Chill\\\\MainBundle\\\\Entity\\\\Scope\\) of method Chill\\\\MainBundle\\\\Entity\\\\HasScopeInterface\\:\\:getScope\\(\\)$#" - count: 1 - path: src/Bundle/ChillDocStoreBundle/Entity/PersonDocument.php - - - - message: "#^Parameter \\#2 \\$subject \\(Chill\\\\DocStoreBundle\\\\Entity\\\\PersonDocument\\) of method Chill\\\\DocStoreBundle\\\\Security\\\\Authorization\\\\PersonDocumentVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" - count: 1 - path: src/Bundle/ChillDocStoreBundle/Security/Authorization/PersonDocumentVoter.php - - - - message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\DocStoreBundle\\\\Serializer\\\\Normalizer\\\\StoredObjectDenormalizer\\:\\:denormalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:denormalize\\(\\)$#" - count: 1 - path: src/Bundle/ChillDocStoreBundle/Serializer/Normalizer/StoredObjectDenormalizer.php - - - - message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\DocStoreBundle\\\\Serializer\\\\Normalizer\\\\StoredObjectDenormalizer\\:\\:supportsDenormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:supportsDenormalization\\(\\)$#" - count: 1 - path: src/Bundle/ChillDocStoreBundle/Serializer/Normalizer/StoredObjectDenormalizer.php - - - - message: "#^Parameter \\#1 \\$object \\(Chill\\\\DocStoreBundle\\\\Entity\\\\AccompanyingCourseDocument\\) of method Chill\\\\DocStoreBundle\\\\Workflow\\\\AccompanyingCourseDocumentWorkflowHandler\\:\\:getRelatedObjects\\(\\) should be contravariant with parameter \\$object \\(object\\) of method Chill\\\\MainBundle\\\\Workflow\\\\EntityWorkflowHandlerInterface\\:\\:getRelatedObjects\\(\\)$#" - count: 1 - path: src/Bundle/ChillDocStoreBundle/Workflow/AccompanyingCourseDocumentWorkflowHandler.php - - - - message: "#^Parameter \\#1 \\$value \\(null\\) of method Chill\\\\EventBundle\\\\Form\\\\ChoiceLoader\\\\EventChoiceLoader\\:\\:loadChoiceList\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadChoiceList\\(\\)$#" - count: 1 - path: src/Bundle/ChillEventBundle/Form/ChoiceLoader/EventChoiceLoader.php - - - - message: "#^Parameter \\#2 \\$value \\(null\\) of method Chill\\\\EventBundle\\\\Form\\\\ChoiceLoader\\\\EventChoiceLoader\\:\\:loadChoicesForValues\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadChoicesForValues\\(\\)$#" - count: 1 - path: src/Bundle/ChillEventBundle/Form/ChoiceLoader/EventChoiceLoader.php - - - - message: "#^Parameter \\#2 \\$value \\(null\\) of method Chill\\\\EventBundle\\\\Form\\\\ChoiceLoader\\\\EventChoiceLoader\\:\\:loadValuesForChoices\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadValuesForChoices\\(\\)$#" - count: 1 - path: src/Bundle/ChillEventBundle/Form/ChoiceLoader/EventChoiceLoader.php - - - - message: "#^Parameter \\#2 \\$subject \\(Chill\\\\EventBundle\\\\Entity\\\\Event\\) of method Chill\\\\EventBundle\\\\Security\\\\Authorization\\\\EventVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" - count: 1 - path: src/Bundle/ChillEventBundle/Security/Authorization/EventVoter.php - - - - message: "#^Parameter \\#2 \\$subject \\(Chill\\\\EventBundle\\\\Entity\\\\Participation\\) of method Chill\\\\EventBundle\\\\Security\\\\Authorization\\\\ParticipationVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" - count: 1 - path: src/Bundle/ChillEventBundle/Security/Authorization/ParticipationVoter.php - - - - message: "#^Parameter \\#1 \\$entity \\(Chill\\\\EventBundle\\\\Entity\\\\Event\\) of method Chill\\\\EventBundle\\\\Timeline\\\\TimelineEventProvider\\:\\:getEntityTemplate\\(\\) should be contravariant with parameter \\$entity \\(Chill\\\\MainBundle\\\\Timeline\\\\type\\) of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineProviderInterface\\:\\:getEntityTemplate\\(\\)$#" - count: 1 - path: src/Bundle/ChillEventBundle/Timeline/TimelineEventProvider.php - - - - message: "#^Parameter \\#2 \\$type \\(null\\) of method Chill\\\\MainBundle\\\\CRUD\\\\Routing\\\\CRUDRoutesLoader\\:\\:supports\\(\\) should be contravariant with parameter \\$type \\(string\\|null\\) of method Symfony\\\\Component\\\\Config\\\\Loader\\\\LoaderInterface\\:\\:supports\\(\\)$#" + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\MainBundle\\\\Entity\\\\User\\|null given\\.$#" count: 2 - path: src/Bundle/ChillMainBundle/CRUD/Routing/CRUDRoutesLoader.php + path: src/Bundle/ChillMainBundle/Controller/UserController.php - - message: "#^Parameter \\#2 \\$query \\(Doctrine\\\\ORM\\\\QueryBuilder\\) of method Chill\\\\MainBundle\\\\Controller\\\\LocationApiController\\:\\:orderQuery\\(\\) should be contravariant with parameter \\$query \\(mixed\\) of method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\AbstractCRUDController\\:\\:orderQuery\\(\\)$#" + message: "#^Only booleans are allowed in an if condition, int given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Controller/LocationApiController.php + path: src/Bundle/ChillMainBundle/DataFixtures/ORM/LoadPostalCodes.php - - message: "#^Parameter \\#3 \\$query \\(Doctrine\\\\ORM\\\\QueryBuilder\\) of method Chill\\\\MainBundle\\\\Controller\\\\UserApiController\\:\\:customizeQuery\\(\\) should be contravariant with parameter \\$query \\(mixed\\) of method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\AbstractCRUDController\\:\\:customizeQuery\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/UserApiController.php - - - - message: "#^Return type \\(object\\|null\\) of method Chill\\\\MainBundle\\\\DependencyInjection\\\\ChillMainExtension\\:\\:getConfiguration\\(\\) should be covariant with return type \\(Symfony\\\\Component\\\\Config\\\\Definition\\\\ConfigurationInterface\\|null\\) of method Symfony\\\\Component\\\\DependencyInjection\\\\Extension\\\\ConfigurationExtensionInterface\\:\\:getConfiguration\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/ChillMainExtension.php - - - - message: "#^Return type \\(object\\|null\\) of method Chill\\\\MainBundle\\\\DependencyInjection\\\\ChillMainExtension\\:\\:getConfiguration\\(\\) should be covariant with return type \\(Symfony\\\\Component\\\\Config\\\\Definition\\\\ConfigurationInterface\\|null\\) of method Symfony\\\\Component\\\\DependencyInjection\\\\Extension\\\\Extension\\:\\:getConfiguration\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/ChillMainExtension.php - - - - message: "#^Parameter \\#1 \\$value \\(null\\) of method Chill\\\\MainBundle\\\\Form\\\\ChoiceLoader\\\\PostalCodeChoiceLoader\\:\\:loadChoiceList\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadChoiceList\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/ChoiceLoader/PostalCodeChoiceLoader.php - - - - message: "#^Parameter \\#2 \\$value \\(null\\) of method Chill\\\\MainBundle\\\\Form\\\\ChoiceLoader\\\\PostalCodeChoiceLoader\\:\\:loadChoicesForValues\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadChoicesForValues\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/ChoiceLoader/PostalCodeChoiceLoader.php - - - - message: "#^Parameter \\#2 \\$value \\(null\\) of method Chill\\\\MainBundle\\\\Form\\\\ChoiceLoader\\\\PostalCodeChoiceLoader\\:\\:loadValuesForChoices\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadValuesForChoices\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/ChoiceLoader/PostalCodeChoiceLoader.php - - - - message: "#^Parameter \\#1 \\$address \\(Chill\\\\MainBundle\\\\Entity\\\\Address\\) of method Chill\\\\MainBundle\\\\Form\\\\DataMapper\\\\AddressDataMapper\\:\\:mapDataToForms\\(\\) should be contravariant with parameter \\$viewData \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataMapperInterface\\:\\:mapDataToForms\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/DataMapper/AddressDataMapper.php - - - - message: "#^Parameter \\#1 \\$forms \\(Iterator\\) of method Chill\\\\MainBundle\\\\Form\\\\DataMapper\\\\AddressDataMapper\\:\\:mapFormsToData\\(\\) should be contravariant with parameter \\$forms \\(iterable\\&Traversable\\) of method Symfony\\\\Component\\\\Form\\\\DataMapperInterface\\:\\:mapFormsToData\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/DataMapper/AddressDataMapper.php - - - - message: "#^Parameter \\#2 \\$address \\(Chill\\\\MainBundle\\\\Entity\\\\Address\\) of method Chill\\\\MainBundle\\\\Form\\\\DataMapper\\\\AddressDataMapper\\:\\:mapFormsToData\\(\\) should be contravariant with parameter \\$viewData \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataMapperInterface\\:\\:mapFormsToData\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/DataMapper/AddressDataMapper.php - - - - message: "#^Parameter \\#2 \\$forms \\(Iterator\\) of method Chill\\\\MainBundle\\\\Form\\\\DataMapper\\\\AddressDataMapper\\:\\:mapDataToForms\\(\\) should be contravariant with parameter \\$forms \\(iterable\\&Traversable\\) of method Symfony\\\\Component\\\\Form\\\\DataMapperInterface\\:\\:mapDataToForms\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/DataMapper/AddressDataMapper.php - - - - message: "#^Parameter \\#1 \\$value \\(string\\) of method Chill\\\\MainBundle\\\\Form\\\\DataTransformer\\\\IdToEntityDataTransformer\\:\\:reverseTransform\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataTransformerInterface\\:\\:reverseTransform\\(\\)$#" - count: 1 + message: "#^Only booleans are allowed in an if condition, int given\\.$#" + count: 2 path: src/Bundle/ChillMainBundle/Form/DataTransformer/IdToEntityDataTransformer.php - - message: "#^Parameter \\#1 \\$value \\(array\\\\|Chill\\\\MainBundle\\\\Entity\\\\User\\) of method Chill\\\\MainBundle\\\\Form\\\\Type\\\\DataTransformer\\\\EntityToJsonTransformer\\:\\:transform\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataTransformerInterface\\:\\:transform\\(\\)$#" + message: "#^Only booleans are allowed in a ternary operator condition, string\\|null given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Form/Type/DataTransformer/EntityToJsonTransformer.php + path: src/Bundle/ChillMainBundle/Form/Type/PickUserLocationType.php - - message: "#^Parameter \\#1 \\$array \\(array\\) of method Chill\\\\MainBundle\\\\Form\\\\Type\\\\DataTransformer\\\\MultipleObjectsToIdTransformer\\:\\:transform\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataTransformerInterface\\:\\:transform\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/Type/DataTransformer/MultipleObjectsToIdTransformer.php + message: "#^Only booleans are allowed in a ternary operator condition, int\\<0, max\\> given\\.$#" + count: 4 + path: src/Bundle/ChillMainBundle/Search/SearchApiQuery.php - - message: "#^Parameter \\#1 \\$id \\(string\\) of method Chill\\\\MainBundle\\\\Form\\\\Type\\\\DataTransformer\\\\ObjectToIdTransformer\\:\\:reverseTransform\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataTransformerInterface\\:\\:reverseTransform\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/Type/DataTransformer/ObjectToIdTransformer.php - - - - message: "#^Parameter \\#2 \\$subject \\(Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\) of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\EntityWorkflowVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Authorization/EntityWorkflowVoter.php - - - - message: "#^Parameter \\#1 \\$entity \\(Chill\\\\MainBundle\\\\Entity\\\\HasCenterInterface\\) of method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\DefaultCenterResolver\\:\\:resolveCenter\\(\\) should be contravariant with parameter \\$entity \\(object\\) of method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\CenterResolverInterface\\:\\:resolveCenter\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Resolver/DefaultCenterResolver.php - - - - message: "#^Parameter \\#1 \\$entity \\(Chill\\\\MainBundle\\\\Entity\\\\HasScopeInterface\\|Chill\\\\MainBundle\\\\Entity\\\\HasScopesInterface\\) of method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\DefaultScopeResolver\\:\\:resolveScope\\(\\) should be contravariant with parameter \\$entity \\(mixed\\) of method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\ScopeResolverInterface\\:\\:resolveScope\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Resolver/DefaultScopeResolver.php - - - - message: "#^Parameter \\#1 \\$address \\(Chill\\\\MainBundle\\\\Entity\\\\Address\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\AddressNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" - count: 2 + message: "#^Call to method Chill\\\\MainBundle\\\\Entity\\\\Address\\:\\:getPostcode\\(\\) with incorrect case\\: getPostCode$#" + count: 6 path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php - - message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\AddressNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\ContextAwareNormalizerInterface\\:\\:supportsNormalization\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php - - - - message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\AddressNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:supportsNormalization\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php - - - - message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\CenterNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/CenterNormalizer.php - - - - message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\CenterNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:supportsNormalization\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/CenterNormalizer.php - - - - message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\CenterNormalizer\\:\\:denormalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:denormalize\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/CenterNormalizer.php - - - - message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\CenterNormalizer\\:\\:supportsDenormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:supportsDenormalization\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/CenterNormalizer.php - - - - message: "#^Parameter \\#1 \\$collection \\(Chill\\\\MainBundle\\\\Serializer\\\\Model\\\\Collection\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\CollectionNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/CollectionNormalizer.php - - - - message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\CollectionNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:supportsNormalization\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/CollectionNormalizer.php - - - - message: "#^Parameter \\#1 \\$object \\(Chill\\\\MainBundle\\\\Entity\\\\Embeddable\\\\CommentEmbeddable\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\CommentEmbeddableDocGenNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" - count: 2 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/CommentEmbeddableDocGenNormalizer.php - - - - message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\DateNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" - count: 2 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DateNormalizer.php - - - - message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\DateNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\ContextAwareNormalizerInterface\\:\\:supportsNormalization\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DateNormalizer.php - - - - message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\DateNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:supportsNormalization\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DateNormalizer.php - - - - message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\DateNormalizer\\:\\:denormalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:denormalize\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DateNormalizer.php - - - - message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\DateNormalizer\\:\\:supportsDenormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:supportsDenormalization\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DateNormalizer.php - - - - message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\DiscriminatedObjectDenormalizer\\:\\:denormalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:denormalize\\(\\)$#" - count: 2 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DiscriminatedObjectDenormalizer.php - - - - message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\DiscriminatedObjectDenormalizer\\:\\:supportsDenormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\ContextAwareDenormalizerInterface\\:\\:supportsDenormalization\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DiscriminatedObjectDenormalizer.php - - - - message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\DiscriminatedObjectDenormalizer\\:\\:supportsDenormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:supportsDenormalization\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DiscriminatedObjectDenormalizer.php - - - - message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\DoctrineExistingEntityNormalizer\\:\\:denormalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:denormalize\\(\\)$#" + message: "#^Only booleans are allowed in an if condition, Symfony\\\\Component\\\\Serializer\\\\Mapping\\\\ClassDiscriminatorMapping\\|null given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DoctrineExistingEntityNormalizer.php - - message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\DoctrineExistingEntityNormalizer\\:\\:supportsDenormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:supportsDenormalization\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DoctrineExistingEntityNormalizer.php - - - - message: "#^Parameter \\#1 \\$object \\(Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\EntityWorkflowNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/EntityWorkflowNormalizer.php - - - - message: "#^Parameter \\#1 \\$object \\(Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflowStep\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\EntityWorkflowStepNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/EntityWorkflowStepNormalizer.php - - - - message: "#^Parameter \\#1 \\$object \\(Chill\\\\MainBundle\\\\Entity\\\\Notification\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\NotificationNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/NotificationNormalizer.php - - - - message: "#^Return type \\(array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|void\\|null\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\NotificationNormalizer\\:\\:normalize\\(\\) should be covariant with return type \\(array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/NotificationNormalizer.php - - - - message: "#^Parameter \\#1 \\$data \\(string\\|null\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\PhonenumberNormalizer\\:\\:denormalize\\(\\) should be contravariant with parameter \\$data \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:denormalize\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/PhonenumberNormalizer.php - - - - message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\PhonenumberNormalizer\\:\\:supportsDenormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:supportsDenormalization\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/PhonenumberNormalizer.php - - - - message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\PointNormalizer\\:\\:denormalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:denormalize\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/PointNormalizer.php - - - - message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\PointNormalizer\\:\\:supportsDenormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:supportsDenormalization\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/PointNormalizer.php - - - - message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\PrivateCommentEmbeddableNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/PrivateCommentEmbeddableNormalizer.php - - - - message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\UserNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" - count: 2 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/UserNormalizer.php - - - - message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\UserNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\ContextAwareNormalizerInterface\\:\\:supportsNormalization\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/UserNormalizer.php - - - - message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\UserNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:supportsNormalization\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/UserNormalizer.php - - - - - message: "#^Parameter \\#1 \\$value \\(string\\) of method Chill\\\\MainBundle\\\\Validation\\\\Validator\\\\ValidPhonenumber\\:\\:validate\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Validator\\\\ConstraintValidatorInterface\\:\\:validate\\(\\)$#" - count: 2 - path: src/Bundle/ChillMainBundle/Validation/Validator/ValidPhonenumber.php - - - - message: "#^Parameter \\#2 \\$constraint \\(Chill\\\\MainBundle\\\\Validation\\\\Constraint\\\\PhonenumberConstraint\\) of method Chill\\\\MainBundle\\\\Validation\\\\Validator\\\\ValidPhonenumber\\:\\:validate\\(\\) should be contravariant with parameter \\$constraint \\(Symfony\\\\Component\\\\Validator\\\\Constraint\\) of method Symfony\\\\Component\\\\Validator\\\\ConstraintValidatorInterface\\:\\:validate\\(\\)$#" - count: 2 - path: src/Bundle/ChillMainBundle/Validation/Validator/ValidPhonenumber.php - - - - message: "#^Parameter \\#1 \\$value \\(object\\) of method Chill\\\\MainBundle\\\\Validator\\\\Constraints\\\\Entity\\\\UserCircleConsistencyValidator\\:\\:validate\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Validator\\\\ConstraintValidatorInterface\\:\\:validate\\(\\)$#" - count: 2 - path: src/Bundle/ChillMainBundle/Validator/Constraints/Entity/UserCircleConsistencyValidator.php - - - - message: "#^Parameter \\#2 \\$constraint \\(Chill\\\\MainBundle\\\\Validator\\\\Constraints\\\\Entity\\\\UserCircleConsistency\\) of method Chill\\\\MainBundle\\\\Validator\\\\Constraints\\\\Entity\\\\UserCircleConsistencyValidator\\:\\:validate\\(\\) should be contravariant with parameter \\$constraint \\(Symfony\\\\Component\\\\Validator\\\\Constraint\\) of method Symfony\\\\Component\\\\Validator\\\\ConstraintValidatorInterface\\:\\:validate\\(\\)$#" - count: 2 - path: src/Bundle/ChillMainBundle/Validator/Constraints/Entity/UserCircleConsistencyValidator.php - - - - message: "#^Parameter \\#1 \\$value \\(Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\) of method Chill\\\\MainBundle\\\\Workflow\\\\Validator\\\\EntityWorkflowCreationValidator\\:\\:validate\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Validator\\\\ConstraintValidatorInterface\\:\\:validate\\(\\)$#" - count: 2 - path: src/Bundle/ChillMainBundle/Workflow/Validator/EntityWorkflowCreationValidator.php - - - - message: "#^Parameter \\#1 \\$value \\(Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflowStep\\) of method Chill\\\\MainBundle\\\\Workflow\\\\Validator\\\\StepDestValidValidator\\:\\:validate\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Validator\\\\ConstraintValidatorInterface\\:\\:validate\\(\\)$#" - count: 2 - path: src/Bundle/ChillMainBundle/Workflow/Validator/StepDestValidValidator.php - - - - message: "#^Parameter \\#3 \\$query \\(Doctrine\\\\ORM\\\\QueryBuilder\\) of method Chill\\\\PersonBundle\\\\Controller\\\\HouseholdCompositionTypeApiController\\:\\:customizeQuery\\(\\) should be contravariant with parameter \\$query \\(mixed\\) of method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\AbstractCRUDController\\:\\:customizeQuery\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/HouseholdCompositionTypeApiController.php - - - - message: "#^Return type \\(Doctrine\\\\Common\\\\Collections\\\\Collection\\) of method Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\:\\:getScopes\\(\\) should be covariant with return type \\(iterable\\\\) of method Chill\\\\MainBundle\\\\Entity\\\\HasScopesInterface\\:\\:getScopes\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - - - message: "#^Return type \\(Chill\\\\MainBundle\\\\Entity\\\\Center\\|null\\) of method Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:getCenter\\(\\) should be covariant with return type \\(Chill\\\\MainBundle\\\\Entity\\\\Center\\) of method Chill\\\\MainBundle\\\\Entity\\\\HasCenterInterface\\:\\:getCenter\\(\\)$#" + message: "#^Only booleans are allowed in a negated boolean, null given\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Entity/Person.php - - message: "#^Parameter \\#1 \\$value \\(null\\) of method Chill\\\\PersonBundle\\\\Form\\\\ChoiceLoader\\\\PersonChoiceLoader\\:\\:loadChoiceList\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadChoiceList\\(\\)$#" + message: "#^Only booleans are allowed in a ternary operator condition, Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriodParticipation\\|null given\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Form/ChoiceLoader/PersonChoiceLoader.php + path: src/Bundle/ChillPersonBundle/Entity/Person.php - - message: "#^Parameter \\#2 \\$value \\(null\\) of method Chill\\\\PersonBundle\\\\Form\\\\ChoiceLoader\\\\PersonChoiceLoader\\:\\:loadChoicesForValues\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadChoicesForValues\\(\\)$#" + message: "#^Call to method Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:getFirstName\\(\\) with incorrect case\\: getFirstname$#" count: 1 - path: src/Bundle/ChillPersonBundle/Form/ChoiceLoader/PersonChoiceLoader.php + path: src/Bundle/ChillPersonBundle/Form/Type/PickPersonType.php - - message: "#^Parameter \\#2 \\$value \\(null\\) of method Chill\\\\PersonBundle\\\\Form\\\\ChoiceLoader\\\\PersonChoiceLoader\\:\\:loadValuesForChoices\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadValuesForChoices\\(\\)$#" + message: "#^Call to method Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:getLastName\\(\\) with incorrect case\\: getLastname$#" count: 1 - path: src/Bundle/ChillPersonBundle/Form/ChoiceLoader/PersonChoiceLoader.php + path: src/Bundle/ChillPersonBundle/Form/Type/PickPersonType.php - - message: "#^Parameter \\#2 \\$viewData \\(Doctrine\\\\Common\\\\Collections\\\\Collection\\) of method Chill\\\\PersonBundle\\\\Form\\\\DataMapper\\\\PersonAltNameDataMapper\\:\\:mapFormsToData\\(\\) should be contravariant with parameter \\$viewData \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataMapperInterface\\:\\:mapFormsToData\\(\\)$#" + message: "#^Only booleans are allowed in an if condition, int\\<0, max\\> given\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Form/DataMapper/PersonAltNameDataMapper.php + path: src/Bundle/ChillPersonBundle/Search/SimilarPersonMatcher.php - - message: "#^Parameter \\#3 \\$limit \\(int\\) of method Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluationRepository\\:\\:findBy\\(\\) should be contravariant with parameter \\$limit \\(int\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/AccompanyingPeriodWorkEvaluationRepository.php - - - - message: "#^Parameter \\#4 \\$offset \\(int\\) of method Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluationRepository\\:\\:findBy\\(\\) should be contravariant with parameter \\$offset \\(int\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/AccompanyingPeriodWorkEvaluationRepository.php - - - - message: "#^Parameter \\#3 \\$limit \\(int\\) of method Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\HouseholdCompositionRepository\\:\\:findBy\\(\\) should be contravariant with parameter \\$limit \\(int\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/Household/HouseholdCompositionRepository.php - - - - message: "#^Parameter \\#4 \\$offset \\(int\\) of method Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\HouseholdCompositionRepository\\:\\:findBy\\(\\) should be contravariant with parameter \\$offset \\(int\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/Household/HouseholdCompositionRepository.php - - - - message: "#^Parameter \\#3 \\$limit \\(int\\) of method Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\HouseholdCompositionRepositoryInterface\\:\\:findBy\\(\\) should be contravariant with parameter \\$limit \\(int\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/Household/HouseholdCompositionRepositoryInterface.php - - - - message: "#^Parameter \\#4 \\$offset \\(int\\) of method Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\HouseholdCompositionRepositoryInterface\\:\\:findBy\\(\\) should be contravariant with parameter \\$offset \\(int\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/Household/HouseholdCompositionRepositoryInterface.php - - - - message: "#^Return type \\(class\\-string\\) of method Chill\\\\PersonBundle\\\\Repository\\\\SocialWork\\\\EvaluationRepository\\:\\:getClassName\\(\\) should be covariant with return type \\(class\\-string\\\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:getClassName\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/SocialWork/EvaluationRepository.php - - - - message: "#^Return type \\(class\\-string\\) of method Chill\\\\PersonBundle\\\\Repository\\\\SocialWork\\\\EvaluationRepositoryInterface\\:\\:getClassName\\(\\) should be covariant with return type \\(class\\-string\\\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:getClassName\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/SocialWork/EvaluationRepositoryInterface.php - - - - message: "#^Return type \\(class\\-string\\) of method Chill\\\\PersonBundle\\\\Repository\\\\SocialWork\\\\GoalRepository\\:\\:getClassName\\(\\) should be covariant with return type \\(class\\-string\\\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:getClassName\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/SocialWork/GoalRepository.php - - - - message: "#^Return type \\(class\\-string\\) of method Chill\\\\PersonBundle\\\\Repository\\\\SocialWork\\\\ResultRepository\\:\\:getClassName\\(\\) should be covariant with return type \\(class\\-string\\\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:getClassName\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/SocialWork/ResultRepository.php - - - - message: "#^Return type \\(class\\-string\\) of method Chill\\\\PersonBundle\\\\Repository\\\\SocialWork\\\\SocialActionRepository\\:\\:getClassName\\(\\) should be covariant with return type \\(class\\-string\\\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:getClassName\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/SocialWork/SocialActionRepository.php - - - - message: "#^Return type \\(class\\-string\\) of method Chill\\\\PersonBundle\\\\Repository\\\\SocialWork\\\\SocialIssueRepository\\:\\:getClassName\\(\\) should be covariant with return type \\(class\\-string\\\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:getClassName\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/SocialWork/SocialIssueRepository.php - - - - message: "#^Parameter \\#2 \\$subject \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluationDocument\\) of method Chill\\\\PersonBundle\\\\Security\\\\Authorization\\\\AccompanyingPeriodWorkEvaluationDocumentVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkEvaluationDocumentVoter.php - - - - message: "#^Parameter \\#2 \\$subject \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluation\\) of method Chill\\\\PersonBundle\\\\Security\\\\Authorization\\\\AccompanyingPeriodWorkEvaluationVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkEvaluationVoter.php - - - - message: "#^Parameter \\#2 \\$subject \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\) of method Chill\\\\PersonBundle\\\\Security\\\\Authorization\\\\AccompanyingPeriodWorkVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkVoter.php - - - - message: "#^Parameter \\#1 \\$period \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\|null\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodDocGenNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodDocGenNormalizer.php - - - - message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodDocGenNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\ContextAwareNormalizerInterface\\:\\:supportsNormalization\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodDocGenNormalizer.php - - - - message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodDocGenNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:supportsNormalization\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodDocGenNormalizer.php - - - - message: "#^Parameter \\#1 \\$origin \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\Origin\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodOriginNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodOriginNormalizer.php - - - - message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodOriginNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:supportsNormalization\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodOriginNormalizer.php - - - - message: "#^Parameter \\#1 \\$participation \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriodParticipation\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodParticipationNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodParticipationNormalizer.php - - - - message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodParticipationNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:supportsNormalization\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodParticipationNormalizer.php - - - - message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodResourceNormalizer\\:\\:denormalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:denormalize\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodResourceNormalizer.php - - - - message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodResourceNormalizer\\:\\:supportsDenormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:supportsDenormalization\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodResourceNormalizer.php - - - - message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkDenormalizer\\:\\:denormalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:denormalize\\(\\)$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkDenormalizer.php - - - - message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkDenormalizer\\:\\:supportsDenormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\ContextAwareDenormalizerInterface\\:\\:supportsDenormalization\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkDenormalizer.php - - - - message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkDenormalizer\\:\\:supportsDenormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:supportsDenormalization\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkDenormalizer.php - - - - message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkEvaluationDenormalizer\\:\\:denormalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:denormalize\\(\\)$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkEvaluationDenormalizer.php - - - - message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkEvaluationDenormalizer\\:\\:supportsDenormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\ContextAwareDenormalizerInterface\\:\\:supportsDenormalization\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkEvaluationDenormalizer.php - - - - message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkEvaluationDenormalizer\\:\\:supportsDenormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:supportsDenormalization\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkEvaluationDenormalizer.php - - - - message: "#^Parameter \\#1 \\$object \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluation\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkEvaluationNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkEvaluationNormalizer.php - - - - message: "#^Parameter \\#1 \\$object \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkNormalizer.php - - - - message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\MembersEditorNormalizer\\:\\:denormalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:denormalize\\(\\)$#" + message: "#^Only booleans are allowed in &&, null given on the left side\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/MembersEditorNormalizer.php - - message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\MembersEditorNormalizer\\:\\:supportsDenormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:supportsDenormalization\\(\\)$#" + message: "#^Only booleans are allowed in a ternary operator condition, Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\Household\\|null given\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/MembersEditorNormalizer.php - - - - message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\PersonDocGenNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonDocGenNormalizer.php - - - - message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\PersonDocGenNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\ContextAwareNormalizerInterface\\:\\:supportsNormalization\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonDocGenNormalizer.php - - - - message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\PersonDocGenNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:supportsNormalization\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonDocGenNormalizer.php - - - - message: "#^Parameter \\#1 \\$person \\(Chill\\\\PersonBundle\\\\Entity\\\\Person\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\PersonJsonNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" - count: 2 path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonJsonNormalizer.php - - message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\PersonJsonNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:supportsNormalization\\(\\)$#" - count: 2 + message: "#^Only booleans are allowed in a ternary operator condition, array\\ given\\.$#" + count: 1 path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonJsonNormalizer.php - - message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\PersonJsonNormalizer\\:\\:denormalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:denormalize\\(\\)$#" + message: "#^Call to method Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:getDeathdate\\(\\) with incorrect case\\: getDeathDate$#" count: 2 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonJsonNormalizer.php + path: src/Bundle/ChillPersonBundle/Templating/Entity/PersonRender.php - - message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\PersonJsonNormalizer\\:\\:supportsDenormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:supportsDenormalization\\(\\)$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonJsonNormalizer.php - - - - message: "#^Parameter \\#1 \\$relation \\(Chill\\\\PersonBundle\\\\Entity\\\\Relationships\\\\Relationship\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\RelationshipDocGenNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/RelationshipDocGenNormalizer.php - - - - message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\RelationshipDocGenNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\ContextAwareNormalizerInterface\\:\\:supportsNormalization\\(\\)$#" + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\PersonBundle\\\\Entity\\\\Person\\|null given\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/RelationshipDocGenNormalizer.php + path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\RelationshipDocGenNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:supportsNormalization\\(\\)$#" + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\ReportBundle\\\\Entity\\\\Report given\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/RelationshipDocGenNormalizer.php + path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\SocialActionNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + message: "#^Call to method Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\:\\:setFirstname\\(\\) with incorrect case\\: setFirstName$#" count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/SocialActionNormalizer.php + path: src/Bundle/ChillThirdPartyBundle/EventListener/ThirdPartyEventListener.php - - message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\SocialActionNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:supportsNormalization\\(\\)$#" + message: "#^Dynamic call to static method Chill\\\\ThirdPartyBundle\\\\ThirdPartyType\\\\ThirdPartyTypeProviderInterface\\:\\:getKey\\(\\)\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/SocialActionNormalizer.php - - - - message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\SocialIssueNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/SocialIssueNormalizer.php - - - - message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\SocialIssueNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\ContextAwareNormalizerInterface\\:\\:supportsNormalization\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/SocialIssueNormalizer.php - - - - message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\SocialIssueNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:supportsNormalization\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/SocialIssueNormalizer.php - - - - message: "#^Parameter \\#1 \\$object \\(Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\WorkflowNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/WorkflowNormalizer.php - - - - - message: "#^Parameter \\#1 \\$object \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluationDocument\\) of method Chill\\\\PersonBundle\\\\Workflow\\\\AccompanyingPeriodWorkEvaluationDocumentWorkflowHandler\\:\\:getRelatedObjects\\(\\) should be contravariant with parameter \\$object \\(object\\) of method Chill\\\\MainBundle\\\\Workflow\\\\EntityWorkflowHandlerInterface\\:\\:getRelatedObjects\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Workflow/AccompanyingPeriodWorkEvaluationDocumentWorkflowHandler.php - - - - message: "#^Parameter \\#1 \\$object \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluation\\) of method Chill\\\\PersonBundle\\\\Workflow\\\\AccompanyingPeriodWorkEvaluationWorkflowHandler\\:\\:getRelatedObjects\\(\\) should be contravariant with parameter \\$object \\(object\\) of method Chill\\\\MainBundle\\\\Workflow\\\\EntityWorkflowHandlerInterface\\:\\:getRelatedObjects\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Workflow/AccompanyingPeriodWorkEvaluationWorkflowHandler.php - - - - message: "#^Parameter \\#1 \\$object \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\) of method Chill\\\\PersonBundle\\\\Workflow\\\\AccompanyingPeriodWorkWorkflowHandler\\:\\:getRelatedObjects\\(\\) should be contravariant with parameter \\$object \\(object\\) of method Chill\\\\MainBundle\\\\Workflow\\\\EntityWorkflowHandlerInterface\\:\\:getRelatedObjects\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Workflow/AccompanyingPeriodWorkWorkflowHandler.php - - - - message: "#^Return type \\(Chill\\\\MainBundle\\\\Entity\\\\Center\\|null\\) of method Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask\\:\\:getCenter\\(\\) should be covariant with return type \\(Chill\\\\MainBundle\\\\Entity\\\\Center\\) of method Chill\\\\MainBundle\\\\Entity\\\\HasCenterInterface\\:\\:getCenter\\(\\)$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Entity/AbstractTask.php - - - - message: "#^Return type \\(Chill\\\\MainBundle\\\\Entity\\\\Scope\\|null\\) of method Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask\\:\\:getScope\\(\\) should be covariant with return type \\(Chill\\\\MainBundle\\\\Entity\\\\Scope\\) of method Chill\\\\MainBundle\\\\Entity\\\\HasScopeInterface\\:\\:getScope\\(\\)$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Entity/AbstractTask.php - - - - message: "#^Parameter \\#3 \\$entity \\(Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\) of method Chill\\\\ThirdPartyBundle\\\\Controller\\\\ThirdPartyController\\:\\:onPostFetchEntity\\(\\) should be contravariant with parameter \\$entity \\(mixed\\) of method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\CRUDController\\:\\:onPostFetchEntity\\(\\)$#" - count: 1 - path: src/Bundle/ChillThirdPartyBundle/Controller/ThirdPartyController.php - - - - message: "#^Parameter \\#1 \\$createdAt \\(DateTimeImmutable\\) of method Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\:\\:setCreatedAt\\(\\) should be contravariant with parameter \\$datetime \\(DateTimeInterface\\) of method Chill\\\\MainBundle\\\\Doctrine\\\\Model\\\\TrackCreationInterface\\:\\:setCreatedAt\\(\\)$#" - count: 1 - path: src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php - - - - message: "#^Parameter \\#1 \\$updatedAt \\(DateTimeImmutable\\) of method Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\:\\:setUpdatedAt\\(\\) should be contravariant with parameter \\$datetime \\(DateTimeInterface\\) of method Chill\\\\MainBundle\\\\Doctrine\\\\Model\\\\TrackUpdateInterface\\:\\:setUpdatedAt\\(\\)$#" - count: 1 - path: src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php - - - - message: "#^Parameter \\#3 \\$limit \\(null\\) of method Chill\\\\ThirdPartyBundle\\\\Repository\\\\ThirdPartyRepository\\:\\:findBy\\(\\) should be contravariant with parameter \\$limit \\(int\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" - count: 1 - path: src/Bundle/ChillThirdPartyBundle/Repository/ThirdPartyRepository.php - - - - message: "#^Parameter \\#4 \\$offset \\(null\\) of method Chill\\\\ThirdPartyBundle\\\\Repository\\\\ThirdPartyRepository\\:\\:findBy\\(\\) should be contravariant with parameter \\$offset \\(int\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" - count: 1 - path: src/Bundle/ChillThirdPartyBundle/Repository/ThirdPartyRepository.php - - - - message: "#^Parameter \\#2 \\$subject \\(Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\|null\\) of method Chill\\\\ThirdPartyBundle\\\\Security\\\\Voter\\\\ThirdPartyVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" - count: 1 - path: src/Bundle/ChillThirdPartyBundle/Security/Voter/ThirdPartyVoter.php - - - - message: "#^Parameter \\#1 \\$document \\(Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject\\) of method Chill\\\\WopiBundle\\\\Service\\\\Wopi\\\\ChillDocumentManager\\:\\:getBasename\\(\\) should be contravariant with parameter \\$document \\(ChampsLibres\\\\WopiLib\\\\Contract\\\\Entity\\\\Document\\) of method ChampsLibres\\\\WopiLib\\\\Contract\\\\Service\\\\DocumentManagerInterface\\:\\:getBasename\\(\\)$#" - count: 1 - path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillDocumentManager.php - - - - message: "#^Parameter \\#1 \\$document \\(Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject\\) of method Chill\\\\WopiBundle\\\\Service\\\\Wopi\\\\ChillDocumentManager\\:\\:getCreationDate\\(\\) should be contravariant with parameter \\$document \\(ChampsLibres\\\\WopiLib\\\\Contract\\\\Entity\\\\Document\\) of method ChampsLibres\\\\WopiLib\\\\Contract\\\\Service\\\\DocumentManagerInterface\\:\\:getCreationDate\\(\\)$#" - count: 1 - path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillDocumentManager.php - - - - message: "#^Parameter \\#1 \\$document \\(Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject\\) of method Chill\\\\WopiBundle\\\\Service\\\\Wopi\\\\ChillDocumentManager\\:\\:getDocumentId\\(\\) should be contravariant with parameter \\$document \\(ChampsLibres\\\\WopiLib\\\\Contract\\\\Entity\\\\Document\\) of method ChampsLibres\\\\WopiLib\\\\Contract\\\\Service\\\\DocumentManagerInterface\\:\\:getDocumentId\\(\\)$#" - count: 1 - path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillDocumentManager.php - - - - message: "#^Parameter \\#1 \\$document \\(Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject\\) of method Chill\\\\WopiBundle\\\\Service\\\\Wopi\\\\ChillDocumentManager\\:\\:getLastModifiedDate\\(\\) should be contravariant with parameter \\$document \\(ChampsLibres\\\\WopiLib\\\\Contract\\\\Entity\\\\Document\\) of method ChampsLibres\\\\WopiLib\\\\Contract\\\\Service\\\\DocumentManagerInterface\\:\\:getLastModifiedDate\\(\\)$#" - count: 1 - path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillDocumentManager.php + path: src/Bundle/ChillThirdPartyBundle/ThirdPartyType/ThirdPartyTypeManager.php diff --git a/phpstan-baseline-level-4.neon b/phpstan-baseline-level-4.neon index 833a55afb..7b1eb79dc 100644 --- a/phpstan-baseline-level-4.neon +++ b/phpstan-baseline-level-4.neon @@ -1,4793 +1,526 @@ parameters: ignoreErrors: - - message: "#^Access to an undefined property Chill\\\\ActivityBundle\\\\Entity\\\\Activity\\:\\:\\$personsAssociated\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php - - - - message: "#^Access to an undefined property Chill\\\\ActivityBundle\\\\Entity\\\\Activity\\:\\:\\$personsNotAssociated\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Serializer\\\\SerializerInterface\\:\\:normalize\\(\\)\\.$#" - count: 2 - path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php - - - - message: "#^Method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) invoked with 2 parameters, 1 required\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and 'ChillActivityBundle…'\\|'ChillActivityBundle…' will always evaluate to false\\.$#" - count: 3 - path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php - - - - message: "#^Method Chill\\\\ActivityBundle\\\\Controller\\\\ActivityReasonCategoryController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Controller/ActivityReasonCategoryController.php - - - - message: "#^Method Chill\\\\ActivityBundle\\\\Controller\\\\ActivityReasonCategoryController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Controller/ActivityReasonCategoryController.php - - - - message: "#^Method Chill\\\\ActivityBundle\\\\Controller\\\\ActivityReasonController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Controller/ActivityReasonController.php - - - - message: "#^Method Chill\\\\ActivityBundle\\\\Controller\\\\ActivityReasonController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Controller/ActivityReasonController.php - - - - message: "#^Else branch is unreachable because previous condition is always true\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/DataFixtures/ORM/LoadActivity.php - - - - message: "#^Strict comparison using \\!\\=\\= between null and Chill\\\\ActivityBundle\\\\Entity\\\\ActivityReason will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/DataFixtures/ORM/LoadActivity.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/DataFixtures/ORM/LoadActivityNotifications.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/DependencyInjection/Configuration.php - - - - message: "#^Method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\TreeBuilder\\:\\:getRootNode\\(\\) invoked with 1 parameter, 0 required\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/DependencyInjection/Configuration.php - - - - message: "#^Property Chill\\\\ActivityBundle\\\\Entity\\\\Activity\\:\\:\\$user \\(Chill\\\\MainBundle\\\\Entity\\\\User\\) does not accept Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Entity/Activity.php - - - - message: "#^Property Chill\\\\ActivityBundle\\\\Entity\\\\ActivityPresence\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Entity/ActivityPresence.php - - - - message: "#^Property Chill\\\\ActivityBundle\\\\Entity\\\\ActivityReason\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Entity/ActivityReason.php - - - - message: "#^Argument of an invalid type string supplied for foreach, only iterables are supported\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Entity/ActivityReasonCategory.php - - - - message: "#^Binary operation \"\\.\" between 'ActivityReasonCateg…' and array results in an error\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Entity/ActivityReasonCategory.php - - - - message: "#^Method Chill\\\\ActivityBundle\\\\Entity\\\\ActivityReasonCategory\\:\\:getName\\(\\) should return array but returns string\\.$#" - count: 3 - path: src/Bundle/ChillActivityBundle/Entity/ActivityReasonCategory.php - - - - message: "#^Property Chill\\\\ActivityBundle\\\\Entity\\\\ActivityReasonCategory\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Entity/ActivityReasonCategory.php - - - - message: "#^Property Chill\\\\ActivityBundle\\\\Entity\\\\ActivityReasonCategory\\:\\:\\$name \\(string\\) does not accept array\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Entity/ActivityReasonCategory.php - - - - message: "#^Expression on left side of \\?\\? is not nullable\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/EntityListener/ActivityEntityListener.php - - - - message: "#^Property Chill\\\\ActivityBundle\\\\Export\\\\Aggregator\\\\ACPAggregators\\\\DateAggregator\\:\\:\\$translator is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Export/Aggregator/ACPAggregators/DateAggregator.php - - - - message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\ActivityBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Form/ActivityReasonCategoryType.php - - - - message: "#^Parameter \\$resolver of method Chill\\\\ActivityBundle\\\\Form\\\\ActivityReasonCategoryType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\ActivityBundle\\\\Form\\\\OptionsResolverInterface\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Form/ActivityReasonCategoryType.php - - - - message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findByAccompanyingPeriod\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Repository/ActivityACLAwareRepository.php - - - - message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findByPersonImplied\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Repository/ActivityACLAwareRepository.php - - - - message: "#^Method Chill\\\\ActivityBundle\\\\Repository\\\\ActivityACLAwareRepository\\:\\:findByAccompanyingPeriod\\(\\) has invalid return type Chill\\\\ActivityBundle\\\\Repository\\\\Activity\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Repository/ActivityACLAwareRepository.php - - - - message: "#^Method Chill\\\\ActivityBundle\\\\Repository\\\\ActivityACLAwareRepository\\:\\:getWhereClause\\(\\) should return array but returns string\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Repository/ActivityACLAwareRepository.php - - - - message: "#^Property Chill\\\\ActivityBundle\\\\Repository\\\\ActivityACLAwareRepository\\:\\:\\$repository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Repository/ActivityACLAwareRepository.php - - - - message: "#^Method Chill\\\\ActivityBundle\\\\Repository\\\\ActivityACLAwareRepositoryInterface\\:\\:findByAccompanyingPeriod\\(\\) has invalid return type Chill\\\\ActivityBundle\\\\Repository\\\\Activity\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Repository/ActivityACLAwareRepositoryInterface.php - - - - message: "#^Method Chill\\\\ActivityBundle\\\\Repository\\\\ActivityACLAwareRepositoryInterface\\:\\:findByPerson\\(\\) has invalid return type Chill\\\\ActivityBundle\\\\Repository\\\\Activity\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Repository/ActivityACLAwareRepositoryInterface.php - - - - message: "#^Expression on left side of \\?\\? is not nullable\\.$#" + message: "#^Return type \\(array\\\\) of method Chill\\\\ActivityBundle\\\\Repository\\\\ActivityReasonRepository\\:\\:findAll\\(\\) should be covariant with return type \\(array\\\\) of method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findAll\\(\\)$#" count: 1 path: src/Bundle/ChillActivityBundle/Repository/ActivityReasonRepository.php - - message: "#^Property Chill\\\\ActivityBundle\\\\Service\\\\DocGenerator\\\\ActivityContext\\:\\:\\$documentCategoryRepository is never read, only written\\.$#" + message: "#^Return type \\(array\\\\>\\) of method Chill\\\\AsideActivityBundle\\\\Security\\\\AsideActivityVoter\\:\\:getRolesWithHierarchy\\(\\) should be covariant with return type \\(array\\\\>\\) of method Chill\\\\MainBundle\\\\Security\\\\ProvideRoleHierarchyInterface\\:\\:getRolesWithHierarchy\\(\\)$#" count: 1 - path: src/Bundle/ChillActivityBundle/Service/DocGenerator/ActivityContext.php + path: src/Bundle/ChillAsideActivityBundle/src/Security/AsideActivityVoter.php - - message: "#^Parameter \\$context of method Chill\\\\ActivityBundle\\\\Timeline\\\\TimelineActivityProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + message: "#^Parameter \\#1 \\$criteria \\(array\\\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepository\\:\\:findBy\\(\\) should be contravariant with parameter \\$criteria \\(array\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepositoryInterface\\:\\:findBy\\(\\)$#" count: 1 - path: src/Bundle/ChillActivityBundle/Timeline/TimelineActivityProvider.php + path: src/Bundle/ChillCalendarBundle/Repository/CalendarDocRepository.php - - message: "#^Parameter \\$entity of method Chill\\\\ActivityBundle\\\\Timeline\\\\TimelineActivityProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + message: "#^Parameter \\#1 \\$criteria \\(array\\\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepository\\:\\:findOneBy\\(\\) should be contravariant with parameter \\$criteria \\(array\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepositoryInterface\\:\\:findOneBy\\(\\)$#" count: 1 - path: src/Bundle/ChillActivityBundle/Timeline/TimelineActivityProvider.php + path: src/Bundle/ChillCalendarBundle/Repository/CalendarDocRepository.php - - message: "#^Result of && is always false\\.$#" - count: 7 - path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\Embeddable\\\\CommentEmbeddable will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\User will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and DateTime will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Doctrine\\\\Common\\\\Collections\\\\Collection will always evaluate to false\\.$#" - count: 2 - path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and bool will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillAsideActivityBundle/src/DependencyInjection/Configuration.php - - - - message: "#^Method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\TreeBuilder\\:\\:getRootNode\\(\\) invoked with 1 parameter, 0 required\\.$#" - count: 1 - path: src/Bundle/ChillAsideActivityBundle/src/DependencyInjection/Configuration.php - - - - message: "#^Property Chill\\\\AsideActivityBundle\\\\Entity\\\\AsideActivity\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillAsideActivityBundle/src/Entity/AsideActivity.php - - - - message: "#^Property Chill\\\\AsideActivityBundle\\\\Entity\\\\AsideActivityCategory\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillAsideActivityBundle/src/Entity/AsideActivityCategory.php - - - - message: "#^Call to method DateTimeImmutable\\:\\:add\\(\\) on a separate line has no effect\\.$#" - count: 1 - path: src/Bundle/ChillAsideActivityBundle/src/Form/AsideActivityFormType.php - - - - message: "#^Call to method DateTimeImmutable\\:\\:setTimezone\\(\\) on a separate line has no effect\\.$#" - count: 1 - path: src/Bundle/ChillAsideActivityBundle/src/Form/AsideActivityFormType.php - - - - message: "#^Property Chill\\\\AsideActivityBundle\\\\Form\\\\AsideActivityFormType\\:\\:\\$storage is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillAsideActivityBundle/src/Form/AsideActivityFormType.php - - - - message: "#^Static call to instance method Chill\\\\BudgetBundle\\\\Calculator\\\\CalculatorInterface\\:\\:getAlias\\(\\)\\.$#" - count: 3 - path: src/Bundle/ChillBudgetBundle/Calculator/CalculatorManager.php - - - - message: "#^Call to an undefined method Chill\\\\BudgetBundle\\\\Entity\\\\AbstractElement\\:\\:getId\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Controller/AbstractElementController.php - - - - message: "#^Method Chill\\\\BudgetBundle\\\\Controller\\\\AbstractElementController\\:\\:createDeleteForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Controller/AbstractElementController.php - - - - message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findByEntityAndDate\\(\\)\\.$#" - count: 3 - path: src/Bundle/ChillBudgetBundle/Controller/ElementController.php - - - - message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findByHousehold\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Controller/ElementController.php - - - - message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findByPerson\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Controller/ElementController.php - - - - message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findByEntityAndDate\\(\\)\\.$#" - count: 3 - path: src/Bundle/ChillBudgetBundle/Controller/ElementController.php - - - - message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findByHousehold\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Controller/ElementController.php - - - - message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findByPerson\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Controller/ElementController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/DependencyInjection/Configuration.php - - - - message: "#^Method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\TreeBuilder\\:\\:getRootNode\\(\\) invoked with 1 parameter, 0 required\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/DependencyInjection/Configuration.php - - - - message: "#^Property Chill\\\\BudgetBundle\\\\Entity\\\\AbstractElement\\:\\:\\$startDate \\(DateTimeImmutable\\) does not accept null\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Entity/AbstractElement.php - - - - message: "#^Strict comparison using \\=\\=\\= between 0 and string will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Entity/AbstractElement.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and DateTimeImmutable will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Entity/AbstractElement.php - - - - message: "#^Property Chill\\\\BudgetBundle\\\\Entity\\\\ChargeKind\\:\\:\\$tags is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Entity/ChargeKind.php - - - - message: "#^Property Chill\\\\BudgetBundle\\\\Entity\\\\ResourceKind\\:\\:\\$tags is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Entity/ResourceKind.php - - - - message: "#^Method Chill\\\\BudgetBundle\\\\Repository\\\\ChargeKindRepository\\:\\:findAll\\(\\) has invalid return type Chill\\\\BudgetBundle\\\\Repository\\\\ChargeType\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Repository/ChargeKindRepository.php - - - - message: "#^Method Chill\\\\BudgetBundle\\\\Repository\\\\ChargeKindRepository\\:\\:findAllActive\\(\\) has invalid return type Chill\\\\BudgetBundle\\\\Repository\\\\ChargeType\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Repository/ChargeKindRepository.php - - - - message: "#^Method Chill\\\\BudgetBundle\\\\Repository\\\\ChargeKindRepository\\:\\:findAllByType\\(\\) has invalid return type Chill\\\\BudgetBundle\\\\Repository\\\\ChargeType\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Repository/ChargeKindRepository.php - - - - message: "#^Method Chill\\\\BudgetBundle\\\\Repository\\\\ChargeKindRepository\\:\\:findBy\\(\\) has invalid return type Chill\\\\BudgetBundle\\\\Repository\\\\ChargeType\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Repository/ChargeKindRepository.php - - - - message: "#^PHPDoc tag @param for parameter \\$limit with type mixed is not subtype of native type int\\|null\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Repository/ChargeKindRepository.php - - - - message: "#^PHPDoc tag @param for parameter \\$offset with type mixed is not subtype of native type int\\|null\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Repository/ChargeKindRepository.php - - - - message: "#^Method Chill\\\\BudgetBundle\\\\Repository\\\\ResourceKindRepository\\:\\:findAll\\(\\) has invalid return type Chill\\\\BudgetBundle\\\\Repository\\\\ResourceType\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Repository/ResourceKindRepository.php - - - - message: "#^Method Chill\\\\BudgetBundle\\\\Repository\\\\ResourceKindRepository\\:\\:findAllActive\\(\\) has invalid return type Chill\\\\BudgetBundle\\\\Repository\\\\ResourceType\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Repository/ResourceKindRepository.php - - - - message: "#^Method Chill\\\\BudgetBundle\\\\Repository\\\\ResourceKindRepository\\:\\:findAllByType\\(\\) has invalid return type Chill\\\\BudgetBundle\\\\Repository\\\\ResourceType\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Repository/ResourceKindRepository.php - - - - message: "#^Method Chill\\\\BudgetBundle\\\\Repository\\\\ResourceKindRepository\\:\\:findBy\\(\\) has invalid return type Chill\\\\BudgetBundle\\\\Repository\\\\ResourceType\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Repository/ResourceKindRepository.php - - - - message: "#^PHPDoc tag @param for parameter \\$limit with type mixed is not subtype of native type int\\|null\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Repository/ResourceKindRepository.php - - - - message: "#^PHPDoc tag @param for parameter \\$offset with type mixed is not subtype of native type int\\|null\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Repository/ResourceKindRepository.php - - - - message: "#^Property Chill\\\\BudgetBundle\\\\Service\\\\Summary\\\\SummaryBudget\\:\\:\\$chargeLabels is unused\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Service/Summary/SummaryBudget.php - - - - message: "#^Property Chill\\\\BudgetBundle\\\\Service\\\\Summary\\\\SummaryBudget\\:\\:\\$resourcesLabels is unused\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Service/Summary/SummaryBudget.php - - - - message: "#^Property Chill\\\\CalendarBundle\\\\Command\\\\AzureGrantAdminConsentAndAcquireToken\\:\\:\\$clientRegistry is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Command/AzureGrantAdminConsentAndAcquireToken.php - - - - message: "#^Property Chill\\\\CalendarBundle\\\\Command\\\\SendTestShortMessageOnCalendarCommand\\:\\:\\$phoneNumberHelper is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Command/SendTestShortMessageOnCalendarCommand.php - - - - message: "#^Strict comparison using \\=\\=\\= between false and DateInterval will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Command/SendTestShortMessageOnCalendarCommand.php - - - - message: "#^Strict comparison using \\=\\=\\= between false and DateTimeImmutable will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Command/SendTestShortMessageOnCalendarCommand.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Form\\\\FormInterface\\:\\:isClicked\\(\\)\\.$#" - count: 4 - path: src/Bundle/ChillCalendarBundle/Controller/CalendarController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Serializer\\\\SerializerInterface\\:\\:normalize\\(\\)\\.$#" - count: 2 - path: src/Bundle/ChillCalendarBundle/Controller/CalendarController.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Controller/CalendarController.php - - - - message: "#^Property Chill\\\\CalendarBundle\\\\Controller\\\\CalendarDocController\\:\\:\\$docGeneratorTemplateRepository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Controller/CalendarDocController.php - - - - message: "#^Property Chill\\\\CalendarBundle\\\\Controller\\\\CalendarDocController\\:\\:\\$serializer is unused\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Controller/CalendarDocController.php - - - - message: "#^Method Symfony\\\\Component\\\\HttpFoundation\\\\Session\\\\SessionInterface\\:\\:remove\\(\\) invoked with 2 parameters, 1 required\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Controller/RemoteCalendarConnectAzureController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/DependencyInjection/Configuration.php - - - - message: "#^Method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\TreeBuilder\\:\\:getRootNode\\(\\) invoked with 1 parameter, 0 required\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/DependencyInjection/Configuration.php - - - - message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection\\:\\:matching\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Entity/Calendar.php - - - - message: "#^Property Chill\\\\CalendarBundle\\\\Entity\\\\CalendarRange\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Entity/CalendarRange.php - - - - message: "#^Property Chill\\\\CalendarBundle\\\\Entity\\\\CancelReason\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Entity/CancelReason.php - - - - message: "#^Property Chill\\\\CalendarBundle\\\\Messenger\\\\Message\\\\CalendarMessage\\:\\:\\$oldInvites \\(array\\\\) does not accept array\\\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Messenger/Message/CalendarMessage.php - - - - message: "#^PHPDoc tag @return has invalid value \\(array\\\\)\\: Unexpected token \"\\:\", expected '\\>' at offset 408$#" - count: 2 - path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraph/EventsOnUserSubscriptionCreator.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraph/EventsOnUserSubscriptionCreator.php - - - - message: "#^Method Chill\\\\CalendarBundle\\\\RemoteCalendar\\\\Connector\\\\MSGraph\\\\OnBehalfOfUserTokenStorage\\:\\:getToken\\(\\) should return TheNetworg\\\\OAuth2\\\\Client\\\\Token\\\\AccessToken but returns League\\\\OAuth2\\\\Client\\\\Token\\\\AccessTokenInterface\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraph/OnBehalfOfUserTokenStorage.php - - - - message: "#^Call to method DateTimeImmutable\\:\\:setTimezone\\(\\) on a separate line has no effect\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraph/RemoteEventConverter.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraph/RemoteToLocalSync/CalendarSyncer.php - - - - message: "#^Expression on left side of \\?\\? is not nullable\\.$#" - count: 2 - path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraphRemoteCalendarConnector.php - - - - message: "#^PHPDoc tag @return has invalid value \\(array\\{\\?id\\: string, \\?lastModifiedDateTime\\: int, \\?changeKey\\: string\\}\\)\\: Unexpected token \"\\:\", expected '\\}' at offset 129$#" - count: 2 - path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraphRemoteCalendarConnector.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraphRemoteCalendarConnector.php - - - - message: "#^Property Chill\\\\CalendarBundle\\\\Security\\\\Voter\\\\CalendarVoter\\:\\:\\$authorizationHelper is unused\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Security/Voter/CalendarVoter.php - - - - message: "#^Property Chill\\\\CalendarBundle\\\\Security\\\\Voter\\\\CalendarVoter\\:\\:\\$centerResolverManager is unused\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Security/Voter/CalendarVoter.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Console\\\\Helper\\\\HelperInterface\\:\\:ask\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Command/CreateFieldsOnGroupCommand.php - - - - message: "#^If condition is always true\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Command/CreateFieldsOnGroupCommand.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Command/CreateFieldsOnGroupCommand.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\Controller\\\\CustomFieldController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldController.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\Controller\\\\CustomFieldController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldController.php - - - - message: "#^PHPDoc tag @param has invalid value \\(string\\)\\: Unexpected token \"\\\\n \\* \", expected variable at offset 130$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldController.php - - - - message: "#^Ternary operator condition is always true\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldController.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQuery\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findOneByEntity\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findOneById\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Form\\\\FormInterface\\:\\:isClicked\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\Controller\\\\CustomFieldsGroupController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\Controller\\\\CustomFieldsGroupController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\Controller\\\\CustomFieldsGroupController\\:\\:createMakeDefaultForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php - - - - message: "#^Call to an undefined method Symfony\\\\Contracts\\\\Translation\\\\TranslatorInterface\\:\\:getFallbackLocales\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php - - - - message: "#^Method Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\:\\:create\\(\\) invoked with 4 parameters, 1\\-3 required\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and array\\|string will always evaluate to false\\.$#" - count: 2 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 3 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:render\\(\\) should return string but returns null\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php - - - - message: "#^PHPDoc tag @param for parameter \\$builder with type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface is not subtype of native type Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" - count: 2 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php - - - - message: "#^PHPDoc tag @param for parameter \\$customField with type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField is not subtype of native type Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomField\\.$#" - count: 4 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php - - - - message: "#^Anonymous function never returns null so it can be removed from the return type\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldLongChoice\\\\Option will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php - - - - message: "#^Ternary operator condition is always true\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php - - - - message: "#^Property Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:\\$requestStack is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php - - - - message: "#^Property Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:\\$requestStack is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/DependencyInjection/Configuration.php - - - - message: "#^Method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\TreeBuilder\\:\\:getRootNode\\(\\) invoked with 1 parameter, 0 required\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/DependencyInjection/Configuration.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomField\\:\\:getName\\(\\) should return array but returns string\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Entity/CustomField.php - - - - message: "#^Property Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomField\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Entity/CustomField.php - - - - message: "#^Property Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldLongChoice\\\\Option\\:\\:\\$children is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldLongChoice/Option.php - - - - message: "#^Property Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldLongChoice\\\\Option\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldLongChoice/Option.php - - - - message: "#^Property Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsDefaultGroup\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsDefaultGroup.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup\\:\\:getActiveCustomFields\\(\\) should return Doctrine\\\\Common\\\\Collections\\\\Collection but returns array\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsGroup.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup\\:\\:getName\\(\\) should return array but returns string\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsGroup.php - - - - message: "#^Property Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsGroup.php - - - - message: "#^Call to method buildOptionsForm\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + message: "#^Parameter \\#2 \\$orderBy \\(array\\\\|null\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepository\\:\\:findBy\\(\\) should be contravariant with parameter \\$orderBy \\(array\\|null\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepositoryInterface\\:\\:findBy\\(\\)$#" count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/CustomFieldType.php + path: src/Bundle/ChillCalendarBundle/Repository/CalendarDocRepository.php - - message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\CustomFieldsBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" + message: "#^Return type \\(array\\\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepository\\:\\:findAll\\(\\) should be covariant with return type \\(array\\\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepositoryInterface\\:\\:findAll\\(\\)$#" count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/CustomFieldType.php + path: src/Bundle/ChillCalendarBundle/Repository/CalendarDocRepository.php - - message: "#^Parameter \\$resolver of method Chill\\\\CustomFieldsBundle\\\\Form\\\\CustomFieldType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\Form\\\\OptionsResolverInterface\\.$#" + message: "#^Return type \\(array\\\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepository\\:\\:findBy\\(\\) should be covariant with return type \\(array\\\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepositoryInterface\\:\\:findBy\\(\\)$#" count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/CustomFieldType.php + path: src/Bundle/ChillCalendarBundle/Repository/CalendarDocRepository.php - - message: "#^Property Chill\\\\CustomFieldsBundle\\\\Form\\\\CustomFieldsGroupType\\:\\:\\$translator \\(Symfony\\\\Component\\\\Translation\\\\TranslatorInterface\\) does not accept Symfony\\\\Contracts\\\\Translation\\\\TranslatorInterface\\.$#" + message: "#^Parameter \\#2 \\$subject \\(Chill\\\\CalendarBundle\\\\Entity\\\\Invite\\) of method Chill\\\\CalendarBundle\\\\Security\\\\Voter\\\\InviteVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/CustomFieldsGroupType.php + path: src/Bundle/ChillCalendarBundle/Security/Voter/InviteVoter.php - - message: "#^Instanceof between Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup and Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup will always evaluate to true\\.$#" + message: "#^Parameter \\#1 \\$customFieldsGroup \\(Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup\\|null\\) of method Chill\\\\CustomFieldsBundle\\\\Form\\\\DataTransformer\\\\CustomFieldsGroupToIdTransformer\\:\\:transform\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataTransformerInterface\\:\\:transform\\(\\)$#" count: 1 path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/CustomFieldsGroupToIdTransformer.php - - message: "#^Instanceof between string and Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup will always evaluate to false\\.$#" + message: "#^Parameter \\#1 \\$id \\(string\\) of method Chill\\\\CustomFieldsBundle\\\\Form\\\\DataTransformer\\\\CustomFieldsGroupToIdTransformer\\:\\:reverseTransform\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataTransformerInterface\\:\\:reverseTransform\\(\\)$#" count: 1 path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/CustomFieldsGroupToIdTransformer.php - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\Form\\\\DataTransformer\\\\CustomFieldsGroupToIdTransformer\\:\\:transform\\(\\) should return string but returns int\\.$#" + message: "#^Parameter \\#2 \\$query \\(Doctrine\\\\ORM\\\\QueryBuilder\\) of method Chill\\\\DocGeneratorBundle\\\\Controller\\\\AdminDocGeneratorTemplateController\\:\\:orderQuery\\(\\) should be contravariant with parameter \\$query \\(mixed\\) of method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\CRUDController\\:\\:orderQuery\\(\\)$#" count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/CustomFieldsGroupToIdTransformer.php + path: src/Bundle/ChillDocGeneratorBundle/Controller/AdminDocGeneratorTemplateController.php - - message: "#^Call to an undefined method Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomField\\:\\:getLabel\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/JsonCustomFieldToArrayTransformer.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findOneById\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/JsonCustomFieldToArrayTransformer.php - - - - message: "#^Call to method getCustomFieldByType\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldCompiler\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/Type/CustomFieldType.php - - - - message: "#^Property Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldType\\:\\:\\$customFieldCompiler \\(Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldCompiler\\) does not accept Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/Type/CustomFieldType.php - - - - message: "#^Property Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldType\\:\\:\\$customFieldCompiler has unknown class Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldCompiler as its type\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/Type/CustomFieldType.php - - - - message: "#^Property Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldType\\:\\:\\$om is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/Type/CustomFieldType.php - - - - message: "#^Invalid array key type Chill\\\\CustomFieldsBundle\\\\Service\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:getCustomFieldByType\\(\\) has invalid return type Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php - - - - message: "#^Parameter \\$serviceName of method Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:addCustomField\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\Service\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php - - - - message: "#^Parameter \\$type of method Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:addCustomField\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\Service\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php - - - - message: "#^Property Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:\\$container \\(Chill\\\\CustomFieldsBundle\\\\Service\\\\Container\\) does not accept Symfony\\\\Component\\\\DependencyInjection\\\\ContainerInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php - - - - message: "#^Property Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:\\$container has unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\Container as its type\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php - - - - message: "#^Property Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:\\$container is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php - - - - message: "#^Call to method deserialize\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldsHelper.php - - - - message: "#^Call to method isEmptyValue\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldsHelper.php - - - - message: "#^Call to method render\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldsHelper.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldsHelper\\:\\:renderCustomField\\(\\) has invalid return type Chill\\\\CustomFieldsBundle\\\\Service\\\\The\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldsHelper.php - - - - message: "#^Property Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldsHelper\\:\\:\\$em is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldsHelper.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\Templating\\\\Twig\\\\CustomFieldRenderingTwig\\:\\:renderWidget\\(\\) should return string but returns Chill\\\\CustomFieldsBundle\\\\Service\\\\The\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Templating/Twig/CustomFieldRenderingTwig.php - - - - message: "#^Property Chill\\\\CustomFieldsBundle\\\\Templating\\\\Twig\\\\CustomFieldRenderingTwig\\:\\:\\$container \\(Symfony\\\\Component\\\\DependencyInjection\\\\Container\\) does not accept Symfony\\\\Component\\\\DependencyInjection\\\\ContainerInterface\\|null\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Templating/Twig/CustomFieldRenderingTwig.php - - - - message: "#^Parameter \\$customFielsGroup of method Chill\\\\CustomFieldsBundle\\\\Templating\\\\Twig\\\\CustomFieldsGroupRenderingTwig\\:\\:renderWidget\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\Templating\\\\Twig\\\\CustomFieldsGroud\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Templating/Twig/CustomFieldsGroupRenderingTwig.php - - - - message: "#^Property Chill\\\\CustomFieldsBundle\\\\Templating\\\\Twig\\\\CustomFieldsGroupRenderingTwig\\:\\:\\$container \\(Symfony\\\\Component\\\\DependencyInjection\\\\Container\\) does not accept Symfony\\\\Component\\\\DependencyInjection\\\\ContainerInterface\\|null\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Templating/Twig/CustomFieldsGroupRenderingTwig.php - - - - message: "#^Left side of && is always true\\.$#" - count: 1 - path: src/Bundle/ChillDocGeneratorBundle/Controller/DocGeneratorTemplateController.php - - - - message: "#^PHPDoc tag @return with type void is incompatible with native type Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" - count: 1 - path: src/Bundle/ChillDocGeneratorBundle/Controller/DocGeneratorTemplateController.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and int will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillDocGeneratorBundle/Controller/DocGeneratorTemplateController.php - - - - message: "#^Binary operation \"\\.\" between 'Adding doc…' and array\\{filename\\: 'pKNlhCrQDCRsAuC8vYH…', key\\: '\\{\"alg\"\\:\"A256CBC\",…', iv\\: '\\[86,231,83,148,117…', type\\: 'application/vnd…'\\} results in an error\\.$#" - count: 1 - path: src/Bundle/ChillDocGeneratorBundle/DataFixtures/ORM/LoadDocGeneratorTemplate.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillDocGeneratorBundle/DependencyInjection/Configuration.php - - - - message: "#^Property Chill\\\\DocGeneratorBundle\\\\Entity\\\\DocGeneratorTemplate\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillDocGeneratorBundle/Entity/DocGeneratorTemplate.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Doctrine\\\\Common\\\\Collections\\\\Collection will always evaluate to false\\.$#" - count: 1 + message: "#^Parameter \\#1 \\$object \\(Doctrine\\\\Common\\\\Collections\\\\Collection\\) of method Chill\\\\DocGeneratorBundle\\\\Serializer\\\\Normalizer\\\\CollectionDocGenNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 2 path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/CollectionDocGenNormalizer.php - - message: "#^Call to an undefined method ReflectionType\\:\\:getName\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/DocGenObjectNormalizer.php - - - - message: "#^Expression on left side of \\?\\? is not nullable\\.$#" - count: 1 - path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/DocGenObjectNormalizer.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod will always evaluate to false\\.$#" + message: "#^Return type \\(array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|void\\|null\\) of method Chill\\\\DocGeneratorBundle\\\\Serializer\\\\Normalizer\\\\CollectionDocGenNormalizer\\:\\:normalize\\(\\) should be covariant with return type \\(array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" count: 2 - path: src/Bundle/ChillDocStoreBundle/Controller/DocumentAccompanyingCourseController.php + path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/CollectionDocGenNormalizer.php - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQuery\\(\\)\\.$#" + message: "#^Return type \\(Chill\\\\MainBundle\\\\Entity\\\\Scope\\|null\\) of method Chill\\\\DocStoreBundle\\\\Entity\\\\PersonDocument\\:\\:getScope\\(\\) should be covariant with return type \\(Chill\\\\MainBundle\\\\Entity\\\\Scope\\) of method Chill\\\\MainBundle\\\\Entity\\\\HasScopeInterface\\:\\:getScope\\(\\)$#" count: 1 - path: src/Bundle/ChillDocStoreBundle/Controller/DocumentCategoryController.php + path: src/Bundle/ChillDocStoreBundle/Entity/PersonDocument.php - - message: "#^Method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) invoked with 2 parameters, 1 required\\.$#" - count: 4 - path: src/Bundle/ChillDocStoreBundle/Controller/DocumentPersonController.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\Person will always evaluate to false\\.$#" - count: 2 - path: src/Bundle/ChillDocStoreBundle/Controller/DocumentPersonController.php - - - - message: "#^Method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\TreeBuilder\\:\\:getRootNode\\(\\) invoked with 1 parameter, 0 required\\.$#" - count: 1 - path: src/Bundle/ChillDocStoreBundle/DependencyInjection/Configuration.php - - - - message: "#^Property Chill\\\\DocStoreBundle\\\\Entity\\\\Document\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillDocStoreBundle/Entity/Document.php - - - - message: "#^Property Chill\\\\DocStoreBundle\\\\Entity\\\\Document\\:\\:\\$user has unknown class Chill\\\\PersonBundle\\\\Entity\\\\user as its type\\.$#" - count: 1 - path: src/Bundle/ChillDocStoreBundle/Entity/Document.php - - - - message: "#^Property Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillDocStoreBundle/Entity/StoredObject.php - - - - message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findByFilename\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillDocStoreBundle/Object/ObjectToAsyncFileTransformer.php - - - - message: "#^Property Chill\\\\DocStoreBundle\\\\Repository\\\\AccompanyingCourseDocumentRepository\\:\\:\\$em is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillDocStoreBundle/Repository/AccompanyingCourseDocumentRepository.php - - - - message: "#^Property Chill\\\\DocStoreBundle\\\\Repository\\\\DocumentCategoryRepository\\:\\:\\$em is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillDocStoreBundle/Repository/DocumentCategoryRepository.php - - - - message: "#^Instanceof between Chill\\\\DocStoreBundle\\\\Entity\\\\PersonDocument and Chill\\\\DocStoreBundle\\\\Entity\\\\PersonDocument will always evaluate to true\\.$#" + message: "#^Parameter \\#2 \\$subject \\(Chill\\\\DocStoreBundle\\\\Entity\\\\PersonDocument\\) of method Chill\\\\DocStoreBundle\\\\Security\\\\Authorization\\\\PersonDocumentVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" count: 1 path: src/Bundle/ChillDocStoreBundle/Security/Authorization/PersonDocumentVoter.php - - message: "#^Default value of the parameter \\#5 \\$options \\(array\\{\\}\\) of method Chill\\\\DocStoreBundle\\\\Templating\\\\WopiEditTwigExtensionRuntime\\:\\:renderButtonGroup\\(\\) is incompatible with type array\\{small\\: bool\\}\\.$#" + message: "#^Parameter \\#1 \\$object \\(Chill\\\\DocStoreBundle\\\\Entity\\\\AccompanyingCourseDocument\\) of method Chill\\\\DocStoreBundle\\\\Workflow\\\\AccompanyingCourseDocumentWorkflowHandler\\:\\:getRelatedObjects\\(\\) should be contravariant with parameter \\$object \\(object\\) of method Chill\\\\MainBundle\\\\Workflow\\\\EntityWorkflowHandlerInterface\\:\\:getRelatedObjects\\(\\)$#" count: 1 - path: src/Bundle/ChillDocStoreBundle/Templating/WopiEditTwigExtensionRuntime.php + path: src/Bundle/ChillDocStoreBundle/Workflow/AccompanyingCourseDocumentWorkflowHandler.php - - message: "#^Property Chill\\\\DocStoreBundle\\\\Templating\\\\WopiEditTwigExtensionRuntime\\:\\:\\$discovery is never read, only written\\.$#" + message: "#^Parameter \\#1 \\$value \\(null\\) of method Chill\\\\EventBundle\\\\Form\\\\ChoiceLoader\\\\EventChoiceLoader\\:\\:loadChoiceList\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadChoiceList\\(\\)$#" count: 1 - path: src/Bundle/ChillDocStoreBundle/Templating/WopiEditTwigExtensionRuntime.php + path: src/Bundle/ChillEventBundle/Form/ChoiceLoader/EventChoiceLoader.php - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:countByPerson\\(\\)\\.$#" + message: "#^Parameter \\#2 \\$value \\(null\\) of method Chill\\\\EventBundle\\\\Form\\\\ChoiceLoader\\\\EventChoiceLoader\\:\\:loadChoicesForValues\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadChoicesForValues\\(\\)$#" count: 1 - path: src/Bundle/ChillEventBundle/Controller/EventController.php + path: src/Bundle/ChillEventBundle/Form/ChoiceLoader/EventChoiceLoader.php - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findByPersonInCircle\\(\\)\\.$#" + message: "#^Parameter \\#2 \\$value \\(null\\) of method Chill\\\\EventBundle\\\\Form\\\\ChoiceLoader\\\\EventChoiceLoader\\:\\:loadValuesForChoices\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadValuesForChoices\\(\\)$#" count: 1 - path: src/Bundle/ChillEventBundle/Controller/EventController.php + path: src/Bundle/ChillEventBundle/Form/ChoiceLoader/EventChoiceLoader.php - - message: "#^Cannot call method getUsernameCanonical\\(\\) on int\\\\|int\\<1, max\\>\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/EventController.php - - - - message: "#^Method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) invoked with 2 parameters, 1 required\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/EventController.php - - - - message: "#^Negated boolean expression is always false\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/EventController.php - - - - message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\EventTypeController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/EventTypeController.php - - - - message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\EventTypeController\\:\\:createDeleteForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/EventTypeController.php - - - - message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\EventTypeController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/EventTypeController.php - - - - message: "#^Call to an undefined method Traversable\\:\\:count\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/ParticipationController.php - - - - message: "#^Call to an undefined method Traversable\\:\\:current\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/ParticipationController.php - - - - message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\ParticipationController\\:\\:handleRequest\\(\\) has invalid return type Chill\\\\EventBundle\\\\Controller\\\\Participations\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/ParticipationController.php - - - - message: "#^Strict comparison using \\!\\=\\= between null and int will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/ParticipationController.php - - - - message: "#^Strict comparison using \\!\\=\\= between null and int\\|string will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/ParticipationController.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\EventBundle\\\\Entity\\\\Event will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/ParticipationController.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\EventBundle\\\\Entity\\\\Participation will always evaluate to false\\.$#" - count: 2 - path: src/Bundle/ChillEventBundle/Controller/ParticipationController.php - - - - message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\RoleController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/RoleController.php - - - - message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\RoleController\\:\\:createDeleteForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/RoleController.php - - - - message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\RoleController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/RoleController.php - - - - message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\StatusController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/StatusController.php - - - - message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\StatusController\\:\\:createDeleteForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/StatusController.php - - - - message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\StatusController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/StatusController.php - - - - message: "#^Method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\TreeBuilder\\:\\:getRootNode\\(\\) invoked with 1 parameter, 0 required\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/DependencyInjection/Configuration.php - - - - message: "#^Call to an undefined method Chill\\\\EventBundle\\\\Entity\\\\Participation\\:\\:getIterator\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Entity/Event.php - - - - message: "#^Call to an undefined method Chill\\\\EventBundle\\\\Entity\\\\Participation\\:\\:removeElement\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Entity/Event.php - - - - message: "#^Method Chill\\\\EventBundle\\\\Entity\\\\Event\\:\\:getModerator\\(\\) should return int but returns Chill\\\\MainBundle\\\\Entity\\\\User\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Entity/Event.php - - - - message: "#^Property Chill\\\\EventBundle\\\\Entity\\\\Event\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Entity/Event.php - - - - message: "#^Property Chill\\\\EventBundle\\\\Entity\\\\Event\\:\\:\\$moderator \\(Chill\\\\MainBundle\\\\Entity\\\\User\\) does not accept int\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Entity/Event.php - - - - message: "#^Property Chill\\\\EventBundle\\\\Entity\\\\Event\\:\\:\\$participations \\(Chill\\\\EventBundle\\\\Entity\\\\Participation\\) does not accept Doctrine\\\\Common\\\\Collections\\\\ArrayCollection\\<\\*NEVER\\*, \\*NEVER\\*\\>\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Entity/Event.php - - - - message: "#^Property Chill\\\\EventBundle\\\\Entity\\\\EventType\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Entity/EventType.php - - - - message: "#^Property Chill\\\\EventBundle\\\\Entity\\\\Participation\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Entity/Participation.php - - - - message: "#^Result of \\|\\| is always false\\.$#" - count: 2 - path: src/Bundle/ChillEventBundle/Entity/Participation.php - - - - message: "#^Strict comparison using \\=\\=\\= between Chill\\\\EventBundle\\\\Entity\\\\Event and null will always evaluate to false\\.$#" - count: 3 - path: src/Bundle/ChillEventBundle/Entity/Participation.php - - - - message: "#^Strict comparison using \\=\\=\\= between Chill\\\\EventBundle\\\\Entity\\\\Role and null will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Entity/Participation.php - - - - message: "#^Strict comparison using \\=\\=\\= between Chill\\\\EventBundle\\\\Entity\\\\Status and null will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Entity/Participation.php - - - - message: "#^Property Chill\\\\EventBundle\\\\Entity\\\\Role\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Entity/Role.php - - - - message: "#^Property Chill\\\\EventBundle\\\\Entity\\\\Status\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Entity/Status.php - - - - message: "#^Call to method setDefaults\\(\\) on an unknown class Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolverInterface\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Form/EventTypeType.php - - - - message: "#^Call to method setDefaults\\(\\) on an unknown class Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolverInterface\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Form/RoleType.php - - - - message: "#^Call to method setDefaults\\(\\) on an unknown class Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolverInterface\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Form/StatusType.php - - - - message: "#^Property Chill\\\\EventBundle\\\\Form\\\\Type\\\\PickEventType\\:\\:\\$user \\(Chill\\\\MainBundle\\\\Entity\\\\User\\) does not accept string\\|Stringable\\|Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Form/Type/PickEventType.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Form\\\\ResolvedFormTypeInterface\\:\\:getName\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Form/Type/PickRoleType.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Form\\\\ResolvedFormTypeInterface\\:\\:getName\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Form/Type/PickStatusType.php - - - - message: "#^Method Chill\\\\EventBundle\\\\Search\\\\EventSearch\\:\\:renderResult\\(\\) should return string but returns array\\\\|bool\\>\\>\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Search/EventSearch.php - - - - message: "#^Property Chill\\\\EventBundle\\\\Search\\\\EventSearch\\:\\:\\$user \\(Chill\\\\MainBundle\\\\Entity\\\\User\\) does not accept string\\|Stringable\\|Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Search/EventSearch.php - - - - message: "#^Instanceof between Chill\\\\EventBundle\\\\Entity\\\\Event and Chill\\\\EventBundle\\\\Entity\\\\Event will always evaluate to true\\.$#" + message: "#^Parameter \\#2 \\$subject \\(Chill\\\\EventBundle\\\\Entity\\\\Event\\) of method Chill\\\\EventBundle\\\\Security\\\\Authorization\\\\EventVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" count: 1 path: src/Bundle/ChillEventBundle/Security/Authorization/EventVoter.php - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Security/Authorization/EventVoter.php - - - - message: "#^Instanceof between Chill\\\\EventBundle\\\\Entity\\\\Participation and Chill\\\\EventBundle\\\\Entity\\\\Participation will always evaluate to true\\.$#" + message: "#^Parameter \\#2 \\$subject \\(Chill\\\\EventBundle\\\\Entity\\\\Participation\\) of method Chill\\\\EventBundle\\\\Security\\\\Authorization\\\\ParticipationVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" count: 1 path: src/Bundle/ChillEventBundle/Security/Authorization/ParticipationVoter.php - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Security/Authorization/ParticipationVoter.php - - - - message: "#^Parameter \\#2 \\$context \\(string\\) of method Chill\\\\EventBundle\\\\Timeline\\\\TimelineEventProvider\\:\\:getEntityTemplate\\(\\) should be compatible with parameter \\$context \\(Chill\\\\MainBundle\\\\Timeline\\\\type\\) of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineProviderInterface\\:\\:getEntityTemplate\\(\\)$#" + message: "#^Parameter \\#1 \\$entity \\(Chill\\\\EventBundle\\\\Entity\\\\Event\\) of method Chill\\\\EventBundle\\\\Timeline\\\\TimelineEventProvider\\:\\:getEntityTemplate\\(\\) should be contravariant with parameter \\$entity \\(Chill\\\\MainBundle\\\\Timeline\\\\type\\) of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineProviderInterface\\:\\:getEntityTemplate\\(\\)$#" count: 1 path: src/Bundle/ChillEventBundle/Timeline/TimelineEventProvider.php - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillFamilyMembersBundle/DependencyInjection/Configuration.php - - - - message: "#^Method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\TreeBuilder\\:\\:getRootNode\\(\\) invoked with 1 parameter, 0 required\\.$#" - count: 1 - path: src/Bundle/ChillFamilyMembersBundle/DependencyInjection/Configuration.php - - - - message: "#^Instanceof between DateTimeImmutable and DateTime will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php - - - - message: "#^Instanceof between DateTimeImmutable and DateTimeImmutable will always evaluate to true\\.$#" - count: 2 - path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php - - - - message: "#^Method Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\:\\:getBirthdate\\(\\) has invalid return type Chill\\\\FamilyMembersBundle\\\\Entity\\\\date_immutable\\.$#" - count: 1 - path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php - - - - message: "#^Method Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\:\\:setBirthdate\\(\\) should return Chill\\\\FamilyMembersBundle\\\\Entity\\\\FamilyMember but returns \\$this\\(Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\)\\.$#" - count: 1 - path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php - - - - message: "#^Method Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\:\\:setEndDate\\(\\) should return Chill\\\\FamilyMembersBundle\\\\Entity\\\\FamilyMember but returns \\$this\\(Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\)\\.$#" - count: 1 - path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php - - - - message: "#^Method Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\:\\:setFirstname\\(\\) should return Chill\\\\FamilyMembersBundle\\\\Entity\\\\FamilyMember but returns \\$this\\(Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\)\\.$#" - count: 1 - path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php - - - - message: "#^Method Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\:\\:setGender\\(\\) should return Chill\\\\FamilyMembersBundle\\\\Entity\\\\FamilyMember but returns \\$this\\(Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\)\\.$#" - count: 1 - path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php - - - - message: "#^Method Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\:\\:setLastname\\(\\) should return Chill\\\\FamilyMembersBundle\\\\Entity\\\\FamilyMember but returns \\$this\\(Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\)\\.$#" - count: 1 - path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php - - - - message: "#^Method Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\:\\:setLink\\(\\) should return Chill\\\\FamilyMembersBundle\\\\Entity\\\\FamilyMember but returns \\$this\\(Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\)\\.$#" - count: 1 - path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php - - - - message: "#^Method Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\:\\:setProfessionnalSituation\\(\\) should return Chill\\\\FamilyMembersBundle\\\\Entity\\\\FamilyMember but returns \\$this\\(Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\)\\.$#" - count: 1 - path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php - - - - message: "#^Method Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\:\\:setStartDate\\(\\) should return Chill\\\\FamilyMembersBundle\\\\Entity\\\\FamilyMember but returns \\$this\\(Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\)\\.$#" - count: 1 - path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php - - - - message: "#^Property Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\:\\:\\$birthdate \\(Chill\\\\FamilyMembersBundle\\\\Entity\\\\date_immutable\\|null\\) does not accept DateTimeImmutable\\.$#" - count: 1 - path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php - - - - message: "#^Property Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\:\\:\\$birthdate \\(Chill\\\\FamilyMembersBundle\\\\Entity\\\\date_immutable\\|null\\) does not accept DateTimeImmutable\\|null\\.$#" - count: 1 - path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php - - - - message: "#^Property Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\:\\:\\$birthdate has unknown class Chill\\\\FamilyMembersBundle\\\\Entity\\\\date_immutable as its type\\.$#" - count: 1 - path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php - - - - message: "#^Result of \\|\\| is always true\\.$#" - count: 3 - path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and DateTimeImmutable will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and null will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php - - - - message: "#^Property Chill\\\\FamilyMembersBundle\\\\Entity\\\\FamilyMember\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillFamilyMembersBundle/Entity/FamilyMember.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQueryBuilder\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/AbstractCRUDController.php - - - - message: "#^Call to method select\\(\\) on an unknown class Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\QueryBuilder\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/AbstractCRUDController.php - - - - message: "#^Call to method setFirstResult\\(\\) on an unknown class Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\QueryBuilder\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/AbstractCRUDController.php - - - - message: "#^Method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\AbstractCRUDController\\:\\:buildQueryEntities\\(\\) has invalid return type Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\QueryBuilder\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/AbstractCRUDController.php - - - - message: "#^PHPDoc tag @throws with type Symfony\\\\Component\\\\Security\\\\Core\\\\Exception\\\\AccessDeniedHttpException is not subtype of Throwable$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/AbstractCRUDController.php - - - - message: "#^PHPDoc tag @param for parameter \\$postedDataContext with type string is incompatible with native type array\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php - - - - message: "#^PHPDoc tag @param has invalid value \\(mixed id\\)\\: Unexpected token \"id\", expected variable at offset 956$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php - - - - message: "#^PHPDoc tag @param has invalid value \\(string action\\)\\: Unexpected token \"action\", expected variable at offset 929$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php - - - - message: "#^PHPDoc tag @return with type void is incompatible with native type Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and object will always evaluate to false\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php - - message: "#^Unreachable statement \\- code above always terminates\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php + path: src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQueryBuilder\\(\\)\\.$#" + message: "#^Property Chill\\\\JobBundle\\\\Entity\\\\Rome\\\\Metier\\:\\:\\$appellations is never read, only written\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php + path: src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php - - message: "#^Call to method getQuery\\(\\) on an unknown class Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\type\\.$#" + message: "#^Method Chill\\\\JobBundle\\\\Export\\\\ListCSPerson\\:\\:splitArrayToColumns\\(\\) never returns Closure so it can be removed from the return type\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php + path: src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php - - message: "#^Instanceof between Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse and Symfony\\\\Component\\\\HttpFoundation\\\\Response will always evaluate to true\\.$#" - count: 3 - path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php - - - - message: "#^Method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\CRUDController\\:\\:index\\(\\) has invalid return type Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php - - - - message: "#^Method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\CRUDController\\:\\:queryEntities\\(\\) has invalid return type Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php - - - - message: "#^PHPDoc tag @throws with type Symfony\\\\Component\\\\Security\\\\Core\\\\Exception\\\\AccessDeniedHttpException is not subtype of Throwable$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php - - - - message: "#^Parameter \\$formClass of method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\CRUDController\\:\\:formCreateAction\\(\\) has invalid type Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 3 - path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php - - - - message: "#^Constant Chill\\\\MainBundle\\\\CRUD\\\\Routing\\\\CRUDRoutesLoader\\:\\:ALL_INDEX_METHODS is unused\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Routing/CRUDRoutesLoader.php - - - - message: "#^Constant Chill\\\\MainBundle\\\\CRUD\\\\Routing\\\\CRUDRoutesLoader\\:\\:ALL_SINGLE_METHODS is unused\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Routing/CRUDRoutesLoader.php - - - - message: "#^Strict comparison using \\=\\=\\= between 'CRUD' and null will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Routing/CRUDRoutesLoader.php - - - - message: "#^Strict comparison using \\=\\=\\= between 'collection' and 'single'\\|null will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Routing/CRUDRoutesLoader.php - - - - message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findOneByName\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Command/ChillImportUsersCommand.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Command\\\\ChillImportUsersCommand\\:\\:getCenters\\(\\) should return array\\ but returns null\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Command/ChillImportUsersCommand.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Command\\\\ChillUserSendRenewPasswordCodeCommand\\:\\:\\$output is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Command/ChillUserSendRenewPasswordCodeCommand.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Console\\\\Helper\\\\HelperInterface\\:\\:askHiddenResponse\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Command/SetPasswordCommand.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Controller\\\\CenterController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/CenterController.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Controller\\\\CenterController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/CenterController.php - - - - message: "#^Instanceof between Chill\\\\MainBundle\\\\Export\\\\DirectExportInterface and Chill\\\\MainBundle\\\\Export\\\\DirectExportInterface will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/ExportController.php - - - - message: "#^PHPDoc tag @param for parameter \\$request with type string is incompatible with native type Symfony\\\\Component\\\\HttpFoundation\\\\Request\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/ExportController.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/ExportController.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQueryBuilder\\(\\)\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Controller/PasswordController.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findOneByUsernameCanonical\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/PasswordController.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Controller\\\\PasswordController\\:\\:passwordForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/PasswordController.php - - - - message: "#^Method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) invoked with 2 parameters, 1 required\\.$#" - count: 4 - path: src/Bundle/ChillMainBundle/Controller/PasswordController.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Controller\\\\PermissionsGroupController\\:\\:addLinkRoleScopeAction\\(\\) has invalid return type Chill\\\\MainBundle\\\\Controller\\\\Respon\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Controller\\\\PermissionsGroupController\\:\\:addLinkRoleScopeAction\\(\\) should return Chill\\\\MainBundle\\\\Controller\\\\Respon but returns Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Controller\\\\PermissionsGroupController\\:\\:addLinkRoleScopeAction\\(\\) should return Chill\\\\MainBundle\\\\Controller\\\\Respon but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Controller\\\\PermissionsGroupController\\:\\:createAddRoleScopeForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Controller\\\\PermissionsGroupController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Controller\\\\PermissionsGroupController\\:\\:createDeleteRoleScopeForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Controller\\\\PermissionsGroupController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Controller\\\\PermissionsGroupController\\:\\:deleteLinkRoleScopeAction\\(\\) has invalid return type Chill\\\\MainBundle\\\\Controller\\\\redirection\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Controller\\\\PermissionsGroupController\\:\\:deleteLinkRoleScopeAction\\(\\) should return Chill\\\\MainBundle\\\\Controller\\\\redirection but returns Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php - - - - message: "#^PHPDoc tag @param for parameter \\$permissionsGroup with type mixed is not subtype of native type Chill\\\\MainBundle\\\\Entity\\\\PermissionsGroup\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php - - - - message: "#^PHPDoc tag @throws with type Chill\\\\MainBundle\\\\Controller\\\\type is not subtype of Throwable$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQuery\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/PostalCodeController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\HttpFoundation\\\\Session\\\\SessionInterface\\:\\:getFlashBag\\(\\)\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Controller/SavedExportController.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Controller\\\\ScopeController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/ScopeController.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Controller\\\\ScopeController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/ScopeController.php - - - - message: "#^Call to method buildForm\\(\\) on an unknown class Chill\\\\MainBundle\\\\Search\\\\HasAdvancedSearchForm\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/SearchController.php - - - - message: "#^Call to method convertFormDataToQuery\\(\\) on an unknown class Chill\\\\MainBundle\\\\Search\\\\HasAdvancedSearchForm\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/SearchController.php - - - - message: "#^Call to method convertTermsToFormData\\(\\) on an unknown class Chill\\\\MainBundle\\\\Search\\\\HasAdvancedSearchForm\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/SearchController.php - - - - message: "#^Call to method getAdvancedSearchTitle\\(\\) on an unknown class Chill\\\\MainBundle\\\\Search\\\\HasAdvancedSearchForm\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/SearchController.php - - - - message: "#^PHPDoc tag @var for variable \\$variable contains unknown class Chill\\\\MainBundle\\\\Controller\\\\Chill\\\\MainBundle\\\\Search\\\\HasAdvancedSearchFormInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/SearchController.php - - - - message: "#^PHPDoc tag @var for variable \\$variable contains unknown class Chill\\\\MainBundle\\\\Controller\\\\Chill\\\\MainBundle\\\\Search\\\\SearchProvider\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Controller/SearchController.php - - - - message: "#^Variable \\$variable in PHPDoc tag @var does not match assigned variable \\$search\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/SearchController.php - - - - message: "#^Variable \\$variable in PHPDoc tag @var does not match assigned variable \\$searchProvider\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Controller/SearchController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\:\\:getGroupCenters\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/TimelineCenterController.php - - - - message: "#^Instanceof between Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse and Symfony\\\\Component\\\\HttpFoundation\\\\Response will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/UserController.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/UserController.php - - - - message: "#^PHPDoc tag @return has invalid value \\(array\\<0\\: CronJobInterface\\[\\], 1\\: array\\\\>\\)\\: Unexpected token \"\\:\", expected '\\>' at offset 26$#" - count: 1 - path: src/Bundle/ChillMainBundle/Cron/CronManager.php - - - - message: "#^Property Chill\\\\MainBundle\\\\DataFixtures\\\\ORM\\\\LoadAddressReferences\\:\\:\\$container is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DataFixtures/ORM/LoadAddressReferences.php - - - - message: "#^Property Chill\\\\MainBundle\\\\DataFixtures\\\\ORM\\\\LoadLocationType\\:\\:\\$container is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DataFixtures/ORM/LoadLocationType.php - - - - message: "#^Property Chill\\\\MainBundle\\\\DataFixtures\\\\ORM\\\\LoadUsers\\:\\:\\$container is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DataFixtures/ORM/LoadUsers.php - - - - message: "#^Parameter \\$factory of method Chill\\\\MainBundle\\\\DependencyInjection\\\\ChillMainExtension\\:\\:addWidgetFactory\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\WidgetFactoryInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/ChillMainExtension.php - - - - message: "#^Method Symfony\\\\Component\\\\DependencyInjection\\\\Container\\:\\:getParameter\\(\\) invoked with 2 parameters, 1 required\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/CompilerPass/ShortMessageCompilerPass.php - - - - message: "#^Offset 'queries' does not exist on array\\{scheme\\: 'ovh', host\\?\\: string, port\\?\\: int\\<0, 65535\\>, user\\?\\: string, pass\\?\\: string, path\\?\\: string, query\\?\\: string, fragment\\?\\: string\\}\\.$#" - count: 5 - path: src/Bundle/ChillMainBundle/DependencyInjection/CompilerPass/ShortMessageCompilerPass.php - - - - message: "#^Offset 'queries' does not exist on array\\{scheme\\?\\: string, host\\?\\: string, port\\?\\: int\\<0, 65535\\>, user\\?\\: string, pass\\?\\: string, path\\?\\: string, query\\?\\: string, fragment\\?\\: string\\}\\|false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/CompilerPass/ShortMessageCompilerPass.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:canBeUnset\\(\\)\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" - count: 3 - path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php - - - - message: "#^Method Chill\\\\MainBundle\\\\DependencyInjection\\\\Configuration\\:\\:getWidgetAliasesbyPlace\\(\\) has invalid return type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php - - - - message: "#^Method Chill\\\\MainBundle\\\\DependencyInjection\\\\Configuration\\:\\:getWidgetAliasesbyPlace\\(\\) should return Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\type but returns array\\\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php - - - - message: "#^Method Chill\\\\MainBundle\\\\DependencyInjection\\\\Configuration\\:\\:getWidgetFactories\\(\\) has invalid return type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\WidgetFactoryInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php - - - - message: "#^Method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\TreeBuilder\\:\\:getRootNode\\(\\) invoked with 1 parameter, 0 required\\.$#" - count: 3 - path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php - - - - message: "#^PHPDoc tag @param has invalid value \\(WidgetFactoryInterface\\[\\]\\)\\: Unexpected token \"\\\\n \", expected variable at offset 42$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php - - - - message: "#^Parameter \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Configuration\\:\\:getWidgetAliasesbyPlace\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php - - - - message: "#^Parameter \\$widgetFactories of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Configuration\\:\\:setWidgetFactories\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\WidgetFactoryInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php - - - - message: "#^Call to an undefined method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:getAllowedPlaces\\(\\)\\.$#" - count: 3 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php - - - - message: "#^Instanceof between Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\HasWidgetFactoriesExtensionInterface and Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\HasWidgetFactoriesExtensionInterface will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php - - - - message: "#^Method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\AbstractWidgetsCompilerPass\\:\\:isPlaceAllowedForWidget\\(\\) has invalid return type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\unknown\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php - - - - message: "#^Method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\AbstractWidgetsCompilerPass\\:\\:isPlaceAllowedForWidget\\(\\) should return Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\unknown but returns false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php - - - - message: "#^Method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\AbstractWidgetsCompilerPass\\:\\:isPlaceAllowedForWidget\\(\\) should return Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\unknown but returns true\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php - - - - message: "#^Negated boolean expression is always false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php - - - - message: "#^Parameter \\$order of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\AbstractWidgetFactory\\:\\:createDefinition\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/AbstractWidgetFactory.php - - - - message: "#^Parameter \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\AbstractWidgetFactory\\:\\:createDefinition\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/AbstractWidgetFactory.php - - - - message: "#^Parameter \\$order of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:createDefinition\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/WidgetFactoryInterface.php - - - - message: "#^Parameter \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/WidgetFactoryInterface.php - - - - message: "#^Parameter \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:createDefinition\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/WidgetFactoryInterface.php - - - - message: "#^PHPDoc tag @param for parameter \\$factory with type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\WidgetFactoryInterface is not subtype of native type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/HasWidgetFactoriesExtensionInterface.php - - - - message: "#^Parameter \\$factory of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\HasWidgetFactoriesExtensionInterface\\:\\:addWidgetFactory\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\WidgetFactoryInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/HasWidgetFactoriesExtensionInterface.php - - - - message: "#^Strict comparison using \\=\\=\\= between int\\<1, max\\> and 0 will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Doctrine/Type/NativeDateIntervalType.php - - - - message: "#^Instanceof between DateTime and DateTime will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Address.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\Address\\:\\:\\$validTo \\(DateTime\\|null\\) does not accept DateTimeInterface\\|null\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Address.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Entity/Address.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Entity\\\\AddressReference\\:\\:setPostcode\\(\\) should return Chill\\\\MainBundle\\\\Entity\\\\Address but returns \\$this\\(Chill\\\\MainBundle\\\\Entity\\\\AddressReference\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/AddressReference.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\AddressReference\\:\\:\\$addressCanonical is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/AddressReference.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\AddressReference\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/AddressReference.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Entity\\\\Country\\:\\:getCountryCode\\(\\) has invalid return type Chill\\\\MainBundle\\\\Entity\\\\the\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Country.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Entity\\\\Country\\:\\:getCountryCode\\(\\) should return Chill\\\\MainBundle\\\\Entity\\\\the but returns string\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Country.php - - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\GeographicalUnit\\:\\:\\$geom is unused\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/GeographicalUnit.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\GeographicalUnit\\:\\:\\$unitRefId is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/GeographicalUnit.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Entity\\\\GroupCenter\\:\\:getPermissionsGroup\\(\\) has invalid return type Chill\\\\MainBundle\\\\Entity\\\\PermissionGroup\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/GroupCenter.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Entity\\\\GroupCenter\\:\\:getPermissionsGroup\\(\\) should return Chill\\\\MainBundle\\\\Entity\\\\PermissionGroup but returns Chill\\\\MainBundle\\\\Entity\\\\PermissionsGroup\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/GroupCenter.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\GroupCenter\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/GroupCenter.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\GroupCenter\\:\\:\\$permissionsGroup \\(Chill\\\\MainBundle\\\\Entity\\\\PermissionsGroup\\) does not accept Doctrine\\\\Common\\\\Collections\\\\ArrayCollection\\<\\*NEVER\\*, \\*NEVER\\*\\>\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/GroupCenter.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Entity\\\\Language\\:\\:getName\\(\\) should return string but returns array\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Language.php - - - - message: "#^PHPDoc tag @param has invalid value \\(string array \\$name\\)\\: Unexpected token \"array\", expected variable at offset 49$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Language.php - - - - message: "#^PHPDoc tag @var for property Chill\\\\MainBundle\\\\Entity\\\\Language\\:\\:\\$name with type string is incompatible with native type array\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Language.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\Location\\:\\:\\$createdAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\|null\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Location.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\Location\\:\\:\\$updatedAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\|null\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Location.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\Notification\\:\\:\\$updatedAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Notification.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\NotificationComment\\:\\:\\$createdAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/NotificationComment.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\NotificationComment\\:\\:\\$updateAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/NotificationComment.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\PermissionsGroup\\:\\:\\$groupCenters is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/PermissionsGroup.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\PermissionsGroup\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/PermissionsGroup.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\PostalCode\\:\\:\\$canonical is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/PostalCode.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\PostalCode\\:\\:\\$deletedAt is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/PostalCode.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\PostalCode\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/PostalCode.php - - - - message: "#^PHPDoc tag @var for property Chill\\\\MainBundle\\\\Entity\\\\Regroupment\\:\\:\\$centers with type Chill\\\\MainBundle\\\\Entity\\\\Center is not subtype of native type Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Regroupment.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\RoleScope\\:\\:\\$permissionsGroups is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/RoleScope.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and array will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/User.php - - - - message: "#^Call to an undefined method Traversable\\<\\(int\\|string\\), mixed\\>\\:\\:current\\(\\)\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflow.php - - - - message: "#^Call to an undefined method Traversable\\<\\(int\\|string\\), mixed\\>\\:\\:next\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflow.php - - - - message: "#^Call to an undefined method Traversable\\<\\(int\\|string\\), mixed\\>\\:\\:rewind\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflow.php - - - - message: "#^Call to an undefined method Traversable\\<\\(int\\|string\\), mixed\\>\\:\\:valid\\(\\)\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflow.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflowStep.php - - - - message: "#^Access to offset \\(int\\|string\\) on an unknown class Chill\\\\MainBundle\\\\Export\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/ExportManager.php - - - - message: "#^Call to an undefined method Chill\\\\MainBundle\\\\Export\\\\ExportElementInterface\\:\\:requiredRole\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/ExportManager.php - - - - message: "#^Call to function is_iterable\\(\\) with array will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/ExportManager.php - - - - message: "#^Empty array passed to foreach\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/ExportManager.php - - - - message: "#^Instanceof between Doctrine\\\\ORM\\\\QueryBuilder and Doctrine\\\\ORM\\\\QueryBuilder will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/ExportManager.php - - - - message: "#^Iterating over an object of an unknown class Chill\\\\MainBundle\\\\Export\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/ExportManager.php - - - - message: "#^PHPDoc tag @param for parameter \\$aliases with type Generator is incompatible with native type array\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/ExportManager.php - - - - message: "#^Parameter \\$data of method Chill\\\\MainBundle\\\\Export\\\\ExportManager\\:\\:handleAggregators\\(\\) has invalid type Chill\\\\MainBundle\\\\Export\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/ExportManager.php - - - - message: "#^Parameter \\$data of method Chill\\\\MainBundle\\\\Export\\\\ExportManager\\:\\:retrieveUsedFilters\\(\\) has invalid type Chill\\\\MainBundle\\\\Export\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/ExportManager.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Export\\\\type will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/ExportManager.php - - - - message: "#^Yield can be used only with these return types\\: Generator, Iterator, Traversable, iterable\\.$#" - count: 5 - path: src/Bundle/ChillMainBundle/Export/ExportManager.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and array\\|string will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/CSVFormatter.php - - - - message: "#^Variable \\$data in PHPDoc tag @var does not match assigned variable \\$contentData\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/CSVFormatter.php - - - - message: "#^Parameter \\#2 \\$exportAlias \\(Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\) of method Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\CSVListFormatter\\:\\:buildForm\\(\\) should be compatible with parameter \\$exportAlias \\(string\\) of method Chill\\\\MainBundle\\\\Export\\\\FormatterInterface\\:\\:buildForm\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/CSVListFormatter.php - - - - message: "#^Parameter \\$exportAlias of method Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\CSVListFormatter\\:\\:buildForm\\(\\) has invalid type Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/CSVListFormatter.php - - - - message: "#^Parameter \\#2 \\$exportAlias \\(Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\) of method Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\CSVPivotedListFormatter\\:\\:buildForm\\(\\) should be compatible with parameter \\$exportAlias \\(string\\) of method Chill\\\\MainBundle\\\\Export\\\\FormatterInterface\\:\\:buildForm\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/CSVPivotedListFormatter.php - - - - message: "#^Parameter \\$exportAlias of method Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\CSVPivotedListFormatter\\:\\:buildForm\\(\\) has invalid type Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/CSVPivotedListFormatter.php - - - - message: "#^Access to offset 'format' on an unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php - - - - message: "#^Access to offset mixed on an unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php - - - - message: "#^Iterating over an object of an unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\.$#" - count: 3 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$aggregatorsData \\(Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\) does not accept array\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$aggregatorsData has unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type as its type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$formatterData \\(Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\) does not accept array\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$formatterData has unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type as its type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$result \\(Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\) does not accept array\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$result has unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type as its type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php - - - - message: "#^Instanceof between string and DateTimeInterface will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadsheetListFormatter.php - - - - message: "#^PHPDoc tag @param has invalid value \\(Array\\(String\\) \\$aggregatorAliases Array of the aliases of the aggregators\\. An aggregator do the \"group by\" on the data\\. \\$aggregatorAliases\\)\\: Unexpected token \"\\(\", expected variable at offset 343$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/FormatterInterface.php - - - - message: "#^PHPDoc tag @var for property Chill\\\\MainBundle\\\\Export\\\\Helper\\\\ExportAddressHelper\\:\\:\\$unitNamesKeysCache contains unresolvable type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Helper/ExportAddressHelper.php - - - - message: "#^PHPDoc tag @var for property Chill\\\\MainBundle\\\\Export\\\\Helper\\\\ExportAddressHelper\\:\\:\\$unitNamesKeysCache with type mixed is not subtype of native type array\\|null\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Helper/ExportAddressHelper.php - - - - message: "#^Call to method createSearchForm\\(\\) on an unknown class Chill\\\\MainBundle\\\\Search\\\\HasAdvancedSearchForm\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/AdvancedSearchType.php - - - - message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/CenterType.php - - - - message: "#^Parameter \\$resolver of method Chill\\\\MainBundle\\\\Form\\\\CenterType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/CenterType.php - - - - message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\Address and Chill\\\\MainBundle\\\\Entity\\\\Address will always evaluate to true\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Form/DataMapper/AddressDataMapper.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\Address will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/DataMapper/AddressDataMapper.php - - - - message: "#^Else branch is unreachable because previous condition is always true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/DataMapper/ScopePickerDataMapper.php - - - - message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\Scope and Chill\\\\MainBundle\\\\Entity\\\\Scope will always evaluate to true\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Form/DataMapper/ScopePickerDataMapper.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/DataMapper/ScopePickerDataMapper.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Form/DataTransformer/IdToEntityDataTransformer.php - - - - message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/LocationFormType.php - - - - message: "#^Parameter \\$resolver of method Chill\\\\MainBundle\\\\Form\\\\LocationFormType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/LocationFormType.php - - - - message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/PermissionsGroupType.php - - - - message: "#^Parameter \\$resolver of method Chill\\\\MainBundle\\\\Form\\\\PermissionsGroupType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/PermissionsGroupType.php - - - - message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/ScopeType.php - - - - message: "#^Parameter \\$resolver of method Chill\\\\MainBundle\\\\Form\\\\ScopeType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/ScopeType.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Form\\\\Type\\\\ChillPhoneNumberType\\:\\:\\$phoneNumberUtil is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/Type/ChillPhoneNumberType.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\:\\:getId\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/Type/CommentType.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and array\\\\|Chill\\\\MainBundle\\\\Entity\\\\User will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/Type/DataTransformer/EntityToJsonTransformer.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Form\\\\Type\\\\DataTransformer\\\\MultipleObjectsToIdTransformer\\:\\:transform\\(\\) should return Doctrine\\\\Common\\\\Collections\\\\ArrayCollection but returns array\\\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/Type/DataTransformer/MultipleObjectsToIdTransformer.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/Type/DataTransformer/ObjectToIdTransformer.php - - - - message: "#^Call to function is_int\\(\\) with int will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/Type/DataTransformer/PostalCodeToIdTransformer.php - - - - message: "#^Instanceof between Chill\\\\MainBundle\\\\Export\\\\ExportInterface and Chill\\\\MainBundle\\\\Export\\\\ExportInterface will always evaluate to true\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Form/Type/Export/ExportType.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Form\\\\Type\\\\Select2CountryType\\:\\:\\$requestStack is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/Type/Select2CountryType.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\:\\:replaceDefaults\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/Type/Select2EntityType.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Form\\\\Type\\\\Select2LanguageType\\:\\:\\$requestStack is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/Type/Select2LanguageType.php - - - - message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/UserType.php - - - - message: "#^Parameter \\$resolver of method Chill\\\\MainBundle\\\\Form\\\\UserType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/UserType.php - - - - message: "#^Method Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\:\\:setDefined\\(\\) invoked with 2 parameters, 1 required\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/WorkflowStepType.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Notification\\\\Email\\\\NotificationMailer\\:\\:\\$translator is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Notification/Email/NotificationMailer.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Notification\\\\NotificationHandlerManager\\:\\:\\$em is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Notification/NotificationHandlerManager.php - - - - message: "#^Strict comparison using \\=\\=\\= between 0 and float will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Pagination/Paginator.php - - - - message: "#^PHPDoc tag @param for parameter \\$phoneNumber with type string is incompatible with native type libphonenumber\\\\PhoneNumber\\|null\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Phonenumber/PhonenumberHelper.php - - - - message: "#^Expression on left side of \\?\\? is not nullable\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Phonenumber/Templating.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Repository\\\\GeographicalUnitRepository\\:\\:findBy\\(\\) should return Chill\\\\MainBundle\\\\Entity\\\\GeographicalUnit\\|null but returns array\\\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Repository/GeographicalUnitRepository.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Repository\\\\GeographicalUnitRepository\\:\\:\\$em is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Repository/GeographicalUnitRepository.php - - - - message: "#^Return type \\(Chill\\\\MainBundle\\\\Entity\\\\GeographicalUnit\\|null\\) of method Chill\\\\MainBundle\\\\Repository\\\\GeographicalUnitRepository\\:\\:findBy\\(\\) should be compatible with return type \\(array\\\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" - count: 2 - path: src/Bundle/ChillMainBundle/Repository/GeographicalUnitRepository.php - - - - message: "#^The @implements tag of class Chill\\\\MainBundle\\\\Repository\\\\SavedExportRepository describes Doctrine\\\\Persistence\\\\ObjectRepository but the class implements\\: Chill\\\\MainBundle\\\\Repository\\\\SavedExportRepositoryInterface$#" - count: 1 - path: src/Bundle/ChillMainBundle/Repository/SavedExportRepository.php - - - - message: "#^Interface Chill\\\\MainBundle\\\\Repository\\\\SavedExportRepositoryInterface has @implements tag, but can not implement any interface, must extend from it\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Repository/SavedExportRepositoryInterface.php - - - - message: "#^Strict comparison using \\!\\=\\= between null and array\\\\|Chill\\\\MainBundle\\\\Entity\\\\Center will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Repository/UserACLAwareRepository.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Routing\\\\MenuComposer\\:\\:\\$routeCollection is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Routing/MenuComposer.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Routing\\\\MenuTwig\\:\\:\\$container is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Routing/MenuTwig.php - - - - message: "#^Parameter \\$string of method Chill\\\\MainBundle\\\\Search\\\\AbstractSearch\\:\\:parseDate\\(\\) has invalid type Chill\\\\MainBundle\\\\Search\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Search/AbstractSearch.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Search\\\\SearchApi\\:\\:getResults\\(\\) has invalid return type Chill\\\\MainBundle\\\\Search\\\\Model\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Search/SearchApi.php - - - - message: "#^PHPDoc tag @return with type Chill\\\\MainBundle\\\\Search\\\\Model is not subtype of native type Chill\\\\MainBundle\\\\Serializer\\\\Model\\\\Collection\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Search/SearchApi.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Search\\\\SearchApiNoQueryException\\:\\:\\$parameters is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Search/SearchApiNoQueryException.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Search\\\\SearchApiNoQueryException\\:\\:\\$pattern is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Search/SearchApiNoQueryException.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Search\\\\SearchApiNoQueryException\\:\\:\\$types is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Search/SearchApiNoQueryException.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Search\\\\SearchApiResult\\:\\:\\$pertinence is unused\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Search/SearchApiResult.php - - - - message: "#^Else branch is unreachable because previous condition is always true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Search/SearchProvider.php - - - - message: "#^If condition is always true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Search/SearchProvider.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Search\\\\SearchProvider\\:\\:getHasAdvancedFormByName\\(\\) has invalid return type Chill\\\\MainBundle\\\\Search\\\\HasAdvancedSearchForm\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Search/SearchProvider.php - - - - message: "#^Parameter \\$subject of method Chill\\\\MainBundle\\\\Search\\\\SearchProvider\\:\\:extractDomain\\(\\) has invalid type Chill\\\\MainBundle\\\\Search\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Search/SearchProvider.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Search\\\\SearchProvider\\:\\:\\$hasAdvancedFormSearchServices has unknown class Chill\\\\MainBundle\\\\Search\\\\HasAdvancedSearchForm as its type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Search/SearchProvider.php - - - - message: "#^Strict comparison using \\!\\=\\= between null and string will always evaluate to true\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Search/SearchProvider.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\:\\:getGroupCenters\\(\\)\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php - - - - message: "#^Empty array passed to foreach\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php - - - - message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\Center\\|string and Symfony\\\\Component\\\\Security\\\\Core\\\\Role\\\\Role will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php - - - - message: "#^Instanceof between string and Symfony\\\\Component\\\\Security\\\\Core\\\\Role\\\\Role will always evaluate to false\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\Scope\\|iterable\\ will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and null will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\DefaultVoterHelper\\:\\:\\$centerResolverDispatcher is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Authorization/DefaultVoterHelper.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Workflow\\\\EntityWorkflowHandlerInterface\\:\\:getDeletionRoles\\(\\) invoked with 1 parameter, 0 required\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Authorization/WorkflowEntityDeletionVoter.php - - - - message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\User and Chill\\\\MainBundle\\\\Entity\\\\User will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/PasswordRecover/PasswordRecoverEvent.php - - - - message: "#^Parameter \\$ip of method Chill\\\\MainBundle\\\\Security\\\\PasswordRecover\\\\PasswordRecoverEvent\\:\\:__construct\\(\\) has invalid type Chill\\\\MainBundle\\\\Security\\\\PasswordRecover\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/PasswordRecover/PasswordRecoverEvent.php - - - - message: "#^Parameter \\$token of method Chill\\\\MainBundle\\\\Security\\\\PasswordRecover\\\\PasswordRecoverEvent\\:\\:__construct\\(\\) has invalid type Chill\\\\MainBundle\\\\Security\\\\PasswordRecover\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/PasswordRecover/PasswordRecoverEvent.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Security\\\\PasswordRecover\\\\PasswordRecoverEvent\\:\\:\\$ip \\(string\\) does not accept Chill\\\\MainBundle\\\\Security\\\\PasswordRecover\\\\type\\|null\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/PasswordRecover/PasswordRecoverEvent.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Security\\\\PasswordRecover\\\\PasswordRecoverEvent\\:\\:\\$token \\(string\\) does not accept Chill\\\\MainBundle\\\\Security\\\\PasswordRecover\\\\type\\|null\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/PasswordRecover/PasswordRecoverEvent.php - - - - message: "#^Call to function is_array\\(\\) with array\\ will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Resolver/CenterResolverManager.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and array\\\\|Chill\\\\MainBundle\\\\Entity\\\\Center will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Resolver/CenterResolverManager.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Resolver/CenterResolverManager.php - - - - message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\HasCenterInterface and Chill\\\\MainBundle\\\\Entity\\\\HasCenterInterface will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Resolver/DefaultCenterResolver.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Resolver/DefaultCenterResolver.php - - - - message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\HasScopesInterface and Chill\\\\MainBundle\\\\Entity\\\\HasScopesInterface will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Resolver/DefaultScopeResolver.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Resolver/DefaultScopeResolver.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\ResolverTwigExtension\\:\\:resolveCenter\\(\\) has invalid return type Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\Center\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Security/Resolver/ResolverTwigExtension.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\ResolverTwigExtension\\:\\:resolveCenter\\(\\) should return array\\\\|Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\Center\\|null but returns array\\\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Resolver/ResolverTwigExtension.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\ScopeResolverDispatcher\\:\\:resolveScope\\(\\) invoked with 0 parameters, 1\\-2 required\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Resolver/ResolverTwigExtension.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\ScopeResolverDispatcher\\:\\:resolveScope\\(\\) should return Chill\\\\MainBundle\\\\Entity\\\\Scope\\|iterable\\ but returns null\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Resolver/ScopeResolverDispatcher.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Security\\\\RoleProvider\\:\\:getRoleTitle\\(\\) should return string but returns null\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/RoleProvider.php - - - - message: "#^Strict comparison using \\!\\=\\= between array\\ and null will always evaluate to true\\.$#" - count: 3 - path: src/Bundle/ChillMainBundle/Security/RoleProvider.php - - - - message: "#^Constant Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\AddressNormalizer\\:\\:NULL_POSTCODE_COUNTRY is unused\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php - - - - message: "#^Constant Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\AddressNormalizer\\:\\:NULL_VALUE is unused\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php - - - - message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\Address and Chill\\\\MainBundle\\\\Entity\\\\Address will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\Embeddable\\\\CommentEmbeddable will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/CommentEmbeddableDocGenNormalizer.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\DateNormalizer\\:\\:normalize\\(\\) should return array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|null but return statement is missing\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DateNormalizer.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and DateTimeInterface will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DateNormalizer.php - - - - message: "#^Instanceof between Doctrine\\\\ORM\\\\Mapping\\\\ClassMetadata\\ and Doctrine\\\\ORM\\\\Mapping\\\\ClassMetadata will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DoctrineExistingEntityNormalizer.php - - - - message: "#^Strict comparison using \\=\\=\\= between false and true will always evaluate to false\\.$#" + message: "#^Method Chill\\\\JobBundle\\\\Export\\\\ListFrein\\:\\:splitArrayToColumns\\(\\) never returns Closure so it can be removed from the return type\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DoctrineExistingEntityNormalizer.php + path: src/Bundle/ChillJobBundle/src/Export/ListFrein.php - - message: "#^Property Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\NotificationNormalizer\\:\\:\\$notificationHandlerManager is never read, only written\\.$#" + message: "#^Method Chill\\\\JobBundle\\\\Export\\\\ListProjetProfessionnel\\:\\:splitArrayToColumns\\(\\) never returns Closure so it can be removed from the return type\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/NotificationNormalizer.php + path: src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php - message: "#^Result of && is always false\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/UserNormalizer.php + path: src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\User will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/UserNormalizer.php - - - - message: "#^Call to function is_int\\(\\) with int will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Service/Import/AddressReferenceFromBano.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Mime\\\\RawMessage\\:\\:getSubject\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Service/Mailer/ChillMailer.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Mime\\\\RawMessage\\:\\:getTo\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Service/Mailer/ChillMailer.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Templating\\\\CSVCellTwig\\:\\:getName\\(\\) has invalid return type Chill\\\\MainBundle\\\\Templating\\\\The\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Templating/CSVCellTwig.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Templating\\\\CSVCellTwig\\:\\:getName\\(\\) should return Chill\\\\MainBundle\\\\Templating\\\\The but returns string\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Templating/CSVCellTwig.php - - - - message: "#^Instanceof between string and DateTimeInterface will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Templating/ChillTwigHelper.php - - - - message: "#^PHPDoc tag @return has invalid value \\(array\\<'to'\\: DateTimeImmutable, 'from'\\: DateTimeImmutable\\>\\)\\: Unexpected token \"\\:\", expected '\\>' at offset 29$#" - count: 1 - path: src/Bundle/ChillMainBundle/Templating/Listing/FilterOrderHelper.php - - - - message: "#^Call to an undefined method Symfony\\\\Contracts\\\\Translation\\\\TranslatorInterface\\:\\:getFallbackLocales\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Templating/TranslatableStringHelper.php - - - - message: "#^Strict comparison using \\=\\=\\= between array\\{\\} and non\\-empty\\-array\\ will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Templating/TranslatableStringHelper.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Templating\\\\TranslatableStringTwig\\:\\:getName\\(\\) has invalid return type Chill\\\\MainBundle\\\\Templating\\\\The\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Templating/TranslatableStringTwig.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Templating\\\\TranslatableStringTwig\\:\\:getName\\(\\) should return Chill\\\\MainBundle\\\\Templating\\\\The but returns string\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Templating/TranslatableStringTwig.php - - - - message: "#^Call to method render\\(\\) on an unknown class Chill\\\\MainBundle\\\\Templating\\\\Widget\\\\Widget\\\\WidgetInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Templating/Widget/WidgetRenderingTwig.php - - - - message: "#^Method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) invoked with 2 parameters, 1 required\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Templating/Widget/WidgetRenderingTwig.php - - - - message: "#^PHPDoc tag @var for variable \\$widget contains unknown class Chill\\\\MainBundle\\\\Templating\\\\Widget\\\\Widget\\\\WidgetInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Templating/Widget/WidgetRenderingTwig.php - - - - message: "#^Parameter \\$context of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineBuilder\\:\\:countItems\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\unknown\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Timeline/TimelineBuilder.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Timeline/TimelineBuilder.php - - - - message: "#^Parameter \\$context of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineProviderInterface\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Timeline/TimelineProviderInterface.php - - - - message: "#^Parameter \\$entity of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineProviderInterface\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Timeline/TimelineProviderInterface.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Util\\\\DateRangeCovering\\:\\:\\$intervals is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Util/DateRangeCovering.php - - - - message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$messageDuplicateEmail\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Validation/Validator/UserUniqueEmailAndUsername.php - - - - message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$messageDuplicateUsername\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Validation/Validator/UserUniqueEmailAndUsername.php + message: "#^Strict comparison using \\=\\=\\= between array\\{\\} and Symfony\\\\Component\\\\Validator\\\\ConstraintViolationListInterface will always evaluate to false\\.$#" + count: 2 + path: src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php - message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" count: 1 + path: src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php + + - + message: "#^Parameter \\#2 \\$type \\(null\\) of method Chill\\\\MainBundle\\\\CRUD\\\\Routing\\\\CRUDRoutesLoader\\:\\:supports\\(\\) should be contravariant with parameter \\$type \\(string\\|null\\) of method Symfony\\\\Component\\\\Config\\\\Loader\\\\LoaderInterface\\:\\:supports\\(\\)$#" + count: 2 + path: src/Bundle/ChillMainBundle/CRUD/Routing/CRUDRoutesLoader.php + + - + message: "#^Parameter \\#2 \\$query \\(Doctrine\\\\ORM\\\\QueryBuilder\\) of method Chill\\\\MainBundle\\\\Controller\\\\LocationApiController\\:\\:orderQuery\\(\\) should be contravariant with parameter \\$query \\(mixed\\) of method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\AbstractCRUDController\\:\\:orderQuery\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/LocationApiController.php + + - + message: "#^Parameter \\#3 \\$query \\(Doctrine\\\\ORM\\\\QueryBuilder\\) of method Chill\\\\MainBundle\\\\Controller\\\\UserApiController\\:\\:customizeQuery\\(\\) should be contravariant with parameter \\$query \\(mixed\\) of method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\AbstractCRUDController\\:\\:customizeQuery\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/UserApiController.php + + - + message: "#^Parameter \\#1 \\$value \\(null\\) of method Chill\\\\MainBundle\\\\Form\\\\ChoiceLoader\\\\PostalCodeChoiceLoader\\:\\:loadChoiceList\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadChoiceList\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/ChoiceLoader/PostalCodeChoiceLoader.php + + - + message: "#^Parameter \\#2 \\$value \\(null\\) of method Chill\\\\MainBundle\\\\Form\\\\ChoiceLoader\\\\PostalCodeChoiceLoader\\:\\:loadChoicesForValues\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadChoicesForValues\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/ChoiceLoader/PostalCodeChoiceLoader.php + + - + message: "#^Parameter \\#2 \\$value \\(null\\) of method Chill\\\\MainBundle\\\\Form\\\\ChoiceLoader\\\\PostalCodeChoiceLoader\\:\\:loadValuesForChoices\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadValuesForChoices\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/ChoiceLoader/PostalCodeChoiceLoader.php + + - + message: "#^Parameter \\#1 \\$address \\(Chill\\\\MainBundle\\\\Entity\\\\Address\\) of method Chill\\\\MainBundle\\\\Form\\\\DataMapper\\\\AddressDataMapper\\:\\:mapDataToForms\\(\\) should be contravariant with parameter \\$viewData \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataMapperInterface\\:\\:mapDataToForms\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/DataMapper/AddressDataMapper.php + + - + message: "#^Parameter \\#1 \\$forms \\(Iterator\\) of method Chill\\\\MainBundle\\\\Form\\\\DataMapper\\\\AddressDataMapper\\:\\:mapFormsToData\\(\\) should be contravariant with parameter \\$forms \\(iterable\\&Traversable\\) of method Symfony\\\\Component\\\\Form\\\\DataMapperInterface\\:\\:mapFormsToData\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/DataMapper/AddressDataMapper.php + + - + message: "#^Parameter \\#2 \\$address \\(Chill\\\\MainBundle\\\\Entity\\\\Address\\) of method Chill\\\\MainBundle\\\\Form\\\\DataMapper\\\\AddressDataMapper\\:\\:mapFormsToData\\(\\) should be contravariant with parameter \\$viewData \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataMapperInterface\\:\\:mapFormsToData\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/DataMapper/AddressDataMapper.php + + - + message: "#^Parameter \\#2 \\$forms \\(Iterator\\) of method Chill\\\\MainBundle\\\\Form\\\\DataMapper\\\\AddressDataMapper\\:\\:mapDataToForms\\(\\) should be contravariant with parameter \\$forms \\(iterable\\&Traversable\\) of method Symfony\\\\Component\\\\Form\\\\DataMapperInterface\\:\\:mapDataToForms\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/DataMapper/AddressDataMapper.php + + - + message: "#^Parameter \\#1 \\$value \\(string\\) of method Chill\\\\MainBundle\\\\Form\\\\DataTransformer\\\\IdToEntityDataTransformer\\:\\:reverseTransform\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataTransformerInterface\\:\\:reverseTransform\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/DataTransformer/IdToEntityDataTransformer.php + + - + message: "#^Parameter \\#1 \\$value \\(array\\\\|Chill\\\\MainBundle\\\\Entity\\\\User\\) of method Chill\\\\MainBundle\\\\Form\\\\Type\\\\DataTransformer\\\\EntityToJsonTransformer\\:\\:transform\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataTransformerInterface\\:\\:transform\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/Type/DataTransformer/EntityToJsonTransformer.php + + - + message: "#^Parameter \\#1 \\$array \\(array\\) of method Chill\\\\MainBundle\\\\Form\\\\Type\\\\DataTransformer\\\\MultipleObjectsToIdTransformer\\:\\:transform\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataTransformerInterface\\:\\:transform\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/Type/DataTransformer/MultipleObjectsToIdTransformer.php + + - + message: "#^Parameter \\#1 \\$id \\(string\\) of method Chill\\\\MainBundle\\\\Form\\\\Type\\\\DataTransformer\\\\ObjectToIdTransformer\\:\\:reverseTransform\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataTransformerInterface\\:\\:reverseTransform\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/Type/DataTransformer/ObjectToIdTransformer.php + + - + message: "#^Parameter \\#2 \\$subject \\(Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\) of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\EntityWorkflowVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Authorization/EntityWorkflowVoter.php + + - + message: "#^Parameter \\#1 \\$entity \\(Chill\\\\MainBundle\\\\Entity\\\\HasCenterInterface\\) of method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\DefaultCenterResolver\\:\\:resolveCenter\\(\\) should be contravariant with parameter \\$entity \\(object\\) of method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\CenterResolverInterface\\:\\:resolveCenter\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Resolver/DefaultCenterResolver.php + + - + message: "#^Parameter \\#1 \\$entity \\(Chill\\\\MainBundle\\\\Entity\\\\HasScopeInterface\\|Chill\\\\MainBundle\\\\Entity\\\\HasScopesInterface\\) of method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\DefaultScopeResolver\\:\\:resolveScope\\(\\) should be contravariant with parameter \\$entity \\(mixed\\) of method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\ScopeResolverInterface\\:\\:resolveScope\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Resolver/DefaultScopeResolver.php + + - + message: "#^Parameter \\#1 \\$address \\(Chill\\\\MainBundle\\\\Entity\\\\Address\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\AddressNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 2 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php + + - + message: "#^Parameter \\#1 \\$collection \\(Chill\\\\MainBundle\\\\Serializer\\\\Model\\\\Collection\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\CollectionNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/CollectionNormalizer.php + + - + message: "#^Parameter \\#1 \\$object \\(Chill\\\\MainBundle\\\\Entity\\\\Embeddable\\\\CommentEmbeddable\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\CommentEmbeddableDocGenNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 2 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/CommentEmbeddableDocGenNormalizer.php + + - + message: "#^Parameter \\#1 \\$object \\(Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\EntityWorkflowNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/EntityWorkflowNormalizer.php + + - + message: "#^Parameter \\#1 \\$object \\(Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflowStep\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\EntityWorkflowStepNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/EntityWorkflowStepNormalizer.php + + - + message: "#^Parameter \\#1 \\$object \\(Chill\\\\MainBundle\\\\Entity\\\\Notification\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\NotificationNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/NotificationNormalizer.php + + - + message: "#^Return type \\(array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|void\\|null\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\NotificationNormalizer\\:\\:normalize\\(\\) should be covariant with return type \\(array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/NotificationNormalizer.php + + - + message: "#^Parameter \\#1 \\$data \\(string\\|null\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\PhonenumberNormalizer\\:\\:denormalize\\(\\) should be contravariant with parameter \\$data \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:denormalize\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/PhonenumberNormalizer.php + + - + message: "#^Parameter \\#1 \\$value \\(string\\) of method Chill\\\\MainBundle\\\\Validation\\\\Validator\\\\ValidPhonenumber\\:\\:validate\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Validator\\\\ConstraintValidatorInterface\\:\\:validate\\(\\)$#" + count: 2 path: src/Bundle/ChillMainBundle/Validation/Validator/ValidPhonenumber.php - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\User will always evaluate to false\\.$#" - count: 1 + message: "#^Parameter \\#2 \\$constraint \\(Chill\\\\MainBundle\\\\Validation\\\\Constraint\\\\PhonenumberConstraint\\) of method Chill\\\\MainBundle\\\\Validation\\\\Validator\\\\ValidPhonenumber\\:\\:validate\\(\\) should be contravariant with parameter \\$constraint \\(Symfony\\\\Component\\\\Validator\\\\Constraint\\) of method Symfony\\\\Component\\\\Validator\\\\ConstraintValidatorInterface\\:\\:validate\\(\\)$#" + count: 2 + path: src/Bundle/ChillMainBundle/Validation/Validator/ValidPhonenumber.php + + - + message: "#^Parameter \\#1 \\$value \\(object\\) of method Chill\\\\MainBundle\\\\Validator\\\\Constraints\\\\Entity\\\\UserCircleConsistencyValidator\\:\\:validate\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Validator\\\\ConstraintValidatorInterface\\:\\:validate\\(\\)$#" + count: 2 path: src/Bundle/ChillMainBundle/Validator/Constraints/Entity/UserCircleConsistencyValidator.php - - message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$element\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Validator/Constraints/Export/ExportElementConstraintValidator.php + message: "#^Parameter \\#2 \\$constraint \\(Chill\\\\MainBundle\\\\Validator\\\\Constraints\\\\Entity\\\\UserCircleConsistency\\) of method Chill\\\\MainBundle\\\\Validator\\\\Constraints\\\\Entity\\\\UserCircleConsistencyValidator\\:\\:validate\\(\\) should be contravariant with parameter \\$constraint \\(Symfony\\\\Component\\\\Validator\\\\Constraint\\) of method Symfony\\\\Component\\\\Validator\\\\ConstraintValidatorInterface\\:\\:validate\\(\\)$#" + count: 2 + path: src/Bundle/ChillMainBundle/Validator/Constraints/Entity/UserCircleConsistencyValidator.php - - message: "#^Property Chill\\\\MainBundle\\\\Workflow\\\\Templating\\\\WorkflowTwigExtensionRuntime\\:\\:\\$entityWorkflowManager is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Workflow/Templating/WorkflowTwigExtensionRuntime.php - - - - message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow and Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow will always evaluate to true\\.$#" - count: 1 + message: "#^Parameter \\#1 \\$value \\(Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\) of method Chill\\\\MainBundle\\\\Workflow\\\\Validator\\\\EntityWorkflowCreationValidator\\:\\:validate\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Validator\\\\ConstraintValidatorInterface\\:\\:validate\\(\\)$#" + count: 2 path: src/Bundle/ChillMainBundle/Workflow/Validator/EntityWorkflowCreationValidator.php - - message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflowStep and Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflowStep will always evaluate to true\\.$#" - count: 1 + message: "#^Parameter \\#1 \\$value \\(Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflowStep\\) of method Chill\\\\MainBundle\\\\Workflow\\\\Validator\\\\StepDestValidValidator\\:\\:validate\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Validator\\\\ConstraintValidatorInterface\\:\\:validate\\(\\)$#" + count: 2 path: src/Bundle/ChillMainBundle/Workflow/Validator/StepDestValidValidator.php - - message: "#^PHPDoc tag @param for parameter \\$postSql with type Chill\\\\PersonBundle\\\\Actions\\\\type is incompatible with native type string\\.$#" + message: "#^Parameter \\#3 \\$query \\(Doctrine\\\\ORM\\\\QueryBuilder\\) of method Chill\\\\PersonBundle\\\\Controller\\\\HouseholdCompositionTypeApiController\\:\\:customizeQuery\\(\\) should be contravariant with parameter \\$query \\(mixed\\) of method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\AbstractCRUDController\\:\\:customizeQuery\\(\\)$#" count: 1 - path: src/Bundle/ChillPersonBundle/Actions/ActionEvent.php + path: src/Bundle/ChillPersonBundle/Controller/HouseholdCompositionTypeApiController.php - - message: "#^Parameter \\$postSql of method Chill\\\\PersonBundle\\\\Actions\\\\ActionEvent\\:\\:addPostSql\\(\\) has invalid type Chill\\\\PersonBundle\\\\Actions\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Actions/ActionEvent.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\PersonMove\\:\\:getSQL\\(\\) has invalid return type Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Actions/Remove/PersonMove.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\PersonMove\\:\\:getSQL\\(\\) should return Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\type but returns array\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Actions/Remove/PersonMove.php - - - - message: "#^Method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) invoked with 2 parameters, 1 required\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Actions/Remove/PersonMove.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\EntityPersonCRUDController\\:\\:filterQueryEntitiesByPerson\\(\\) has invalid return type Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\QueryBuilder\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php - - - - message: "#^PHPDoc tag @param for parameter \\$qb with type Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\QueryBuilder is not subtype of native type Doctrine\\\\ORM\\\\QueryBuilder\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php - - - - message: "#^PHPDoc tag @return with type Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\QueryBuilder is not subtype of native type Doctrine\\\\ORM\\\\QueryBuilder\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php - - - - message: "#^PHPDoc tag @throws with type Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\Symfony\\\\Component\\\\HttpKernel\\\\Exception\\\\NotFoundHttpException is not subtype of Throwable$#" - count: 1 - path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php - - - - message: "#^Parameter \\$action of method Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\EntityPersonCRUDController\\:\\:createEntity\\(\\) has invalid type Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\string\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php - - - - message: "#^Parameter \\$qb of method Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\EntityPersonCRUDController\\:\\:filterQueryEntitiesByPerson\\(\\) has invalid type Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\QueryBuilder\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\DependencyInjection\\\\Extension\\\\ExtensionInterface\\:\\:addWidgetFactory\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/ChillPersonBundle.php - - - - message: "#^Iterating over an object of an unknown class Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\type\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Command/ChillPersonMoveCommand.php - - - - message: "#^PHPDoc tag @var for property Chill\\\\PersonBundle\\\\Command\\\\ImportSocialWorkMetadata\\:\\:\\$importer with type Psr\\\\Log\\\\LoggerInterface is not subtype of native type Chill\\\\PersonBundle\\\\Service\\\\Import\\\\ChillImporter\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Command/ImportSocialWorkMetadata.php - - - - message: "#^Method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) invoked with 2 parameters, 1 required\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseApiController.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Controller\\\\AccompanyingCourseApiController\\:\\:\\$accompanyingPeriodACLAwareRepository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseApiController.php - - - - message: "#^Variable \\$accompanyingPeriod in PHPDoc tag @var does not match assigned variable \\$action\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseApiController.php - - - - message: "#^Strict comparison using \\!\\=\\= between null and Doctrine\\\\Common\\\\Collections\\\\Collection will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseController.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Serializer\\\\SerializerInterface\\:\\:normalize\\(\\)\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseWorkController.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Controller\\\\AccompanyingCourseWorkController\\:\\:createDeleteForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseWorkController.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseWorkController.php - - - - message: "#^Call to an undefined method Psr\\\\Container\\\\ContainerInterface\\:\\:getParameter\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodController.php - - - - message: "#^Method Symfony\\\\Component\\\\Form\\\\FormInterface\\:\\:isValid\\(\\) invoked with 1 parameter, 0 required\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodController.php - - - - message: "#^Method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) invoked with 2 parameters, 1 required\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodController.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod will always evaluate to false\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\HttpFoundation\\\\Session\\\\SessionInterface\\:\\:getFlashBag\\(\\)\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Controller/HouseholdCompositionController.php - - - - message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:initialize\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/HouseholdController.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findById\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/HouseholdMemberController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Serializer\\\\SerializerInterface\\:\\:normalize\\(\\)\\.$#" - count: 3 - path: src/Bundle/ChillPersonBundle/Controller/HouseholdMemberController.php - - - - message: "#^Elseif condition is always true\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Controller/PersonAddressController.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Controller\\\\PersonAddressController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/PersonAddressController.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Controller\\\\PersonAddressController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/PersonAddressController.php - - - - message: "#^PHPDoc tag @param for parameter \\$person with type Chill\\\\PersonBundle\\\\Controller\\\\Chill\\\\PersonBundle\\\\Entity\\\\Person is not subtype of native type Chill\\\\PersonBundle\\\\Entity\\\\Person\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/PersonAddressController.php - - - - message: "#^Parameter \\$person of method Chill\\\\PersonBundle\\\\Controller\\\\PersonAddressController\\:\\:validatePerson\\(\\) has invalid type Chill\\\\PersonBundle\\\\Controller\\\\Chill\\\\PersonBundle\\\\Entity\\\\Person\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/PersonAddressController.php - - - - message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findOneByEntity\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/PersonController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Form\\\\FormInterface\\:\\:isClicked\\(\\)\\.$#" - count: 3 - path: src/Bundle/ChillPersonBundle/Controller/PersonController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\:\\:getGroupCenters\\(\\)\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Controller/PersonController.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Controller\\\\PersonController\\:\\:_validatePersonAndAccompanyingPeriod\\(\\) is unused\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/PersonController.php - - - - message: "#^Method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) invoked with 2 parameters, 1 required\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Controller/PersonController.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Controller\\\\PersonController\\:\\:\\$logger is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/PersonController.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\Person will always evaluate to false\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Controller/PersonController.php - - - - message: "#^Access to an undefined property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$counters\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:countByParameters\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php - - - - message: "#^Cannot access property \\$getId on null\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php - - - - message: "#^Iterating over an object of an unknown class Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Controller\\\\PersonDuplicateController\\:\\:_getCounters\\(\\) never returns null so it can be removed from the return type\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php - - - - message: "#^Method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) invoked with 2 parameters, 1 required\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Controller\\\\PersonDuplicateController\\:\\:\\$translator \\(Symfony\\\\Component\\\\Translation\\\\TranslatorInterface\\) does not accept Symfony\\\\Contracts\\\\Translation\\\\TranslatorInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Controller\\\\PersonDuplicateController\\:\\:\\$translator is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php - - - - message: "#^Call to function is_int\\(\\) with int will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/ReassignAccompanyingPeriodController.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Controller\\\\ReassignAccompanyingPeriodController\\:\\:\\$userRender is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/ReassignAccompanyingPeriodController.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Controller\\\\RelationshipApiController\\:\\:\\$validator is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/RelationshipApiController.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Controller\\\\SocialWorkGoalApiController\\:\\:\\$paginator is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/SocialWorkGoalApiController.php - - - - message: "#^Method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) invoked with 2 parameters, 1 required\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/TimelinePersonController.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/DataFixtures/ORM/LoadAccompanyingPeriodNotifications.php - - - - message: "#^Invalid array key type array\\\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/DataFixtures/ORM/LoadRelationships.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:canBeDisabled\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/DependencyInjection/Configuration.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:values\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/DependencyInjection/Configuration.php - - - - message: "#^Method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\TreeBuilder\\:\\:getRootNode\\(\\) invoked with 1 parameter, 0 required\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/DependencyInjection/Configuration.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Doctrine\\\\DQL\\\\AddressPart\\:\\:\\$part is unused\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Doctrine/DQL/AddressPart.php - - - - message: "#^Result of method Doctrine\\\\ORM\\\\Query\\\\Parser\\:\\:match\\(\\) \\(void\\) is used\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Doctrine/DQL/AddressPart.php - - - - message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" + message: "#^Return type \\(Doctrine\\\\Common\\\\Collections\\\\Collection\\) of method Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\:\\:getScopes\\(\\) should be covariant with return type \\(iterable\\\\) of method Chill\\\\MainBundle\\\\Entity\\\\HasScopesInterface\\:\\:getScopes\\(\\)$#" count: 1 path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection\\:\\:matching\\(\\)\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - - - message: "#^Instanceof between Chill\\\\PersonBundle\\\\Entity\\\\Person and Chill\\\\PersonBundle\\\\Entity\\\\Person will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - - - - message: "#^Method Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\:\\:getCreatedAt\\(\\) should return DateTime\\|null but returns DateTimeInterface\\|null\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\:\\:getRecursiveSocialActions\\(\\) has invalid return type Chill\\\\PersonBundle\\\\Entity\\\\SocialAction\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\:\\:getRecursiveSocialIssues\\(\\) has invalid return type Chill\\\\PersonBundle\\\\Entity\\\\SocialIssues\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - - - message: "#^Negated boolean expression is always true\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - - - message: "#^PHPDoc tag @return with type array\\ is incompatible with native type Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - - - message: "#^PHPDoc tag @return with type iterable is not subtype of native type Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\:\\:\\$updatedAt is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\:\\:\\$updatedBy is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodStepHistory will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\:\\:\\$createdAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWork.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\:\\:\\$endDate \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\|null\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWork.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\:\\:\\$startDate \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWork.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\:\\:\\$updatedAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWork.php - - - - message: "#^PHPDoc tag @param for parameter \\$createdAt with type DateTimeImmutable\\|null is not subtype of native type DateTimeInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWorkEvaluation.php - - - - message: "#^PHPDoc tag @param for parameter \\$updatedAt with type DateTimeImmutable\\|null is not subtype of native type DateTimeInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWorkEvaluation.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluation\\:\\:\\$createdAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWorkEvaluation.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluation\\:\\:\\$updatedAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWorkEvaluation.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\Comment\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/Comment.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriodParticipation\\:\\:checkSameStartEnd\\(\\) is unused\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriodParticipation.php - - - - message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" - count: 3 - path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php - - - - message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection\\:\\:matching\\(\\)\\.$#" - count: 5 - path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php - - - - message: "#^Call to an undefined method Traversable\\<\\(int\\|string\\), mixed\\>\\:\\:uasort\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php - - - - message: "#^Cannot call method filter\\(\\) on array\\\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php - - - - message: "#^Cannot call method toArray\\(\\) on array\\\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\Household\\:\\:getAddresses\\(\\) should return array\\ but returns Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php - - - - message: "#^PHPDoc tag @return with type array\\ is incompatible with native type Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php - - - - message: "#^PHPDoc tag @return with type array\\ is incompatible with native type Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php - - - - message: "#^Strict comparison using \\!\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\HouseholdMember will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and int will always evaluate to false\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\PersonHouseholdAddress\\:\\:\\$address is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Household/PersonHouseholdAddress.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\PersonHouseholdAddress\\:\\:\\$household is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Household/PersonHouseholdAddress.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\PersonHouseholdAddress\\:\\:\\$person is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Household/PersonHouseholdAddress.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\PersonHouseholdAddress\\:\\:\\$validFrom is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Household/PersonHouseholdAddress.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\PersonHouseholdAddress\\:\\:\\$validTo is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Household/PersonHouseholdAddress.php - - - - message: "#^PHPDoc tag @param has invalid value \\(string array \\$name\\)\\: Unexpected token \"array\", expected variable at offset 49$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/MaritalStatus.php - - - - message: "#^PHPDoc tag @return with type string is incompatible with native type array\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/MaritalStatus.php - - - - message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" + message: "#^Return type \\(Chill\\\\MainBundle\\\\Entity\\\\Center\\|null\\) of method Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:getCenter\\(\\) should be covariant with return type \\(Chill\\\\MainBundle\\\\Entity\\\\Center\\) of method Chill\\\\MainBundle\\\\Entity\\\\HasCenterInterface\\:\\:getCenter\\(\\)$#" count: 1 path: src/Bundle/ChillPersonBundle/Entity/Person.php - - message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" - count: 3 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection\\:\\:matching\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Instanceof between DateTime and DateTimeInterface will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Negated boolean expression is always true\\.$#" - count: 3 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^PHPDoc tag @return with type array\\ is incompatible with native type Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$calendars is unused\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$center is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$currentHouseholdAt is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$deathdate \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\|null\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$maritalStatusDate \\(DateTime\\|null\\) does not accept DateTimeInterface\\|null\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$periodLocatedOn is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$proxyAccompanyingPeriodOpenState is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$spokenLanguages \\(Doctrine\\\\Common\\\\Collections\\\\ArrayCollection\\) does not accept Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Strict comparison using \\=\\=\\= between true and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriodParticipation\\|null will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\\\PersonResource\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person/PersonResource.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\\\ResidentialAddress\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person/ResidentialAddress.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\PersonAltName\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/PersonAltName.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\PersonPhone\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/PersonPhone.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Relationships\\\\Relationship\\:\\:\\$createdAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Relationships/Relationship.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Relationships\\\\Relationship\\:\\:\\$updatedAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\|null\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Relationships/Relationship.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\SocialWork\\\\Result\\:\\:\\$desactivationDate \\(DateTime\\|null\\) does not accept DateTimeInterface\\|null\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/SocialWork/Result.php - - - - message: "#^If condition is always false\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Entity/SocialWork/SocialAction.php - - - - message: "#^Negated boolean expression is always true\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Entity/SocialWork/SocialAction.php - - - - message: "#^Call to an undefined method Chill\\\\PersonBundle\\\\Entity\\\\SocialWork\\\\SocialAction\\:\\:getSocialIssue\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/SocialWork/SocialIssue.php - - - - message: "#^Call to an undefined method Chill\\\\PersonBundle\\\\Entity\\\\SocialWork\\\\SocialAction\\:\\:setSocialIssue\\(\\)\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Entity/SocialWork/SocialIssue.php - - - - message: "#^If condition is always false\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Entity/SocialWork/SocialIssue.php - - - - message: "#^Negated boolean expression is always true\\.$#" - count: 4 - path: src/Bundle/ChillPersonBundle/Entity/SocialWork/SocialIssue.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\SocialWork\\\\SocialIssue\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/SocialWork/SocialIssue.php - - - - message: "#^Strict comparison using \\=\\=\\= between DateTimeImmutable and null will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Event/Person/PersonAddressMoveEvent.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and DateTimeImmutable will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Event/Person/PersonAddressMoveEvent.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Export\\\\Aggregator\\\\AccompanyingCourseAggregators\\\\DurationAggregator\\:\\:\\$translator is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/DurationAggregator.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Export\\\\Aggregator\\\\EvaluationAggregators\\\\ByEndDateAggregator\\:\\:\\$translator is unused\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Export/Aggregator/EvaluationAggregators/ByEndDateAggregator.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Export\\\\Aggregator\\\\EvaluationAggregators\\\\ByMaxDateAggregator\\:\\:\\$translator is unused\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Export/Aggregator/EvaluationAggregators/ByMaxDateAggregator.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Export\\\\Aggregator\\\\EvaluationAggregators\\\\ByStartDateAggregator\\:\\:\\$translator is unused\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Export/Aggregator/EvaluationAggregators/ByStartDateAggregator.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Export\\\\Aggregator\\\\HouseholdAggregators\\\\ChildrenNumberAggregator\\:\\:\\$translator is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Export/Aggregator/HouseholdAggregators/ChildrenNumberAggregator.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Export\\\\Export\\\\ListAccompanyingPeriod\\:\\:\\$userHelper is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Export/Export/ListAccompanyingPeriod.php - - - - message: "#^Call to method extractOtherValue\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php - - - - message: "#^Call to method getChoices\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php - - - - message: "#^Call to method isChecked\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php - - - - message: "#^Call to method isMultiple\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php - - - - message: "#^Call to method render\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Export\\\\Export\\\\ListPersonDuplicate\\:\\:\\$translator \\(Symfony\\\\Component\\\\Translation\\\\TranslatorInterface\\) does not accept Symfony\\\\Contracts\\\\Translation\\\\TranslatorInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Export/Export/ListPersonDuplicate.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Export\\\\Filter\\\\AccompanyingCourseFilters\\\\AdministrativeLocationFilter\\:\\:\\$translatableStringHelper is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/AdministrativeLocationFilter.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Export\\\\Filter\\\\AccompanyingCourseFilters\\\\SocialActionFilter\\:\\:\\$translatableStringHelper is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/SocialActionFilter.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Export\\\\Filter\\\\AccompanyingCourseFilters\\\\UserScopeFilter\\:\\:getUserMainScope\\(\\) is unused\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/UserScopeFilter.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Export\\\\Filter\\\\SocialWorkFilters\\\\SocialWorkTypeFilter\\:\\:\\$socialActionRender is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Export/Filter/SocialWorkFilters/SocialWorkTypeFilter.php - - - - message: "#^PHPDoc tag @param for parameter \\$personRepository with type Chill\\\\PersonBundle\\\\Form\\\\ChoiceLoader\\\\EntityRepository is not subtype of native type Chill\\\\PersonBundle\\\\Repository\\\\PersonRepository\\.$#" + message: "#^Parameter \\#1 \\$value \\(null\\) of method Chill\\\\PersonBundle\\\\Form\\\\ChoiceLoader\\\\PersonChoiceLoader\\:\\:loadChoiceList\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadChoiceList\\(\\)$#" count: 1 path: src/Bundle/ChillPersonBundle/Form/ChoiceLoader/PersonChoiceLoader.php - - message: "#^Parameter \\$personRepository of method Chill\\\\PersonBundle\\\\Form\\\\ChoiceLoader\\\\PersonChoiceLoader\\:\\:__construct\\(\\) has invalid type Chill\\\\PersonBundle\\\\Form\\\\ChoiceLoader\\\\EntityRepository\\.$#" + message: "#^Parameter \\#2 \\$value \\(null\\) of method Chill\\\\PersonBundle\\\\Form\\\\ChoiceLoader\\\\PersonChoiceLoader\\:\\:loadChoicesForValues\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadChoicesForValues\\(\\)$#" count: 1 path: src/Bundle/ChillPersonBundle/Form/ChoiceLoader/PersonChoiceLoader.php - - message: "#^Method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) invoked with 2 parameters, 1 required\\.$#" + message: "#^Parameter \\#2 \\$value \\(null\\) of method Chill\\\\PersonBundle\\\\Form\\\\ChoiceLoader\\\\PersonChoiceLoader\\:\\:loadValuesForChoices\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadValuesForChoices\\(\\)$#" count: 1 - path: src/Bundle/ChillPersonBundle/Form/CreationPersonType.php + path: src/Bundle/ChillPersonBundle/Form/ChoiceLoader/PersonChoiceLoader.php - - message: "#^Call to function is_array\\(\\) with Doctrine\\\\Common\\\\Collections\\\\Collection will always evaluate to false\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Form/DataMapper/PersonAltNameDataMapper.php - - - - message: "#^Call to method getData\\(\\) on an unknown class Chill\\\\PersonBundle\\\\Form\\\\DataMapper\\\\FormInterface\\.$#" - count: 3 - path: src/Bundle/ChillPersonBundle/Form/DataMapper/PersonAltNameDataMapper.php - - - - message: "#^Parameter \\#1 \\$forms \\(array\\\\) of method Chill\\\\PersonBundle\\\\Form\\\\DataMapper\\\\PersonAltNameDataMapper\\:\\:mapFormsToData\\(\\) should be compatible with parameter \\$forms \\(iterable\\&Traversable\\) of method Symfony\\\\Component\\\\Form\\\\DataMapperInterface\\:\\:mapFormsToData\\(\\)$#" + message: "#^Parameter \\#3 \\$limit \\(int\\) of method Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluationRepository\\:\\:findBy\\(\\) should be contravariant with parameter \\$limit \\(int\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" count: 1 - path: src/Bundle/ChillPersonBundle/Form/DataMapper/PersonAltNameDataMapper.php + path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/AccompanyingPeriodWorkEvaluationRepository.php - - message: "#^Parameter \\$forms of method Chill\\\\PersonBundle\\\\Form\\\\DataMapper\\\\PersonAltNameDataMapper\\:\\:mapFormsToData\\(\\) has invalid type Chill\\\\PersonBundle\\\\Form\\\\DataMapper\\\\FormInterface\\.$#" + message: "#^Parameter \\#4 \\$offset \\(int\\) of method Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluationRepository\\:\\:findBy\\(\\) should be contravariant with parameter \\$offset \\(int\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" count: 1 - path: src/Bundle/ChillPersonBundle/Form/DataMapper/PersonAltNameDataMapper.php + path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/AccompanyingPeriodWorkEvaluationRepository.php - - message: "#^Property Chill\\\\PersonBundle\\\\Form\\\\PersonResourceType\\:\\:\\$personRender is never read, only written\\.$#" + message: "#^Parameter \\#3 \\$limit \\(int\\) of method Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\HouseholdCompositionRepository\\:\\:findBy\\(\\) should be contravariant with parameter \\$limit \\(int\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" count: 1 - path: src/Bundle/ChillPersonBundle/Form/PersonResourceType.php + path: src/Bundle/ChillPersonBundle/Repository/Household/HouseholdCompositionRepository.php - - message: "#^Property Chill\\\\PersonBundle\\\\Form\\\\PersonResourceType\\:\\:\\$thirdPartyRender is never read, only written\\.$#" + message: "#^Parameter \\#4 \\$offset \\(int\\) of method Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\HouseholdCompositionRepository\\:\\:findBy\\(\\) should be contravariant with parameter \\$offset \\(int\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" count: 1 - path: src/Bundle/ChillPersonBundle/Form/PersonResourceType.php + path: src/Bundle/ChillPersonBundle/Repository/Household/HouseholdCompositionRepository.php - - message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\PersonBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" + message: "#^Parameter \\#3 \\$limit \\(int\\) of method Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\HouseholdCompositionRepositoryInterface\\:\\:findBy\\(\\) should be contravariant with parameter \\$limit \\(int\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" count: 1 - path: src/Bundle/ChillPersonBundle/Form/PersonType.php + path: src/Bundle/ChillPersonBundle/Repository/Household/HouseholdCompositionRepositoryInterface.php - - message: "#^Parameter \\$resolver of method Chill\\\\PersonBundle\\\\Form\\\\PersonType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\PersonBundle\\\\Form\\\\OptionsResolverInterface\\.$#" + message: "#^Parameter \\#4 \\$offset \\(int\\) of method Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\HouseholdCompositionRepositoryInterface\\:\\:findBy\\(\\) should be contravariant with parameter \\$offset \\(int\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" count: 1 - path: src/Bundle/ChillPersonBundle/Form/PersonType.php + path: src/Bundle/ChillPersonBundle/Repository/Household/HouseholdCompositionRepositoryInterface.php - - message: "#^Property Chill\\\\PersonBundle\\\\Form\\\\PersonType\\:\\:\\$parameterBag is never read, only written\\.$#" + message: "#^Return type \\(class\\-string\\) of method Chill\\\\PersonBundle\\\\Repository\\\\SocialWork\\\\EvaluationRepository\\:\\:getClassName\\(\\) should be covariant with return type \\(class\\-string\\\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:getClassName\\(\\)$#" count: 1 - path: src/Bundle/ChillPersonBundle/Form/PersonType.php + path: src/Bundle/ChillPersonBundle/Repository/SocialWork/EvaluationRepository.php - - message: "#^Property Chill\\\\PersonBundle\\\\Form\\\\PersonType\\:\\:\\$translatableStringHelper \\(Chill\\\\MainBundle\\\\Templating\\\\TranslatableStringHelper\\) does not accept Chill\\\\MainBundle\\\\Templating\\\\TranslatableStringHelperInterface\\.$#" + message: "#^Return type \\(class\\-string\\) of method Chill\\\\PersonBundle\\\\Repository\\\\SocialWork\\\\EvaluationRepositoryInterface\\:\\:getClassName\\(\\) should be covariant with return type \\(class\\-string\\\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:getClassName\\(\\)$#" count: 1 - path: src/Bundle/ChillPersonBundle/Form/PersonType.php + path: src/Bundle/ChillPersonBundle/Repository/SocialWork/EvaluationRepositoryInterface.php - - message: "#^Strict comparison using \\=\\=\\= between 'create' and 'create' will always evaluate to true\\.$#" + message: "#^Return type \\(class\\-string\\) of method Chill\\\\PersonBundle\\\\Repository\\\\SocialWork\\\\GoalRepository\\:\\:getClassName\\(\\) should be covariant with return type \\(class\\-string\\\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:getClassName\\(\\)$#" count: 1 - path: src/Bundle/ChillPersonBundle/Form/SocialWork/SocialIssueType.php + path: src/Bundle/ChillPersonBundle/Repository/SocialWork/GoalRepository.php - - message: "#^Property Chill\\\\PersonBundle\\\\Form\\\\Type\\\\PickPersonType\\:\\:\\$user \\(Chill\\\\MainBundle\\\\Entity\\\\User\\) does not accept string\\|Stringable\\|Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\.$#" + message: "#^Return type \\(class\\-string\\) of method Chill\\\\PersonBundle\\\\Repository\\\\SocialWork\\\\ResultRepository\\:\\:getClassName\\(\\) should be covariant with return type \\(class\\-string\\\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:getClassName\\(\\)$#" count: 1 - path: src/Bundle/ChillPersonBundle/Form/Type/PickPersonType.php + path: src/Bundle/ChillPersonBundle/Repository/SocialWork/ResultRepository.php - - message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" + message: "#^Return type \\(class\\-string\\) of method Chill\\\\PersonBundle\\\\Repository\\\\SocialWork\\\\SocialActionRepository\\:\\:getClassName\\(\\) should be covariant with return type \\(class\\-string\\\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:getClassName\\(\\)$#" count: 1 - path: src/Bundle/ChillPersonBundle/Household/MembersEditor.php + path: src/Bundle/ChillPersonBundle/Repository/SocialWork/SocialActionRepository.php - - message: "#^Method Doctrine\\\\Common\\\\Collections\\\\ExpressionBuilder\\:\\:isNull\\(\\) invoked with 2 parameters, 1 required\\.$#" + message: "#^Return type \\(class\\-string\\) of method Chill\\\\PersonBundle\\\\Repository\\\\SocialWork\\\\SocialIssueRepository\\:\\:getClassName\\(\\) should be covariant with return type \\(class\\-string\\\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:getClassName\\(\\)$#" count: 1 - path: src/Bundle/ChillPersonBundle/Household/MembersEditor.php + path: src/Bundle/ChillPersonBundle/Repository/SocialWork/SocialIssueRepository.php - - message: "#^Cannot call method getId\\(\\) on string\\|Stringable\\|Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Privacy/PrivacyEventSubscriber.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkGoalRepository\\:\\:\\$repository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/AccompanyingPeriodWorkGoalRepository.php - - - - message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\:\\:countByAccompanyingPeriod\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/AccompanyingPeriodWorkRepository.php - - - - message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\:\\:findByAccompanyingPeriod\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/AccompanyingPeriodWorkRepository.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\CommentRepository\\:\\:\\$repository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/CommentRepository.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\OriginRepository\\:\\:\\$repository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/OriginRepository.php - - - - message: "#^PHPDoc tag @param has invalid value \\(array\\|PostalCode\\[\\]\\)\\: Unexpected token \"\\\\n \\*\", expected variable at offset 36$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriodACLAwareRepository.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriodParticipationRepository\\:\\:\\$repository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriodParticipationRepository.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\HouseholdMembersRepository\\:\\:\\$repository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/Household/HouseholdMembersRepository.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\PositionRepository\\:\\:findOneBy\\(\\) should return array\\ but returns object\\|null\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/Household/PositionRepository.php - - - - message: "#^Return type \\(array\\\\) of method Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\PositionRepository\\:\\:findOneBy\\(\\) should be compatible with return type \\(object\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findOneBy\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/Household/PositionRepository.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\PersonACLAwareRepository\\:\\:\\$countryRepository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/PersonACLAwareRepository.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\PersonAltNameRepository\\:\\:\\$repository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/PersonAltNameRepository.php - - - - message: "#^PHPDoc tag @return with type array\\\\|null is not subtype of native type array\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/ResidentialAddressRepository.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Search\\\\PersonSearch\\:\\:renderResult\\(\\) should return string but returns array\\\\>\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Search/PersonSearch.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Search\\\\SearchHouseholdApiProvider\\:\\:\\$authorizationHelper is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Search/SearchHouseholdApiProvider.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Search\\\\SearchHouseholdApiProvider\\:\\:\\$security is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Search/SearchHouseholdApiProvider.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Search\\\\SearchPersonApiProvider\\:\\:\\$authorizationHelper is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Search/SearchPersonApiProvider.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Search\\\\SearchPersonApiProvider\\:\\:\\$security is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Search/SearchPersonApiProvider.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Security\\\\Authorization\\\\AccompanyingPeriodVoter\\:\\:\\$security is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodVoter.php - - - - message: "#^PHPDoc tag @return with type bool\\|void is not subtype of native type bool\\.$#" + message: "#^Parameter \\#2 \\$subject \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluationDocument\\) of method Chill\\\\PersonBundle\\\\Security\\\\Authorization\\\\AccompanyingPeriodWorkEvaluationDocumentVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" count: 1 path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkEvaluationDocumentVoter.php - - message: "#^Elseif branch is unreachable because previous condition is always true\\.$#" + message: "#^Parameter \\#2 \\$subject \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluation\\) of method Chill\\\\PersonBundle\\\\Security\\\\Authorization\\\\AccompanyingPeriodWorkEvaluationVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkEvaluationVoter.php + + - + message: "#^Parameter \\#2 \\$subject \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\) of method Chill\\\\PersonBundle\\\\Security\\\\Authorization\\\\AccompanyingPeriodWorkVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" count: 1 path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkVoter.php - - message: "#^Instanceof between \\*NEVER\\* and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkVoter.php - - - - message: "#^Instanceof between Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkVoter.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Security\\\\Authorization\\\\AccompanyingPeriodWorkVoter\\:\\:\\$voterHelper is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkVoter.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkVoter.php - - - - message: "#^Constant Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodDocGenNormalizer\\:\\:IGNORE_FIRST_PASS_KEY is unused\\.$#" - count: 1 + message: "#^Parameter \\#1 \\$period \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\|null\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodDocGenNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 2 path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodDocGenNormalizer.php - - message: "#^Strict comparison using \\!\\=\\= between Chill\\\\PersonBundle\\\\Entity\\\\Person\\|Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty and null will always evaluate to true\\.$#" + message: "#^Parameter \\#1 \\$origin \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\Origin\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodOriginNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodDocGenNormalizer.php + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodOriginNormalizer.php - - message: "#^Strict comparison using \\=\\=\\= between null and null will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodDocGenNormalizer.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodDocGenNormalizer.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" + message: "#^Parameter \\#1 \\$participation \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriodParticipation\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodParticipationNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" count: 1 path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodParticipationNormalizer.php - - message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkDenormalizer\\:\\:\\$em is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkDenormalizer.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkDenormalizer\\:\\:\\$workRepository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkDenormalizer.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkEvaluationDocumentNormalizer\\:\\:\\$registry is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkEvaluationDocumentNormalizer.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkEvaluationNormalizer\\:\\:\\$registry is never read, only written\\.$#" - count: 1 + message: "#^Parameter \\#1 \\$object \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluation\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkEvaluationNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 2 path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkEvaluationNormalizer.php - - message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkNormalizer\\:\\:\\$registry is never read, only written\\.$#" - count: 1 + message: "#^Parameter \\#1 \\$object \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 2 path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkNormalizer.php - - message: "#^Call to function is_array\\(\\) with 'concerned' will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/MembersEditorNormalizer.php - - - - message: "#^Expression on left side of \\?\\? is not nullable\\.$#" - count: 3 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/MembersEditorNormalizer.php - - - - message: "#^Left side of && is always false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/MembersEditorNormalizer.php - - - - message: "#^Strict comparison using \\=\\=\\= between false and false will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/MembersEditorNormalizer.php - - - - message: "#^Instanceof between Chill\\\\PersonBundle\\\\Entity\\\\Person and Chill\\\\PersonBundle\\\\Entity\\\\Person will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonDocGenNormalizer.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\PersonDocGenNormalizer\\:\\:hasGroup\\(\\) is unused\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonDocGenNormalizer.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\Person will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonDocGenNormalizer.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\PersonJsonNormalizer\\:\\:\\$phoneNumberHelper is never read, only written\\.$#" - count: 1 + message: "#^Parameter \\#1 \\$person \\(Chill\\\\PersonBundle\\\\Entity\\\\Person\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\PersonJsonNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 2 path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonJsonNormalizer.php - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\Relationships\\\\Relationship will always evaluate to false\\.$#" - count: 1 + message: "#^Parameter \\#1 \\$relation \\(Chill\\\\PersonBundle\\\\Entity\\\\Relationships\\\\Relationship\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\RelationshipDocGenNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 2 path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/RelationshipDocGenNormalizer.php - - message: "#^Method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\SocialIssueNormalizer\\:\\:normalize\\(\\) should return array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|null but return statement is missing\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/SocialIssueNormalizer.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\SocialWork\\\\SocialIssue will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/SocialIssueNormalizer.php - - - - message: "#^PHPDoc tag @return with type array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|void\\|null is not subtype of native type array\\.$#" - count: 1 + message: "#^Parameter \\#1 \\$object \\(Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\WorkflowNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 2 path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/WorkflowNormalizer.php - - message: "#^Call to an undefined method Chill\\\\DocStoreBundle\\\\Entity\\\\Document\\:\\:setCourse\\(\\)\\.$#" + message: "#^Parameter \\#1 \\$object \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluationDocument\\) of method Chill\\\\PersonBundle\\\\Workflow\\\\AccompanyingPeriodWorkEvaluationDocumentWorkflowHandler\\:\\:getRelatedObjects\\(\\) should be contravariant with parameter \\$object \\(object\\) of method Chill\\\\MainBundle\\\\Workflow\\\\EntityWorkflowHandlerInterface\\:\\:getRelatedObjects\\(\\)$#" count: 1 - path: src/Bundle/ChillPersonBundle/Service/DocGenerator/AccompanyingPeriodContext.php + path: src/Bundle/ChillPersonBundle/Workflow/AccompanyingPeriodWorkEvaluationDocumentWorkflowHandler.php - - message: "#^Call to function array_key_exists\\(\\) with 'category' and array will always evaluate to true\\.$#" + message: "#^Parameter \\#1 \\$object \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluation\\) of method Chill\\\\PersonBundle\\\\Workflow\\\\AccompanyingPeriodWorkEvaluationWorkflowHandler\\:\\:getRelatedObjects\\(\\) should be contravariant with parameter \\$object \\(object\\) of method Chill\\\\MainBundle\\\\Workflow\\\\EntityWorkflowHandlerInterface\\:\\:getRelatedObjects\\(\\)$#" count: 1 - path: src/Bundle/ChillPersonBundle/Service/DocGenerator/AccompanyingPeriodContext.php + path: src/Bundle/ChillPersonBundle/Workflow/AccompanyingPeriodWorkEvaluationWorkflowHandler.php - - message: "#^Else branch is unreachable because ternary operator condition is always true\\.$#" + message: "#^Parameter \\#1 \\$object \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\) of method Chill\\\\PersonBundle\\\\Workflow\\\\AccompanyingPeriodWorkWorkflowHandler\\:\\:getRelatedObjects\\(\\) should be contravariant with parameter \\$object \\(object\\) of method Chill\\\\MainBundle\\\\Workflow\\\\EntityWorkflowHandlerInterface\\:\\:getRelatedObjects\\(\\)$#" count: 1 - path: src/Bundle/ChillPersonBundle/Service/DocGenerator/AccompanyingPeriodContext.php + path: src/Bundle/ChillPersonBundle/Workflow/AccompanyingPeriodWorkWorkflowHandler.php - - message: "#^Call to an undefined method Chill\\\\DocStoreBundle\\\\Entity\\\\Document\\:\\:setPerson\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Service/DocGenerator/PersonContext.php - - - - message: "#^Call to function array_key_exists\\(\\) with 'category' and array will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Service/DocGenerator/PersonContext.php - - - - message: "#^Comparison operation \"\\<\" between 1 and array results in an error\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Service/DocGenerator/PersonContext.php - - - - message: "#^Else branch is unreachable because ternary operator condition is always true\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Service/DocGenerator/PersonContext.php - - - - message: "#^PHPDoc tag @param has invalid value \\(array\\\\|SocialIssue\\|string, SocialAction\\|null\\>\\|Evaluation\\|Goal\\|Result\\> \\$previousRow\\)\\: Unexpected token \"\\<\", expected type at offset 333$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Service/Import/SocialWorkMetadata.php - - - - message: "#^PHPDoc tag @return has invalid value \\(array\\\\|SocialIssue\\|string, SocialAction\\|null\\>\\|Evaluation\\|Goal\\|Result\\>\\)\\: Unexpected token \"\\<\", expected type at offset 505$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Service/Import/SocialWorkMetadata.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Service\\\\Import\\\\SocialWorkMetadata\\:\\:\\$socialActionRepository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Service/Import/SocialWorkMetadata.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Service\\\\Import\\\\SocialWorkMetadata\\:\\:\\$socialIssueRepository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Service/Import/SocialWorkMetadata.php - - - - message: "#^Call to method getId\\(\\) on an unknown class ChillPersonBundle\\:AccompanyingPeriod\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Timeline/AbstractTimelineAccompanyingPeriod.php - - - - message: "#^Cannot call method setKey\\(\\) on array\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodClosing.php - - - - message: "#^Parameter \\$context of method Chill\\\\PersonBundle\\\\Timeline\\\\TimelineAccompanyingPeriodClosing\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodClosing.php - - - - message: "#^Parameter \\$entity of method Chill\\\\PersonBundle\\\\Timeline\\\\TimelineAccompanyingPeriodClosing\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodClosing.php - - - - message: "#^Cannot call method setKey\\(\\) on array\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodOpening.php - - - - message: "#^Parameter \\$context of method Chill\\\\PersonBundle\\\\Timeline\\\\TimelineAccompanyingPeriodOpening\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodOpening.php - - - - message: "#^Parameter \\$entity of method Chill\\\\PersonBundle\\\\Timeline\\\\TimelineAccompanyingPeriodOpening\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodOpening.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Validator\\\\Constraints\\\\AccompanyingPeriod\\\\AccompanyingPeriodValidityValidator\\:\\:\\$token is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Validator/Constraints/AccompanyingPeriod/AccompanyingPeriodValidityValidator.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Validator\\\\Constraints\\\\AccompanyingPeriod\\\\ParticipationOverlapValidator\\:\\:\\$thirdpartyRender is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Validator/Constraints/AccompanyingPeriod/ParticipationOverlapValidator.php - - - - message: "#^Strict comparison using \\=\\=\\= between 0 and int\\<2, max\\> will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Validator/Constraints/AccompanyingPeriod/ParticipationOverlapValidator.php - - - - message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$message\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Validator/Constraints/Household/HouseholdMembershipSequentialValidator.php - - - - message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$message\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Validator/Constraints/Household/MaxHolderValidator.php - - - - message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$messageInfinity\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Validator/Constraints/Household/MaxHolderValidator.php - - - - message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$message\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Validator/Constraints/Person/BirthdateValidator.php - - - - message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$message\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Validator/Constraints/Person/PersonHasCenterValidator.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and string\\|Stringable\\|Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Widget/PersonListWidget.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeParentInterface\\:\\:info\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Widget/PersonListWidgetFactory.php - - - - message: "#^Parameter \\$place of method Chill\\\\PersonBundle\\\\Widget\\\\PersonListWidgetFactory\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Widget/PersonListWidgetFactory.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQuery\\(\\)\\.$#" - count: 2 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findByCFGroup\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findByEntity\\(\\)\\.$#" - count: 2 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Call to method getId\\(\\) on an unknown class ChillReportBundle\\:Report\\.$#" - count: 2 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Call to method getPerson\\(\\) on an unknown class ChillReportBundle\\:Report\\.$#" - count: 3 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:editAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:editAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:exportAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\A\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:exportAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\A but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:listAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:listAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:newAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:newAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" - count: 2 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeForExportAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeForExportAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" - count: 2 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeForExportAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:updateAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:updateAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:updateAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:viewAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:viewAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) invoked with 2 parameters, 1 required\\.$#" - count: 4 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Negated boolean expression is always false\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\DataFixtures\\\\ORM\\\\LoadReports\\:\\:getRandomChoice\\(\\) never returns string so it can be removed from the return type\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/DataFixtures/ORM/LoadReports.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\DataFixtures\\\\ORM\\\\LoadReports\\:\\:getRandomChoice\\(\\) should return array\\\\|string but returns array\\\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/DataFixtures/ORM/LoadReports.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\DataFixtures\\\\ORM\\\\LoadReports\\:\\:pickChoice\\(\\) has invalid return type Chill\\\\ReportBundle\\\\DataFixtures\\\\ORM\\\\the\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/DataFixtures/ORM/LoadReports.php - - - - message: "#^Strict comparison using \\=\\=\\= between '_other' and Chill\\\\ReportBundle\\\\DataFixtures\\\\ORM\\\\the will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/DataFixtures/ORM/LoadReports.php - - - - message: "#^Strict comparison using \\=\\=\\= between DateTime and null will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/DataFixtures/ORM/LoadReports.php - - - - message: "#^Method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\TreeBuilder\\:\\:getRootNode\\(\\) invoked with 1 parameter, 0 required\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/DependencyInjection/Configuration.php - - - - message: "#^PHPDoc tag @param for parameter \\$scope with type string is incompatible with native type Chill\\\\MainBundle\\\\Entity\\\\Scope\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Entity/Report.php - - - - message: "#^Property Chill\\\\ReportBundle\\\\Entity\\\\Report\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Entity/Report.php - - - - message: "#^Call to method extractOtherValue\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Export/Export/ReportList.php - - - - message: "#^Call to method getChoices\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 2 - path: src/Bundle/ChillReportBundle/Export/Export/ReportList.php - - - - message: "#^Call to method isChecked\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 2 - path: src/Bundle/ChillReportBundle/Export/Export/ReportList.php - - - - message: "#^Call to method isMultiple\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 2 - path: src/Bundle/ChillReportBundle/Export/Export/ReportList.php - - - - message: "#^Call to method render\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Export/Export/ReportList.php - - - - message: "#^Property Chill\\\\ReportBundle\\\\Form\\\\ReportType\\:\\:\\$user \\(Chill\\\\MainBundle\\\\Entity\\\\User\\) does not accept string\\|Stringable\\|Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Form/ReportType.php - - - - message: "#^Call to method getId\\(\\) on an unknown class ChillReportBundle\\:Report\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Timeline/TimelineReportProvider.php - - - - message: "#^Parameter \\$context of method Chill\\\\ReportBundle\\\\Timeline\\\\TimelineReportProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Timeline/TimelineReportProvider.php - - - - message: "#^Parameter \\$entity of method Chill\\\\ReportBundle\\\\Timeline\\\\TimelineReportProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Timeline/TimelineReportProvider.php - - - - message: "#^Method Chill\\\\TaskBundle\\\\Controller\\\\SingleTaskController\\:\\:createDeleteForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Controller/SingleTaskController.php - - - - message: "#^Method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) invoked with 2 parameters, 1 required\\.$#" - count: 6 - path: src/Bundle/ChillTaskBundle/Controller/SingleTaskController.php - - - - message: "#^Property Chill\\\\TaskBundle\\\\Controller\\\\SingleTaskController\\:\\:\\$centerResolverDispatcher is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Controller/SingleTaskController.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and int will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Controller/SingleTaskController.php - - - - message: "#^If condition is always true\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Controller/TaskController.php - - - - message: "#^Method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) invoked with 2 parameters, 1 required\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Controller/TaskController.php - - - - message: "#^PHPDoc tag @param for parameter \\$task with type Chill\\\\TaskBundle\\\\Controller\\\\AbstractTask is not subtype of native type Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Controller/TaskController.php - - - - message: "#^Parameter \\$task of method Chill\\\\TaskBundle\\\\Controller\\\\TaskController\\:\\:createTransitionForm\\(\\) has invalid type Chill\\\\TaskBundle\\\\Controller\\\\AbstractTask\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Controller/TaskController.php - - - - message: "#^Method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\TreeBuilder\\:\\:getRootNode\\(\\) invoked with 1 parameter, 0 required\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/DependencyInjection/Configuration.php - - - - message: "#^Property Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask\\:\\:\\$currentStates \\(Chill\\\\TaskBundle\\\\Entity\\\\json\\) does not accept array\\\\.$#" + message: "#^Return type \\(Chill\\\\MainBundle\\\\Entity\\\\Center\\|null\\) of method Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask\\:\\:getCenter\\(\\) should be covariant with return type \\(Chill\\\\MainBundle\\\\Entity\\\\Center\\) of method Chill\\\\MainBundle\\\\Entity\\\\HasCenterInterface\\:\\:getCenter\\(\\)$#" count: 1 path: src/Bundle/ChillTaskBundle/Entity/AbstractTask.php - - message: "#^Property Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask\\:\\:\\$currentStates \\(Chill\\\\TaskBundle\\\\Entity\\\\json\\) does not accept default value of type array\\.$#" + message: "#^Return type \\(Chill\\\\MainBundle\\\\Entity\\\\Scope\\|null\\) of method Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask\\:\\:getScope\\(\\) should be covariant with return type \\(Chill\\\\MainBundle\\\\Entity\\\\Scope\\) of method Chill\\\\MainBundle\\\\Entity\\\\HasScopeInterface\\:\\:getScope\\(\\)$#" count: 1 path: src/Bundle/ChillTaskBundle/Entity/AbstractTask.php - - message: "#^Property Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask\\:\\:\\$currentStates has unknown class Chill\\\\TaskBundle\\\\Entity\\\\json as its type\\.$#" + message: "#^Parameter \\#3 \\$entity \\(Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\) of method Chill\\\\ThirdPartyBundle\\\\Controller\\\\ThirdPartyController\\:\\:onPostFetchEntity\\(\\) should be contravariant with parameter \\$entity \\(mixed\\) of method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\CRUDController\\:\\:onPostFetchEntity\\(\\)$#" count: 1 - path: src/Bundle/ChillTaskBundle/Entity/AbstractTask.php + path: src/Bundle/ChillThirdPartyBundle/Controller/ThirdPartyController.php - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Entity/AbstractTask.php - - - - message: "#^Method Chill\\\\TaskBundle\\\\Entity\\\\RecurringTask\\:\\:getOccurenceStartDate\\(\\) has invalid return type Chill\\\\TaskBundle\\\\Entity\\\\dateinterval\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Entity/RecurringTask.php - - - - message: "#^Method Chill\\\\TaskBundle\\\\Entity\\\\RecurringTask\\:\\:getOccurenceWarningInterval\\(\\) has invalid return type Chill\\\\TaskBundle\\\\Entity\\\\dateinterval\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Entity/RecurringTask.php - - - - message: "#^Parameter \\$occurenceStartDate of method Chill\\\\TaskBundle\\\\Entity\\\\RecurringTask\\:\\:setOccurenceStartDate\\(\\) has invalid type Chill\\\\TaskBundle\\\\Entity\\\\dateinterval\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Entity/RecurringTask.php - - - - message: "#^Parameter \\$occurenceWarningInterval of method Chill\\\\TaskBundle\\\\Entity\\\\RecurringTask\\:\\:setOccurenceWarningInterval\\(\\) has invalid type Chill\\\\TaskBundle\\\\Entity\\\\dateinterval\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Entity/RecurringTask.php - - - - message: "#^Property Chill\\\\TaskBundle\\\\Entity\\\\RecurringTask\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Entity/RecurringTask.php - - - - message: "#^Property Chill\\\\TaskBundle\\\\Entity\\\\RecurringTask\\:\\:\\$occurenceStartDate has unknown class Chill\\\\TaskBundle\\\\Entity\\\\dateinterval as its type\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Entity/RecurringTask.php - - - - message: "#^Property Chill\\\\TaskBundle\\\\Entity\\\\RecurringTask\\:\\:\\$occurenceWarningInterval has unknown class Chill\\\\TaskBundle\\\\Entity\\\\dateinterval as its type\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Entity/RecurringTask.php - - - - message: "#^Property Chill\\\\TaskBundle\\\\Entity\\\\RecurringTask\\:\\:\\$singleTasks is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Entity/RecurringTask.php - - - - message: "#^Method Chill\\\\TaskBundle\\\\Entity\\\\SingleTask\\:\\:getWarningDate\\(\\) should return DateTimeImmutable but returns null\\.$#" - count: 2 - path: src/Bundle/ChillTaskBundle/Entity/SingleTask.php - - - - message: "#^Property Chill\\\\TaskBundle\\\\Entity\\\\SingleTask\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Entity/SingleTask.php - - - - message: "#^Property Chill\\\\TaskBundle\\\\Entity\\\\SingleTask\\:\\:\\$warningInterval \\(DateInterval\\) does not accept string\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Entity/SingleTask.php - - - - message: "#^Strict comparison using \\=\\=\\= between DateInterval and null will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Entity/SingleTask.php - - - - message: "#^Strict comparison using \\=\\=\\= between DateTime and null will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Entity/SingleTask.php - - - - message: "#^Method Chill\\\\TaskBundle\\\\Entity\\\\Task\\\\AbstractTaskPlaceEvent\\:\\:getDatetime\\(\\) has invalid return type Chill\\\\TaskBundle\\\\Entity\\\\Task\\\\datetime_immutable\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Entity/Task/AbstractTaskPlaceEvent.php - - - - message: "#^Parameter \\$datetime of method Chill\\\\TaskBundle\\\\Entity\\\\Task\\\\AbstractTaskPlaceEvent\\:\\:setDatetime\\(\\) has invalid type Chill\\\\TaskBundle\\\\Entity\\\\Task\\\\datetime_immutable\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Entity/Task/AbstractTaskPlaceEvent.php - - - - message: "#^Property Chill\\\\TaskBundle\\\\Entity\\\\Task\\\\AbstractTaskPlaceEvent\\:\\:\\$data \\(string\\) does not accept default value of type array\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Entity/Task/AbstractTaskPlaceEvent.php - - - - message: "#^Property Chill\\\\TaskBundle\\\\Entity\\\\Task\\\\AbstractTaskPlaceEvent\\:\\:\\$datetime \\(Chill\\\\TaskBundle\\\\Entity\\\\Task\\\\datetime_immutable\\) does not accept DateTimeImmutable\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Entity/Task/AbstractTaskPlaceEvent.php - - - - message: "#^Property Chill\\\\TaskBundle\\\\Entity\\\\Task\\\\AbstractTaskPlaceEvent\\:\\:\\$datetime has unknown class Chill\\\\TaskBundle\\\\Entity\\\\Task\\\\datetime_immutable as its type\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Entity/Task/AbstractTaskPlaceEvent.php - - - - message: "#^Property Chill\\\\TaskBundle\\\\Entity\\\\Task\\\\AbstractTaskPlaceEvent\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Entity/Task/AbstractTaskPlaceEvent.php - - - - message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask\\:\\:getTaskPlaceEvents\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Event/Lifecycle/TaskLifecycleEvent.php - - - - message: "#^Method Knp\\\\Menu\\\\MenuItem\\:\\:setExtras\\(\\) invoked with 2 parameters, 1 required\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Menu/MenuBuilder.php - - - - message: "#^Call to an undefined method Symfony\\\\Contracts\\\\Translation\\\\TranslatorInterface\\:\\:transChoice\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Menu/UserMenuBuilder.php - - - - message: "#^Method Chill\\\\TaskBundle\\\\Repository\\\\SingleTaskRepository\\:\\:findByParameters\\(\\) has invalid return type Chill\\\\TaskBundle\\\\Repository\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Repository/SingleTaskRepository.php - - - - message: "#^Parameter \\$params of method Chill\\\\TaskBundle\\\\Repository\\\\SingleTaskRepository\\:\\:findByParameters\\(\\) has invalid type Chill\\\\TaskBundle\\\\Repository\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Repository/SingleTaskRepository.php - - - - message: "#^Property Chill\\\\TaskBundle\\\\Security\\\\Authorization\\\\AuthorizationEvent\\:\\:\\$subject has unknown class Chill\\\\TaskBundle\\\\Security\\\\Authorization\\\\Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask as its type\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Security/Authorization/AuthorizationEvent.php - - - - message: "#^Property Chill\\\\TaskBundle\\\\Security\\\\Authorization\\\\AuthorizationEvent\\:\\:\\$vote \\(bool\\) does not accept null\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Security/Authorization/AuthorizationEvent.php - - - - message: "#^Method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) invoked with 2 parameters, 1 required\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Security/Authorization/TaskVoter.php - - - - message: "#^Call to method deleteItem\\(\\) on an unknown class Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CacheItempPoolInterface\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Templating/UI/CountNotificationTask.php - - - - message: "#^Call to method getItem\\(\\) on an unknown class Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CacheItempPoolInterface\\.$#" - count: 2 - path: src/Bundle/ChillTaskBundle/Templating/UI/CountNotificationTask.php - - - - message: "#^Call to method save\\(\\) on an unknown class Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CacheItempPoolInterface\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Templating/UI/CountNotificationTask.php - - - - message: "#^Property Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CountNotificationTask\\:\\:\\$cachePool \\(Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CacheItempPoolInterface\\) does not accept Psr\\\\Cache\\\\CacheItemPoolInterface\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Templating/UI/CountNotificationTask.php - - - - message: "#^Property Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CountNotificationTask\\:\\:\\$cachePool has unknown class Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CacheItempPoolInterface as its type\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Templating/UI/CountNotificationTask.php - - - - message: "#^Call to method getData\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 2 - path: src/Bundle/ChillTaskBundle/Timeline/SingleTaskTaskLifeCycleEventTimelineProvider.php - - - - message: "#^Call to method getTask\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Timeline/SingleTaskTaskLifeCycleEventTimelineProvider.php - - - - message: "#^Call to method getTransition\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Timeline/SingleTaskTaskLifeCycleEventTimelineProvider.php - - - - message: "#^Parameter \\$context of method Chill\\\\TaskBundle\\\\Timeline\\\\SingleTaskTaskLifeCycleEventTimelineProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Timeline/SingleTaskTaskLifeCycleEventTimelineProvider.php - - - - message: "#^Parameter \\$entity of method Chill\\\\TaskBundle\\\\Timeline\\\\SingleTaskTaskLifeCycleEventTimelineProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Timeline/SingleTaskTaskLifeCycleEventTimelineProvider.php - - - - message: "#^Call to method getData\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 2 - path: src/Bundle/ChillTaskBundle/Timeline/TaskLifeCycleEventTimelineProvider.php - - - - message: "#^Call to method getTask\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 2 - path: src/Bundle/ChillTaskBundle/Timeline/TaskLifeCycleEventTimelineProvider.php - - - - message: "#^Call to method getTransition\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Timeline/TaskLifeCycleEventTimelineProvider.php - - - - message: "#^Parameter \\$context of method Chill\\\\TaskBundle\\\\Timeline\\\\TaskLifeCycleEventTimelineProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Timeline/TaskLifeCycleEventTimelineProvider.php - - - - message: "#^Parameter \\$entity of method Chill\\\\TaskBundle\\\\Timeline\\\\TaskLifeCycleEventTimelineProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Timeline/TaskLifeCycleEventTimelineProvider.php - - - - message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask\\:\\:getId\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Workflow/TaskWorkflowManager.php - - - - message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Workflow\\\\TaskWorkflowDefinition\\:\\:getAssociatedWorkflowName\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Workflow/TaskWorkflowManager.php - - - - message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Workflow\\\\TaskWorkflowDefinition\\:\\:getWorkflowMetadata\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Workflow/TaskWorkflowManager.php - - - - message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Workflow\\\\TaskWorkflowDefinition\\:\\:isClosed\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Workflow/TaskWorkflowManager.php - - - - message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Workflow\\\\TaskWorkflowDefinition\\:\\:supports\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Workflow/TaskWorkflowManager.php - - - - message: "#^Method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\TreeBuilder\\:\\:getRootNode\\(\\) invoked with 1 parameter, 0 required\\.$#" - count: 1 - path: src/Bundle/ChillThirdPartyBundle/DependencyInjection/Configuration.php - - - - message: "#^PHPDoc tag @return with type DateTime\\|null is not subtype of native type DateTimeImmutable\\|null\\.$#" + message: "#^Parameter \\#1 \\$createdAt \\(DateTimeImmutable\\) of method Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\:\\:setCreatedAt\\(\\) should be contravariant with parameter \\$datetime \\(DateTimeInterface\\) of method Chill\\\\MainBundle\\\\Doctrine\\\\Model\\\\TrackCreationInterface\\:\\:setCreatedAt\\(\\)$#" count: 1 path: src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php - - message: "#^PHPDoc tag @var for property Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\:\\:\\$categories with type Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdPartyCategory is not subtype of native type Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" + message: "#^Parameter \\#1 \\$updatedAt \\(DateTimeImmutable\\) of method Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\:\\:setUpdatedAt\\(\\) should be contravariant with parameter \\$datetime \\(DateTimeInterface\\) of method Chill\\\\MainBundle\\\\Doctrine\\\\Model\\\\TrackUpdateInterface\\:\\:setUpdatedAt\\(\\)$#" count: 1 path: src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php - - message: "#^Property Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\:\\:\\$canonicalized is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php - - - - message: "#^Property Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\:\\:\\$createdBy is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php - - - - message: "#^Property Chill\\\\ThirdPartyBundle\\\\Repository\\\\ThirdPartyACLAwareRepository\\:\\:\\$authorizationHelper is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillThirdPartyBundle/Repository/ThirdPartyACLAwareRepository.php - - - - message: "#^Property Chill\\\\ThirdPartyBundle\\\\Repository\\\\ThirdPartyACLAwareRepository\\:\\:\\$security is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillThirdPartyBundle/Repository/ThirdPartyACLAwareRepository.php - - - - message: "#^Argument of an invalid type string supplied for foreach, only iterables are supported\\.$#" + message: "#^Parameter \\#3 \\$limit \\(null\\) of method Chill\\\\ThirdPartyBundle\\\\Repository\\\\ThirdPartyRepository\\:\\:findBy\\(\\) should be contravariant with parameter \\$limit \\(int\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" count: 1 path: src/Bundle/ChillThirdPartyBundle/Repository/ThirdPartyRepository.php - - message: "#^Method Chill\\\\ThirdPartyBundle\\\\Search\\\\ThirdPartySearch\\:\\:renderResult\\(\\) should return string but returns array\\\\.$#" + message: "#^Parameter \\#4 \\$offset \\(null\\) of method Chill\\\\ThirdPartyBundle\\\\Repository\\\\ThirdPartyRepository\\:\\:findBy\\(\\) should be contravariant with parameter \\$offset \\(int\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" count: 1 - path: src/Bundle/ChillThirdPartyBundle/Search/ThirdPartySearch.php + path: src/Bundle/ChillThirdPartyBundle/Repository/ThirdPartyRepository.php - - message: "#^Unreachable statement \\- code above always terminates\\.$#" + message: "#^Parameter \\#2 \\$subject \\(Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\|null\\) of method Chill\\\\ThirdPartyBundle\\\\Security\\\\Voter\\\\ThirdPartyVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" count: 1 path: src/Bundle/ChillThirdPartyBundle/Security/Voter/ThirdPartyVoter.php - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillWopiBundle/src/Controller/Editor.php - - - - message: "#^Strict comparison using \\=\\=\\= between false and array will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillWopiBundle/src/Service/Wopi/AuthorizationManager.php - - - - message: "#^Default value of the parameter \\#2 \\$properties \\(array\\{\\}\\) of method Chill\\\\WopiBundle\\\\Service\\\\Wopi\\\\ChillDocumentManager\\:\\:write\\(\\) is incompatible with type array\\{content\\: string, size\\: int\\}\\.$#" + message: "#^Parameter \\#1 \\$document \\(Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject\\) of method Chill\\\\WopiBundle\\\\Service\\\\Wopi\\\\ChillDocumentManager\\:\\:getBasename\\(\\) should be contravariant with parameter \\$document \\(ChampsLibres\\\\WopiLib\\\\Contract\\\\Entity\\\\Document\\) of method ChampsLibres\\\\WopiLib\\\\Contract\\\\Service\\\\DocumentManagerInterface\\:\\:getBasename\\(\\)$#" count: 1 path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillDocumentManager.php - - message: "#^Method ChampsLibres\\\\WopiLib\\\\Contract\\\\Service\\\\WopiInterface\\:\\:checkFileInfo\\(\\) invoked with 4 parameters, 3 required\\.$#" + message: "#^Parameter \\#1 \\$document \\(Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject\\) of method Chill\\\\WopiBundle\\\\Service\\\\Wopi\\\\ChillDocumentManager\\:\\:getCreationDate\\(\\) should be contravariant with parameter \\$document \\(ChampsLibres\\\\WopiLib\\\\Contract\\\\Entity\\\\Document\\) of method ChampsLibres\\\\WopiLib\\\\Contract\\\\Service\\\\DocumentManagerInterface\\:\\:getCreationDate\\(\\)$#" count: 1 - path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillWopi.php + path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillDocumentManager.php + + - + message: "#^Parameter \\#1 \\$document \\(Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject\\) of method Chill\\\\WopiBundle\\\\Service\\\\Wopi\\\\ChillDocumentManager\\:\\:getDocumentId\\(\\) should be contravariant with parameter \\$document \\(ChampsLibres\\\\WopiLib\\\\Contract\\\\Entity\\\\Document\\) of method ChampsLibres\\\\WopiLib\\\\Contract\\\\Service\\\\DocumentManagerInterface\\:\\:getDocumentId\\(\\)$#" + count: 1 + path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillDocumentManager.php + + - + message: "#^Parameter \\#1 \\$document \\(Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject\\) of method Chill\\\\WopiBundle\\\\Service\\\\Wopi\\\\ChillDocumentManager\\:\\:getLastModifiedDate\\(\\) should be contravariant with parameter \\$document \\(ChampsLibres\\\\WopiLib\\\\Contract\\\\Entity\\\\Document\\) of method ChampsLibres\\\\WopiLib\\\\Contract\\\\Service\\\\DocumentManagerInterface\\:\\:getLastModifiedDate\\(\\)$#" + count: 1 + path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillDocumentManager.php diff --git a/phpstan-baseline-level-5.neon b/phpstan-baseline-level-5.neon index 34e2825a3..27945c670 100644 --- a/phpstan-baseline-level-5.neon +++ b/phpstan-baseline-level-5.neon @@ -1,676 +1,3166 @@ parameters: ignoreErrors: - - message: "#^Parameter \\#1 \\$event of method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) expects object, string given\\.$#" + message: "#^Access to an undefined property Chill\\\\ActivityBundle\\\\Entity\\\\Activity\\:\\:\\$personsAssociated\\.$#" count: 1 path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php - - message: "#^Parameter \\#1 \\$context of method Chill\\\\ActivityBundle\\\\Timeline\\\\TimelineActivityProvider\\:\\:checkContext\\(\\) expects string, Chill\\\\MainBundle\\\\Timeline\\\\type given\\.$#" + message: "#^Access to an undefined property Chill\\\\ActivityBundle\\\\Entity\\\\Activity\\:\\:\\$personsNotAssociated\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Serializer\\\\SerializerInterface\\:\\:normalize\\(\\)\\.$#" + count: 2 + path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php + + - + message: "#^Method Chill\\\\ActivityBundle\\\\Controller\\\\ActivityReasonCategoryController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Controller/ActivityReasonCategoryController.php + + - + message: "#^Method Chill\\\\ActivityBundle\\\\Controller\\\\ActivityReasonCategoryController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Controller/ActivityReasonCategoryController.php + + - + message: "#^Method Chill\\\\ActivityBundle\\\\Controller\\\\ActivityReasonController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Controller/ActivityReasonController.php + + - + message: "#^Method Chill\\\\ActivityBundle\\\\Controller\\\\ActivityReasonController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Controller/ActivityReasonController.php + + - + message: "#^Else branch is unreachable because previous condition is always true\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/DataFixtures/ORM/LoadActivity.php + + - + message: "#^Strict comparison using \\!\\=\\= between null and Chill\\\\ActivityBundle\\\\Entity\\\\ActivityReason will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/DataFixtures/ORM/LoadActivity.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/DataFixtures/ORM/LoadActivityNotifications.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/DependencyInjection/Configuration.php + + - + message: "#^Argument of an invalid type string supplied for foreach, only iterables are supported\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Entity/ActivityReasonCategory.php + + - + message: "#^Binary operation \"\\.\" between 'ActivityReasonCateg…' and array results in an error\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Entity/ActivityReasonCategory.php + + - + message: "#^Method Chill\\\\ActivityBundle\\\\Entity\\\\ActivityReasonCategory\\:\\:getName\\(\\) should return array but returns string\\.$#" + count: 3 + path: src/Bundle/ChillActivityBundle/Entity/ActivityReasonCategory.php + + - + message: "#^Property Chill\\\\ActivityBundle\\\\Entity\\\\ActivityReasonCategory\\:\\:\\$name \\(string\\) does not accept array\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Entity/ActivityReasonCategory.php + + - + message: "#^Expression on left side of \\?\\? is not nullable\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/EntityListener/ActivityEntityListener.php + + - + message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\ActivityBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Form/ActivityReasonCategoryType.php + + - + message: "#^Parameter \\$resolver of method Chill\\\\ActivityBundle\\\\Form\\\\ActivityReasonCategoryType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\ActivityBundle\\\\Form\\\\OptionsResolverInterface\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Form/ActivityReasonCategoryType.php + + - + message: "#^Method Chill\\\\ActivityBundle\\\\Repository\\\\ActivityACLAwareRepository\\:\\:getWhereClause\\(\\) should return array but returns string\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Repository/ActivityACLAwareRepository.php + + - + message: "#^Expression on left side of \\?\\? is not nullable\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Repository/ActivityReasonRepository.php + + - + message: "#^Parameter \\$context of method Chill\\\\ActivityBundle\\\\Timeline\\\\TimelineActivityProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" count: 1 path: src/Bundle/ChillActivityBundle/Timeline/TimelineActivityProvider.php - - message: "#^Parameter \\#1 \\$callback of function array_map expects \\(callable\\(Chill\\\\BudgetBundle\\\\Repository\\\\ChargeType\\)\\: mixed\\)\\|null, Closure\\(Chill\\\\BudgetBundle\\\\Entity\\\\ChargeKind\\)\\: int\\|null given\\.$#" + message: "#^Parameter \\$entity of method Chill\\\\ActivityBundle\\\\Timeline\\\\TimelineActivityProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" count: 1 - path: src/Bundle/ChillBudgetBundle/Service/Summary/SummaryBudget.php + path: src/Bundle/ChillActivityBundle/Timeline/TimelineActivityProvider.php - - message: "#^Parameter \\#1 \\$callback of function array_map expects \\(callable\\(Chill\\\\BudgetBundle\\\\Repository\\\\ResourceType\\)\\: mixed\\)\\|null, Closure\\(Chill\\\\BudgetBundle\\\\Entity\\\\ResourceKind\\)\\: int\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Service/Summary/SummaryBudget.php + message: "#^Result of && is always false\\.$#" + count: 6 + path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php - - message: "#^Parameter \\#2 \\$byUser of class Chill\\\\CalendarBundle\\\\Messenger\\\\Message\\\\InviteUpdateMessage constructor expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\Embeddable\\\\CommentEmbeddable will always evaluate to false\\.$#" count: 1 - path: src/Bundle/ChillCalendarBundle/Controller/InviteApiController.php + path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php - - message: "#^Parameter \\#2 \\$byUser of class Chill\\\\CalendarBundle\\\\Messenger\\\\Message\\\\CalendarRemovedMessage constructor expects Chill\\\\MainBundle\\\\Entity\\\\User\\|null, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + message: "#^Strict comparison using \\=\\=\\= between null and DateTime will always evaluate to false\\.$#" count: 1 - path: src/Bundle/ChillCalendarBundle/Messenger/Doctrine/CalendarEntityListener.php + path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php - - message: "#^Parameter \\#3 \\$byUser of class Chill\\\\CalendarBundle\\\\Messenger\\\\Message\\\\CalendarMessage constructor expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + message: "#^Strict comparison using \\=\\=\\= between null and Doctrine\\\\Common\\\\Collections\\\\Collection will always evaluate to false\\.$#" count: 2 - path: src/Bundle/ChillCalendarBundle/Messenger/Doctrine/CalendarEntityListener.php + path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php - - message: "#^Parameter \\#2 \\$byUser of class Chill\\\\CalendarBundle\\\\Messenger\\\\Message\\\\CalendarRangeRemovedMessage constructor expects Chill\\\\MainBundle\\\\Entity\\\\User\\|null, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + message: "#^Strict comparison using \\=\\=\\= between null and bool will always evaluate to false\\.$#" count: 1 - path: src/Bundle/ChillCalendarBundle/Messenger/Doctrine/CalendarRangeEntityListener.php + path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php - - message: "#^Parameter \\#3 \\$byUser of class Chill\\\\CalendarBundle\\\\Messenger\\\\Message\\\\CalendarRangeMessage constructor expects Chill\\\\MainBundle\\\\Entity\\\\User\\|null, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillAsideActivityBundle/src/DependencyInjection/Configuration.php + + - + message: "#^Property Chill\\\\AsideActivityBundle\\\\Entity\\\\AsideActivityCategory\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillAsideActivityBundle/src/Entity/AsideActivityCategory.php + + - + message: "#^Call to method DateTimeImmutable\\:\\:add\\(\\) on a separate line has no effect\\.$#" + count: 1 + path: src/Bundle/ChillAsideActivityBundle/src/Form/AsideActivityFormType.php + + - + message: "#^Call to method DateTimeImmutable\\:\\:setTimezone\\(\\) on a separate line has no effect\\.$#" + count: 1 + path: src/Bundle/ChillAsideActivityBundle/src/Form/AsideActivityFormType.php + + - + message: "#^Call to an undefined method Chill\\\\BudgetBundle\\\\Entity\\\\AbstractElement\\:\\:getId\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Controller/AbstractElementController.php + + - + message: "#^Method Chill\\\\BudgetBundle\\\\Controller\\\\AbstractElementController\\:\\:createDeleteForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Controller/AbstractElementController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/DependencyInjection/Configuration.php + + - + message: "#^Property Chill\\\\BudgetBundle\\\\Entity\\\\AbstractElement\\:\\:\\$startDate \\(DateTimeImmutable\\) does not accept null\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Entity/AbstractElement.php + + - + message: "#^Strict comparison using \\=\\=\\= between 0 and string will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Entity/AbstractElement.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and DateTimeImmutable will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Entity/AbstractElement.php + + - + message: "#^Property Chill\\\\BudgetBundle\\\\Entity\\\\ChargeKind\\:\\:\\$tags is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Entity/ChargeKind.php + + - + message: "#^Property Chill\\\\BudgetBundle\\\\Entity\\\\ResourceKind\\:\\:\\$tags is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Entity/ResourceKind.php + + - + message: "#^PHPDoc tag @param for parameter \\$limit with type mixed is not subtype of native type int\\|null\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Repository/ChargeKindRepository.php + + - + message: "#^PHPDoc tag @param for parameter \\$offset with type mixed is not subtype of native type int\\|null\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Repository/ChargeKindRepository.php + + - + message: "#^PHPDoc tag @param for parameter \\$limit with type mixed is not subtype of native type int\\|null\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Repository/ResourceKindRepository.php + + - + message: "#^PHPDoc tag @param for parameter \\$offset with type mixed is not subtype of native type int\\|null\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Repository/ResourceKindRepository.php + + - + message: "#^Property Chill\\\\CalendarBundle\\\\Command\\\\AzureGrantAdminConsentAndAcquireToken\\:\\:\\$clientRegistry is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/Command/AzureGrantAdminConsentAndAcquireToken.php + + - + message: "#^Property Chill\\\\CalendarBundle\\\\Command\\\\SendTestShortMessageOnCalendarCommand\\:\\:\\$phoneNumberHelper is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/Command/SendTestShortMessageOnCalendarCommand.php + + - + message: "#^Strict comparison using \\=\\=\\= between false and DateInterval will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/Command/SendTestShortMessageOnCalendarCommand.php + + - + message: "#^Strict comparison using \\=\\=\\= between false and DateTimeImmutable will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/Command/SendTestShortMessageOnCalendarCommand.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Form\\\\FormInterface\\:\\:isClicked\\(\\)\\.$#" + count: 4 + path: src/Bundle/ChillCalendarBundle/Controller/CalendarController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Serializer\\\\SerializerInterface\\:\\:normalize\\(\\)\\.$#" count: 2 - path: src/Bundle/ChillCalendarBundle/Messenger/Doctrine/CalendarRangeEntityListener.php + path: src/Bundle/ChillCalendarBundle/Controller/CalendarController.php - - message: "#^Parameter \\#1 \\$token of method Chill\\\\CalendarBundle\\\\RemoteCalendar\\\\Connector\\\\MSGraph\\\\OnBehalfOfUserTokenStorage\\:\\:setToken\\(\\) expects TheNetworg\\\\OAuth2\\\\Client\\\\Token\\\\AccessToken, League\\\\OAuth2\\\\Client\\\\Token\\\\AccessTokenInterface given\\.$#" + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/Controller/CalendarController.php + + - + message: "#^Method Symfony\\\\Component\\\\HttpFoundation\\\\Session\\\\SessionInterface\\:\\:remove\\(\\) invoked with 2 parameters, 1 required\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/Controller/RemoteCalendarConnectAzureController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/DependencyInjection/Configuration.php + + - + message: "#^Property Chill\\\\CalendarBundle\\\\Messenger\\\\Message\\\\CalendarMessage\\:\\:\\$oldInvites \\(array\\\\) does not accept array\\\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/Messenger/Message/CalendarMessage.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraph/EventsOnUserSubscriptionCreator.php + + - + message: "#^Method Chill\\\\CalendarBundle\\\\RemoteCalendar\\\\Connector\\\\MSGraph\\\\OnBehalfOfUserTokenStorage\\:\\:getToken\\(\\) should return TheNetworg\\\\OAuth2\\\\Client\\\\Token\\\\AccessToken but returns League\\\\OAuth2\\\\Client\\\\Token\\\\AccessTokenInterface\\.$#" count: 1 path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraph/OnBehalfOfUserTokenStorage.php - - message: "#^Parameter \\#2 \\$code of class Exception constructor expects int, array\\ given\\.$#" + message: "#^Call to method DateTimeImmutable\\:\\:setTimezone\\(\\) on a separate line has no effect\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraph/RemoteEventConverter.php + + - + message: "#^Expression on left side of \\?\\? is not nullable\\.$#" + count: 2 + path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraphRemoteCalendarConnector.php + + - + message: "#^PHPDoc tag @return has invalid value \\(array\\{\\?id\\: string, \\?lastModifiedDateTime\\: int, \\?changeKey\\: string\\}\\)\\: Unexpected token \"\\:\", expected '\\}' at offset 129$#" + count: 2 + path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraphRemoteCalendarConnector.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" count: 1 path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraphRemoteCalendarConnector.php - - message: "#^Parameter \\#4 \\$offset of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarRepository\\:\\:findBy\\(\\) expects int\\|null, array\\|null given\\.$#" + message: "#^Call to an undefined method Symfony\\\\Component\\\\Console\\\\Helper\\\\HelperInterface\\:\\:ask\\(\\)\\.$#" count: 1 - path: src/Bundle/ChillCalendarBundle/Repository/CalendarRepository.php + path: src/Bundle/ChillCustomFieldsBundle/Command/CreateFieldsOnGroupCommand.php - - message: "#^Parameter \\#1 \\$prefix of function uniqid expects string, int\\<0, max\\> given\\.$#" + message: "#^If condition is always true\\.$#" count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/Type/ChoicesListType.php + path: src/Bundle/ChillCustomFieldsBundle/Command/CreateFieldsOnGroupCommand.php - - message: "#^Parameter \\#2 \\$callback of function array_filter expects callable\\(Symfony\\\\Component\\\\Serializer\\\\Mapping\\\\AttributeMetadataInterface\\)\\: mixed, Closure\\(Symfony\\\\Component\\\\Serializer\\\\Mapping\\\\AttributeMetadata\\)\\: bool given\\.$#" + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface will always evaluate to false\\.$#" count: 1 - path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/DocGenObjectNormalizer.php + path: src/Bundle/ChillCustomFieldsBundle/Command/CreateFieldsOnGroupCommand.php - - message: "#^Parameter \\#3 \\$metadata of method Chill\\\\DocGeneratorBundle\\\\Serializer\\\\Normalizer\\\\DocGenObjectNormalizer\\:\\:normalizeNullData\\(\\) expects Symfony\\\\Component\\\\Serializer\\\\Mapping\\\\ClassMetadata, Symfony\\\\Component\\\\Serializer\\\\Mapping\\\\ClassMetadataInterface given\\.$#" + message: "#^Method Chill\\\\CustomFieldsBundle\\\\Controller\\\\CustomFieldController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" count: 1 - path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/DocGenObjectNormalizer.php + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldController.php - - message: "#^Parameter \\#4 \\$attributes of method Chill\\\\DocGeneratorBundle\\\\Serializer\\\\Normalizer\\\\DocGenObjectNormalizer\\:\\:normalizeNullData\\(\\) expects array\\, array\\ given\\.$#" + message: "#^Method Chill\\\\CustomFieldsBundle\\\\Controller\\\\CustomFieldController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" count: 1 - path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/DocGenObjectNormalizer.php + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldController.php - - message: "#^Parameter \\#5 \\$metadata of method Chill\\\\DocGeneratorBundle\\\\Serializer\\\\Normalizer\\\\DocGenObjectNormalizer\\:\\:normalizeObject\\(\\) expects Symfony\\\\Component\\\\Serializer\\\\Mapping\\\\ClassMetadata, Symfony\\\\Component\\\\Serializer\\\\Mapping\\\\ClassMetadataInterface given\\.$#" + message: "#^Ternary operator condition is always true\\.$#" count: 1 - path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/DocGenObjectNormalizer.php + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldController.php - - message: "#^Parameter \\#6 \\$attributes of method Chill\\\\DocGeneratorBundle\\\\Serializer\\\\Normalizer\\\\DocGenObjectNormalizer\\:\\:normalizeObject\\(\\) expects array\\, array\\ given\\.$#" + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQuery\\(\\)\\.$#" count: 1 - path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/DocGenObjectNormalizer.php + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php - - message: "#^Parameter \\#1 \\$event of method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) expects object, string given\\.$#" + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findOneByEntity\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findOneById\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Form\\\\FormInterface\\:\\:isClicked\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\Controller\\\\CustomFieldsGroupController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\Controller\\\\CustomFieldsGroupController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\Controller\\\\CustomFieldsGroupController\\:\\:createMakeDefaultForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php + + - + message: "#^Method Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\:\\:create\\(\\) invoked with 4 parameters, 1\\-3 required\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and array\\|string will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 3 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:render\\(\\) should return string but returns null\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php + + - + message: "#^PHPDoc tag @param for parameter \\$builder with type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface is not subtype of native type Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" + count: 2 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php + + - + message: "#^PHPDoc tag @param for parameter \\$customField with type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField is not subtype of native type Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomField\\.$#" count: 4 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php + + - + message: "#^Anonymous function never returns null so it can be removed from the return type\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldLongChoice\\\\Option will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php + + - + message: "#^Ternary operator condition is always true\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/DependencyInjection/Configuration.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomField\\:\\:getName\\(\\) should return array but returns string\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Entity/CustomField.php + + - + message: "#^Call to method buildOptionsForm\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/CustomFieldType.php + + - + message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\CustomFieldsBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/CustomFieldType.php + + - + message: "#^Parameter \\$resolver of method Chill\\\\CustomFieldsBundle\\\\Form\\\\CustomFieldType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\Form\\\\OptionsResolverInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/CustomFieldType.php + + - + message: "#^Instanceof between Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup and Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/CustomFieldsGroupToIdTransformer.php + + - + message: "#^Instanceof between string and Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/CustomFieldsGroupToIdTransformer.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\Form\\\\DataTransformer\\\\CustomFieldsGroupToIdTransformer\\:\\:transform\\(\\) should return string but returns int\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/CustomFieldsGroupToIdTransformer.php + + - + message: "#^Call to an undefined method Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomField\\:\\:getLabel\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/JsonCustomFieldToArrayTransformer.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findOneById\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/JsonCustomFieldToArrayTransformer.php + + - + message: "#^Call to method getCustomFieldByType\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldCompiler\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/Type/CustomFieldType.php + + - + message: "#^Property Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldType\\:\\:\\$customFieldCompiler \\(Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldCompiler\\) does not accept Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/Type/CustomFieldType.php + + - + message: "#^Property Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldType\\:\\:\\$customFieldCompiler has unknown class Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldCompiler as its type\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/Type/CustomFieldType.php + + - + message: "#^Property Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldType\\:\\:\\$om is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/Type/CustomFieldType.php + + - + message: "#^Invalid array key type Chill\\\\CustomFieldsBundle\\\\Service\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:getCustomFieldByType\\(\\) has invalid return type Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php + + - + message: "#^Parameter \\$serviceName of method Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:addCustomField\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\Service\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php + + - + message: "#^Parameter \\$type of method Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:addCustomField\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\Service\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php + + - + message: "#^Property Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:\\$container \\(Chill\\\\CustomFieldsBundle\\\\Service\\\\Container\\) does not accept Symfony\\\\Component\\\\DependencyInjection\\\\ContainerInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php + + - + message: "#^Property Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:\\$container has unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\Container as its type\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php + + - + message: "#^Property Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:\\$container is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php + + - + message: "#^Call to method deserialize\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldsHelper.php + + - + message: "#^Call to method isEmptyValue\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldsHelper.php + + - + message: "#^Call to method render\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldsHelper.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldsHelper\\:\\:renderCustomField\\(\\) has invalid return type Chill\\\\CustomFieldsBundle\\\\Service\\\\The\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldsHelper.php + + - + message: "#^Property Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldsHelper\\:\\:\\$em is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldsHelper.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\Templating\\\\Twig\\\\CustomFieldRenderingTwig\\:\\:renderWidget\\(\\) should return string but returns Chill\\\\CustomFieldsBundle\\\\Service\\\\The\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Templating/Twig/CustomFieldRenderingTwig.php + + - + message: "#^Parameter \\$customFielsGroup of method Chill\\\\CustomFieldsBundle\\\\Templating\\\\Twig\\\\CustomFieldsGroupRenderingTwig\\:\\:renderWidget\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\Templating\\\\Twig\\\\CustomFieldsGroud\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Templating/Twig/CustomFieldsGroupRenderingTwig.php + + - + message: "#^Left side of && is always true\\.$#" + count: 1 + path: src/Bundle/ChillDocGeneratorBundle/Controller/DocGeneratorTemplateController.php + + - + message: "#^PHPDoc tag @return with type void is incompatible with native type Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" + count: 1 + path: src/Bundle/ChillDocGeneratorBundle/Controller/DocGeneratorTemplateController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and int will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillDocGeneratorBundle/Controller/DocGeneratorTemplateController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillDocGeneratorBundle/DependencyInjection/Configuration.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Doctrine\\\\Common\\\\Collections\\\\Collection will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/CollectionDocGenNormalizer.php + + - + message: "#^Call to an undefined method ReflectionType\\:\\:getName\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/DocGenObjectNormalizer.php + + - + message: "#^Expression on left side of \\?\\? is not nullable\\.$#" + count: 1 + path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/DocGenObjectNormalizer.php + + - + message: "#^Parameter \\#1 \\$user of method Chill\\\\DocStoreBundle\\\\Entity\\\\Document\\:\\:setUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User\\|null, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + count: 2 + path: src/Bundle/ChillDocStoreBundle/Controller/DocumentAccompanyingCourseController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillDocStoreBundle/Controller/DocumentAccompanyingCourseController.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQuery\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillDocStoreBundle/Controller/DocumentCategoryController.php + + - + message: "#^Parameter \\#1 \\$user of method Chill\\\\DocStoreBundle\\\\Entity\\\\Document\\:\\:setUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User\\|null, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + count: 2 path: src/Bundle/ChillDocStoreBundle/Controller/DocumentPersonController.php - - message: "#^Parameter \\#1 \\$event of method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) expects object, string given\\.$#" + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\Person will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillDocStoreBundle/Controller/DocumentPersonController.php + + - + message: "#^Property Chill\\\\DocStoreBundle\\\\Repository\\\\AccompanyingCourseDocumentRepository\\:\\:\\$em is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillDocStoreBundle/Repository/AccompanyingCourseDocumentRepository.php + + - + message: "#^Property Chill\\\\DocStoreBundle\\\\Repository\\\\DocumentCategoryRepository\\:\\:\\$em is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillDocStoreBundle/Repository/DocumentCategoryRepository.php + + - + message: "#^Instanceof between Chill\\\\DocStoreBundle\\\\Entity\\\\PersonDocument and Chill\\\\DocStoreBundle\\\\Entity\\\\PersonDocument will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillDocStoreBundle/Security/Authorization/PersonDocumentVoter.php + + - + message: "#^Default value of the parameter \\#5 \\$options \\(array\\{\\}\\) of method Chill\\\\DocStoreBundle\\\\Templating\\\\WopiEditTwigExtensionRuntime\\:\\:renderButtonGroup\\(\\) is incompatible with type array\\{small\\: bool\\}\\.$#" + count: 1 + path: src/Bundle/ChillDocStoreBundle/Templating/WopiEditTwigExtensionRuntime.php + + - + message: "#^Property Chill\\\\DocStoreBundle\\\\Templating\\\\WopiEditTwigExtensionRuntime\\:\\:\\$discovery is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillDocStoreBundle/Templating/WopiEditTwigExtensionRuntime.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:countByPerson\\(\\)\\.$#" count: 1 path: src/Bundle/ChillEventBundle/Controller/EventController.php - - message: "#^Parameter \\#1 \\$value of function count expects array\\|Countable, Chill\\\\MainBundle\\\\Entity\\\\Center given\\.$#" + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findByPersonInCircle\\(\\)\\.$#" count: 1 path: src/Bundle/ChillEventBundle/Controller/EventController.php - - message: "#^Parameter \\#1 \\$participations of method Chill\\\\EventBundle\\\\Controller\\\\ParticipationController\\:\\:createEditFormMultiple\\(\\) expects ArrayIterator, Traversable given\\.$#" + message: "#^Negated boolean expression is always false\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/EventController.php + + - + message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\EventTypeController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/EventTypeController.php + + - + message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\EventTypeController\\:\\:createDeleteForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/EventTypeController.php + + - + message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\EventTypeController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/EventTypeController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\EventBundle\\\\Entity\\\\Event will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/ParticipationController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\EventBundle\\\\Entity\\\\Participation will always evaluate to false\\.$#" count: 2 path: src/Bundle/ChillEventBundle/Controller/ParticipationController.php - - message: "#^Parameter \\#1 \\$callback of function call_user_func expects callable\\(\\)\\: mixed, null given\\.$#" - count: 2 - path: src/Bundle/ChillEventBundle/Form/ChoiceLoader/EventChoiceLoader.php - - - - message: "#^Parameter \\#2 \\$previous of class Symfony\\\\Component\\\\HttpKernel\\\\Exception\\\\BadRequestHttpException constructor expects Throwable\\|null, int given\\.$#" - count: 3 - path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php - - - - message: "#^Parameter \\#3 \\$code of class Symfony\\\\Component\\\\HttpKernel\\\\Exception\\\\BadRequestHttpException constructor expects int, Symfony\\\\Component\\\\Serializer\\\\Exception\\\\NotEncodableValueException given\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php - - - - message: "#^Parameter \\#3 \\$code of class Symfony\\\\Component\\\\HttpKernel\\\\Exception\\\\BadRequestHttpException constructor expects int, Symfony\\\\Component\\\\Serializer\\\\Exception\\\\UnexpectedValueException given\\.$#" + message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\RoleController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php + path: src/Bundle/ChillEventBundle/Controller/RoleController.php - - message: "#^Parameter \\#2 \\$role of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\AuthorizationHelper\\:\\:getReachableCenters\\(\\) expects string, Symfony\\\\Component\\\\Security\\\\Core\\\\Role\\\\Role given\\.$#" + message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\RoleController\\:\\:createDeleteForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php + path: src/Bundle/ChillEventBundle/Controller/RoleController.php - - message: "#^Parameter \\#3 \\$formClass of method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\CRUDController\\:\\:createFormFor\\(\\) expects string\\|null, Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\type\\|null given\\.$#" + message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\RoleController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php + path: src/Bundle/ChillEventBundle/Controller/RoleController.php - - message: "#^Parameter \\#3 \\$scope of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\AuthorizationHelper\\:\\:getReachableCenters\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\Scope\\|null, Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\Scope\\|null given\\.$#" + message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\StatusController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php + path: src/Bundle/ChillEventBundle/Controller/StatusController.php - - message: "#^Parameter \\#1 \\$name of method Chill\\\\MainBundle\\\\Entity\\\\Country\\:\\:setName\\(\\) expects string, array\\ given\\.$#" + message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\StatusController\\:\\:createDeleteForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Command/LoadCountriesCommand.php + path: src/Bundle/ChillEventBundle/Controller/StatusController.php - - message: "#^Parameter \\#4 \\.\\.\\.\\$values of function sprintf expects bool\\|float\\|int\\|string\\|null, Chill\\\\MainBundle\\\\Entity\\\\the given\\.$#" + message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\StatusController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Command/LoadPostalCodesCommand.php + path: src/Bundle/ChillEventBundle/Controller/StatusController.php - - message: "#^Parameter \\#1 \\$alias of method Chill\\\\MainBundle\\\\Export\\\\ExportManager\\:\\:getExport\\(\\) expects string, Symfony\\\\Component\\\\HttpFoundation\\\\Request given\\.$#" + message: "#^Instanceof between Chill\\\\EventBundle\\\\Entity\\\\Event and Chill\\\\EventBundle\\\\Entity\\\\Event will always evaluate to true\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Controller/ExportController.php + path: src/Bundle/ChillEventBundle/Security/Authorization/EventVoter.php - - message: "#^Parameter \\#3 \\$alias of method Chill\\\\MainBundle\\\\Controller\\\\ExportController\\:\\:exportFormStep\\(\\) expects string, Symfony\\\\Component\\\\HttpFoundation\\\\Request given\\.$#" + message: "#^Unreachable statement \\- code above always terminates\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Controller/ExportController.php + path: src/Bundle/ChillEventBundle/Security/Authorization/EventVoter.php - - message: "#^Parameter \\#3 \\$alias of method Chill\\\\MainBundle\\\\Controller\\\\ExportController\\:\\:formatterFormStep\\(\\) expects string, Symfony\\\\Component\\\\HttpFoundation\\\\Request given\\.$#" + message: "#^Instanceof between Chill\\\\EventBundle\\\\Entity\\\\Participation and Chill\\\\EventBundle\\\\Entity\\\\Participation will always evaluate to true\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Controller/ExportController.php + path: src/Bundle/ChillEventBundle/Security/Authorization/ParticipationVoter.php - - message: "#^Parameter \\#3 \\$alias of method Chill\\\\MainBundle\\\\Controller\\\\ExportController\\:\\:forwardToGenerate\\(\\) expects string, Symfony\\\\Component\\\\HttpFoundation\\\\Request given\\.$#" + message: "#^Unreachable statement \\- code above always terminates\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Controller/ExportController.php + path: src/Bundle/ChillEventBundle/Security/Authorization/ParticipationVoter.php - - message: "#^Parameter \\#3 \\$alias of method Chill\\\\MainBundle\\\\Controller\\\\ExportController\\:\\:selectCentersStep\\(\\) expects string, Symfony\\\\Component\\\\HttpFoundation\\\\Request given\\.$#" + message: "#^Parameter \\#2 \\$context \\(string\\) of method Chill\\\\EventBundle\\\\Timeline\\\\TimelineEventProvider\\:\\:getEntityTemplate\\(\\) should be compatible with parameter \\$context \\(Chill\\\\MainBundle\\\\Timeline\\\\type\\) of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineProviderInterface\\:\\:getEntityTemplate\\(\\)$#" count: 1 - path: src/Bundle/ChillMainBundle/Controller/ExportController.php + path: src/Bundle/ChillEventBundle/Timeline/TimelineEventProvider.php - - message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Repository\\\\NotificationRepository\\:\\:countUnreadByUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + message: "#^Parameter \\#1 \\$seconds of function sleep expects int, string given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Controller/NotificationApiController.php + path: src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php - - message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Repository\\\\NotificationRepository\\:\\:findUnreadByUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + message: "#^Parameter \\#1 \\$interval of method DateTimeImmutable\\:\\:add\\(\\) expects DateInterval, string\\|null given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Controller/NotificationApiController.php - - - - message: "#^Parameter \\#1 \\$addressee of method Chill\\\\MainBundle\\\\Repository\\\\NotificationRepository\\:\\:countAllForAttendee\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/NotificationController.php - - - - message: "#^Parameter \\#1 \\$addressee of method Chill\\\\MainBundle\\\\Repository\\\\NotificationRepository\\:\\:findAllForAttendee\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/NotificationController.php - - - - message: "#^Parameter \\#1 \\$sender of method Chill\\\\MainBundle\\\\Repository\\\\NotificationRepository\\:\\:countAllForSender\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/NotificationController.php - - - - message: "#^Parameter \\#1 \\$sender of method Chill\\\\MainBundle\\\\Repository\\\\NotificationRepository\\:\\:findAllForSender\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/NotificationController.php - - - - message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Repository\\\\NotificationRepository\\:\\:countUnreadByUserWhereAddressee\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/NotificationController.php - - - - message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Repository\\\\NotificationRepository\\:\\:countUnreadByUserWhereSender\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/NotificationController.php - - - - message: "#^Parameter \\#1 \\$event of method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) expects object, string given\\.$#" - count: 4 - path: src/Bundle/ChillMainBundle/Controller/PasswordController.php - - - - message: "#^Parameter \\#1 \\$token of class Chill\\\\MainBundle\\\\Security\\\\PasswordRecover\\\\PasswordRecoverEvent constructor expects Chill\\\\MainBundle\\\\Security\\\\PasswordRecover\\\\type\\|null, string given\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Controller/PasswordController.php - - - - message: "#^Parameter \\#3 \\$ip of class Chill\\\\MainBundle\\\\Security\\\\PasswordRecover\\\\PasswordRecoverEvent constructor expects Chill\\\\MainBundle\\\\Security\\\\PasswordRecover\\\\type\\|null, string\\|null given\\.$#" - count: 4 - path: src/Bundle/ChillMainBundle/Controller/PasswordController.php - - - - message: "#^Parameter \\#1 \\$context of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineBuilder\\:\\:countItems\\(\\) expects Chill\\\\MainBundle\\\\Timeline\\\\unknown, string given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/TimelineCenterController.php - - - - message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\:\\:addSubscriberToFinal\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/WorkflowApiController.php - - - - message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\:\\:addSubscriberToStep\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/WorkflowApiController.php - - - - message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\:\\:isUserSubscribedToFinal\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/WorkflowApiController.php - - - - message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\:\\:isUserSubscribedToStep\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/WorkflowApiController.php - - - - message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\:\\:removeSubscriberToFinal\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/WorkflowApiController.php - - - - message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\:\\:removeSubscriberToStep\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/WorkflowApiController.php - - - - message: "#^Parameter \\#1 \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Configuration\\:\\:filterWidgetByPlace\\(\\) expects string, Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\type given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php - - - - message: "#^Parameter \\#1 \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Configuration\\:\\:getWidgetAliasesbyPlace\\(\\) expects Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\type, string given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php - - - - message: "#^Parameter \\#2 \\$array of function implode expects array\\|null, Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\type given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php - - - - message: "#^Parameter \\#2 \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:createDefinition\\(\\) expects Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type, string given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php - - - - message: "#^Parameter \\#3 \\$order of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:createDefinition\\(\\) expects Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type, float given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php - - - - message: "#^Parameter \\#2 \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:getServiceId\\(\\) expects string, Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/AbstractWidgetFactory.php - - - - message: "#^Parameter \\#3 \\$order of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:getServiceId\\(\\) expects float, Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/AbstractWidgetFactory.php - - - - message: "#^Parameter \\#1 \\$iterator of function iterator_to_array expects Traversable, array\\ given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/ExportManager.php - - - - message: "#^Parameter \\#2 \\$nbAggregators of method Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\CSVFormatter\\:\\:appendAggregatorForm\\(\\) expects string, int\\<0, max\\> given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/CSVFormatter.php - - - - message: "#^Parameter \\#2 \\$array of function array_map expects array, Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php - - - - message: "#^Parameter \\#2 \\$nbAggregators of method Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:appendAggregatorForm\\(\\) expects string, int\\<0, max\\> given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php - - - - message: "#^Parameter \\#1 \\$callback of function call_user_func expects callable\\(\\)\\: mixed, null given\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Form/ChoiceLoader/PostalCodeChoiceLoader.php - - - - message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Embeddable\\\\PrivateCommentEmbeddable\\:\\:getCommentForUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/DataMapper/PrivateCommentDataMapper.php - - - - message: "#^Parameter \\#1 \\$em of class Chill\\\\MainBundle\\\\Form\\\\Type\\\\DataTransformer\\\\ObjectToIdTransformer constructor expects Doctrine\\\\ORM\\\\EntityManagerInterface, Doctrine\\\\Persistence\\\\ObjectManager given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/Type/Select2CountryType.php - - - - message: "#^Parameter \\#1 \\$em of class Chill\\\\MainBundle\\\\Form\\\\Type\\\\DataTransformer\\\\MultipleObjectsToIdTransformer constructor expects Doctrine\\\\ORM\\\\EntityManagerInterface, Doctrine\\\\Persistence\\\\ObjectManager given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/Type/Select2LanguageType.php - - - - message: "#^Parameter \\#1 \\$translatableStrings of method Chill\\\\MainBundle\\\\Templating\\\\TranslatableStringHelper\\:\\:localize\\(\\) expects array, string given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/Type/Select2LanguageType.php - - - - message: "#^Parameter \\#1 \\$datetime of class DateTime constructor expects string, Chill\\\\MainBundle\\\\Search\\\\type given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Search/AbstractSearch.php - - - - message: "#^Parameter \\#4 \\$paginator of method Chill\\\\MainBundle\\\\Search\\\\SearchApi\\:\\:fetchRawResult\\(\\) expects Chill\\\\MainBundle\\\\Pagination\\\\Paginator, Chill\\\\MainBundle\\\\Pagination\\\\PaginatorInterface given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Search/SearchApi.php - - - - message: "#^Parameter \\#2 \\$callback of function uasort expects callable\\(Chill\\\\MainBundle\\\\Search\\\\HasAdvancedSearchForm, Chill\\\\MainBundle\\\\Search\\\\HasAdvancedSearchForm\\)\\: int, Closure\\(Chill\\\\MainBundle\\\\Search\\\\SearchInterface, Chill\\\\MainBundle\\\\Search\\\\SearchInterface\\)\\: \\-1\\|0\\|1 given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Search/SearchProvider.php - - - - message: "#^Parameter \\#2 \\$subject of function preg_match_all expects string, Chill\\\\MainBundle\\\\Search\\\\type given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Search/SearchProvider.php - - - - message: "#^Parameter \\#1 \\$object of function get_class expects object, array\\ given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php - - - - message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Notification\\:\\:isReadBy\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/NotificationNormalizer.php - - - - message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Embeddable\\\\PrivateCommentEmbeddable\\:\\:setCommentForUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/PrivateCommentEmbeddableNormalizer.php - - - - message: "#^Parameter \\#1 \\$event of method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) expects object, string given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Templating/Widget/WidgetRenderingTwig.php - - - - message: "#^Parameter \\#1 \\$context of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineBuilder\\:\\:buildUnionQuery\\(\\) expects string, Chill\\\\MainBundle\\\\Timeline\\\\unknown given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Timeline/TimelineBuilder.php - - - - message: "#^Parameter \\#2 \\$context of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineProviderInterface\\:\\:getEntityTemplate\\(\\) expects Chill\\\\MainBundle\\\\Timeline\\\\type, string given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Timeline/TimelineBuilder.php - - - - message: "#^Parameter \\#1 \\$phoneNumber of method Chill\\\\MainBundle\\\\Phonenumber\\\\PhoneNumberHelperInterface\\:\\:format\\(\\) expects libphonenumber\\\\PhoneNumber\\|null, string given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Validation/Validator/ValidPhonenumber.php - - - - message: "#^Parameter \\#1 \\$transitionBy of method Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflowStep\\:\\:setTransitionBy\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User\\|null, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Workflow/EventSubscriber/EntityWorkflowTransitionEventSubscriber.php - - - - message: "#^Parameter \\#1 \\$event of method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) expects object, string given\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Actions/Remove/PersonMove.php - - - - message: "#^Parameter \\#1 \\$event of method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) expects object, string given\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseApiController.php - - - - message: "#^Parameter \\#1 \\$event of method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) expects object, string given\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodController.php - - - - message: "#^Parameter \\#2 \\$callback of function usort expects callable\\(mixed, mixed\\)\\: int, Closure\\(mixed, mixed\\)\\: bool given\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodController.php - - - - message: "#^Parameter \\#1 \\$user of method Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluationRepository\\:\\:countNearMaxDateByUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodWorkEvaluationApiController.php - - - - message: "#^Parameter \\#1 \\$user of method Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluationRepository\\:\\:findNearMaxDateByUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodWorkEvaluationApiController.php + path: src/Bundle/ChillJobBundle/src/Entity/Immersion.php - message: "#^Parameter \\#1 \\$object of static method DateTimeImmutable\\:\\:createFromMutable\\(\\) expects DateTime, DateTimeInterface given\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Controller/HouseholdApiController.php + path: src/Bundle/ChillJobBundle/src/Entity/Immersion.php - - message: "#^Parameter \\#2 \\$callback of function usort expects callable\\(mixed, mixed\\)\\: int, Closure\\(mixed, mixed\\)\\: bool given\\.$#" + message: "#^Parameter \\#1 \\$interval of method DateTimeImmutable\\:\\:add\\(\\) expects DateInterval, string\\|null given\\.$#" + count: 1 + path: src/Bundle/ChillJobBundle/src/Security/Authorization/CSConnectesVoter.php + + - + message: "#^Parameter \\#1 \\$object of static method DateTimeImmutable\\:\\:createFromMutable\\(\\) expects DateTime, DateTimeInterface given\\.$#" + count: 1 + path: src/Bundle/ChillJobBundle/src/Security/Authorization/CSConnectesVoter.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQueryBuilder\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/AbstractCRUDController.php + + - + message: "#^PHPDoc tag @param for parameter \\$postedDataContext with type string is incompatible with native type array\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php + + - + message: "#^PHPDoc tag @param has invalid value \\(mixed id\\)\\: Unexpected token \"id\", expected variable at offset 956$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php + + - + message: "#^PHPDoc tag @param has invalid value \\(string action\\)\\: Unexpected token \"action\", expected variable at offset 929$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php + + - + message: "#^PHPDoc tag @return with type void is incompatible with native type Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and object will always evaluate to false\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQueryBuilder\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php + + - + message: "#^Call to method getQuery\\(\\) on an unknown class Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php + + - + message: "#^Method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\CRUDController\\:\\:index\\(\\) has invalid return type Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php + + - + message: "#^Method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\CRUDController\\:\\:queryEntities\\(\\) has invalid return type Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php + + - + message: "#^PHPDoc tag @throws with type Symfony\\\\Component\\\\Security\\\\Core\\\\Exception\\\\AccessDeniedHttpException is not subtype of Throwable$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php + + - + message: "#^Parameter \\$formClass of method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\CRUDController\\:\\:formCreateAction\\(\\) has invalid type Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php + + - + message: "#^Constant Chill\\\\MainBundle\\\\CRUD\\\\Routing\\\\CRUDRoutesLoader\\:\\:ALL_INDEX_METHODS is unused\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Routing/CRUDRoutesLoader.php + + - + message: "#^Constant Chill\\\\MainBundle\\\\CRUD\\\\Routing\\\\CRUDRoutesLoader\\:\\:ALL_SINGLE_METHODS is unused\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Routing/CRUDRoutesLoader.php + + - + message: "#^Strict comparison using \\=\\=\\= between 'CRUD' and null will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Routing/CRUDRoutesLoader.php + + - + message: "#^Strict comparison using \\=\\=\\= between 'collection' and 'single'\\|null will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Routing/CRUDRoutesLoader.php + + - + message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findOneByName\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Command/ChillImportUsersCommand.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Command\\\\ChillImportUsersCommand\\:\\:getCenters\\(\\) should return array\\ but returns null\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Command/ChillImportUsersCommand.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Command\\\\ChillUserSendRenewPasswordCodeCommand\\:\\:\\$output is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Command/ChillUserSendRenewPasswordCodeCommand.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Console\\\\Helper\\\\HelperInterface\\:\\:askHiddenResponse\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Command/SetPasswordCommand.php + + - + message: "#^Instanceof between Chill\\\\MainBundle\\\\Export\\\\DirectExportInterface and Chill\\\\MainBundle\\\\Export\\\\DirectExportInterface will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/ExportController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/ExportController.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQueryBuilder\\(\\)\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Controller/PasswordController.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findOneByUsernameCanonical\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/PasswordController.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Controller\\\\PasswordController\\:\\:passwordForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/PasswordController.php + + - + message: "#^PHPDoc tag @param for parameter \\$permissionsGroup with type mixed is not subtype of native type Chill\\\\MainBundle\\\\Entity\\\\PermissionsGroup\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQuery\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/PostalCodeController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\HttpFoundation\\\\Session\\\\SessionInterface\\:\\:getFlashBag\\(\\)\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Controller/SavedExportController.php + + - + message: "#^PHPDoc tag @var for variable \\$variable contains unknown class Chill\\\\MainBundle\\\\Controller\\\\Chill\\\\MainBundle\\\\Search\\\\HasAdvancedSearchFormInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/SearchController.php + + - + message: "#^PHPDoc tag @var for variable \\$variable contains unknown class Chill\\\\MainBundle\\\\Controller\\\\Chill\\\\MainBundle\\\\Search\\\\SearchProvider\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Controller/SearchController.php + + - + message: "#^Variable \\$variable in PHPDoc tag @var does not match assigned variable \\$search\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/SearchController.php + + - + message: "#^Variable \\$variable in PHPDoc tag @var does not match assigned variable \\$searchProvider\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Controller/SearchController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\:\\:getGroupCenters\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/TimelineCenterController.php + + - + message: "#^Property Chill\\\\MainBundle\\\\DataFixtures\\\\ORM\\\\LoadAddressReferences\\:\\:\\$container is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DataFixtures/ORM/LoadAddressReferences.php + + - + message: "#^Property Chill\\\\MainBundle\\\\DataFixtures\\\\ORM\\\\LoadLocationType\\:\\:\\$container is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DataFixtures/ORM/LoadLocationType.php + + - + message: "#^Property Chill\\\\MainBundle\\\\DataFixtures\\\\ORM\\\\LoadUsers\\:\\:\\$container is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DataFixtures/ORM/LoadUsers.php + + - + message: "#^Parameter \\$factory of method Chill\\\\MainBundle\\\\DependencyInjection\\\\ChillMainExtension\\:\\:addWidgetFactory\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\WidgetFactoryInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/ChillMainExtension.php + + - + message: "#^Offset 'queries' does not exist on array\\{scheme\\: 'ovh', host\\?\\: string, port\\?\\: int\\<0, 65535\\>, user\\?\\: string, pass\\?\\: string, path\\?\\: string, query\\?\\: string, fragment\\?\\: string\\}\\.$#" + count: 5 + path: src/Bundle/ChillMainBundle/DependencyInjection/CompilerPass/ShortMessageCompilerPass.php + + - + message: "#^Offset 'queries' does not exist on array\\{scheme\\?\\: string, host\\?\\: string, port\\?\\: int\\<0, 65535\\>, user\\?\\: string, pass\\?\\: string, path\\?\\: string, query\\?\\: string, fragment\\?\\: string\\}\\|false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/CompilerPass/ShortMessageCompilerPass.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:canBeUnset\\(\\)\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" + count: 3 + path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php + + - + message: "#^Method Chill\\\\MainBundle\\\\DependencyInjection\\\\Configuration\\:\\:getWidgetFactories\\(\\) has invalid return type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\WidgetFactoryInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php + + - + message: "#^PHPDoc tag @param has invalid value \\(WidgetFactoryInterface\\[\\]\\)\\: Unexpected token \"\\\\n \", expected variable at offset 42$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php + + - + message: "#^Parameter \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Configuration\\:\\:getWidgetAliasesbyPlace\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php + + - + message: "#^Parameter \\$widgetFactories of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Configuration\\:\\:setWidgetFactories\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\WidgetFactoryInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php + + - + message: "#^Call to an undefined method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:getAllowedPlaces\\(\\)\\.$#" + count: 3 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php + + - + message: "#^Instanceof between Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\HasWidgetFactoriesExtensionInterface and Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\HasWidgetFactoriesExtensionInterface will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php + + - + message: "#^Method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\AbstractWidgetsCompilerPass\\:\\:isPlaceAllowedForWidget\\(\\) has invalid return type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\unknown\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php + + - + message: "#^Method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\AbstractWidgetsCompilerPass\\:\\:isPlaceAllowedForWidget\\(\\) should return Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\unknown but returns false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php + + - + message: "#^Method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\AbstractWidgetsCompilerPass\\:\\:isPlaceAllowedForWidget\\(\\) should return Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\unknown but returns true\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php + + - + message: "#^Negated boolean expression is always false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php + + - + message: "#^Parameter \\$order of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\AbstractWidgetFactory\\:\\:createDefinition\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/AbstractWidgetFactory.php + + - + message: "#^Parameter \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\AbstractWidgetFactory\\:\\:createDefinition\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/AbstractWidgetFactory.php + + - + message: "#^Parameter \\$order of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:createDefinition\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/WidgetFactoryInterface.php + + - + message: "#^Parameter \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/WidgetFactoryInterface.php + + - + message: "#^Parameter \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:createDefinition\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/WidgetFactoryInterface.php + + - + message: "#^PHPDoc tag @param for parameter \\$factory with type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\WidgetFactoryInterface is not subtype of native type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/HasWidgetFactoriesExtensionInterface.php + + - + message: "#^Parameter \\$factory of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\HasWidgetFactoriesExtensionInterface\\:\\:addWidgetFactory\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\WidgetFactoryInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/HasWidgetFactoriesExtensionInterface.php + + - + message: "#^Instanceof between DateTime and DateTime will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Address.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\Address\\:\\:\\$validTo \\(DateTime\\|null\\) does not accept DateTimeInterface\\|null\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Address.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Entity\\\\AddressReference\\:\\:setPostcode\\(\\) should return Chill\\\\MainBundle\\\\Entity\\\\Address but returns \\$this\\(Chill\\\\MainBundle\\\\Entity\\\\AddressReference\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/AddressReference.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\AddressReference\\:\\:\\$addressCanonical is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/AddressReference.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\GeographicalUnit\\:\\:\\$geom is unused\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/GeographicalUnit.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\GeographicalUnit\\:\\:\\$unitRefId is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/GeographicalUnit.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Entity\\\\Language\\:\\:getName\\(\\) should return string but returns array\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Language.php + + - + message: "#^PHPDoc tag @param has invalid value \\(string array \\$name\\)\\: Unexpected token \"array\", expected variable at offset 49$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Language.php + + - + message: "#^PHPDoc tag @var for property Chill\\\\MainBundle\\\\Entity\\\\Language\\:\\:\\$name with type string is incompatible with native type array\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Language.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\Location\\:\\:\\$createdAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\|null\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Location.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\Location\\:\\:\\$updatedAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\|null\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Location.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\Notification\\:\\:\\$updatedAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Notification.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\NotificationComment\\:\\:\\$createdAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/NotificationComment.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\NotificationComment\\:\\:\\$updateAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/NotificationComment.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\PermissionsGroup\\:\\:\\$groupCenters is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/PermissionsGroup.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\PostalCode\\:\\:\\$canonical is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/PostalCode.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\PostalCode\\:\\:\\$deletedAt is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/PostalCode.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\RoleScope\\:\\:\\$permissionsGroups is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/RoleScope.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and array will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/User.php + + - + message: "#^Call to an undefined method Traversable\\<\\(int\\|string\\), mixed\\>\\:\\:current\\(\\)\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflow.php + + - + message: "#^Call to an undefined method Traversable\\<\\(int\\|string\\), mixed\\>\\:\\:next\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflow.php + + - + message: "#^Call to an undefined method Traversable\\<\\(int\\|string\\), mixed\\>\\:\\:rewind\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflow.php + + - + message: "#^Call to an undefined method Traversable\\<\\(int\\|string\\), mixed\\>\\:\\:valid\\(\\)\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflow.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflowStep.php + + - + message: "#^Call to an undefined method Chill\\\\MainBundle\\\\Export\\\\ExportElementInterface\\:\\:requiredRole\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/ExportManager.php + + - + message: "#^Call to function is_iterable\\(\\) with array will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/ExportManager.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and array\\|string will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/CSVFormatter.php + + - + message: "#^Variable \\$data in PHPDoc tag @var does not match assigned variable \\$contentData\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/CSVFormatter.php + + - + message: "#^Parameter \\#2 \\$exportAlias \\(Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\) of method Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\CSVListFormatter\\:\\:buildForm\\(\\) should be compatible with parameter \\$exportAlias \\(string\\) of method Chill\\\\MainBundle\\\\Export\\\\FormatterInterface\\:\\:buildForm\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/CSVListFormatter.php + + - + message: "#^Parameter \\$exportAlias of method Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\CSVListFormatter\\:\\:buildForm\\(\\) has invalid type Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/CSVListFormatter.php + + - + message: "#^Parameter \\#2 \\$exportAlias \\(Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\) of method Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\CSVPivotedListFormatter\\:\\:buildForm\\(\\) should be compatible with parameter \\$exportAlias \\(string\\) of method Chill\\\\MainBundle\\\\Export\\\\FormatterInterface\\:\\:buildForm\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/CSVPivotedListFormatter.php + + - + message: "#^Parameter \\$exportAlias of method Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\CSVPivotedListFormatter\\:\\:buildForm\\(\\) has invalid type Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/CSVPivotedListFormatter.php + + - + message: "#^Access to offset 'format' on an unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + + - + message: "#^Access to offset mixed on an unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + + - + message: "#^Iterating over an object of an unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\.$#" + count: 3 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$aggregatorsData \\(Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\) does not accept array\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$aggregatorsData has unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type as its type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$formatterData \\(Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\) does not accept array\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$formatterData has unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type as its type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$result \\(Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\) does not accept array\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$result has unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type as its type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + + - + message: "#^Instanceof between string and DateTimeInterface will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadsheetListFormatter.php + + - + message: "#^PHPDoc tag @var for property Chill\\\\MainBundle\\\\Export\\\\Helper\\\\ExportAddressHelper\\:\\:\\$unitNamesKeysCache contains unresolvable type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Helper/ExportAddressHelper.php + + - + message: "#^PHPDoc tag @var for property Chill\\\\MainBundle\\\\Export\\\\Helper\\\\ExportAddressHelper\\:\\:\\$unitNamesKeysCache with type mixed is not subtype of native type array\\|null\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Helper/ExportAddressHelper.php + + - + message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\Address and Chill\\\\MainBundle\\\\Entity\\\\Address will always evaluate to true\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Form/DataMapper/AddressDataMapper.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\Address will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/DataMapper/AddressDataMapper.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Form/DataTransformer/IdToEntityDataTransformer.php + + - + message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/LocationFormType.php + + - + message: "#^Parameter \\$resolver of method Chill\\\\MainBundle\\\\Form\\\\LocationFormType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/LocationFormType.php + + - + message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/PermissionsGroupType.php + + - + message: "#^Parameter \\$resolver of method Chill\\\\MainBundle\\\\Form\\\\PermissionsGroupType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/PermissionsGroupType.php + + - + message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/ScopeType.php + + - + message: "#^Parameter \\$resolver of method Chill\\\\MainBundle\\\\Form\\\\ScopeType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/ScopeType.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Form\\\\Type\\\\ChillPhoneNumberType\\:\\:\\$phoneNumberUtil is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/Type/ChillPhoneNumberType.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\:\\:getId\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/Type/CommentType.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and array\\\\|Chill\\\\MainBundle\\\\Entity\\\\User will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/Type/DataTransformer/EntityToJsonTransformer.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/Type/DataTransformer/ObjectToIdTransformer.php + + - + message: "#^Call to function is_int\\(\\) with int will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/Type/DataTransformer/PostalCodeToIdTransformer.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Form\\\\Type\\\\Select2CountryType\\:\\:\\$requestStack is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/Type/Select2CountryType.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\:\\:replaceDefaults\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/Type/Select2EntityType.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Form\\\\Type\\\\Select2LanguageType\\:\\:\\$requestStack is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/Type/Select2LanguageType.php + + - + message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/UserType.php + + - + message: "#^Parameter \\$resolver of method Chill\\\\MainBundle\\\\Form\\\\UserType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/UserType.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Notification\\\\Email\\\\NotificationMailer\\:\\:\\$translator is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Notification/Email/NotificationMailer.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Notification\\\\NotificationHandlerManager\\:\\:\\$em is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Notification/NotificationHandlerManager.php + + - + message: "#^Strict comparison using \\=\\=\\= between 0 and float will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Pagination/Paginator.php + + - + message: "#^PHPDoc tag @param for parameter \\$phoneNumber with type string is incompatible with native type libphonenumber\\\\PhoneNumber\\|null\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Phonenumber/PhonenumberHelper.php + + - + message: "#^Expression on left side of \\?\\? is not nullable\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Phonenumber/Templating.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Repository\\\\GeographicalUnitRepository\\:\\:findBy\\(\\) should return Chill\\\\MainBundle\\\\Entity\\\\GeographicalUnit\\|null but returns array\\\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Repository/GeographicalUnitRepository.php + + - + message: "#^Return type \\(Chill\\\\MainBundle\\\\Entity\\\\GeographicalUnit\\|null\\) of method Chill\\\\MainBundle\\\\Repository\\\\GeographicalUnitRepository\\:\\:findBy\\(\\) should be compatible with return type \\(array\\\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" + count: 2 + path: src/Bundle/ChillMainBundle/Repository/GeographicalUnitRepository.php + + - + message: "#^The @implements tag of class Chill\\\\MainBundle\\\\Repository\\\\SavedExportRepository describes Doctrine\\\\Persistence\\\\ObjectRepository but the class implements\\: Chill\\\\MainBundle\\\\Repository\\\\SavedExportRepositoryInterface$#" + count: 1 + path: src/Bundle/ChillMainBundle/Repository/SavedExportRepository.php + + - + message: "#^Interface Chill\\\\MainBundle\\\\Repository\\\\SavedExportRepositoryInterface has @implements tag, but can not implement any interface, must extend from it\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Repository/SavedExportRepositoryInterface.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Routing\\\\MenuComposer\\:\\:\\$routeCollection is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Routing/MenuComposer.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Routing\\\\MenuTwig\\:\\:\\$container is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Routing/MenuTwig.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Search\\\\SearchApiNoQueryException\\:\\:\\$parameters is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Search/SearchApiNoQueryException.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Search\\\\SearchApiNoQueryException\\:\\:\\$pattern is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Search/SearchApiNoQueryException.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Search\\\\SearchApiNoQueryException\\:\\:\\$types is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Search/SearchApiNoQueryException.php + + - + message: "#^Else branch is unreachable because previous condition is always true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Search/SearchProvider.php + + - + message: "#^If condition is always true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Search/SearchProvider.php + + - + message: "#^Parameter \\$subject of method Chill\\\\MainBundle\\\\Search\\\\SearchProvider\\:\\:extractDomain\\(\\) has invalid type Chill\\\\MainBundle\\\\Search\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Search/SearchProvider.php + + - + message: "#^Strict comparison using \\!\\=\\= between null and string will always evaluate to true\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Search/SearchProvider.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\:\\:getGroupCenters\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php + + - + message: "#^Empty array passed to foreach\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php + + - + message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\AuthorizationHelper\\:\\:userHasAccessForCenter\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface given\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Workflow\\\\EntityWorkflowHandlerInterface\\:\\:getDeletionRoles\\(\\) invoked with 1 parameter, 0 required\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Authorization/WorkflowEntityDeletionVoter.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and array\\\\|Chill\\\\MainBundle\\\\Entity\\\\Center will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Resolver/CenterResolverManager.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Resolver/CenterResolverManager.php + + - + message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\HasCenterInterface and Chill\\\\MainBundle\\\\Entity\\\\HasCenterInterface will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Resolver/DefaultCenterResolver.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Resolver/DefaultCenterResolver.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Resolver/DefaultScopeResolver.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\ResolverTwigExtension\\:\\:resolveCenter\\(\\) has invalid return type Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\Center\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Security/Resolver/ResolverTwigExtension.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\ResolverTwigExtension\\:\\:resolveCenter\\(\\) should return array\\\\|Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\Center\\|null but returns array\\\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Resolver/ResolverTwigExtension.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\ScopeResolverDispatcher\\:\\:resolveScope\\(\\) invoked with 0 parameters, 1\\-2 required\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Resolver/ResolverTwigExtension.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Security\\\\RoleProvider\\:\\:getRoleTitle\\(\\) should return string but returns null\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/RoleProvider.php + + - + message: "#^Constant Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\AddressNormalizer\\:\\:NULL_POSTCODE_COUNTRY is unused\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php + + - + message: "#^Constant Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\AddressNormalizer\\:\\:NULL_VALUE is unused\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php + + - + message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\Address and Chill\\\\MainBundle\\\\Entity\\\\Address will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\Embeddable\\\\CommentEmbeddable will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/CommentEmbeddableDocGenNormalizer.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\DateNormalizer\\:\\:normalize\\(\\) should return array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|null but return statement is missing\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DateNormalizer.php + + - + message: "#^Instanceof between Doctrine\\\\ORM\\\\Mapping\\\\ClassMetadata\\ and Doctrine\\\\ORM\\\\Mapping\\\\ClassMetadata will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DoctrineExistingEntityNormalizer.php + + - + message: "#^Strict comparison using \\=\\=\\= between false and true will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DoctrineExistingEntityNormalizer.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\NotificationNormalizer\\:\\:\\$notificationHandlerManager is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/NotificationNormalizer.php + + - + message: "#^Result of && is always false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/UserNormalizer.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\User will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/UserNormalizer.php + + - + message: "#^Call to function is_int\\(\\) with int will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Service/Import/AddressReferenceFromBano.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Mime\\\\RawMessage\\:\\:getSubject\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Service/Mailer/ChillMailer.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Mime\\\\RawMessage\\:\\:getTo\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Service/Mailer/ChillMailer.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Templating\\\\CSVCellTwig\\:\\:getName\\(\\) has invalid return type Chill\\\\MainBundle\\\\Templating\\\\The\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Templating/CSVCellTwig.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Templating\\\\CSVCellTwig\\:\\:getName\\(\\) should return Chill\\\\MainBundle\\\\Templating\\\\The but returns string\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Templating/CSVCellTwig.php + + - + message: "#^Instanceof between string and DateTimeInterface will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Templating/ChillTwigHelper.php + + - + message: "#^Call to an undefined method Symfony\\\\Contracts\\\\Translation\\\\TranslatorInterface\\:\\:getFallbackLocales\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Templating/TranslatableStringHelper.php + + - + message: "#^Strict comparison using \\=\\=\\= between array\\{\\} and non\\-empty\\-array\\ will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Templating/TranslatableStringHelper.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Templating\\\\TranslatableStringTwig\\:\\:getName\\(\\) has invalid return type Chill\\\\MainBundle\\\\Templating\\\\The\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Templating/TranslatableStringTwig.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Templating\\\\TranslatableStringTwig\\:\\:getName\\(\\) should return Chill\\\\MainBundle\\\\Templating\\\\The but returns string\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Templating/TranslatableStringTwig.php + + - + message: "#^Call to method render\\(\\) on an unknown class Chill\\\\MainBundle\\\\Templating\\\\Widget\\\\Widget\\\\WidgetInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Templating/Widget/WidgetRenderingTwig.php + + - + message: "#^PHPDoc tag @var for variable \\$widget contains unknown class Chill\\\\MainBundle\\\\Templating\\\\Widget\\\\Widget\\\\WidgetInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Templating/Widget/WidgetRenderingTwig.php + + - + message: "#^Parameter \\$context of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineBuilder\\:\\:countItems\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\unknown\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Timeline/TimelineBuilder.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Timeline/TimelineBuilder.php + + - + message: "#^Parameter \\$context of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineProviderInterface\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Timeline/TimelineProviderInterface.php + + - + message: "#^Parameter \\$entity of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineProviderInterface\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Timeline/TimelineProviderInterface.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Util\\\\DateRangeCovering\\:\\:\\$intervals is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Util/DateRangeCovering.php + + - + message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$messageDuplicateEmail\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Validation/Validator/UserUniqueEmailAndUsername.php + + - + message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$messageDuplicateUsername\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Validation/Validator/UserUniqueEmailAndUsername.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Validation/Validator/ValidPhonenumber.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\User will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Validator/Constraints/Entity/UserCircleConsistencyValidator.php + + - + message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$element\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Validator/Constraints/Export/ExportElementConstraintValidator.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Workflow\\\\Templating\\\\WorkflowTwigExtensionRuntime\\:\\:\\$entityWorkflowManager is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Workflow/Templating/WorkflowTwigExtensionRuntime.php + + - + message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow and Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Workflow/Validator/EntityWorkflowCreationValidator.php + + - + message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflowStep and Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflowStep will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Workflow/Validator/StepDestValidValidator.php + + - + message: "#^PHPDoc tag @param for parameter \\$postSql with type Chill\\\\PersonBundle\\\\Actions\\\\type is incompatible with native type string\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Actions/ActionEvent.php + + - + message: "#^Parameter \\$postSql of method Chill\\\\PersonBundle\\\\Actions\\\\ActionEvent\\:\\:addPostSql\\(\\) has invalid type Chill\\\\PersonBundle\\\\Actions\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Actions/ActionEvent.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\PersonMove\\:\\:getSQL\\(\\) has invalid return type Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Actions/Remove/PersonMove.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\PersonMove\\:\\:getSQL\\(\\) should return Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\type but returns array\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Actions/Remove/PersonMove.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\EntityPersonCRUDController\\:\\:filterQueryEntitiesByPerson\\(\\) has invalid return type Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\QueryBuilder\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php + + - + message: "#^PHPDoc tag @param for parameter \\$qb with type Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\QueryBuilder is not subtype of native type Doctrine\\\\ORM\\\\QueryBuilder\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php + + - + message: "#^PHPDoc tag @return with type Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\QueryBuilder is not subtype of native type Doctrine\\\\ORM\\\\QueryBuilder\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php + + - + message: "#^PHPDoc tag @throws with type Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\Symfony\\\\Component\\\\HttpKernel\\\\Exception\\\\NotFoundHttpException is not subtype of Throwable$#" + count: 1 + path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php + + - + message: "#^Parameter \\$action of method Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\EntityPersonCRUDController\\:\\:createEntity\\(\\) has invalid type Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\string\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php + + - + message: "#^Parameter \\$qb of method Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\EntityPersonCRUDController\\:\\:filterQueryEntitiesByPerson\\(\\) has invalid type Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\QueryBuilder\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\DependencyInjection\\\\Extension\\\\ExtensionInterface\\:\\:addWidgetFactory\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/ChillPersonBundle.php + + - + message: "#^Iterating over an object of an unknown class Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\type\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Command/ChillPersonMoveCommand.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Controller\\\\AccompanyingCourseApiController\\:\\:\\$accompanyingPeriodACLAwareRepository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseApiController.php + + - + message: "#^Variable \\$accompanyingPeriod in PHPDoc tag @var does not match assigned variable \\$action\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseApiController.php + + - + message: "#^Strict comparison using \\!\\=\\= between null and Doctrine\\\\Common\\\\Collections\\\\Collection will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Serializer\\\\SerializerInterface\\:\\:normalize\\(\\)\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseWorkController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseWorkController.php + + - + message: "#^Call to an undefined method Psr\\\\Container\\\\ContainerInterface\\:\\:getParameter\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodController.php + + - + message: "#^Method Symfony\\\\Component\\\\Form\\\\FormInterface\\:\\:isValid\\(\\) invoked with 1 parameter, 0 required\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod will always evaluate to false\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\HttpFoundation\\\\Session\\\\SessionInterface\\:\\:getFlashBag\\(\\)\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Controller/HouseholdCompositionController.php + + - + message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:initialize\\(\\)\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Controller/HouseholdController.php - - message: "#^Parameter \\#2 \\$previous of class Symfony\\\\Component\\\\HttpKernel\\\\Exception\\\\BadRequestHttpException constructor expects Throwable\\|null, int given\\.$#" - count: 1 + message: "#^Call to an undefined method Symfony\\\\Component\\\\Serializer\\\\SerializerInterface\\:\\:normalize\\(\\)\\.$#" + count: 3 path: src/Bundle/ChillPersonBundle/Controller/HouseholdMemberController.php - - message: "#^Parameter \\#3 \\$code of class Symfony\\\\Component\\\\HttpKernel\\\\Exception\\\\BadRequestHttpException constructor expects int, Symfony\\\\Component\\\\Serializer\\\\Exception\\\\InvalidArgumentException\\|Symfony\\\\Component\\\\Serializer\\\\Exception\\\\UnexpectedValueException given\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/HouseholdMemberController.php + message: "#^Elseif condition is always true\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Controller/PersonAddressController.php - - message: "#^Parameter \\#1 \\$event of method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) expects object, string given\\.$#" + message: "#^Method Chill\\\\PersonBundle\\\\Controller\\\\PersonAddressController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/PersonAddressController.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Controller\\\\PersonAddressController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/PersonAddressController.php + + - + message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findOneByEntity\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/PersonController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Form\\\\FormInterface\\:\\:isClicked\\(\\)\\.$#" + count: 3 + path: src/Bundle/ChillPersonBundle/Controller/PersonController.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Controller\\\\PersonController\\:\\:_validatePersonAndAccompanyingPeriod\\(\\) is unused\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/PersonController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\Person will always evaluate to false\\.$#" count: 2 path: src/Bundle/ChillPersonBundle/Controller/PersonController.php - - message: "#^Parameter \\#1 \\$form of method Chill\\\\PersonBundle\\\\Controller\\\\PersonController\\:\\:isLastPostDataChanges\\(\\) expects Symfony\\\\Component\\\\Form\\\\Form, Symfony\\\\Component\\\\Form\\\\FormInterface given\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/PersonController.php + message: "#^Access to an undefined property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$counters\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php - - message: "#^Parameter \\#1 \\$event of method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) expects object, string given\\.$#" + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:countByParameters\\(\\)\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php - - message: "#^Parameter \\#2 \\$precision of method Chill\\\\PersonBundle\\\\Search\\\\SimilarPersonMatcher\\:\\:matchPerson\\(\\) expects float, Chill\\\\PersonBundle\\\\Repository\\\\PersonNotDuplicateRepository given\\.$#" + message: "#^Cannot access property \\$getId on null\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php - - message: "#^Parameter \\#3 \\$orderBy of method Chill\\\\PersonBundle\\\\Search\\\\SimilarPersonMatcher\\:\\:matchPerson\\(\\) expects string, float given\\.$#" + message: "#^Iterating over an object of an unknown class Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\type\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php - - message: "#^Parameter \\#4 \\$addYearComparison of method Chill\\\\PersonBundle\\\\Search\\\\SimilarPersonMatcher\\:\\:matchPerson\\(\\) expects bool, string given\\.$#" + message: "#^Method Chill\\\\PersonBundle\\\\Controller\\\\PersonDuplicateController\\:\\:_getCounters\\(\\) never returns null so it can be removed from the return type\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php - - message: "#^Parameter \\#1 \\$context of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineBuilder\\:\\:countItems\\(\\) expects Chill\\\\MainBundle\\\\Timeline\\\\unknown, string given\\.$#" + message: "#^Call to function is_int\\(\\) with int will always evaluate to true\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Controller/TimelinePersonController.php + path: src/Bundle/ChillPersonBundle/Controller/ReassignAccompanyingPeriodController.php - - message: "#^Parameter \\#1 \\$event of method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) expects object, string given\\.$#" + message: "#^Property Chill\\\\PersonBundle\\\\Controller\\\\ReassignAccompanyingPeriodController\\:\\:\\$userRender is never read, only written\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Controller/TimelinePersonController.php + path: src/Bundle/ChillPersonBundle/Controller/ReassignAccompanyingPeriodController.php - - message: "#^Parameter \\#1 \\$period of method Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodLocationHistory\\:\\:setPeriod\\(\\) expects Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod, null given\\.$#" + message: "#^Property Chill\\\\PersonBundle\\\\Controller\\\\SocialWorkGoalApiController\\:\\:\\$paginator is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/SocialWorkGoalApiController.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/DataFixtures/ORM/LoadAccompanyingPeriodNotifications.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:canBeDisabled\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/DependencyInjection/Configuration.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:values\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/DependencyInjection/Configuration.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Doctrine\\\\DQL\\\\AddressPart\\:\\:\\$part is unused\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Doctrine/DQL/AddressPart.php + + - + message: "#^Result of method Doctrine\\\\ORM\\\\Query\\\\Parser\\:\\:match\\(\\) \\(void\\) is used\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Doctrine/DQL/AddressPart.php + + - + message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - message: "#^Parameter \\#1 \\$now of method Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\Household\\:\\:getCurrentMembers\\(\\) expects DateTimeImmutable\\|null, DateTimeInterface\\|null given\\.$#" + message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection\\:\\:matching\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\:\\:getRecursiveSocialActions\\(\\) has invalid return type Chill\\\\PersonBundle\\\\Entity\\\\SocialAction\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\:\\:getRecursiveSocialIssues\\(\\) has invalid return type Chill\\\\PersonBundle\\\\Entity\\\\SocialIssues\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php + + - + message: "#^Negated boolean expression is always true\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php + + - + message: "#^PHPDoc tag @return with type array\\ is incompatible with native type Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php + + - + message: "#^PHPDoc tag @return with type iterable is not subtype of native type Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\:\\:\\$updatedAt is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\:\\:\\$updatedBy is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodStepHistory will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\:\\:\\$createdAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWork.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\:\\:\\$endDate \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\|null\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWork.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\:\\:\\$startDate \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWork.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\:\\:\\$updatedAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWork.php + + - + message: "#^PHPDoc tag @param for parameter \\$createdAt with type DateTimeImmutable\\|null is not subtype of native type DateTimeInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWorkEvaluation.php + + - + message: "#^PHPDoc tag @param for parameter \\$updatedAt with type DateTimeImmutable\\|null is not subtype of native type DateTimeInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWorkEvaluation.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluation\\:\\:\\$createdAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWorkEvaluation.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluation\\:\\:\\$updatedAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWorkEvaluation.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriodParticipation\\:\\:checkSameStartEnd\\(\\) is unused\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriodParticipation.php + + - + message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" + count: 3 + path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php + + - + message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection\\:\\:matching\\(\\)\\.$#" + count: 4 + path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php + + - + message: "#^Call to an undefined method Traversable\\<\\(int\\|string\\), mixed\\>\\:\\:uasort\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php + + - + message: "#^PHPDoc tag @return with type array\\ is incompatible with native type Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php + + - + message: "#^Strict comparison using \\!\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\HouseholdMember will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and int will always evaluate to false\\.$#" count: 2 path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php - - message: "#^Parameter \\#1 \\$now of method Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\Household\\:\\:getNonCurrentMembers\\(\\) expects DateTimeImmutable\\|null, DateTimeInterface\\|null given\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php - - - - message: "#^Parameter \\#1 \\$key of method Doctrine\\\\Common\\\\Collections\\\\Collection\\<\\(int\\|string\\),mixed\\>\\:\\:remove\\(\\) expects \\(int\\|string\\), Chill\\\\PersonBundle\\\\Entity\\\\SocialWork\\\\SocialAction given\\.$#" + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\PersonHouseholdAddress\\:\\:\\$validFrom is never written, only read\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Entity/SocialWork/Evaluation.php + path: src/Bundle/ChillPersonBundle/Entity/Household/PersonHouseholdAddress.php - - message: "#^Parameter \\#1 \\$translatableStrings of method Chill\\\\MainBundle\\\\Templating\\\\TranslatableStringHelper\\:\\:localize\\(\\) expects array, string given\\.$#" + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\PersonHouseholdAddress\\:\\:\\$validTo is never written, only read\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Export/Helper/ListPersonHelper.php + path: src/Bundle/ChillPersonBundle/Entity/Household/PersonHouseholdAddress.php - - message: "#^Parameter \\#1 \\$callback of function call_user_func expects callable\\(\\)\\: mixed, null given\\.$#" + message: "#^PHPDoc tag @param has invalid value \\(string array \\$name\\)\\: Unexpected token \"array\", expected variable at offset 49$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/MaritalStatus.php + + - + message: "#^PHPDoc tag @return with type string is incompatible with native type array\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/MaritalStatus.php + + - + message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" + count: 3 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection\\:\\:matching\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Negated boolean expression is always true\\.$#" + count: 3 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^PHPDoc tag @return with type array\\ is incompatible with native type Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$center is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$currentHouseholdAt is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$deathdate \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\|null\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$maritalStatusDate \\(DateTime\\|null\\) does not accept DateTimeInterface\\|null\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$periodLocatedOn is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$proxyAccompanyingPeriodOpenState is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Strict comparison using \\=\\=\\= between true and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriodParticipation\\|null will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\SocialWork\\\\Result\\:\\:\\$desactivationDate \\(DateTime\\|null\\) does not accept DateTimeInterface\\|null\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/SocialWork/Result.php + + - + message: "#^If condition is always false\\.$#" count: 2 - path: src/Bundle/ChillPersonBundle/Form/ChoiceLoader/PersonChoiceLoader.php + path: src/Bundle/ChillPersonBundle/Entity/SocialWork/SocialAction.php - - message: "#^Parameter \\#1 \\$entityName of method Doctrine\\\\ORM\\\\EntityManager\\:\\:getRepository\\(\\) expects class\\-string\\, string given\\.$#" + message: "#^Negated boolean expression is always true\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Entity/SocialWork/SocialAction.php + + - + message: "#^If condition is always false\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Entity/SocialWork/SocialIssue.php + + - + message: "#^Negated boolean expression is always true\\.$#" + count: 4 + path: src/Bundle/ChillPersonBundle/Entity/SocialWork/SocialIssue.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Export\\\\Aggregator\\\\AccompanyingCourseAggregators\\\\DurationAggregator\\:\\:\\$translator is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/DurationAggregator.php + + - + message: "#^Call to method extractOtherValue\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php + + - + message: "#^Call to method getChoices\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php + + - + message: "#^Call to method isChecked\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php + + - + message: "#^Call to method isMultiple\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php + + - + message: "#^Call to method render\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Export\\\\Filter\\\\AccompanyingCourseFilters\\\\AdministrativeLocationFilter\\:\\:\\$translatableStringHelper is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/AdministrativeLocationFilter.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Export\\\\Filter\\\\SocialWorkFilters\\\\SocialWorkTypeFilter\\:\\:\\$socialActionRender is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Export/Filter/SocialWorkFilters/SocialWorkTypeFilter.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Form\\\\PersonResourceType\\:\\:\\$personRender is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Form/PersonResourceType.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Form\\\\PersonResourceType\\:\\:\\$thirdPartyRender is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Form/PersonResourceType.php + + - + message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\PersonBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Form/PersonType.php + + - + message: "#^Parameter \\$resolver of method Chill\\\\PersonBundle\\\\Form\\\\PersonType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\PersonBundle\\\\Form\\\\OptionsResolverInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Form/PersonType.php + + - + message: "#^Strict comparison using \\=\\=\\= between 'create' and 'create' will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Form/SocialWork/SocialIssueType.php + + - + message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Household/MembersEditor.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkGoalRepository\\:\\:\\$repository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/AccompanyingPeriodWorkGoalRepository.php + + - + message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\:\\:countByAccompanyingPeriod\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/AccompanyingPeriodWorkRepository.php + + - + message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\:\\:findByAccompanyingPeriod\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/AccompanyingPeriodWorkRepository.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\CommentRepository\\:\\:\\$repository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/CommentRepository.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\OriginRepository\\:\\:\\$repository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/OriginRepository.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriodParticipationRepository\\:\\:\\$repository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriodParticipationRepository.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\HouseholdMembersRepository\\:\\:\\$repository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/Household/HouseholdMembersRepository.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\PositionRepository\\:\\:findOneBy\\(\\) should return array\\ but returns object\\|null\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/Household/PositionRepository.php + + - + message: "#^Return type \\(array\\\\) of method Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\PositionRepository\\:\\:findOneBy\\(\\) should be compatible with return type \\(object\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findOneBy\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/Household/PositionRepository.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\PersonACLAwareRepository\\:\\:\\$countryRepository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/PersonACLAwareRepository.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\PersonAltNameRepository\\:\\:\\$repository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/PersonAltNameRepository.php + + - + message: "#^PHPDoc tag @return with type array\\\\|null is not subtype of native type array\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/ResidentialAddressRepository.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Search\\\\SearchHouseholdApiProvider\\:\\:\\$authorizationHelper is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Search/SearchHouseholdApiProvider.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Search\\\\SearchHouseholdApiProvider\\:\\:\\$security is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Search/SearchHouseholdApiProvider.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Search\\\\SearchPersonApiProvider\\:\\:\\$authorizationHelper is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Search/SearchPersonApiProvider.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Search\\\\SearchPersonApiProvider\\:\\:\\$security is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Search/SearchPersonApiProvider.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Security\\\\Authorization\\\\AccompanyingPeriodVoter\\:\\:\\$security is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodVoter.php + + - + message: "#^PHPDoc tag @return with type bool\\|void is not subtype of native type bool\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkEvaluationDocumentVoter.php + + - + message: "#^Elseif branch is unreachable because previous condition is always true\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkVoter.php + + - + message: "#^Instanceof between \\*NEVER\\* and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkVoter.php + + - + message: "#^Instanceof between Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkVoter.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Security\\\\Authorization\\\\AccompanyingPeriodWorkVoter\\:\\:\\$voterHelper is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkVoter.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkVoter.php + + - + message: "#^Constant Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodDocGenNormalizer\\:\\:IGNORE_FIRST_PASS_KEY is unused\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodDocGenNormalizer.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodDocGenNormalizer.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodParticipationNormalizer.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkDenormalizer\\:\\:\\$em is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkDenormalizer.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkDenormalizer\\:\\:\\$workRepository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkDenormalizer.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkEvaluationDocumentNormalizer\\:\\:\\$registry is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkEvaluationDocumentNormalizer.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkEvaluationNormalizer\\:\\:\\$registry is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkEvaluationNormalizer.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkNormalizer\\:\\:\\$registry is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkNormalizer.php + + - + message: "#^Call to function is_array\\(\\) with 'concerned' will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/MembersEditorNormalizer.php + + - + message: "#^Expression on left side of \\?\\? is not nullable\\.$#" + count: 3 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/MembersEditorNormalizer.php + + - + message: "#^Left side of && is always false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/MembersEditorNormalizer.php + + - + message: "#^Strict comparison using \\=\\=\\= between false and false will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/MembersEditorNormalizer.php + + - + message: "#^Instanceof between Chill\\\\PersonBundle\\\\Entity\\\\Person and Chill\\\\PersonBundle\\\\Entity\\\\Person will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonDocGenNormalizer.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\PersonDocGenNormalizer\\:\\:hasGroup\\(\\) is unused\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonDocGenNormalizer.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\Person will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonDocGenNormalizer.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\PersonJsonNormalizer\\:\\:\\$phoneNumberHelper is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonJsonNormalizer.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\Relationships\\\\Relationship will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/RelationshipDocGenNormalizer.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\SocialIssueNormalizer\\:\\:normalize\\(\\) should return array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|null but return statement is missing\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/SocialIssueNormalizer.php + + - + message: "#^PHPDoc tag @return with type array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|void\\|null is not subtype of native type array\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/WorkflowNormalizer.php + + - + message: "#^Call to an undefined method Chill\\\\DocStoreBundle\\\\Entity\\\\Document\\:\\:setCourse\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Service/DocGenerator/AccompanyingPeriodContext.php + + - + message: "#^Call to an undefined method Chill\\\\DocStoreBundle\\\\Entity\\\\Document\\:\\:setPerson\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Service/DocGenerator/PersonContext.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Service\\\\Import\\\\SocialWorkMetadata\\:\\:\\$socialActionRepository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Service/Import/SocialWorkMetadata.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Service\\\\Import\\\\SocialWorkMetadata\\:\\:\\$socialIssueRepository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Service/Import/SocialWorkMetadata.php + + - + message: "#^Call to method getId\\(\\) on an unknown class ChillPersonBundle\\:AccompanyingPeriod\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Timeline/AbstractTimelineAccompanyingPeriod.php - - message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\AuthorizationHelper\\:\\:filterReachableCenters\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Timeline/AbstractTimelineAccompanyingPeriod.php - - - - message: "#^Parameter \\#3 \\$context of method Chill\\\\PersonBundle\\\\Timeline\\\\AbstractTimelineAccompanyingPeriod\\:\\:getBasicEntityTemplate\\(\\) expects string, Chill\\\\MainBundle\\\\Timeline\\\\type given\\.$#" + message: "#^Cannot call method setKey\\(\\) on array\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodClosing.php - - message: "#^Parameter \\#3 \\$context of method Chill\\\\PersonBundle\\\\Timeline\\\\AbstractTimelineAccompanyingPeriod\\:\\:getBasicEntityTemplate\\(\\) expects string, Chill\\\\MainBundle\\\\Timeline\\\\type given\\.$#" + message: "#^Parameter \\$context of method Chill\\\\PersonBundle\\\\Timeline\\\\TimelineAccompanyingPeriodClosing\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodClosing.php + + - + message: "#^Parameter \\$entity of method Chill\\\\PersonBundle\\\\Timeline\\\\TimelineAccompanyingPeriodClosing\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodClosing.php + + - + message: "#^Cannot call method setKey\\(\\) on array\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodOpening.php - - message: "#^Parameter \\#2 \\$role of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\AuthorizationHelperInterface\\:\\:getReachableCenters\\(\\) expects string, Symfony\\\\Component\\\\Security\\\\Core\\\\Role\\\\Role given\\.$#" + message: "#^Parameter \\$context of method Chill\\\\PersonBundle\\\\Timeline\\\\TimelineAccompanyingPeriodOpening\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Widget/PersonListWidget.php + path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodOpening.php - - message: "#^Parameter \\#1 \\$className of method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:getRepository\\(\\) expects class\\-string\\, string given\\.$#" - count: 4 + message: "#^Parameter \\$entity of method Chill\\\\PersonBundle\\\\Timeline\\\\TimelineAccompanyingPeriodOpening\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodOpening.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Validator\\\\Constraints\\\\AccompanyingPeriod\\\\AccompanyingPeriodValidityValidator\\:\\:\\$token is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Validator/Constraints/AccompanyingPeriod/AccompanyingPeriodValidityValidator.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Validator\\\\Constraints\\\\AccompanyingPeriod\\\\ParticipationOverlapValidator\\:\\:\\$thirdpartyRender is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Validator/Constraints/AccompanyingPeriod/ParticipationOverlapValidator.php + + - + message: "#^Strict comparison using \\=\\=\\= between 0 and int\\<2, max\\> will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Validator/Constraints/AccompanyingPeriod/ParticipationOverlapValidator.php + + - + message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$message\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Validator/Constraints/Household/HouseholdMembershipSequentialValidator.php + + - + message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$message\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Validator/Constraints/Household/MaxHolderValidator.php + + - + message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$messageInfinity\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Validator/Constraints/Household/MaxHolderValidator.php + + - + message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$message\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Validator/Constraints/Person/PersonHasCenterValidator.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeParentInterface\\:\\:info\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Widget/PersonListWidgetFactory.php + + - + message: "#^Parameter \\$place of method Chill\\\\PersonBundle\\\\Widget\\\\PersonListWidgetFactory\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Widget/PersonListWidgetFactory.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQuery\\(\\)\\.$#" + count: 2 path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - message: "#^Parameter \\#1 \\$entity of method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createEditForm\\(\\) expects Chill\\\\ReportBundle\\\\Entity\\\\Report, ChillReportBundle\\:Report given\\.$#" + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findByCFGroup\\(\\)\\.$#" count: 1 path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - message: "#^Parameter \\#1 \\$event of method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) expects object, string given\\.$#" - count: 4 + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findByEntity\\(\\)\\.$#" + count: 2 path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - message: "#^Parameter \\#2 \\$role of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\AuthorizationHelper\\:\\:getReachableScopes\\(\\) expects string, Symfony\\\\Component\\\\Security\\\\Core\\\\Role\\\\Role given\\.$#" + message: "#^Call to method getId\\(\\) on an unknown class ChillReportBundle\\:Report\\.$#" + count: 2 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Call to method getPerson\\(\\) on an unknown class ChillReportBundle\\:Report\\.$#" + count: 3 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" count: 1 path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - message: "#^Parameter \\#1 \\$em of class Chill\\\\MainBundle\\\\Form\\\\Type\\\\DataTransformer\\\\ScopeTransformer constructor expects Doctrine\\\\ORM\\\\EntityManagerInterface, Doctrine\\\\Persistence\\\\ObjectManager given\\.$#" + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" count: 1 - path: src/Bundle/ChillReportBundle/Form/ReportType.php + path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - message: "#^Parameter \\#2 \\$role of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\AuthorizationHelper\\:\\:getReachableScopes\\(\\) expects string, Symfony\\\\Component\\\\Security\\\\Core\\\\Role\\\\Role given\\.$#" + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" count: 1 - path: src/Bundle/ChillReportBundle/Form/ReportType.php + path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - message: "#^Parameter \\#2 \\$role of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\AuthorizationHelper\\:\\:getReachableCenters\\(\\) expects string, Symfony\\\\Component\\\\Security\\\\Core\\\\Role\\\\Role given\\.$#" + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" count: 1 - path: src/Bundle/ChillReportBundle/Search/ReportSearch.php + path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - message: "#^Parameter \\#2 \\$role of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\AuthorizationHelper\\:\\:getReachableScopes\\(\\) expects string, Symfony\\\\Component\\\\Security\\\\Core\\\\Role\\\\Role given\\.$#" + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" count: 1 - path: src/Bundle/ChillReportBundle/Search/ReportSearch.php + path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - message: "#^Parameter \\#1 \\$context of method Chill\\\\ReportBundle\\\\Timeline\\\\TimelineReportProvider\\:\\:checkContext\\(\\) expects string, Chill\\\\MainBundle\\\\Timeline\\\\type given\\.$#" + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:editAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:editAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:exportAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\A\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:exportAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\A but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:listAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:listAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:newAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:newAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" + count: 2 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeForExportAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeForExportAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" + count: 2 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeForExportAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:updateAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:updateAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:updateAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:viewAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:viewAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Negated boolean expression is always false\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^PHPDoc tag @param for parameter \\$scope with type string is incompatible with native type Chill\\\\MainBundle\\\\Entity\\\\Scope\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Entity/Report.php + + - + message: "#^Call to method extractOtherValue\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Export/Export/ReportList.php + + - + message: "#^Call to method getChoices\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 2 + path: src/Bundle/ChillReportBundle/Export/Export/ReportList.php + + - + message: "#^Call to method isChecked\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 2 + path: src/Bundle/ChillReportBundle/Export/Export/ReportList.php + + - + message: "#^Call to method isMultiple\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 2 + path: src/Bundle/ChillReportBundle/Export/Export/ReportList.php + + - + message: "#^Call to method render\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Export/Export/ReportList.php + + - + message: "#^Call to method getId\\(\\) on an unknown class ChillReportBundle\\:Report\\.$#" count: 1 path: src/Bundle/ChillReportBundle/Timeline/TimelineReportProvider.php - - message: "#^Parameter \\#1 \\$entity of method Chill\\\\ReportBundle\\\\Timeline\\\\TimelineReportProvider\\:\\:getFieldsToRender\\(\\) expects Chill\\\\ReportBundle\\\\Entity\\\\Report, Chill\\\\MainBundle\\\\Timeline\\\\type given\\.$#" + message: "#^Parameter \\$context of method Chill\\\\ReportBundle\\\\Timeline\\\\TimelineReportProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" count: 1 path: src/Bundle/ChillReportBundle/Timeline/TimelineReportProvider.php - - message: "#^Parameter \\#1 \\$entityName of method Doctrine\\\\ORM\\\\EntityManager\\:\\:getRepository\\(\\) expects class\\-string\\, string given\\.$#" + message: "#^Parameter \\$entity of method Chill\\\\ReportBundle\\\\Timeline\\\\TimelineReportProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" count: 1 path: src/Bundle/ChillReportBundle/Timeline/TimelineReportProvider.php - - message: "#^Parameter \\#1 \\$event of method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) expects object, string given\\.$#" - count: 6 + message: "#^Property Chill\\\\TaskBundle\\\\Controller\\\\SingleTaskController\\:\\:\\$centerResolverDispatcher is never read, only written\\.$#" + count: 1 path: src/Bundle/ChillTaskBundle/Controller/SingleTaskController.php - - message: "#^Parameter \\#1 \\$event of method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) expects object, string given\\.$#" + message: "#^Strict comparison using \\=\\=\\= between null and int will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Controller/SingleTaskController.php + + - + message: "#^If condition is always true\\.$#" count: 1 path: src/Bundle/ChillTaskBundle/Controller/TaskController.php - - message: "#^Parameter \\#1 \\$keys of function array_fill_keys expects array, Chill\\\\TaskBundle\\\\Entity\\\\json given\\.$#" + message: "#^Property Chill\\\\TaskBundle\\\\Entity\\\\RecurringTask\\:\\:\\$singleTasks is never read, only written\\.$#" count: 1 - path: src/Bundle/ChillTaskBundle/Entity/AbstractTask.php + path: src/Bundle/ChillTaskBundle/Entity/RecurringTask.php - - message: "#^Parameter \\#1 \\$task of method Chill\\\\TaskBundle\\\\Entity\\\\Task\\\\SingleTaskPlaceEvent\\:\\:setTask\\(\\) expects Chill\\\\TaskBundle\\\\Entity\\\\SingleTask, Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask given\\.$#" + message: "#^Method Chill\\\\TaskBundle\\\\Entity\\\\SingleTask\\:\\:getWarningDate\\(\\) should return DateTimeImmutable but returns null\\.$#" + count: 2 + path: src/Bundle/ChillTaskBundle/Entity/SingleTask.php + + - + message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask\\:\\:getTaskPlaceEvents\\(\\)\\.$#" count: 1 path: src/Bundle/ChillTaskBundle/Event/Lifecycle/TaskLifecycleEvent.php - - message: "#^Parameter \\#1 \\$repository of class Chill\\\\PersonBundle\\\\Form\\\\DataTransformer\\\\PersonToIdTransformer constructor expects Chill\\\\PersonBundle\\\\Repository\\\\PersonRepository, Doctrine\\\\ORM\\\\EntityManagerInterface given\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Form/SingleTaskListType.php - - - - message: "#^Parameter \\#2 \\$role of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\AuthorizationHelper\\:\\:getReachableCenters\\(\\) expects string, Symfony\\\\Component\\\\Security\\\\Core\\\\Role\\\\Role given\\.$#" - count: 4 - path: src/Bundle/ChillTaskBundle/Form/SingleTaskListType.php - - - - message: "#^Parameter \\#1 \\$extras of method Knp\\\\Menu\\\\MenuItem\\:\\:setExtras\\(\\) expects array\\, string given\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Menu/MenuBuilder.php - - - - message: "#^Parameter \\#2 \\$role of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\AuthorizationHelper\\:\\:getReachableCenters\\(\\) expects string, Symfony\\\\Component\\\\Security\\\\Core\\\\Role\\\\Role given\\.$#" + message: "#^Method Chill\\\\TaskBundle\\\\Repository\\\\SingleTaskRepository\\:\\:findByParameters\\(\\) has invalid return type Chill\\\\TaskBundle\\\\Repository\\\\type\\.$#" count: 1 path: src/Bundle/ChillTaskBundle/Repository/SingleTaskRepository.php - - message: "#^Parameter \\#1 \\$event of method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) expects object, string given\\.$#" + message: "#^Parameter \\$params of method Chill\\\\TaskBundle\\\\Repository\\\\SingleTaskRepository\\:\\:findByParameters\\(\\) has invalid type Chill\\\\TaskBundle\\\\Repository\\\\type\\.$#" count: 1 - path: src/Bundle/ChillTaskBundle/Security/Authorization/TaskVoter.php + path: src/Bundle/ChillTaskBundle/Repository/SingleTaskRepository.php - - message: "#^Parameter \\#2 \\$role of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\AuthorizationHelper\\:\\:getReachableCenters\\(\\) expects string, Symfony\\\\Component\\\\Security\\\\Core\\\\Role\\\\Role given\\.$#" + message: "#^Property Chill\\\\TaskBundle\\\\Security\\\\Authorization\\\\AuthorizationEvent\\:\\:\\$vote \\(bool\\) does not accept null\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Security/Authorization/AuthorizationEvent.php + + - + message: "#^Call to method deleteItem\\(\\) on an unknown class Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CacheItempPoolInterface\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Templating/UI/CountNotificationTask.php + + - + message: "#^Call to method getItem\\(\\) on an unknown class Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CacheItempPoolInterface\\.$#" + count: 2 + path: src/Bundle/ChillTaskBundle/Templating/UI/CountNotificationTask.php + + - + message: "#^Call to method save\\(\\) on an unknown class Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CacheItempPoolInterface\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Templating/UI/CountNotificationTask.php + + - + message: "#^Property Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CountNotificationTask\\:\\:\\$cachePool \\(Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CacheItempPoolInterface\\) does not accept Psr\\\\Cache\\\\CacheItemPoolInterface\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Templating/UI/CountNotificationTask.php + + - + message: "#^Property Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CountNotificationTask\\:\\:\\$cachePool has unknown class Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CacheItempPoolInterface as its type\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Templating/UI/CountNotificationTask.php + + - + message: "#^Call to method getData\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 2 + path: src/Bundle/ChillTaskBundle/Timeline/SingleTaskTaskLifeCycleEventTimelineProvider.php + + - + message: "#^Call to method getTask\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Timeline/SingleTaskTaskLifeCycleEventTimelineProvider.php + + - + message: "#^Call to method getTransition\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Timeline/SingleTaskTaskLifeCycleEventTimelineProvider.php + + - + message: "#^Parameter \\$context of method Chill\\\\TaskBundle\\\\Timeline\\\\SingleTaskTaskLifeCycleEventTimelineProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Timeline/SingleTaskTaskLifeCycleEventTimelineProvider.php + + - + message: "#^Parameter \\$entity of method Chill\\\\TaskBundle\\\\Timeline\\\\SingleTaskTaskLifeCycleEventTimelineProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Timeline/SingleTaskTaskLifeCycleEventTimelineProvider.php + + - + message: "#^Call to method getData\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" count: 1 path: src/Bundle/ChillTaskBundle/Timeline/TaskLifeCycleEventTimelineProvider.php - - message: "#^Parameter \\#1 \\$storedObject of method Chill\\\\WopiBundle\\\\Service\\\\Wopi\\\\ChillDocumentManager\\:\\:getContent\\(\\) expects Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject, ChampsLibres\\\\WopiLib\\\\Contract\\\\Entity\\\\Document given\\.$#" - count: 3 - path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillDocumentManager.php + message: "#^Call to method getTask\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 2 + path: src/Bundle/ChillTaskBundle/Timeline/TaskLifeCycleEventTimelineProvider.php - - message: "#^Parameter \\#1 \\$storedObject of method Chill\\\\WopiBundle\\\\Service\\\\Wopi\\\\ChillDocumentManager\\:\\:setContent\\(\\) expects Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject, ChampsLibres\\\\WopiLib\\\\Contract\\\\Entity\\\\Document given\\.$#" + message: "#^Call to method getTransition\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Timeline/TaskLifeCycleEventTimelineProvider.php + + - + message: "#^Parameter \\$context of method Chill\\\\TaskBundle\\\\Timeline\\\\TaskLifeCycleEventTimelineProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Timeline/TaskLifeCycleEventTimelineProvider.php + + - + message: "#^Parameter \\$entity of method Chill\\\\TaskBundle\\\\Timeline\\\\TaskLifeCycleEventTimelineProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Timeline/TaskLifeCycleEventTimelineProvider.php + + - + message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask\\:\\:getId\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Workflow/TaskWorkflowManager.php + + - + message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Workflow\\\\TaskWorkflowDefinition\\:\\:getAssociatedWorkflowName\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Workflow/TaskWorkflowManager.php + + - + message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Workflow\\\\TaskWorkflowDefinition\\:\\:getWorkflowMetadata\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Workflow/TaskWorkflowManager.php + + - + message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Workflow\\\\TaskWorkflowDefinition\\:\\:isClosed\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Workflow/TaskWorkflowManager.php + + - + message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Workflow\\\\TaskWorkflowDefinition\\:\\:supports\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Workflow/TaskWorkflowManager.php + + - + message: "#^PHPDoc tag @return with type DateTime\\|null is not subtype of native type DateTimeImmutable\\|null\\.$#" + count: 1 + path: src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php + + - + message: "#^Property Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\:\\:\\$canonicalized is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php + + - + message: "#^Property Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\:\\:\\$createdBy is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php + + - + message: "#^Property Chill\\\\ThirdPartyBundle\\\\Repository\\\\ThirdPartyACLAwareRepository\\:\\:\\$authorizationHelper is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillThirdPartyBundle/Repository/ThirdPartyACLAwareRepository.php + + - + message: "#^Property Chill\\\\ThirdPartyBundle\\\\Repository\\\\ThirdPartyACLAwareRepository\\:\\:\\$security is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillThirdPartyBundle/Repository/ThirdPartyACLAwareRepository.php + + - + message: "#^Argument of an invalid type string supplied for foreach, only iterables are supported\\.$#" + count: 1 + path: src/Bundle/ChillThirdPartyBundle/Repository/ThirdPartyRepository.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillThirdPartyBundle/Security/Voter/ThirdPartyVoter.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillWopiBundle/src/Controller/Editor.php + + - + message: "#^Strict comparison using \\=\\=\\= between false and array will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillWopiBundle/src/Service/Wopi/AuthorizationManager.php + + - + message: "#^Default value of the parameter \\#2 \\$properties \\(array\\{\\}\\) of method Chill\\\\WopiBundle\\\\Service\\\\Wopi\\\\ChillDocumentManager\\:\\:write\\(\\) is incompatible with type array\\{content\\: string, size\\: int\\}\\.$#" count: 1 path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillDocumentManager.php - - message: "#^Parameter \\#1 \\$type of method Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject\\:\\:setType\\(\\) expects string\\|null, false given\\.$#" + message: "#^Method ChampsLibres\\\\WopiLib\\\\Contract\\\\Service\\\\WopiInterface\\:\\:checkFileInfo\\(\\) invoked with 4 parameters, 3 required\\.$#" count: 1 - path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillDocumentManager.php + path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillWopi.php diff --git a/phpstan-baseline.neon b/phpstan-baseline.neon index 8af07174d..e69de29bb 100644 --- a/phpstan-baseline.neon +++ b/phpstan-baseline.neon @@ -1,76 +0,0 @@ -parameters: - ignoreErrors: - - - message: "#^Only booleans are allowed in an if condition, mixed given\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Entity/CustomField.php - - - - message: "#^Only booleans are allowed in an if condition, mixed given\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Form/PersonType.php - - - - message: "#^Only booleans are allowed in an if condition, mixed given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Templating/ChillTwigRoutingHelper.php - - - - message: "#^Only booleans are allowed in an if condition, mixed given\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsGroup.php - - - - message: "#^Only booleans are allowed in an if condition, mixed given\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Repository/NotificationRepository.php - - - - message: "#^Foreach overwrites \\$key with its key variable\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php - - - - message: "#^Variable \\$participation might not be defined\\.$#" - count: 3 - path: src/Bundle/ChillEventBundle/Controller/ParticipationController.php - - - - message: "#^Foreach overwrites \\$value with its value variable\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Form/ChoiceLoader/EventChoiceLoader.php - - - - message: "#^Cannot unset offset '_token' on array\\{formatter\\: mixed, export\\: mixed, centers\\: mixed, alias\\: string\\}\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/ExportController.php - - - - message: "#^Foreach overwrites \\$line with its value variable\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Export/Formatter/CSVFormatter.php - - - - message: "#^Foreach overwrites \\$key with its key variable\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php - - - - message: "#^Foreach overwrites \\$key with its value variable\\.$#" - count: 3 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php - - - - message: "#^Foreach overwrites \\$value with its value variable\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/ChoiceLoader/PostalCodeChoiceLoader.php - - - - message: "#^Foreach overwrites \\$value with its value variable\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Form/ChoiceLoader/PersonChoiceLoader.php - - - - message: "#^Foreach overwrites \\$value with its value variable\\.$#" - count: 1 - path: src/Bundle/ChillThirdPartyBundle/Form/ChoiceLoader/ThirdPartyChoiceLoader.php diff --git a/phpstan.neon.dist b/phpstan.neon.dist index ab7c97139..e09bb5081 100644 --- a/phpstan.neon.dist +++ b/phpstan.neon.dist @@ -1,5 +1,5 @@ parameters: - level: 3 + level: 5 paths: - src/ - utils/ From deaab8027073c570ae162ebb329f79951a549a56 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Tue, 23 Apr 2024 21:22:19 +0200 Subject: [PATCH 019/136] phpstan baseline 5 updated --- phpstan-baseline-level-5.neon | 3037 ++------------------------------- 1 file changed, 116 insertions(+), 2921 deletions(-) diff --git a/phpstan-baseline-level-5.neon b/phpstan-baseline-level-5.neon index 27945c670..2d88e45cb 100644 --- a/phpstan-baseline-level-5.neon +++ b/phpstan-baseline-level-5.neon @@ -1,3166 +1,361 @@ parameters: ignoreErrors: - - message: "#^Access to an undefined property Chill\\\\ActivityBundle\\\\Entity\\\\Activity\\:\\:\\$personsAssociated\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php - - - - message: "#^Access to an undefined property Chill\\\\ActivityBundle\\\\Entity\\\\Activity\\:\\:\\$personsNotAssociated\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Serializer\\\\SerializerInterface\\:\\:normalize\\(\\)\\.$#" - count: 2 - path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php - - - - message: "#^Method Chill\\\\ActivityBundle\\\\Controller\\\\ActivityReasonCategoryController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Controller/ActivityReasonCategoryController.php - - - - message: "#^Method Chill\\\\ActivityBundle\\\\Controller\\\\ActivityReasonCategoryController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Controller/ActivityReasonCategoryController.php - - - - message: "#^Method Chill\\\\ActivityBundle\\\\Controller\\\\ActivityReasonController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Controller/ActivityReasonController.php - - - - message: "#^Method Chill\\\\ActivityBundle\\\\Controller\\\\ActivityReasonController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Controller/ActivityReasonController.php - - - - message: "#^Else branch is unreachable because previous condition is always true\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/DataFixtures/ORM/LoadActivity.php - - - - message: "#^Strict comparison using \\!\\=\\= between null and Chill\\\\ActivityBundle\\\\Entity\\\\ActivityReason will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/DataFixtures/ORM/LoadActivity.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/DataFixtures/ORM/LoadActivityNotifications.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/DependencyInjection/Configuration.php - - - - message: "#^Argument of an invalid type string supplied for foreach, only iterables are supported\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Entity/ActivityReasonCategory.php - - - - message: "#^Binary operation \"\\.\" between 'ActivityReasonCateg…' and array results in an error\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Entity/ActivityReasonCategory.php - - - - message: "#^Method Chill\\\\ActivityBundle\\\\Entity\\\\ActivityReasonCategory\\:\\:getName\\(\\) should return array but returns string\\.$#" - count: 3 - path: src/Bundle/ChillActivityBundle/Entity/ActivityReasonCategory.php - - - - message: "#^Property Chill\\\\ActivityBundle\\\\Entity\\\\ActivityReasonCategory\\:\\:\\$name \\(string\\) does not accept array\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Entity/ActivityReasonCategory.php - - - - message: "#^Expression on left side of \\?\\? is not nullable\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/EntityListener/ActivityEntityListener.php - - - - message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\ActivityBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Form/ActivityReasonCategoryType.php - - - - message: "#^Parameter \\$resolver of method Chill\\\\ActivityBundle\\\\Form\\\\ActivityReasonCategoryType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\ActivityBundle\\\\Form\\\\OptionsResolverInterface\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Form/ActivityReasonCategoryType.php - - - - message: "#^Method Chill\\\\ActivityBundle\\\\Repository\\\\ActivityACLAwareRepository\\:\\:getWhereClause\\(\\) should return array but returns string\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Repository/ActivityACLAwareRepository.php - - - - message: "#^Expression on left side of \\?\\? is not nullable\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Repository/ActivityReasonRepository.php - - - - message: "#^Parameter \\$context of method Chill\\\\ActivityBundle\\\\Timeline\\\\TimelineActivityProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + message: "#^Parameter \\#1 \\$context of method Chill\\\\ActivityBundle\\\\Timeline\\\\TimelineActivityProvider\\:\\:checkContext\\(\\) expects string, Chill\\\\MainBundle\\\\Timeline\\\\type given\\.$#" count: 1 path: src/Bundle/ChillActivityBundle/Timeline/TimelineActivityProvider.php - - message: "#^Parameter \\$entity of method Chill\\\\ActivityBundle\\\\Timeline\\\\TimelineActivityProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + message: "#^Parameter \\#2 \\$byUser of class Chill\\\\CalendarBundle\\\\Messenger\\\\Message\\\\InviteUpdateMessage constructor expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" count: 1 - path: src/Bundle/ChillActivityBundle/Timeline/TimelineActivityProvider.php + path: src/Bundle/ChillCalendarBundle/Controller/InviteApiController.php - - message: "#^Result of && is always false\\.$#" - count: 6 - path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\Embeddable\\\\CommentEmbeddable will always evaluate to false\\.$#" + message: "#^Parameter \\#2 \\$byUser of class Chill\\\\CalendarBundle\\\\Messenger\\\\Message\\\\CalendarRemovedMessage constructor expects Chill\\\\MainBundle\\\\Entity\\\\User\\|null, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" count: 1 - path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php + path: src/Bundle/ChillCalendarBundle/Messenger/Doctrine/CalendarEntityListener.php - - message: "#^Strict comparison using \\=\\=\\= between null and DateTime will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Doctrine\\\\Common\\\\Collections\\\\Collection will always evaluate to false\\.$#" + message: "#^Parameter \\#3 \\$byUser of class Chill\\\\CalendarBundle\\\\Messenger\\\\Message\\\\CalendarMessage constructor expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" count: 2 - path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php + path: src/Bundle/ChillCalendarBundle/Messenger/Doctrine/CalendarEntityListener.php - - message: "#^Strict comparison using \\=\\=\\= between null and bool will always evaluate to false\\.$#" + message: "#^Parameter \\#2 \\$byUser of class Chill\\\\CalendarBundle\\\\Messenger\\\\Message\\\\CalendarRangeRemovedMessage constructor expects Chill\\\\MainBundle\\\\Entity\\\\User\\|null, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" count: 1 - path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php + path: src/Bundle/ChillCalendarBundle/Messenger/Doctrine/CalendarRangeEntityListener.php - - message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillAsideActivityBundle/src/DependencyInjection/Configuration.php - - - - message: "#^Property Chill\\\\AsideActivityBundle\\\\Entity\\\\AsideActivityCategory\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillAsideActivityBundle/src/Entity/AsideActivityCategory.php - - - - message: "#^Call to method DateTimeImmutable\\:\\:add\\(\\) on a separate line has no effect\\.$#" - count: 1 - path: src/Bundle/ChillAsideActivityBundle/src/Form/AsideActivityFormType.php - - - - message: "#^Call to method DateTimeImmutable\\:\\:setTimezone\\(\\) on a separate line has no effect\\.$#" - count: 1 - path: src/Bundle/ChillAsideActivityBundle/src/Form/AsideActivityFormType.php - - - - message: "#^Call to an undefined method Chill\\\\BudgetBundle\\\\Entity\\\\AbstractElement\\:\\:getId\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Controller/AbstractElementController.php - - - - message: "#^Method Chill\\\\BudgetBundle\\\\Controller\\\\AbstractElementController\\:\\:createDeleteForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Controller/AbstractElementController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/DependencyInjection/Configuration.php - - - - message: "#^Property Chill\\\\BudgetBundle\\\\Entity\\\\AbstractElement\\:\\:\\$startDate \\(DateTimeImmutable\\) does not accept null\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Entity/AbstractElement.php - - - - message: "#^Strict comparison using \\=\\=\\= between 0 and string will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Entity/AbstractElement.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and DateTimeImmutable will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Entity/AbstractElement.php - - - - message: "#^Property Chill\\\\BudgetBundle\\\\Entity\\\\ChargeKind\\:\\:\\$tags is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Entity/ChargeKind.php - - - - message: "#^Property Chill\\\\BudgetBundle\\\\Entity\\\\ResourceKind\\:\\:\\$tags is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Entity/ResourceKind.php - - - - message: "#^PHPDoc tag @param for parameter \\$limit with type mixed is not subtype of native type int\\|null\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Repository/ChargeKindRepository.php - - - - message: "#^PHPDoc tag @param for parameter \\$offset with type mixed is not subtype of native type int\\|null\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Repository/ChargeKindRepository.php - - - - message: "#^PHPDoc tag @param for parameter \\$limit with type mixed is not subtype of native type int\\|null\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Repository/ResourceKindRepository.php - - - - message: "#^PHPDoc tag @param for parameter \\$offset with type mixed is not subtype of native type int\\|null\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Repository/ResourceKindRepository.php - - - - message: "#^Property Chill\\\\CalendarBundle\\\\Command\\\\AzureGrantAdminConsentAndAcquireToken\\:\\:\\$clientRegistry is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Command/AzureGrantAdminConsentAndAcquireToken.php - - - - message: "#^Property Chill\\\\CalendarBundle\\\\Command\\\\SendTestShortMessageOnCalendarCommand\\:\\:\\$phoneNumberHelper is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Command/SendTestShortMessageOnCalendarCommand.php - - - - message: "#^Strict comparison using \\=\\=\\= between false and DateInterval will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Command/SendTestShortMessageOnCalendarCommand.php - - - - message: "#^Strict comparison using \\=\\=\\= between false and DateTimeImmutable will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Command/SendTestShortMessageOnCalendarCommand.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Form\\\\FormInterface\\:\\:isClicked\\(\\)\\.$#" - count: 4 - path: src/Bundle/ChillCalendarBundle/Controller/CalendarController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Serializer\\\\SerializerInterface\\:\\:normalize\\(\\)\\.$#" + message: "#^Parameter \\#3 \\$byUser of class Chill\\\\CalendarBundle\\\\Messenger\\\\Message\\\\CalendarRangeMessage constructor expects Chill\\\\MainBundle\\\\Entity\\\\User\\|null, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" count: 2 - path: src/Bundle/ChillCalendarBundle/Controller/CalendarController.php + path: src/Bundle/ChillCalendarBundle/Messenger/Doctrine/CalendarRangeEntityListener.php - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Controller/CalendarController.php - - - - message: "#^Method Symfony\\\\Component\\\\HttpFoundation\\\\Session\\\\SessionInterface\\:\\:remove\\(\\) invoked with 2 parameters, 1 required\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Controller/RemoteCalendarConnectAzureController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/DependencyInjection/Configuration.php - - - - message: "#^Property Chill\\\\CalendarBundle\\\\Messenger\\\\Message\\\\CalendarMessage\\:\\:\\$oldInvites \\(array\\\\) does not accept array\\\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Messenger/Message/CalendarMessage.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraph/EventsOnUserSubscriptionCreator.php - - - - message: "#^Method Chill\\\\CalendarBundle\\\\RemoteCalendar\\\\Connector\\\\MSGraph\\\\OnBehalfOfUserTokenStorage\\:\\:getToken\\(\\) should return TheNetworg\\\\OAuth2\\\\Client\\\\Token\\\\AccessToken but returns League\\\\OAuth2\\\\Client\\\\Token\\\\AccessTokenInterface\\.$#" + message: "#^Parameter \\#1 \\$token of method Chill\\\\CalendarBundle\\\\RemoteCalendar\\\\Connector\\\\MSGraph\\\\OnBehalfOfUserTokenStorage\\:\\:setToken\\(\\) expects TheNetworg\\\\OAuth2\\\\Client\\\\Token\\\\AccessToken, League\\\\OAuth2\\\\Client\\\\Token\\\\AccessTokenInterface given\\.$#" count: 1 path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraph/OnBehalfOfUserTokenStorage.php - - message: "#^Call to method DateTimeImmutable\\:\\:setTimezone\\(\\) on a separate line has no effect\\.$#" + message: "#^Parameter \\#4 \\$offset of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarRepository\\:\\:findBy\\(\\) expects int\\|null, array\\|null given\\.$#" count: 1 - path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraph/RemoteEventConverter.php + path: src/Bundle/ChillCalendarBundle/Repository/CalendarRepository.php - - message: "#^Expression on left side of \\?\\? is not nullable\\.$#" - count: 2 - path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraphRemoteCalendarConnector.php - - - - message: "#^PHPDoc tag @return has invalid value \\(array\\{\\?id\\: string, \\?lastModifiedDateTime\\: int, \\?changeKey\\: string\\}\\)\\: Unexpected token \"\\:\", expected '\\}' at offset 129$#" - count: 2 - path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraphRemoteCalendarConnector.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraphRemoteCalendarConnector.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Console\\\\Helper\\\\HelperInterface\\:\\:ask\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Command/CreateFieldsOnGroupCommand.php - - - - message: "#^If condition is always true\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Command/CreateFieldsOnGroupCommand.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Command/CreateFieldsOnGroupCommand.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\Controller\\\\CustomFieldController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldController.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\Controller\\\\CustomFieldController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldController.php - - - - message: "#^Ternary operator condition is always true\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldController.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQuery\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findOneByEntity\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findOneById\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Form\\\\FormInterface\\:\\:isClicked\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\Controller\\\\CustomFieldsGroupController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\Controller\\\\CustomFieldsGroupController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\Controller\\\\CustomFieldsGroupController\\:\\:createMakeDefaultForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php - - - - message: "#^Method Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\:\\:create\\(\\) invoked with 4 parameters, 1\\-3 required\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and array\\|string will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 3 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:render\\(\\) should return string but returns null\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php - - - - message: "#^PHPDoc tag @param for parameter \\$builder with type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface is not subtype of native type Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" - count: 2 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php - - - - message: "#^PHPDoc tag @param for parameter \\$customField with type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField is not subtype of native type Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomField\\.$#" - count: 4 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php - - - - message: "#^Anonymous function never returns null so it can be removed from the return type\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldLongChoice\\\\Option will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php - - - - message: "#^Ternary operator condition is always true\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/DependencyInjection/Configuration.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomField\\:\\:getName\\(\\) should return array but returns string\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Entity/CustomField.php - - - - message: "#^Call to method buildOptionsForm\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/CustomFieldType.php - - - - message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\CustomFieldsBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/CustomFieldType.php - - - - message: "#^Parameter \\$resolver of method Chill\\\\CustomFieldsBundle\\\\Form\\\\CustomFieldType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\Form\\\\OptionsResolverInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/CustomFieldType.php - - - - message: "#^Instanceof between Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup and Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/CustomFieldsGroupToIdTransformer.php - - - - message: "#^Instanceof between string and Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/CustomFieldsGroupToIdTransformer.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\Form\\\\DataTransformer\\\\CustomFieldsGroupToIdTransformer\\:\\:transform\\(\\) should return string but returns int\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/CustomFieldsGroupToIdTransformer.php - - - - message: "#^Call to an undefined method Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomField\\:\\:getLabel\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/JsonCustomFieldToArrayTransformer.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findOneById\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/JsonCustomFieldToArrayTransformer.php - - - - message: "#^Call to method getCustomFieldByType\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldCompiler\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/Type/CustomFieldType.php - - - - message: "#^Property Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldType\\:\\:\\$customFieldCompiler \\(Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldCompiler\\) does not accept Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/Type/CustomFieldType.php - - - - message: "#^Property Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldType\\:\\:\\$customFieldCompiler has unknown class Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldCompiler as its type\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/Type/CustomFieldType.php - - - - message: "#^Property Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldType\\:\\:\\$om is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/Type/CustomFieldType.php - - - - message: "#^Invalid array key type Chill\\\\CustomFieldsBundle\\\\Service\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:getCustomFieldByType\\(\\) has invalid return type Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php - - - - message: "#^Parameter \\$serviceName of method Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:addCustomField\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\Service\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php - - - - message: "#^Parameter \\$type of method Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:addCustomField\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\Service\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php - - - - message: "#^Property Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:\\$container \\(Chill\\\\CustomFieldsBundle\\\\Service\\\\Container\\) does not accept Symfony\\\\Component\\\\DependencyInjection\\\\ContainerInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php - - - - message: "#^Property Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:\\$container has unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\Container as its type\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php - - - - message: "#^Property Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:\\$container is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php - - - - message: "#^Call to method deserialize\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldsHelper.php - - - - message: "#^Call to method isEmptyValue\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldsHelper.php - - - - message: "#^Call to method render\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldsHelper.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldsHelper\\:\\:renderCustomField\\(\\) has invalid return type Chill\\\\CustomFieldsBundle\\\\Service\\\\The\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldsHelper.php - - - - message: "#^Property Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldsHelper\\:\\:\\$em is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldsHelper.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\Templating\\\\Twig\\\\CustomFieldRenderingTwig\\:\\:renderWidget\\(\\) should return string but returns Chill\\\\CustomFieldsBundle\\\\Service\\\\The\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Templating/Twig/CustomFieldRenderingTwig.php - - - - message: "#^Parameter \\$customFielsGroup of method Chill\\\\CustomFieldsBundle\\\\Templating\\\\Twig\\\\CustomFieldsGroupRenderingTwig\\:\\:renderWidget\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\Templating\\\\Twig\\\\CustomFieldsGroud\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Templating/Twig/CustomFieldsGroupRenderingTwig.php - - - - message: "#^Left side of && is always true\\.$#" - count: 1 - path: src/Bundle/ChillDocGeneratorBundle/Controller/DocGeneratorTemplateController.php - - - - message: "#^PHPDoc tag @return with type void is incompatible with native type Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" - count: 1 - path: src/Bundle/ChillDocGeneratorBundle/Controller/DocGeneratorTemplateController.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and int will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillDocGeneratorBundle/Controller/DocGeneratorTemplateController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillDocGeneratorBundle/DependencyInjection/Configuration.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Doctrine\\\\Common\\\\Collections\\\\Collection will always evaluate to false\\.$#" + message: "#^Parameter \\#1 \\$prefix of function uniqid expects string, int\\<0, max\\> given\\.$#" count: 1 - path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/CollectionDocGenNormalizer.php + path: src/Bundle/ChillCustomFieldsBundle/Form/Type/ChoicesListType.php - - message: "#^Call to an undefined method ReflectionType\\:\\:getName\\(\\)\\.$#" + message: "#^Parameter \\#4 \\$attributes of method Chill\\\\DocGeneratorBundle\\\\Serializer\\\\Normalizer\\\\DocGenObjectNormalizer\\:\\:normalizeNullData\\(\\) expects array\\, array\\ given\\.$#" count: 1 path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/DocGenObjectNormalizer.php - - message: "#^Expression on left side of \\?\\? is not nullable\\.$#" + message: "#^Parameter \\#6 \\$attributes of method Chill\\\\DocGeneratorBundle\\\\Serializer\\\\Normalizer\\\\DocGenObjectNormalizer\\:\\:normalizeObject\\(\\) expects array\\, array\\ given\\.$#" count: 1 path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/DocGenObjectNormalizer.php - - message: "#^Parameter \\#1 \\$user of method Chill\\\\DocStoreBundle\\\\Entity\\\\Document\\:\\:setUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User\\|null, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" - count: 2 - path: src/Bundle/ChillDocStoreBundle/Controller/DocumentAccompanyingCourseController.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillDocStoreBundle/Controller/DocumentAccompanyingCourseController.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQuery\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillDocStoreBundle/Controller/DocumentCategoryController.php - - - - message: "#^Parameter \\#1 \\$user of method Chill\\\\DocStoreBundle\\\\Entity\\\\Document\\:\\:setUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User\\|null, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" - count: 2 - path: src/Bundle/ChillDocStoreBundle/Controller/DocumentPersonController.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\Person will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillDocStoreBundle/Controller/DocumentPersonController.php - - - - message: "#^Property Chill\\\\DocStoreBundle\\\\Repository\\\\AccompanyingCourseDocumentRepository\\:\\:\\$em is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillDocStoreBundle/Repository/AccompanyingCourseDocumentRepository.php - - - - message: "#^Property Chill\\\\DocStoreBundle\\\\Repository\\\\DocumentCategoryRepository\\:\\:\\$em is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillDocStoreBundle/Repository/DocumentCategoryRepository.php - - - - message: "#^Instanceof between Chill\\\\DocStoreBundle\\\\Entity\\\\PersonDocument and Chill\\\\DocStoreBundle\\\\Entity\\\\PersonDocument will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillDocStoreBundle/Security/Authorization/PersonDocumentVoter.php - - - - message: "#^Default value of the parameter \\#5 \\$options \\(array\\{\\}\\) of method Chill\\\\DocStoreBundle\\\\Templating\\\\WopiEditTwigExtensionRuntime\\:\\:renderButtonGroup\\(\\) is incompatible with type array\\{small\\: bool\\}\\.$#" - count: 1 - path: src/Bundle/ChillDocStoreBundle/Templating/WopiEditTwigExtensionRuntime.php - - - - message: "#^Property Chill\\\\DocStoreBundle\\\\Templating\\\\WopiEditTwigExtensionRuntime\\:\\:\\$discovery is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillDocStoreBundle/Templating/WopiEditTwigExtensionRuntime.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:countByPerson\\(\\)\\.$#" + message: "#^Parameter \\#1 \\$value of function count expects array\\|Countable, Chill\\\\MainBundle\\\\Entity\\\\Center given\\.$#" count: 1 path: src/Bundle/ChillEventBundle/Controller/EventController.php - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findByPersonInCircle\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/EventController.php - - - - message: "#^Negated boolean expression is always false\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/EventController.php - - - - message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\EventTypeController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/EventTypeController.php - - - - message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\EventTypeController\\:\\:createDeleteForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/EventTypeController.php - - - - message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\EventTypeController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/EventTypeController.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\EventBundle\\\\Entity\\\\Event will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/ParticipationController.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\EventBundle\\\\Entity\\\\Participation will always evaluate to false\\.$#" + message: "#^Parameter \\#1 \\$callback of function call_user_func expects callable\\(\\)\\: mixed, null given\\.$#" count: 2 - path: src/Bundle/ChillEventBundle/Controller/ParticipationController.php + path: src/Bundle/ChillEventBundle/Form/ChoiceLoader/EventChoiceLoader.php - - message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\RoleController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/RoleController.php - - - - message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\RoleController\\:\\:createDeleteForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/RoleController.php - - - - message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\RoleController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/RoleController.php - - - - message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\StatusController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/StatusController.php - - - - message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\StatusController\\:\\:createDeleteForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/StatusController.php - - - - message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\StatusController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/StatusController.php - - - - message: "#^Instanceof between Chill\\\\EventBundle\\\\Entity\\\\Event and Chill\\\\EventBundle\\\\Entity\\\\Event will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Security/Authorization/EventVoter.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Security/Authorization/EventVoter.php - - - - message: "#^Instanceof between Chill\\\\EventBundle\\\\Entity\\\\Participation and Chill\\\\EventBundle\\\\Entity\\\\Participation will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Security/Authorization/ParticipationVoter.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Security/Authorization/ParticipationVoter.php - - - - message: "#^Parameter \\#2 \\$context \\(string\\) of method Chill\\\\EventBundle\\\\Timeline\\\\TimelineEventProvider\\:\\:getEntityTemplate\\(\\) should be compatible with parameter \\$context \\(Chill\\\\MainBundle\\\\Timeline\\\\type\\) of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineProviderInterface\\:\\:getEntityTemplate\\(\\)$#" - count: 1 - path: src/Bundle/ChillEventBundle/Timeline/TimelineEventProvider.php - - - - message: "#^Parameter \\#1 \\$seconds of function sleep expects int, string given\\.$#" - count: 1 - path: src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php - - - - message: "#^Parameter \\#1 \\$interval of method DateTimeImmutable\\:\\:add\\(\\) expects DateInterval, string\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillJobBundle/src/Entity/Immersion.php - - - - message: "#^Parameter \\#1 \\$object of static method DateTimeImmutable\\:\\:createFromMutable\\(\\) expects DateTime, DateTimeInterface given\\.$#" - count: 1 - path: src/Bundle/ChillJobBundle/src/Entity/Immersion.php - - - - message: "#^Parameter \\#1 \\$interval of method DateTimeImmutable\\:\\:add\\(\\) expects DateInterval, string\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillJobBundle/src/Security/Authorization/CSConnectesVoter.php - - - - message: "#^Parameter \\#1 \\$object of static method DateTimeImmutable\\:\\:createFromMutable\\(\\) expects DateTime, DateTimeInterface given\\.$#" - count: 1 - path: src/Bundle/ChillJobBundle/src/Security/Authorization/CSConnectesVoter.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQueryBuilder\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/AbstractCRUDController.php - - - - message: "#^PHPDoc tag @param for parameter \\$postedDataContext with type string is incompatible with native type array\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php - - - - message: "#^PHPDoc tag @param has invalid value \\(mixed id\\)\\: Unexpected token \"id\", expected variable at offset 956$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php - - - - message: "#^PHPDoc tag @param has invalid value \\(string action\\)\\: Unexpected token \"action\", expected variable at offset 929$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php - - - - message: "#^PHPDoc tag @return with type void is incompatible with native type Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and object will always evaluate to false\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQueryBuilder\\(\\)\\.$#" + message: "#^Parameter \\#3 \\$formClass of method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\CRUDController\\:\\:createFormFor\\(\\) expects string\\|null, Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\type\\|null given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php - - message: "#^Call to method getQuery\\(\\) on an unknown class Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\type\\.$#" + message: "#^Parameter \\#3 \\$scope of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\AuthorizationHelper\\:\\:getReachableCenters\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\Scope\\|null, Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\Scope\\|null given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php - - message: "#^Method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\CRUDController\\:\\:index\\(\\) has invalid return type Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\type\\.$#" + message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Repository\\\\NotificationRepository\\:\\:countUnreadByUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php + path: src/Bundle/ChillMainBundle/Controller/NotificationApiController.php - - message: "#^Method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\CRUDController\\:\\:queryEntities\\(\\) has invalid return type Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\type\\.$#" + message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Repository\\\\NotificationRepository\\:\\:findUnreadByUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php + path: src/Bundle/ChillMainBundle/Controller/NotificationApiController.php - - message: "#^PHPDoc tag @throws with type Symfony\\\\Component\\\\Security\\\\Core\\\\Exception\\\\AccessDeniedHttpException is not subtype of Throwable$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php - - - - message: "#^Parameter \\$formClass of method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\CRUDController\\:\\:formCreateAction\\(\\) has invalid type Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php - - - - message: "#^Constant Chill\\\\MainBundle\\\\CRUD\\\\Routing\\\\CRUDRoutesLoader\\:\\:ALL_INDEX_METHODS is unused\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Routing/CRUDRoutesLoader.php - - - - message: "#^Constant Chill\\\\MainBundle\\\\CRUD\\\\Routing\\\\CRUDRoutesLoader\\:\\:ALL_SINGLE_METHODS is unused\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Routing/CRUDRoutesLoader.php - - - - message: "#^Strict comparison using \\=\\=\\= between 'CRUD' and null will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Routing/CRUDRoutesLoader.php - - - - message: "#^Strict comparison using \\=\\=\\= between 'collection' and 'single'\\|null will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Routing/CRUDRoutesLoader.php - - - - message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findOneByName\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Command/ChillImportUsersCommand.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Command\\\\ChillImportUsersCommand\\:\\:getCenters\\(\\) should return array\\ but returns null\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Command/ChillImportUsersCommand.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Command\\\\ChillUserSendRenewPasswordCodeCommand\\:\\:\\$output is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Command/ChillUserSendRenewPasswordCodeCommand.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Console\\\\Helper\\\\HelperInterface\\:\\:askHiddenResponse\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Command/SetPasswordCommand.php - - - - message: "#^Instanceof between Chill\\\\MainBundle\\\\Export\\\\DirectExportInterface and Chill\\\\MainBundle\\\\Export\\\\DirectExportInterface will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/ExportController.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/ExportController.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQueryBuilder\\(\\)\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Controller/PasswordController.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findOneByUsernameCanonical\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/PasswordController.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Controller\\\\PasswordController\\:\\:passwordForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/PasswordController.php - - - - message: "#^PHPDoc tag @param for parameter \\$permissionsGroup with type mixed is not subtype of native type Chill\\\\MainBundle\\\\Entity\\\\PermissionsGroup\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQuery\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/PostalCodeController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\HttpFoundation\\\\Session\\\\SessionInterface\\:\\:getFlashBag\\(\\)\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Controller/SavedExportController.php - - - - message: "#^PHPDoc tag @var for variable \\$variable contains unknown class Chill\\\\MainBundle\\\\Controller\\\\Chill\\\\MainBundle\\\\Search\\\\HasAdvancedSearchFormInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/SearchController.php - - - - message: "#^PHPDoc tag @var for variable \\$variable contains unknown class Chill\\\\MainBundle\\\\Controller\\\\Chill\\\\MainBundle\\\\Search\\\\SearchProvider\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Controller/SearchController.php - - - - message: "#^Variable \\$variable in PHPDoc tag @var does not match assigned variable \\$search\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/SearchController.php - - - - message: "#^Variable \\$variable in PHPDoc tag @var does not match assigned variable \\$searchProvider\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Controller/SearchController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\:\\:getGroupCenters\\(\\)\\.$#" + message: "#^Parameter \\#1 \\$context of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineBuilder\\:\\:countItems\\(\\) expects Chill\\\\MainBundle\\\\Timeline\\\\unknown, string given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Controller/TimelineCenterController.php - - message: "#^Property Chill\\\\MainBundle\\\\DataFixtures\\\\ORM\\\\LoadAddressReferences\\:\\:\\$container is never read, only written\\.$#" + message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\:\\:addSubscriberToFinal\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/DataFixtures/ORM/LoadAddressReferences.php + path: src/Bundle/ChillMainBundle/Controller/WorkflowApiController.php - - message: "#^Property Chill\\\\MainBundle\\\\DataFixtures\\\\ORM\\\\LoadLocationType\\:\\:\\$container is never read, only written\\.$#" + message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\:\\:addSubscriberToStep\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/DataFixtures/ORM/LoadLocationType.php + path: src/Bundle/ChillMainBundle/Controller/WorkflowApiController.php - - message: "#^Property Chill\\\\MainBundle\\\\DataFixtures\\\\ORM\\\\LoadUsers\\:\\:\\$container is never read, only written\\.$#" + message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\:\\:isUserSubscribedToFinal\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/DataFixtures/ORM/LoadUsers.php + path: src/Bundle/ChillMainBundle/Controller/WorkflowApiController.php - - message: "#^Parameter \\$factory of method Chill\\\\MainBundle\\\\DependencyInjection\\\\ChillMainExtension\\:\\:addWidgetFactory\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\WidgetFactoryInterface\\.$#" + message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\:\\:isUserSubscribedToStep\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/ChillMainExtension.php + path: src/Bundle/ChillMainBundle/Controller/WorkflowApiController.php - - message: "#^Offset 'queries' does not exist on array\\{scheme\\: 'ovh', host\\?\\: string, port\\?\\: int\\<0, 65535\\>, user\\?\\: string, pass\\?\\: string, path\\?\\: string, query\\?\\: string, fragment\\?\\: string\\}\\.$#" - count: 5 - path: src/Bundle/ChillMainBundle/DependencyInjection/CompilerPass/ShortMessageCompilerPass.php - - - - message: "#^Offset 'queries' does not exist on array\\{scheme\\?\\: string, host\\?\\: string, port\\?\\: int\\<0, 65535\\>, user\\?\\: string, pass\\?\\: string, path\\?\\: string, query\\?\\: string, fragment\\?\\: string\\}\\|false\\.$#" + message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\:\\:removeSubscriberToFinal\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/CompilerPass/ShortMessageCompilerPass.php + path: src/Bundle/ChillMainBundle/Controller/WorkflowApiController.php - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:canBeUnset\\(\\)\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php + message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\:\\:removeSubscriberToStep\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/WorkflowApiController.php - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" - count: 3 - path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php - - - - message: "#^Method Chill\\\\MainBundle\\\\DependencyInjection\\\\Configuration\\:\\:getWidgetFactories\\(\\) has invalid return type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\WidgetFactoryInterface\\.$#" + message: "#^Parameter \\#1 \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Configuration\\:\\:filterWidgetByPlace\\(\\) expects string, Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\type given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php - - message: "#^PHPDoc tag @param has invalid value \\(WidgetFactoryInterface\\[\\]\\)\\: Unexpected token \"\\\\n \", expected variable at offset 42$#" + message: "#^Parameter \\#1 \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Configuration\\:\\:getWidgetAliasesbyPlace\\(\\) expects Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\type, string given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php - - message: "#^Parameter \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Configuration\\:\\:getWidgetAliasesbyPlace\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php - - - - message: "#^Parameter \\$widgetFactories of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Configuration\\:\\:setWidgetFactories\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\WidgetFactoryInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php - - - - message: "#^Call to an undefined method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:getAllowedPlaces\\(\\)\\.$#" - count: 3 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php - - - - message: "#^Instanceof between Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\HasWidgetFactoriesExtensionInterface and Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\HasWidgetFactoriesExtensionInterface will always evaluate to true\\.$#" + message: "#^Parameter \\#2 \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:createDefinition\\(\\) expects Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type, string given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php - - message: "#^Method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\AbstractWidgetsCompilerPass\\:\\:isPlaceAllowedForWidget\\(\\) has invalid return type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\unknown\\.$#" + message: "#^Parameter \\#3 \\$order of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:createDefinition\\(\\) expects Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type, float given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php - - message: "#^Method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\AbstractWidgetsCompilerPass\\:\\:isPlaceAllowedForWidget\\(\\) should return Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\unknown but returns false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php - - - - message: "#^Method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\AbstractWidgetsCompilerPass\\:\\:isPlaceAllowedForWidget\\(\\) should return Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\unknown but returns true\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php - - - - message: "#^Negated boolean expression is always false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php - - - - message: "#^Parameter \\$order of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\AbstractWidgetFactory\\:\\:createDefinition\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" + message: "#^Parameter \\#2 \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:getServiceId\\(\\) expects string, Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/AbstractWidgetFactory.php - - message: "#^Parameter \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\AbstractWidgetFactory\\:\\:createDefinition\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" + message: "#^Parameter \\#3 \\$order of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:getServiceId\\(\\) expects float, Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/AbstractWidgetFactory.php - - message: "#^Parameter \\$order of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:createDefinition\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/WidgetFactoryInterface.php - - - - message: "#^Parameter \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/WidgetFactoryInterface.php - - - - message: "#^Parameter \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:createDefinition\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/WidgetFactoryInterface.php - - - - message: "#^PHPDoc tag @param for parameter \\$factory with type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\WidgetFactoryInterface is not subtype of native type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/HasWidgetFactoriesExtensionInterface.php - - - - message: "#^Parameter \\$factory of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\HasWidgetFactoriesExtensionInterface\\:\\:addWidgetFactory\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\WidgetFactoryInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/HasWidgetFactoriesExtensionInterface.php - - - - message: "#^Instanceof between DateTime and DateTime will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Address.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\Address\\:\\:\\$validTo \\(DateTime\\|null\\) does not accept DateTimeInterface\\|null\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Address.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Entity\\\\AddressReference\\:\\:setPostcode\\(\\) should return Chill\\\\MainBundle\\\\Entity\\\\Address but returns \\$this\\(Chill\\\\MainBundle\\\\Entity\\\\AddressReference\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/AddressReference.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\AddressReference\\:\\:\\$addressCanonical is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/AddressReference.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\GeographicalUnit\\:\\:\\$geom is unused\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/GeographicalUnit.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\GeographicalUnit\\:\\:\\$unitRefId is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/GeographicalUnit.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Entity\\\\Language\\:\\:getName\\(\\) should return string but returns array\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Language.php - - - - message: "#^PHPDoc tag @param has invalid value \\(string array \\$name\\)\\: Unexpected token \"array\", expected variable at offset 49$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Language.php - - - - message: "#^PHPDoc tag @var for property Chill\\\\MainBundle\\\\Entity\\\\Language\\:\\:\\$name with type string is incompatible with native type array\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Language.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\Location\\:\\:\\$createdAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\|null\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Location.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\Location\\:\\:\\$updatedAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\|null\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Location.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\Notification\\:\\:\\$updatedAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Notification.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\NotificationComment\\:\\:\\$createdAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/NotificationComment.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\NotificationComment\\:\\:\\$updateAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/NotificationComment.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\PermissionsGroup\\:\\:\\$groupCenters is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/PermissionsGroup.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\PostalCode\\:\\:\\$canonical is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/PostalCode.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\PostalCode\\:\\:\\$deletedAt is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/PostalCode.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\RoleScope\\:\\:\\$permissionsGroups is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/RoleScope.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and array will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/User.php - - - - message: "#^Call to an undefined method Traversable\\<\\(int\\|string\\), mixed\\>\\:\\:current\\(\\)\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflow.php - - - - message: "#^Call to an undefined method Traversable\\<\\(int\\|string\\), mixed\\>\\:\\:next\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflow.php - - - - message: "#^Call to an undefined method Traversable\\<\\(int\\|string\\), mixed\\>\\:\\:rewind\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflow.php - - - - message: "#^Call to an undefined method Traversable\\<\\(int\\|string\\), mixed\\>\\:\\:valid\\(\\)\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflow.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflowStep.php - - - - message: "#^Call to an undefined method Chill\\\\MainBundle\\\\Export\\\\ExportElementInterface\\:\\:requiredRole\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/ExportManager.php - - - - message: "#^Call to function is_iterable\\(\\) with array will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/ExportManager.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and array\\|string will always evaluate to false\\.$#" + message: "#^Parameter \\#2 \\$nbAggregators of method Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\CSVFormatter\\:\\:appendAggregatorForm\\(\\) expects string, int\\<0, max\\> given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Export/Formatter/CSVFormatter.php - - message: "#^Variable \\$data in PHPDoc tag @var does not match assigned variable \\$contentData\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/CSVFormatter.php - - - - message: "#^Parameter \\#2 \\$exportAlias \\(Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\) of method Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\CSVListFormatter\\:\\:buildForm\\(\\) should be compatible with parameter \\$exportAlias \\(string\\) of method Chill\\\\MainBundle\\\\Export\\\\FormatterInterface\\:\\:buildForm\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/CSVListFormatter.php - - - - message: "#^Parameter \\$exportAlias of method Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\CSVListFormatter\\:\\:buildForm\\(\\) has invalid type Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/CSVListFormatter.php - - - - message: "#^Parameter \\#2 \\$exportAlias \\(Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\) of method Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\CSVPivotedListFormatter\\:\\:buildForm\\(\\) should be compatible with parameter \\$exportAlias \\(string\\) of method Chill\\\\MainBundle\\\\Export\\\\FormatterInterface\\:\\:buildForm\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/CSVPivotedListFormatter.php - - - - message: "#^Parameter \\$exportAlias of method Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\CSVPivotedListFormatter\\:\\:buildForm\\(\\) has invalid type Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/CSVPivotedListFormatter.php - - - - message: "#^Access to offset 'format' on an unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\.$#" + message: "#^Parameter \\#2 \\$array of function array_map expects array, Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php - - message: "#^Access to offset mixed on an unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\.$#" + message: "#^Parameter \\#1 \\$callback of function call_user_func expects callable\\(\\)\\: mixed, null given\\.$#" count: 2 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + path: src/Bundle/ChillMainBundle/Form/ChoiceLoader/PostalCodeChoiceLoader.php - - message: "#^Iterating over an object of an unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\.$#" - count: 3 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$aggregatorsData \\(Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\) does not accept array\\.$#" + message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Embeddable\\\\PrivateCommentEmbeddable\\:\\:getCommentForUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + path: src/Bundle/ChillMainBundle/Form/DataMapper/PrivateCommentDataMapper.php - - message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$aggregatorsData has unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type as its type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$formatterData \\(Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\) does not accept array\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$formatterData has unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type as its type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$result \\(Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\) does not accept array\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$result has unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type as its type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php - - - - message: "#^Instanceof between string and DateTimeInterface will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadsheetListFormatter.php - - - - message: "#^PHPDoc tag @var for property Chill\\\\MainBundle\\\\Export\\\\Helper\\\\ExportAddressHelper\\:\\:\\$unitNamesKeysCache contains unresolvable type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Helper/ExportAddressHelper.php - - - - message: "#^PHPDoc tag @var for property Chill\\\\MainBundle\\\\Export\\\\Helper\\\\ExportAddressHelper\\:\\:\\$unitNamesKeysCache with type mixed is not subtype of native type array\\|null\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Helper/ExportAddressHelper.php - - - - message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\Address and Chill\\\\MainBundle\\\\Entity\\\\Address will always evaluate to true\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Form/DataMapper/AddressDataMapper.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\Address will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/DataMapper/AddressDataMapper.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Form/DataTransformer/IdToEntityDataTransformer.php - - - - message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/LocationFormType.php - - - - message: "#^Parameter \\$resolver of method Chill\\\\MainBundle\\\\Form\\\\LocationFormType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/LocationFormType.php - - - - message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/PermissionsGroupType.php - - - - message: "#^Parameter \\$resolver of method Chill\\\\MainBundle\\\\Form\\\\PermissionsGroupType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/PermissionsGroupType.php - - - - message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/ScopeType.php - - - - message: "#^Parameter \\$resolver of method Chill\\\\MainBundle\\\\Form\\\\ScopeType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/ScopeType.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Form\\\\Type\\\\ChillPhoneNumberType\\:\\:\\$phoneNumberUtil is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/Type/ChillPhoneNumberType.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\:\\:getId\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/Type/CommentType.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and array\\\\|Chill\\\\MainBundle\\\\Entity\\\\User will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/Type/DataTransformer/EntityToJsonTransformer.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/Type/DataTransformer/ObjectToIdTransformer.php - - - - message: "#^Call to function is_int\\(\\) with int will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/Type/DataTransformer/PostalCodeToIdTransformer.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Form\\\\Type\\\\Select2CountryType\\:\\:\\$requestStack is never read, only written\\.$#" + message: "#^Parameter \\#1 \\$em of class Chill\\\\MainBundle\\\\Form\\\\Type\\\\DataTransformer\\\\ObjectToIdTransformer constructor expects Doctrine\\\\ORM\\\\EntityManagerInterface, Doctrine\\\\Persistence\\\\ObjectManager given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Form/Type/Select2CountryType.php - - message: "#^Call to an undefined method Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\:\\:replaceDefaults\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/Type/Select2EntityType.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Form\\\\Type\\\\Select2LanguageType\\:\\:\\$requestStack is never read, only written\\.$#" + message: "#^Parameter \\#1 \\$em of class Chill\\\\MainBundle\\\\Form\\\\Type\\\\DataTransformer\\\\MultipleObjectsToIdTransformer constructor expects Doctrine\\\\ORM\\\\EntityManagerInterface, Doctrine\\\\Persistence\\\\ObjectManager given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Form/Type/Select2LanguageType.php - - message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" + message: "#^Parameter \\#1 \\$translatableStrings of method Chill\\\\MainBundle\\\\Templating\\\\TranslatableStringHelper\\:\\:localize\\(\\) expects array, string given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Form/UserType.php + path: src/Bundle/ChillMainBundle/Form/Type/Select2LanguageType.php - - message: "#^Parameter \\$resolver of method Chill\\\\MainBundle\\\\Form\\\\UserType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/UserType.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Notification\\\\Email\\\\NotificationMailer\\:\\:\\$translator is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Notification/Email/NotificationMailer.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Notification\\\\NotificationHandlerManager\\:\\:\\$em is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Notification/NotificationHandlerManager.php - - - - message: "#^Strict comparison using \\=\\=\\= between 0 and float will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Pagination/Paginator.php - - - - message: "#^PHPDoc tag @param for parameter \\$phoneNumber with type string is incompatible with native type libphonenumber\\\\PhoneNumber\\|null\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Phonenumber/PhonenumberHelper.php - - - - message: "#^Expression on left side of \\?\\? is not nullable\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Phonenumber/Templating.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Repository\\\\GeographicalUnitRepository\\:\\:findBy\\(\\) should return Chill\\\\MainBundle\\\\Entity\\\\GeographicalUnit\\|null but returns array\\\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Repository/GeographicalUnitRepository.php - - - - message: "#^Return type \\(Chill\\\\MainBundle\\\\Entity\\\\GeographicalUnit\\|null\\) of method Chill\\\\MainBundle\\\\Repository\\\\GeographicalUnitRepository\\:\\:findBy\\(\\) should be compatible with return type \\(array\\\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" - count: 2 - path: src/Bundle/ChillMainBundle/Repository/GeographicalUnitRepository.php - - - - message: "#^The @implements tag of class Chill\\\\MainBundle\\\\Repository\\\\SavedExportRepository describes Doctrine\\\\Persistence\\\\ObjectRepository but the class implements\\: Chill\\\\MainBundle\\\\Repository\\\\SavedExportRepositoryInterface$#" - count: 1 - path: src/Bundle/ChillMainBundle/Repository/SavedExportRepository.php - - - - message: "#^Interface Chill\\\\MainBundle\\\\Repository\\\\SavedExportRepositoryInterface has @implements tag, but can not implement any interface, must extend from it\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Repository/SavedExportRepositoryInterface.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Routing\\\\MenuComposer\\:\\:\\$routeCollection is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Routing/MenuComposer.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Routing\\\\MenuTwig\\:\\:\\$container is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Routing/MenuTwig.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Search\\\\SearchApiNoQueryException\\:\\:\\$parameters is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Search/SearchApiNoQueryException.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Search\\\\SearchApiNoQueryException\\:\\:\\$pattern is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Search/SearchApiNoQueryException.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Search\\\\SearchApiNoQueryException\\:\\:\\$types is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Search/SearchApiNoQueryException.php - - - - message: "#^Else branch is unreachable because previous condition is always true\\.$#" + message: "#^Parameter \\#2 \\$subject of function preg_match_all expects string, Chill\\\\MainBundle\\\\Search\\\\type given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Search/SearchProvider.php - - message: "#^If condition is always true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Search/SearchProvider.php - - - - message: "#^Parameter \\$subject of method Chill\\\\MainBundle\\\\Search\\\\SearchProvider\\:\\:extractDomain\\(\\) has invalid type Chill\\\\MainBundle\\\\Search\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Search/SearchProvider.php - - - - message: "#^Strict comparison using \\!\\=\\= between null and string will always evaluate to true\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Search/SearchProvider.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\:\\:getGroupCenters\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php - - - - message: "#^Empty array passed to foreach\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php - - - - message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\AuthorizationHelper\\:\\:userHasAccessForCenter\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Workflow\\\\EntityWorkflowHandlerInterface\\:\\:getDeletionRoles\\(\\) invoked with 1 parameter, 0 required\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Authorization/WorkflowEntityDeletionVoter.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and array\\\\|Chill\\\\MainBundle\\\\Entity\\\\Center will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Resolver/CenterResolverManager.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Resolver/CenterResolverManager.php - - - - message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\HasCenterInterface and Chill\\\\MainBundle\\\\Entity\\\\HasCenterInterface will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Resolver/DefaultCenterResolver.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Resolver/DefaultCenterResolver.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Resolver/DefaultScopeResolver.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\ResolverTwigExtension\\:\\:resolveCenter\\(\\) has invalid return type Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\Center\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Security/Resolver/ResolverTwigExtension.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\ResolverTwigExtension\\:\\:resolveCenter\\(\\) should return array\\\\|Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\Center\\|null but returns array\\\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Resolver/ResolverTwigExtension.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\ScopeResolverDispatcher\\:\\:resolveScope\\(\\) invoked with 0 parameters, 1\\-2 required\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Resolver/ResolverTwigExtension.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Security\\\\RoleProvider\\:\\:getRoleTitle\\(\\) should return string but returns null\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/RoleProvider.php - - - - message: "#^Constant Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\AddressNormalizer\\:\\:NULL_POSTCODE_COUNTRY is unused\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php - - - - message: "#^Constant Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\AddressNormalizer\\:\\:NULL_VALUE is unused\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php - - - - message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\Address and Chill\\\\MainBundle\\\\Entity\\\\Address will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\Embeddable\\\\CommentEmbeddable will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/CommentEmbeddableDocGenNormalizer.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\DateNormalizer\\:\\:normalize\\(\\) should return array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|null but return statement is missing\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DateNormalizer.php - - - - message: "#^Instanceof between Doctrine\\\\ORM\\\\Mapping\\\\ClassMetadata\\ and Doctrine\\\\ORM\\\\Mapping\\\\ClassMetadata will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DoctrineExistingEntityNormalizer.php - - - - message: "#^Strict comparison using \\=\\=\\= between false and true will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DoctrineExistingEntityNormalizer.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\NotificationNormalizer\\:\\:\\$notificationHandlerManager is never read, only written\\.$#" + message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Notification\\:\\:isReadBy\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Serializer/Normalizer/NotificationNormalizer.php - - message: "#^Result of && is always false\\.$#" + message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Embeddable\\\\PrivateCommentEmbeddable\\:\\:setCommentForUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/UserNormalizer.php + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/PrivateCommentEmbeddableNormalizer.php - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\User will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/UserNormalizer.php - - - - message: "#^Call to function is_int\\(\\) with int will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Service/Import/AddressReferenceFromBano.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Mime\\\\RawMessage\\:\\:getSubject\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Service/Mailer/ChillMailer.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Mime\\\\RawMessage\\:\\:getTo\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Service/Mailer/ChillMailer.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Templating\\\\CSVCellTwig\\:\\:getName\\(\\) has invalid return type Chill\\\\MainBundle\\\\Templating\\\\The\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Templating/CSVCellTwig.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Templating\\\\CSVCellTwig\\:\\:getName\\(\\) should return Chill\\\\MainBundle\\\\Templating\\\\The but returns string\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Templating/CSVCellTwig.php - - - - message: "#^Instanceof between string and DateTimeInterface will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Templating/ChillTwigHelper.php - - - - message: "#^Call to an undefined method Symfony\\\\Contracts\\\\Translation\\\\TranslatorInterface\\:\\:getFallbackLocales\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Templating/TranslatableStringHelper.php - - - - message: "#^Strict comparison using \\=\\=\\= between array\\{\\} and non\\-empty\\-array\\ will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Templating/TranslatableStringHelper.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Templating\\\\TranslatableStringTwig\\:\\:getName\\(\\) has invalid return type Chill\\\\MainBundle\\\\Templating\\\\The\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Templating/TranslatableStringTwig.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Templating\\\\TranslatableStringTwig\\:\\:getName\\(\\) should return Chill\\\\MainBundle\\\\Templating\\\\The but returns string\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Templating/TranslatableStringTwig.php - - - - message: "#^Call to method render\\(\\) on an unknown class Chill\\\\MainBundle\\\\Templating\\\\Widget\\\\Widget\\\\WidgetInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Templating/Widget/WidgetRenderingTwig.php - - - - message: "#^PHPDoc tag @var for variable \\$widget contains unknown class Chill\\\\MainBundle\\\\Templating\\\\Widget\\\\Widget\\\\WidgetInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Templating/Widget/WidgetRenderingTwig.php - - - - message: "#^Parameter \\$context of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineBuilder\\:\\:countItems\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\unknown\\.$#" + message: "#^Parameter \\#1 \\$context of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineBuilder\\:\\:buildUnionQuery\\(\\) expects string, Chill\\\\MainBundle\\\\Timeline\\\\unknown given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Timeline/TimelineBuilder.php - - message: "#^Unreachable statement \\- code above always terminates\\.$#" + message: "#^Parameter \\#2 \\$context of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineProviderInterface\\:\\:getEntityTemplate\\(\\) expects Chill\\\\MainBundle\\\\Timeline\\\\type, string given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Timeline/TimelineBuilder.php - - message: "#^Parameter \\$context of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineProviderInterface\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Timeline/TimelineProviderInterface.php - - - - message: "#^Parameter \\$entity of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineProviderInterface\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Timeline/TimelineProviderInterface.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Util\\\\DateRangeCovering\\:\\:\\$intervals is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Util/DateRangeCovering.php - - - - message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$messageDuplicateEmail\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Validation/Validator/UserUniqueEmailAndUsername.php - - - - message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$messageDuplicateUsername\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Validation/Validator/UserUniqueEmailAndUsername.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" + message: "#^Parameter \\#1 \\$phoneNumber of method Chill\\\\MainBundle\\\\Phonenumber\\\\PhoneNumberHelperInterface\\:\\:format\\(\\) expects libphonenumber\\\\PhoneNumber\\|null, string given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Validation/Validator/ValidPhonenumber.php - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\User will always evaluate to false\\.$#" + message: "#^Parameter \\#1 \\$transitionBy of method Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflowStep\\:\\:setTransitionBy\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User\\|null, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Validator/Constraints/Entity/UserCircleConsistencyValidator.php + path: src/Bundle/ChillMainBundle/Workflow/EventSubscriber/EntityWorkflowTransitionEventSubscriber.php - - message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$element\\.$#" + message: "#^Parameter \\#1 \\$user of method Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluationRepository\\:\\:countNearMaxDateByUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Validator/Constraints/Export/ExportElementConstraintValidator.php + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodWorkEvaluationApiController.php - - message: "#^Property Chill\\\\MainBundle\\\\Workflow\\\\Templating\\\\WorkflowTwigExtensionRuntime\\:\\:\\$entityWorkflowManager is never read, only written\\.$#" + message: "#^Parameter \\#1 \\$user of method Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluationRepository\\:\\:findNearMaxDateByUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Workflow/Templating/WorkflowTwigExtensionRuntime.php + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodWorkEvaluationApiController.php - - message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow and Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow will always evaluate to true\\.$#" + message: "#^Parameter \\#1 \\$object of static method DateTimeImmutable\\:\\:createFromMutable\\(\\) expects DateTime, DateTimeInterface given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Workflow/Validator/EntityWorkflowCreationValidator.php + path: src/Bundle/ChillPersonBundle/Controller/HouseholdApiController.php - - message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflowStep and Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflowStep will always evaluate to true\\.$#" + message: "#^Parameter \\#2 \\$previous of class Symfony\\\\Component\\\\HttpKernel\\\\Exception\\\\BadRequestHttpException constructor expects Throwable\\|null, int given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Workflow/Validator/StepDestValidValidator.php - - - - message: "#^PHPDoc tag @param for parameter \\$postSql with type Chill\\\\PersonBundle\\\\Actions\\\\type is incompatible with native type string\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Actions/ActionEvent.php - - - - message: "#^Parameter \\$postSql of method Chill\\\\PersonBundle\\\\Actions\\\\ActionEvent\\:\\:addPostSql\\(\\) has invalid type Chill\\\\PersonBundle\\\\Actions\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Actions/ActionEvent.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\PersonMove\\:\\:getSQL\\(\\) has invalid return type Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Actions/Remove/PersonMove.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\PersonMove\\:\\:getSQL\\(\\) should return Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\type but returns array\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Actions/Remove/PersonMove.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\EntityPersonCRUDController\\:\\:filterQueryEntitiesByPerson\\(\\) has invalid return type Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\QueryBuilder\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php - - - - message: "#^PHPDoc tag @param for parameter \\$qb with type Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\QueryBuilder is not subtype of native type Doctrine\\\\ORM\\\\QueryBuilder\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php - - - - message: "#^PHPDoc tag @return with type Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\QueryBuilder is not subtype of native type Doctrine\\\\ORM\\\\QueryBuilder\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php - - - - message: "#^PHPDoc tag @throws with type Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\Symfony\\\\Component\\\\HttpKernel\\\\Exception\\\\NotFoundHttpException is not subtype of Throwable$#" - count: 1 - path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php - - - - message: "#^Parameter \\$action of method Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\EntityPersonCRUDController\\:\\:createEntity\\(\\) has invalid type Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\string\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php - - - - message: "#^Parameter \\$qb of method Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\EntityPersonCRUDController\\:\\:filterQueryEntitiesByPerson\\(\\) has invalid type Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\QueryBuilder\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\DependencyInjection\\\\Extension\\\\ExtensionInterface\\:\\:addWidgetFactory\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/ChillPersonBundle.php - - - - message: "#^Iterating over an object of an unknown class Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\type\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Command/ChillPersonMoveCommand.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Controller\\\\AccompanyingCourseApiController\\:\\:\\$accompanyingPeriodACLAwareRepository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseApiController.php - - - - message: "#^Variable \\$accompanyingPeriod in PHPDoc tag @var does not match assigned variable \\$action\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseApiController.php - - - - message: "#^Strict comparison using \\!\\=\\= between null and Doctrine\\\\Common\\\\Collections\\\\Collection will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseController.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Serializer\\\\SerializerInterface\\:\\:normalize\\(\\)\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseWorkController.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseWorkController.php - - - - message: "#^Call to an undefined method Psr\\\\Container\\\\ContainerInterface\\:\\:getParameter\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodController.php - - - - message: "#^Method Symfony\\\\Component\\\\Form\\\\FormInterface\\:\\:isValid\\(\\) invoked with 1 parameter, 0 required\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodController.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod will always evaluate to false\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\HttpFoundation\\\\Session\\\\SessionInterface\\:\\:getFlashBag\\(\\)\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Controller/HouseholdCompositionController.php - - - - message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:initialize\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/HouseholdController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Serializer\\\\SerializerInterface\\:\\:normalize\\(\\)\\.$#" - count: 3 path: src/Bundle/ChillPersonBundle/Controller/HouseholdMemberController.php - - message: "#^Elseif condition is always true\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Controller/PersonAddressController.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Controller\\\\PersonAddressController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + message: "#^Parameter \\#3 \\$code of class Symfony\\\\Component\\\\HttpKernel\\\\Exception\\\\BadRequestHttpException constructor expects int, Symfony\\\\Component\\\\Serializer\\\\Exception\\\\InvalidArgumentException\\|Symfony\\\\Component\\\\Serializer\\\\Exception\\\\UnexpectedValueException given\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Controller/PersonAddressController.php + path: src/Bundle/ChillPersonBundle/Controller/HouseholdMemberController.php - - message: "#^Method Chill\\\\PersonBundle\\\\Controller\\\\PersonAddressController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/PersonAddressController.php - - - - message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findOneByEntity\\(\\)\\.$#" + message: "#^Parameter \\#1 \\$form of method Chill\\\\PersonBundle\\\\Controller\\\\PersonController\\:\\:isLastPostDataChanges\\(\\) expects Symfony\\\\Component\\\\Form\\\\Form, Symfony\\\\Component\\\\Form\\\\FormInterface given\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Controller/PersonController.php - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Form\\\\FormInterface\\:\\:isClicked\\(\\)\\.$#" - count: 3 - path: src/Bundle/ChillPersonBundle/Controller/PersonController.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Controller\\\\PersonController\\:\\:_validatePersonAndAccompanyingPeriod\\(\\) is unused\\.$#" + message: "#^Parameter \\#1 \\$context of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineBuilder\\:\\:countItems\\(\\) expects Chill\\\\MainBundle\\\\Timeline\\\\unknown, string given\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Controller/PersonController.php + path: src/Bundle/ChillPersonBundle/Controller/TimelinePersonController.php - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\Person will always evaluate to false\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Controller/PersonController.php - - - - message: "#^Access to an undefined property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$counters\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:countByParameters\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php - - - - message: "#^Cannot access property \\$getId on null\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php - - - - message: "#^Iterating over an object of an unknown class Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Controller\\\\PersonDuplicateController\\:\\:_getCounters\\(\\) never returns null so it can be removed from the return type\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php - - - - message: "#^Call to function is_int\\(\\) with int will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/ReassignAccompanyingPeriodController.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Controller\\\\ReassignAccompanyingPeriodController\\:\\:\\$userRender is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/ReassignAccompanyingPeriodController.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Controller\\\\SocialWorkGoalApiController\\:\\:\\$paginator is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/SocialWorkGoalApiController.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/DataFixtures/ORM/LoadAccompanyingPeriodNotifications.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:canBeDisabled\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/DependencyInjection/Configuration.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:values\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/DependencyInjection/Configuration.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Doctrine\\\\DQL\\\\AddressPart\\:\\:\\$part is unused\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Doctrine/DQL/AddressPart.php - - - - message: "#^Result of method Doctrine\\\\ORM\\\\Query\\\\Parser\\:\\:match\\(\\) \\(void\\) is used\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Doctrine/DQL/AddressPart.php - - - - message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" + message: "#^Parameter \\#1 \\$period of method Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodLocationHistory\\:\\:setPeriod\\(\\) expects Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod, null given\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection\\:\\:matching\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\:\\:getRecursiveSocialActions\\(\\) has invalid return type Chill\\\\PersonBundle\\\\Entity\\\\SocialAction\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\:\\:getRecursiveSocialIssues\\(\\) has invalid return type Chill\\\\PersonBundle\\\\Entity\\\\SocialIssues\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - - - message: "#^Negated boolean expression is always true\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - - - message: "#^PHPDoc tag @return with type array\\ is incompatible with native type Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - - - message: "#^PHPDoc tag @return with type iterable is not subtype of native type Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\:\\:\\$updatedAt is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\:\\:\\$updatedBy is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodStepHistory will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\:\\:\\$createdAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWork.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\:\\:\\$endDate \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\|null\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWork.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\:\\:\\$startDate \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWork.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\:\\:\\$updatedAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWork.php - - - - message: "#^PHPDoc tag @param for parameter \\$createdAt with type DateTimeImmutable\\|null is not subtype of native type DateTimeInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWorkEvaluation.php - - - - message: "#^PHPDoc tag @param for parameter \\$updatedAt with type DateTimeImmutable\\|null is not subtype of native type DateTimeInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWorkEvaluation.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluation\\:\\:\\$createdAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWorkEvaluation.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluation\\:\\:\\$updatedAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWorkEvaluation.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriodParticipation\\:\\:checkSameStartEnd\\(\\) is unused\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriodParticipation.php - - - - message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" - count: 3 - path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php - - - - message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection\\:\\:matching\\(\\)\\.$#" - count: 4 - path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php - - - - message: "#^Call to an undefined method Traversable\\<\\(int\\|string\\), mixed\\>\\:\\:uasort\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php - - - - message: "#^PHPDoc tag @return with type array\\ is incompatible with native type Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php - - - - message: "#^Strict comparison using \\!\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\HouseholdMember will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and int will always evaluate to false\\.$#" + message: "#^Parameter \\#1 \\$now of method Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\Household\\:\\:getCurrentMembers\\(\\) expects DateTimeImmutable\\|null, DateTimeInterface\\|null given\\.$#" count: 2 path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\PersonHouseholdAddress\\:\\:\\$validFrom is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Household/PersonHouseholdAddress.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\PersonHouseholdAddress\\:\\:\\$validTo is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Household/PersonHouseholdAddress.php - - - - message: "#^PHPDoc tag @param has invalid value \\(string array \\$name\\)\\: Unexpected token \"array\", expected variable at offset 49$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/MaritalStatus.php - - - - message: "#^PHPDoc tag @return with type string is incompatible with native type array\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/MaritalStatus.php - - - - message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" - count: 3 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection\\:\\:matching\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Negated boolean expression is always true\\.$#" - count: 3 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^PHPDoc tag @return with type array\\ is incompatible with native type Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$center is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$currentHouseholdAt is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$deathdate \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\|null\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$maritalStatusDate \\(DateTime\\|null\\) does not accept DateTimeInterface\\|null\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$periodLocatedOn is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$proxyAccompanyingPeriodOpenState is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Strict comparison using \\=\\=\\= between true and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriodParticipation\\|null will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\SocialWork\\\\Result\\:\\:\\$desactivationDate \\(DateTime\\|null\\) does not accept DateTimeInterface\\|null\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/SocialWork/Result.php - - - - message: "#^If condition is always false\\.$#" + message: "#^Parameter \\#1 \\$now of method Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\Household\\:\\:getNonCurrentMembers\\(\\) expects DateTimeImmutable\\|null, DateTimeInterface\\|null given\\.$#" count: 2 - path: src/Bundle/ChillPersonBundle/Entity/SocialWork/SocialAction.php + path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php - - message: "#^Negated boolean expression is always true\\.$#" + message: "#^Parameter \\#1 \\$translatableStrings of method Chill\\\\MainBundle\\\\Templating\\\\TranslatableStringHelper\\:\\:localize\\(\\) expects array, string given\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Export/Helper/ListPersonHelper.php + + - + message: "#^Parameter \\#1 \\$callback of function call_user_func expects callable\\(\\)\\: mixed, null given\\.$#" count: 2 - path: src/Bundle/ChillPersonBundle/Entity/SocialWork/SocialAction.php + path: src/Bundle/ChillPersonBundle/Form/ChoiceLoader/PersonChoiceLoader.php - - message: "#^If condition is always false\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Entity/SocialWork/SocialIssue.php - - - - message: "#^Negated boolean expression is always true\\.$#" - count: 4 - path: src/Bundle/ChillPersonBundle/Entity/SocialWork/SocialIssue.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Export\\\\Aggregator\\\\AccompanyingCourseAggregators\\\\DurationAggregator\\:\\:\\$translator is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/DurationAggregator.php - - - - message: "#^Call to method extractOtherValue\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php - - - - message: "#^Call to method getChoices\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php - - - - message: "#^Call to method isChecked\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php - - - - message: "#^Call to method isMultiple\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php - - - - message: "#^Call to method render\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Export\\\\Filter\\\\AccompanyingCourseFilters\\\\AdministrativeLocationFilter\\:\\:\\$translatableStringHelper is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/AdministrativeLocationFilter.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Export\\\\Filter\\\\SocialWorkFilters\\\\SocialWorkTypeFilter\\:\\:\\$socialActionRender is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Export/Filter/SocialWorkFilters/SocialWorkTypeFilter.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Form\\\\PersonResourceType\\:\\:\\$personRender is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Form/PersonResourceType.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Form\\\\PersonResourceType\\:\\:\\$thirdPartyRender is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Form/PersonResourceType.php - - - - message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\PersonBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Form/PersonType.php - - - - message: "#^Parameter \\$resolver of method Chill\\\\PersonBundle\\\\Form\\\\PersonType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\PersonBundle\\\\Form\\\\OptionsResolverInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Form/PersonType.php - - - - message: "#^Strict comparison using \\=\\=\\= between 'create' and 'create' will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Form/SocialWork/SocialIssueType.php - - - - message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Household/MembersEditor.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkGoalRepository\\:\\:\\$repository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/AccompanyingPeriodWorkGoalRepository.php - - - - message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\:\\:countByAccompanyingPeriod\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/AccompanyingPeriodWorkRepository.php - - - - message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\:\\:findByAccompanyingPeriod\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/AccompanyingPeriodWorkRepository.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\CommentRepository\\:\\:\\$repository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/CommentRepository.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\OriginRepository\\:\\:\\$repository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/OriginRepository.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriodParticipationRepository\\:\\:\\$repository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriodParticipationRepository.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\HouseholdMembersRepository\\:\\:\\$repository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/Household/HouseholdMembersRepository.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\PositionRepository\\:\\:findOneBy\\(\\) should return array\\ but returns object\\|null\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/Household/PositionRepository.php - - - - message: "#^Return type \\(array\\\\) of method Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\PositionRepository\\:\\:findOneBy\\(\\) should be compatible with return type \\(object\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findOneBy\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/Household/PositionRepository.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\PersonACLAwareRepository\\:\\:\\$countryRepository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/PersonACLAwareRepository.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\PersonAltNameRepository\\:\\:\\$repository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/PersonAltNameRepository.php - - - - message: "#^PHPDoc tag @return with type array\\\\|null is not subtype of native type array\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/ResidentialAddressRepository.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Search\\\\SearchHouseholdApiProvider\\:\\:\\$authorizationHelper is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Search/SearchHouseholdApiProvider.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Search\\\\SearchHouseholdApiProvider\\:\\:\\$security is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Search/SearchHouseholdApiProvider.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Search\\\\SearchPersonApiProvider\\:\\:\\$authorizationHelper is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Search/SearchPersonApiProvider.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Search\\\\SearchPersonApiProvider\\:\\:\\$security is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Search/SearchPersonApiProvider.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Security\\\\Authorization\\\\AccompanyingPeriodVoter\\:\\:\\$security is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodVoter.php - - - - message: "#^PHPDoc tag @return with type bool\\|void is not subtype of native type bool\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkEvaluationDocumentVoter.php - - - - message: "#^Elseif branch is unreachable because previous condition is always true\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkVoter.php - - - - message: "#^Instanceof between \\*NEVER\\* and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkVoter.php - - - - message: "#^Instanceof between Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkVoter.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Security\\\\Authorization\\\\AccompanyingPeriodWorkVoter\\:\\:\\$voterHelper is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkVoter.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkVoter.php - - - - message: "#^Constant Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodDocGenNormalizer\\:\\:IGNORE_FIRST_PASS_KEY is unused\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodDocGenNormalizer.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodDocGenNormalizer.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodParticipationNormalizer.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkDenormalizer\\:\\:\\$em is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkDenormalizer.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkDenormalizer\\:\\:\\$workRepository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkDenormalizer.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkEvaluationDocumentNormalizer\\:\\:\\$registry is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkEvaluationDocumentNormalizer.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkEvaluationNormalizer\\:\\:\\$registry is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkEvaluationNormalizer.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkNormalizer\\:\\:\\$registry is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkNormalizer.php - - - - message: "#^Call to function is_array\\(\\) with 'concerned' will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/MembersEditorNormalizer.php - - - - message: "#^Expression on left side of \\?\\? is not nullable\\.$#" - count: 3 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/MembersEditorNormalizer.php - - - - message: "#^Left side of && is always false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/MembersEditorNormalizer.php - - - - message: "#^Strict comparison using \\=\\=\\= between false and false will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/MembersEditorNormalizer.php - - - - message: "#^Instanceof between Chill\\\\PersonBundle\\\\Entity\\\\Person and Chill\\\\PersonBundle\\\\Entity\\\\Person will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonDocGenNormalizer.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\PersonDocGenNormalizer\\:\\:hasGroup\\(\\) is unused\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonDocGenNormalizer.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\Person will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonDocGenNormalizer.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\PersonJsonNormalizer\\:\\:\\$phoneNumberHelper is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonJsonNormalizer.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\Relationships\\\\Relationship will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/RelationshipDocGenNormalizer.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\SocialIssueNormalizer\\:\\:normalize\\(\\) should return array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|null but return statement is missing\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/SocialIssueNormalizer.php - - - - message: "#^PHPDoc tag @return with type array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|void\\|null is not subtype of native type array\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/WorkflowNormalizer.php - - - - message: "#^Call to an undefined method Chill\\\\DocStoreBundle\\\\Entity\\\\Document\\:\\:setCourse\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Service/DocGenerator/AccompanyingPeriodContext.php - - - - message: "#^Call to an undefined method Chill\\\\DocStoreBundle\\\\Entity\\\\Document\\:\\:setPerson\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Service/DocGenerator/PersonContext.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Service\\\\Import\\\\SocialWorkMetadata\\:\\:\\$socialActionRepository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Service/Import/SocialWorkMetadata.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Service\\\\Import\\\\SocialWorkMetadata\\:\\:\\$socialIssueRepository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Service/Import/SocialWorkMetadata.php - - - - message: "#^Call to method getId\\(\\) on an unknown class ChillPersonBundle\\:AccompanyingPeriod\\.$#" + message: "#^Parameter \\#1 \\$entityName of method Doctrine\\\\ORM\\\\EntityManager\\:\\:getRepository\\(\\) expects class\\-string\\, string given\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Timeline/AbstractTimelineAccompanyingPeriod.php - - message: "#^Cannot call method setKey\\(\\) on array\\.$#" + message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\AuthorizationHelper\\:\\:filterReachableCenters\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Timeline/AbstractTimelineAccompanyingPeriod.php + + - + message: "#^Parameter \\#3 \\$context of method Chill\\\\PersonBundle\\\\Timeline\\\\AbstractTimelineAccompanyingPeriod\\:\\:getBasicEntityTemplate\\(\\) expects string, Chill\\\\MainBundle\\\\Timeline\\\\type given\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodClosing.php - - message: "#^Parameter \\$context of method Chill\\\\PersonBundle\\\\Timeline\\\\TimelineAccompanyingPeriodClosing\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodClosing.php - - - - message: "#^Parameter \\$entity of method Chill\\\\PersonBundle\\\\Timeline\\\\TimelineAccompanyingPeriodClosing\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodClosing.php - - - - message: "#^Cannot call method setKey\\(\\) on array\\.$#" + message: "#^Parameter \\#3 \\$context of method Chill\\\\PersonBundle\\\\Timeline\\\\AbstractTimelineAccompanyingPeriod\\:\\:getBasicEntityTemplate\\(\\) expects string, Chill\\\\MainBundle\\\\Timeline\\\\type given\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodOpening.php - - message: "#^Parameter \\$context of method Chill\\\\PersonBundle\\\\Timeline\\\\TimelineAccompanyingPeriodOpening\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodOpening.php - - - - message: "#^Parameter \\$entity of method Chill\\\\PersonBundle\\\\Timeline\\\\TimelineAccompanyingPeriodOpening\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodOpening.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Validator\\\\Constraints\\\\AccompanyingPeriod\\\\AccompanyingPeriodValidityValidator\\:\\:\\$token is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Validator/Constraints/AccompanyingPeriod/AccompanyingPeriodValidityValidator.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Validator\\\\Constraints\\\\AccompanyingPeriod\\\\ParticipationOverlapValidator\\:\\:\\$thirdpartyRender is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Validator/Constraints/AccompanyingPeriod/ParticipationOverlapValidator.php - - - - message: "#^Strict comparison using \\=\\=\\= between 0 and int\\<2, max\\> will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Validator/Constraints/AccompanyingPeriod/ParticipationOverlapValidator.php - - - - message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$message\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Validator/Constraints/Household/HouseholdMembershipSequentialValidator.php - - - - message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$message\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Validator/Constraints/Household/MaxHolderValidator.php - - - - message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$messageInfinity\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Validator/Constraints/Household/MaxHolderValidator.php - - - - message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$message\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Validator/Constraints/Person/PersonHasCenterValidator.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeParentInterface\\:\\:info\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Widget/PersonListWidgetFactory.php - - - - message: "#^Parameter \\$place of method Chill\\\\PersonBundle\\\\Widget\\\\PersonListWidgetFactory\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Widget/PersonListWidgetFactory.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQuery\\(\\)\\.$#" - count: 2 + message: "#^Parameter \\#1 \\$className of method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:getRepository\\(\\) expects class\\-string\\, string given\\.$#" + count: 4 path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findByCFGroup\\(\\)\\.$#" + message: "#^Parameter \\#1 \\$entity of method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createEditForm\\(\\) expects Chill\\\\ReportBundle\\\\Entity\\\\Report, ChillReportBundle\\:Report given\\.$#" count: 1 path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findByEntity\\(\\)\\.$#" - count: 2 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Call to method getId\\(\\) on an unknown class ChillReportBundle\\:Report\\.$#" - count: 2 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Call to method getPerson\\(\\) on an unknown class ChillReportBundle\\:Report\\.$#" - count: 3 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" + message: "#^Parameter \\#1 \\$em of class Chill\\\\MainBundle\\\\Form\\\\Type\\\\DataTransformer\\\\ScopeTransformer constructor expects Doctrine\\\\ORM\\\\EntityManagerInterface, Doctrine\\\\Persistence\\\\ObjectManager given\\.$#" count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php + path: src/Bundle/ChillReportBundle/Form/ReportType.php - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:editAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:editAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:exportAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\A\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:exportAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\A but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:listAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:listAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:newAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:newAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" - count: 2 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeForExportAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeForExportAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" - count: 2 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeForExportAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:updateAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:updateAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:updateAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:viewAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:viewAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Negated boolean expression is always false\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^PHPDoc tag @param for parameter \\$scope with type string is incompatible with native type Chill\\\\MainBundle\\\\Entity\\\\Scope\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Entity/Report.php - - - - message: "#^Call to method extractOtherValue\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Export/Export/ReportList.php - - - - message: "#^Call to method getChoices\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 2 - path: src/Bundle/ChillReportBundle/Export/Export/ReportList.php - - - - message: "#^Call to method isChecked\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 2 - path: src/Bundle/ChillReportBundle/Export/Export/ReportList.php - - - - message: "#^Call to method isMultiple\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 2 - path: src/Bundle/ChillReportBundle/Export/Export/ReportList.php - - - - message: "#^Call to method render\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Export/Export/ReportList.php - - - - message: "#^Call to method getId\\(\\) on an unknown class ChillReportBundle\\:Report\\.$#" + message: "#^Parameter \\#1 \\$context of method Chill\\\\ReportBundle\\\\Timeline\\\\TimelineReportProvider\\:\\:checkContext\\(\\) expects string, Chill\\\\MainBundle\\\\Timeline\\\\type given\\.$#" count: 1 path: src/Bundle/ChillReportBundle/Timeline/TimelineReportProvider.php - - message: "#^Parameter \\$context of method Chill\\\\ReportBundle\\\\Timeline\\\\TimelineReportProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + message: "#^Parameter \\#1 \\$entity of method Chill\\\\ReportBundle\\\\Timeline\\\\TimelineReportProvider\\:\\:getFieldsToRender\\(\\) expects Chill\\\\ReportBundle\\\\Entity\\\\Report, Chill\\\\MainBundle\\\\Timeline\\\\type given\\.$#" count: 1 path: src/Bundle/ChillReportBundle/Timeline/TimelineReportProvider.php - - message: "#^Parameter \\$entity of method Chill\\\\ReportBundle\\\\Timeline\\\\TimelineReportProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + message: "#^Parameter \\#1 \\$entityName of method Doctrine\\\\ORM\\\\EntityManager\\:\\:getRepository\\(\\) expects class\\-string\\, string given\\.$#" count: 1 path: src/Bundle/ChillReportBundle/Timeline/TimelineReportProvider.php - - message: "#^Property Chill\\\\TaskBundle\\\\Controller\\\\SingleTaskController\\:\\:\\$centerResolverDispatcher is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Controller/SingleTaskController.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and int will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Controller/SingleTaskController.php - - - - message: "#^If condition is always true\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Controller/TaskController.php - - - - message: "#^Property Chill\\\\TaskBundle\\\\Entity\\\\RecurringTask\\:\\:\\$singleTasks is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Entity/RecurringTask.php - - - - message: "#^Method Chill\\\\TaskBundle\\\\Entity\\\\SingleTask\\:\\:getWarningDate\\(\\) should return DateTimeImmutable but returns null\\.$#" - count: 2 - path: src/Bundle/ChillTaskBundle/Entity/SingleTask.php - - - - message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask\\:\\:getTaskPlaceEvents\\(\\)\\.$#" + message: "#^Parameter \\#1 \\$task of method Chill\\\\TaskBundle\\\\Entity\\\\Task\\\\SingleTaskPlaceEvent\\:\\:setTask\\(\\) expects Chill\\\\TaskBundle\\\\Entity\\\\SingleTask, Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask given\\.$#" count: 1 path: src/Bundle/ChillTaskBundle/Event/Lifecycle/TaskLifecycleEvent.php - - message: "#^Method Chill\\\\TaskBundle\\\\Repository\\\\SingleTaskRepository\\:\\:findByParameters\\(\\) has invalid return type Chill\\\\TaskBundle\\\\Repository\\\\type\\.$#" + message: "#^Parameter \\#1 \\$repository of class Chill\\\\PersonBundle\\\\Form\\\\DataTransformer\\\\PersonToIdTransformer constructor expects Chill\\\\PersonBundle\\\\Repository\\\\PersonRepository, Doctrine\\\\ORM\\\\EntityManagerInterface given\\.$#" count: 1 - path: src/Bundle/ChillTaskBundle/Repository/SingleTaskRepository.php + path: src/Bundle/ChillTaskBundle/Form/SingleTaskListType.php - - message: "#^Parameter \\$params of method Chill\\\\TaskBundle\\\\Repository\\\\SingleTaskRepository\\:\\:findByParameters\\(\\) has invalid type Chill\\\\TaskBundle\\\\Repository\\\\type\\.$#" + message: "#^Parameter \\#1 \\$extras of method Knp\\\\Menu\\\\MenuItem\\:\\:setExtras\\(\\) expects array\\, string given\\.$#" count: 1 - path: src/Bundle/ChillTaskBundle/Repository/SingleTaskRepository.php + path: src/Bundle/ChillTaskBundle/Menu/MenuBuilder.php - - message: "#^Property Chill\\\\TaskBundle\\\\Security\\\\Authorization\\\\AuthorizationEvent\\:\\:\\$vote \\(bool\\) does not accept null\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Security/Authorization/AuthorizationEvent.php + message: "#^Parameter \\#1 \\$storedObject of method Chill\\\\WopiBundle\\\\Service\\\\Wopi\\\\ChillDocumentManager\\:\\:getContent\\(\\) expects Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject, ChampsLibres\\\\WopiLib\\\\Contract\\\\Entity\\\\Document given\\.$#" + count: 3 + path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillDocumentManager.php - - message: "#^Call to method deleteItem\\(\\) on an unknown class Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CacheItempPoolInterface\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Templating/UI/CountNotificationTask.php - - - - message: "#^Call to method getItem\\(\\) on an unknown class Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CacheItempPoolInterface\\.$#" - count: 2 - path: src/Bundle/ChillTaskBundle/Templating/UI/CountNotificationTask.php - - - - message: "#^Call to method save\\(\\) on an unknown class Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CacheItempPoolInterface\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Templating/UI/CountNotificationTask.php - - - - message: "#^Property Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CountNotificationTask\\:\\:\\$cachePool \\(Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CacheItempPoolInterface\\) does not accept Psr\\\\Cache\\\\CacheItemPoolInterface\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Templating/UI/CountNotificationTask.php - - - - message: "#^Property Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CountNotificationTask\\:\\:\\$cachePool has unknown class Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CacheItempPoolInterface as its type\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Templating/UI/CountNotificationTask.php - - - - message: "#^Call to method getData\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 2 - path: src/Bundle/ChillTaskBundle/Timeline/SingleTaskTaskLifeCycleEventTimelineProvider.php - - - - message: "#^Call to method getTask\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Timeline/SingleTaskTaskLifeCycleEventTimelineProvider.php - - - - message: "#^Call to method getTransition\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Timeline/SingleTaskTaskLifeCycleEventTimelineProvider.php - - - - message: "#^Parameter \\$context of method Chill\\\\TaskBundle\\\\Timeline\\\\SingleTaskTaskLifeCycleEventTimelineProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Timeline/SingleTaskTaskLifeCycleEventTimelineProvider.php - - - - message: "#^Parameter \\$entity of method Chill\\\\TaskBundle\\\\Timeline\\\\SingleTaskTaskLifeCycleEventTimelineProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Timeline/SingleTaskTaskLifeCycleEventTimelineProvider.php - - - - message: "#^Call to method getData\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Timeline/TaskLifeCycleEventTimelineProvider.php - - - - message: "#^Call to method getTask\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 2 - path: src/Bundle/ChillTaskBundle/Timeline/TaskLifeCycleEventTimelineProvider.php - - - - message: "#^Call to method getTransition\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Timeline/TaskLifeCycleEventTimelineProvider.php - - - - message: "#^Parameter \\$context of method Chill\\\\TaskBundle\\\\Timeline\\\\TaskLifeCycleEventTimelineProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Timeline/TaskLifeCycleEventTimelineProvider.php - - - - message: "#^Parameter \\$entity of method Chill\\\\TaskBundle\\\\Timeline\\\\TaskLifeCycleEventTimelineProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Timeline/TaskLifeCycleEventTimelineProvider.php - - - - message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask\\:\\:getId\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Workflow/TaskWorkflowManager.php - - - - message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Workflow\\\\TaskWorkflowDefinition\\:\\:getAssociatedWorkflowName\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Workflow/TaskWorkflowManager.php - - - - message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Workflow\\\\TaskWorkflowDefinition\\:\\:getWorkflowMetadata\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Workflow/TaskWorkflowManager.php - - - - message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Workflow\\\\TaskWorkflowDefinition\\:\\:isClosed\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Workflow/TaskWorkflowManager.php - - - - message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Workflow\\\\TaskWorkflowDefinition\\:\\:supports\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Workflow/TaskWorkflowManager.php - - - - message: "#^PHPDoc tag @return with type DateTime\\|null is not subtype of native type DateTimeImmutable\\|null\\.$#" - count: 1 - path: src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php - - - - message: "#^Property Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\:\\:\\$canonicalized is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php - - - - message: "#^Property Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\:\\:\\$createdBy is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php - - - - message: "#^Property Chill\\\\ThirdPartyBundle\\\\Repository\\\\ThirdPartyACLAwareRepository\\:\\:\\$authorizationHelper is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillThirdPartyBundle/Repository/ThirdPartyACLAwareRepository.php - - - - message: "#^Property Chill\\\\ThirdPartyBundle\\\\Repository\\\\ThirdPartyACLAwareRepository\\:\\:\\$security is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillThirdPartyBundle/Repository/ThirdPartyACLAwareRepository.php - - - - message: "#^Argument of an invalid type string supplied for foreach, only iterables are supported\\.$#" - count: 1 - path: src/Bundle/ChillThirdPartyBundle/Repository/ThirdPartyRepository.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillThirdPartyBundle/Security/Voter/ThirdPartyVoter.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillWopiBundle/src/Controller/Editor.php - - - - message: "#^Strict comparison using \\=\\=\\= between false and array will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillWopiBundle/src/Service/Wopi/AuthorizationManager.php - - - - message: "#^Default value of the parameter \\#2 \\$properties \\(array\\{\\}\\) of method Chill\\\\WopiBundle\\\\Service\\\\Wopi\\\\ChillDocumentManager\\:\\:write\\(\\) is incompatible with type array\\{content\\: string, size\\: int\\}\\.$#" + message: "#^Parameter \\#1 \\$storedObject of method Chill\\\\WopiBundle\\\\Service\\\\Wopi\\\\ChillDocumentManager\\:\\:setContent\\(\\) expects Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject, ChampsLibres\\\\WopiLib\\\\Contract\\\\Entity\\\\Document given\\.$#" count: 1 path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillDocumentManager.php - - message: "#^Method ChampsLibres\\\\WopiLib\\\\Contract\\\\Service\\\\WopiInterface\\:\\:checkFileInfo\\(\\) invoked with 4 parameters, 3 required\\.$#" + message: "#^Parameter \\#1 \\$type of method Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject\\:\\:setType\\(\\) expects string\\|null, false given\\.$#" count: 1 - path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillWopi.php + path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillDocumentManager.php From 38fcccfd83e71a82eca5130d880f908cb2e855db Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Tue, 23 Apr 2024 21:22:29 +0200 Subject: [PATCH 020/136] php style fixes --- .../Entity/ActivityReason.php | 2 - .../Entity/CustomField.php | 5 - .../Entity/CustomFieldsDefaultGroup.php | 4 +- .../Entity/CustomFieldsGroup.php | 2 - .../Entity/PersonDocument.php | 4 +- src/Bundle/ChillEventBundle/Entity/Event.php | 2 - .../ChillEventBundle/Entity/EventType.php | 1 - src/Bundle/ChillEventBundle/Entity/Role.php | 1 - src/Bundle/ChillEventBundle/Entity/Status.php | 1 - .../src/ApiHelper/ApiWrapper.php | 1 - .../src/ApiHelper/ProcessRequestTrait.php | 1 - .../src/Controller/CSCrudReportController.php | 2 +- .../src/Controller/CSPersonController.php | 2 +- .../src/Controller/CSReportController.php | 4 +- .../DependencyInjection/ChillJobExtension.php | 56 +-- .../ChillJobBundle/src/Entity/CSPerson.php | 335 +++++------------- src/Bundle/ChillJobBundle/src/Entity/CV.php | 30 +- .../src/Entity/CV/Experience.php | 28 -- .../src/Entity/CV/Formation.php | 13 - .../ChillJobBundle/src/Entity/Frein.php | 3 - .../ChillJobBundle/src/Entity/Immersion.php | 243 +++---------- .../src/Entity/ProjetProfessionnel.php | 11 +- .../src/Entity/Rome/Appellation.php | 4 - .../ChillJobBundle/src/Entity/Rome/Metier.php | 6 +- .../src/Export/ListCSPerson.php | 12 +- .../ChillJobBundle/src/Export/ListCV.php | 2 - .../ChillJobBundle/src/Export/ListFrein.php | 3 - .../src/Export/ListProjetProfessionnel.php | 3 - .../ChillJobBundle/src/Menu/MenuBuilder.php | 40 +-- .../Security/Authorization/ExportsVoter.php | 1 - src/Bundle/ChillMainBundle/Entity/Address.php | 2 +- .../Entity/Embeddable/CommentEmbeddable.php | 3 - .../ChillMainBundle/Entity/Language.php | 2 - .../ChillMainBundle/Entity/PostalCode.php | 5 - .../AccompanyingPeriod/ClosingMotive.php | 1 - .../ChillPersonBundle/Entity/Person.php | 3 - .../Export/Export/ListPerson.php | 6 +- .../ChillReportBundle/Entity/Report.php | 2 - .../ChillTaskBundle/Entity/RecurringTask.php | 6 - .../ChillTaskBundle/Entity/SingleTask.php | 4 - .../Entity/Task/AbstractTaskPlaceEvent.php | 1 - 41 files changed, 216 insertions(+), 641 deletions(-) diff --git a/src/Bundle/ChillActivityBundle/Entity/ActivityReason.php b/src/Bundle/ChillActivityBundle/Entity/ActivityReason.php index bf3542630..bf36ead6c 100644 --- a/src/Bundle/ChillActivityBundle/Entity/ActivityReason.php +++ b/src/Bundle/ChillActivityBundle/Entity/ActivityReason.php @@ -79,7 +79,6 @@ class ActivityReason /** * Set active. * - * * @return ActivityReason */ public function setActive(bool $active) @@ -109,7 +108,6 @@ class ActivityReason /** * Set name. * - * * @return ActivityReason */ public function setName(array $name) diff --git a/src/Bundle/ChillCustomFieldsBundle/Entity/CustomField.php b/src/Bundle/ChillCustomFieldsBundle/Entity/CustomField.php index 169d2ad46..06ff658c7 100644 --- a/src/Bundle/ChillCustomFieldsBundle/Entity/CustomField.php +++ b/src/Bundle/ChillCustomFieldsBundle/Entity/CustomField.php @@ -172,7 +172,6 @@ class CustomField /** * Set active. * - * * @return CustomField */ public function setActive(bool $active) @@ -223,8 +222,6 @@ class CustomField /** * Set order. * - * @param float $order - * * @return CustomField */ public function setOrdering(?float $order) @@ -254,8 +251,6 @@ class CustomField /** * Set type. * - * @param string $type - * * @return CustomField */ public function setType(?string $type) diff --git a/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsDefaultGroup.php b/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsDefaultGroup.php index 6f7c7a930..c0022d530 100644 --- a/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsDefaultGroup.php +++ b/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsDefaultGroup.php @@ -69,7 +69,7 @@ class CustomFieldsDefaultGroup * * @return CustomFieldsDefaultGroup */ - public function setCustomFieldsGroup(?\Chill\CustomFieldsBundle\Entity\CustomFieldsGroup $customFieldsGroup) + public function setCustomFieldsGroup(?CustomFieldsGroup $customFieldsGroup) { $this->customFieldsGroup = $customFieldsGroup; @@ -79,8 +79,6 @@ class CustomFieldsDefaultGroup /** * Set entity. * - * @param string $entity - * * @return CustomFieldsDefaultGroup */ public function setEntity(?string $entity) diff --git a/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsGroup.php b/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsGroup.php index 4ec64f6b6..d26098c58 100644 --- a/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsGroup.php +++ b/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsGroup.php @@ -165,8 +165,6 @@ class CustomFieldsGroup /** * Set entity. * - * @param string $entity - * * @return CustomFieldsGroup */ public function setEntity(?string $entity) diff --git a/src/Bundle/ChillDocStoreBundle/Entity/PersonDocument.php b/src/Bundle/ChillDocStoreBundle/Entity/PersonDocument.php index 437695b9d..b6eefc733 100644 --- a/src/Bundle/ChillDocStoreBundle/Entity/PersonDocument.php +++ b/src/Bundle/ChillDocStoreBundle/Entity/PersonDocument.php @@ -55,14 +55,14 @@ class PersonDocument extends Document implements HasCenterInterface, HasScopeInt return $this->scope; } - public function setPerson(\Chill\PersonBundle\Entity\Person $person): self + public function setPerson(Person $person): self { $this->person = $person; return $this; } - public function setScope(?\Chill\MainBundle\Entity\Scope $scope): self + public function setScope(?Scope $scope): self { $this->scope = $scope; diff --git a/src/Bundle/ChillEventBundle/Entity/Event.php b/src/Bundle/ChillEventBundle/Entity/Event.php index 55b152132..4a3b4cd67 100644 --- a/src/Bundle/ChillEventBundle/Entity/Event.php +++ b/src/Bundle/ChillEventBundle/Entity/Event.php @@ -265,8 +265,6 @@ class Event implements HasCenterInterface, HasScopeInterface, TrackCreationInter /** * Set label. * - * @param string $label - * * @return Event */ public function setName(?string $label) diff --git a/src/Bundle/ChillEventBundle/Entity/EventType.php b/src/Bundle/ChillEventBundle/Entity/EventType.php index b0448325a..80741f766 100644 --- a/src/Bundle/ChillEventBundle/Entity/EventType.php +++ b/src/Bundle/ChillEventBundle/Entity/EventType.php @@ -146,7 +146,6 @@ class EventType /** * Set active. * - * * @return EventType */ public function setActive(bool $active) diff --git a/src/Bundle/ChillEventBundle/Entity/Role.php b/src/Bundle/ChillEventBundle/Entity/Role.php index 968e52353..7dbd8700c 100644 --- a/src/Bundle/ChillEventBundle/Entity/Role.php +++ b/src/Bundle/ChillEventBundle/Entity/Role.php @@ -81,7 +81,6 @@ class Role /** * Set active. * - * * @return Role */ public function setActive(bool $active) diff --git a/src/Bundle/ChillEventBundle/Entity/Status.php b/src/Bundle/ChillEventBundle/Entity/Status.php index 99dd84451..38c07879c 100644 --- a/src/Bundle/ChillEventBundle/Entity/Status.php +++ b/src/Bundle/ChillEventBundle/Entity/Status.php @@ -81,7 +81,6 @@ class Status /** * Set active. * - * * @return Status */ public function setActive(bool $active) diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php index 0e75e6e79..360f200cd 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php @@ -14,7 +14,6 @@ namespace Chill\FranceTravailApiBundle\ApiHelper; use Chill\MainBundle\Redis\ChillRedis; use GuzzleHttp\Client; use GuzzleHttp\Exception\ClientException; -use GuzzleHttp\Psr7; /** * Wraps the pole emploi api. diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ProcessRequestTrait.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ProcessRequestTrait.php index 7af5cb32d..efd41c223 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ProcessRequestTrait.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ProcessRequestTrait.php @@ -29,7 +29,6 @@ trait ProcessRequestTrait * * @param Request $request the request * @param array $parameters the requests parameters - * */ protected function handleRequest( Request $request, diff --git a/src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php b/src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php index 1d26e9089..6f0cc742c 100644 --- a/src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php +++ b/src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php @@ -116,7 +116,7 @@ class CSCrudReportController extends EntityPersonCRUDController * * @param int $id */ - public function editBilan(Request $request, $id): \Symfony\Component\HttpFoundation\Response + public function editBilan(Request $request, $id): Response { return $this->formEditAction('bilan', $request, $id); } diff --git a/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php b/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php index fd32ac8d8..0c4e44c0e 100644 --- a/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php +++ b/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php @@ -114,7 +114,7 @@ class CSPersonController extends OneToOneEntityPersonCRUDController case 'dispositifs_view': return '@ChillJob/CSPerson/dispositifs_view.html.twig'; default: - return parent::getTemplateFor($action, $entity, $request); + return parent::getTemplateFor($action, $entity, $request); } } diff --git a/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php b/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php index 6b7745cc4..3de5a68e0 100644 --- a/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php +++ b/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php @@ -24,9 +24,7 @@ use Chill\JobBundle\Security\Authorization\CSConnectesVoter; class CSReportController extends AbstractController { - public function __construct(private \Doctrine\Persistence\ManagerRegistry $managerRegistry) - { - } + public function __construct(private \Doctrine\Persistence\ManagerRegistry $managerRegistry) {} #[Route(path: '{_locale}/person/job/{person}/report', name: 'chill_job_report_index')] public function index(Person $person): Response diff --git a/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php b/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php index ffc760768..dce5d1d64 100644 --- a/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php +++ b/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php @@ -50,35 +50,35 @@ class ChillJobExtension extends Extension implements PrependExtensionInterface $this->prependRoute($container); } -/* protected function prependCruds(ContainerBuilder $container) - { - $container->prependExtensionConfig('chill_main', [ - 'cruds' => [ - [ - 'class' => CSPerson::class, - 'controller' => CSPersonController::class, - 'name' => 'admin_personal_situation', -// 'base_path' => '/admin/main/personal_situation', - 'base_role' => 'ROLE_USER', - 'form_class' => CSPersonPersonalSituationType::class, - 'actions' => [ - 'index' => [ - 'role' => 'ROLE_USER', - 'template' => '@ChillPerson/CRUD/index.html.twig', + /* protected function prependCruds(ContainerBuilder $container) + { + $container->prependExtensionConfig('chill_main', [ + 'cruds' => [ + [ + 'class' => CSPerson::class, + 'controller' => CSPersonController::class, + 'name' => 'admin_personal_situation', + // 'base_path' => '/admin/main/personal_situation', + 'base_role' => 'ROLE_USER', + 'form_class' => CSPersonPersonalSituationType::class, + 'actions' => [ + 'index' => [ + 'role' => 'ROLE_USER', + 'template' => '@ChillPerson/CRUD/index.html.twig', + ], + 'new' => [ + 'role' => 'ROLE_USER', + 'template' => '@ChillPerson/CRUD/new.html.twig', + ], + 'edit' => [ + 'role' => 'ROLE_USER', + 'template' => '@ChillPerson/CRUD/edit.html.twig', + ], ], - 'new' => [ - 'role' => 'ROLE_USER', - 'template' => '@ChillPerson/CRUD/new.html.twig', - ], - 'edit' => [ - 'role' => 'ROLE_USER', - 'template' => '@ChillPerson/CRUD/edit.html.twig', - ], - ], - ] - ], - ]); - }*/ + ] + ], + ]); + }*/ protected function prependRoute(ContainerBuilder $container): void { diff --git a/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php b/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php index 286d334ad..cdc01b177 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php @@ -1,5 +1,14 @@ niveauMaitriseLangue = null; return $this; @@ -543,7 +397,6 @@ class CSPerson /** * Get niveauMaitriseLangue. - * */ public function getNiveauMaitriseLangue() { @@ -551,20 +404,20 @@ class CSPerson } /** - * Valide niveauMaitriseLangue + * Valide niveauMaitriseLangue. * * @Assert\Callback() */ public function validateNiveauMatriseLangue(ExecutionContextInterface $context) { - if (NULL === $this->getNiveauMaitriseLangue()) { + if (null === $this->getNiveauMaitriseLangue()) { return; } if (\in_array('aucun', $this->getNiveauMaitriseLangue(), true)) { if (count($this->getNiveauMaitriseLangue()) > 1) { $context->buildViolation("Si \"Aucun\" est choisi dans la liste, il n'est " - . "pas possible de cocher d'autres indications") + ."pas possible de cocher d'autres indications") ->atPath('niveauMaitriseLangue') ->addViolation(); } @@ -574,8 +427,6 @@ class CSPerson /** * Set vehiculePersonnel. * - * @param bool $vehiculePersonnel - * * @return CSPerson */ public function setVehiculePersonnel(?bool $vehiculePersonnel) @@ -609,7 +460,6 @@ class CSPerson /** * Get permisConduire. - * */ public function getPermisConduire() { @@ -619,8 +469,6 @@ class CSPerson /** * Set situationProfessionnelle. * - * @param string $situationProfessionnelle - * * @return CSPerson */ public function setSituationProfessionnelle(?string $situationProfessionnelle) @@ -667,7 +515,6 @@ class CSPerson /** * Set typeContrat. * - * * @return CSPerson */ public function setTypeContrat($typeContrat) @@ -679,7 +526,6 @@ class CSPerson /** * Get typeContrat. - * */ public function getTypeContrat() { @@ -700,7 +546,6 @@ class CSPerson /** * Get ressources. - * */ public function getRessources() { @@ -710,8 +555,6 @@ class CSPerson /** * Set ressourcesComment. * - * @param string $ressourcesComment - * * @return CSPerson */ public function setRessourcesComment(?string $ressourcesComment) @@ -755,12 +598,12 @@ class CSPerson return $this->ressourceDate1Versement; } - function getCPFMontant() + public function getCPFMontant() { return $this->cPFMontant; } - function setCPFMontant(?float $cPFMontant) + public function setCPFMontant(?float $cPFMontant) { $this->cPFMontant = $cPFMontant; @@ -781,7 +624,6 @@ class CSPerson /** * Get accompagnement. - * */ public function getAccompagnement() { @@ -815,8 +657,6 @@ class CSPerson /** * Set accompagnementComment. * - * @param string $accompagnementComment - * * @return CSPerson */ public function setAccompagnementComment(?string $accompagnementComment) @@ -839,8 +679,6 @@ class CSPerson /** * Set poleEmploiId. * - * @param string $poleEmploiId - * * @return CSPerson */ public function setPoleEmploiId(?string $poleEmploiId) @@ -887,8 +725,6 @@ class CSPerson /** * Set cafId. * - * @param string $cafId - * * @return CSPerson */ public function setCafId(?string $cafId) @@ -1000,12 +836,9 @@ class CSPerson $this->pPAESignataire = $pPAESignataire; } - /** * Set nEETEligibilite. * - * @param bool $nEETEligibilite - * * @return CSPerson */ public function setNEETEligibilite(?bool $nEETEligibilite) @@ -1052,8 +885,6 @@ class CSPerson /** * Set fSEMaDemarcheCode. * - * @param string $fSEMaDemarcheCode - * * @return CSPerson */ public function setFSEMaDemarcheCode(?string $fSEMaDemarcheCode) @@ -1073,12 +904,12 @@ class CSPerson return $this->fSEMaDemarcheCode; } - function getDispositifsNotes() + public function getDispositifsNotes() { return $this->dispositifsNotes; } - function setDispositifsNotes(?string $dispositifsNotes) + public function setDispositifsNotes(?string $dispositifsNotes) { $this->dispositifsNotes = $dispositifsNotes; } @@ -1107,142 +938,142 @@ class CSPerson return $this->getPerson()->setMaritalStatus($maritalStatus); } - function getDocumentCV(): ?StoredObject + public function getDocumentCV(): ?StoredObject { return $this->documentCV; } - function getDocumentAgrementIAE(): ?StoredObject + public function getDocumentAgrementIAE(): ?StoredObject { return $this->documentAgrementIAE; } - function getDocumentRQTH(): ?StoredObject + public function getDocumentRQTH(): ?StoredObject { return $this->documentRQTH; } - function getDocumentAttestationNEET(): ?StoredObject + public function getDocumentAttestationNEET(): ?StoredObject { return $this->documentAttestationNEET; } - function getDocumentCI(): ?StoredObject + public function getDocumentCI(): ?StoredObject { return $this->documentCI; } - function getDocumentTitreSejour(): ?StoredObject + public function getDocumentTitreSejour(): ?StoredObject { return $this->documentTitreSejour; } - function getDocumentAttestationFiscale(): ?StoredObject + public function getDocumentAttestationFiscale(): ?StoredObject { return $this->documentAttestationFiscale; } - function getDocumentPermis(): ?StoredObject + public function getDocumentPermis(): ?StoredObject { return $this->documentPermis; } - function getDocumentAttestationCAAF(): ?StoredObject + public function getDocumentAttestationCAAF(): ?StoredObject { return $this->documentAttestationCAAF; } - function getDocumentContraTravail(): ?StoredObject + public function getDocumentContraTravail(): ?StoredObject { return $this->documentContraTravail; } - function getDocumentAttestationFormation(): ?StoredObject + public function getDocumentAttestationFormation(): ?StoredObject { return $this->documentAttestationFormation; } - function getDocumentQuittanceLoyer(): ?StoredObject + public function getDocumentQuittanceLoyer(): ?StoredObject { return $this->documentQuittanceLoyer; } - function getDocumentFactureElectricite(): ?StoredObject + public function getDocumentFactureElectricite(): ?StoredObject { return $this->documentFactureElectricite; } - function getPrescripteur(): ?ThirdParty + public function getPrescripteur(): ?ThirdParty { return $this->prescripteur; } - function setDocumentCV(StoredObject $documentCV = null) + public function setDocumentCV(?StoredObject $documentCV = null) { $this->documentCV = $documentCV; } - function setDocumentAgrementIAE(StoredObject $documentAgrementIAE = null) + public function setDocumentAgrementIAE(?StoredObject $documentAgrementIAE = null) { $this->documentAgrementIAE = $documentAgrementIAE; } - function setDocumentRQTH(StoredObject $documentRQTH = null) + public function setDocumentRQTH(?StoredObject $documentRQTH = null) { $this->documentRQTH = $documentRQTH; } - function setDocumentAttestationNEET(StoredObject $documentAttestationNEET = null) + public function setDocumentAttestationNEET(?StoredObject $documentAttestationNEET = null) { $this->documentAttestationNEET = $documentAttestationNEET; } - function setDocumentCI(StoredObject $documentCI = null) + public function setDocumentCI(?StoredObject $documentCI = null) { $this->documentCI = $documentCI; } - function setDocumentTitreSejour(StoredObject $documentTitreSejour = null) + public function setDocumentTitreSejour(?StoredObject $documentTitreSejour = null) { $this->documentTitreSejour = $documentTitreSejour; } - function setDocumentAttestationFiscale(StoredObject $documentAttestationFiscale = null) + public function setDocumentAttestationFiscale(?StoredObject $documentAttestationFiscale = null) { $this->documentAttestationFiscale = $documentAttestationFiscale; } - function setDocumentPermis(StoredObject $documentPermis = null) + public function setDocumentPermis(?StoredObject $documentPermis = null) { $this->documentPermis = $documentPermis; } - function setDocumentAttestationCAAF(StoredObject $documentAttestationCAAF = null) + public function setDocumentAttestationCAAF(?StoredObject $documentAttestationCAAF = null) { $this->documentAttestationCAAF = $documentAttestationCAAF; } - function setDocumentContraTravail(StoredObject $documentContraTravail = null) + public function setDocumentContraTravail(?StoredObject $documentContraTravail = null) { $this->documentContraTravail = $documentContraTravail; } - function setDocumentAttestationFormation(StoredObject $documentAttestationFormation = null) + public function setDocumentAttestationFormation(?StoredObject $documentAttestationFormation = null) { $this->documentAttestationFormation = $documentAttestationFormation; } - function setDocumentQuittanceLoyer(StoredObject $documentQuittanceLoyer = null) + public function setDocumentQuittanceLoyer(?StoredObject $documentQuittanceLoyer = null) { $this->documentQuittanceLoyer = $documentQuittanceLoyer; } - function setDocumentFactureElectricite(StoredObject $documentFactureElectricite = null) + public function setDocumentFactureElectricite(?StoredObject $documentFactureElectricite = null) { $this->documentFactureElectricite = $documentFactureElectricite; } - function setPrescripteur(ThirdParty $prescripteur = null) + public function setPrescripteur(?ThirdParty $prescripteur = null) { $this->prescripteur = $prescripteur; } @@ -1309,42 +1140,49 @@ class CSPerson public function setSituationLogementPrecision(?string $situationLogementPrecision) { $this->situationLogementPrecision = $situationLogementPrecision; + return $this; } public function setAcompteDIF(?float $acompteDIF) { $this->acompteDIF = $acompteDIF; + return $this; } public function setHandicapIs(?bool $handicapIs) { $this->handicapIs = $handicapIs; + return $this; } public function setHandicapNotes(?string $handicapNotes) { $this->handicapNotes = $handicapNotes; + return $this; } public function setHandicapRecommandation(?string $handicapRecommandation) { $this->handicapRecommandation = $handicapRecommandation; + return $this; } - public function setHandicapAccompagnement(ThirdParty $handicapAccompagnement = null) + public function setHandicapAccompagnement(?ThirdParty $handicapAccompagnement = null) { $this->handicapAccompagnement = $handicapAccompagnement; + return $this; } - public function setDocumentAttestationSecuriteSociale(StoredObject $documentAttestationSecuriteSociale = null) + public function setDocumentAttestationSecuriteSociale(?StoredObject $documentAttestationSecuriteSociale = null) { $this->documentAttestationSecuriteSociale = $documentAttestationSecuriteSociale; + return $this; } @@ -1353,9 +1191,10 @@ class CSPerson return $this->dateContratIEJ; } - public function setDateContratIEJ(\DateTime $dateContratIEJ = null) + public function setDateContratIEJ(?\DateTime $dateContratIEJ = null) { $this->dateContratIEJ = $dateContratIEJ; + return $this; } @@ -1367,6 +1206,7 @@ class CSPerson public function setTypeContratAide(?string $typeContratAide) { $this->typeContratAide = $typeContratAide; + return $this; } @@ -1381,7 +1221,4 @@ class CSPerson return $this; } - - - } diff --git a/src/Bundle/ChillJobBundle/src/Entity/CV.php b/src/Bundle/ChillJobBundle/src/Entity/CV.php index 90a8e772e..709419079 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CV.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CV.php @@ -72,6 +72,7 @@ class CV implements \Stringable /** * @Assert\Valid(traverse=true) + * * @var \Doctrine\Common\Collections\Collection */ #[ORM\OneToMany(targetEntity: CV\Formation::class, mappedBy: 'CV', cascade: ['persist', 'remove', 'detach'], orphanRemoval: true)] @@ -80,6 +81,7 @@ class CV implements \Stringable /** * @Assert\Valid(traverse=true) + * * @var \Doctrine\Common\Collections\Collection */ #[ORM\OneToMany(targetEntity: CV\Experience::class, mappedBy: 'CV', cascade: ['persist', 'remove', 'detach'], orphanRemoval: true)] @@ -108,9 +110,6 @@ class CV implements \Stringable /** * Set reportDate. - * - * - * @return CV */ public function setReportDate(\DateTime $reportDate): self { @@ -121,21 +120,16 @@ class CV implements \Stringable /** * Get reportDate. - * */ - public function getReportDate(): \DateTimeInterface|null + public function getReportDate(): ?\DateTimeInterface { return $this->reportDate; } /** * Set formationLevel. - * - * @param string|null $formationLevel - * - * @return CV */ - public function setFormationLevel(string $formationLevel = null): self + public function setFormationLevel(?string $formationLevel = null): self { $this->formationLevel = $formationLevel; @@ -154,9 +148,6 @@ class CV implements \Stringable /** * Set formationType. - * - * - * @return CV */ public function setFormationType(string $formationType): self { @@ -167,8 +158,6 @@ class CV implements \Stringable /** * Get formationType. - * - * @return string */ public function getFormationType(): ?string { @@ -178,7 +167,7 @@ class CV implements \Stringable /** * Set spokenLanguages. * - * @return CV + * @param mixed|null $spokenLanguages */ public function setSpokenLanguages($spokenLanguages = null): self { @@ -189,7 +178,6 @@ class CV implements \Stringable /** * Get spokenLanguages. - * */ public function getSpokenLanguages(): array { @@ -198,12 +186,8 @@ class CV implements \Stringable /** * Set notes. - * - * @param string|null $notes - * - * @return CV */ - public function setNotes(string $notes = null): self + public function setNotes(?string $notes = null): self { $this->notes = $notes; @@ -212,8 +196,6 @@ class CV implements \Stringable /** * Get notes. - * - * @return string|null */ public function getNotes(): ?string { diff --git a/src/Bundle/ChillJobBundle/src/Entity/CV/Experience.php b/src/Bundle/ChillJobBundle/src/Entity/CV/Experience.php index f0978e139..19d444338 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CV/Experience.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CV/Experience.php @@ -69,8 +69,6 @@ class Experience /** * Get id. - * - * @return int */ public function getId(): ?int { @@ -79,9 +77,6 @@ class Experience /** * Set poste. - * - * - * @return Experience */ public function setPoste(?string $poste = null): self { @@ -92,8 +87,6 @@ class Experience /** * Get poste. - * - * @return string|null */ public function getPoste(): ?string { @@ -102,9 +95,6 @@ class Experience /** * Set structure. - * - * - * @return Experience */ public function setStructure(?string $structure = null): self { @@ -115,8 +105,6 @@ class Experience /** * Get structure. - * - * @return string|null */ public function getStructure(): ?string { @@ -127,8 +115,6 @@ class Experience * Set startDate. * * @param \DateTime|null $startDate - * - * @return Experience */ public function setStartDate(?\DateTimeInterface $startDate = null): self { @@ -151,8 +137,6 @@ class Experience * Set endDate. * * @param \DateTime|null $endDate - * - * @return Experience */ public function setEndDate(?\DateTimeInterface $endDate = null): self { @@ -173,10 +157,6 @@ class Experience /** * Set contratType. - * - * @param string $contratType - * - * @return Experience */ public function setContratType(?string $contratType): self { @@ -187,8 +167,6 @@ class Experience /** * Get contratType. - * - * @return string */ public function getContratType(): ?string { @@ -197,10 +175,6 @@ class Experience /** * Set notes. - * - * @param string $notes - * - * @return Experience */ public function setNotes(?string $notes): self { @@ -211,8 +185,6 @@ class Experience /** * Get notes. - * - * @return string */ public function getNotes(): ?string { diff --git a/src/Bundle/ChillJobBundle/src/Entity/CV/Formation.php b/src/Bundle/ChillJobBundle/src/Entity/CV/Formation.php index 1c4343e3d..84bfda163 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CV/Formation.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CV/Formation.php @@ -77,8 +77,6 @@ class Formation /** * Set title. * - * @param string $title - * * @return Formation */ public function setTitle(?string $title) @@ -168,9 +166,6 @@ class Formation /** * Set diplomaReconnue. - * - * - * @return Formation */ public function setDiplomaReconnue(?string $diplomaReconnue = null): self { @@ -181,8 +176,6 @@ class Formation /** * Get diplomaReconnue. - * - * @return string|null */ public function getDiplomaReconnue(): ?string { @@ -191,10 +184,6 @@ class Formation /** * Set organisme. - * - * @param string $organisme - * - * @return Formation */ public function setOrganisme(?string $organisme): self { @@ -205,8 +194,6 @@ class Formation /** * Get organisme. - * - * @return string */ public function getOrganisme(): ?string { diff --git a/src/Bundle/ChillJobBundle/src/Entity/Frein.php b/src/Bundle/ChillJobBundle/src/Entity/Frein.php index 437df44fe..722109069 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Frein.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Frein.php @@ -79,7 +79,6 @@ class Frein implements HasPerson, \Stringable private ?string $notesEmploi = ''; /** - * * @ORM\ManytoOne( * targetEntity="Chill\PersonBundle\Entity\Person") * @@ -97,7 +96,6 @@ class Frein implements HasPerson, \Stringable return $this->id; } - public function setReportDate(?\DateTimeInterface $reportDate): self { $this->reportDate = $reportDate; @@ -105,7 +103,6 @@ class Frein implements HasPerson, \Stringable return $this; } - public function getReportDate(): ?\DateTimeInterface { return $this->reportDate; diff --git a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php index e39c053d1..88591f732 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php @@ -1,5 +1,14 @@ false])] private ?bool $isBilanFullfilled = false; @@ -208,7 +173,7 @@ class Immersion implements \Stringable 'respect_consigne_securite', 'relation_hierarchie', 'capacite_adaptation', - 'motivation_travail' + 'motivation_travail', ]; /** @@ -217,212 +182,105 @@ class Immersion implements \Stringable #[ORM\Column(name: 'savoirEtre', type: \Doctrine\DBAL\Types\Types::JSON, nullable: true)] private $savoirEtre; - /** - * - * @var string - */ #[ORM\Column(name: 'savoirEtreNote', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $savoirEtreNote = null; - /** - * @var string - */ #[ORM\Column(name: 'noteimmersion', type: \Doctrine\DBAL\Types\Types::TEXT)] private ?string $noteImmersion = ''; - /** - * @var string|null - */ #[ORM\Column(name: 'principalesActivites', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $principalesActivites = null; - /** - * @var string|null - */ #[ORM\Column(name: 'competencesAcquises', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $competencesAcquises = null; - /** - * @var string|null - */ #[ORM\Column(name: 'competencesADevelopper', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $competencesADevelopper = null; - /** - * @var string|null - */ #[ORM\Column(name: 'noteBilan', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $noteBilan = null; public const PONCTUALITE_SALARIE = [ 'aucun', 'un', - 'plusieurs' + 'plusieurs', ]; - /** - * - * @var string|null - */ #[ORM\Column(name: 'ponctualite_salarie', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $ponctualiteSalarie = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'ponctualite_salarie_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $ponctualiteSalarieNote = null; public const ASSIDUITE = [ 'aucun', 'un', - 'plusieurs' + 'plusieurs', ]; - /** - * - * @var string|null - */ #[ORM\Column(name: 'assiduite', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $assiduite = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'assiduite_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $assiduiteNote = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'interet_activite', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $interetActivite = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'interet_activite_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $interetActiviteNote = null; public const INTEGRE_REGLE = [ '1_temps', 'rapidement', - 'pas_encore' + 'pas_encore', ]; - /** - * - * @var string|null - */ #[ORM\Column(name: 'integre_regle', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $integreRegle = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'integre_regle_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $integreRegleNote = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'esprit_initiative', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $espritInitiative = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'esprit_initiative_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $espritInitiativeNote = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'organisation', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $organisation = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'organisation_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $organisationNote = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'capacite_travail_equipe', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $capaciteTravailEquipe = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'capacite_travail_equipe_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $capaciteTravailEquipeNote = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'style_vestimentaire', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $styleVestimentaire = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'style_vestimentaire_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $styleVestimentaireNote = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'langage_prof', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $langageProf = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'langage_prof_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $langageProfNote = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'applique_consigne', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $appliqueConsigne = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'applique_consigne_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $appliqueConsigneNote = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'respect_hierarchie', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $respectHierarchie = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'respect_hierarchie_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $respectHierarchieNote = null; @@ -439,7 +297,6 @@ class Immersion implements \Stringable /** * Set domaineActivite. * - * * @return Immersion */ public function setDomaineActivite(?string $domaineActivite = null) @@ -462,7 +319,6 @@ class Immersion implements \Stringable /** * Set tuteurName. * - * * @return Immersion */ public function setTuteurName(?string $tuteurName = null) @@ -485,7 +341,6 @@ class Immersion implements \Stringable /** * Set tuteurFonction. * - * * @return Immersion */ public function setTuteurFonction(?string $tuteurFonction = null) @@ -508,7 +363,6 @@ class Immersion implements \Stringable /** * Set tuteurPhoneNumber. * - * * @return Immersion */ public function setTuteurPhoneNumber(?string $tuteurPhoneNumber = null) @@ -531,7 +385,6 @@ class Immersion implements \Stringable /** * Set structureAccName. * - * * @return Immersion */ public function setStructureAccName(?string $structureAccName = null) @@ -554,8 +407,6 @@ class Immersion implements \Stringable /** * Set structureAccPhonenumber. * - * @param string $structureAccPhonenumber - * * @return Immersion */ public function setStructureAccPhonenumber(?string $structureAccPhonenumber) @@ -578,7 +429,6 @@ class Immersion implements \Stringable /** * Set posteDescriptif. * - * * @return Immersion */ public function setPosteDescriptif(?string $posteDescriptif = null) @@ -601,7 +451,6 @@ class Immersion implements \Stringable /** * Set posteTitle. * - * * @return Immersion */ public function setPosteTitle(?string $posteTitle = null) @@ -624,7 +473,6 @@ class Immersion implements \Stringable /** * Set posteLieu. * - * * @return Immersion */ public function setPosteLieu(?string $posteLieu = null) @@ -702,7 +550,6 @@ class Immersion implements \Stringable /** * Set horaire. * - * * @return Immersion */ public function setHoraire(?string $horaire = null) @@ -809,7 +656,6 @@ class Immersion implements \Stringable /** * Set principalesActivites. * - * * @return Immersion */ public function setPrincipalesActivites(?string $principalesActivites = null) @@ -832,7 +678,6 @@ class Immersion implements \Stringable /** * Set competencesAcquises. * - * * @return Immersion */ public function setCompetencesAcquises(?string $competencesAcquises = null) @@ -855,7 +700,6 @@ class Immersion implements \Stringable /** * Set competencesADevelopper. * - * * @return Immersion */ public function setCompetencesADevelopper(?string $competencesADevelopper = null) @@ -878,7 +722,6 @@ class Immersion implements \Stringable /** * Set noteBilan. * - * * @return Immersion */ public function setNoteBilan(?string $noteBilan = null) @@ -916,18 +759,21 @@ class Immersion implements \Stringable public function setPerson(Person $person) { $this->person = $person; + return $this; } public function setEntreprise(ThirdParty $entreprise) { $this->entreprise = $entreprise; + return $this; } public function setReferent(User $referent) { $this->referent = $referent; + return $this; } @@ -944,12 +790,14 @@ class Immersion implements \Stringable public function setStructureAccEmail(?string $structureAccEmail) { $this->structureAccEmail = $structureAccEmail; + return $this; } public function setStructureAccAddress(Address $structureAccAddress) { $this->structureAccAddress = $structureAccAddress; + return $this; } @@ -966,12 +814,14 @@ class Immersion implements \Stringable public function setIsBilanFullfilled(?bool $isBilanFullfilled) { $this->isBilanFullfilled = $isBilanFullfilled; + return $this; } public function setSavoirEtreNote(?string $savoirEtreNote) { $this->savoirEtreNote = $savoirEtreNote; + return $this; } @@ -1088,132 +938,154 @@ class Immersion implements \Stringable public function setPonctualiteSalarie(?string $ponctualiteSalarie) { $this->ponctualiteSalarie = $ponctualiteSalarie; + return $this; } public function setPonctualiteSalarieNote(?string $ponctualiteSalarieNote) { $this->ponctualiteSalarieNote = $ponctualiteSalarieNote; + return $this; } public function setAssiduite(?string $assiduite) { $this->assiduite = $assiduite; + return $this; } public function setAssiduiteNote(?string $assiduiteNote) { $this->assiduiteNote = $assiduiteNote; + return $this; } public function setInteretActivite(?string $interetActivite) { $this->interetActivite = $interetActivite; + return $this; } public function setInteretActiviteNote(?string $interetActiviteNote) { $this->interetActiviteNote = $interetActiviteNote; + return $this; } public function setIntegreRegle(?string $integreRegle) { $this->integreRegle = $integreRegle; + return $this; } public function setIntegreRegleNote(?string $integreRegleNote) { $this->integreRegleNote = $integreRegleNote; + return $this; } public function setEspritInitiative(?string $espritInitiative) { $this->espritInitiative = $espritInitiative; + return $this; } public function setEspritInitiativeNote(?string $espritInitiativeNote) { $this->espritInitiativeNote = $espritInitiativeNote; + return $this; } public function setOrganisation(?string $organisation) { $this->organisation = $organisation; + return $this; } public function setOrganisationNote(?string $organisationNote) { $this->organisationNote = $organisationNote; + return $this; } public function setCapaciteTravailEquipe(?string $capaciteTravailEquipe) { $this->capaciteTravailEquipe = $capaciteTravailEquipe; + return $this; } public function setCapaciteTravailEquipeNote(?string $capaciteTravailEquipeNote) { $this->capaciteTravailEquipeNote = $capaciteTravailEquipeNote; + return $this; } public function setStyleVestimentaire(?string $styleVestimentaire) { $this->styleVestimentaire = $styleVestimentaire; + return $this; } public function setStyleVestimentaireNote(?string $styleVestimentaireNote) { $this->styleVestimentaireNote = $styleVestimentaireNote; + return $this; } public function setLangageProf(?string $langageProf) { $this->langageProf = $langageProf; + return $this; } public function setLangageProfNote(?string $langageProfNote) { $this->langageProfNote = $langageProfNote; + return $this; } public function setAppliqueConsigne(?string $appliqueConsigne) { $this->appliqueConsigne = $appliqueConsigne; + return $this; } public function setAppliqueConsigneNote(?string $appliqueConsigneNote) { $this->appliqueConsigneNote = $appliqueConsigneNote; + return $this; } public function setRespectHierarchie(?string $respectHierarchie) { $this->respectHierarchie = $respectHierarchie; + return $this; } public function setRespectHierarchieNote(?string $respectHierarchieNote) { $this->respectHierarchieNote = $respectHierarchieNote; + return $this; } @@ -1221,5 +1093,4 @@ class Immersion implements \Stringable { return 'Rapport "immersion" de '.$this->getPerson(); } - } diff --git a/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php b/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php index ecf172d95..363098f3a 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php +++ b/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php @@ -55,7 +55,7 @@ class ProjetProfessionnel implements \Stringable #[ORM\ManyToMany(targetEntity: Appellation::class, cascade: ['persist'])] private Collection $souhait; - #[ORM\Column(name: 'domaineActiviteSouhait', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] + #[ORM\Column(name: 'domaineActiviteSouhait', type: Types::TEXT, nullable: true)] private ?string $domaineActiviteSouhait = null; public const TYPE_CONTRAT = [ @@ -156,6 +156,7 @@ class ProjetProfessionnel implements \Stringable /** * Set typeContrat. * + * @param mixed|null $typeContrat * * @return ProjetProfessionnel */ @@ -168,7 +169,6 @@ class ProjetProfessionnel implements \Stringable /** * Get typeContrat. - * */ public function getTypeContrat() { @@ -200,6 +200,7 @@ class ProjetProfessionnel implements \Stringable /** * Set volumeHoraire. * + * @param mixed|null $volumeHoraire * * @return ProjetProfessionnel */ @@ -212,7 +213,6 @@ class ProjetProfessionnel implements \Stringable /** * Get volumeHoraire. - * */ public function getVolumeHoraire() { @@ -222,7 +222,6 @@ class ProjetProfessionnel implements \Stringable /** * Set volumeHoraireNotes. * - * * @return ProjetProfessionnel */ public function setVolumeHoraireNotes(?string $volumeHoraireNotes = null) @@ -245,7 +244,6 @@ class ProjetProfessionnel implements \Stringable /** * Set idee. * - * * @return ProjetProfessionnel */ public function setIdee(?string $idee = null) @@ -268,7 +266,6 @@ class ProjetProfessionnel implements \Stringable /** * Set enCoursConstruction. * - * * @return ProjetProfessionnel */ public function setEnCoursConstruction(?string $enCoursConstruction = null) @@ -291,7 +288,6 @@ class ProjetProfessionnel implements \Stringable /** * Set valideNotes. * - * * @return ProjetProfessionnel */ public function setValideNotes(?string $valideNotes = null) @@ -314,7 +310,6 @@ class ProjetProfessionnel implements \Stringable /** * Set projetProfessionnelNote. * - * * @return ProjetProfessionnel */ public function setProjetProfessionnelNote(?string $projetProfessionnelNote = null) diff --git a/src/Bundle/ChillJobBundle/src/Entity/Rome/Appellation.php b/src/Bundle/ChillJobBundle/src/Entity/Rome/Appellation.php index 455240181..2fda76700 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Rome/Appellation.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Rome/Appellation.php @@ -47,8 +47,6 @@ class Appellation implements \Stringable /** * Set code. * - * @param string $code - * * @return Appellation */ public function setCode(?string $code) @@ -71,8 +69,6 @@ class Appellation implements \Stringable /** * Set libelle. * - * @param string $libelle - * * @return Appellation */ public function setLibelle(?string $libelle) diff --git a/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php b/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php index eeaaff951..0f0ffe3bc 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php @@ -41,7 +41,7 @@ class Metier public function __construct() { $this->appellations = new ArrayCollection(); -// $this->appellation = new ArrayCollection(); + // $this->appellation = new ArrayCollection(); } /** @@ -57,8 +57,6 @@ class Metier /** * Set libelle. * - * @param string $libelle - * * @return Metier */ public function setLibelle(?string $libelle) @@ -81,8 +79,6 @@ class Metier /** * Set code. * - * @param string $code - * * @return Metier */ public function setCode(?string $code) diff --git a/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php b/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php index 74486efdc..c8d540a31 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php @@ -237,7 +237,7 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal break; case 'type_contrat__label': - if ($value !== '') { + if ('' !== $value) { $res[$key] = ($f) ? $value : null; } else { $res[$key] = null; @@ -340,7 +340,6 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal /** * @param \Doctrine\ORM\NativeQuery|\Doctrine\ORM\QueryBuilder $qb * @param mixed[] $data - * */ public function getResult($qb, $data) { @@ -381,7 +380,6 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal * @param string $key The column key, as added in the query * @param mixed[] $values The values from the result. if there are duplicates, those might be given twice. Example: array('FR', 'BE', 'CZ', 'FR', 'BE', 'FR') * @param mixed $data The data from the export's form (as defined in `buildForm` - * */ public function getLabels($key, array $values, $data) { @@ -401,7 +399,7 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal str_replace('__', '.', $key) ); } - if ($value === '') { + if ('' === $value) { return ''; } $arr = []; @@ -418,7 +416,7 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal str_replace('__', '.', $key) ); } - if ($value === '') { + if ('' === $value) { return ''; } $this->translationCompatKey($value, $key); @@ -429,7 +427,7 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal if ('_header' === $value) { return $key; } - if ($value === '') { + if ('' === $value) { return ''; } @@ -457,7 +455,7 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal if ('_header' === $value) { return $key; } - if ($value === '') { + if ('' === $value) { return ''; } diff --git a/src/Bundle/ChillJobBundle/src/Export/ListCV.php b/src/Bundle/ChillJobBundle/src/Export/ListCV.php index 90a0312e4..51ca0f3f4 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListCV.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListCV.php @@ -238,7 +238,6 @@ class ListCV implements ListInterface, ExportElementValidatedInterface * * @param QueryBuilder|\Doctrine\ORM\NativeQuery $qb * @param mixed[] $data the data from the export's form (added by self::buildForm) - * */ public function getResult($qb, $data) { @@ -312,7 +311,6 @@ class ListCV implements ListInterface, ExportElementValidatedInterface * @param string $key The column key, as added in the query * @param mixed[] $values The values from the result. if there are duplicates, those might be given twice. Example: array('FR', 'BE', 'CZ', 'FR', 'BE', 'FR') * @param mixed $data The data from the export's form (as defined in `buildForm` - * */ public function getLabels($key, array $values, $data) { diff --git a/src/Bundle/ChillJobBundle/src/Export/ListFrein.php b/src/Bundle/ChillJobBundle/src/Export/ListFrein.php index 0d5ecb3da..b94cc0342 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListFrein.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListFrein.php @@ -204,7 +204,6 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface /** * Return the required Role to execute the Export. - * */ public function requiredRole(): string { @@ -332,7 +331,6 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface * * @param QueryBuilder|\Doctrine\ORM\NativeQuery $qb * @param mixed[] $data the data from the export's form (added by self::buildForm) - * */ public function getResult($qb, $data) { @@ -408,7 +406,6 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface * @param string $key The column key, as added in the query * @param mixed[] $values The values from the result. if there are duplicates, those might be given twice. Example: array('FR', 'BE', 'CZ', 'FR', 'BE', 'FR') * @param mixed $data The data from the export's form (as defined in `buildForm` - * */ public function getLabels($key, array $values, $data) { diff --git a/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php b/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php index 0704a8686..73434474b 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php @@ -210,7 +210,6 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn /** * Return the required Role to execute the Export. - * */ public function requiredRole(): string { @@ -370,7 +369,6 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn * * @param QueryBuilder|\Doctrine\ORM\NativeQuery $qb * @param mixed[] $data the data from the export's form (added by self::buildForm) - * */ public function getResult($qb, $data) { @@ -446,7 +444,6 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn * @param string $key The column key, as added in the query * @param mixed[] $values The values from the result. if there are duplicates, those might be given twice. Example: array('FR', 'BE', 'CZ', 'FR', 'BE', 'FR') * @param mixed $data The data from the export's form (as defined in `buildForm` - * */ public function getLabels($key, array $values, $data) { diff --git a/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php b/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php index b9d521a54..7faa51ed9 100644 --- a/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php +++ b/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php @@ -33,26 +33,26 @@ class MenuBuilder implements LocalMenuBuilderInterface /** @var \Chill\PersonBundle\Entity\Person $person */ $person = $parameters['person']; -// if ($this->authorizationChecker->isGranted(CSConnectesVoter::REPORT_NEW, $person)) { - $menu->addChild('Situation personnelle', [ - 'route' => 'chill_job_personal_situation_view', - 'routeParameters' => [ - 'person' => $person->getId(), - ], - ]) - ->setExtras([ - 'order' => 50, - ]); - $menu->addChild('Dispositifs', [ - 'route' => 'chill_job_dispositifs_view', - 'routeParameters' => [ - 'person' => $person->getId(), - ], - ]) - ->setExtras([ - 'order' => 51, - ]); -// } + // if ($this->authorizationChecker->isGranted(CSConnectesVoter::REPORT_NEW, $person)) { + $menu->addChild('Situation personnelle', [ + 'route' => 'chill_job_personal_situation_view', + 'routeParameters' => [ + 'person' => $person->getId(), + ], + ]) + ->setExtras([ + 'order' => 50, + ]); + $menu->addChild('Dispositifs', [ + 'route' => 'chill_job_dispositifs_view', + 'routeParameters' => [ + 'person' => $person->getId(), + ], + ]) + ->setExtras([ + 'order' => 51, + ]); + // } $menu->addChild('Emploi', [ 'route' => 'chill_job_report_index', diff --git a/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php b/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php index 39a1eb348..7ccf04364 100644 --- a/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php +++ b/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php @@ -86,7 +86,6 @@ class ExportsVoter extends AbstractChillVoter implements ProvideRoleHierarchyInt * ``` * [ 'Title' => [ 'CHILL_FOO_SEE', 'CHILL_FOO_UPDATE' ] ] * ``` - * */ public function getRolesWithHierarchy(): array { diff --git a/src/Bundle/ChillMainBundle/Entity/Address.php b/src/Bundle/ChillMainBundle/Entity/Address.php index 72ad60ace..f04783506 100644 --- a/src/Bundle/ChillMainBundle/Entity/Address.php +++ b/src/Bundle/ChillMainBundle/Entity/Address.php @@ -446,7 +446,7 @@ class Address implements TrackCreationInterface, TrackUpdateInterface return $this; } - public function setLinkedToThirdParty(?\Chill\ThirdPartyBundle\Entity\ThirdParty $linkedToThirdParty): self + public function setLinkedToThirdParty(?ThirdParty $linkedToThirdParty): self { $this->linkedToThirdParty = $linkedToThirdParty; diff --git a/src/Bundle/ChillMainBundle/Entity/Embeddable/CommentEmbeddable.php b/src/Bundle/ChillMainBundle/Entity/Embeddable/CommentEmbeddable.php index ee90fb88b..ea0d4ec29 100644 --- a/src/Bundle/ChillMainBundle/Entity/Embeddable/CommentEmbeddable.php +++ b/src/Bundle/ChillMainBundle/Entity/Embeddable/CommentEmbeddable.php @@ -61,9 +61,6 @@ class CommentEmbeddable $this->date = $date; } - /** - * @param int $userId - */ public function setUserId(?int $userId) { $this->userId = $userId; diff --git a/src/Bundle/ChillMainBundle/Entity/Language.php b/src/Bundle/ChillMainBundle/Entity/Language.php index 079b31d22..894b929ac 100644 --- a/src/Bundle/ChillMainBundle/Entity/Language.php +++ b/src/Bundle/ChillMainBundle/Entity/Language.php @@ -59,8 +59,6 @@ class Language /** * Set id. * - * @param string $id - * * @return Language */ public function setId(?string $id) diff --git a/src/Bundle/ChillMainBundle/Entity/PostalCode.php b/src/Bundle/ChillMainBundle/Entity/PostalCode.php index ed81a2b4b..ecab19a5f 100644 --- a/src/Bundle/ChillMainBundle/Entity/PostalCode.php +++ b/src/Bundle/ChillMainBundle/Entity/PostalCode.php @@ -157,8 +157,6 @@ class PostalCode implements TrackUpdateInterface, TrackCreationInterface /** * Set code. * - * @param string $code - * * @return PostalCode */ public function setCode(?string $code) @@ -183,8 +181,6 @@ class PostalCode implements TrackUpdateInterface, TrackCreationInterface /** * Set name. * - * @param string $name - * * @return PostalCode */ public function setName(?string $name) @@ -197,7 +193,6 @@ class PostalCode implements TrackUpdateInterface, TrackCreationInterface /** * Set origin. * - * * @return PostalCode */ public function setOrigin(int $origin) diff --git a/src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/ClosingMotive.php b/src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/ClosingMotive.php index 6cfd17f26..11321e9bb 100644 --- a/src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/ClosingMotive.php +++ b/src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/ClosingMotive.php @@ -182,7 +182,6 @@ class ClosingMotive /** * Set name. * - * * @return ClosingMotive */ public function setName(array $name) diff --git a/src/Bundle/ChillPersonBundle/Entity/Person.php b/src/Bundle/ChillPersonBundle/Entity/Person.php index 6c5abf00a..ff9e799a3 100644 --- a/src/Bundle/ChillPersonBundle/Entity/Person.php +++ b/src/Bundle/ChillPersonBundle/Entity/Person.php @@ -1409,9 +1409,6 @@ class Person implements HasCenterInterface, TrackCreationInterface, TrackUpdateI return $this; } - /** - * @param \DateTime $birthdate - */ public function setBirthdate(?\DateTime $birthdate): self { $this->birthdate = $birthdate; diff --git a/src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php b/src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php index 794dcf0d7..21c057a34 100644 --- a/src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php +++ b/src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php @@ -39,11 +39,11 @@ class ListPerson implements ListInterface, GroupedExportInterface private readonly bool $filterStatsByCenters; public function __construct( - private readonly CustomFieldProvider $customFieldProvider, - private readonly ListPersonHelper $listPersonHelper, + private readonly CustomFieldProvider $customFieldProvider, + private readonly ListPersonHelper $listPersonHelper, protected readonly EntityManagerInterface $entityManager, private readonly TranslatableStringHelper $translatableStringHelper, - ParameterBagInterface $parameterBag, + ParameterBagInterface $parameterBag, ) { $this->filterStatsByCenters = $parameterBag->get('chill_main')['acl']['filter_stats_by_center']; } diff --git a/src/Bundle/ChillReportBundle/Entity/Report.php b/src/Bundle/ChillReportBundle/Entity/Report.php index a1579b2a1..8d6c1888f 100644 --- a/src/Bundle/ChillReportBundle/Entity/Report.php +++ b/src/Bundle/ChillReportBundle/Entity/Report.php @@ -154,8 +154,6 @@ class Report implements HasCenterInterface, HasScopeInterface /** * Set date. * - * @param \DateTime $date - * * @return Report */ public function setDate(?\DateTime $date) diff --git a/src/Bundle/ChillTaskBundle/Entity/RecurringTask.php b/src/Bundle/ChillTaskBundle/Entity/RecurringTask.php index f63912b32..4856835e5 100644 --- a/src/Bundle/ChillTaskBundle/Entity/RecurringTask.php +++ b/src/Bundle/ChillTaskBundle/Entity/RecurringTask.php @@ -112,8 +112,6 @@ class RecurringTask extends AbstractTask /** * Set firstOccurenceEndDate. * - * @param \DateTime $firstOccurenceEndDate - * * @return RecurringTask */ public function setFirstOccurenceEndDate(?\DateTime $firstOccurenceEndDate) @@ -126,8 +124,6 @@ class RecurringTask extends AbstractTask /** * Set lastOccurenceEndDate. * - * @param \DateTime $lastOccurenceEndDate - * * @return RecurringTask */ public function setLastOccurenceEndDate(?\DateTime $lastOccurenceEndDate) @@ -140,8 +136,6 @@ class RecurringTask extends AbstractTask /** * Set occurenceFrequency. * - * @param string $occurenceFrequency - * * @return RecurringTask */ public function setOccurenceFrequency(?string $occurenceFrequency) diff --git a/src/Bundle/ChillTaskBundle/Entity/SingleTask.php b/src/Bundle/ChillTaskBundle/Entity/SingleTask.php index c8427b725..1bfbed9d2 100644 --- a/src/Bundle/ChillTaskBundle/Entity/SingleTask.php +++ b/src/Bundle/ChillTaskBundle/Entity/SingleTask.php @@ -136,8 +136,6 @@ class SingleTask extends AbstractTask /** * Set endDate. * - * @param \DateTime $endDate - * * @return SingleTask */ public function setEndDate(?\DateTime $endDate) @@ -155,8 +153,6 @@ class SingleTask extends AbstractTask /** * Set startDate. * - * @param \DateTime $startDate - * * @return SingleTask */ public function setStartDate(?\DateTime $startDate) diff --git a/src/Bundle/ChillTaskBundle/Entity/Task/AbstractTaskPlaceEvent.php b/src/Bundle/ChillTaskBundle/Entity/Task/AbstractTaskPlaceEvent.php index 92de2c496..26a73a7e5 100644 --- a/src/Bundle/ChillTaskBundle/Entity/Task/AbstractTaskPlaceEvent.php +++ b/src/Bundle/ChillTaskBundle/Entity/Task/AbstractTaskPlaceEvent.php @@ -105,7 +105,6 @@ class AbstractTaskPlaceEvent /** * Set transition. * - * * @return AbstractTaskPlaceEvent */ public function setTransition(string $transition) From 3929602f59c33aa33b6a644dbe522b5eb27f6bbf Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 24 Apr 2024 10:09:25 +0200 Subject: [PATCH 021/136] Revert "php style fixes" This reverts commit 38fcccfd83e71a82eca5130d880f908cb2e855db. --- .../Entity/ActivityReason.php | 2 + .../Entity/CustomField.php | 5 + .../Entity/CustomFieldsDefaultGroup.php | 4 +- .../Entity/CustomFieldsGroup.php | 2 + .../Entity/PersonDocument.php | 4 +- src/Bundle/ChillEventBundle/Entity/Event.php | 2 + .../ChillEventBundle/Entity/EventType.php | 1 + src/Bundle/ChillEventBundle/Entity/Role.php | 1 + src/Bundle/ChillEventBundle/Entity/Status.php | 1 + .../src/ApiHelper/ApiWrapper.php | 1 + .../src/ApiHelper/ProcessRequestTrait.php | 1 + .../src/Controller/CSCrudReportController.php | 2 +- .../src/Controller/CSPersonController.php | 2 +- .../src/Controller/CSReportController.php | 4 +- .../DependencyInjection/ChillJobExtension.php | 56 +-- .../ChillJobBundle/src/Entity/CSPerson.php | 335 +++++++++++++----- src/Bundle/ChillJobBundle/src/Entity/CV.php | 30 +- .../src/Entity/CV/Experience.php | 28 ++ .../src/Entity/CV/Formation.php | 13 + .../ChillJobBundle/src/Entity/Frein.php | 3 + .../ChillJobBundle/src/Entity/Immersion.php | 245 ++++++++++--- .../src/Entity/ProjetProfessionnel.php | 11 +- .../src/Entity/Rome/Appellation.php | 4 + .../ChillJobBundle/src/Entity/Rome/Metier.php | 6 +- .../src/Export/ListCSPerson.php | 12 +- .../ChillJobBundle/src/Export/ListCV.php | 2 + .../ChillJobBundle/src/Export/ListFrein.php | 3 + .../src/Export/ListProjetProfessionnel.php | 3 + .../ChillJobBundle/src/Menu/MenuBuilder.php | 40 +-- .../Security/Authorization/ExportsVoter.php | 1 + src/Bundle/ChillMainBundle/Entity/Address.php | 2 +- .../Entity/Embeddable/CommentEmbeddable.php | 3 + .../ChillMainBundle/Entity/Language.php | 2 + .../ChillMainBundle/Entity/PostalCode.php | 5 + .../AccompanyingPeriod/ClosingMotive.php | 1 + .../ChillPersonBundle/Entity/Person.php | 3 + .../Export/Export/ListPerson.php | 6 +- .../ChillReportBundle/Entity/Report.php | 2 + .../ChillTaskBundle/Entity/RecurringTask.php | 6 + .../ChillTaskBundle/Entity/SingleTask.php | 4 + .../Entity/Task/AbstractTaskPlaceEvent.php | 1 + 41 files changed, 642 insertions(+), 217 deletions(-) diff --git a/src/Bundle/ChillActivityBundle/Entity/ActivityReason.php b/src/Bundle/ChillActivityBundle/Entity/ActivityReason.php index bf36ead6c..bf3542630 100644 --- a/src/Bundle/ChillActivityBundle/Entity/ActivityReason.php +++ b/src/Bundle/ChillActivityBundle/Entity/ActivityReason.php @@ -79,6 +79,7 @@ class ActivityReason /** * Set active. * + * * @return ActivityReason */ public function setActive(bool $active) @@ -108,6 +109,7 @@ class ActivityReason /** * Set name. * + * * @return ActivityReason */ public function setName(array $name) diff --git a/src/Bundle/ChillCustomFieldsBundle/Entity/CustomField.php b/src/Bundle/ChillCustomFieldsBundle/Entity/CustomField.php index 06ff658c7..169d2ad46 100644 --- a/src/Bundle/ChillCustomFieldsBundle/Entity/CustomField.php +++ b/src/Bundle/ChillCustomFieldsBundle/Entity/CustomField.php @@ -172,6 +172,7 @@ class CustomField /** * Set active. * + * * @return CustomField */ public function setActive(bool $active) @@ -222,6 +223,8 @@ class CustomField /** * Set order. * + * @param float $order + * * @return CustomField */ public function setOrdering(?float $order) @@ -251,6 +254,8 @@ class CustomField /** * Set type. * + * @param string $type + * * @return CustomField */ public function setType(?string $type) diff --git a/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsDefaultGroup.php b/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsDefaultGroup.php index c0022d530..6f7c7a930 100644 --- a/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsDefaultGroup.php +++ b/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsDefaultGroup.php @@ -69,7 +69,7 @@ class CustomFieldsDefaultGroup * * @return CustomFieldsDefaultGroup */ - public function setCustomFieldsGroup(?CustomFieldsGroup $customFieldsGroup) + public function setCustomFieldsGroup(?\Chill\CustomFieldsBundle\Entity\CustomFieldsGroup $customFieldsGroup) { $this->customFieldsGroup = $customFieldsGroup; @@ -79,6 +79,8 @@ class CustomFieldsDefaultGroup /** * Set entity. * + * @param string $entity + * * @return CustomFieldsDefaultGroup */ public function setEntity(?string $entity) diff --git a/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsGroup.php b/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsGroup.php index d26098c58..4ec64f6b6 100644 --- a/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsGroup.php +++ b/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsGroup.php @@ -165,6 +165,8 @@ class CustomFieldsGroup /** * Set entity. * + * @param string $entity + * * @return CustomFieldsGroup */ public function setEntity(?string $entity) diff --git a/src/Bundle/ChillDocStoreBundle/Entity/PersonDocument.php b/src/Bundle/ChillDocStoreBundle/Entity/PersonDocument.php index b6eefc733..437695b9d 100644 --- a/src/Bundle/ChillDocStoreBundle/Entity/PersonDocument.php +++ b/src/Bundle/ChillDocStoreBundle/Entity/PersonDocument.php @@ -55,14 +55,14 @@ class PersonDocument extends Document implements HasCenterInterface, HasScopeInt return $this->scope; } - public function setPerson(Person $person): self + public function setPerson(\Chill\PersonBundle\Entity\Person $person): self { $this->person = $person; return $this; } - public function setScope(?Scope $scope): self + public function setScope(?\Chill\MainBundle\Entity\Scope $scope): self { $this->scope = $scope; diff --git a/src/Bundle/ChillEventBundle/Entity/Event.php b/src/Bundle/ChillEventBundle/Entity/Event.php index 4a3b4cd67..55b152132 100644 --- a/src/Bundle/ChillEventBundle/Entity/Event.php +++ b/src/Bundle/ChillEventBundle/Entity/Event.php @@ -265,6 +265,8 @@ class Event implements HasCenterInterface, HasScopeInterface, TrackCreationInter /** * Set label. * + * @param string $label + * * @return Event */ public function setName(?string $label) diff --git a/src/Bundle/ChillEventBundle/Entity/EventType.php b/src/Bundle/ChillEventBundle/Entity/EventType.php index 80741f766..b0448325a 100644 --- a/src/Bundle/ChillEventBundle/Entity/EventType.php +++ b/src/Bundle/ChillEventBundle/Entity/EventType.php @@ -146,6 +146,7 @@ class EventType /** * Set active. * + * * @return EventType */ public function setActive(bool $active) diff --git a/src/Bundle/ChillEventBundle/Entity/Role.php b/src/Bundle/ChillEventBundle/Entity/Role.php index 7dbd8700c..968e52353 100644 --- a/src/Bundle/ChillEventBundle/Entity/Role.php +++ b/src/Bundle/ChillEventBundle/Entity/Role.php @@ -81,6 +81,7 @@ class Role /** * Set active. * + * * @return Role */ public function setActive(bool $active) diff --git a/src/Bundle/ChillEventBundle/Entity/Status.php b/src/Bundle/ChillEventBundle/Entity/Status.php index 38c07879c..99dd84451 100644 --- a/src/Bundle/ChillEventBundle/Entity/Status.php +++ b/src/Bundle/ChillEventBundle/Entity/Status.php @@ -81,6 +81,7 @@ class Status /** * Set active. * + * * @return Status */ public function setActive(bool $active) diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php index 360f200cd..0e75e6e79 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php @@ -14,6 +14,7 @@ namespace Chill\FranceTravailApiBundle\ApiHelper; use Chill\MainBundle\Redis\ChillRedis; use GuzzleHttp\Client; use GuzzleHttp\Exception\ClientException; +use GuzzleHttp\Psr7; /** * Wraps the pole emploi api. diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ProcessRequestTrait.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ProcessRequestTrait.php index efd41c223..7af5cb32d 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ProcessRequestTrait.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ProcessRequestTrait.php @@ -29,6 +29,7 @@ trait ProcessRequestTrait * * @param Request $request the request * @param array $parameters the requests parameters + * */ protected function handleRequest( Request $request, diff --git a/src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php b/src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php index 6f0cc742c..1d26e9089 100644 --- a/src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php +++ b/src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php @@ -116,7 +116,7 @@ class CSCrudReportController extends EntityPersonCRUDController * * @param int $id */ - public function editBilan(Request $request, $id): Response + public function editBilan(Request $request, $id): \Symfony\Component\HttpFoundation\Response { return $this->formEditAction('bilan', $request, $id); } diff --git a/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php b/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php index 0c4e44c0e..fd32ac8d8 100644 --- a/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php +++ b/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php @@ -114,7 +114,7 @@ class CSPersonController extends OneToOneEntityPersonCRUDController case 'dispositifs_view': return '@ChillJob/CSPerson/dispositifs_view.html.twig'; default: - return parent::getTemplateFor($action, $entity, $request); + return parent::getTemplateFor($action, $entity, $request); } } diff --git a/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php b/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php index 3de5a68e0..6b7745cc4 100644 --- a/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php +++ b/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php @@ -24,7 +24,9 @@ use Chill\JobBundle\Security\Authorization\CSConnectesVoter; class CSReportController extends AbstractController { - public function __construct(private \Doctrine\Persistence\ManagerRegistry $managerRegistry) {} + public function __construct(private \Doctrine\Persistence\ManagerRegistry $managerRegistry) + { + } #[Route(path: '{_locale}/person/job/{person}/report', name: 'chill_job_report_index')] public function index(Person $person): Response diff --git a/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php b/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php index dce5d1d64..ffc760768 100644 --- a/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php +++ b/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php @@ -50,35 +50,35 @@ class ChillJobExtension extends Extension implements PrependExtensionInterface $this->prependRoute($container); } - /* protected function prependCruds(ContainerBuilder $container) - { - $container->prependExtensionConfig('chill_main', [ - 'cruds' => [ - [ - 'class' => CSPerson::class, - 'controller' => CSPersonController::class, - 'name' => 'admin_personal_situation', - // 'base_path' => '/admin/main/personal_situation', - 'base_role' => 'ROLE_USER', - 'form_class' => CSPersonPersonalSituationType::class, - 'actions' => [ - 'index' => [ - 'role' => 'ROLE_USER', - 'template' => '@ChillPerson/CRUD/index.html.twig', - ], - 'new' => [ - 'role' => 'ROLE_USER', - 'template' => '@ChillPerson/CRUD/new.html.twig', - ], - 'edit' => [ - 'role' => 'ROLE_USER', - 'template' => '@ChillPerson/CRUD/edit.html.twig', - ], +/* protected function prependCruds(ContainerBuilder $container) + { + $container->prependExtensionConfig('chill_main', [ + 'cruds' => [ + [ + 'class' => CSPerson::class, + 'controller' => CSPersonController::class, + 'name' => 'admin_personal_situation', +// 'base_path' => '/admin/main/personal_situation', + 'base_role' => 'ROLE_USER', + 'form_class' => CSPersonPersonalSituationType::class, + 'actions' => [ + 'index' => [ + 'role' => 'ROLE_USER', + 'template' => '@ChillPerson/CRUD/index.html.twig', ], - ] - ], - ]); - }*/ + 'new' => [ + 'role' => 'ROLE_USER', + 'template' => '@ChillPerson/CRUD/new.html.twig', + ], + 'edit' => [ + 'role' => 'ROLE_USER', + 'template' => '@ChillPerson/CRUD/edit.html.twig', + ], + ], + ] + ], + ]); + }*/ protected function prependRoute(ContainerBuilder $container): void { diff --git a/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php b/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php index cdc01b177..286d334ad 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php @@ -1,14 +1,5 @@ niveauMaitriseLangue = null; return $this; @@ -397,6 +543,7 @@ class CSPerson /** * Get niveauMaitriseLangue. + * */ public function getNiveauMaitriseLangue() { @@ -404,20 +551,20 @@ class CSPerson } /** - * Valide niveauMaitriseLangue. + * Valide niveauMaitriseLangue * * @Assert\Callback() */ public function validateNiveauMatriseLangue(ExecutionContextInterface $context) { - if (null === $this->getNiveauMaitriseLangue()) { + if (NULL === $this->getNiveauMaitriseLangue()) { return; } if (\in_array('aucun', $this->getNiveauMaitriseLangue(), true)) { if (count($this->getNiveauMaitriseLangue()) > 1) { $context->buildViolation("Si \"Aucun\" est choisi dans la liste, il n'est " - ."pas possible de cocher d'autres indications") + . "pas possible de cocher d'autres indications") ->atPath('niveauMaitriseLangue') ->addViolation(); } @@ -427,6 +574,8 @@ class CSPerson /** * Set vehiculePersonnel. * + * @param bool $vehiculePersonnel + * * @return CSPerson */ public function setVehiculePersonnel(?bool $vehiculePersonnel) @@ -460,6 +609,7 @@ class CSPerson /** * Get permisConduire. + * */ public function getPermisConduire() { @@ -469,6 +619,8 @@ class CSPerson /** * Set situationProfessionnelle. * + * @param string $situationProfessionnelle + * * @return CSPerson */ public function setSituationProfessionnelle(?string $situationProfessionnelle) @@ -515,6 +667,7 @@ class CSPerson /** * Set typeContrat. * + * * @return CSPerson */ public function setTypeContrat($typeContrat) @@ -526,6 +679,7 @@ class CSPerson /** * Get typeContrat. + * */ public function getTypeContrat() { @@ -546,6 +700,7 @@ class CSPerson /** * Get ressources. + * */ public function getRessources() { @@ -555,6 +710,8 @@ class CSPerson /** * Set ressourcesComment. * + * @param string $ressourcesComment + * * @return CSPerson */ public function setRessourcesComment(?string $ressourcesComment) @@ -598,12 +755,12 @@ class CSPerson return $this->ressourceDate1Versement; } - public function getCPFMontant() + function getCPFMontant() { return $this->cPFMontant; } - public function setCPFMontant(?float $cPFMontant) + function setCPFMontant(?float $cPFMontant) { $this->cPFMontant = $cPFMontant; @@ -624,6 +781,7 @@ class CSPerson /** * Get accompagnement. + * */ public function getAccompagnement() { @@ -657,6 +815,8 @@ class CSPerson /** * Set accompagnementComment. * + * @param string $accompagnementComment + * * @return CSPerson */ public function setAccompagnementComment(?string $accompagnementComment) @@ -679,6 +839,8 @@ class CSPerson /** * Set poleEmploiId. * + * @param string $poleEmploiId + * * @return CSPerson */ public function setPoleEmploiId(?string $poleEmploiId) @@ -725,6 +887,8 @@ class CSPerson /** * Set cafId. * + * @param string $cafId + * * @return CSPerson */ public function setCafId(?string $cafId) @@ -836,9 +1000,12 @@ class CSPerson $this->pPAESignataire = $pPAESignataire; } + /** * Set nEETEligibilite. * + * @param bool $nEETEligibilite + * * @return CSPerson */ public function setNEETEligibilite(?bool $nEETEligibilite) @@ -885,6 +1052,8 @@ class CSPerson /** * Set fSEMaDemarcheCode. * + * @param string $fSEMaDemarcheCode + * * @return CSPerson */ public function setFSEMaDemarcheCode(?string $fSEMaDemarcheCode) @@ -904,12 +1073,12 @@ class CSPerson return $this->fSEMaDemarcheCode; } - public function getDispositifsNotes() + function getDispositifsNotes() { return $this->dispositifsNotes; } - public function setDispositifsNotes(?string $dispositifsNotes) + function setDispositifsNotes(?string $dispositifsNotes) { $this->dispositifsNotes = $dispositifsNotes; } @@ -938,142 +1107,142 @@ class CSPerson return $this->getPerson()->setMaritalStatus($maritalStatus); } - public function getDocumentCV(): ?StoredObject + function getDocumentCV(): ?StoredObject { return $this->documentCV; } - public function getDocumentAgrementIAE(): ?StoredObject + function getDocumentAgrementIAE(): ?StoredObject { return $this->documentAgrementIAE; } - public function getDocumentRQTH(): ?StoredObject + function getDocumentRQTH(): ?StoredObject { return $this->documentRQTH; } - public function getDocumentAttestationNEET(): ?StoredObject + function getDocumentAttestationNEET(): ?StoredObject { return $this->documentAttestationNEET; } - public function getDocumentCI(): ?StoredObject + function getDocumentCI(): ?StoredObject { return $this->documentCI; } - public function getDocumentTitreSejour(): ?StoredObject + function getDocumentTitreSejour(): ?StoredObject { return $this->documentTitreSejour; } - public function getDocumentAttestationFiscale(): ?StoredObject + function getDocumentAttestationFiscale(): ?StoredObject { return $this->documentAttestationFiscale; } - public function getDocumentPermis(): ?StoredObject + function getDocumentPermis(): ?StoredObject { return $this->documentPermis; } - public function getDocumentAttestationCAAF(): ?StoredObject + function getDocumentAttestationCAAF(): ?StoredObject { return $this->documentAttestationCAAF; } - public function getDocumentContraTravail(): ?StoredObject + function getDocumentContraTravail(): ?StoredObject { return $this->documentContraTravail; } - public function getDocumentAttestationFormation(): ?StoredObject + function getDocumentAttestationFormation(): ?StoredObject { return $this->documentAttestationFormation; } - public function getDocumentQuittanceLoyer(): ?StoredObject + function getDocumentQuittanceLoyer(): ?StoredObject { return $this->documentQuittanceLoyer; } - public function getDocumentFactureElectricite(): ?StoredObject + function getDocumentFactureElectricite(): ?StoredObject { return $this->documentFactureElectricite; } - public function getPrescripteur(): ?ThirdParty + function getPrescripteur(): ?ThirdParty { return $this->prescripteur; } - public function setDocumentCV(?StoredObject $documentCV = null) + function setDocumentCV(StoredObject $documentCV = null) { $this->documentCV = $documentCV; } - public function setDocumentAgrementIAE(?StoredObject $documentAgrementIAE = null) + function setDocumentAgrementIAE(StoredObject $documentAgrementIAE = null) { $this->documentAgrementIAE = $documentAgrementIAE; } - public function setDocumentRQTH(?StoredObject $documentRQTH = null) + function setDocumentRQTH(StoredObject $documentRQTH = null) { $this->documentRQTH = $documentRQTH; } - public function setDocumentAttestationNEET(?StoredObject $documentAttestationNEET = null) + function setDocumentAttestationNEET(StoredObject $documentAttestationNEET = null) { $this->documentAttestationNEET = $documentAttestationNEET; } - public function setDocumentCI(?StoredObject $documentCI = null) + function setDocumentCI(StoredObject $documentCI = null) { $this->documentCI = $documentCI; } - public function setDocumentTitreSejour(?StoredObject $documentTitreSejour = null) + function setDocumentTitreSejour(StoredObject $documentTitreSejour = null) { $this->documentTitreSejour = $documentTitreSejour; } - public function setDocumentAttestationFiscale(?StoredObject $documentAttestationFiscale = null) + function setDocumentAttestationFiscale(StoredObject $documentAttestationFiscale = null) { $this->documentAttestationFiscale = $documentAttestationFiscale; } - public function setDocumentPermis(?StoredObject $documentPermis = null) + function setDocumentPermis(StoredObject $documentPermis = null) { $this->documentPermis = $documentPermis; } - public function setDocumentAttestationCAAF(?StoredObject $documentAttestationCAAF = null) + function setDocumentAttestationCAAF(StoredObject $documentAttestationCAAF = null) { $this->documentAttestationCAAF = $documentAttestationCAAF; } - public function setDocumentContraTravail(?StoredObject $documentContraTravail = null) + function setDocumentContraTravail(StoredObject $documentContraTravail = null) { $this->documentContraTravail = $documentContraTravail; } - public function setDocumentAttestationFormation(?StoredObject $documentAttestationFormation = null) + function setDocumentAttestationFormation(StoredObject $documentAttestationFormation = null) { $this->documentAttestationFormation = $documentAttestationFormation; } - public function setDocumentQuittanceLoyer(?StoredObject $documentQuittanceLoyer = null) + function setDocumentQuittanceLoyer(StoredObject $documentQuittanceLoyer = null) { $this->documentQuittanceLoyer = $documentQuittanceLoyer; } - public function setDocumentFactureElectricite(?StoredObject $documentFactureElectricite = null) + function setDocumentFactureElectricite(StoredObject $documentFactureElectricite = null) { $this->documentFactureElectricite = $documentFactureElectricite; } - public function setPrescripteur(?ThirdParty $prescripteur = null) + function setPrescripteur(ThirdParty $prescripteur = null) { $this->prescripteur = $prescripteur; } @@ -1140,49 +1309,42 @@ class CSPerson public function setSituationLogementPrecision(?string $situationLogementPrecision) { $this->situationLogementPrecision = $situationLogementPrecision; - return $this; } public function setAcompteDIF(?float $acompteDIF) { $this->acompteDIF = $acompteDIF; - return $this; } public function setHandicapIs(?bool $handicapIs) { $this->handicapIs = $handicapIs; - return $this; } public function setHandicapNotes(?string $handicapNotes) { $this->handicapNotes = $handicapNotes; - return $this; } public function setHandicapRecommandation(?string $handicapRecommandation) { $this->handicapRecommandation = $handicapRecommandation; - return $this; } - public function setHandicapAccompagnement(?ThirdParty $handicapAccompagnement = null) + public function setHandicapAccompagnement(ThirdParty $handicapAccompagnement = null) { $this->handicapAccompagnement = $handicapAccompagnement; - return $this; } - public function setDocumentAttestationSecuriteSociale(?StoredObject $documentAttestationSecuriteSociale = null) + public function setDocumentAttestationSecuriteSociale(StoredObject $documentAttestationSecuriteSociale = null) { $this->documentAttestationSecuriteSociale = $documentAttestationSecuriteSociale; - return $this; } @@ -1191,10 +1353,9 @@ class CSPerson return $this->dateContratIEJ; } - public function setDateContratIEJ(?\DateTime $dateContratIEJ = null) + public function setDateContratIEJ(\DateTime $dateContratIEJ = null) { $this->dateContratIEJ = $dateContratIEJ; - return $this; } @@ -1206,7 +1367,6 @@ class CSPerson public function setTypeContratAide(?string $typeContratAide) { $this->typeContratAide = $typeContratAide; - return $this; } @@ -1221,4 +1381,7 @@ class CSPerson return $this; } + + + } diff --git a/src/Bundle/ChillJobBundle/src/Entity/CV.php b/src/Bundle/ChillJobBundle/src/Entity/CV.php index 709419079..90a8e772e 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CV.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CV.php @@ -72,7 +72,6 @@ class CV implements \Stringable /** * @Assert\Valid(traverse=true) - * * @var \Doctrine\Common\Collections\Collection */ #[ORM\OneToMany(targetEntity: CV\Formation::class, mappedBy: 'CV', cascade: ['persist', 'remove', 'detach'], orphanRemoval: true)] @@ -81,7 +80,6 @@ class CV implements \Stringable /** * @Assert\Valid(traverse=true) - * * @var \Doctrine\Common\Collections\Collection */ #[ORM\OneToMany(targetEntity: CV\Experience::class, mappedBy: 'CV', cascade: ['persist', 'remove', 'detach'], orphanRemoval: true)] @@ -110,6 +108,9 @@ class CV implements \Stringable /** * Set reportDate. + * + * + * @return CV */ public function setReportDate(\DateTime $reportDate): self { @@ -120,16 +121,21 @@ class CV implements \Stringable /** * Get reportDate. + * */ - public function getReportDate(): ?\DateTimeInterface + public function getReportDate(): \DateTimeInterface|null { return $this->reportDate; } /** * Set formationLevel. + * + * @param string|null $formationLevel + * + * @return CV */ - public function setFormationLevel(?string $formationLevel = null): self + public function setFormationLevel(string $formationLevel = null): self { $this->formationLevel = $formationLevel; @@ -148,6 +154,9 @@ class CV implements \Stringable /** * Set formationType. + * + * + * @return CV */ public function setFormationType(string $formationType): self { @@ -158,6 +167,8 @@ class CV implements \Stringable /** * Get formationType. + * + * @return string */ public function getFormationType(): ?string { @@ -167,7 +178,7 @@ class CV implements \Stringable /** * Set spokenLanguages. * - * @param mixed|null $spokenLanguages + * @return CV */ public function setSpokenLanguages($spokenLanguages = null): self { @@ -178,6 +189,7 @@ class CV implements \Stringable /** * Get spokenLanguages. + * */ public function getSpokenLanguages(): array { @@ -186,8 +198,12 @@ class CV implements \Stringable /** * Set notes. + * + * @param string|null $notes + * + * @return CV */ - public function setNotes(?string $notes = null): self + public function setNotes(string $notes = null): self { $this->notes = $notes; @@ -196,6 +212,8 @@ class CV implements \Stringable /** * Get notes. + * + * @return string|null */ public function getNotes(): ?string { diff --git a/src/Bundle/ChillJobBundle/src/Entity/CV/Experience.php b/src/Bundle/ChillJobBundle/src/Entity/CV/Experience.php index 19d444338..f0978e139 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CV/Experience.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CV/Experience.php @@ -69,6 +69,8 @@ class Experience /** * Get id. + * + * @return int */ public function getId(): ?int { @@ -77,6 +79,9 @@ class Experience /** * Set poste. + * + * + * @return Experience */ public function setPoste(?string $poste = null): self { @@ -87,6 +92,8 @@ class Experience /** * Get poste. + * + * @return string|null */ public function getPoste(): ?string { @@ -95,6 +102,9 @@ class Experience /** * Set structure. + * + * + * @return Experience */ public function setStructure(?string $structure = null): self { @@ -105,6 +115,8 @@ class Experience /** * Get structure. + * + * @return string|null */ public function getStructure(): ?string { @@ -115,6 +127,8 @@ class Experience * Set startDate. * * @param \DateTime|null $startDate + * + * @return Experience */ public function setStartDate(?\DateTimeInterface $startDate = null): self { @@ -137,6 +151,8 @@ class Experience * Set endDate. * * @param \DateTime|null $endDate + * + * @return Experience */ public function setEndDate(?\DateTimeInterface $endDate = null): self { @@ -157,6 +173,10 @@ class Experience /** * Set contratType. + * + * @param string $contratType + * + * @return Experience */ public function setContratType(?string $contratType): self { @@ -167,6 +187,8 @@ class Experience /** * Get contratType. + * + * @return string */ public function getContratType(): ?string { @@ -175,6 +197,10 @@ class Experience /** * Set notes. + * + * @param string $notes + * + * @return Experience */ public function setNotes(?string $notes): self { @@ -185,6 +211,8 @@ class Experience /** * Get notes. + * + * @return string */ public function getNotes(): ?string { diff --git a/src/Bundle/ChillJobBundle/src/Entity/CV/Formation.php b/src/Bundle/ChillJobBundle/src/Entity/CV/Formation.php index 84bfda163..1c4343e3d 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CV/Formation.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CV/Formation.php @@ -77,6 +77,8 @@ class Formation /** * Set title. * + * @param string $title + * * @return Formation */ public function setTitle(?string $title) @@ -166,6 +168,9 @@ class Formation /** * Set diplomaReconnue. + * + * + * @return Formation */ public function setDiplomaReconnue(?string $diplomaReconnue = null): self { @@ -176,6 +181,8 @@ class Formation /** * Get diplomaReconnue. + * + * @return string|null */ public function getDiplomaReconnue(): ?string { @@ -184,6 +191,10 @@ class Formation /** * Set organisme. + * + * @param string $organisme + * + * @return Formation */ public function setOrganisme(?string $organisme): self { @@ -194,6 +205,8 @@ class Formation /** * Get organisme. + * + * @return string */ public function getOrganisme(): ?string { diff --git a/src/Bundle/ChillJobBundle/src/Entity/Frein.php b/src/Bundle/ChillJobBundle/src/Entity/Frein.php index 722109069..437df44fe 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Frein.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Frein.php @@ -79,6 +79,7 @@ class Frein implements HasPerson, \Stringable private ?string $notesEmploi = ''; /** + * * @ORM\ManytoOne( * targetEntity="Chill\PersonBundle\Entity\Person") * @@ -96,6 +97,7 @@ class Frein implements HasPerson, \Stringable return $this->id; } + public function setReportDate(?\DateTimeInterface $reportDate): self { $this->reportDate = $reportDate; @@ -103,6 +105,7 @@ class Frein implements HasPerson, \Stringable return $this; } + public function getReportDate(): ?\DateTimeInterface { return $this->reportDate; diff --git a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php index 88591f732..e39c053d1 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php @@ -1,14 +1,5 @@ false])] private ?bool $isBilanFullfilled = false; @@ -173,7 +208,7 @@ class Immersion implements \Stringable 'respect_consigne_securite', 'relation_hierarchie', 'capacite_adaptation', - 'motivation_travail', + 'motivation_travail' ]; /** @@ -182,105 +217,212 @@ class Immersion implements \Stringable #[ORM\Column(name: 'savoirEtre', type: \Doctrine\DBAL\Types\Types::JSON, nullable: true)] private $savoirEtre; + /** + * + * @var string + */ #[ORM\Column(name: 'savoirEtreNote', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $savoirEtreNote = null; + /** + * @var string + */ #[ORM\Column(name: 'noteimmersion', type: \Doctrine\DBAL\Types\Types::TEXT)] private ?string $noteImmersion = ''; + /** + * @var string|null + */ #[ORM\Column(name: 'principalesActivites', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $principalesActivites = null; + /** + * @var string|null + */ #[ORM\Column(name: 'competencesAcquises', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $competencesAcquises = null; + /** + * @var string|null + */ #[ORM\Column(name: 'competencesADevelopper', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $competencesADevelopper = null; + /** + * @var string|null + */ #[ORM\Column(name: 'noteBilan', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $noteBilan = null; public const PONCTUALITE_SALARIE = [ 'aucun', 'un', - 'plusieurs', + 'plusieurs' ]; + /** + * + * @var string|null + */ #[ORM\Column(name: 'ponctualite_salarie', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $ponctualiteSalarie = null; + /** + * + * @var string|null + */ #[ORM\Column(name: 'ponctualite_salarie_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $ponctualiteSalarieNote = null; public const ASSIDUITE = [ 'aucun', 'un', - 'plusieurs', + 'plusieurs' ]; + /** + * + * @var string|null + */ #[ORM\Column(name: 'assiduite', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $assiduite = null; + /** + * + * @var string|null + */ #[ORM\Column(name: 'assiduite_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $assiduiteNote = null; + /** + * + * @var string|null + */ #[ORM\Column(name: 'interet_activite', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $interetActivite = null; + /** + * + * @var string|null + */ #[ORM\Column(name: 'interet_activite_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $interetActiviteNote = null; public const INTEGRE_REGLE = [ '1_temps', 'rapidement', - 'pas_encore', + 'pas_encore' ]; + /** + * + * @var string|null + */ #[ORM\Column(name: 'integre_regle', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $integreRegle = null; + /** + * + * @var string|null + */ #[ORM\Column(name: 'integre_regle_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $integreRegleNote = null; + /** + * + * @var string|null + */ #[ORM\Column(name: 'esprit_initiative', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $espritInitiative = null; + /** + * + * @var string|null + */ #[ORM\Column(name: 'esprit_initiative_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $espritInitiativeNote = null; + /** + * + * @var string|null + */ #[ORM\Column(name: 'organisation', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $organisation = null; + /** + * + * @var string|null + */ #[ORM\Column(name: 'organisation_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $organisationNote = null; + /** + * + * @var string|null + */ #[ORM\Column(name: 'capacite_travail_equipe', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $capaciteTravailEquipe = null; + /** + * + * @var string|null + */ #[ORM\Column(name: 'capacite_travail_equipe_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $capaciteTravailEquipeNote = null; + /** + * + * @var string|null + */ #[ORM\Column(name: 'style_vestimentaire', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $styleVestimentaire = null; + /** + * + * @var string|null + */ #[ORM\Column(name: 'style_vestimentaire_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $styleVestimentaireNote = null; + /** + * + * @var string|null + */ #[ORM\Column(name: 'langage_prof', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $langageProf = null; + /** + * + * @var string|null + */ #[ORM\Column(name: 'langage_prof_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $langageProfNote = null; + /** + * + * @var string|null + */ #[ORM\Column(name: 'applique_consigne', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $appliqueConsigne = null; + /** + * + * @var string|null + */ #[ORM\Column(name: 'applique_consigne_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $appliqueConsigneNote = null; + /** + * + * @var string|null + */ #[ORM\Column(name: 'respect_hierarchie', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $respectHierarchie = null; + /** + * + * @var string|null + */ #[ORM\Column(name: 'respect_hierarchie_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $respectHierarchieNote = null; @@ -297,6 +439,7 @@ class Immersion implements \Stringable /** * Set domaineActivite. * + * * @return Immersion */ public function setDomaineActivite(?string $domaineActivite = null) @@ -319,6 +462,7 @@ class Immersion implements \Stringable /** * Set tuteurName. * + * * @return Immersion */ public function setTuteurName(?string $tuteurName = null) @@ -341,6 +485,7 @@ class Immersion implements \Stringable /** * Set tuteurFonction. * + * * @return Immersion */ public function setTuteurFonction(?string $tuteurFonction = null) @@ -363,6 +508,7 @@ class Immersion implements \Stringable /** * Set tuteurPhoneNumber. * + * * @return Immersion */ public function setTuteurPhoneNumber(?string $tuteurPhoneNumber = null) @@ -385,6 +531,7 @@ class Immersion implements \Stringable /** * Set structureAccName. * + * * @return Immersion */ public function setStructureAccName(?string $structureAccName = null) @@ -407,6 +554,8 @@ class Immersion implements \Stringable /** * Set structureAccPhonenumber. * + * @param string $structureAccPhonenumber + * * @return Immersion */ public function setStructureAccPhonenumber(?string $structureAccPhonenumber) @@ -429,6 +578,7 @@ class Immersion implements \Stringable /** * Set posteDescriptif. * + * * @return Immersion */ public function setPosteDescriptif(?string $posteDescriptif = null) @@ -451,6 +601,7 @@ class Immersion implements \Stringable /** * Set posteTitle. * + * * @return Immersion */ public function setPosteTitle(?string $posteTitle = null) @@ -473,6 +624,7 @@ class Immersion implements \Stringable /** * Set posteLieu. * + * * @return Immersion */ public function setPosteLieu(?string $posteLieu = null) @@ -550,6 +702,7 @@ class Immersion implements \Stringable /** * Set horaire. * + * * @return Immersion */ public function setHoraire(?string $horaire = null) @@ -656,6 +809,7 @@ class Immersion implements \Stringable /** * Set principalesActivites. * + * * @return Immersion */ public function setPrincipalesActivites(?string $principalesActivites = null) @@ -678,6 +832,7 @@ class Immersion implements \Stringable /** * Set competencesAcquises. * + * * @return Immersion */ public function setCompetencesAcquises(?string $competencesAcquises = null) @@ -700,6 +855,7 @@ class Immersion implements \Stringable /** * Set competencesADevelopper. * + * * @return Immersion */ public function setCompetencesADevelopper(?string $competencesADevelopper = null) @@ -722,6 +878,7 @@ class Immersion implements \Stringable /** * Set noteBilan. * + * * @return Immersion */ public function setNoteBilan(?string $noteBilan = null) @@ -759,21 +916,18 @@ class Immersion implements \Stringable public function setPerson(Person $person) { $this->person = $person; - return $this; } public function setEntreprise(ThirdParty $entreprise) { $this->entreprise = $entreprise; - return $this; } public function setReferent(User $referent) { $this->referent = $referent; - return $this; } @@ -790,14 +944,12 @@ class Immersion implements \Stringable public function setStructureAccEmail(?string $structureAccEmail) { $this->structureAccEmail = $structureAccEmail; - return $this; } public function setStructureAccAddress(Address $structureAccAddress) { $this->structureAccAddress = $structureAccAddress; - return $this; } @@ -814,14 +966,12 @@ class Immersion implements \Stringable public function setIsBilanFullfilled(?bool $isBilanFullfilled) { $this->isBilanFullfilled = $isBilanFullfilled; - return $this; } public function setSavoirEtreNote(?string $savoirEtreNote) { $this->savoirEtreNote = $savoirEtreNote; - return $this; } @@ -938,154 +1088,132 @@ class Immersion implements \Stringable public function setPonctualiteSalarie(?string $ponctualiteSalarie) { $this->ponctualiteSalarie = $ponctualiteSalarie; - return $this; } public function setPonctualiteSalarieNote(?string $ponctualiteSalarieNote) { $this->ponctualiteSalarieNote = $ponctualiteSalarieNote; - return $this; } public function setAssiduite(?string $assiduite) { $this->assiduite = $assiduite; - return $this; } public function setAssiduiteNote(?string $assiduiteNote) { $this->assiduiteNote = $assiduiteNote; - return $this; } public function setInteretActivite(?string $interetActivite) { $this->interetActivite = $interetActivite; - return $this; } public function setInteretActiviteNote(?string $interetActiviteNote) { $this->interetActiviteNote = $interetActiviteNote; - return $this; } public function setIntegreRegle(?string $integreRegle) { $this->integreRegle = $integreRegle; - return $this; } public function setIntegreRegleNote(?string $integreRegleNote) { $this->integreRegleNote = $integreRegleNote; - return $this; } public function setEspritInitiative(?string $espritInitiative) { $this->espritInitiative = $espritInitiative; - return $this; } public function setEspritInitiativeNote(?string $espritInitiativeNote) { $this->espritInitiativeNote = $espritInitiativeNote; - return $this; } public function setOrganisation(?string $organisation) { $this->organisation = $organisation; - return $this; } public function setOrganisationNote(?string $organisationNote) { $this->organisationNote = $organisationNote; - return $this; } public function setCapaciteTravailEquipe(?string $capaciteTravailEquipe) { $this->capaciteTravailEquipe = $capaciteTravailEquipe; - return $this; } public function setCapaciteTravailEquipeNote(?string $capaciteTravailEquipeNote) { $this->capaciteTravailEquipeNote = $capaciteTravailEquipeNote; - return $this; } public function setStyleVestimentaire(?string $styleVestimentaire) { $this->styleVestimentaire = $styleVestimentaire; - return $this; } public function setStyleVestimentaireNote(?string $styleVestimentaireNote) { $this->styleVestimentaireNote = $styleVestimentaireNote; - return $this; } public function setLangageProf(?string $langageProf) { $this->langageProf = $langageProf; - return $this; } public function setLangageProfNote(?string $langageProfNote) { $this->langageProfNote = $langageProfNote; - return $this; } public function setAppliqueConsigne(?string $appliqueConsigne) { $this->appliqueConsigne = $appliqueConsigne; - return $this; } public function setAppliqueConsigneNote(?string $appliqueConsigneNote) { $this->appliqueConsigneNote = $appliqueConsigneNote; - return $this; } public function setRespectHierarchie(?string $respectHierarchie) { $this->respectHierarchie = $respectHierarchie; - return $this; } public function setRespectHierarchieNote(?string $respectHierarchieNote) { $this->respectHierarchieNote = $respectHierarchieNote; - return $this; } @@ -1093,4 +1221,5 @@ class Immersion implements \Stringable { return 'Rapport "immersion" de '.$this->getPerson(); } + } diff --git a/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php b/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php index 363098f3a..ecf172d95 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php +++ b/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php @@ -55,7 +55,7 @@ class ProjetProfessionnel implements \Stringable #[ORM\ManyToMany(targetEntity: Appellation::class, cascade: ['persist'])] private Collection $souhait; - #[ORM\Column(name: 'domaineActiviteSouhait', type: Types::TEXT, nullable: true)] + #[ORM\Column(name: 'domaineActiviteSouhait', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $domaineActiviteSouhait = null; public const TYPE_CONTRAT = [ @@ -156,7 +156,6 @@ class ProjetProfessionnel implements \Stringable /** * Set typeContrat. * - * @param mixed|null $typeContrat * * @return ProjetProfessionnel */ @@ -169,6 +168,7 @@ class ProjetProfessionnel implements \Stringable /** * Get typeContrat. + * */ public function getTypeContrat() { @@ -200,7 +200,6 @@ class ProjetProfessionnel implements \Stringable /** * Set volumeHoraire. * - * @param mixed|null $volumeHoraire * * @return ProjetProfessionnel */ @@ -213,6 +212,7 @@ class ProjetProfessionnel implements \Stringable /** * Get volumeHoraire. + * */ public function getVolumeHoraire() { @@ -222,6 +222,7 @@ class ProjetProfessionnel implements \Stringable /** * Set volumeHoraireNotes. * + * * @return ProjetProfessionnel */ public function setVolumeHoraireNotes(?string $volumeHoraireNotes = null) @@ -244,6 +245,7 @@ class ProjetProfessionnel implements \Stringable /** * Set idee. * + * * @return ProjetProfessionnel */ public function setIdee(?string $idee = null) @@ -266,6 +268,7 @@ class ProjetProfessionnel implements \Stringable /** * Set enCoursConstruction. * + * * @return ProjetProfessionnel */ public function setEnCoursConstruction(?string $enCoursConstruction = null) @@ -288,6 +291,7 @@ class ProjetProfessionnel implements \Stringable /** * Set valideNotes. * + * * @return ProjetProfessionnel */ public function setValideNotes(?string $valideNotes = null) @@ -310,6 +314,7 @@ class ProjetProfessionnel implements \Stringable /** * Set projetProfessionnelNote. * + * * @return ProjetProfessionnel */ public function setProjetProfessionnelNote(?string $projetProfessionnelNote = null) diff --git a/src/Bundle/ChillJobBundle/src/Entity/Rome/Appellation.php b/src/Bundle/ChillJobBundle/src/Entity/Rome/Appellation.php index 2fda76700..455240181 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Rome/Appellation.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Rome/Appellation.php @@ -47,6 +47,8 @@ class Appellation implements \Stringable /** * Set code. * + * @param string $code + * * @return Appellation */ public function setCode(?string $code) @@ -69,6 +71,8 @@ class Appellation implements \Stringable /** * Set libelle. * + * @param string $libelle + * * @return Appellation */ public function setLibelle(?string $libelle) diff --git a/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php b/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php index 0f0ffe3bc..eeaaff951 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php @@ -41,7 +41,7 @@ class Metier public function __construct() { $this->appellations = new ArrayCollection(); - // $this->appellation = new ArrayCollection(); +// $this->appellation = new ArrayCollection(); } /** @@ -57,6 +57,8 @@ class Metier /** * Set libelle. * + * @param string $libelle + * * @return Metier */ public function setLibelle(?string $libelle) @@ -79,6 +81,8 @@ class Metier /** * Set code. * + * @param string $code + * * @return Metier */ public function setCode(?string $code) diff --git a/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php b/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php index c8d540a31..74486efdc 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php @@ -237,7 +237,7 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal break; case 'type_contrat__label': - if ('' !== $value) { + if ($value !== '') { $res[$key] = ($f) ? $value : null; } else { $res[$key] = null; @@ -340,6 +340,7 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal /** * @param \Doctrine\ORM\NativeQuery|\Doctrine\ORM\QueryBuilder $qb * @param mixed[] $data + * */ public function getResult($qb, $data) { @@ -380,6 +381,7 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal * @param string $key The column key, as added in the query * @param mixed[] $values The values from the result. if there are duplicates, those might be given twice. Example: array('FR', 'BE', 'CZ', 'FR', 'BE', 'FR') * @param mixed $data The data from the export's form (as defined in `buildForm` + * */ public function getLabels($key, array $values, $data) { @@ -399,7 +401,7 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal str_replace('__', '.', $key) ); } - if ('' === $value) { + if ($value === '') { return ''; } $arr = []; @@ -416,7 +418,7 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal str_replace('__', '.', $key) ); } - if ('' === $value) { + if ($value === '') { return ''; } $this->translationCompatKey($value, $key); @@ -427,7 +429,7 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal if ('_header' === $value) { return $key; } - if ('' === $value) { + if ($value === '') { return ''; } @@ -455,7 +457,7 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal if ('_header' === $value) { return $key; } - if ('' === $value) { + if ($value === '') { return ''; } diff --git a/src/Bundle/ChillJobBundle/src/Export/ListCV.php b/src/Bundle/ChillJobBundle/src/Export/ListCV.php index 51ca0f3f4..90a0312e4 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListCV.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListCV.php @@ -238,6 +238,7 @@ class ListCV implements ListInterface, ExportElementValidatedInterface * * @param QueryBuilder|\Doctrine\ORM\NativeQuery $qb * @param mixed[] $data the data from the export's form (added by self::buildForm) + * */ public function getResult($qb, $data) { @@ -311,6 +312,7 @@ class ListCV implements ListInterface, ExportElementValidatedInterface * @param string $key The column key, as added in the query * @param mixed[] $values The values from the result. if there are duplicates, those might be given twice. Example: array('FR', 'BE', 'CZ', 'FR', 'BE', 'FR') * @param mixed $data The data from the export's form (as defined in `buildForm` + * */ public function getLabels($key, array $values, $data) { diff --git a/src/Bundle/ChillJobBundle/src/Export/ListFrein.php b/src/Bundle/ChillJobBundle/src/Export/ListFrein.php index b94cc0342..0d5ecb3da 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListFrein.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListFrein.php @@ -204,6 +204,7 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface /** * Return the required Role to execute the Export. + * */ public function requiredRole(): string { @@ -331,6 +332,7 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface * * @param QueryBuilder|\Doctrine\ORM\NativeQuery $qb * @param mixed[] $data the data from the export's form (added by self::buildForm) + * */ public function getResult($qb, $data) { @@ -406,6 +408,7 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface * @param string $key The column key, as added in the query * @param mixed[] $values The values from the result. if there are duplicates, those might be given twice. Example: array('FR', 'BE', 'CZ', 'FR', 'BE', 'FR') * @param mixed $data The data from the export's form (as defined in `buildForm` + * */ public function getLabels($key, array $values, $data) { diff --git a/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php b/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php index 73434474b..0704a8686 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php @@ -210,6 +210,7 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn /** * Return the required Role to execute the Export. + * */ public function requiredRole(): string { @@ -369,6 +370,7 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn * * @param QueryBuilder|\Doctrine\ORM\NativeQuery $qb * @param mixed[] $data the data from the export's form (added by self::buildForm) + * */ public function getResult($qb, $data) { @@ -444,6 +446,7 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn * @param string $key The column key, as added in the query * @param mixed[] $values The values from the result. if there are duplicates, those might be given twice. Example: array('FR', 'BE', 'CZ', 'FR', 'BE', 'FR') * @param mixed $data The data from the export's form (as defined in `buildForm` + * */ public function getLabels($key, array $values, $data) { diff --git a/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php b/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php index 7faa51ed9..b9d521a54 100644 --- a/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php +++ b/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php @@ -33,26 +33,26 @@ class MenuBuilder implements LocalMenuBuilderInterface /** @var \Chill\PersonBundle\Entity\Person $person */ $person = $parameters['person']; - // if ($this->authorizationChecker->isGranted(CSConnectesVoter::REPORT_NEW, $person)) { - $menu->addChild('Situation personnelle', [ - 'route' => 'chill_job_personal_situation_view', - 'routeParameters' => [ - 'person' => $person->getId(), - ], - ]) - ->setExtras([ - 'order' => 50, - ]); - $menu->addChild('Dispositifs', [ - 'route' => 'chill_job_dispositifs_view', - 'routeParameters' => [ - 'person' => $person->getId(), - ], - ]) - ->setExtras([ - 'order' => 51, - ]); - // } +// if ($this->authorizationChecker->isGranted(CSConnectesVoter::REPORT_NEW, $person)) { + $menu->addChild('Situation personnelle', [ + 'route' => 'chill_job_personal_situation_view', + 'routeParameters' => [ + 'person' => $person->getId(), + ], + ]) + ->setExtras([ + 'order' => 50, + ]); + $menu->addChild('Dispositifs', [ + 'route' => 'chill_job_dispositifs_view', + 'routeParameters' => [ + 'person' => $person->getId(), + ], + ]) + ->setExtras([ + 'order' => 51, + ]); +// } $menu->addChild('Emploi', [ 'route' => 'chill_job_report_index', diff --git a/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php b/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php index 7ccf04364..39a1eb348 100644 --- a/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php +++ b/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php @@ -86,6 +86,7 @@ class ExportsVoter extends AbstractChillVoter implements ProvideRoleHierarchyInt * ``` * [ 'Title' => [ 'CHILL_FOO_SEE', 'CHILL_FOO_UPDATE' ] ] * ``` + * */ public function getRolesWithHierarchy(): array { diff --git a/src/Bundle/ChillMainBundle/Entity/Address.php b/src/Bundle/ChillMainBundle/Entity/Address.php index f04783506..72ad60ace 100644 --- a/src/Bundle/ChillMainBundle/Entity/Address.php +++ b/src/Bundle/ChillMainBundle/Entity/Address.php @@ -446,7 +446,7 @@ class Address implements TrackCreationInterface, TrackUpdateInterface return $this; } - public function setLinkedToThirdParty(?ThirdParty $linkedToThirdParty): self + public function setLinkedToThirdParty(?\Chill\ThirdPartyBundle\Entity\ThirdParty $linkedToThirdParty): self { $this->linkedToThirdParty = $linkedToThirdParty; diff --git a/src/Bundle/ChillMainBundle/Entity/Embeddable/CommentEmbeddable.php b/src/Bundle/ChillMainBundle/Entity/Embeddable/CommentEmbeddable.php index ea0d4ec29..ee90fb88b 100644 --- a/src/Bundle/ChillMainBundle/Entity/Embeddable/CommentEmbeddable.php +++ b/src/Bundle/ChillMainBundle/Entity/Embeddable/CommentEmbeddable.php @@ -61,6 +61,9 @@ class CommentEmbeddable $this->date = $date; } + /** + * @param int $userId + */ public function setUserId(?int $userId) { $this->userId = $userId; diff --git a/src/Bundle/ChillMainBundle/Entity/Language.php b/src/Bundle/ChillMainBundle/Entity/Language.php index 894b929ac..079b31d22 100644 --- a/src/Bundle/ChillMainBundle/Entity/Language.php +++ b/src/Bundle/ChillMainBundle/Entity/Language.php @@ -59,6 +59,8 @@ class Language /** * Set id. * + * @param string $id + * * @return Language */ public function setId(?string $id) diff --git a/src/Bundle/ChillMainBundle/Entity/PostalCode.php b/src/Bundle/ChillMainBundle/Entity/PostalCode.php index ecab19a5f..ed81a2b4b 100644 --- a/src/Bundle/ChillMainBundle/Entity/PostalCode.php +++ b/src/Bundle/ChillMainBundle/Entity/PostalCode.php @@ -157,6 +157,8 @@ class PostalCode implements TrackUpdateInterface, TrackCreationInterface /** * Set code. * + * @param string $code + * * @return PostalCode */ public function setCode(?string $code) @@ -181,6 +183,8 @@ class PostalCode implements TrackUpdateInterface, TrackCreationInterface /** * Set name. * + * @param string $name + * * @return PostalCode */ public function setName(?string $name) @@ -193,6 +197,7 @@ class PostalCode implements TrackUpdateInterface, TrackCreationInterface /** * Set origin. * + * * @return PostalCode */ public function setOrigin(int $origin) diff --git a/src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/ClosingMotive.php b/src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/ClosingMotive.php index 11321e9bb..6cfd17f26 100644 --- a/src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/ClosingMotive.php +++ b/src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/ClosingMotive.php @@ -182,6 +182,7 @@ class ClosingMotive /** * Set name. * + * * @return ClosingMotive */ public function setName(array $name) diff --git a/src/Bundle/ChillPersonBundle/Entity/Person.php b/src/Bundle/ChillPersonBundle/Entity/Person.php index ff9e799a3..6c5abf00a 100644 --- a/src/Bundle/ChillPersonBundle/Entity/Person.php +++ b/src/Bundle/ChillPersonBundle/Entity/Person.php @@ -1409,6 +1409,9 @@ class Person implements HasCenterInterface, TrackCreationInterface, TrackUpdateI return $this; } + /** + * @param \DateTime $birthdate + */ public function setBirthdate(?\DateTime $birthdate): self { $this->birthdate = $birthdate; diff --git a/src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php b/src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php index 21c057a34..794dcf0d7 100644 --- a/src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php +++ b/src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php @@ -39,11 +39,11 @@ class ListPerson implements ListInterface, GroupedExportInterface private readonly bool $filterStatsByCenters; public function __construct( - private readonly CustomFieldProvider $customFieldProvider, - private readonly ListPersonHelper $listPersonHelper, + private readonly CustomFieldProvider $customFieldProvider, + private readonly ListPersonHelper $listPersonHelper, protected readonly EntityManagerInterface $entityManager, private readonly TranslatableStringHelper $translatableStringHelper, - ParameterBagInterface $parameterBag, + ParameterBagInterface $parameterBag, ) { $this->filterStatsByCenters = $parameterBag->get('chill_main')['acl']['filter_stats_by_center']; } diff --git a/src/Bundle/ChillReportBundle/Entity/Report.php b/src/Bundle/ChillReportBundle/Entity/Report.php index 8d6c1888f..a1579b2a1 100644 --- a/src/Bundle/ChillReportBundle/Entity/Report.php +++ b/src/Bundle/ChillReportBundle/Entity/Report.php @@ -154,6 +154,8 @@ class Report implements HasCenterInterface, HasScopeInterface /** * Set date. * + * @param \DateTime $date + * * @return Report */ public function setDate(?\DateTime $date) diff --git a/src/Bundle/ChillTaskBundle/Entity/RecurringTask.php b/src/Bundle/ChillTaskBundle/Entity/RecurringTask.php index 4856835e5..f63912b32 100644 --- a/src/Bundle/ChillTaskBundle/Entity/RecurringTask.php +++ b/src/Bundle/ChillTaskBundle/Entity/RecurringTask.php @@ -112,6 +112,8 @@ class RecurringTask extends AbstractTask /** * Set firstOccurenceEndDate. * + * @param \DateTime $firstOccurenceEndDate + * * @return RecurringTask */ public function setFirstOccurenceEndDate(?\DateTime $firstOccurenceEndDate) @@ -124,6 +126,8 @@ class RecurringTask extends AbstractTask /** * Set lastOccurenceEndDate. * + * @param \DateTime $lastOccurenceEndDate + * * @return RecurringTask */ public function setLastOccurenceEndDate(?\DateTime $lastOccurenceEndDate) @@ -136,6 +140,8 @@ class RecurringTask extends AbstractTask /** * Set occurenceFrequency. * + * @param string $occurenceFrequency + * * @return RecurringTask */ public function setOccurenceFrequency(?string $occurenceFrequency) diff --git a/src/Bundle/ChillTaskBundle/Entity/SingleTask.php b/src/Bundle/ChillTaskBundle/Entity/SingleTask.php index 1bfbed9d2..c8427b725 100644 --- a/src/Bundle/ChillTaskBundle/Entity/SingleTask.php +++ b/src/Bundle/ChillTaskBundle/Entity/SingleTask.php @@ -136,6 +136,8 @@ class SingleTask extends AbstractTask /** * Set endDate. * + * @param \DateTime $endDate + * * @return SingleTask */ public function setEndDate(?\DateTime $endDate) @@ -153,6 +155,8 @@ class SingleTask extends AbstractTask /** * Set startDate. * + * @param \DateTime $startDate + * * @return SingleTask */ public function setStartDate(?\DateTime $startDate) diff --git a/src/Bundle/ChillTaskBundle/Entity/Task/AbstractTaskPlaceEvent.php b/src/Bundle/ChillTaskBundle/Entity/Task/AbstractTaskPlaceEvent.php index 26a73a7e5..92de2c496 100644 --- a/src/Bundle/ChillTaskBundle/Entity/Task/AbstractTaskPlaceEvent.php +++ b/src/Bundle/ChillTaskBundle/Entity/Task/AbstractTaskPlaceEvent.php @@ -105,6 +105,7 @@ class AbstractTaskPlaceEvent /** * Set transition. * + * * @return AbstractTaskPlaceEvent */ public function setTransition(string $transition) From 11c069a2ffdc9dfdeec267bb6dd5c9d8024c72f6 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 24 Apr 2024 10:10:55 +0200 Subject: [PATCH 022/136] Revert "phpstan baseline 5 updated" This reverts commit deaab8027073c570ae162ebb329f79951a549a56. --- phpstan-baseline-level-5.neon | 3199 +++++++++++++++++++++++++++++++-- 1 file changed, 3002 insertions(+), 197 deletions(-) diff --git a/phpstan-baseline-level-5.neon b/phpstan-baseline-level-5.neon index 2d88e45cb..27945c670 100644 --- a/phpstan-baseline-level-5.neon +++ b/phpstan-baseline-level-5.neon @@ -1,361 +1,3166 @@ parameters: ignoreErrors: - - message: "#^Parameter \\#1 \\$context of method Chill\\\\ActivityBundle\\\\Timeline\\\\TimelineActivityProvider\\:\\:checkContext\\(\\) expects string, Chill\\\\MainBundle\\\\Timeline\\\\type given\\.$#" + message: "#^Access to an undefined property Chill\\\\ActivityBundle\\\\Entity\\\\Activity\\:\\:\\$personsAssociated\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php + + - + message: "#^Access to an undefined property Chill\\\\ActivityBundle\\\\Entity\\\\Activity\\:\\:\\$personsNotAssociated\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Serializer\\\\SerializerInterface\\:\\:normalize\\(\\)\\.$#" + count: 2 + path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php + + - + message: "#^Method Chill\\\\ActivityBundle\\\\Controller\\\\ActivityReasonCategoryController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Controller/ActivityReasonCategoryController.php + + - + message: "#^Method Chill\\\\ActivityBundle\\\\Controller\\\\ActivityReasonCategoryController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Controller/ActivityReasonCategoryController.php + + - + message: "#^Method Chill\\\\ActivityBundle\\\\Controller\\\\ActivityReasonController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Controller/ActivityReasonController.php + + - + message: "#^Method Chill\\\\ActivityBundle\\\\Controller\\\\ActivityReasonController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Controller/ActivityReasonController.php + + - + message: "#^Else branch is unreachable because previous condition is always true\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/DataFixtures/ORM/LoadActivity.php + + - + message: "#^Strict comparison using \\!\\=\\= between null and Chill\\\\ActivityBundle\\\\Entity\\\\ActivityReason will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/DataFixtures/ORM/LoadActivity.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/DataFixtures/ORM/LoadActivityNotifications.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/DependencyInjection/Configuration.php + + - + message: "#^Argument of an invalid type string supplied for foreach, only iterables are supported\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Entity/ActivityReasonCategory.php + + - + message: "#^Binary operation \"\\.\" between 'ActivityReasonCateg…' and array results in an error\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Entity/ActivityReasonCategory.php + + - + message: "#^Method Chill\\\\ActivityBundle\\\\Entity\\\\ActivityReasonCategory\\:\\:getName\\(\\) should return array but returns string\\.$#" + count: 3 + path: src/Bundle/ChillActivityBundle/Entity/ActivityReasonCategory.php + + - + message: "#^Property Chill\\\\ActivityBundle\\\\Entity\\\\ActivityReasonCategory\\:\\:\\$name \\(string\\) does not accept array\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Entity/ActivityReasonCategory.php + + - + message: "#^Expression on left side of \\?\\? is not nullable\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/EntityListener/ActivityEntityListener.php + + - + message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\ActivityBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Form/ActivityReasonCategoryType.php + + - + message: "#^Parameter \\$resolver of method Chill\\\\ActivityBundle\\\\Form\\\\ActivityReasonCategoryType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\ActivityBundle\\\\Form\\\\OptionsResolverInterface\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Form/ActivityReasonCategoryType.php + + - + message: "#^Method Chill\\\\ActivityBundle\\\\Repository\\\\ActivityACLAwareRepository\\:\\:getWhereClause\\(\\) should return array but returns string\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Repository/ActivityACLAwareRepository.php + + - + message: "#^Expression on left side of \\?\\? is not nullable\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Repository/ActivityReasonRepository.php + + - + message: "#^Parameter \\$context of method Chill\\\\ActivityBundle\\\\Timeline\\\\TimelineActivityProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" count: 1 path: src/Bundle/ChillActivityBundle/Timeline/TimelineActivityProvider.php - - message: "#^Parameter \\#2 \\$byUser of class Chill\\\\CalendarBundle\\\\Messenger\\\\Message\\\\InviteUpdateMessage constructor expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + message: "#^Parameter \\$entity of method Chill\\\\ActivityBundle\\\\Timeline\\\\TimelineActivityProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" count: 1 - path: src/Bundle/ChillCalendarBundle/Controller/InviteApiController.php + path: src/Bundle/ChillActivityBundle/Timeline/TimelineActivityProvider.php - - message: "#^Parameter \\#2 \\$byUser of class Chill\\\\CalendarBundle\\\\Messenger\\\\Message\\\\CalendarRemovedMessage constructor expects Chill\\\\MainBundle\\\\Entity\\\\User\\|null, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Messenger/Doctrine/CalendarEntityListener.php + message: "#^Result of && is always false\\.$#" + count: 6 + path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php - - message: "#^Parameter \\#3 \\$byUser of class Chill\\\\CalendarBundle\\\\Messenger\\\\Message\\\\CalendarMessage constructor expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\Embeddable\\\\CommentEmbeddable will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and DateTime will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Doctrine\\\\Common\\\\Collections\\\\Collection will always evaluate to false\\.$#" count: 2 - path: src/Bundle/ChillCalendarBundle/Messenger/Doctrine/CalendarEntityListener.php + path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php - - message: "#^Parameter \\#2 \\$byUser of class Chill\\\\CalendarBundle\\\\Messenger\\\\Message\\\\CalendarRangeRemovedMessage constructor expects Chill\\\\MainBundle\\\\Entity\\\\User\\|null, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + message: "#^Strict comparison using \\=\\=\\= between null and bool will always evaluate to false\\.$#" count: 1 - path: src/Bundle/ChillCalendarBundle/Messenger/Doctrine/CalendarRangeEntityListener.php + path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php - - message: "#^Parameter \\#3 \\$byUser of class Chill\\\\CalendarBundle\\\\Messenger\\\\Message\\\\CalendarRangeMessage constructor expects Chill\\\\MainBundle\\\\Entity\\\\User\\|null, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillAsideActivityBundle/src/DependencyInjection/Configuration.php + + - + message: "#^Property Chill\\\\AsideActivityBundle\\\\Entity\\\\AsideActivityCategory\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillAsideActivityBundle/src/Entity/AsideActivityCategory.php + + - + message: "#^Call to method DateTimeImmutable\\:\\:add\\(\\) on a separate line has no effect\\.$#" + count: 1 + path: src/Bundle/ChillAsideActivityBundle/src/Form/AsideActivityFormType.php + + - + message: "#^Call to method DateTimeImmutable\\:\\:setTimezone\\(\\) on a separate line has no effect\\.$#" + count: 1 + path: src/Bundle/ChillAsideActivityBundle/src/Form/AsideActivityFormType.php + + - + message: "#^Call to an undefined method Chill\\\\BudgetBundle\\\\Entity\\\\AbstractElement\\:\\:getId\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Controller/AbstractElementController.php + + - + message: "#^Method Chill\\\\BudgetBundle\\\\Controller\\\\AbstractElementController\\:\\:createDeleteForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Controller/AbstractElementController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/DependencyInjection/Configuration.php + + - + message: "#^Property Chill\\\\BudgetBundle\\\\Entity\\\\AbstractElement\\:\\:\\$startDate \\(DateTimeImmutable\\) does not accept null\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Entity/AbstractElement.php + + - + message: "#^Strict comparison using \\=\\=\\= between 0 and string will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Entity/AbstractElement.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and DateTimeImmutable will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Entity/AbstractElement.php + + - + message: "#^Property Chill\\\\BudgetBundle\\\\Entity\\\\ChargeKind\\:\\:\\$tags is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Entity/ChargeKind.php + + - + message: "#^Property Chill\\\\BudgetBundle\\\\Entity\\\\ResourceKind\\:\\:\\$tags is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Entity/ResourceKind.php + + - + message: "#^PHPDoc tag @param for parameter \\$limit with type mixed is not subtype of native type int\\|null\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Repository/ChargeKindRepository.php + + - + message: "#^PHPDoc tag @param for parameter \\$offset with type mixed is not subtype of native type int\\|null\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Repository/ChargeKindRepository.php + + - + message: "#^PHPDoc tag @param for parameter \\$limit with type mixed is not subtype of native type int\\|null\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Repository/ResourceKindRepository.php + + - + message: "#^PHPDoc tag @param for parameter \\$offset with type mixed is not subtype of native type int\\|null\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Repository/ResourceKindRepository.php + + - + message: "#^Property Chill\\\\CalendarBundle\\\\Command\\\\AzureGrantAdminConsentAndAcquireToken\\:\\:\\$clientRegistry is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/Command/AzureGrantAdminConsentAndAcquireToken.php + + - + message: "#^Property Chill\\\\CalendarBundle\\\\Command\\\\SendTestShortMessageOnCalendarCommand\\:\\:\\$phoneNumberHelper is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/Command/SendTestShortMessageOnCalendarCommand.php + + - + message: "#^Strict comparison using \\=\\=\\= between false and DateInterval will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/Command/SendTestShortMessageOnCalendarCommand.php + + - + message: "#^Strict comparison using \\=\\=\\= between false and DateTimeImmutable will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/Command/SendTestShortMessageOnCalendarCommand.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Form\\\\FormInterface\\:\\:isClicked\\(\\)\\.$#" + count: 4 + path: src/Bundle/ChillCalendarBundle/Controller/CalendarController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Serializer\\\\SerializerInterface\\:\\:normalize\\(\\)\\.$#" count: 2 - path: src/Bundle/ChillCalendarBundle/Messenger/Doctrine/CalendarRangeEntityListener.php + path: src/Bundle/ChillCalendarBundle/Controller/CalendarController.php - - message: "#^Parameter \\#1 \\$token of method Chill\\\\CalendarBundle\\\\RemoteCalendar\\\\Connector\\\\MSGraph\\\\OnBehalfOfUserTokenStorage\\:\\:setToken\\(\\) expects TheNetworg\\\\OAuth2\\\\Client\\\\Token\\\\AccessToken, League\\\\OAuth2\\\\Client\\\\Token\\\\AccessTokenInterface given\\.$#" + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/Controller/CalendarController.php + + - + message: "#^Method Symfony\\\\Component\\\\HttpFoundation\\\\Session\\\\SessionInterface\\:\\:remove\\(\\) invoked with 2 parameters, 1 required\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/Controller/RemoteCalendarConnectAzureController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/DependencyInjection/Configuration.php + + - + message: "#^Property Chill\\\\CalendarBundle\\\\Messenger\\\\Message\\\\CalendarMessage\\:\\:\\$oldInvites \\(array\\\\) does not accept array\\\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/Messenger/Message/CalendarMessage.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraph/EventsOnUserSubscriptionCreator.php + + - + message: "#^Method Chill\\\\CalendarBundle\\\\RemoteCalendar\\\\Connector\\\\MSGraph\\\\OnBehalfOfUserTokenStorage\\:\\:getToken\\(\\) should return TheNetworg\\\\OAuth2\\\\Client\\\\Token\\\\AccessToken but returns League\\\\OAuth2\\\\Client\\\\Token\\\\AccessTokenInterface\\.$#" count: 1 path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraph/OnBehalfOfUserTokenStorage.php - - message: "#^Parameter \\#4 \\$offset of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarRepository\\:\\:findBy\\(\\) expects int\\|null, array\\|null given\\.$#" + message: "#^Call to method DateTimeImmutable\\:\\:setTimezone\\(\\) on a separate line has no effect\\.$#" count: 1 - path: src/Bundle/ChillCalendarBundle/Repository/CalendarRepository.php + path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraph/RemoteEventConverter.php - - message: "#^Parameter \\#1 \\$prefix of function uniqid expects string, int\\<0, max\\> given\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/Type/ChoicesListType.php + message: "#^Expression on left side of \\?\\? is not nullable\\.$#" + count: 2 + path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraphRemoteCalendarConnector.php - - message: "#^Parameter \\#4 \\$attributes of method Chill\\\\DocGeneratorBundle\\\\Serializer\\\\Normalizer\\\\DocGenObjectNormalizer\\:\\:normalizeNullData\\(\\) expects array\\, array\\ given\\.$#" + message: "#^PHPDoc tag @return has invalid value \\(array\\{\\?id\\: string, \\?lastModifiedDateTime\\: int, \\?changeKey\\: string\\}\\)\\: Unexpected token \"\\:\", expected '\\}' at offset 129$#" + count: 2 + path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraphRemoteCalendarConnector.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraphRemoteCalendarConnector.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Console\\\\Helper\\\\HelperInterface\\:\\:ask\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Command/CreateFieldsOnGroupCommand.php + + - + message: "#^If condition is always true\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Command/CreateFieldsOnGroupCommand.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Command/CreateFieldsOnGroupCommand.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\Controller\\\\CustomFieldController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldController.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\Controller\\\\CustomFieldController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldController.php + + - + message: "#^Ternary operator condition is always true\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldController.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQuery\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findOneByEntity\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findOneById\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Form\\\\FormInterface\\:\\:isClicked\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\Controller\\\\CustomFieldsGroupController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\Controller\\\\CustomFieldsGroupController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\Controller\\\\CustomFieldsGroupController\\:\\:createMakeDefaultForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php + + - + message: "#^Method Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\:\\:create\\(\\) invoked with 4 parameters, 1\\-3 required\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and array\\|string will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 3 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:render\\(\\) should return string but returns null\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php + + - + message: "#^PHPDoc tag @param for parameter \\$builder with type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface is not subtype of native type Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" + count: 2 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php + + - + message: "#^PHPDoc tag @param for parameter \\$customField with type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField is not subtype of native type Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomField\\.$#" + count: 4 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php + + - + message: "#^Anonymous function never returns null so it can be removed from the return type\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldLongChoice\\\\Option will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php + + - + message: "#^Ternary operator condition is always true\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/DependencyInjection/Configuration.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomField\\:\\:getName\\(\\) should return array but returns string\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Entity/CustomField.php + + - + message: "#^Call to method buildOptionsForm\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/CustomFieldType.php + + - + message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\CustomFieldsBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/CustomFieldType.php + + - + message: "#^Parameter \\$resolver of method Chill\\\\CustomFieldsBundle\\\\Form\\\\CustomFieldType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\Form\\\\OptionsResolverInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/CustomFieldType.php + + - + message: "#^Instanceof between Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup and Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/CustomFieldsGroupToIdTransformer.php + + - + message: "#^Instanceof between string and Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/CustomFieldsGroupToIdTransformer.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\Form\\\\DataTransformer\\\\CustomFieldsGroupToIdTransformer\\:\\:transform\\(\\) should return string but returns int\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/CustomFieldsGroupToIdTransformer.php + + - + message: "#^Call to an undefined method Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomField\\:\\:getLabel\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/JsonCustomFieldToArrayTransformer.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findOneById\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/JsonCustomFieldToArrayTransformer.php + + - + message: "#^Call to method getCustomFieldByType\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldCompiler\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/Type/CustomFieldType.php + + - + message: "#^Property Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldType\\:\\:\\$customFieldCompiler \\(Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldCompiler\\) does not accept Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/Type/CustomFieldType.php + + - + message: "#^Property Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldType\\:\\:\\$customFieldCompiler has unknown class Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldCompiler as its type\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/Type/CustomFieldType.php + + - + message: "#^Property Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldType\\:\\:\\$om is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/Type/CustomFieldType.php + + - + message: "#^Invalid array key type Chill\\\\CustomFieldsBundle\\\\Service\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:getCustomFieldByType\\(\\) has invalid return type Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php + + - + message: "#^Parameter \\$serviceName of method Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:addCustomField\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\Service\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php + + - + message: "#^Parameter \\$type of method Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:addCustomField\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\Service\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php + + - + message: "#^Property Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:\\$container \\(Chill\\\\CustomFieldsBundle\\\\Service\\\\Container\\) does not accept Symfony\\\\Component\\\\DependencyInjection\\\\ContainerInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php + + - + message: "#^Property Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:\\$container has unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\Container as its type\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php + + - + message: "#^Property Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:\\$container is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php + + - + message: "#^Call to method deserialize\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldsHelper.php + + - + message: "#^Call to method isEmptyValue\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldsHelper.php + + - + message: "#^Call to method render\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldsHelper.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldsHelper\\:\\:renderCustomField\\(\\) has invalid return type Chill\\\\CustomFieldsBundle\\\\Service\\\\The\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldsHelper.php + + - + message: "#^Property Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldsHelper\\:\\:\\$em is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldsHelper.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\Templating\\\\Twig\\\\CustomFieldRenderingTwig\\:\\:renderWidget\\(\\) should return string but returns Chill\\\\CustomFieldsBundle\\\\Service\\\\The\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Templating/Twig/CustomFieldRenderingTwig.php + + - + message: "#^Parameter \\$customFielsGroup of method Chill\\\\CustomFieldsBundle\\\\Templating\\\\Twig\\\\CustomFieldsGroupRenderingTwig\\:\\:renderWidget\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\Templating\\\\Twig\\\\CustomFieldsGroud\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Templating/Twig/CustomFieldsGroupRenderingTwig.php + + - + message: "#^Left side of && is always true\\.$#" + count: 1 + path: src/Bundle/ChillDocGeneratorBundle/Controller/DocGeneratorTemplateController.php + + - + message: "#^PHPDoc tag @return with type void is incompatible with native type Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" + count: 1 + path: src/Bundle/ChillDocGeneratorBundle/Controller/DocGeneratorTemplateController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and int will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillDocGeneratorBundle/Controller/DocGeneratorTemplateController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillDocGeneratorBundle/DependencyInjection/Configuration.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Doctrine\\\\Common\\\\Collections\\\\Collection will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/CollectionDocGenNormalizer.php + + - + message: "#^Call to an undefined method ReflectionType\\:\\:getName\\(\\)\\.$#" count: 1 path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/DocGenObjectNormalizer.php - - message: "#^Parameter \\#6 \\$attributes of method Chill\\\\DocGeneratorBundle\\\\Serializer\\\\Normalizer\\\\DocGenObjectNormalizer\\:\\:normalizeObject\\(\\) expects array\\, array\\ given\\.$#" + message: "#^Expression on left side of \\?\\? is not nullable\\.$#" count: 1 path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/DocGenObjectNormalizer.php - - message: "#^Parameter \\#1 \\$value of function count expects array\\|Countable, Chill\\\\MainBundle\\\\Entity\\\\Center given\\.$#" + message: "#^Parameter \\#1 \\$user of method Chill\\\\DocStoreBundle\\\\Entity\\\\Document\\:\\:setUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User\\|null, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + count: 2 + path: src/Bundle/ChillDocStoreBundle/Controller/DocumentAccompanyingCourseController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillDocStoreBundle/Controller/DocumentAccompanyingCourseController.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQuery\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillDocStoreBundle/Controller/DocumentCategoryController.php + + - + message: "#^Parameter \\#1 \\$user of method Chill\\\\DocStoreBundle\\\\Entity\\\\Document\\:\\:setUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User\\|null, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + count: 2 + path: src/Bundle/ChillDocStoreBundle/Controller/DocumentPersonController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\Person will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillDocStoreBundle/Controller/DocumentPersonController.php + + - + message: "#^Property Chill\\\\DocStoreBundle\\\\Repository\\\\AccompanyingCourseDocumentRepository\\:\\:\\$em is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillDocStoreBundle/Repository/AccompanyingCourseDocumentRepository.php + + - + message: "#^Property Chill\\\\DocStoreBundle\\\\Repository\\\\DocumentCategoryRepository\\:\\:\\$em is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillDocStoreBundle/Repository/DocumentCategoryRepository.php + + - + message: "#^Instanceof between Chill\\\\DocStoreBundle\\\\Entity\\\\PersonDocument and Chill\\\\DocStoreBundle\\\\Entity\\\\PersonDocument will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillDocStoreBundle/Security/Authorization/PersonDocumentVoter.php + + - + message: "#^Default value of the parameter \\#5 \\$options \\(array\\{\\}\\) of method Chill\\\\DocStoreBundle\\\\Templating\\\\WopiEditTwigExtensionRuntime\\:\\:renderButtonGroup\\(\\) is incompatible with type array\\{small\\: bool\\}\\.$#" + count: 1 + path: src/Bundle/ChillDocStoreBundle/Templating/WopiEditTwigExtensionRuntime.php + + - + message: "#^Property Chill\\\\DocStoreBundle\\\\Templating\\\\WopiEditTwigExtensionRuntime\\:\\:\\$discovery is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillDocStoreBundle/Templating/WopiEditTwigExtensionRuntime.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:countByPerson\\(\\)\\.$#" count: 1 path: src/Bundle/ChillEventBundle/Controller/EventController.php - - message: "#^Parameter \\#1 \\$callback of function call_user_func expects callable\\(\\)\\: mixed, null given\\.$#" + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findByPersonInCircle\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/EventController.php + + - + message: "#^Negated boolean expression is always false\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/EventController.php + + - + message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\EventTypeController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/EventTypeController.php + + - + message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\EventTypeController\\:\\:createDeleteForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/EventTypeController.php + + - + message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\EventTypeController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/EventTypeController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\EventBundle\\\\Entity\\\\Event will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/ParticipationController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\EventBundle\\\\Entity\\\\Participation will always evaluate to false\\.$#" count: 2 - path: src/Bundle/ChillEventBundle/Form/ChoiceLoader/EventChoiceLoader.php + path: src/Bundle/ChillEventBundle/Controller/ParticipationController.php - - message: "#^Parameter \\#3 \\$formClass of method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\CRUDController\\:\\:createFormFor\\(\\) expects string\\|null, Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\type\\|null given\\.$#" + message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\RoleController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php + path: src/Bundle/ChillEventBundle/Controller/RoleController.php - - message: "#^Parameter \\#3 \\$scope of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\AuthorizationHelper\\:\\:getReachableCenters\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\Scope\\|null, Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\Scope\\|null given\\.$#" + message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\RoleController\\:\\:createDeleteForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php + path: src/Bundle/ChillEventBundle/Controller/RoleController.php - - message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Repository\\\\NotificationRepository\\:\\:countUnreadByUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\RoleController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Controller/NotificationApiController.php + path: src/Bundle/ChillEventBundle/Controller/RoleController.php - - message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Repository\\\\NotificationRepository\\:\\:findUnreadByUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\StatusController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Controller/NotificationApiController.php + path: src/Bundle/ChillEventBundle/Controller/StatusController.php - - message: "#^Parameter \\#1 \\$context of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineBuilder\\:\\:countItems\\(\\) expects Chill\\\\MainBundle\\\\Timeline\\\\unknown, string given\\.$#" + message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\StatusController\\:\\:createDeleteForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Controller/TimelineCenterController.php + path: src/Bundle/ChillEventBundle/Controller/StatusController.php - - message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\:\\:addSubscriberToFinal\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\StatusController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Controller/WorkflowApiController.php + path: src/Bundle/ChillEventBundle/Controller/StatusController.php - - message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\:\\:addSubscriberToStep\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + message: "#^Instanceof between Chill\\\\EventBundle\\\\Entity\\\\Event and Chill\\\\EventBundle\\\\Entity\\\\Event will always evaluate to true\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Controller/WorkflowApiController.php + path: src/Bundle/ChillEventBundle/Security/Authorization/EventVoter.php - - message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\:\\:isUserSubscribedToFinal\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + message: "#^Unreachable statement \\- code above always terminates\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Controller/WorkflowApiController.php + path: src/Bundle/ChillEventBundle/Security/Authorization/EventVoter.php - - message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\:\\:isUserSubscribedToStep\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + message: "#^Instanceof between Chill\\\\EventBundle\\\\Entity\\\\Participation and Chill\\\\EventBundle\\\\Entity\\\\Participation will always evaluate to true\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Controller/WorkflowApiController.php + path: src/Bundle/ChillEventBundle/Security/Authorization/ParticipationVoter.php - - message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\:\\:removeSubscriberToFinal\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + message: "#^Unreachable statement \\- code above always terminates\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Controller/WorkflowApiController.php + path: src/Bundle/ChillEventBundle/Security/Authorization/ParticipationVoter.php - - message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\:\\:removeSubscriberToStep\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + message: "#^Parameter \\#2 \\$context \\(string\\) of method Chill\\\\EventBundle\\\\Timeline\\\\TimelineEventProvider\\:\\:getEntityTemplate\\(\\) should be compatible with parameter \\$context \\(Chill\\\\MainBundle\\\\Timeline\\\\type\\) of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineProviderInterface\\:\\:getEntityTemplate\\(\\)$#" count: 1 - path: src/Bundle/ChillMainBundle/Controller/WorkflowApiController.php + path: src/Bundle/ChillEventBundle/Timeline/TimelineEventProvider.php - - message: "#^Parameter \\#1 \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Configuration\\:\\:filterWidgetByPlace\\(\\) expects string, Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\type given\\.$#" + message: "#^Parameter \\#1 \\$seconds of function sleep expects int, string given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php + path: src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php - - message: "#^Parameter \\#1 \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Configuration\\:\\:getWidgetAliasesbyPlace\\(\\) expects Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\type, string given\\.$#" + message: "#^Parameter \\#1 \\$interval of method DateTimeImmutable\\:\\:add\\(\\) expects DateInterval, string\\|null given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php - - - - message: "#^Parameter \\#2 \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:createDefinition\\(\\) expects Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type, string given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php - - - - message: "#^Parameter \\#3 \\$order of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:createDefinition\\(\\) expects Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type, float given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php - - - - message: "#^Parameter \\#2 \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:getServiceId\\(\\) expects string, Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/AbstractWidgetFactory.php - - - - message: "#^Parameter \\#3 \\$order of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:getServiceId\\(\\) expects float, Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/AbstractWidgetFactory.php - - - - message: "#^Parameter \\#2 \\$nbAggregators of method Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\CSVFormatter\\:\\:appendAggregatorForm\\(\\) expects string, int\\<0, max\\> given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/CSVFormatter.php - - - - message: "#^Parameter \\#2 \\$array of function array_map expects array, Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php - - - - message: "#^Parameter \\#1 \\$callback of function call_user_func expects callable\\(\\)\\: mixed, null given\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Form/ChoiceLoader/PostalCodeChoiceLoader.php - - - - message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Embeddable\\\\PrivateCommentEmbeddable\\:\\:getCommentForUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/DataMapper/PrivateCommentDataMapper.php - - - - message: "#^Parameter \\#1 \\$em of class Chill\\\\MainBundle\\\\Form\\\\Type\\\\DataTransformer\\\\ObjectToIdTransformer constructor expects Doctrine\\\\ORM\\\\EntityManagerInterface, Doctrine\\\\Persistence\\\\ObjectManager given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/Type/Select2CountryType.php - - - - message: "#^Parameter \\#1 \\$em of class Chill\\\\MainBundle\\\\Form\\\\Type\\\\DataTransformer\\\\MultipleObjectsToIdTransformer constructor expects Doctrine\\\\ORM\\\\EntityManagerInterface, Doctrine\\\\Persistence\\\\ObjectManager given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/Type/Select2LanguageType.php - - - - message: "#^Parameter \\#1 \\$translatableStrings of method Chill\\\\MainBundle\\\\Templating\\\\TranslatableStringHelper\\:\\:localize\\(\\) expects array, string given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/Type/Select2LanguageType.php - - - - message: "#^Parameter \\#2 \\$subject of function preg_match_all expects string, Chill\\\\MainBundle\\\\Search\\\\type given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Search/SearchProvider.php - - - - message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Notification\\:\\:isReadBy\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/NotificationNormalizer.php - - - - message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Embeddable\\\\PrivateCommentEmbeddable\\:\\:setCommentForUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/PrivateCommentEmbeddableNormalizer.php - - - - message: "#^Parameter \\#1 \\$context of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineBuilder\\:\\:buildUnionQuery\\(\\) expects string, Chill\\\\MainBundle\\\\Timeline\\\\unknown given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Timeline/TimelineBuilder.php - - - - message: "#^Parameter \\#2 \\$context of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineProviderInterface\\:\\:getEntityTemplate\\(\\) expects Chill\\\\MainBundle\\\\Timeline\\\\type, string given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Timeline/TimelineBuilder.php - - - - message: "#^Parameter \\#1 \\$phoneNumber of method Chill\\\\MainBundle\\\\Phonenumber\\\\PhoneNumberHelperInterface\\:\\:format\\(\\) expects libphonenumber\\\\PhoneNumber\\|null, string given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Validation/Validator/ValidPhonenumber.php - - - - message: "#^Parameter \\#1 \\$transitionBy of method Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflowStep\\:\\:setTransitionBy\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User\\|null, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Workflow/EventSubscriber/EntityWorkflowTransitionEventSubscriber.php - - - - message: "#^Parameter \\#1 \\$user of method Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluationRepository\\:\\:countNearMaxDateByUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodWorkEvaluationApiController.php - - - - message: "#^Parameter \\#1 \\$user of method Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluationRepository\\:\\:findNearMaxDateByUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodWorkEvaluationApiController.php + path: src/Bundle/ChillJobBundle/src/Entity/Immersion.php - message: "#^Parameter \\#1 \\$object of static method DateTimeImmutable\\:\\:createFromMutable\\(\\) expects DateTime, DateTimeInterface given\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Controller/HouseholdApiController.php + path: src/Bundle/ChillJobBundle/src/Entity/Immersion.php - - message: "#^Parameter \\#2 \\$previous of class Symfony\\\\Component\\\\HttpKernel\\\\Exception\\\\BadRequestHttpException constructor expects Throwable\\|null, int given\\.$#" + message: "#^Parameter \\#1 \\$interval of method DateTimeImmutable\\:\\:add\\(\\) expects DateInterval, string\\|null given\\.$#" count: 1 + path: src/Bundle/ChillJobBundle/src/Security/Authorization/CSConnectesVoter.php + + - + message: "#^Parameter \\#1 \\$object of static method DateTimeImmutable\\:\\:createFromMutable\\(\\) expects DateTime, DateTimeInterface given\\.$#" + count: 1 + path: src/Bundle/ChillJobBundle/src/Security/Authorization/CSConnectesVoter.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQueryBuilder\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/AbstractCRUDController.php + + - + message: "#^PHPDoc tag @param for parameter \\$postedDataContext with type string is incompatible with native type array\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php + + - + message: "#^PHPDoc tag @param has invalid value \\(mixed id\\)\\: Unexpected token \"id\", expected variable at offset 956$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php + + - + message: "#^PHPDoc tag @param has invalid value \\(string action\\)\\: Unexpected token \"action\", expected variable at offset 929$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php + + - + message: "#^PHPDoc tag @return with type void is incompatible with native type Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and object will always evaluate to false\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQueryBuilder\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php + + - + message: "#^Call to method getQuery\\(\\) on an unknown class Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php + + - + message: "#^Method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\CRUDController\\:\\:index\\(\\) has invalid return type Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php + + - + message: "#^Method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\CRUDController\\:\\:queryEntities\\(\\) has invalid return type Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php + + - + message: "#^PHPDoc tag @throws with type Symfony\\\\Component\\\\Security\\\\Core\\\\Exception\\\\AccessDeniedHttpException is not subtype of Throwable$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php + + - + message: "#^Parameter \\$formClass of method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\CRUDController\\:\\:formCreateAction\\(\\) has invalid type Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php + + - + message: "#^Constant Chill\\\\MainBundle\\\\CRUD\\\\Routing\\\\CRUDRoutesLoader\\:\\:ALL_INDEX_METHODS is unused\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Routing/CRUDRoutesLoader.php + + - + message: "#^Constant Chill\\\\MainBundle\\\\CRUD\\\\Routing\\\\CRUDRoutesLoader\\:\\:ALL_SINGLE_METHODS is unused\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Routing/CRUDRoutesLoader.php + + - + message: "#^Strict comparison using \\=\\=\\= between 'CRUD' and null will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Routing/CRUDRoutesLoader.php + + - + message: "#^Strict comparison using \\=\\=\\= between 'collection' and 'single'\\|null will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Routing/CRUDRoutesLoader.php + + - + message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findOneByName\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Command/ChillImportUsersCommand.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Command\\\\ChillImportUsersCommand\\:\\:getCenters\\(\\) should return array\\ but returns null\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Command/ChillImportUsersCommand.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Command\\\\ChillUserSendRenewPasswordCodeCommand\\:\\:\\$output is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Command/ChillUserSendRenewPasswordCodeCommand.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Console\\\\Helper\\\\HelperInterface\\:\\:askHiddenResponse\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Command/SetPasswordCommand.php + + - + message: "#^Instanceof between Chill\\\\MainBundle\\\\Export\\\\DirectExportInterface and Chill\\\\MainBundle\\\\Export\\\\DirectExportInterface will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/ExportController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/ExportController.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQueryBuilder\\(\\)\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Controller/PasswordController.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findOneByUsernameCanonical\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/PasswordController.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Controller\\\\PasswordController\\:\\:passwordForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/PasswordController.php + + - + message: "#^PHPDoc tag @param for parameter \\$permissionsGroup with type mixed is not subtype of native type Chill\\\\MainBundle\\\\Entity\\\\PermissionsGroup\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQuery\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/PostalCodeController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\HttpFoundation\\\\Session\\\\SessionInterface\\:\\:getFlashBag\\(\\)\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Controller/SavedExportController.php + + - + message: "#^PHPDoc tag @var for variable \\$variable contains unknown class Chill\\\\MainBundle\\\\Controller\\\\Chill\\\\MainBundle\\\\Search\\\\HasAdvancedSearchFormInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/SearchController.php + + - + message: "#^PHPDoc tag @var for variable \\$variable contains unknown class Chill\\\\MainBundle\\\\Controller\\\\Chill\\\\MainBundle\\\\Search\\\\SearchProvider\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Controller/SearchController.php + + - + message: "#^Variable \\$variable in PHPDoc tag @var does not match assigned variable \\$search\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/SearchController.php + + - + message: "#^Variable \\$variable in PHPDoc tag @var does not match assigned variable \\$searchProvider\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Controller/SearchController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\:\\:getGroupCenters\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/TimelineCenterController.php + + - + message: "#^Property Chill\\\\MainBundle\\\\DataFixtures\\\\ORM\\\\LoadAddressReferences\\:\\:\\$container is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DataFixtures/ORM/LoadAddressReferences.php + + - + message: "#^Property Chill\\\\MainBundle\\\\DataFixtures\\\\ORM\\\\LoadLocationType\\:\\:\\$container is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DataFixtures/ORM/LoadLocationType.php + + - + message: "#^Property Chill\\\\MainBundle\\\\DataFixtures\\\\ORM\\\\LoadUsers\\:\\:\\$container is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DataFixtures/ORM/LoadUsers.php + + - + message: "#^Parameter \\$factory of method Chill\\\\MainBundle\\\\DependencyInjection\\\\ChillMainExtension\\:\\:addWidgetFactory\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\WidgetFactoryInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/ChillMainExtension.php + + - + message: "#^Offset 'queries' does not exist on array\\{scheme\\: 'ovh', host\\?\\: string, port\\?\\: int\\<0, 65535\\>, user\\?\\: string, pass\\?\\: string, path\\?\\: string, query\\?\\: string, fragment\\?\\: string\\}\\.$#" + count: 5 + path: src/Bundle/ChillMainBundle/DependencyInjection/CompilerPass/ShortMessageCompilerPass.php + + - + message: "#^Offset 'queries' does not exist on array\\{scheme\\?\\: string, host\\?\\: string, port\\?\\: int\\<0, 65535\\>, user\\?\\: string, pass\\?\\: string, path\\?\\: string, query\\?\\: string, fragment\\?\\: string\\}\\|false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/CompilerPass/ShortMessageCompilerPass.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:canBeUnset\\(\\)\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" + count: 3 + path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php + + - + message: "#^Method Chill\\\\MainBundle\\\\DependencyInjection\\\\Configuration\\:\\:getWidgetFactories\\(\\) has invalid return type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\WidgetFactoryInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php + + - + message: "#^PHPDoc tag @param has invalid value \\(WidgetFactoryInterface\\[\\]\\)\\: Unexpected token \"\\\\n \", expected variable at offset 42$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php + + - + message: "#^Parameter \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Configuration\\:\\:getWidgetAliasesbyPlace\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php + + - + message: "#^Parameter \\$widgetFactories of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Configuration\\:\\:setWidgetFactories\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\WidgetFactoryInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php + + - + message: "#^Call to an undefined method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:getAllowedPlaces\\(\\)\\.$#" + count: 3 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php + + - + message: "#^Instanceof between Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\HasWidgetFactoriesExtensionInterface and Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\HasWidgetFactoriesExtensionInterface will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php + + - + message: "#^Method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\AbstractWidgetsCompilerPass\\:\\:isPlaceAllowedForWidget\\(\\) has invalid return type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\unknown\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php + + - + message: "#^Method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\AbstractWidgetsCompilerPass\\:\\:isPlaceAllowedForWidget\\(\\) should return Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\unknown but returns false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php + + - + message: "#^Method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\AbstractWidgetsCompilerPass\\:\\:isPlaceAllowedForWidget\\(\\) should return Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\unknown but returns true\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php + + - + message: "#^Negated boolean expression is always false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php + + - + message: "#^Parameter \\$order of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\AbstractWidgetFactory\\:\\:createDefinition\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/AbstractWidgetFactory.php + + - + message: "#^Parameter \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\AbstractWidgetFactory\\:\\:createDefinition\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/AbstractWidgetFactory.php + + - + message: "#^Parameter \\$order of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:createDefinition\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/WidgetFactoryInterface.php + + - + message: "#^Parameter \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/WidgetFactoryInterface.php + + - + message: "#^Parameter \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:createDefinition\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/WidgetFactoryInterface.php + + - + message: "#^PHPDoc tag @param for parameter \\$factory with type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\WidgetFactoryInterface is not subtype of native type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/HasWidgetFactoriesExtensionInterface.php + + - + message: "#^Parameter \\$factory of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\HasWidgetFactoriesExtensionInterface\\:\\:addWidgetFactory\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\WidgetFactoryInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/HasWidgetFactoriesExtensionInterface.php + + - + message: "#^Instanceof between DateTime and DateTime will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Address.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\Address\\:\\:\\$validTo \\(DateTime\\|null\\) does not accept DateTimeInterface\\|null\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Address.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Entity\\\\AddressReference\\:\\:setPostcode\\(\\) should return Chill\\\\MainBundle\\\\Entity\\\\Address but returns \\$this\\(Chill\\\\MainBundle\\\\Entity\\\\AddressReference\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/AddressReference.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\AddressReference\\:\\:\\$addressCanonical is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/AddressReference.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\GeographicalUnit\\:\\:\\$geom is unused\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/GeographicalUnit.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\GeographicalUnit\\:\\:\\$unitRefId is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/GeographicalUnit.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Entity\\\\Language\\:\\:getName\\(\\) should return string but returns array\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Language.php + + - + message: "#^PHPDoc tag @param has invalid value \\(string array \\$name\\)\\: Unexpected token \"array\", expected variable at offset 49$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Language.php + + - + message: "#^PHPDoc tag @var for property Chill\\\\MainBundle\\\\Entity\\\\Language\\:\\:\\$name with type string is incompatible with native type array\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Language.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\Location\\:\\:\\$createdAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\|null\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Location.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\Location\\:\\:\\$updatedAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\|null\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Location.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\Notification\\:\\:\\$updatedAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Notification.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\NotificationComment\\:\\:\\$createdAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/NotificationComment.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\NotificationComment\\:\\:\\$updateAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/NotificationComment.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\PermissionsGroup\\:\\:\\$groupCenters is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/PermissionsGroup.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\PostalCode\\:\\:\\$canonical is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/PostalCode.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\PostalCode\\:\\:\\$deletedAt is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/PostalCode.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\RoleScope\\:\\:\\$permissionsGroups is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/RoleScope.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and array will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/User.php + + - + message: "#^Call to an undefined method Traversable\\<\\(int\\|string\\), mixed\\>\\:\\:current\\(\\)\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflow.php + + - + message: "#^Call to an undefined method Traversable\\<\\(int\\|string\\), mixed\\>\\:\\:next\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflow.php + + - + message: "#^Call to an undefined method Traversable\\<\\(int\\|string\\), mixed\\>\\:\\:rewind\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflow.php + + - + message: "#^Call to an undefined method Traversable\\<\\(int\\|string\\), mixed\\>\\:\\:valid\\(\\)\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflow.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflowStep.php + + - + message: "#^Call to an undefined method Chill\\\\MainBundle\\\\Export\\\\ExportElementInterface\\:\\:requiredRole\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/ExportManager.php + + - + message: "#^Call to function is_iterable\\(\\) with array will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/ExportManager.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and array\\|string will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/CSVFormatter.php + + - + message: "#^Variable \\$data in PHPDoc tag @var does not match assigned variable \\$contentData\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/CSVFormatter.php + + - + message: "#^Parameter \\#2 \\$exportAlias \\(Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\) of method Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\CSVListFormatter\\:\\:buildForm\\(\\) should be compatible with parameter \\$exportAlias \\(string\\) of method Chill\\\\MainBundle\\\\Export\\\\FormatterInterface\\:\\:buildForm\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/CSVListFormatter.php + + - + message: "#^Parameter \\$exportAlias of method Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\CSVListFormatter\\:\\:buildForm\\(\\) has invalid type Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/CSVListFormatter.php + + - + message: "#^Parameter \\#2 \\$exportAlias \\(Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\) of method Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\CSVPivotedListFormatter\\:\\:buildForm\\(\\) should be compatible with parameter \\$exportAlias \\(string\\) of method Chill\\\\MainBundle\\\\Export\\\\FormatterInterface\\:\\:buildForm\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/CSVPivotedListFormatter.php + + - + message: "#^Parameter \\$exportAlias of method Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\CSVPivotedListFormatter\\:\\:buildForm\\(\\) has invalid type Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/CSVPivotedListFormatter.php + + - + message: "#^Access to offset 'format' on an unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + + - + message: "#^Access to offset mixed on an unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + + - + message: "#^Iterating over an object of an unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\.$#" + count: 3 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$aggregatorsData \\(Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\) does not accept array\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$aggregatorsData has unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type as its type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$formatterData \\(Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\) does not accept array\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$formatterData has unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type as its type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$result \\(Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\) does not accept array\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$result has unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type as its type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + + - + message: "#^Instanceof between string and DateTimeInterface will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadsheetListFormatter.php + + - + message: "#^PHPDoc tag @var for property Chill\\\\MainBundle\\\\Export\\\\Helper\\\\ExportAddressHelper\\:\\:\\$unitNamesKeysCache contains unresolvable type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Helper/ExportAddressHelper.php + + - + message: "#^PHPDoc tag @var for property Chill\\\\MainBundle\\\\Export\\\\Helper\\\\ExportAddressHelper\\:\\:\\$unitNamesKeysCache with type mixed is not subtype of native type array\\|null\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Helper/ExportAddressHelper.php + + - + message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\Address and Chill\\\\MainBundle\\\\Entity\\\\Address will always evaluate to true\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Form/DataMapper/AddressDataMapper.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\Address will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/DataMapper/AddressDataMapper.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Form/DataTransformer/IdToEntityDataTransformer.php + + - + message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/LocationFormType.php + + - + message: "#^Parameter \\$resolver of method Chill\\\\MainBundle\\\\Form\\\\LocationFormType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/LocationFormType.php + + - + message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/PermissionsGroupType.php + + - + message: "#^Parameter \\$resolver of method Chill\\\\MainBundle\\\\Form\\\\PermissionsGroupType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/PermissionsGroupType.php + + - + message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/ScopeType.php + + - + message: "#^Parameter \\$resolver of method Chill\\\\MainBundle\\\\Form\\\\ScopeType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/ScopeType.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Form\\\\Type\\\\ChillPhoneNumberType\\:\\:\\$phoneNumberUtil is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/Type/ChillPhoneNumberType.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\:\\:getId\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/Type/CommentType.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and array\\\\|Chill\\\\MainBundle\\\\Entity\\\\User will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/Type/DataTransformer/EntityToJsonTransformer.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/Type/DataTransformer/ObjectToIdTransformer.php + + - + message: "#^Call to function is_int\\(\\) with int will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/Type/DataTransformer/PostalCodeToIdTransformer.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Form\\\\Type\\\\Select2CountryType\\:\\:\\$requestStack is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/Type/Select2CountryType.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\:\\:replaceDefaults\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/Type/Select2EntityType.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Form\\\\Type\\\\Select2LanguageType\\:\\:\\$requestStack is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/Type/Select2LanguageType.php + + - + message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/UserType.php + + - + message: "#^Parameter \\$resolver of method Chill\\\\MainBundle\\\\Form\\\\UserType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/UserType.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Notification\\\\Email\\\\NotificationMailer\\:\\:\\$translator is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Notification/Email/NotificationMailer.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Notification\\\\NotificationHandlerManager\\:\\:\\$em is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Notification/NotificationHandlerManager.php + + - + message: "#^Strict comparison using \\=\\=\\= between 0 and float will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Pagination/Paginator.php + + - + message: "#^PHPDoc tag @param for parameter \\$phoneNumber with type string is incompatible with native type libphonenumber\\\\PhoneNumber\\|null\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Phonenumber/PhonenumberHelper.php + + - + message: "#^Expression on left side of \\?\\? is not nullable\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Phonenumber/Templating.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Repository\\\\GeographicalUnitRepository\\:\\:findBy\\(\\) should return Chill\\\\MainBundle\\\\Entity\\\\GeographicalUnit\\|null but returns array\\\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Repository/GeographicalUnitRepository.php + + - + message: "#^Return type \\(Chill\\\\MainBundle\\\\Entity\\\\GeographicalUnit\\|null\\) of method Chill\\\\MainBundle\\\\Repository\\\\GeographicalUnitRepository\\:\\:findBy\\(\\) should be compatible with return type \\(array\\\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" + count: 2 + path: src/Bundle/ChillMainBundle/Repository/GeographicalUnitRepository.php + + - + message: "#^The @implements tag of class Chill\\\\MainBundle\\\\Repository\\\\SavedExportRepository describes Doctrine\\\\Persistence\\\\ObjectRepository but the class implements\\: Chill\\\\MainBundle\\\\Repository\\\\SavedExportRepositoryInterface$#" + count: 1 + path: src/Bundle/ChillMainBundle/Repository/SavedExportRepository.php + + - + message: "#^Interface Chill\\\\MainBundle\\\\Repository\\\\SavedExportRepositoryInterface has @implements tag, but can not implement any interface, must extend from it\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Repository/SavedExportRepositoryInterface.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Routing\\\\MenuComposer\\:\\:\\$routeCollection is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Routing/MenuComposer.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Routing\\\\MenuTwig\\:\\:\\$container is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Routing/MenuTwig.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Search\\\\SearchApiNoQueryException\\:\\:\\$parameters is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Search/SearchApiNoQueryException.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Search\\\\SearchApiNoQueryException\\:\\:\\$pattern is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Search/SearchApiNoQueryException.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Search\\\\SearchApiNoQueryException\\:\\:\\$types is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Search/SearchApiNoQueryException.php + + - + message: "#^Else branch is unreachable because previous condition is always true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Search/SearchProvider.php + + - + message: "#^If condition is always true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Search/SearchProvider.php + + - + message: "#^Parameter \\$subject of method Chill\\\\MainBundle\\\\Search\\\\SearchProvider\\:\\:extractDomain\\(\\) has invalid type Chill\\\\MainBundle\\\\Search\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Search/SearchProvider.php + + - + message: "#^Strict comparison using \\!\\=\\= between null and string will always evaluate to true\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Search/SearchProvider.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\:\\:getGroupCenters\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php + + - + message: "#^Empty array passed to foreach\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php + + - + message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\AuthorizationHelper\\:\\:userHasAccessForCenter\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface given\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Workflow\\\\EntityWorkflowHandlerInterface\\:\\:getDeletionRoles\\(\\) invoked with 1 parameter, 0 required\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Authorization/WorkflowEntityDeletionVoter.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and array\\\\|Chill\\\\MainBundle\\\\Entity\\\\Center will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Resolver/CenterResolverManager.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Resolver/CenterResolverManager.php + + - + message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\HasCenterInterface and Chill\\\\MainBundle\\\\Entity\\\\HasCenterInterface will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Resolver/DefaultCenterResolver.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Resolver/DefaultCenterResolver.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Resolver/DefaultScopeResolver.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\ResolverTwigExtension\\:\\:resolveCenter\\(\\) has invalid return type Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\Center\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Security/Resolver/ResolverTwigExtension.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\ResolverTwigExtension\\:\\:resolveCenter\\(\\) should return array\\\\|Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\Center\\|null but returns array\\\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Resolver/ResolverTwigExtension.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\ScopeResolverDispatcher\\:\\:resolveScope\\(\\) invoked with 0 parameters, 1\\-2 required\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Resolver/ResolverTwigExtension.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Security\\\\RoleProvider\\:\\:getRoleTitle\\(\\) should return string but returns null\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/RoleProvider.php + + - + message: "#^Constant Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\AddressNormalizer\\:\\:NULL_POSTCODE_COUNTRY is unused\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php + + - + message: "#^Constant Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\AddressNormalizer\\:\\:NULL_VALUE is unused\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php + + - + message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\Address and Chill\\\\MainBundle\\\\Entity\\\\Address will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\Embeddable\\\\CommentEmbeddable will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/CommentEmbeddableDocGenNormalizer.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\DateNormalizer\\:\\:normalize\\(\\) should return array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|null but return statement is missing\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DateNormalizer.php + + - + message: "#^Instanceof between Doctrine\\\\ORM\\\\Mapping\\\\ClassMetadata\\ and Doctrine\\\\ORM\\\\Mapping\\\\ClassMetadata will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DoctrineExistingEntityNormalizer.php + + - + message: "#^Strict comparison using \\=\\=\\= between false and true will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DoctrineExistingEntityNormalizer.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\NotificationNormalizer\\:\\:\\$notificationHandlerManager is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/NotificationNormalizer.php + + - + message: "#^Result of && is always false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/UserNormalizer.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\User will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/UserNormalizer.php + + - + message: "#^Call to function is_int\\(\\) with int will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Service/Import/AddressReferenceFromBano.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Mime\\\\RawMessage\\:\\:getSubject\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Service/Mailer/ChillMailer.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Mime\\\\RawMessage\\:\\:getTo\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Service/Mailer/ChillMailer.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Templating\\\\CSVCellTwig\\:\\:getName\\(\\) has invalid return type Chill\\\\MainBundle\\\\Templating\\\\The\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Templating/CSVCellTwig.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Templating\\\\CSVCellTwig\\:\\:getName\\(\\) should return Chill\\\\MainBundle\\\\Templating\\\\The but returns string\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Templating/CSVCellTwig.php + + - + message: "#^Instanceof between string and DateTimeInterface will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Templating/ChillTwigHelper.php + + - + message: "#^Call to an undefined method Symfony\\\\Contracts\\\\Translation\\\\TranslatorInterface\\:\\:getFallbackLocales\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Templating/TranslatableStringHelper.php + + - + message: "#^Strict comparison using \\=\\=\\= between array\\{\\} and non\\-empty\\-array\\ will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Templating/TranslatableStringHelper.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Templating\\\\TranslatableStringTwig\\:\\:getName\\(\\) has invalid return type Chill\\\\MainBundle\\\\Templating\\\\The\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Templating/TranslatableStringTwig.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Templating\\\\TranslatableStringTwig\\:\\:getName\\(\\) should return Chill\\\\MainBundle\\\\Templating\\\\The but returns string\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Templating/TranslatableStringTwig.php + + - + message: "#^Call to method render\\(\\) on an unknown class Chill\\\\MainBundle\\\\Templating\\\\Widget\\\\Widget\\\\WidgetInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Templating/Widget/WidgetRenderingTwig.php + + - + message: "#^PHPDoc tag @var for variable \\$widget contains unknown class Chill\\\\MainBundle\\\\Templating\\\\Widget\\\\Widget\\\\WidgetInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Templating/Widget/WidgetRenderingTwig.php + + - + message: "#^Parameter \\$context of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineBuilder\\:\\:countItems\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\unknown\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Timeline/TimelineBuilder.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Timeline/TimelineBuilder.php + + - + message: "#^Parameter \\$context of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineProviderInterface\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Timeline/TimelineProviderInterface.php + + - + message: "#^Parameter \\$entity of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineProviderInterface\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Timeline/TimelineProviderInterface.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Util\\\\DateRangeCovering\\:\\:\\$intervals is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Util/DateRangeCovering.php + + - + message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$messageDuplicateEmail\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Validation/Validator/UserUniqueEmailAndUsername.php + + - + message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$messageDuplicateUsername\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Validation/Validator/UserUniqueEmailAndUsername.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Validation/Validator/ValidPhonenumber.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\User will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Validator/Constraints/Entity/UserCircleConsistencyValidator.php + + - + message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$element\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Validator/Constraints/Export/ExportElementConstraintValidator.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Workflow\\\\Templating\\\\WorkflowTwigExtensionRuntime\\:\\:\\$entityWorkflowManager is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Workflow/Templating/WorkflowTwigExtensionRuntime.php + + - + message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow and Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Workflow/Validator/EntityWorkflowCreationValidator.php + + - + message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflowStep and Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflowStep will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Workflow/Validator/StepDestValidValidator.php + + - + message: "#^PHPDoc tag @param for parameter \\$postSql with type Chill\\\\PersonBundle\\\\Actions\\\\type is incompatible with native type string\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Actions/ActionEvent.php + + - + message: "#^Parameter \\$postSql of method Chill\\\\PersonBundle\\\\Actions\\\\ActionEvent\\:\\:addPostSql\\(\\) has invalid type Chill\\\\PersonBundle\\\\Actions\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Actions/ActionEvent.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\PersonMove\\:\\:getSQL\\(\\) has invalid return type Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Actions/Remove/PersonMove.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\PersonMove\\:\\:getSQL\\(\\) should return Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\type but returns array\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Actions/Remove/PersonMove.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\EntityPersonCRUDController\\:\\:filterQueryEntitiesByPerson\\(\\) has invalid return type Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\QueryBuilder\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php + + - + message: "#^PHPDoc tag @param for parameter \\$qb with type Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\QueryBuilder is not subtype of native type Doctrine\\\\ORM\\\\QueryBuilder\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php + + - + message: "#^PHPDoc tag @return with type Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\QueryBuilder is not subtype of native type Doctrine\\\\ORM\\\\QueryBuilder\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php + + - + message: "#^PHPDoc tag @throws with type Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\Symfony\\\\Component\\\\HttpKernel\\\\Exception\\\\NotFoundHttpException is not subtype of Throwable$#" + count: 1 + path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php + + - + message: "#^Parameter \\$action of method Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\EntityPersonCRUDController\\:\\:createEntity\\(\\) has invalid type Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\string\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php + + - + message: "#^Parameter \\$qb of method Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\EntityPersonCRUDController\\:\\:filterQueryEntitiesByPerson\\(\\) has invalid type Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\QueryBuilder\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\DependencyInjection\\\\Extension\\\\ExtensionInterface\\:\\:addWidgetFactory\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/ChillPersonBundle.php + + - + message: "#^Iterating over an object of an unknown class Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\type\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Command/ChillPersonMoveCommand.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Controller\\\\AccompanyingCourseApiController\\:\\:\\$accompanyingPeriodACLAwareRepository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseApiController.php + + - + message: "#^Variable \\$accompanyingPeriod in PHPDoc tag @var does not match assigned variable \\$action\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseApiController.php + + - + message: "#^Strict comparison using \\!\\=\\= between null and Doctrine\\\\Common\\\\Collections\\\\Collection will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Serializer\\\\SerializerInterface\\:\\:normalize\\(\\)\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseWorkController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseWorkController.php + + - + message: "#^Call to an undefined method Psr\\\\Container\\\\ContainerInterface\\:\\:getParameter\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodController.php + + - + message: "#^Method Symfony\\\\Component\\\\Form\\\\FormInterface\\:\\:isValid\\(\\) invoked with 1 parameter, 0 required\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod will always evaluate to false\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\HttpFoundation\\\\Session\\\\SessionInterface\\:\\:getFlashBag\\(\\)\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Controller/HouseholdCompositionController.php + + - + message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:initialize\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/HouseholdController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Serializer\\\\SerializerInterface\\:\\:normalize\\(\\)\\.$#" + count: 3 path: src/Bundle/ChillPersonBundle/Controller/HouseholdMemberController.php - - message: "#^Parameter \\#3 \\$code of class Symfony\\\\Component\\\\HttpKernel\\\\Exception\\\\BadRequestHttpException constructor expects int, Symfony\\\\Component\\\\Serializer\\\\Exception\\\\InvalidArgumentException\\|Symfony\\\\Component\\\\Serializer\\\\Exception\\\\UnexpectedValueException given\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/HouseholdMemberController.php + message: "#^Elseif condition is always true\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Controller/PersonAddressController.php - - message: "#^Parameter \\#1 \\$form of method Chill\\\\PersonBundle\\\\Controller\\\\PersonController\\:\\:isLastPostDataChanges\\(\\) expects Symfony\\\\Component\\\\Form\\\\Form, Symfony\\\\Component\\\\Form\\\\FormInterface given\\.$#" + message: "#^Method Chill\\\\PersonBundle\\\\Controller\\\\PersonAddressController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/PersonAddressController.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Controller\\\\PersonAddressController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/PersonAddressController.php + + - + message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findOneByEntity\\(\\)\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Controller/PersonController.php - - message: "#^Parameter \\#1 \\$context of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineBuilder\\:\\:countItems\\(\\) expects Chill\\\\MainBundle\\\\Timeline\\\\unknown, string given\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/TimelinePersonController.php + message: "#^Call to an undefined method Symfony\\\\Component\\\\Form\\\\FormInterface\\:\\:isClicked\\(\\)\\.$#" + count: 3 + path: src/Bundle/ChillPersonBundle/Controller/PersonController.php - - message: "#^Parameter \\#1 \\$period of method Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodLocationHistory\\:\\:setPeriod\\(\\) expects Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod, null given\\.$#" + message: "#^Method Chill\\\\PersonBundle\\\\Controller\\\\PersonController\\:\\:_validatePersonAndAccompanyingPeriod\\(\\) is unused\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/PersonController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\Person will always evaluate to false\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Controller/PersonController.php + + - + message: "#^Access to an undefined property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$counters\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:countByParameters\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php + + - + message: "#^Cannot access property \\$getId on null\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php + + - + message: "#^Iterating over an object of an unknown class Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Controller\\\\PersonDuplicateController\\:\\:_getCounters\\(\\) never returns null so it can be removed from the return type\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php + + - + message: "#^Call to function is_int\\(\\) with int will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/ReassignAccompanyingPeriodController.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Controller\\\\ReassignAccompanyingPeriodController\\:\\:\\$userRender is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/ReassignAccompanyingPeriodController.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Controller\\\\SocialWorkGoalApiController\\:\\:\\$paginator is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/SocialWorkGoalApiController.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/DataFixtures/ORM/LoadAccompanyingPeriodNotifications.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:canBeDisabled\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/DependencyInjection/Configuration.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:values\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/DependencyInjection/Configuration.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Doctrine\\\\DQL\\\\AddressPart\\:\\:\\$part is unused\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Doctrine/DQL/AddressPart.php + + - + message: "#^Result of method Doctrine\\\\ORM\\\\Query\\\\Parser\\:\\:match\\(\\) \\(void\\) is used\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Doctrine/DQL/AddressPart.php + + - + message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - message: "#^Parameter \\#1 \\$now of method Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\Household\\:\\:getCurrentMembers\\(\\) expects DateTimeImmutable\\|null, DateTimeInterface\\|null given\\.$#" + message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection\\:\\:matching\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\:\\:getRecursiveSocialActions\\(\\) has invalid return type Chill\\\\PersonBundle\\\\Entity\\\\SocialAction\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\:\\:getRecursiveSocialIssues\\(\\) has invalid return type Chill\\\\PersonBundle\\\\Entity\\\\SocialIssues\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php + + - + message: "#^Negated boolean expression is always true\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php + + - + message: "#^PHPDoc tag @return with type array\\ is incompatible with native type Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php + + - + message: "#^PHPDoc tag @return with type iterable is not subtype of native type Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\:\\:\\$updatedAt is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\:\\:\\$updatedBy is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodStepHistory will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\:\\:\\$createdAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWork.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\:\\:\\$endDate \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\|null\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWork.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\:\\:\\$startDate \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWork.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\:\\:\\$updatedAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWork.php + + - + message: "#^PHPDoc tag @param for parameter \\$createdAt with type DateTimeImmutable\\|null is not subtype of native type DateTimeInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWorkEvaluation.php + + - + message: "#^PHPDoc tag @param for parameter \\$updatedAt with type DateTimeImmutable\\|null is not subtype of native type DateTimeInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWorkEvaluation.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluation\\:\\:\\$createdAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWorkEvaluation.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluation\\:\\:\\$updatedAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWorkEvaluation.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriodParticipation\\:\\:checkSameStartEnd\\(\\) is unused\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriodParticipation.php + + - + message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" + count: 3 + path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php + + - + message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection\\:\\:matching\\(\\)\\.$#" + count: 4 + path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php + + - + message: "#^Call to an undefined method Traversable\\<\\(int\\|string\\), mixed\\>\\:\\:uasort\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php + + - + message: "#^PHPDoc tag @return with type array\\ is incompatible with native type Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php + + - + message: "#^Strict comparison using \\!\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\HouseholdMember will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and int will always evaluate to false\\.$#" count: 2 path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php - - message: "#^Parameter \\#1 \\$now of method Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\Household\\:\\:getNonCurrentMembers\\(\\) expects DateTimeImmutable\\|null, DateTimeInterface\\|null given\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php - - - - message: "#^Parameter \\#1 \\$translatableStrings of method Chill\\\\MainBundle\\\\Templating\\\\TranslatableStringHelper\\:\\:localize\\(\\) expects array, string given\\.$#" + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\PersonHouseholdAddress\\:\\:\\$validFrom is never written, only read\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Export/Helper/ListPersonHelper.php + path: src/Bundle/ChillPersonBundle/Entity/Household/PersonHouseholdAddress.php - - message: "#^Parameter \\#1 \\$callback of function call_user_func expects callable\\(\\)\\: mixed, null given\\.$#" + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\PersonHouseholdAddress\\:\\:\\$validTo is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Household/PersonHouseholdAddress.php + + - + message: "#^PHPDoc tag @param has invalid value \\(string array \\$name\\)\\: Unexpected token \"array\", expected variable at offset 49$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/MaritalStatus.php + + - + message: "#^PHPDoc tag @return with type string is incompatible with native type array\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/MaritalStatus.php + + - + message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" + count: 3 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection\\:\\:matching\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Negated boolean expression is always true\\.$#" + count: 3 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^PHPDoc tag @return with type array\\ is incompatible with native type Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$center is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$currentHouseholdAt is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$deathdate \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\|null\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$maritalStatusDate \\(DateTime\\|null\\) does not accept DateTimeInterface\\|null\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$periodLocatedOn is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$proxyAccompanyingPeriodOpenState is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Strict comparison using \\=\\=\\= between true and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriodParticipation\\|null will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\SocialWork\\\\Result\\:\\:\\$desactivationDate \\(DateTime\\|null\\) does not accept DateTimeInterface\\|null\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/SocialWork/Result.php + + - + message: "#^If condition is always false\\.$#" count: 2 - path: src/Bundle/ChillPersonBundle/Form/ChoiceLoader/PersonChoiceLoader.php + path: src/Bundle/ChillPersonBundle/Entity/SocialWork/SocialAction.php - - message: "#^Parameter \\#1 \\$entityName of method Doctrine\\\\ORM\\\\EntityManager\\:\\:getRepository\\(\\) expects class\\-string\\, string given\\.$#" + message: "#^Negated boolean expression is always true\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Entity/SocialWork/SocialAction.php + + - + message: "#^If condition is always false\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Entity/SocialWork/SocialIssue.php + + - + message: "#^Negated boolean expression is always true\\.$#" + count: 4 + path: src/Bundle/ChillPersonBundle/Entity/SocialWork/SocialIssue.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Export\\\\Aggregator\\\\AccompanyingCourseAggregators\\\\DurationAggregator\\:\\:\\$translator is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/DurationAggregator.php + + - + message: "#^Call to method extractOtherValue\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php + + - + message: "#^Call to method getChoices\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php + + - + message: "#^Call to method isChecked\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php + + - + message: "#^Call to method isMultiple\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php + + - + message: "#^Call to method render\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Export\\\\Filter\\\\AccompanyingCourseFilters\\\\AdministrativeLocationFilter\\:\\:\\$translatableStringHelper is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/AdministrativeLocationFilter.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Export\\\\Filter\\\\SocialWorkFilters\\\\SocialWorkTypeFilter\\:\\:\\$socialActionRender is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Export/Filter/SocialWorkFilters/SocialWorkTypeFilter.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Form\\\\PersonResourceType\\:\\:\\$personRender is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Form/PersonResourceType.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Form\\\\PersonResourceType\\:\\:\\$thirdPartyRender is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Form/PersonResourceType.php + + - + message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\PersonBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Form/PersonType.php + + - + message: "#^Parameter \\$resolver of method Chill\\\\PersonBundle\\\\Form\\\\PersonType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\PersonBundle\\\\Form\\\\OptionsResolverInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Form/PersonType.php + + - + message: "#^Strict comparison using \\=\\=\\= between 'create' and 'create' will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Form/SocialWork/SocialIssueType.php + + - + message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Household/MembersEditor.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkGoalRepository\\:\\:\\$repository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/AccompanyingPeriodWorkGoalRepository.php + + - + message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\:\\:countByAccompanyingPeriod\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/AccompanyingPeriodWorkRepository.php + + - + message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\:\\:findByAccompanyingPeriod\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/AccompanyingPeriodWorkRepository.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\CommentRepository\\:\\:\\$repository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/CommentRepository.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\OriginRepository\\:\\:\\$repository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/OriginRepository.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriodParticipationRepository\\:\\:\\$repository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriodParticipationRepository.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\HouseholdMembersRepository\\:\\:\\$repository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/Household/HouseholdMembersRepository.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\PositionRepository\\:\\:findOneBy\\(\\) should return array\\ but returns object\\|null\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/Household/PositionRepository.php + + - + message: "#^Return type \\(array\\\\) of method Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\PositionRepository\\:\\:findOneBy\\(\\) should be compatible with return type \\(object\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findOneBy\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/Household/PositionRepository.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\PersonACLAwareRepository\\:\\:\\$countryRepository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/PersonACLAwareRepository.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\PersonAltNameRepository\\:\\:\\$repository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/PersonAltNameRepository.php + + - + message: "#^PHPDoc tag @return with type array\\\\|null is not subtype of native type array\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/ResidentialAddressRepository.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Search\\\\SearchHouseholdApiProvider\\:\\:\\$authorizationHelper is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Search/SearchHouseholdApiProvider.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Search\\\\SearchHouseholdApiProvider\\:\\:\\$security is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Search/SearchHouseholdApiProvider.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Search\\\\SearchPersonApiProvider\\:\\:\\$authorizationHelper is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Search/SearchPersonApiProvider.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Search\\\\SearchPersonApiProvider\\:\\:\\$security is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Search/SearchPersonApiProvider.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Security\\\\Authorization\\\\AccompanyingPeriodVoter\\:\\:\\$security is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodVoter.php + + - + message: "#^PHPDoc tag @return with type bool\\|void is not subtype of native type bool\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkEvaluationDocumentVoter.php + + - + message: "#^Elseif branch is unreachable because previous condition is always true\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkVoter.php + + - + message: "#^Instanceof between \\*NEVER\\* and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkVoter.php + + - + message: "#^Instanceof between Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkVoter.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Security\\\\Authorization\\\\AccompanyingPeriodWorkVoter\\:\\:\\$voterHelper is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkVoter.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkVoter.php + + - + message: "#^Constant Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodDocGenNormalizer\\:\\:IGNORE_FIRST_PASS_KEY is unused\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodDocGenNormalizer.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodDocGenNormalizer.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodParticipationNormalizer.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkDenormalizer\\:\\:\\$em is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkDenormalizer.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkDenormalizer\\:\\:\\$workRepository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkDenormalizer.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkEvaluationDocumentNormalizer\\:\\:\\$registry is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkEvaluationDocumentNormalizer.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkEvaluationNormalizer\\:\\:\\$registry is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkEvaluationNormalizer.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkNormalizer\\:\\:\\$registry is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkNormalizer.php + + - + message: "#^Call to function is_array\\(\\) with 'concerned' will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/MembersEditorNormalizer.php + + - + message: "#^Expression on left side of \\?\\? is not nullable\\.$#" + count: 3 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/MembersEditorNormalizer.php + + - + message: "#^Left side of && is always false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/MembersEditorNormalizer.php + + - + message: "#^Strict comparison using \\=\\=\\= between false and false will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/MembersEditorNormalizer.php + + - + message: "#^Instanceof between Chill\\\\PersonBundle\\\\Entity\\\\Person and Chill\\\\PersonBundle\\\\Entity\\\\Person will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonDocGenNormalizer.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\PersonDocGenNormalizer\\:\\:hasGroup\\(\\) is unused\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonDocGenNormalizer.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\Person will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonDocGenNormalizer.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\PersonJsonNormalizer\\:\\:\\$phoneNumberHelper is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonJsonNormalizer.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\Relationships\\\\Relationship will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/RelationshipDocGenNormalizer.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\SocialIssueNormalizer\\:\\:normalize\\(\\) should return array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|null but return statement is missing\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/SocialIssueNormalizer.php + + - + message: "#^PHPDoc tag @return with type array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|void\\|null is not subtype of native type array\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/WorkflowNormalizer.php + + - + message: "#^Call to an undefined method Chill\\\\DocStoreBundle\\\\Entity\\\\Document\\:\\:setCourse\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Service/DocGenerator/AccompanyingPeriodContext.php + + - + message: "#^Call to an undefined method Chill\\\\DocStoreBundle\\\\Entity\\\\Document\\:\\:setPerson\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Service/DocGenerator/PersonContext.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Service\\\\Import\\\\SocialWorkMetadata\\:\\:\\$socialActionRepository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Service/Import/SocialWorkMetadata.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Service\\\\Import\\\\SocialWorkMetadata\\:\\:\\$socialIssueRepository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Service/Import/SocialWorkMetadata.php + + - + message: "#^Call to method getId\\(\\) on an unknown class ChillPersonBundle\\:AccompanyingPeriod\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Timeline/AbstractTimelineAccompanyingPeriod.php - - message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\AuthorizationHelper\\:\\:filterReachableCenters\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Timeline/AbstractTimelineAccompanyingPeriod.php - - - - message: "#^Parameter \\#3 \\$context of method Chill\\\\PersonBundle\\\\Timeline\\\\AbstractTimelineAccompanyingPeriod\\:\\:getBasicEntityTemplate\\(\\) expects string, Chill\\\\MainBundle\\\\Timeline\\\\type given\\.$#" + message: "#^Cannot call method setKey\\(\\) on array\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodClosing.php - - message: "#^Parameter \\#3 \\$context of method Chill\\\\PersonBundle\\\\Timeline\\\\AbstractTimelineAccompanyingPeriod\\:\\:getBasicEntityTemplate\\(\\) expects string, Chill\\\\MainBundle\\\\Timeline\\\\type given\\.$#" + message: "#^Parameter \\$context of method Chill\\\\PersonBundle\\\\Timeline\\\\TimelineAccompanyingPeriodClosing\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodClosing.php + + - + message: "#^Parameter \\$entity of method Chill\\\\PersonBundle\\\\Timeline\\\\TimelineAccompanyingPeriodClosing\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodClosing.php + + - + message: "#^Cannot call method setKey\\(\\) on array\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodOpening.php - - message: "#^Parameter \\#1 \\$className of method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:getRepository\\(\\) expects class\\-string\\, string given\\.$#" - count: 4 + message: "#^Parameter \\$context of method Chill\\\\PersonBundle\\\\Timeline\\\\TimelineAccompanyingPeriodOpening\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodOpening.php + + - + message: "#^Parameter \\$entity of method Chill\\\\PersonBundle\\\\Timeline\\\\TimelineAccompanyingPeriodOpening\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodOpening.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Validator\\\\Constraints\\\\AccompanyingPeriod\\\\AccompanyingPeriodValidityValidator\\:\\:\\$token is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Validator/Constraints/AccompanyingPeriod/AccompanyingPeriodValidityValidator.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Validator\\\\Constraints\\\\AccompanyingPeriod\\\\ParticipationOverlapValidator\\:\\:\\$thirdpartyRender is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Validator/Constraints/AccompanyingPeriod/ParticipationOverlapValidator.php + + - + message: "#^Strict comparison using \\=\\=\\= between 0 and int\\<2, max\\> will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Validator/Constraints/AccompanyingPeriod/ParticipationOverlapValidator.php + + - + message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$message\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Validator/Constraints/Household/HouseholdMembershipSequentialValidator.php + + - + message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$message\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Validator/Constraints/Household/MaxHolderValidator.php + + - + message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$messageInfinity\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Validator/Constraints/Household/MaxHolderValidator.php + + - + message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$message\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Validator/Constraints/Person/PersonHasCenterValidator.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeParentInterface\\:\\:info\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Widget/PersonListWidgetFactory.php + + - + message: "#^Parameter \\$place of method Chill\\\\PersonBundle\\\\Widget\\\\PersonListWidgetFactory\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Widget/PersonListWidgetFactory.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQuery\\(\\)\\.$#" + count: 2 path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - message: "#^Parameter \\#1 \\$entity of method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createEditForm\\(\\) expects Chill\\\\ReportBundle\\\\Entity\\\\Report, ChillReportBundle\\:Report given\\.$#" + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findByCFGroup\\(\\)\\.$#" count: 1 path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - message: "#^Parameter \\#1 \\$em of class Chill\\\\MainBundle\\\\Form\\\\Type\\\\DataTransformer\\\\ScopeTransformer constructor expects Doctrine\\\\ORM\\\\EntityManagerInterface, Doctrine\\\\Persistence\\\\ObjectManager given\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Form/ReportType.php + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findByEntity\\(\\)\\.$#" + count: 2 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - message: "#^Parameter \\#1 \\$context of method Chill\\\\ReportBundle\\\\Timeline\\\\TimelineReportProvider\\:\\:checkContext\\(\\) expects string, Chill\\\\MainBundle\\\\Timeline\\\\type given\\.$#" + message: "#^Call to method getId\\(\\) on an unknown class ChillReportBundle\\:Report\\.$#" + count: 2 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Call to method getPerson\\(\\) on an unknown class ChillReportBundle\\:Report\\.$#" + count: 3 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:editAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:editAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:exportAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\A\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:exportAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\A but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:listAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:listAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:newAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:newAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" + count: 2 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeForExportAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeForExportAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" + count: 2 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeForExportAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:updateAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:updateAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:updateAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:viewAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:viewAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Negated boolean expression is always false\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^PHPDoc tag @param for parameter \\$scope with type string is incompatible with native type Chill\\\\MainBundle\\\\Entity\\\\Scope\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Entity/Report.php + + - + message: "#^Call to method extractOtherValue\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Export/Export/ReportList.php + + - + message: "#^Call to method getChoices\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 2 + path: src/Bundle/ChillReportBundle/Export/Export/ReportList.php + + - + message: "#^Call to method isChecked\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 2 + path: src/Bundle/ChillReportBundle/Export/Export/ReportList.php + + - + message: "#^Call to method isMultiple\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 2 + path: src/Bundle/ChillReportBundle/Export/Export/ReportList.php + + - + message: "#^Call to method render\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Export/Export/ReportList.php + + - + message: "#^Call to method getId\\(\\) on an unknown class ChillReportBundle\\:Report\\.$#" count: 1 path: src/Bundle/ChillReportBundle/Timeline/TimelineReportProvider.php - - message: "#^Parameter \\#1 \\$entity of method Chill\\\\ReportBundle\\\\Timeline\\\\TimelineReportProvider\\:\\:getFieldsToRender\\(\\) expects Chill\\\\ReportBundle\\\\Entity\\\\Report, Chill\\\\MainBundle\\\\Timeline\\\\type given\\.$#" + message: "#^Parameter \\$context of method Chill\\\\ReportBundle\\\\Timeline\\\\TimelineReportProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" count: 1 path: src/Bundle/ChillReportBundle/Timeline/TimelineReportProvider.php - - message: "#^Parameter \\#1 \\$entityName of method Doctrine\\\\ORM\\\\EntityManager\\:\\:getRepository\\(\\) expects class\\-string\\, string given\\.$#" + message: "#^Parameter \\$entity of method Chill\\\\ReportBundle\\\\Timeline\\\\TimelineReportProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" count: 1 path: src/Bundle/ChillReportBundle/Timeline/TimelineReportProvider.php - - message: "#^Parameter \\#1 \\$task of method Chill\\\\TaskBundle\\\\Entity\\\\Task\\\\SingleTaskPlaceEvent\\:\\:setTask\\(\\) expects Chill\\\\TaskBundle\\\\Entity\\\\SingleTask, Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask given\\.$#" + message: "#^Property Chill\\\\TaskBundle\\\\Controller\\\\SingleTaskController\\:\\:\\$centerResolverDispatcher is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Controller/SingleTaskController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and int will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Controller/SingleTaskController.php + + - + message: "#^If condition is always true\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Controller/TaskController.php + + - + message: "#^Property Chill\\\\TaskBundle\\\\Entity\\\\RecurringTask\\:\\:\\$singleTasks is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Entity/RecurringTask.php + + - + message: "#^Method Chill\\\\TaskBundle\\\\Entity\\\\SingleTask\\:\\:getWarningDate\\(\\) should return DateTimeImmutable but returns null\\.$#" + count: 2 + path: src/Bundle/ChillTaskBundle/Entity/SingleTask.php + + - + message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask\\:\\:getTaskPlaceEvents\\(\\)\\.$#" count: 1 path: src/Bundle/ChillTaskBundle/Event/Lifecycle/TaskLifecycleEvent.php - - message: "#^Parameter \\#1 \\$repository of class Chill\\\\PersonBundle\\\\Form\\\\DataTransformer\\\\PersonToIdTransformer constructor expects Chill\\\\PersonBundle\\\\Repository\\\\PersonRepository, Doctrine\\\\ORM\\\\EntityManagerInterface given\\.$#" + message: "#^Method Chill\\\\TaskBundle\\\\Repository\\\\SingleTaskRepository\\:\\:findByParameters\\(\\) has invalid return type Chill\\\\TaskBundle\\\\Repository\\\\type\\.$#" count: 1 - path: src/Bundle/ChillTaskBundle/Form/SingleTaskListType.php + path: src/Bundle/ChillTaskBundle/Repository/SingleTaskRepository.php - - message: "#^Parameter \\#1 \\$extras of method Knp\\\\Menu\\\\MenuItem\\:\\:setExtras\\(\\) expects array\\, string given\\.$#" + message: "#^Parameter \\$params of method Chill\\\\TaskBundle\\\\Repository\\\\SingleTaskRepository\\:\\:findByParameters\\(\\) has invalid type Chill\\\\TaskBundle\\\\Repository\\\\type\\.$#" count: 1 - path: src/Bundle/ChillTaskBundle/Menu/MenuBuilder.php + path: src/Bundle/ChillTaskBundle/Repository/SingleTaskRepository.php - - message: "#^Parameter \\#1 \\$storedObject of method Chill\\\\WopiBundle\\\\Service\\\\Wopi\\\\ChillDocumentManager\\:\\:getContent\\(\\) expects Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject, ChampsLibres\\\\WopiLib\\\\Contract\\\\Entity\\\\Document given\\.$#" - count: 3 - path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillDocumentManager.php + message: "#^Property Chill\\\\TaskBundle\\\\Security\\\\Authorization\\\\AuthorizationEvent\\:\\:\\$vote \\(bool\\) does not accept null\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Security/Authorization/AuthorizationEvent.php - - message: "#^Parameter \\#1 \\$storedObject of method Chill\\\\WopiBundle\\\\Service\\\\Wopi\\\\ChillDocumentManager\\:\\:setContent\\(\\) expects Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject, ChampsLibres\\\\WopiLib\\\\Contract\\\\Entity\\\\Document given\\.$#" + message: "#^Call to method deleteItem\\(\\) on an unknown class Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CacheItempPoolInterface\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Templating/UI/CountNotificationTask.php + + - + message: "#^Call to method getItem\\(\\) on an unknown class Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CacheItempPoolInterface\\.$#" + count: 2 + path: src/Bundle/ChillTaskBundle/Templating/UI/CountNotificationTask.php + + - + message: "#^Call to method save\\(\\) on an unknown class Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CacheItempPoolInterface\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Templating/UI/CountNotificationTask.php + + - + message: "#^Property Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CountNotificationTask\\:\\:\\$cachePool \\(Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CacheItempPoolInterface\\) does not accept Psr\\\\Cache\\\\CacheItemPoolInterface\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Templating/UI/CountNotificationTask.php + + - + message: "#^Property Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CountNotificationTask\\:\\:\\$cachePool has unknown class Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CacheItempPoolInterface as its type\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Templating/UI/CountNotificationTask.php + + - + message: "#^Call to method getData\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 2 + path: src/Bundle/ChillTaskBundle/Timeline/SingleTaskTaskLifeCycleEventTimelineProvider.php + + - + message: "#^Call to method getTask\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Timeline/SingleTaskTaskLifeCycleEventTimelineProvider.php + + - + message: "#^Call to method getTransition\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Timeline/SingleTaskTaskLifeCycleEventTimelineProvider.php + + - + message: "#^Parameter \\$context of method Chill\\\\TaskBundle\\\\Timeline\\\\SingleTaskTaskLifeCycleEventTimelineProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Timeline/SingleTaskTaskLifeCycleEventTimelineProvider.php + + - + message: "#^Parameter \\$entity of method Chill\\\\TaskBundle\\\\Timeline\\\\SingleTaskTaskLifeCycleEventTimelineProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Timeline/SingleTaskTaskLifeCycleEventTimelineProvider.php + + - + message: "#^Call to method getData\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Timeline/TaskLifeCycleEventTimelineProvider.php + + - + message: "#^Call to method getTask\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 2 + path: src/Bundle/ChillTaskBundle/Timeline/TaskLifeCycleEventTimelineProvider.php + + - + message: "#^Call to method getTransition\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Timeline/TaskLifeCycleEventTimelineProvider.php + + - + message: "#^Parameter \\$context of method Chill\\\\TaskBundle\\\\Timeline\\\\TaskLifeCycleEventTimelineProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Timeline/TaskLifeCycleEventTimelineProvider.php + + - + message: "#^Parameter \\$entity of method Chill\\\\TaskBundle\\\\Timeline\\\\TaskLifeCycleEventTimelineProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Timeline/TaskLifeCycleEventTimelineProvider.php + + - + message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask\\:\\:getId\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Workflow/TaskWorkflowManager.php + + - + message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Workflow\\\\TaskWorkflowDefinition\\:\\:getAssociatedWorkflowName\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Workflow/TaskWorkflowManager.php + + - + message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Workflow\\\\TaskWorkflowDefinition\\:\\:getWorkflowMetadata\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Workflow/TaskWorkflowManager.php + + - + message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Workflow\\\\TaskWorkflowDefinition\\:\\:isClosed\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Workflow/TaskWorkflowManager.php + + - + message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Workflow\\\\TaskWorkflowDefinition\\:\\:supports\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Workflow/TaskWorkflowManager.php + + - + message: "#^PHPDoc tag @return with type DateTime\\|null is not subtype of native type DateTimeImmutable\\|null\\.$#" + count: 1 + path: src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php + + - + message: "#^Property Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\:\\:\\$canonicalized is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php + + - + message: "#^Property Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\:\\:\\$createdBy is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php + + - + message: "#^Property Chill\\\\ThirdPartyBundle\\\\Repository\\\\ThirdPartyACLAwareRepository\\:\\:\\$authorizationHelper is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillThirdPartyBundle/Repository/ThirdPartyACLAwareRepository.php + + - + message: "#^Property Chill\\\\ThirdPartyBundle\\\\Repository\\\\ThirdPartyACLAwareRepository\\:\\:\\$security is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillThirdPartyBundle/Repository/ThirdPartyACLAwareRepository.php + + - + message: "#^Argument of an invalid type string supplied for foreach, only iterables are supported\\.$#" + count: 1 + path: src/Bundle/ChillThirdPartyBundle/Repository/ThirdPartyRepository.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillThirdPartyBundle/Security/Voter/ThirdPartyVoter.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillWopiBundle/src/Controller/Editor.php + + - + message: "#^Strict comparison using \\=\\=\\= between false and array will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillWopiBundle/src/Service/Wopi/AuthorizationManager.php + + - + message: "#^Default value of the parameter \\#2 \\$properties \\(array\\{\\}\\) of method Chill\\\\WopiBundle\\\\Service\\\\Wopi\\\\ChillDocumentManager\\:\\:write\\(\\) is incompatible with type array\\{content\\: string, size\\: int\\}\\.$#" count: 1 path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillDocumentManager.php - - message: "#^Parameter \\#1 \\$type of method Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject\\:\\:setType\\(\\) expects string\\|null, false given\\.$#" + message: "#^Method ChampsLibres\\\\WopiLib\\\\Contract\\\\Service\\\\WopiInterface\\:\\:checkFileInfo\\(\\) invoked with 4 parameters, 3 required\\.$#" count: 1 - path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillDocumentManager.php + path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillWopi.php From 2f07be084391ee9036638678d3b96d779bf099ce Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 24 Apr 2024 10:11:02 +0200 Subject: [PATCH 023/136] Revert "adjust phpstan baselines" This reverts commit a71573136a6276554805e226f17c43b3d71585c5. --- phpstan-baseline-level-2.neon | 306 ++- phpstan-baseline-level-3.neon | 866 ++++-- phpstan-baseline-level-4.neon | 4737 +++++++++++++++++++++++++++++++-- phpstan-baseline-level-5.neon | 3056 ++------------------- phpstan-baseline.neon | 76 + phpstan.neon.dist | 2 +- 6 files changed, 5812 insertions(+), 3231 deletions(-) diff --git a/phpstan-baseline-level-2.neon b/phpstan-baseline-level-2.neon index a9d62a9c6..6f7cec495 100644 --- a/phpstan-baseline-level-2.neon +++ b/phpstan-baseline-level-2.neon @@ -1,101 +1,301 @@ parameters: ignoreErrors: - - message: "#^Foreach overwrites \\$key with its key variable\\.$#" + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\ActivityBundle\\\\Entity\\\\Activity\\|null given\\.$#" count: 1 + path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php + + - + message: "#^Only booleans are allowed in a ternary operator condition, Chill\\\\MainBundle\\\\Entity\\\\Scope\\|null given\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php + + - + message: "#^Only booleans are allowed in a ternary operator condition, Chill\\\\PersonBundle\\\\Entity\\\\Person\\|null given\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php + + - + message: "#^Only booleans are allowed in a ternary operator condition, DateTime\\|null given\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php + + - + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\ActivityBundle\\\\Entity\\\\ActivityReasonCategory\\|null given\\.$#" + count: 3 + path: src/Bundle/ChillActivityBundle/Controller/ActivityReasonCategoryController.php + + - + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\ActivityBundle\\\\Entity\\\\ActivityReason\\|null given\\.$#" + count: 2 + path: src/Bundle/ChillActivityBundle/Controller/ActivityReasonController.php + + - + message: "#^Call to method DateTime\\:\\:setTimezone\\(\\) with incorrect case\\: setTimeZone$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Form/ActivityType.php + + - + message: "#^Only booleans are allowed in &&, Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\|null given on the right side\\.$#" + count: 2 + path: src/Bundle/ChillActivityBundle/Form/ActivityType.php + + - + message: "#^Only booleans are allowed in an if condition, Chill\\\\AsideActivityBundle\\\\Entity\\\\AsideActivityCategory\\|null given\\.$#" + count: 1 + path: src/Bundle/ChillAsideActivityBundle/src/Entity/AsideActivityCategory.php + + - + message: "#^Call to method DateTimeImmutable\\:\\:setTimezone\\(\\) with incorrect case\\: setTimeZone$#" + count: 1 + path: src/Bundle/ChillAsideActivityBundle/src/Form/AsideActivityFormType.php + + - + message: "#^Only booleans are allowed in a ternary operator condition, Chill\\\\MainBundle\\\\Entity\\\\Location\\|null given\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/Controller/CalendarController.php + + - + message: "#^Only booleans are allowed in an if condition, Symfony\\\\Component\\\\Validator\\\\ConstraintViolationListInterface given\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Command/CreateFieldsOnGroupCommand.php + + - + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup\\|null given\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldController.php + + - + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomField\\|null given\\.$#" + count: 3 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldController.php + + - + message: "#^Only booleans are allowed in a ternary operator condition, Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup given\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldController.php + + - + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup\\|null given\\.$#" + count: 4 path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php - - message: "#^Only booleans are allowed in an if condition, mixed given\\.$#" + message: "#^Only booleans are allowed in a ternary operator condition, string given\\.$#" count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Entity/CustomField.php + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php - - message: "#^Variable \\$participation might not be defined\\.$#" + message: "#^Only booleans are allowed in a negated boolean, string given\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/CustomFieldsGroupToIdTransformer.php + + - + message: "#^Call to method Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:getFirstName\\(\\) with incorrect case\\: getFirstname$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/EventController.php + + - + message: "#^Call to method Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:getLastName\\(\\) with incorrect case\\: getLastname$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/EventController.php + + - + message: "#^Call to method Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:getMobilenumber\\(\\) with incorrect case\\: getMobileNumber$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/EventController.php + + - + message: "#^Call to method Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:getPhonenumber\\(\\) with incorrect case\\: getPhoneNumber$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/EventController.php + + - + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\EventBundle\\\\Entity\\\\Event given\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/EventController.php + + - + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\EventBundle\\\\Entity\\\\Event\\|null given\\.$#" count: 3 + path: src/Bundle/ChillEventBundle/Controller/EventController.php + + - + message: "#^Only booleans are allowed in a ternary operator condition, int given\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/EventController.php + + - + message: "#^Only numeric types are allowed in pre\\-increment, string given\\.$#" + count: 2 + path: src/Bundle/ChillEventBundle/Controller/EventController.php + + - + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\EventBundle\\\\Entity\\\\EventType\\|null given\\.$#" + count: 4 + path: src/Bundle/ChillEventBundle/Controller/EventTypeController.php + + - + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\EventBundle\\\\Entity\\\\Participation\\|null given\\.$#" + count: 1 path: src/Bundle/ChillEventBundle/Controller/ParticipationController.php - - message: "#^Foreach overwrites \\$value with its value variable\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Form/ChoiceLoader/EventChoiceLoader.php + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\EventBundle\\\\Entity\\\\Role\\|null given\\.$#" + count: 4 + path: src/Bundle/ChillEventBundle/Controller/RoleController.php - - message: "#^Comparison operation \"\\>\" between \\(bool\\|int\\|Redis\\) and 0 results in an error\\.$#" - count: 1 - path: src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\EventBundle\\\\Entity\\\\Status\\|null given\\.$#" + count: 4 + path: src/Bundle/ChillEventBundle/Controller/StatusController.php - - message: "#^Variable \\$response might not be defined\\.$#" + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\MainBundle\\\\Entity\\\\Language\\|null given\\.$#" count: 1 - path: src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php + path: src/Bundle/ChillMainBundle/Command/LoadAndUpdateLanguagesCommand.php - - message: "#^Function GuzzleHttp\\\\Psr7\\\\get not found\\.$#" + message: "#^Only booleans are allowed in an if condition, Chill\\\\MainBundle\\\\Entity\\\\Language\\|null given\\.$#" count: 1 - path: src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php + path: src/Bundle/ChillMainBundle/Command/LoadAndUpdateLanguagesCommand.php - - message: "#^Function GuzzleHttp\\\\Psr7\\\\str not found\\.$#" + message: "#^Only booleans are allowed in an if condition, int given\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Command/LoadPostalCodesCommand.php + + - + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\MainBundle\\\\Entity\\\\Center\\|null given\\.$#" + count: 3 + path: src/Bundle/ChillMainBundle/Controller/CenterController.php + + - + message: "#^Call to method Redis\\:\\:setex\\(\\) with incorrect case\\: setEx$#" count: 2 - path: src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php - - - - message: "#^Variable \\$f might not be defined\\.$#" - count: 1 - path: src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php - - - - message: "#^Variable \\$metier might not be defined\\.$#" - count: 1 - path: src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php - - - - message: "#^Cannot unset offset '_token' on array\\{formatter\\: mixed, export\\: mixed, centers\\: mixed, alias\\: string\\}\\.$#" - count: 1 path: src/Bundle/ChillMainBundle/Controller/ExportController.php - - message: "#^Foreach overwrites \\$line with its value variable\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Export/Formatter/CSVFormatter.php + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\MainBundle\\\\Entity\\\\PermissionsGroup\\|null given\\.$#" + count: 5 + path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php - - message: "#^Foreach overwrites \\$key with its key variable\\.$#" + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\MainBundle\\\\Entity\\\\RoleScope\\|null given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php - - message: "#^Foreach overwrites \\$key with its value variable\\.$#" + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\MainBundle\\\\Entity\\\\Scope\\|null given\\.$#" count: 3 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + path: src/Bundle/ChillMainBundle/Controller/ScopeController.php - - message: "#^Foreach overwrites \\$value with its value variable\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/ChoiceLoader/PostalCodeChoiceLoader.php - - - - message: "#^Only booleans are allowed in an if condition, mixed given\\.$#" + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\MainBundle\\\\Entity\\\\GroupCenter\\|null given\\.$#" count: 2 - path: src/Bundle/ChillMainBundle/Repository/NotificationRepository.php + path: src/Bundle/ChillMainBundle/Controller/UserController.php - - message: "#^Only booleans are allowed in an if condition, mixed given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Templating/ChillTwigRoutingHelper.php + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\MainBundle\\\\Entity\\\\User\\|null given\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Controller/UserController.php - - message: "#^Foreach overwrites \\$value with its value variable\\.$#" + message: "#^Only booleans are allowed in an if condition, int given\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Form/ChoiceLoader/PersonChoiceLoader.php + path: src/Bundle/ChillMainBundle/DataFixtures/ORM/LoadPostalCodes.php - - message: "#^Only booleans are allowed in an if condition, mixed given\\.$#" + message: "#^Only numeric types are allowed in pre\\-increment, string given\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Form/PersonType.php + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadsheetListFormatter.php - - message: "#^Foreach overwrites \\$value with its value variable\\.$#" + message: "#^Only booleans are allowed in an if condition, int given\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Form/DataTransformer/IdToEntityDataTransformer.php + + - + message: "#^Only booleans are allowed in a ternary operator condition, string\\|null given\\.$#" count: 1 - path: src/Bundle/ChillThirdPartyBundle/Form/ChoiceLoader/ThirdPartyChoiceLoader.php + path: src/Bundle/ChillMainBundle/Form/Type/PickUserLocationType.php + + - + message: "#^Only booleans are allowed in a ternary operator condition, int\\<0, max\\> given\\.$#" + count: 4 + path: src/Bundle/ChillMainBundle/Search/SearchApiQuery.php + + - + message: "#^Call to method Chill\\\\MainBundle\\\\Entity\\\\Address\\:\\:getPostcode\\(\\) with incorrect case\\: getPostCode$#" + count: 6 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php + + - + message: "#^Only booleans are allowed in an if condition, Symfony\\\\Component\\\\Serializer\\\\Mapping\\\\ClassDiscriminatorMapping\\|null given\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DoctrineExistingEntityNormalizer.php + + - + message: "#^Only booleans are allowed in a negated boolean, null given\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Only booleans are allowed in a ternary operator condition, Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriodParticipation\\|null given\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Call to method Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:getFirstName\\(\\) with incorrect case\\: getFirstname$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Form/Type/PickPersonType.php + + - + message: "#^Call to method Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:getLastName\\(\\) with incorrect case\\: getLastname$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Form/Type/PickPersonType.php + + - + message: "#^Only booleans are allowed in an if condition, int\\<0, max\\> given\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Search/SimilarPersonMatcher.php + + - + message: "#^Only booleans are allowed in &&, null given on the left side\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/MembersEditorNormalizer.php + + - + message: "#^Only booleans are allowed in a ternary operator condition, Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\Household\\|null given\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonJsonNormalizer.php + + - + message: "#^Only booleans are allowed in a ternary operator condition, array\\ given\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonJsonNormalizer.php + + - + message: "#^Call to method Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:getDeathdate\\(\\) with incorrect case\\: getDeathDate$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Templating/Entity/PersonRender.php + + - + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\PersonBundle\\\\Entity\\\\Person\\|null given\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Only booleans are allowed in a negated boolean, Chill\\\\ReportBundle\\\\Entity\\\\Report given\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Call to method Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\:\\:setFirstname\\(\\) with incorrect case\\: setFirstName$#" + count: 1 + path: src/Bundle/ChillThirdPartyBundle/EventListener/ThirdPartyEventListener.php + + - + message: "#^Dynamic call to static method Chill\\\\ThirdPartyBundle\\\\ThirdPartyType\\\\ThirdPartyTypeProviderInterface\\:\\:getKey\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillThirdPartyBundle/ThirdPartyType/ThirdPartyTypeManager.php diff --git a/phpstan-baseline-level-3.neon b/phpstan-baseline-level-3.neon index 3e6a20bc5..b7091f4ad 100644 --- a/phpstan-baseline-level-3.neon +++ b/phpstan-baseline-level-3.neon @@ -1,276 +1,804 @@ parameters: ignoreErrors: - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\ActivityBundle\\\\Entity\\\\Activity\\|null given\\.$#" + message: "#^Return type \\(array\\\\) of method Chill\\\\ActivityBundle\\\\Repository\\\\ActivityACLAwareRepository\\:\\:findByPerson\\(\\) should be covariant with return type \\(array\\\\) of method Chill\\\\ActivityBundle\\\\Repository\\\\ActivityACLAwareRepositoryInterface\\:\\:findByPerson\\(\\)$#" count: 1 - path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php + path: src/Bundle/ChillActivityBundle/Repository/ActivityACLAwareRepository.php - - message: "#^Only booleans are allowed in a ternary operator condition, Chill\\\\MainBundle\\\\Entity\\\\Scope\\|null given\\.$#" + message: "#^Return type \\(array\\\\) of method Chill\\\\ActivityBundle\\\\Repository\\\\ActivityReasonRepository\\:\\:findAll\\(\\) should be covariant with return type \\(array\\\\) of method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findAll\\(\\)$#" count: 1 - path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php + path: src/Bundle/ChillActivityBundle/Repository/ActivityReasonRepository.php - - message: "#^Only booleans are allowed in a ternary operator condition, Chill\\\\PersonBundle\\\\Entity\\\\Person\\|null given\\.$#" + message: "#^Return type \\(array\\\\>\\) of method Chill\\\\AsideActivityBundle\\\\Security\\\\AsideActivityVoter\\:\\:getRolesWithHierarchy\\(\\) should be covariant with return type \\(array\\\\>\\) of method Chill\\\\MainBundle\\\\Security\\\\ProvideRoleHierarchyInterface\\:\\:getRolesWithHierarchy\\(\\)$#" count: 1 - path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php + path: src/Bundle/ChillAsideActivityBundle/src/Security/AsideActivityVoter.php - - message: "#^Only booleans are allowed in a ternary operator condition, DateTime\\|null given\\.$#" + message: "#^Parameter \\#1 \\$criteria \\(array\\\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepository\\:\\:findBy\\(\\) should be contravariant with parameter \\$criteria \\(array\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepositoryInterface\\:\\:findBy\\(\\)$#" count: 1 - path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php + path: src/Bundle/ChillCalendarBundle/Repository/CalendarDocRepository.php - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\ActivityBundle\\\\Entity\\\\ActivityReasonCategory\\|null given\\.$#" - count: 3 - path: src/Bundle/ChillActivityBundle/Controller/ActivityReasonCategoryController.php - - - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\ActivityBundle\\\\Entity\\\\ActivityReason\\|null given\\.$#" - count: 2 - path: src/Bundle/ChillActivityBundle/Controller/ActivityReasonController.php - - - - message: "#^Call to method DateTime\\:\\:setTimezone\\(\\) with incorrect case\\: setTimeZone$#" + message: "#^Parameter \\#1 \\$criteria \\(array\\\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepository\\:\\:findOneBy\\(\\) should be contravariant with parameter \\$criteria \\(array\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepositoryInterface\\:\\:findOneBy\\(\\)$#" count: 1 - path: src/Bundle/ChillActivityBundle/Form/ActivityType.php + path: src/Bundle/ChillCalendarBundle/Repository/CalendarDocRepository.php - - message: "#^Only booleans are allowed in an if condition, Chill\\\\AsideActivityBundle\\\\Entity\\\\AsideActivityCategory\\|null given\\.$#" + message: "#^Parameter \\#2 \\$orderBy \\(array\\\\|null\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepository\\:\\:findBy\\(\\) should be contravariant with parameter \\$orderBy \\(array\\|null\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepositoryInterface\\:\\:findBy\\(\\)$#" count: 1 - path: src/Bundle/ChillAsideActivityBundle/src/Entity/AsideActivityCategory.php + path: src/Bundle/ChillCalendarBundle/Repository/CalendarDocRepository.php - - message: "#^Call to method DateTimeImmutable\\:\\:setTimezone\\(\\) with incorrect case\\: setTimeZone$#" + message: "#^Return type \\(array\\\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepository\\:\\:findAll\\(\\) should be covariant with return type \\(array\\\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepositoryInterface\\:\\:findAll\\(\\)$#" count: 1 - path: src/Bundle/ChillAsideActivityBundle/src/Form/AsideActivityFormType.php + path: src/Bundle/ChillCalendarBundle/Repository/CalendarDocRepository.php - - message: "#^Only booleans are allowed in a ternary operator condition, Chill\\\\MainBundle\\\\Entity\\\\Location\\|null given\\.$#" + message: "#^Return type \\(array\\\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepository\\:\\:findBy\\(\\) should be covariant with return type \\(array\\\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepositoryInterface\\:\\:findBy\\(\\)$#" count: 1 - path: src/Bundle/ChillCalendarBundle/Controller/CalendarController.php + path: src/Bundle/ChillCalendarBundle/Repository/CalendarDocRepository.php - - message: "#^Only booleans are allowed in an if condition, Symfony\\\\Component\\\\Validator\\\\ConstraintViolationListInterface given\\.$#" + message: "#^Parameter \\#2 \\$subject \\(Chill\\\\CalendarBundle\\\\Entity\\\\CalendarDoc\\) of method Chill\\\\CalendarBundle\\\\Security\\\\Voter\\\\CalendarDocVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/Security/Voter/CalendarDocVoter.php + + - + message: "#^Parameter \\#2 \\$subject \\(Chill\\\\CalendarBundle\\\\Entity\\\\Invite\\) of method Chill\\\\CalendarBundle\\\\Security\\\\Voter\\\\InviteVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/Security/Voter/InviteVoter.php + + + - + message: "#^Return type \\(int\\|void\\|null\\) of method Chill\\\\CustomFieldsBundle\\\\Command\\\\CreateFieldsOnGroupCommand\\:\\:execute\\(\\) should be covariant with return type \\(int\\) of method Symfony\\\\Component\\\\Console\\\\Command\\\\Command\\:\\:execute\\(\\)$#" count: 1 path: src/Bundle/ChillCustomFieldsBundle/Command/CreateFieldsOnGroupCommand.php - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldController.php - - - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomField\\|null given\\.$#" - count: 2 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldController.php - - - - message: "#^Only booleans are allowed in a ternary operator condition, Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup given\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldController.php - - - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup\\|null given\\.$#" - count: 4 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php - - - - message: "#^Only booleans are allowed in a ternary operator condition, string given\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php - - - - message: "#^Property Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomField\\:\\:\\$required \\(false\\) does not accept bool\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Entity/CustomField.php - - - - message: "#^Only booleans are allowed in a negated boolean, string given\\.$#" + message: "#^Parameter \\#1 \\$customFieldsGroup \\(Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup\\|null\\) of method Chill\\\\CustomFieldsBundle\\\\Form\\\\DataTransformer\\\\CustomFieldsGroupToIdTransformer\\:\\:transform\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataTransformerInterface\\:\\:transform\\(\\)$#" count: 1 path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/CustomFieldsGroupToIdTransformer.php - - message: "#^Call to method Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:getFirstName\\(\\) with incorrect case\\: getFirstname$#" + message: "#^Parameter \\#1 \\$id \\(string\\) of method Chill\\\\CustomFieldsBundle\\\\Form\\\\DataTransformer\\\\CustomFieldsGroupToIdTransformer\\:\\:reverseTransform\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataTransformerInterface\\:\\:reverseTransform\\(\\)$#" count: 1 - path: src/Bundle/ChillEventBundle/Controller/EventController.php + path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/CustomFieldsGroupToIdTransformer.php - - message: "#^Call to method Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:getLastName\\(\\) with incorrect case\\: getLastname$#" + message: "#^Parameter \\#2 \\$query \\(Doctrine\\\\ORM\\\\QueryBuilder\\) of method Chill\\\\DocGeneratorBundle\\\\Controller\\\\AdminDocGeneratorTemplateController\\:\\:orderQuery\\(\\) should be contravariant with parameter \\$query \\(mixed\\) of method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\CRUDController\\:\\:orderQuery\\(\\)$#" count: 1 - path: src/Bundle/ChillEventBundle/Controller/EventController.php + path: src/Bundle/ChillDocGeneratorBundle/Controller/AdminDocGeneratorTemplateController.php - - message: "#^Call to method Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:getMobilenumber\\(\\) with incorrect case\\: getMobileNumber$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/EventController.php - - - - message: "#^Call to method Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:getPhonenumber\\(\\) with incorrect case\\: getPhoneNumber$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/EventController.php - - - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\EventBundle\\\\Entity\\\\Event given\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/EventController.php - - - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\EventBundle\\\\Entity\\\\Event\\|null given\\.$#" - count: 3 - path: src/Bundle/ChillEventBundle/Controller/EventController.php - - - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\EventBundle\\\\Entity\\\\EventType\\|null given\\.$#" - count: 4 - path: src/Bundle/ChillEventBundle/Controller/EventTypeController.php - - - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\EventBundle\\\\Entity\\\\Participation\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/ParticipationController.php - - - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\EventBundle\\\\Entity\\\\Role\\|null given\\.$#" - count: 4 - path: src/Bundle/ChillEventBundle/Controller/RoleController.php - - - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\EventBundle\\\\Entity\\\\Status\\|null given\\.$#" - count: 4 - path: src/Bundle/ChillEventBundle/Controller/StatusController.php - - - - message: "#^Property Chill\\\\JobBundle\\\\Form\\\\ChoiceLoader\\\\RomeAppellationChoiceLoader\\:\\:\\$appellationRepository \\(Chill\\\\JobBundle\\\\Repository\\\\Rome\\\\AppellationRepository\\) does not accept Doctrine\\\\ORM\\\\EntityRepository\\\\.$#" - count: 1 - path: src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php - - - - message: "#^Only booleans are allowed in an if condition, int given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Command/LoadPostalCodesCommand.php - - - - message: "#^Call to method Redis\\:\\:setex\\(\\) with incorrect case\\: setEx$#" + message: "#^Parameter \\#1 \\$object \\(Doctrine\\\\Common\\\\Collections\\\\Collection\\) of method Chill\\\\DocGeneratorBundle\\\\Serializer\\\\Normalizer\\\\CollectionDocGenNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" count: 2 - path: src/Bundle/ChillMainBundle/Controller/ExportController.php + path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/CollectionDocGenNormalizer.php - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\MainBundle\\\\Entity\\\\PermissionsGroup\\|null given\\.$#" - count: 5 - path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php - - - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\MainBundle\\\\Entity\\\\RoleScope\\|null given\\.$#" + message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\DocGeneratorBundle\\\\Serializer\\\\Normalizer\\\\CollectionDocGenNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\ContextAwareNormalizerInterface\\:\\:supportsNormalization\\(\\)$#" count: 1 - path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php + path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/CollectionDocGenNormalizer.php - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\MainBundle\\\\Entity\\\\Scope\\|null given\\.$#" + message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\DocGeneratorBundle\\\\Serializer\\\\Normalizer\\\\CollectionDocGenNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:supportsNormalization\\(\\)$#" count: 1 - path: src/Bundle/ChillMainBundle/Controller/ScopeController.php + path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/CollectionDocGenNormalizer.php - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\MainBundle\\\\Entity\\\\GroupCenter\\|null given\\.$#" + message: "#^Return type \\(array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|void\\|null\\) of method Chill\\\\DocGeneratorBundle\\\\Serializer\\\\Normalizer\\\\CollectionDocGenNormalizer\\:\\:normalize\\(\\) should be covariant with return type \\(array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" count: 2 - path: src/Bundle/ChillMainBundle/Controller/UserController.php + path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/CollectionDocGenNormalizer.php - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\MainBundle\\\\Entity\\\\User\\|null given\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Controller/UserController.php - - - - message: "#^Only booleans are allowed in an if condition, int given\\.$#" + message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\DocGeneratorBundle\\\\Serializer\\\\Normalizer\\\\DocGenObjectNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" count: 1 - path: src/Bundle/ChillMainBundle/DataFixtures/ORM/LoadPostalCodes.php + path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/DocGenObjectNormalizer.php - - message: "#^Only booleans are allowed in an if condition, int given\\.$#" + message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\DocGeneratorBundle\\\\Serializer\\\\Normalizer\\\\DocGenObjectNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:supportsNormalization\\(\\)$#" + count: 1 + path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/DocGenObjectNormalizer.php + + - + message: "#^Return type \\(Chill\\\\MainBundle\\\\Entity\\\\Scope\\|null\\) of method Chill\\\\DocStoreBundle\\\\Entity\\\\PersonDocument\\:\\:getScope\\(\\) should be covariant with return type \\(Chill\\\\MainBundle\\\\Entity\\\\Scope\\) of method Chill\\\\MainBundle\\\\Entity\\\\HasScopeInterface\\:\\:getScope\\(\\)$#" + count: 1 + path: src/Bundle/ChillDocStoreBundle/Entity/PersonDocument.php + + - + message: "#^Parameter \\#2 \\$subject \\(Chill\\\\DocStoreBundle\\\\Entity\\\\PersonDocument\\) of method Chill\\\\DocStoreBundle\\\\Security\\\\Authorization\\\\PersonDocumentVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" + count: 1 + path: src/Bundle/ChillDocStoreBundle/Security/Authorization/PersonDocumentVoter.php + + - + message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\DocStoreBundle\\\\Serializer\\\\Normalizer\\\\StoredObjectDenormalizer\\:\\:denormalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:denormalize\\(\\)$#" + count: 1 + path: src/Bundle/ChillDocStoreBundle/Serializer/Normalizer/StoredObjectDenormalizer.php + + - + message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\DocStoreBundle\\\\Serializer\\\\Normalizer\\\\StoredObjectDenormalizer\\:\\:supportsDenormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:supportsDenormalization\\(\\)$#" + count: 1 + path: src/Bundle/ChillDocStoreBundle/Serializer/Normalizer/StoredObjectDenormalizer.php + + - + message: "#^Parameter \\#1 \\$object \\(Chill\\\\DocStoreBundle\\\\Entity\\\\AccompanyingCourseDocument\\) of method Chill\\\\DocStoreBundle\\\\Workflow\\\\AccompanyingCourseDocumentWorkflowHandler\\:\\:getRelatedObjects\\(\\) should be contravariant with parameter \\$object \\(object\\) of method Chill\\\\MainBundle\\\\Workflow\\\\EntityWorkflowHandlerInterface\\:\\:getRelatedObjects\\(\\)$#" + count: 1 + path: src/Bundle/ChillDocStoreBundle/Workflow/AccompanyingCourseDocumentWorkflowHandler.php + + - + message: "#^Parameter \\#1 \\$value \\(null\\) of method Chill\\\\EventBundle\\\\Form\\\\ChoiceLoader\\\\EventChoiceLoader\\:\\:loadChoiceList\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadChoiceList\\(\\)$#" + count: 1 + path: src/Bundle/ChillEventBundle/Form/ChoiceLoader/EventChoiceLoader.php + + - + message: "#^Parameter \\#2 \\$value \\(null\\) of method Chill\\\\EventBundle\\\\Form\\\\ChoiceLoader\\\\EventChoiceLoader\\:\\:loadChoicesForValues\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadChoicesForValues\\(\\)$#" + count: 1 + path: src/Bundle/ChillEventBundle/Form/ChoiceLoader/EventChoiceLoader.php + + - + message: "#^Parameter \\#2 \\$value \\(null\\) of method Chill\\\\EventBundle\\\\Form\\\\ChoiceLoader\\\\EventChoiceLoader\\:\\:loadValuesForChoices\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadValuesForChoices\\(\\)$#" + count: 1 + path: src/Bundle/ChillEventBundle/Form/ChoiceLoader/EventChoiceLoader.php + + - + message: "#^Parameter \\#2 \\$subject \\(Chill\\\\EventBundle\\\\Entity\\\\Event\\) of method Chill\\\\EventBundle\\\\Security\\\\Authorization\\\\EventVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" + count: 1 + path: src/Bundle/ChillEventBundle/Security/Authorization/EventVoter.php + + - + message: "#^Parameter \\#2 \\$subject \\(Chill\\\\EventBundle\\\\Entity\\\\Participation\\) of method Chill\\\\EventBundle\\\\Security\\\\Authorization\\\\ParticipationVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" + count: 1 + path: src/Bundle/ChillEventBundle/Security/Authorization/ParticipationVoter.php + + - + message: "#^Parameter \\#1 \\$entity \\(Chill\\\\EventBundle\\\\Entity\\\\Event\\) of method Chill\\\\EventBundle\\\\Timeline\\\\TimelineEventProvider\\:\\:getEntityTemplate\\(\\) should be contravariant with parameter \\$entity \\(Chill\\\\MainBundle\\\\Timeline\\\\type\\) of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineProviderInterface\\:\\:getEntityTemplate\\(\\)$#" + count: 1 + path: src/Bundle/ChillEventBundle/Timeline/TimelineEventProvider.php + + - + message: "#^Parameter \\#2 \\$type \\(null\\) of method Chill\\\\MainBundle\\\\CRUD\\\\Routing\\\\CRUDRoutesLoader\\:\\:supports\\(\\) should be contravariant with parameter \\$type \\(string\\|null\\) of method Symfony\\\\Component\\\\Config\\\\Loader\\\\LoaderInterface\\:\\:supports\\(\\)$#" count: 2 + path: src/Bundle/ChillMainBundle/CRUD/Routing/CRUDRoutesLoader.php + + - + message: "#^Parameter \\#2 \\$query \\(Doctrine\\\\ORM\\\\QueryBuilder\\) of method Chill\\\\MainBundle\\\\Controller\\\\LocationApiController\\:\\:orderQuery\\(\\) should be contravariant with parameter \\$query \\(mixed\\) of method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\AbstractCRUDController\\:\\:orderQuery\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/LocationApiController.php + + - + message: "#^Parameter \\#3 \\$query \\(Doctrine\\\\ORM\\\\QueryBuilder\\) of method Chill\\\\MainBundle\\\\Controller\\\\UserApiController\\:\\:customizeQuery\\(\\) should be contravariant with parameter \\$query \\(mixed\\) of method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\AbstractCRUDController\\:\\:customizeQuery\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/UserApiController.php + + - + message: "#^Return type \\(object\\|null\\) of method Chill\\\\MainBundle\\\\DependencyInjection\\\\ChillMainExtension\\:\\:getConfiguration\\(\\) should be covariant with return type \\(Symfony\\\\Component\\\\Config\\\\Definition\\\\ConfigurationInterface\\|null\\) of method Symfony\\\\Component\\\\DependencyInjection\\\\Extension\\\\ConfigurationExtensionInterface\\:\\:getConfiguration\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/ChillMainExtension.php + + - + message: "#^Return type \\(object\\|null\\) of method Chill\\\\MainBundle\\\\DependencyInjection\\\\ChillMainExtension\\:\\:getConfiguration\\(\\) should be covariant with return type \\(Symfony\\\\Component\\\\Config\\\\Definition\\\\ConfigurationInterface\\|null\\) of method Symfony\\\\Component\\\\DependencyInjection\\\\Extension\\\\Extension\\:\\:getConfiguration\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/ChillMainExtension.php + + - + message: "#^Parameter \\#1 \\$value \\(null\\) of method Chill\\\\MainBundle\\\\Form\\\\ChoiceLoader\\\\PostalCodeChoiceLoader\\:\\:loadChoiceList\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadChoiceList\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/ChoiceLoader/PostalCodeChoiceLoader.php + + - + message: "#^Parameter \\#2 \\$value \\(null\\) of method Chill\\\\MainBundle\\\\Form\\\\ChoiceLoader\\\\PostalCodeChoiceLoader\\:\\:loadChoicesForValues\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadChoicesForValues\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/ChoiceLoader/PostalCodeChoiceLoader.php + + - + message: "#^Parameter \\#2 \\$value \\(null\\) of method Chill\\\\MainBundle\\\\Form\\\\ChoiceLoader\\\\PostalCodeChoiceLoader\\:\\:loadValuesForChoices\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadValuesForChoices\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/ChoiceLoader/PostalCodeChoiceLoader.php + + - + message: "#^Parameter \\#1 \\$address \\(Chill\\\\MainBundle\\\\Entity\\\\Address\\) of method Chill\\\\MainBundle\\\\Form\\\\DataMapper\\\\AddressDataMapper\\:\\:mapDataToForms\\(\\) should be contravariant with parameter \\$viewData \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataMapperInterface\\:\\:mapDataToForms\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/DataMapper/AddressDataMapper.php + + - + message: "#^Parameter \\#1 \\$forms \\(Iterator\\) of method Chill\\\\MainBundle\\\\Form\\\\DataMapper\\\\AddressDataMapper\\:\\:mapFormsToData\\(\\) should be contravariant with parameter \\$forms \\(iterable\\&Traversable\\) of method Symfony\\\\Component\\\\Form\\\\DataMapperInterface\\:\\:mapFormsToData\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/DataMapper/AddressDataMapper.php + + - + message: "#^Parameter \\#2 \\$address \\(Chill\\\\MainBundle\\\\Entity\\\\Address\\) of method Chill\\\\MainBundle\\\\Form\\\\DataMapper\\\\AddressDataMapper\\:\\:mapFormsToData\\(\\) should be contravariant with parameter \\$viewData \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataMapperInterface\\:\\:mapFormsToData\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/DataMapper/AddressDataMapper.php + + - + message: "#^Parameter \\#2 \\$forms \\(Iterator\\) of method Chill\\\\MainBundle\\\\Form\\\\DataMapper\\\\AddressDataMapper\\:\\:mapDataToForms\\(\\) should be contravariant with parameter \\$forms \\(iterable\\&Traversable\\) of method Symfony\\\\Component\\\\Form\\\\DataMapperInterface\\:\\:mapDataToForms\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/DataMapper/AddressDataMapper.php + + - + message: "#^Parameter \\#1 \\$value \\(string\\) of method Chill\\\\MainBundle\\\\Form\\\\DataTransformer\\\\IdToEntityDataTransformer\\:\\:reverseTransform\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataTransformerInterface\\:\\:reverseTransform\\(\\)$#" + count: 1 path: src/Bundle/ChillMainBundle/Form/DataTransformer/IdToEntityDataTransformer.php - - message: "#^Only booleans are allowed in a ternary operator condition, string\\|null given\\.$#" + message: "#^Parameter \\#1 \\$value \\(array\\\\|Chill\\\\MainBundle\\\\Entity\\\\User\\) of method Chill\\\\MainBundle\\\\Form\\\\Type\\\\DataTransformer\\\\EntityToJsonTransformer\\:\\:transform\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataTransformerInterface\\:\\:transform\\(\\)$#" count: 1 - path: src/Bundle/ChillMainBundle/Form/Type/PickUserLocationType.php + path: src/Bundle/ChillMainBundle/Form/Type/DataTransformer/EntityToJsonTransformer.php - - message: "#^Only booleans are allowed in a ternary operator condition, int\\<0, max\\> given\\.$#" - count: 4 - path: src/Bundle/ChillMainBundle/Search/SearchApiQuery.php + message: "#^Parameter \\#1 \\$array \\(array\\) of method Chill\\\\MainBundle\\\\Form\\\\Type\\\\DataTransformer\\\\MultipleObjectsToIdTransformer\\:\\:transform\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataTransformerInterface\\:\\:transform\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/Type/DataTransformer/MultipleObjectsToIdTransformer.php - - message: "#^Call to method Chill\\\\MainBundle\\\\Entity\\\\Address\\:\\:getPostcode\\(\\) with incorrect case\\: getPostCode$#" - count: 6 + message: "#^Parameter \\#1 \\$id \\(string\\) of method Chill\\\\MainBundle\\\\Form\\\\Type\\\\DataTransformer\\\\ObjectToIdTransformer\\:\\:reverseTransform\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataTransformerInterface\\:\\:reverseTransform\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/Type/DataTransformer/ObjectToIdTransformer.php + + - + message: "#^Parameter \\#2 \\$subject \\(Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\) of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\EntityWorkflowVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Authorization/EntityWorkflowVoter.php + + - + message: "#^Parameter \\#1 \\$entity \\(Chill\\\\MainBundle\\\\Entity\\\\HasCenterInterface\\) of method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\DefaultCenterResolver\\:\\:resolveCenter\\(\\) should be contravariant with parameter \\$entity \\(object\\) of method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\CenterResolverInterface\\:\\:resolveCenter\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Resolver/DefaultCenterResolver.php + + - + message: "#^Parameter \\#1 \\$entity \\(Chill\\\\MainBundle\\\\Entity\\\\HasScopeInterface\\|Chill\\\\MainBundle\\\\Entity\\\\HasScopesInterface\\) of method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\DefaultScopeResolver\\:\\:resolveScope\\(\\) should be contravariant with parameter \\$entity \\(mixed\\) of method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\ScopeResolverInterface\\:\\:resolveScope\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Resolver/DefaultScopeResolver.php + + - + message: "#^Parameter \\#1 \\$address \\(Chill\\\\MainBundle\\\\Entity\\\\Address\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\AddressNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 2 path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php - - message: "#^Only booleans are allowed in an if condition, Symfony\\\\Component\\\\Serializer\\\\Mapping\\\\ClassDiscriminatorMapping\\|null given\\.$#" + message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\AddressNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\ContextAwareNormalizerInterface\\:\\:supportsNormalization\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php + + - + message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\AddressNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:supportsNormalization\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php + + - + message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\CenterNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/CenterNormalizer.php + + - + message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\CenterNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:supportsNormalization\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/CenterNormalizer.php + + - + message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\CenterNormalizer\\:\\:denormalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:denormalize\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/CenterNormalizer.php + + - + message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\CenterNormalizer\\:\\:supportsDenormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:supportsDenormalization\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/CenterNormalizer.php + + - + message: "#^Parameter \\#1 \\$collection \\(Chill\\\\MainBundle\\\\Serializer\\\\Model\\\\Collection\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\CollectionNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/CollectionNormalizer.php + + - + message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\CollectionNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:supportsNormalization\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/CollectionNormalizer.php + + - + message: "#^Parameter \\#1 \\$object \\(Chill\\\\MainBundle\\\\Entity\\\\Embeddable\\\\CommentEmbeddable\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\CommentEmbeddableDocGenNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 2 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/CommentEmbeddableDocGenNormalizer.php + + - + message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\DateNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 2 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DateNormalizer.php + + - + message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\DateNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\ContextAwareNormalizerInterface\\:\\:supportsNormalization\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DateNormalizer.php + + - + message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\DateNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:supportsNormalization\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DateNormalizer.php + + - + message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\DateNormalizer\\:\\:denormalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:denormalize\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DateNormalizer.php + + - + message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\DateNormalizer\\:\\:supportsDenormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:supportsDenormalization\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DateNormalizer.php + + - + message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\DiscriminatedObjectDenormalizer\\:\\:denormalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:denormalize\\(\\)$#" + count: 2 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DiscriminatedObjectDenormalizer.php + + - + message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\DiscriminatedObjectDenormalizer\\:\\:supportsDenormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\ContextAwareDenormalizerInterface\\:\\:supportsDenormalization\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DiscriminatedObjectDenormalizer.php + + - + message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\DiscriminatedObjectDenormalizer\\:\\:supportsDenormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:supportsDenormalization\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DiscriminatedObjectDenormalizer.php + + - + message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\DoctrineExistingEntityNormalizer\\:\\:denormalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:denormalize\\(\\)$#" count: 1 path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DoctrineExistingEntityNormalizer.php - - message: "#^Only booleans are allowed in a negated boolean, null given\\.$#" + message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\DoctrineExistingEntityNormalizer\\:\\:supportsDenormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:supportsDenormalization\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DoctrineExistingEntityNormalizer.php + + - + message: "#^Parameter \\#1 \\$object \\(Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\EntityWorkflowNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/EntityWorkflowNormalizer.php + + - + message: "#^Parameter \\#1 \\$object \\(Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflowStep\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\EntityWorkflowStepNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/EntityWorkflowStepNormalizer.php + + - + message: "#^Parameter \\#1 \\$object \\(Chill\\\\MainBundle\\\\Entity\\\\Notification\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\NotificationNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/NotificationNormalizer.php + + - + message: "#^Return type \\(array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|void\\|null\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\NotificationNormalizer\\:\\:normalize\\(\\) should be covariant with return type \\(array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/NotificationNormalizer.php + + - + message: "#^Parameter \\#1 \\$data \\(string\\|null\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\PhonenumberNormalizer\\:\\:denormalize\\(\\) should be contravariant with parameter \\$data \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:denormalize\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/PhonenumberNormalizer.php + + - + message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\PhonenumberNormalizer\\:\\:supportsDenormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:supportsDenormalization\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/PhonenumberNormalizer.php + + - + message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\PointNormalizer\\:\\:denormalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:denormalize\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/PointNormalizer.php + + - + message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\PointNormalizer\\:\\:supportsDenormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:supportsDenormalization\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/PointNormalizer.php + + - + message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\PrivateCommentEmbeddableNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/PrivateCommentEmbeddableNormalizer.php + + - + message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\UserNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 2 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/UserNormalizer.php + + - + message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\UserNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\ContextAwareNormalizerInterface\\:\\:supportsNormalization\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/UserNormalizer.php + + - + message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\UserNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:supportsNormalization\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/UserNormalizer.php + + + - + message: "#^Parameter \\#1 \\$value \\(string\\) of method Chill\\\\MainBundle\\\\Validation\\\\Validator\\\\ValidPhonenumber\\:\\:validate\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Validator\\\\ConstraintValidatorInterface\\:\\:validate\\(\\)$#" + count: 2 + path: src/Bundle/ChillMainBundle/Validation/Validator/ValidPhonenumber.php + + - + message: "#^Parameter \\#2 \\$constraint \\(Chill\\\\MainBundle\\\\Validation\\\\Constraint\\\\PhonenumberConstraint\\) of method Chill\\\\MainBundle\\\\Validation\\\\Validator\\\\ValidPhonenumber\\:\\:validate\\(\\) should be contravariant with parameter \\$constraint \\(Symfony\\\\Component\\\\Validator\\\\Constraint\\) of method Symfony\\\\Component\\\\Validator\\\\ConstraintValidatorInterface\\:\\:validate\\(\\)$#" + count: 2 + path: src/Bundle/ChillMainBundle/Validation/Validator/ValidPhonenumber.php + + - + message: "#^Parameter \\#1 \\$value \\(object\\) of method Chill\\\\MainBundle\\\\Validator\\\\Constraints\\\\Entity\\\\UserCircleConsistencyValidator\\:\\:validate\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Validator\\\\ConstraintValidatorInterface\\:\\:validate\\(\\)$#" + count: 2 + path: src/Bundle/ChillMainBundle/Validator/Constraints/Entity/UserCircleConsistencyValidator.php + + - + message: "#^Parameter \\#2 \\$constraint \\(Chill\\\\MainBundle\\\\Validator\\\\Constraints\\\\Entity\\\\UserCircleConsistency\\) of method Chill\\\\MainBundle\\\\Validator\\\\Constraints\\\\Entity\\\\UserCircleConsistencyValidator\\:\\:validate\\(\\) should be contravariant with parameter \\$constraint \\(Symfony\\\\Component\\\\Validator\\\\Constraint\\) of method Symfony\\\\Component\\\\Validator\\\\ConstraintValidatorInterface\\:\\:validate\\(\\)$#" + count: 2 + path: src/Bundle/ChillMainBundle/Validator/Constraints/Entity/UserCircleConsistencyValidator.php + + - + message: "#^Parameter \\#1 \\$value \\(Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\) of method Chill\\\\MainBundle\\\\Workflow\\\\Validator\\\\EntityWorkflowCreationValidator\\:\\:validate\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Validator\\\\ConstraintValidatorInterface\\:\\:validate\\(\\)$#" + count: 2 + path: src/Bundle/ChillMainBundle/Workflow/Validator/EntityWorkflowCreationValidator.php + + - + message: "#^Parameter \\#1 \\$value \\(Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflowStep\\) of method Chill\\\\MainBundle\\\\Workflow\\\\Validator\\\\StepDestValidValidator\\:\\:validate\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Validator\\\\ConstraintValidatorInterface\\:\\:validate\\(\\)$#" + count: 2 + path: src/Bundle/ChillMainBundle/Workflow/Validator/StepDestValidValidator.php + + - + message: "#^Parameter \\#3 \\$query \\(Doctrine\\\\ORM\\\\QueryBuilder\\) of method Chill\\\\PersonBundle\\\\Controller\\\\HouseholdCompositionTypeApiController\\:\\:customizeQuery\\(\\) should be contravariant with parameter \\$query \\(mixed\\) of method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\AbstractCRUDController\\:\\:customizeQuery\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/HouseholdCompositionTypeApiController.php + + - + message: "#^Return type \\(Doctrine\\\\Common\\\\Collections\\\\Collection\\) of method Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\:\\:getScopes\\(\\) should be covariant with return type \\(iterable\\\\) of method Chill\\\\MainBundle\\\\Entity\\\\HasScopesInterface\\:\\:getScopes\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php + + - + message: "#^Return type \\(Chill\\\\MainBundle\\\\Entity\\\\Center\\|null\\) of method Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:getCenter\\(\\) should be covariant with return type \\(Chill\\\\MainBundle\\\\Entity\\\\Center\\) of method Chill\\\\MainBundle\\\\Entity\\\\HasCenterInterface\\:\\:getCenter\\(\\)$#" count: 1 path: src/Bundle/ChillPersonBundle/Entity/Person.php - - message: "#^Only booleans are allowed in a ternary operator condition, Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriodParticipation\\|null given\\.$#" + message: "#^Parameter \\#1 \\$value \\(null\\) of method Chill\\\\PersonBundle\\\\Form\\\\ChoiceLoader\\\\PersonChoiceLoader\\:\\:loadChoiceList\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadChoiceList\\(\\)$#" count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php + path: src/Bundle/ChillPersonBundle/Form/ChoiceLoader/PersonChoiceLoader.php - - message: "#^Call to method Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:getFirstName\\(\\) with incorrect case\\: getFirstname$#" + message: "#^Parameter \\#2 \\$value \\(null\\) of method Chill\\\\PersonBundle\\\\Form\\\\ChoiceLoader\\\\PersonChoiceLoader\\:\\:loadChoicesForValues\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadChoicesForValues\\(\\)$#" count: 1 - path: src/Bundle/ChillPersonBundle/Form/Type/PickPersonType.php + path: src/Bundle/ChillPersonBundle/Form/ChoiceLoader/PersonChoiceLoader.php - - message: "#^Call to method Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:getLastName\\(\\) with incorrect case\\: getLastname$#" + message: "#^Parameter \\#2 \\$value \\(null\\) of method Chill\\\\PersonBundle\\\\Form\\\\ChoiceLoader\\\\PersonChoiceLoader\\:\\:loadValuesForChoices\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadValuesForChoices\\(\\)$#" count: 1 - path: src/Bundle/ChillPersonBundle/Form/Type/PickPersonType.php + path: src/Bundle/ChillPersonBundle/Form/ChoiceLoader/PersonChoiceLoader.php - - message: "#^Only booleans are allowed in an if condition, int\\<0, max\\> given\\.$#" + message: "#^Parameter \\#2 \\$viewData \\(Doctrine\\\\Common\\\\Collections\\\\Collection\\) of method Chill\\\\PersonBundle\\\\Form\\\\DataMapper\\\\PersonAltNameDataMapper\\:\\:mapFormsToData\\(\\) should be contravariant with parameter \\$viewData \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataMapperInterface\\:\\:mapFormsToData\\(\\)$#" count: 1 - path: src/Bundle/ChillPersonBundle/Search/SimilarPersonMatcher.php + path: src/Bundle/ChillPersonBundle/Form/DataMapper/PersonAltNameDataMapper.php - - message: "#^Only booleans are allowed in &&, null given on the left side\\.$#" + message: "#^Parameter \\#3 \\$limit \\(int\\) of method Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluationRepository\\:\\:findBy\\(\\) should be contravariant with parameter \\$limit \\(int\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/AccompanyingPeriodWorkEvaluationRepository.php + + - + message: "#^Parameter \\#4 \\$offset \\(int\\) of method Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluationRepository\\:\\:findBy\\(\\) should be contravariant with parameter \\$offset \\(int\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/AccompanyingPeriodWorkEvaluationRepository.php + + - + message: "#^Parameter \\#3 \\$limit \\(int\\) of method Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\HouseholdCompositionRepository\\:\\:findBy\\(\\) should be contravariant with parameter \\$limit \\(int\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/Household/HouseholdCompositionRepository.php + + - + message: "#^Parameter \\#4 \\$offset \\(int\\) of method Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\HouseholdCompositionRepository\\:\\:findBy\\(\\) should be contravariant with parameter \\$offset \\(int\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/Household/HouseholdCompositionRepository.php + + - + message: "#^Parameter \\#3 \\$limit \\(int\\) of method Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\HouseholdCompositionRepositoryInterface\\:\\:findBy\\(\\) should be contravariant with parameter \\$limit \\(int\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/Household/HouseholdCompositionRepositoryInterface.php + + - + message: "#^Parameter \\#4 \\$offset \\(int\\) of method Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\HouseholdCompositionRepositoryInterface\\:\\:findBy\\(\\) should be contravariant with parameter \\$offset \\(int\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/Household/HouseholdCompositionRepositoryInterface.php + + - + message: "#^Return type \\(class\\-string\\) of method Chill\\\\PersonBundle\\\\Repository\\\\SocialWork\\\\EvaluationRepository\\:\\:getClassName\\(\\) should be covariant with return type \\(class\\-string\\\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:getClassName\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/SocialWork/EvaluationRepository.php + + - + message: "#^Return type \\(class\\-string\\) of method Chill\\\\PersonBundle\\\\Repository\\\\SocialWork\\\\EvaluationRepositoryInterface\\:\\:getClassName\\(\\) should be covariant with return type \\(class\\-string\\\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:getClassName\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/SocialWork/EvaluationRepositoryInterface.php + + - + message: "#^Return type \\(class\\-string\\) of method Chill\\\\PersonBundle\\\\Repository\\\\SocialWork\\\\GoalRepository\\:\\:getClassName\\(\\) should be covariant with return type \\(class\\-string\\\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:getClassName\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/SocialWork/GoalRepository.php + + - + message: "#^Return type \\(class\\-string\\) of method Chill\\\\PersonBundle\\\\Repository\\\\SocialWork\\\\ResultRepository\\:\\:getClassName\\(\\) should be covariant with return type \\(class\\-string\\\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:getClassName\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/SocialWork/ResultRepository.php + + - + message: "#^Return type \\(class\\-string\\) of method Chill\\\\PersonBundle\\\\Repository\\\\SocialWork\\\\SocialActionRepository\\:\\:getClassName\\(\\) should be covariant with return type \\(class\\-string\\\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:getClassName\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/SocialWork/SocialActionRepository.php + + - + message: "#^Return type \\(class\\-string\\) of method Chill\\\\PersonBundle\\\\Repository\\\\SocialWork\\\\SocialIssueRepository\\:\\:getClassName\\(\\) should be covariant with return type \\(class\\-string\\\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:getClassName\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/SocialWork/SocialIssueRepository.php + + - + message: "#^Parameter \\#2 \\$subject \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluationDocument\\) of method Chill\\\\PersonBundle\\\\Security\\\\Authorization\\\\AccompanyingPeriodWorkEvaluationDocumentVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkEvaluationDocumentVoter.php + + - + message: "#^Parameter \\#2 \\$subject \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluation\\) of method Chill\\\\PersonBundle\\\\Security\\\\Authorization\\\\AccompanyingPeriodWorkEvaluationVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkEvaluationVoter.php + + - + message: "#^Parameter \\#2 \\$subject \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\) of method Chill\\\\PersonBundle\\\\Security\\\\Authorization\\\\AccompanyingPeriodWorkVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkVoter.php + + - + message: "#^Parameter \\#1 \\$period \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\|null\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodDocGenNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodDocGenNormalizer.php + + - + message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodDocGenNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\ContextAwareNormalizerInterface\\:\\:supportsNormalization\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodDocGenNormalizer.php + + - + message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodDocGenNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:supportsNormalization\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodDocGenNormalizer.php + + - + message: "#^Parameter \\#1 \\$origin \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\Origin\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodOriginNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodOriginNormalizer.php + + - + message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodOriginNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:supportsNormalization\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodOriginNormalizer.php + + - + message: "#^Parameter \\#1 \\$participation \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriodParticipation\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodParticipationNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodParticipationNormalizer.php + + - + message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodParticipationNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:supportsNormalization\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodParticipationNormalizer.php + + - + message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodResourceNormalizer\\:\\:denormalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:denormalize\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodResourceNormalizer.php + + - + message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodResourceNormalizer\\:\\:supportsDenormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:supportsDenormalization\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodResourceNormalizer.php + + - + message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkDenormalizer\\:\\:denormalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:denormalize\\(\\)$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkDenormalizer.php + + - + message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkDenormalizer\\:\\:supportsDenormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\ContextAwareDenormalizerInterface\\:\\:supportsDenormalization\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkDenormalizer.php + + - + message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkDenormalizer\\:\\:supportsDenormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:supportsDenormalization\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkDenormalizer.php + + - + message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkEvaluationDenormalizer\\:\\:denormalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:denormalize\\(\\)$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkEvaluationDenormalizer.php + + - + message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkEvaluationDenormalizer\\:\\:supportsDenormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\ContextAwareDenormalizerInterface\\:\\:supportsDenormalization\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkEvaluationDenormalizer.php + + - + message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkEvaluationDenormalizer\\:\\:supportsDenormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:supportsDenormalization\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkEvaluationDenormalizer.php + + - + message: "#^Parameter \\#1 \\$object \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluation\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkEvaluationNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkEvaluationNormalizer.php + + - + message: "#^Parameter \\#1 \\$object \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkNormalizer.php + + - + message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\MembersEditorNormalizer\\:\\:denormalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:denormalize\\(\\)$#" count: 1 path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/MembersEditorNormalizer.php - - message: "#^Only booleans are allowed in a ternary operator condition, Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\Household\\|null given\\.$#" + message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\MembersEditorNormalizer\\:\\:supportsDenormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:supportsDenormalization\\(\\)$#" count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonJsonNormalizer.php + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/MembersEditorNormalizer.php - - message: "#^Only booleans are allowed in a ternary operator condition, array\\ given\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonJsonNormalizer.php - - - - message: "#^Call to method Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:getDeathdate\\(\\) with incorrect case\\: getDeathDate$#" + message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\PersonDocGenNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" count: 2 - path: src/Bundle/ChillPersonBundle/Templating/Entity/PersonRender.php + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonDocGenNormalizer.php - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\PersonBundle\\\\Entity\\\\Person\\|null given\\.$#" + message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\PersonDocGenNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\ContextAwareNormalizerInterface\\:\\:supportsNormalization\\(\\)$#" count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonDocGenNormalizer.php - - message: "#^Only booleans are allowed in a negated boolean, Chill\\\\ReportBundle\\\\Entity\\\\Report given\\.$#" + message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\PersonDocGenNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:supportsNormalization\\(\\)$#" count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonDocGenNormalizer.php - - message: "#^Call to method Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\:\\:setFirstname\\(\\) with incorrect case\\: setFirstName$#" - count: 1 - path: src/Bundle/ChillThirdPartyBundle/EventListener/ThirdPartyEventListener.php + message: "#^Parameter \\#1 \\$person \\(Chill\\\\PersonBundle\\\\Entity\\\\Person\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\PersonJsonNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonJsonNormalizer.php - - message: "#^Dynamic call to static method Chill\\\\ThirdPartyBundle\\\\ThirdPartyType\\\\ThirdPartyTypeProviderInterface\\:\\:getKey\\(\\)\\.$#" + message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\PersonJsonNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:supportsNormalization\\(\\)$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonJsonNormalizer.php + + - + message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\PersonJsonNormalizer\\:\\:denormalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:denormalize\\(\\)$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonJsonNormalizer.php + + - + message: "#^Parameter \\#3 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\PersonJsonNormalizer\\:\\:supportsDenormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:supportsDenormalization\\(\\)$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonJsonNormalizer.php + + - + message: "#^Parameter \\#1 \\$relation \\(Chill\\\\PersonBundle\\\\Entity\\\\Relationships\\\\Relationship\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\RelationshipDocGenNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/RelationshipDocGenNormalizer.php + + - + message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\RelationshipDocGenNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\ContextAwareNormalizerInterface\\:\\:supportsNormalization\\(\\)$#" count: 1 - path: src/Bundle/ChillThirdPartyBundle/ThirdPartyType/ThirdPartyTypeManager.php + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/RelationshipDocGenNormalizer.php + + - + message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\RelationshipDocGenNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:supportsNormalization\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/RelationshipDocGenNormalizer.php + + - + message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\SocialActionNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/SocialActionNormalizer.php + + - + message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\SocialActionNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:supportsNormalization\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/SocialActionNormalizer.php + + - + message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\SocialIssueNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/SocialIssueNormalizer.php + + - + message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\SocialIssueNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\ContextAwareNormalizerInterface\\:\\:supportsNormalization\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/SocialIssueNormalizer.php + + - + message: "#^Parameter \\#2 \\$format \\(string\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\SocialIssueNormalizer\\:\\:supportsNormalization\\(\\) should be contravariant with parameter \\$format \\(string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:supportsNormalization\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/SocialIssueNormalizer.php + + - + message: "#^Parameter \\#1 \\$object \\(Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\WorkflowNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/WorkflowNormalizer.php + + + - + message: "#^Parameter \\#1 \\$object \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluationDocument\\) of method Chill\\\\PersonBundle\\\\Workflow\\\\AccompanyingPeriodWorkEvaluationDocumentWorkflowHandler\\:\\:getRelatedObjects\\(\\) should be contravariant with parameter \\$object \\(object\\) of method Chill\\\\MainBundle\\\\Workflow\\\\EntityWorkflowHandlerInterface\\:\\:getRelatedObjects\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Workflow/AccompanyingPeriodWorkEvaluationDocumentWorkflowHandler.php + + - + message: "#^Parameter \\#1 \\$object \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluation\\) of method Chill\\\\PersonBundle\\\\Workflow\\\\AccompanyingPeriodWorkEvaluationWorkflowHandler\\:\\:getRelatedObjects\\(\\) should be contravariant with parameter \\$object \\(object\\) of method Chill\\\\MainBundle\\\\Workflow\\\\EntityWorkflowHandlerInterface\\:\\:getRelatedObjects\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Workflow/AccompanyingPeriodWorkEvaluationWorkflowHandler.php + + - + message: "#^Parameter \\#1 \\$object \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\) of method Chill\\\\PersonBundle\\\\Workflow\\\\AccompanyingPeriodWorkWorkflowHandler\\:\\:getRelatedObjects\\(\\) should be contravariant with parameter \\$object \\(object\\) of method Chill\\\\MainBundle\\\\Workflow\\\\EntityWorkflowHandlerInterface\\:\\:getRelatedObjects\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Workflow/AccompanyingPeriodWorkWorkflowHandler.php + + - + message: "#^Return type \\(Chill\\\\MainBundle\\\\Entity\\\\Center\\|null\\) of method Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask\\:\\:getCenter\\(\\) should be covariant with return type \\(Chill\\\\MainBundle\\\\Entity\\\\Center\\) of method Chill\\\\MainBundle\\\\Entity\\\\HasCenterInterface\\:\\:getCenter\\(\\)$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Entity/AbstractTask.php + + - + message: "#^Return type \\(Chill\\\\MainBundle\\\\Entity\\\\Scope\\|null\\) of method Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask\\:\\:getScope\\(\\) should be covariant with return type \\(Chill\\\\MainBundle\\\\Entity\\\\Scope\\) of method Chill\\\\MainBundle\\\\Entity\\\\HasScopeInterface\\:\\:getScope\\(\\)$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Entity/AbstractTask.php + + - + message: "#^Parameter \\#3 \\$entity \\(Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\) of method Chill\\\\ThirdPartyBundle\\\\Controller\\\\ThirdPartyController\\:\\:onPostFetchEntity\\(\\) should be contravariant with parameter \\$entity \\(mixed\\) of method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\CRUDController\\:\\:onPostFetchEntity\\(\\)$#" + count: 1 + path: src/Bundle/ChillThirdPartyBundle/Controller/ThirdPartyController.php + + - + message: "#^Parameter \\#1 \\$createdAt \\(DateTimeImmutable\\) of method Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\:\\:setCreatedAt\\(\\) should be contravariant with parameter \\$datetime \\(DateTimeInterface\\) of method Chill\\\\MainBundle\\\\Doctrine\\\\Model\\\\TrackCreationInterface\\:\\:setCreatedAt\\(\\)$#" + count: 1 + path: src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php + + - + message: "#^Parameter \\#1 \\$updatedAt \\(DateTimeImmutable\\) of method Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\:\\:setUpdatedAt\\(\\) should be contravariant with parameter \\$datetime \\(DateTimeInterface\\) of method Chill\\\\MainBundle\\\\Doctrine\\\\Model\\\\TrackUpdateInterface\\:\\:setUpdatedAt\\(\\)$#" + count: 1 + path: src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php + + - + message: "#^Parameter \\#3 \\$limit \\(null\\) of method Chill\\\\ThirdPartyBundle\\\\Repository\\\\ThirdPartyRepository\\:\\:findBy\\(\\) should be contravariant with parameter \\$limit \\(int\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" + count: 1 + path: src/Bundle/ChillThirdPartyBundle/Repository/ThirdPartyRepository.php + + - + message: "#^Parameter \\#4 \\$offset \\(null\\) of method Chill\\\\ThirdPartyBundle\\\\Repository\\\\ThirdPartyRepository\\:\\:findBy\\(\\) should be contravariant with parameter \\$offset \\(int\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" + count: 1 + path: src/Bundle/ChillThirdPartyBundle/Repository/ThirdPartyRepository.php + + - + message: "#^Parameter \\#2 \\$subject \\(Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\|null\\) of method Chill\\\\ThirdPartyBundle\\\\Security\\\\Voter\\\\ThirdPartyVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" + count: 1 + path: src/Bundle/ChillThirdPartyBundle/Security/Voter/ThirdPartyVoter.php + + - + message: "#^Parameter \\#1 \\$document \\(Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject\\) of method Chill\\\\WopiBundle\\\\Service\\\\Wopi\\\\ChillDocumentManager\\:\\:getBasename\\(\\) should be contravariant with parameter \\$document \\(ChampsLibres\\\\WopiLib\\\\Contract\\\\Entity\\\\Document\\) of method ChampsLibres\\\\WopiLib\\\\Contract\\\\Service\\\\DocumentManagerInterface\\:\\:getBasename\\(\\)$#" + count: 1 + path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillDocumentManager.php + + - + message: "#^Parameter \\#1 \\$document \\(Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject\\) of method Chill\\\\WopiBundle\\\\Service\\\\Wopi\\\\ChillDocumentManager\\:\\:getCreationDate\\(\\) should be contravariant with parameter \\$document \\(ChampsLibres\\\\WopiLib\\\\Contract\\\\Entity\\\\Document\\) of method ChampsLibres\\\\WopiLib\\\\Contract\\\\Service\\\\DocumentManagerInterface\\:\\:getCreationDate\\(\\)$#" + count: 1 + path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillDocumentManager.php + + - + message: "#^Parameter \\#1 \\$document \\(Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject\\) of method Chill\\\\WopiBundle\\\\Service\\\\Wopi\\\\ChillDocumentManager\\:\\:getDocumentId\\(\\) should be contravariant with parameter \\$document \\(ChampsLibres\\\\WopiLib\\\\Contract\\\\Entity\\\\Document\\) of method ChampsLibres\\\\WopiLib\\\\Contract\\\\Service\\\\DocumentManagerInterface\\:\\:getDocumentId\\(\\)$#" + count: 1 + path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillDocumentManager.php + + - + message: "#^Parameter \\#1 \\$document \\(Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject\\) of method Chill\\\\WopiBundle\\\\Service\\\\Wopi\\\\ChillDocumentManager\\:\\:getLastModifiedDate\\(\\) should be contravariant with parameter \\$document \\(ChampsLibres\\\\WopiLib\\\\Contract\\\\Entity\\\\Document\\) of method ChampsLibres\\\\WopiLib\\\\Contract\\\\Service\\\\DocumentManagerInterface\\:\\:getLastModifiedDate\\(\\)$#" + count: 1 + path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillDocumentManager.php diff --git a/phpstan-baseline-level-4.neon b/phpstan-baseline-level-4.neon index 7b1eb79dc..833a55afb 100644 --- a/phpstan-baseline-level-4.neon +++ b/phpstan-baseline-level-4.neon @@ -1,526 +1,4793 @@ parameters: ignoreErrors: - - message: "#^Return type \\(array\\\\) of method Chill\\\\ActivityBundle\\\\Repository\\\\ActivityReasonRepository\\:\\:findAll\\(\\) should be covariant with return type \\(array\\\\) of method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findAll\\(\\)$#" + message: "#^Access to an undefined property Chill\\\\ActivityBundle\\\\Entity\\\\Activity\\:\\:\\$personsAssociated\\.$#" count: 1 - path: src/Bundle/ChillActivityBundle/Repository/ActivityReasonRepository.php + path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php - - message: "#^Return type \\(array\\\\>\\) of method Chill\\\\AsideActivityBundle\\\\Security\\\\AsideActivityVoter\\:\\:getRolesWithHierarchy\\(\\) should be covariant with return type \\(array\\\\>\\) of method Chill\\\\MainBundle\\\\Security\\\\ProvideRoleHierarchyInterface\\:\\:getRolesWithHierarchy\\(\\)$#" + message: "#^Access to an undefined property Chill\\\\ActivityBundle\\\\Entity\\\\Activity\\:\\:\\$personsNotAssociated\\.$#" count: 1 - path: src/Bundle/ChillAsideActivityBundle/src/Security/AsideActivityVoter.php + path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php - - message: "#^Parameter \\#1 \\$criteria \\(array\\\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepository\\:\\:findBy\\(\\) should be contravariant with parameter \\$criteria \\(array\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepositoryInterface\\:\\:findBy\\(\\)$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Repository/CalendarDocRepository.php - - - - message: "#^Parameter \\#1 \\$criteria \\(array\\\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepository\\:\\:findOneBy\\(\\) should be contravariant with parameter \\$criteria \\(array\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepositoryInterface\\:\\:findOneBy\\(\\)$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Repository/CalendarDocRepository.php - - - - message: "#^Parameter \\#2 \\$orderBy \\(array\\\\|null\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepository\\:\\:findBy\\(\\) should be contravariant with parameter \\$orderBy \\(array\\|null\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepositoryInterface\\:\\:findBy\\(\\)$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Repository/CalendarDocRepository.php - - - - message: "#^Return type \\(array\\\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepository\\:\\:findAll\\(\\) should be covariant with return type \\(array\\\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepositoryInterface\\:\\:findAll\\(\\)$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Repository/CalendarDocRepository.php - - - - message: "#^Return type \\(array\\\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepository\\:\\:findBy\\(\\) should be covariant with return type \\(array\\\\) of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarDocRepositoryInterface\\:\\:findBy\\(\\)$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Repository/CalendarDocRepository.php - - - - message: "#^Parameter \\#2 \\$subject \\(Chill\\\\CalendarBundle\\\\Entity\\\\Invite\\) of method Chill\\\\CalendarBundle\\\\Security\\\\Voter\\\\InviteVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Security/Voter/InviteVoter.php - - - - message: "#^Parameter \\#1 \\$customFieldsGroup \\(Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup\\|null\\) of method Chill\\\\CustomFieldsBundle\\\\Form\\\\DataTransformer\\\\CustomFieldsGroupToIdTransformer\\:\\:transform\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataTransformerInterface\\:\\:transform\\(\\)$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/CustomFieldsGroupToIdTransformer.php - - - - message: "#^Parameter \\#1 \\$id \\(string\\) of method Chill\\\\CustomFieldsBundle\\\\Form\\\\DataTransformer\\\\CustomFieldsGroupToIdTransformer\\:\\:reverseTransform\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataTransformerInterface\\:\\:reverseTransform\\(\\)$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/CustomFieldsGroupToIdTransformer.php - - - - message: "#^Parameter \\#2 \\$query \\(Doctrine\\\\ORM\\\\QueryBuilder\\) of method Chill\\\\DocGeneratorBundle\\\\Controller\\\\AdminDocGeneratorTemplateController\\:\\:orderQuery\\(\\) should be contravariant with parameter \\$query \\(mixed\\) of method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\CRUDController\\:\\:orderQuery\\(\\)$#" - count: 1 - path: src/Bundle/ChillDocGeneratorBundle/Controller/AdminDocGeneratorTemplateController.php - - - - message: "#^Parameter \\#1 \\$object \\(Doctrine\\\\Common\\\\Collections\\\\Collection\\) of method Chill\\\\DocGeneratorBundle\\\\Serializer\\\\Normalizer\\\\CollectionDocGenNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + message: "#^Call to an undefined method Symfony\\\\Component\\\\Serializer\\\\SerializerInterface\\:\\:normalize\\(\\)\\.$#" count: 2 - path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/CollectionDocGenNormalizer.php + path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php - - message: "#^Return type \\(array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|void\\|null\\) of method Chill\\\\DocGeneratorBundle\\\\Serializer\\\\Normalizer\\\\CollectionDocGenNormalizer\\:\\:normalize\\(\\) should be covariant with return type \\(array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" - count: 2 - path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/CollectionDocGenNormalizer.php - - - - message: "#^Return type \\(Chill\\\\MainBundle\\\\Entity\\\\Scope\\|null\\) of method Chill\\\\DocStoreBundle\\\\Entity\\\\PersonDocument\\:\\:getScope\\(\\) should be covariant with return type \\(Chill\\\\MainBundle\\\\Entity\\\\Scope\\) of method Chill\\\\MainBundle\\\\Entity\\\\HasScopeInterface\\:\\:getScope\\(\\)$#" + message: "#^Method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) invoked with 2 parameters, 1 required\\.$#" count: 1 - path: src/Bundle/ChillDocStoreBundle/Entity/PersonDocument.php + path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php - - message: "#^Parameter \\#2 \\$subject \\(Chill\\\\DocStoreBundle\\\\Entity\\\\PersonDocument\\) of method Chill\\\\DocStoreBundle\\\\Security\\\\Authorization\\\\PersonDocumentVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" - count: 1 - path: src/Bundle/ChillDocStoreBundle/Security/Authorization/PersonDocumentVoter.php + message: "#^Strict comparison using \\=\\=\\= between null and 'ChillActivityBundle…'\\|'ChillActivityBundle…' will always evaluate to false\\.$#" + count: 3 + path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php - - message: "#^Parameter \\#1 \\$object \\(Chill\\\\DocStoreBundle\\\\Entity\\\\AccompanyingCourseDocument\\) of method Chill\\\\DocStoreBundle\\\\Workflow\\\\AccompanyingCourseDocumentWorkflowHandler\\:\\:getRelatedObjects\\(\\) should be contravariant with parameter \\$object \\(object\\) of method Chill\\\\MainBundle\\\\Workflow\\\\EntityWorkflowHandlerInterface\\:\\:getRelatedObjects\\(\\)$#" + message: "#^Method Chill\\\\ActivityBundle\\\\Controller\\\\ActivityReasonCategoryController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" count: 1 - path: src/Bundle/ChillDocStoreBundle/Workflow/AccompanyingCourseDocumentWorkflowHandler.php + path: src/Bundle/ChillActivityBundle/Controller/ActivityReasonCategoryController.php - - message: "#^Parameter \\#1 \\$value \\(null\\) of method Chill\\\\EventBundle\\\\Form\\\\ChoiceLoader\\\\EventChoiceLoader\\:\\:loadChoiceList\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadChoiceList\\(\\)$#" + message: "#^Method Chill\\\\ActivityBundle\\\\Controller\\\\ActivityReasonCategoryController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" count: 1 - path: src/Bundle/ChillEventBundle/Form/ChoiceLoader/EventChoiceLoader.php + path: src/Bundle/ChillActivityBundle/Controller/ActivityReasonCategoryController.php - - message: "#^Parameter \\#2 \\$value \\(null\\) of method Chill\\\\EventBundle\\\\Form\\\\ChoiceLoader\\\\EventChoiceLoader\\:\\:loadChoicesForValues\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadChoicesForValues\\(\\)$#" + message: "#^Method Chill\\\\ActivityBundle\\\\Controller\\\\ActivityReasonController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" count: 1 - path: src/Bundle/ChillEventBundle/Form/ChoiceLoader/EventChoiceLoader.php + path: src/Bundle/ChillActivityBundle/Controller/ActivityReasonController.php - - message: "#^Parameter \\#2 \\$value \\(null\\) of method Chill\\\\EventBundle\\\\Form\\\\ChoiceLoader\\\\EventChoiceLoader\\:\\:loadValuesForChoices\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadValuesForChoices\\(\\)$#" + message: "#^Method Chill\\\\ActivityBundle\\\\Controller\\\\ActivityReasonController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" count: 1 - path: src/Bundle/ChillEventBundle/Form/ChoiceLoader/EventChoiceLoader.php + path: src/Bundle/ChillActivityBundle/Controller/ActivityReasonController.php - - message: "#^Parameter \\#2 \\$subject \\(Chill\\\\EventBundle\\\\Entity\\\\Event\\) of method Chill\\\\EventBundle\\\\Security\\\\Authorization\\\\EventVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" + message: "#^Else branch is unreachable because previous condition is always true\\.$#" count: 1 - path: src/Bundle/ChillEventBundle/Security/Authorization/EventVoter.php + path: src/Bundle/ChillActivityBundle/DataFixtures/ORM/LoadActivity.php - - message: "#^Parameter \\#2 \\$subject \\(Chill\\\\EventBundle\\\\Entity\\\\Participation\\) of method Chill\\\\EventBundle\\\\Security\\\\Authorization\\\\ParticipationVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" + message: "#^Strict comparison using \\!\\=\\= between null and Chill\\\\ActivityBundle\\\\Entity\\\\ActivityReason will always evaluate to true\\.$#" count: 1 - path: src/Bundle/ChillEventBundle/Security/Authorization/ParticipationVoter.php - - - - message: "#^Parameter \\#1 \\$entity \\(Chill\\\\EventBundle\\\\Entity\\\\Event\\) of method Chill\\\\EventBundle\\\\Timeline\\\\TimelineEventProvider\\:\\:getEntityTemplate\\(\\) should be contravariant with parameter \\$entity \\(Chill\\\\MainBundle\\\\Timeline\\\\type\\) of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineProviderInterface\\:\\:getEntityTemplate\\(\\)$#" - count: 1 - path: src/Bundle/ChillEventBundle/Timeline/TimelineEventProvider.php + path: src/Bundle/ChillActivityBundle/DataFixtures/ORM/LoadActivity.php - message: "#^Unreachable statement \\- code above always terminates\\.$#" count: 1 - path: src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php + path: src/Bundle/ChillActivityBundle/DataFixtures/ORM/LoadActivityNotifications.php - - message: "#^Property Chill\\\\JobBundle\\\\Entity\\\\Rome\\\\Metier\\:\\:\\$appellations is never read, only written\\.$#" + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" count: 1 - path: src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php + path: src/Bundle/ChillActivityBundle/DependencyInjection/Configuration.php - - message: "#^Method Chill\\\\JobBundle\\\\Export\\\\ListCSPerson\\:\\:splitArrayToColumns\\(\\) never returns Closure so it can be removed from the return type\\.$#" + message: "#^Method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\TreeBuilder\\:\\:getRootNode\\(\\) invoked with 1 parameter, 0 required\\.$#" count: 1 - path: src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php + path: src/Bundle/ChillActivityBundle/DependencyInjection/Configuration.php - - message: "#^Method Chill\\\\JobBundle\\\\Export\\\\ListFrein\\:\\:splitArrayToColumns\\(\\) never returns Closure so it can be removed from the return type\\.$#" + message: "#^Property Chill\\\\ActivityBundle\\\\Entity\\\\Activity\\:\\:\\$user \\(Chill\\\\MainBundle\\\\Entity\\\\User\\) does not accept Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\.$#" count: 1 - path: src/Bundle/ChillJobBundle/src/Export/ListFrein.php + path: src/Bundle/ChillActivityBundle/Entity/Activity.php - - message: "#^Method Chill\\\\JobBundle\\\\Export\\\\ListProjetProfessionnel\\:\\:splitArrayToColumns\\(\\) never returns Closure so it can be removed from the return type\\.$#" + message: "#^Property Chill\\\\ActivityBundle\\\\Entity\\\\ActivityPresence\\:\\:\\$id is never written, only read\\.$#" count: 1 - path: src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php + path: src/Bundle/ChillActivityBundle/Entity/ActivityPresence.php + + - + message: "#^Property Chill\\\\ActivityBundle\\\\Entity\\\\ActivityReason\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Entity/ActivityReason.php + + - + message: "#^Argument of an invalid type string supplied for foreach, only iterables are supported\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Entity/ActivityReasonCategory.php + + - + message: "#^Binary operation \"\\.\" between 'ActivityReasonCateg…' and array results in an error\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Entity/ActivityReasonCategory.php + + - + message: "#^Method Chill\\\\ActivityBundle\\\\Entity\\\\ActivityReasonCategory\\:\\:getName\\(\\) should return array but returns string\\.$#" + count: 3 + path: src/Bundle/ChillActivityBundle/Entity/ActivityReasonCategory.php + + - + message: "#^Property Chill\\\\ActivityBundle\\\\Entity\\\\ActivityReasonCategory\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Entity/ActivityReasonCategory.php + + - + message: "#^Property Chill\\\\ActivityBundle\\\\Entity\\\\ActivityReasonCategory\\:\\:\\$name \\(string\\) does not accept array\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Entity/ActivityReasonCategory.php + + - + message: "#^Expression on left side of \\?\\? is not nullable\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/EntityListener/ActivityEntityListener.php + + - + message: "#^Property Chill\\\\ActivityBundle\\\\Export\\\\Aggregator\\\\ACPAggregators\\\\DateAggregator\\:\\:\\$translator is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Export/Aggregator/ACPAggregators/DateAggregator.php + + - + message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\ActivityBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Form/ActivityReasonCategoryType.php + + - + message: "#^Parameter \\$resolver of method Chill\\\\ActivityBundle\\\\Form\\\\ActivityReasonCategoryType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\ActivityBundle\\\\Form\\\\OptionsResolverInterface\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Form/ActivityReasonCategoryType.php + + - + message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findByAccompanyingPeriod\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Repository/ActivityACLAwareRepository.php + + - + message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findByPersonImplied\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Repository/ActivityACLAwareRepository.php + + - + message: "#^Method Chill\\\\ActivityBundle\\\\Repository\\\\ActivityACLAwareRepository\\:\\:findByAccompanyingPeriod\\(\\) has invalid return type Chill\\\\ActivityBundle\\\\Repository\\\\Activity\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Repository/ActivityACLAwareRepository.php + + - + message: "#^Method Chill\\\\ActivityBundle\\\\Repository\\\\ActivityACLAwareRepository\\:\\:getWhereClause\\(\\) should return array but returns string\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Repository/ActivityACLAwareRepository.php + + - + message: "#^Property Chill\\\\ActivityBundle\\\\Repository\\\\ActivityACLAwareRepository\\:\\:\\$repository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Repository/ActivityACLAwareRepository.php + + - + message: "#^Method Chill\\\\ActivityBundle\\\\Repository\\\\ActivityACLAwareRepositoryInterface\\:\\:findByAccompanyingPeriod\\(\\) has invalid return type Chill\\\\ActivityBundle\\\\Repository\\\\Activity\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Repository/ActivityACLAwareRepositoryInterface.php + + - + message: "#^Method Chill\\\\ActivityBundle\\\\Repository\\\\ActivityACLAwareRepositoryInterface\\:\\:findByPerson\\(\\) has invalid return type Chill\\\\ActivityBundle\\\\Repository\\\\Activity\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Repository/ActivityACLAwareRepositoryInterface.php + + - + message: "#^Expression on left side of \\?\\? is not nullable\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Repository/ActivityReasonRepository.php + + - + message: "#^Property Chill\\\\ActivityBundle\\\\Service\\\\DocGenerator\\\\ActivityContext\\:\\:\\$documentCategoryRepository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Service/DocGenerator/ActivityContext.php + + - + message: "#^Parameter \\$context of method Chill\\\\ActivityBundle\\\\Timeline\\\\TimelineActivityProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Timeline/TimelineActivityProvider.php + + - + message: "#^Parameter \\$entity of method Chill\\\\ActivityBundle\\\\Timeline\\\\TimelineActivityProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Timeline/TimelineActivityProvider.php - message: "#^Result of && is always false\\.$#" - count: 1 - path: src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php + count: 7 + path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php - - message: "#^Strict comparison using \\=\\=\\= between array\\{\\} and Symfony\\\\Component\\\\Validator\\\\ConstraintViolationListInterface will always evaluate to false\\.$#" + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\Embeddable\\\\CommentEmbeddable will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\User will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and DateTime will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Doctrine\\\\Common\\\\Collections\\\\Collection will always evaluate to false\\.$#" count: 2 - path: src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php + path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and bool will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php - message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" count: 1 - path: src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php + path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php - - message: "#^Parameter \\#2 \\$type \\(null\\) of method Chill\\\\MainBundle\\\\CRUD\\\\Routing\\\\CRUDRoutesLoader\\:\\:supports\\(\\) should be contravariant with parameter \\$type \\(string\\|null\\) of method Symfony\\\\Component\\\\Config\\\\Loader\\\\LoaderInterface\\:\\:supports\\(\\)$#" + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillAsideActivityBundle/src/DependencyInjection/Configuration.php + + - + message: "#^Method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\TreeBuilder\\:\\:getRootNode\\(\\) invoked with 1 parameter, 0 required\\.$#" + count: 1 + path: src/Bundle/ChillAsideActivityBundle/src/DependencyInjection/Configuration.php + + - + message: "#^Property Chill\\\\AsideActivityBundle\\\\Entity\\\\AsideActivity\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillAsideActivityBundle/src/Entity/AsideActivity.php + + - + message: "#^Property Chill\\\\AsideActivityBundle\\\\Entity\\\\AsideActivityCategory\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillAsideActivityBundle/src/Entity/AsideActivityCategory.php + + - + message: "#^Call to method DateTimeImmutable\\:\\:add\\(\\) on a separate line has no effect\\.$#" + count: 1 + path: src/Bundle/ChillAsideActivityBundle/src/Form/AsideActivityFormType.php + + - + message: "#^Call to method DateTimeImmutable\\:\\:setTimezone\\(\\) on a separate line has no effect\\.$#" + count: 1 + path: src/Bundle/ChillAsideActivityBundle/src/Form/AsideActivityFormType.php + + - + message: "#^Property Chill\\\\AsideActivityBundle\\\\Form\\\\AsideActivityFormType\\:\\:\\$storage is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillAsideActivityBundle/src/Form/AsideActivityFormType.php + + - + message: "#^Static call to instance method Chill\\\\BudgetBundle\\\\Calculator\\\\CalculatorInterface\\:\\:getAlias\\(\\)\\.$#" + count: 3 + path: src/Bundle/ChillBudgetBundle/Calculator/CalculatorManager.php + + - + message: "#^Call to an undefined method Chill\\\\BudgetBundle\\\\Entity\\\\AbstractElement\\:\\:getId\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Controller/AbstractElementController.php + + - + message: "#^Method Chill\\\\BudgetBundle\\\\Controller\\\\AbstractElementController\\:\\:createDeleteForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Controller/AbstractElementController.php + + - + message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findByEntityAndDate\\(\\)\\.$#" + count: 3 + path: src/Bundle/ChillBudgetBundle/Controller/ElementController.php + + - + message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findByHousehold\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Controller/ElementController.php + + - + message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findByPerson\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Controller/ElementController.php + + - + message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findByEntityAndDate\\(\\)\\.$#" + count: 3 + path: src/Bundle/ChillBudgetBundle/Controller/ElementController.php + + - + message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findByHousehold\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Controller/ElementController.php + + - + message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findByPerson\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Controller/ElementController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/DependencyInjection/Configuration.php + + - + message: "#^Method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\TreeBuilder\\:\\:getRootNode\\(\\) invoked with 1 parameter, 0 required\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/DependencyInjection/Configuration.php + + - + message: "#^Property Chill\\\\BudgetBundle\\\\Entity\\\\AbstractElement\\:\\:\\$startDate \\(DateTimeImmutable\\) does not accept null\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Entity/AbstractElement.php + + - + message: "#^Strict comparison using \\=\\=\\= between 0 and string will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Entity/AbstractElement.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and DateTimeImmutable will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Entity/AbstractElement.php + + - + message: "#^Property Chill\\\\BudgetBundle\\\\Entity\\\\ChargeKind\\:\\:\\$tags is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Entity/ChargeKind.php + + - + message: "#^Property Chill\\\\BudgetBundle\\\\Entity\\\\ResourceKind\\:\\:\\$tags is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Entity/ResourceKind.php + + - + message: "#^Method Chill\\\\BudgetBundle\\\\Repository\\\\ChargeKindRepository\\:\\:findAll\\(\\) has invalid return type Chill\\\\BudgetBundle\\\\Repository\\\\ChargeType\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Repository/ChargeKindRepository.php + + - + message: "#^Method Chill\\\\BudgetBundle\\\\Repository\\\\ChargeKindRepository\\:\\:findAllActive\\(\\) has invalid return type Chill\\\\BudgetBundle\\\\Repository\\\\ChargeType\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Repository/ChargeKindRepository.php + + - + message: "#^Method Chill\\\\BudgetBundle\\\\Repository\\\\ChargeKindRepository\\:\\:findAllByType\\(\\) has invalid return type Chill\\\\BudgetBundle\\\\Repository\\\\ChargeType\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Repository/ChargeKindRepository.php + + - + message: "#^Method Chill\\\\BudgetBundle\\\\Repository\\\\ChargeKindRepository\\:\\:findBy\\(\\) has invalid return type Chill\\\\BudgetBundle\\\\Repository\\\\ChargeType\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Repository/ChargeKindRepository.php + + - + message: "#^PHPDoc tag @param for parameter \\$limit with type mixed is not subtype of native type int\\|null\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Repository/ChargeKindRepository.php + + - + message: "#^PHPDoc tag @param for parameter \\$offset with type mixed is not subtype of native type int\\|null\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Repository/ChargeKindRepository.php + + - + message: "#^Method Chill\\\\BudgetBundle\\\\Repository\\\\ResourceKindRepository\\:\\:findAll\\(\\) has invalid return type Chill\\\\BudgetBundle\\\\Repository\\\\ResourceType\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Repository/ResourceKindRepository.php + + - + message: "#^Method Chill\\\\BudgetBundle\\\\Repository\\\\ResourceKindRepository\\:\\:findAllActive\\(\\) has invalid return type Chill\\\\BudgetBundle\\\\Repository\\\\ResourceType\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Repository/ResourceKindRepository.php + + - + message: "#^Method Chill\\\\BudgetBundle\\\\Repository\\\\ResourceKindRepository\\:\\:findAllByType\\(\\) has invalid return type Chill\\\\BudgetBundle\\\\Repository\\\\ResourceType\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Repository/ResourceKindRepository.php + + - + message: "#^Method Chill\\\\BudgetBundle\\\\Repository\\\\ResourceKindRepository\\:\\:findBy\\(\\) has invalid return type Chill\\\\BudgetBundle\\\\Repository\\\\ResourceType\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Repository/ResourceKindRepository.php + + - + message: "#^PHPDoc tag @param for parameter \\$limit with type mixed is not subtype of native type int\\|null\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Repository/ResourceKindRepository.php + + - + message: "#^PHPDoc tag @param for parameter \\$offset with type mixed is not subtype of native type int\\|null\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Repository/ResourceKindRepository.php + + - + message: "#^Property Chill\\\\BudgetBundle\\\\Service\\\\Summary\\\\SummaryBudget\\:\\:\\$chargeLabels is unused\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Service/Summary/SummaryBudget.php + + - + message: "#^Property Chill\\\\BudgetBundle\\\\Service\\\\Summary\\\\SummaryBudget\\:\\:\\$resourcesLabels is unused\\.$#" + count: 1 + path: src/Bundle/ChillBudgetBundle/Service/Summary/SummaryBudget.php + + - + message: "#^Property Chill\\\\CalendarBundle\\\\Command\\\\AzureGrantAdminConsentAndAcquireToken\\:\\:\\$clientRegistry is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/Command/AzureGrantAdminConsentAndAcquireToken.php + + - + message: "#^Property Chill\\\\CalendarBundle\\\\Command\\\\SendTestShortMessageOnCalendarCommand\\:\\:\\$phoneNumberHelper is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/Command/SendTestShortMessageOnCalendarCommand.php + + - + message: "#^Strict comparison using \\=\\=\\= between false and DateInterval will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/Command/SendTestShortMessageOnCalendarCommand.php + + - + message: "#^Strict comparison using \\=\\=\\= between false and DateTimeImmutable will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/Command/SendTestShortMessageOnCalendarCommand.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Form\\\\FormInterface\\:\\:isClicked\\(\\)\\.$#" + count: 4 + path: src/Bundle/ChillCalendarBundle/Controller/CalendarController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Serializer\\\\SerializerInterface\\:\\:normalize\\(\\)\\.$#" count: 2 + path: src/Bundle/ChillCalendarBundle/Controller/CalendarController.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/Controller/CalendarController.php + + - + message: "#^Property Chill\\\\CalendarBundle\\\\Controller\\\\CalendarDocController\\:\\:\\$docGeneratorTemplateRepository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/Controller/CalendarDocController.php + + - + message: "#^Property Chill\\\\CalendarBundle\\\\Controller\\\\CalendarDocController\\:\\:\\$serializer is unused\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/Controller/CalendarDocController.php + + - + message: "#^Method Symfony\\\\Component\\\\HttpFoundation\\\\Session\\\\SessionInterface\\:\\:remove\\(\\) invoked with 2 parameters, 1 required\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/Controller/RemoteCalendarConnectAzureController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/DependencyInjection/Configuration.php + + - + message: "#^Method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\TreeBuilder\\:\\:getRootNode\\(\\) invoked with 1 parameter, 0 required\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/DependencyInjection/Configuration.php + + - + message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection\\:\\:matching\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/Entity/Calendar.php + + - + message: "#^Property Chill\\\\CalendarBundle\\\\Entity\\\\CalendarRange\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/Entity/CalendarRange.php + + - + message: "#^Property Chill\\\\CalendarBundle\\\\Entity\\\\CancelReason\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/Entity/CancelReason.php + + - + message: "#^Property Chill\\\\CalendarBundle\\\\Messenger\\\\Message\\\\CalendarMessage\\:\\:\\$oldInvites \\(array\\\\) does not accept array\\\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/Messenger/Message/CalendarMessage.php + + - + message: "#^PHPDoc tag @return has invalid value \\(array\\\\)\\: Unexpected token \"\\:\", expected '\\>' at offset 408$#" + count: 2 + path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraph/EventsOnUserSubscriptionCreator.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraph/EventsOnUserSubscriptionCreator.php + + - + message: "#^Method Chill\\\\CalendarBundle\\\\RemoteCalendar\\\\Connector\\\\MSGraph\\\\OnBehalfOfUserTokenStorage\\:\\:getToken\\(\\) should return TheNetworg\\\\OAuth2\\\\Client\\\\Token\\\\AccessToken but returns League\\\\OAuth2\\\\Client\\\\Token\\\\AccessTokenInterface\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraph/OnBehalfOfUserTokenStorage.php + + - + message: "#^Call to method DateTimeImmutable\\:\\:setTimezone\\(\\) on a separate line has no effect\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraph/RemoteEventConverter.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraph/RemoteToLocalSync/CalendarSyncer.php + + - + message: "#^Expression on left side of \\?\\? is not nullable\\.$#" + count: 2 + path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraphRemoteCalendarConnector.php + + - + message: "#^PHPDoc tag @return has invalid value \\(array\\{\\?id\\: string, \\?lastModifiedDateTime\\: int, \\?changeKey\\: string\\}\\)\\: Unexpected token \"\\:\", expected '\\}' at offset 129$#" + count: 2 + path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraphRemoteCalendarConnector.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraphRemoteCalendarConnector.php + + - + message: "#^Property Chill\\\\CalendarBundle\\\\Security\\\\Voter\\\\CalendarVoter\\:\\:\\$authorizationHelper is unused\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/Security/Voter/CalendarVoter.php + + - + message: "#^Property Chill\\\\CalendarBundle\\\\Security\\\\Voter\\\\CalendarVoter\\:\\:\\$centerResolverManager is unused\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/Security/Voter/CalendarVoter.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Console\\\\Helper\\\\HelperInterface\\:\\:ask\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Command/CreateFieldsOnGroupCommand.php + + - + message: "#^If condition is always true\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Command/CreateFieldsOnGroupCommand.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Command/CreateFieldsOnGroupCommand.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\Controller\\\\CustomFieldController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldController.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\Controller\\\\CustomFieldController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldController.php + + - + message: "#^PHPDoc tag @param has invalid value \\(string\\)\\: Unexpected token \"\\\\n \\* \", expected variable at offset 130$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldController.php + + - + message: "#^Ternary operator condition is always true\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldController.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQuery\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findOneByEntity\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findOneById\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Form\\\\FormInterface\\:\\:isClicked\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\Controller\\\\CustomFieldsGroupController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\Controller\\\\CustomFieldsGroupController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\Controller\\\\CustomFieldsGroupController\\:\\:createMakeDefaultForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php + + - + message: "#^Call to an undefined method Symfony\\\\Contracts\\\\Translation\\\\TranslatorInterface\\:\\:getFallbackLocales\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php + + - + message: "#^Method Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\:\\:create\\(\\) invoked with 4 parameters, 1\\-3 required\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and array\\|string will always evaluate to false\\.$#" + count: 2 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 3 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:render\\(\\) should return string but returns null\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php + + - + message: "#^PHPDoc tag @param for parameter \\$builder with type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface is not subtype of native type Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" + count: 2 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php + + - + message: "#^PHPDoc tag @param for parameter \\$customField with type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField is not subtype of native type Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomField\\.$#" + count: 4 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php + + - + message: "#^Anonymous function never returns null so it can be removed from the return type\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldLongChoice\\\\Option will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php + + - + message: "#^Ternary operator condition is always true\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php + + - + message: "#^Property Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:\\$requestStack is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php + + - + message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php + + - + message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php + + - + message: "#^Property Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:\\$requestStack is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/DependencyInjection/Configuration.php + + - + message: "#^Method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\TreeBuilder\\:\\:getRootNode\\(\\) invoked with 1 parameter, 0 required\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/DependencyInjection/Configuration.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomField\\:\\:getName\\(\\) should return array but returns string\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Entity/CustomField.php + + - + message: "#^Property Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomField\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Entity/CustomField.php + + - + message: "#^Property Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldLongChoice\\\\Option\\:\\:\\$children is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldLongChoice/Option.php + + - + message: "#^Property Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldLongChoice\\\\Option\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldLongChoice/Option.php + + - + message: "#^Property Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsDefaultGroup\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsDefaultGroup.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup\\:\\:getActiveCustomFields\\(\\) should return Doctrine\\\\Common\\\\Collections\\\\Collection but returns array\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsGroup.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup\\:\\:getName\\(\\) should return array but returns string\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsGroup.php + + - + message: "#^Property Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsGroup.php + + - + message: "#^Call to method buildOptionsForm\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/CustomFieldType.php + + - + message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\CustomFieldsBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/CustomFieldType.php + + - + message: "#^Parameter \\$resolver of method Chill\\\\CustomFieldsBundle\\\\Form\\\\CustomFieldType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\Form\\\\OptionsResolverInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/CustomFieldType.php + + - + message: "#^Property Chill\\\\CustomFieldsBundle\\\\Form\\\\CustomFieldsGroupType\\:\\:\\$translator \\(Symfony\\\\Component\\\\Translation\\\\TranslatorInterface\\) does not accept Symfony\\\\Contracts\\\\Translation\\\\TranslatorInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/CustomFieldsGroupType.php + + - + message: "#^Instanceof between Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup and Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/CustomFieldsGroupToIdTransformer.php + + - + message: "#^Instanceof between string and Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/CustomFieldsGroupToIdTransformer.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\Form\\\\DataTransformer\\\\CustomFieldsGroupToIdTransformer\\:\\:transform\\(\\) should return string but returns int\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/CustomFieldsGroupToIdTransformer.php + + - + message: "#^Call to an undefined method Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomField\\:\\:getLabel\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/JsonCustomFieldToArrayTransformer.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findOneById\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/JsonCustomFieldToArrayTransformer.php + + - + message: "#^Call to method getCustomFieldByType\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldCompiler\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/Type/CustomFieldType.php + + - + message: "#^Property Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldType\\:\\:\\$customFieldCompiler \\(Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldCompiler\\) does not accept Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/Type/CustomFieldType.php + + - + message: "#^Property Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldType\\:\\:\\$customFieldCompiler has unknown class Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldCompiler as its type\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/Type/CustomFieldType.php + + - + message: "#^Property Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldType\\:\\:\\$om is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Form/Type/CustomFieldType.php + + - + message: "#^Invalid array key type Chill\\\\CustomFieldsBundle\\\\Service\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:getCustomFieldByType\\(\\) has invalid return type Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php + + - + message: "#^Parameter \\$serviceName of method Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:addCustomField\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\Service\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php + + - + message: "#^Parameter \\$type of method Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:addCustomField\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\Service\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php + + - + message: "#^Property Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:\\$container \\(Chill\\\\CustomFieldsBundle\\\\Service\\\\Container\\) does not accept Symfony\\\\Component\\\\DependencyInjection\\\\ContainerInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php + + - + message: "#^Property Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:\\$container has unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\Container as its type\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php + + - + message: "#^Property Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:\\$container is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php + + - + message: "#^Call to method deserialize\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldsHelper.php + + - + message: "#^Call to method isEmptyValue\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldsHelper.php + + - + message: "#^Call to method render\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldsHelper.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldsHelper\\:\\:renderCustomField\\(\\) has invalid return type Chill\\\\CustomFieldsBundle\\\\Service\\\\The\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldsHelper.php + + - + message: "#^Property Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldsHelper\\:\\:\\$em is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldsHelper.php + + - + message: "#^Method Chill\\\\CustomFieldsBundle\\\\Templating\\\\Twig\\\\CustomFieldRenderingTwig\\:\\:renderWidget\\(\\) should return string but returns Chill\\\\CustomFieldsBundle\\\\Service\\\\The\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Templating/Twig/CustomFieldRenderingTwig.php + + - + message: "#^Property Chill\\\\CustomFieldsBundle\\\\Templating\\\\Twig\\\\CustomFieldRenderingTwig\\:\\:\\$container \\(Symfony\\\\Component\\\\DependencyInjection\\\\Container\\) does not accept Symfony\\\\Component\\\\DependencyInjection\\\\ContainerInterface\\|null\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Templating/Twig/CustomFieldRenderingTwig.php + + - + message: "#^Parameter \\$customFielsGroup of method Chill\\\\CustomFieldsBundle\\\\Templating\\\\Twig\\\\CustomFieldsGroupRenderingTwig\\:\\:renderWidget\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\Templating\\\\Twig\\\\CustomFieldsGroud\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Templating/Twig/CustomFieldsGroupRenderingTwig.php + + - + message: "#^Property Chill\\\\CustomFieldsBundle\\\\Templating\\\\Twig\\\\CustomFieldsGroupRenderingTwig\\:\\:\\$container \\(Symfony\\\\Component\\\\DependencyInjection\\\\Container\\) does not accept Symfony\\\\Component\\\\DependencyInjection\\\\ContainerInterface\\|null\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Templating/Twig/CustomFieldsGroupRenderingTwig.php + + - + message: "#^Left side of && is always true\\.$#" + count: 1 + path: src/Bundle/ChillDocGeneratorBundle/Controller/DocGeneratorTemplateController.php + + - + message: "#^PHPDoc tag @return with type void is incompatible with native type Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" + count: 1 + path: src/Bundle/ChillDocGeneratorBundle/Controller/DocGeneratorTemplateController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and int will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillDocGeneratorBundle/Controller/DocGeneratorTemplateController.php + + - + message: "#^Binary operation \"\\.\" between 'Adding doc…' and array\\{filename\\: 'pKNlhCrQDCRsAuC8vYH…', key\\: '\\{\"alg\"\\:\"A256CBC\",…', iv\\: '\\[86,231,83,148,117…', type\\: 'application/vnd…'\\} results in an error\\.$#" + count: 1 + path: src/Bundle/ChillDocGeneratorBundle/DataFixtures/ORM/LoadDocGeneratorTemplate.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillDocGeneratorBundle/DependencyInjection/Configuration.php + + - + message: "#^Property Chill\\\\DocGeneratorBundle\\\\Entity\\\\DocGeneratorTemplate\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillDocGeneratorBundle/Entity/DocGeneratorTemplate.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Doctrine\\\\Common\\\\Collections\\\\Collection will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/CollectionDocGenNormalizer.php + + - + message: "#^Call to an undefined method ReflectionType\\:\\:getName\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/DocGenObjectNormalizer.php + + - + message: "#^Expression on left side of \\?\\? is not nullable\\.$#" + count: 1 + path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/DocGenObjectNormalizer.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod will always evaluate to false\\.$#" + count: 2 + path: src/Bundle/ChillDocStoreBundle/Controller/DocumentAccompanyingCourseController.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQuery\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillDocStoreBundle/Controller/DocumentCategoryController.php + + - + message: "#^Method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) invoked with 2 parameters, 1 required\\.$#" + count: 4 + path: src/Bundle/ChillDocStoreBundle/Controller/DocumentPersonController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\Person will always evaluate to false\\.$#" + count: 2 + path: src/Bundle/ChillDocStoreBundle/Controller/DocumentPersonController.php + + - + message: "#^Method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\TreeBuilder\\:\\:getRootNode\\(\\) invoked with 1 parameter, 0 required\\.$#" + count: 1 + path: src/Bundle/ChillDocStoreBundle/DependencyInjection/Configuration.php + + - + message: "#^Property Chill\\\\DocStoreBundle\\\\Entity\\\\Document\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillDocStoreBundle/Entity/Document.php + + - + message: "#^Property Chill\\\\DocStoreBundle\\\\Entity\\\\Document\\:\\:\\$user has unknown class Chill\\\\PersonBundle\\\\Entity\\\\user as its type\\.$#" + count: 1 + path: src/Bundle/ChillDocStoreBundle/Entity/Document.php + + - + message: "#^Property Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillDocStoreBundle/Entity/StoredObject.php + + - + message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findByFilename\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillDocStoreBundle/Object/ObjectToAsyncFileTransformer.php + + - + message: "#^Property Chill\\\\DocStoreBundle\\\\Repository\\\\AccompanyingCourseDocumentRepository\\:\\:\\$em is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillDocStoreBundle/Repository/AccompanyingCourseDocumentRepository.php + + - + message: "#^Property Chill\\\\DocStoreBundle\\\\Repository\\\\DocumentCategoryRepository\\:\\:\\$em is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillDocStoreBundle/Repository/DocumentCategoryRepository.php + + - + message: "#^Instanceof between Chill\\\\DocStoreBundle\\\\Entity\\\\PersonDocument and Chill\\\\DocStoreBundle\\\\Entity\\\\PersonDocument will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillDocStoreBundle/Security/Authorization/PersonDocumentVoter.php + + - + message: "#^Default value of the parameter \\#5 \\$options \\(array\\{\\}\\) of method Chill\\\\DocStoreBundle\\\\Templating\\\\WopiEditTwigExtensionRuntime\\:\\:renderButtonGroup\\(\\) is incompatible with type array\\{small\\: bool\\}\\.$#" + count: 1 + path: src/Bundle/ChillDocStoreBundle/Templating/WopiEditTwigExtensionRuntime.php + + - + message: "#^Property Chill\\\\DocStoreBundle\\\\Templating\\\\WopiEditTwigExtensionRuntime\\:\\:\\$discovery is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillDocStoreBundle/Templating/WopiEditTwigExtensionRuntime.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:countByPerson\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/EventController.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findByPersonInCircle\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/EventController.php + + - + message: "#^Cannot call method getUsernameCanonical\\(\\) on int\\\\|int\\<1, max\\>\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/EventController.php + + - + message: "#^Method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) invoked with 2 parameters, 1 required\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/EventController.php + + - + message: "#^Negated boolean expression is always false\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/EventController.php + + - + message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\EventTypeController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/EventTypeController.php + + - + message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\EventTypeController\\:\\:createDeleteForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/EventTypeController.php + + - + message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\EventTypeController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/EventTypeController.php + + - + message: "#^Call to an undefined method Traversable\\:\\:count\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/ParticipationController.php + + - + message: "#^Call to an undefined method Traversable\\:\\:current\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/ParticipationController.php + + - + message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\ParticipationController\\:\\:handleRequest\\(\\) has invalid return type Chill\\\\EventBundle\\\\Controller\\\\Participations\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/ParticipationController.php + + - + message: "#^Strict comparison using \\!\\=\\= between null and int will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/ParticipationController.php + + - + message: "#^Strict comparison using \\!\\=\\= between null and int\\|string will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/ParticipationController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\EventBundle\\\\Entity\\\\Event will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/ParticipationController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\EventBundle\\\\Entity\\\\Participation will always evaluate to false\\.$#" + count: 2 + path: src/Bundle/ChillEventBundle/Controller/ParticipationController.php + + - + message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\RoleController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/RoleController.php + + - + message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\RoleController\\:\\:createDeleteForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/RoleController.php + + - + message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\RoleController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/RoleController.php + + - + message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\StatusController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/StatusController.php + + - + message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\StatusController\\:\\:createDeleteForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/StatusController.php + + - + message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\StatusController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Controller/StatusController.php + + - + message: "#^Method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\TreeBuilder\\:\\:getRootNode\\(\\) invoked with 1 parameter, 0 required\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/DependencyInjection/Configuration.php + + - + message: "#^Call to an undefined method Chill\\\\EventBundle\\\\Entity\\\\Participation\\:\\:getIterator\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Entity/Event.php + + - + message: "#^Call to an undefined method Chill\\\\EventBundle\\\\Entity\\\\Participation\\:\\:removeElement\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Entity/Event.php + + - + message: "#^Method Chill\\\\EventBundle\\\\Entity\\\\Event\\:\\:getModerator\\(\\) should return int but returns Chill\\\\MainBundle\\\\Entity\\\\User\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Entity/Event.php + + - + message: "#^Property Chill\\\\EventBundle\\\\Entity\\\\Event\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Entity/Event.php + + - + message: "#^Property Chill\\\\EventBundle\\\\Entity\\\\Event\\:\\:\\$moderator \\(Chill\\\\MainBundle\\\\Entity\\\\User\\) does not accept int\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Entity/Event.php + + - + message: "#^Property Chill\\\\EventBundle\\\\Entity\\\\Event\\:\\:\\$participations \\(Chill\\\\EventBundle\\\\Entity\\\\Participation\\) does not accept Doctrine\\\\Common\\\\Collections\\\\ArrayCollection\\<\\*NEVER\\*, \\*NEVER\\*\\>\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Entity/Event.php + + - + message: "#^Property Chill\\\\EventBundle\\\\Entity\\\\EventType\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Entity/EventType.php + + - + message: "#^Property Chill\\\\EventBundle\\\\Entity\\\\Participation\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Entity/Participation.php + + - + message: "#^Result of \\|\\| is always false\\.$#" + count: 2 + path: src/Bundle/ChillEventBundle/Entity/Participation.php + + - + message: "#^Strict comparison using \\=\\=\\= between Chill\\\\EventBundle\\\\Entity\\\\Event and null will always evaluate to false\\.$#" + count: 3 + path: src/Bundle/ChillEventBundle/Entity/Participation.php + + - + message: "#^Strict comparison using \\=\\=\\= between Chill\\\\EventBundle\\\\Entity\\\\Role and null will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Entity/Participation.php + + - + message: "#^Strict comparison using \\=\\=\\= between Chill\\\\EventBundle\\\\Entity\\\\Status and null will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Entity/Participation.php + + - + message: "#^Property Chill\\\\EventBundle\\\\Entity\\\\Role\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Entity/Role.php + + - + message: "#^Property Chill\\\\EventBundle\\\\Entity\\\\Status\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Entity/Status.php + + - + message: "#^Call to method setDefaults\\(\\) on an unknown class Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolverInterface\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Form/EventTypeType.php + + - + message: "#^Call to method setDefaults\\(\\) on an unknown class Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolverInterface\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Form/RoleType.php + + - + message: "#^Call to method setDefaults\\(\\) on an unknown class Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolverInterface\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Form/StatusType.php + + - + message: "#^Property Chill\\\\EventBundle\\\\Form\\\\Type\\\\PickEventType\\:\\:\\$user \\(Chill\\\\MainBundle\\\\Entity\\\\User\\) does not accept string\\|Stringable\\|Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Form/Type/PickEventType.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Form\\\\ResolvedFormTypeInterface\\:\\:getName\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Form/Type/PickRoleType.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Form\\\\ResolvedFormTypeInterface\\:\\:getName\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Form/Type/PickStatusType.php + + - + message: "#^Method Chill\\\\EventBundle\\\\Search\\\\EventSearch\\:\\:renderResult\\(\\) should return string but returns array\\\\|bool\\>\\>\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Search/EventSearch.php + + - + message: "#^Property Chill\\\\EventBundle\\\\Search\\\\EventSearch\\:\\:\\$user \\(Chill\\\\MainBundle\\\\Entity\\\\User\\) does not accept string\\|Stringable\\|Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Search/EventSearch.php + + - + message: "#^Instanceof between Chill\\\\EventBundle\\\\Entity\\\\Event and Chill\\\\EventBundle\\\\Entity\\\\Event will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Security/Authorization/EventVoter.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Security/Authorization/EventVoter.php + + - + message: "#^Instanceof between Chill\\\\EventBundle\\\\Entity\\\\Participation and Chill\\\\EventBundle\\\\Entity\\\\Participation will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Security/Authorization/ParticipationVoter.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Security/Authorization/ParticipationVoter.php + + - + message: "#^Parameter \\#2 \\$context \\(string\\) of method Chill\\\\EventBundle\\\\Timeline\\\\TimelineEventProvider\\:\\:getEntityTemplate\\(\\) should be compatible with parameter \\$context \\(Chill\\\\MainBundle\\\\Timeline\\\\type\\) of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineProviderInterface\\:\\:getEntityTemplate\\(\\)$#" + count: 1 + path: src/Bundle/ChillEventBundle/Timeline/TimelineEventProvider.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillFamilyMembersBundle/DependencyInjection/Configuration.php + + - + message: "#^Method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\TreeBuilder\\:\\:getRootNode\\(\\) invoked with 1 parameter, 0 required\\.$#" + count: 1 + path: src/Bundle/ChillFamilyMembersBundle/DependencyInjection/Configuration.php + + - + message: "#^Instanceof between DateTimeImmutable and DateTime will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php + + - + message: "#^Instanceof between DateTimeImmutable and DateTimeImmutable will always evaluate to true\\.$#" + count: 2 + path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php + + - + message: "#^Method Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\:\\:getBirthdate\\(\\) has invalid return type Chill\\\\FamilyMembersBundle\\\\Entity\\\\date_immutable\\.$#" + count: 1 + path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php + + - + message: "#^Method Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\:\\:setBirthdate\\(\\) should return Chill\\\\FamilyMembersBundle\\\\Entity\\\\FamilyMember but returns \\$this\\(Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\)\\.$#" + count: 1 + path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php + + - + message: "#^Method Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\:\\:setEndDate\\(\\) should return Chill\\\\FamilyMembersBundle\\\\Entity\\\\FamilyMember but returns \\$this\\(Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\)\\.$#" + count: 1 + path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php + + - + message: "#^Method Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\:\\:setFirstname\\(\\) should return Chill\\\\FamilyMembersBundle\\\\Entity\\\\FamilyMember but returns \\$this\\(Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\)\\.$#" + count: 1 + path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php + + - + message: "#^Method Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\:\\:setGender\\(\\) should return Chill\\\\FamilyMembersBundle\\\\Entity\\\\FamilyMember but returns \\$this\\(Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\)\\.$#" + count: 1 + path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php + + - + message: "#^Method Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\:\\:setLastname\\(\\) should return Chill\\\\FamilyMembersBundle\\\\Entity\\\\FamilyMember but returns \\$this\\(Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\)\\.$#" + count: 1 + path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php + + - + message: "#^Method Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\:\\:setLink\\(\\) should return Chill\\\\FamilyMembersBundle\\\\Entity\\\\FamilyMember but returns \\$this\\(Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\)\\.$#" + count: 1 + path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php + + - + message: "#^Method Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\:\\:setProfessionnalSituation\\(\\) should return Chill\\\\FamilyMembersBundle\\\\Entity\\\\FamilyMember but returns \\$this\\(Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\)\\.$#" + count: 1 + path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php + + - + message: "#^Method Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\:\\:setStartDate\\(\\) should return Chill\\\\FamilyMembersBundle\\\\Entity\\\\FamilyMember but returns \\$this\\(Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\)\\.$#" + count: 1 + path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php + + - + message: "#^Property Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\:\\:\\$birthdate \\(Chill\\\\FamilyMembersBundle\\\\Entity\\\\date_immutable\\|null\\) does not accept DateTimeImmutable\\.$#" + count: 1 + path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php + + - + message: "#^Property Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\:\\:\\$birthdate \\(Chill\\\\FamilyMembersBundle\\\\Entity\\\\date_immutable\\|null\\) does not accept DateTimeImmutable\\|null\\.$#" + count: 1 + path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php + + - + message: "#^Property Chill\\\\FamilyMembersBundle\\\\Entity\\\\AbstractFamilyMember\\:\\:\\$birthdate has unknown class Chill\\\\FamilyMembersBundle\\\\Entity\\\\date_immutable as its type\\.$#" + count: 1 + path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php + + - + message: "#^Result of \\|\\| is always true\\.$#" + count: 3 + path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and DateTimeImmutable will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and null will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillFamilyMembersBundle/Entity/AbstractFamilyMember.php + + - + message: "#^Property Chill\\\\FamilyMembersBundle\\\\Entity\\\\FamilyMember\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillFamilyMembersBundle/Entity/FamilyMember.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQueryBuilder\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/AbstractCRUDController.php + + - + message: "#^Call to method select\\(\\) on an unknown class Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\QueryBuilder\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/AbstractCRUDController.php + + - + message: "#^Call to method setFirstResult\\(\\) on an unknown class Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\QueryBuilder\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/AbstractCRUDController.php + + - + message: "#^Method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\AbstractCRUDController\\:\\:buildQueryEntities\\(\\) has invalid return type Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\QueryBuilder\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/AbstractCRUDController.php + + - + message: "#^PHPDoc tag @throws with type Symfony\\\\Component\\\\Security\\\\Core\\\\Exception\\\\AccessDeniedHttpException is not subtype of Throwable$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/AbstractCRUDController.php + + - + message: "#^PHPDoc tag @param for parameter \\$postedDataContext with type string is incompatible with native type array\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php + + - + message: "#^PHPDoc tag @param has invalid value \\(mixed id\\)\\: Unexpected token \"id\", expected variable at offset 956$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php + + - + message: "#^PHPDoc tag @param has invalid value \\(string action\\)\\: Unexpected token \"action\", expected variable at offset 929$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php + + - + message: "#^PHPDoc tag @return with type void is incompatible with native type Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and object will always evaluate to false\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQueryBuilder\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php + + - + message: "#^Call to method getQuery\\(\\) on an unknown class Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php + + - + message: "#^Instanceof between Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse and Symfony\\\\Component\\\\HttpFoundation\\\\Response will always evaluate to true\\.$#" + count: 3 + path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php + + - + message: "#^Method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\CRUDController\\:\\:index\\(\\) has invalid return type Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php + + - + message: "#^Method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\CRUDController\\:\\:queryEntities\\(\\) has invalid return type Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php + + - + message: "#^PHPDoc tag @throws with type Symfony\\\\Component\\\\Security\\\\Core\\\\Exception\\\\AccessDeniedHttpException is not subtype of Throwable$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php + + - + message: "#^Parameter \\$formClass of method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\CRUDController\\:\\:formCreateAction\\(\\) has invalid type Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 3 + path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php + + - + message: "#^Constant Chill\\\\MainBundle\\\\CRUD\\\\Routing\\\\CRUDRoutesLoader\\:\\:ALL_INDEX_METHODS is unused\\.$#" + count: 1 path: src/Bundle/ChillMainBundle/CRUD/Routing/CRUDRoutesLoader.php - - message: "#^Parameter \\#2 \\$query \\(Doctrine\\\\ORM\\\\QueryBuilder\\) of method Chill\\\\MainBundle\\\\Controller\\\\LocationApiController\\:\\:orderQuery\\(\\) should be contravariant with parameter \\$query \\(mixed\\) of method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\AbstractCRUDController\\:\\:orderQuery\\(\\)$#" + message: "#^Constant Chill\\\\MainBundle\\\\CRUD\\\\Routing\\\\CRUDRoutesLoader\\:\\:ALL_SINGLE_METHODS is unused\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Controller/LocationApiController.php + path: src/Bundle/ChillMainBundle/CRUD/Routing/CRUDRoutesLoader.php - - message: "#^Parameter \\#3 \\$query \\(Doctrine\\\\ORM\\\\QueryBuilder\\) of method Chill\\\\MainBundle\\\\Controller\\\\UserApiController\\:\\:customizeQuery\\(\\) should be contravariant with parameter \\$query \\(mixed\\) of method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\AbstractCRUDController\\:\\:customizeQuery\\(\\)$#" + message: "#^Strict comparison using \\=\\=\\= between 'CRUD' and null will always evaluate to false\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Controller/UserApiController.php + path: src/Bundle/ChillMainBundle/CRUD/Routing/CRUDRoutesLoader.php - - message: "#^Parameter \\#1 \\$value \\(null\\) of method Chill\\\\MainBundle\\\\Form\\\\ChoiceLoader\\\\PostalCodeChoiceLoader\\:\\:loadChoiceList\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadChoiceList\\(\\)$#" + message: "#^Strict comparison using \\=\\=\\= between 'collection' and 'single'\\|null will always evaluate to false\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Form/ChoiceLoader/PostalCodeChoiceLoader.php + path: src/Bundle/ChillMainBundle/CRUD/Routing/CRUDRoutesLoader.php - - message: "#^Parameter \\#2 \\$value \\(null\\) of method Chill\\\\MainBundle\\\\Form\\\\ChoiceLoader\\\\PostalCodeChoiceLoader\\:\\:loadChoicesForValues\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadChoicesForValues\\(\\)$#" + message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findOneByName\\(\\)\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Form/ChoiceLoader/PostalCodeChoiceLoader.php + path: src/Bundle/ChillMainBundle/Command/ChillImportUsersCommand.php - - message: "#^Parameter \\#2 \\$value \\(null\\) of method Chill\\\\MainBundle\\\\Form\\\\ChoiceLoader\\\\PostalCodeChoiceLoader\\:\\:loadValuesForChoices\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadValuesForChoices\\(\\)$#" + message: "#^Method Chill\\\\MainBundle\\\\Command\\\\ChillImportUsersCommand\\:\\:getCenters\\(\\) should return array\\ but returns null\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Form/ChoiceLoader/PostalCodeChoiceLoader.php + path: src/Bundle/ChillMainBundle/Command/ChillImportUsersCommand.php - - message: "#^Parameter \\#1 \\$address \\(Chill\\\\MainBundle\\\\Entity\\\\Address\\) of method Chill\\\\MainBundle\\\\Form\\\\DataMapper\\\\AddressDataMapper\\:\\:mapDataToForms\\(\\) should be contravariant with parameter \\$viewData \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataMapperInterface\\:\\:mapDataToForms\\(\\)$#" + message: "#^Property Chill\\\\MainBundle\\\\Command\\\\ChillUserSendRenewPasswordCodeCommand\\:\\:\\$output is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Command/ChillUserSendRenewPasswordCodeCommand.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Console\\\\Helper\\\\HelperInterface\\:\\:askHiddenResponse\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Command/SetPasswordCommand.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Controller\\\\CenterController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/CenterController.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Controller\\\\CenterController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/CenterController.php + + - + message: "#^Instanceof between Chill\\\\MainBundle\\\\Export\\\\DirectExportInterface and Chill\\\\MainBundle\\\\Export\\\\DirectExportInterface will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/ExportController.php + + - + message: "#^PHPDoc tag @param for parameter \\$request with type string is incompatible with native type Symfony\\\\Component\\\\HttpFoundation\\\\Request\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/ExportController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/ExportController.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQueryBuilder\\(\\)\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Controller/PasswordController.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findOneByUsernameCanonical\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/PasswordController.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Controller\\\\PasswordController\\:\\:passwordForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/PasswordController.php + + - + message: "#^Method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) invoked with 2 parameters, 1 required\\.$#" + count: 4 + path: src/Bundle/ChillMainBundle/Controller/PasswordController.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Controller\\\\PermissionsGroupController\\:\\:addLinkRoleScopeAction\\(\\) has invalid return type Chill\\\\MainBundle\\\\Controller\\\\Respon\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Controller\\\\PermissionsGroupController\\:\\:addLinkRoleScopeAction\\(\\) should return Chill\\\\MainBundle\\\\Controller\\\\Respon but returns Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Controller\\\\PermissionsGroupController\\:\\:addLinkRoleScopeAction\\(\\) should return Chill\\\\MainBundle\\\\Controller\\\\Respon but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Controller\\\\PermissionsGroupController\\:\\:createAddRoleScopeForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Controller\\\\PermissionsGroupController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Controller\\\\PermissionsGroupController\\:\\:createDeleteRoleScopeForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Controller\\\\PermissionsGroupController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Controller\\\\PermissionsGroupController\\:\\:deleteLinkRoleScopeAction\\(\\) has invalid return type Chill\\\\MainBundle\\\\Controller\\\\redirection\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Controller\\\\PermissionsGroupController\\:\\:deleteLinkRoleScopeAction\\(\\) should return Chill\\\\MainBundle\\\\Controller\\\\redirection but returns Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php + + - + message: "#^PHPDoc tag @param for parameter \\$permissionsGroup with type mixed is not subtype of native type Chill\\\\MainBundle\\\\Entity\\\\PermissionsGroup\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php + + - + message: "#^PHPDoc tag @throws with type Chill\\\\MainBundle\\\\Controller\\\\type is not subtype of Throwable$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQuery\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/PostalCodeController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\HttpFoundation\\\\Session\\\\SessionInterface\\:\\:getFlashBag\\(\\)\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Controller/SavedExportController.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Controller\\\\ScopeController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/ScopeController.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Controller\\\\ScopeController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/ScopeController.php + + - + message: "#^Call to method buildForm\\(\\) on an unknown class Chill\\\\MainBundle\\\\Search\\\\HasAdvancedSearchForm\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/SearchController.php + + - + message: "#^Call to method convertFormDataToQuery\\(\\) on an unknown class Chill\\\\MainBundle\\\\Search\\\\HasAdvancedSearchForm\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/SearchController.php + + - + message: "#^Call to method convertTermsToFormData\\(\\) on an unknown class Chill\\\\MainBundle\\\\Search\\\\HasAdvancedSearchForm\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/SearchController.php + + - + message: "#^Call to method getAdvancedSearchTitle\\(\\) on an unknown class Chill\\\\MainBundle\\\\Search\\\\HasAdvancedSearchForm\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/SearchController.php + + - + message: "#^PHPDoc tag @var for variable \\$variable contains unknown class Chill\\\\MainBundle\\\\Controller\\\\Chill\\\\MainBundle\\\\Search\\\\HasAdvancedSearchFormInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/SearchController.php + + - + message: "#^PHPDoc tag @var for variable \\$variable contains unknown class Chill\\\\MainBundle\\\\Controller\\\\Chill\\\\MainBundle\\\\Search\\\\SearchProvider\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Controller/SearchController.php + + - + message: "#^Variable \\$variable in PHPDoc tag @var does not match assigned variable \\$search\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/SearchController.php + + - + message: "#^Variable \\$variable in PHPDoc tag @var does not match assigned variable \\$searchProvider\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Controller/SearchController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\:\\:getGroupCenters\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/TimelineCenterController.php + + - + message: "#^Instanceof between Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse and Symfony\\\\Component\\\\HttpFoundation\\\\Response will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/UserController.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/UserController.php + + - + message: "#^PHPDoc tag @return has invalid value \\(array\\<0\\: CronJobInterface\\[\\], 1\\: array\\\\>\\)\\: Unexpected token \"\\:\", expected '\\>' at offset 26$#" + count: 1 + path: src/Bundle/ChillMainBundle/Cron/CronManager.php + + - + message: "#^Property Chill\\\\MainBundle\\\\DataFixtures\\\\ORM\\\\LoadAddressReferences\\:\\:\\$container is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DataFixtures/ORM/LoadAddressReferences.php + + - + message: "#^Property Chill\\\\MainBundle\\\\DataFixtures\\\\ORM\\\\LoadLocationType\\:\\:\\$container is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DataFixtures/ORM/LoadLocationType.php + + - + message: "#^Property Chill\\\\MainBundle\\\\DataFixtures\\\\ORM\\\\LoadUsers\\:\\:\\$container is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DataFixtures/ORM/LoadUsers.php + + - + message: "#^Parameter \\$factory of method Chill\\\\MainBundle\\\\DependencyInjection\\\\ChillMainExtension\\:\\:addWidgetFactory\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\WidgetFactoryInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/ChillMainExtension.php + + - + message: "#^Method Symfony\\\\Component\\\\DependencyInjection\\\\Container\\:\\:getParameter\\(\\) invoked with 2 parameters, 1 required\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/CompilerPass/ShortMessageCompilerPass.php + + - + message: "#^Offset 'queries' does not exist on array\\{scheme\\: 'ovh', host\\?\\: string, port\\?\\: int\\<0, 65535\\>, user\\?\\: string, pass\\?\\: string, path\\?\\: string, query\\?\\: string, fragment\\?\\: string\\}\\.$#" + count: 5 + path: src/Bundle/ChillMainBundle/DependencyInjection/CompilerPass/ShortMessageCompilerPass.php + + - + message: "#^Offset 'queries' does not exist on array\\{scheme\\?\\: string, host\\?\\: string, port\\?\\: int\\<0, 65535\\>, user\\?\\: string, pass\\?\\: string, path\\?\\: string, query\\?\\: string, fragment\\?\\: string\\}\\|false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/CompilerPass/ShortMessageCompilerPass.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:canBeUnset\\(\\)\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" + count: 3 + path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php + + - + message: "#^Method Chill\\\\MainBundle\\\\DependencyInjection\\\\Configuration\\:\\:getWidgetAliasesbyPlace\\(\\) has invalid return type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php + + - + message: "#^Method Chill\\\\MainBundle\\\\DependencyInjection\\\\Configuration\\:\\:getWidgetAliasesbyPlace\\(\\) should return Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\type but returns array\\\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php + + - + message: "#^Method Chill\\\\MainBundle\\\\DependencyInjection\\\\Configuration\\:\\:getWidgetFactories\\(\\) has invalid return type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\WidgetFactoryInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php + + - + message: "#^Method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\TreeBuilder\\:\\:getRootNode\\(\\) invoked with 1 parameter, 0 required\\.$#" + count: 3 + path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php + + - + message: "#^PHPDoc tag @param has invalid value \\(WidgetFactoryInterface\\[\\]\\)\\: Unexpected token \"\\\\n \", expected variable at offset 42$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php + + - + message: "#^Parameter \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Configuration\\:\\:getWidgetAliasesbyPlace\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php + + - + message: "#^Parameter \\$widgetFactories of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Configuration\\:\\:setWidgetFactories\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\WidgetFactoryInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php + + - + message: "#^Call to an undefined method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:getAllowedPlaces\\(\\)\\.$#" + count: 3 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php + + - + message: "#^Instanceof between Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\HasWidgetFactoriesExtensionInterface and Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\HasWidgetFactoriesExtensionInterface will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php + + - + message: "#^Method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\AbstractWidgetsCompilerPass\\:\\:isPlaceAllowedForWidget\\(\\) has invalid return type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\unknown\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php + + - + message: "#^Method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\AbstractWidgetsCompilerPass\\:\\:isPlaceAllowedForWidget\\(\\) should return Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\unknown but returns false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php + + - + message: "#^Method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\AbstractWidgetsCompilerPass\\:\\:isPlaceAllowedForWidget\\(\\) should return Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\unknown but returns true\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php + + - + message: "#^Negated boolean expression is always false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php + + - + message: "#^Parameter \\$order of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\AbstractWidgetFactory\\:\\:createDefinition\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/AbstractWidgetFactory.php + + - + message: "#^Parameter \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\AbstractWidgetFactory\\:\\:createDefinition\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/AbstractWidgetFactory.php + + - + message: "#^Parameter \\$order of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:createDefinition\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/WidgetFactoryInterface.php + + - + message: "#^Parameter \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/WidgetFactoryInterface.php + + - + message: "#^Parameter \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:createDefinition\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/WidgetFactoryInterface.php + + - + message: "#^PHPDoc tag @param for parameter \\$factory with type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\WidgetFactoryInterface is not subtype of native type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/HasWidgetFactoriesExtensionInterface.php + + - + message: "#^Parameter \\$factory of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\HasWidgetFactoriesExtensionInterface\\:\\:addWidgetFactory\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\WidgetFactoryInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/HasWidgetFactoriesExtensionInterface.php + + - + message: "#^Strict comparison using \\=\\=\\= between int\\<1, max\\> and 0 will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Doctrine/Type/NativeDateIntervalType.php + + - + message: "#^Instanceof between DateTime and DateTime will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Address.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\Address\\:\\:\\$validTo \\(DateTime\\|null\\) does not accept DateTimeInterface\\|null\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Address.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Entity/Address.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Entity\\\\AddressReference\\:\\:setPostcode\\(\\) should return Chill\\\\MainBundle\\\\Entity\\\\Address but returns \\$this\\(Chill\\\\MainBundle\\\\Entity\\\\AddressReference\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/AddressReference.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\AddressReference\\:\\:\\$addressCanonical is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/AddressReference.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\AddressReference\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/AddressReference.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Entity\\\\Country\\:\\:getCountryCode\\(\\) has invalid return type Chill\\\\MainBundle\\\\Entity\\\\the\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Country.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Entity\\\\Country\\:\\:getCountryCode\\(\\) should return Chill\\\\MainBundle\\\\Entity\\\\the but returns string\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Country.php + + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\GeographicalUnit\\:\\:\\$geom is unused\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/GeographicalUnit.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\GeographicalUnit\\:\\:\\$unitRefId is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/GeographicalUnit.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Entity\\\\GroupCenter\\:\\:getPermissionsGroup\\(\\) has invalid return type Chill\\\\MainBundle\\\\Entity\\\\PermissionGroup\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/GroupCenter.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Entity\\\\GroupCenter\\:\\:getPermissionsGroup\\(\\) should return Chill\\\\MainBundle\\\\Entity\\\\PermissionGroup but returns Chill\\\\MainBundle\\\\Entity\\\\PermissionsGroup\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/GroupCenter.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\GroupCenter\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/GroupCenter.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\GroupCenter\\:\\:\\$permissionsGroup \\(Chill\\\\MainBundle\\\\Entity\\\\PermissionsGroup\\) does not accept Doctrine\\\\Common\\\\Collections\\\\ArrayCollection\\<\\*NEVER\\*, \\*NEVER\\*\\>\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/GroupCenter.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Entity\\\\Language\\:\\:getName\\(\\) should return string but returns array\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Language.php + + - + message: "#^PHPDoc tag @param has invalid value \\(string array \\$name\\)\\: Unexpected token \"array\", expected variable at offset 49$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Language.php + + - + message: "#^PHPDoc tag @var for property Chill\\\\MainBundle\\\\Entity\\\\Language\\:\\:\\$name with type string is incompatible with native type array\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Language.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\Location\\:\\:\\$createdAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\|null\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Location.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\Location\\:\\:\\$updatedAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\|null\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Location.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\Notification\\:\\:\\$updatedAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Notification.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\NotificationComment\\:\\:\\$createdAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/NotificationComment.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\NotificationComment\\:\\:\\$updateAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/NotificationComment.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\PermissionsGroup\\:\\:\\$groupCenters is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/PermissionsGroup.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\PermissionsGroup\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/PermissionsGroup.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\PostalCode\\:\\:\\$canonical is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/PostalCode.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\PostalCode\\:\\:\\$deletedAt is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/PostalCode.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\PostalCode\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/PostalCode.php + + - + message: "#^PHPDoc tag @var for property Chill\\\\MainBundle\\\\Entity\\\\Regroupment\\:\\:\\$centers with type Chill\\\\MainBundle\\\\Entity\\\\Center is not subtype of native type Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Regroupment.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\RoleScope\\:\\:\\$permissionsGroups is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/RoleScope.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and array will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/User.php + + - + message: "#^Call to an undefined method Traversable\\<\\(int\\|string\\), mixed\\>\\:\\:current\\(\\)\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflow.php + + - + message: "#^Call to an undefined method Traversable\\<\\(int\\|string\\), mixed\\>\\:\\:next\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflow.php + + - + message: "#^Call to an undefined method Traversable\\<\\(int\\|string\\), mixed\\>\\:\\:rewind\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflow.php + + - + message: "#^Call to an undefined method Traversable\\<\\(int\\|string\\), mixed\\>\\:\\:valid\\(\\)\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflow.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflowStep.php + + - + message: "#^Access to offset \\(int\\|string\\) on an unknown class Chill\\\\MainBundle\\\\Export\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/ExportManager.php + + - + message: "#^Call to an undefined method Chill\\\\MainBundle\\\\Export\\\\ExportElementInterface\\:\\:requiredRole\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/ExportManager.php + + - + message: "#^Call to function is_iterable\\(\\) with array will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/ExportManager.php + + - + message: "#^Empty array passed to foreach\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/ExportManager.php + + - + message: "#^Instanceof between Doctrine\\\\ORM\\\\QueryBuilder and Doctrine\\\\ORM\\\\QueryBuilder will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/ExportManager.php + + - + message: "#^Iterating over an object of an unknown class Chill\\\\MainBundle\\\\Export\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/ExportManager.php + + - + message: "#^PHPDoc tag @param for parameter \\$aliases with type Generator is incompatible with native type array\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/ExportManager.php + + - + message: "#^Parameter \\$data of method Chill\\\\MainBundle\\\\Export\\\\ExportManager\\:\\:handleAggregators\\(\\) has invalid type Chill\\\\MainBundle\\\\Export\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/ExportManager.php + + - + message: "#^Parameter \\$data of method Chill\\\\MainBundle\\\\Export\\\\ExportManager\\:\\:retrieveUsedFilters\\(\\) has invalid type Chill\\\\MainBundle\\\\Export\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/ExportManager.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Export\\\\type will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/ExportManager.php + + - + message: "#^Yield can be used only with these return types\\: Generator, Iterator, Traversable, iterable\\.$#" + count: 5 + path: src/Bundle/ChillMainBundle/Export/ExportManager.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and array\\|string will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/CSVFormatter.php + + - + message: "#^Variable \\$data in PHPDoc tag @var does not match assigned variable \\$contentData\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/CSVFormatter.php + + - + message: "#^Parameter \\#2 \\$exportAlias \\(Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\) of method Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\CSVListFormatter\\:\\:buildForm\\(\\) should be compatible with parameter \\$exportAlias \\(string\\) of method Chill\\\\MainBundle\\\\Export\\\\FormatterInterface\\:\\:buildForm\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/CSVListFormatter.php + + - + message: "#^Parameter \\$exportAlias of method Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\CSVListFormatter\\:\\:buildForm\\(\\) has invalid type Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/CSVListFormatter.php + + - + message: "#^Parameter \\#2 \\$exportAlias \\(Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\) of method Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\CSVPivotedListFormatter\\:\\:buildForm\\(\\) should be compatible with parameter \\$exportAlias \\(string\\) of method Chill\\\\MainBundle\\\\Export\\\\FormatterInterface\\:\\:buildForm\\(\\)$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/CSVPivotedListFormatter.php + + - + message: "#^Parameter \\$exportAlias of method Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\CSVPivotedListFormatter\\:\\:buildForm\\(\\) has invalid type Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/CSVPivotedListFormatter.php + + - + message: "#^Access to offset 'format' on an unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + + - + message: "#^Access to offset mixed on an unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + + - + message: "#^Iterating over an object of an unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\.$#" + count: 3 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$aggregatorsData \\(Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\) does not accept array\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$aggregatorsData has unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type as its type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$formatterData \\(Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\) does not accept array\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$formatterData has unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type as its type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$result \\(Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\) does not accept array\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$result has unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type as its type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + + - + message: "#^Instanceof between string and DateTimeInterface will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadsheetListFormatter.php + + - + message: "#^PHPDoc tag @param has invalid value \\(Array\\(String\\) \\$aggregatorAliases Array of the aliases of the aggregators\\. An aggregator do the \"group by\" on the data\\. \\$aggregatorAliases\\)\\: Unexpected token \"\\(\", expected variable at offset 343$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/FormatterInterface.php + + - + message: "#^PHPDoc tag @var for property Chill\\\\MainBundle\\\\Export\\\\Helper\\\\ExportAddressHelper\\:\\:\\$unitNamesKeysCache contains unresolvable type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Helper/ExportAddressHelper.php + + - + message: "#^PHPDoc tag @var for property Chill\\\\MainBundle\\\\Export\\\\Helper\\\\ExportAddressHelper\\:\\:\\$unitNamesKeysCache with type mixed is not subtype of native type array\\|null\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Helper/ExportAddressHelper.php + + - + message: "#^Call to method createSearchForm\\(\\) on an unknown class Chill\\\\MainBundle\\\\Search\\\\HasAdvancedSearchForm\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/AdvancedSearchType.php + + - + message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/CenterType.php + + - + message: "#^Parameter \\$resolver of method Chill\\\\MainBundle\\\\Form\\\\CenterType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/CenterType.php + + - + message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\Address and Chill\\\\MainBundle\\\\Entity\\\\Address will always evaluate to true\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Form/DataMapper/AddressDataMapper.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\Address will always evaluate to false\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Form/DataMapper/AddressDataMapper.php - - message: "#^Parameter \\#1 \\$forms \\(Iterator\\) of method Chill\\\\MainBundle\\\\Form\\\\DataMapper\\\\AddressDataMapper\\:\\:mapFormsToData\\(\\) should be contravariant with parameter \\$forms \\(iterable\\&Traversable\\) of method Symfony\\\\Component\\\\Form\\\\DataMapperInterface\\:\\:mapFormsToData\\(\\)$#" + message: "#^Else branch is unreachable because previous condition is always true\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Form/DataMapper/AddressDataMapper.php + path: src/Bundle/ChillMainBundle/Form/DataMapper/ScopePickerDataMapper.php - - message: "#^Parameter \\#2 \\$address \\(Chill\\\\MainBundle\\\\Entity\\\\Address\\) of method Chill\\\\MainBundle\\\\Form\\\\DataMapper\\\\AddressDataMapper\\:\\:mapFormsToData\\(\\) should be contravariant with parameter \\$viewData \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataMapperInterface\\:\\:mapFormsToData\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/DataMapper/AddressDataMapper.php + message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\Scope and Chill\\\\MainBundle\\\\Entity\\\\Scope will always evaluate to true\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Form/DataMapper/ScopePickerDataMapper.php - - message: "#^Parameter \\#2 \\$forms \\(Iterator\\) of method Chill\\\\MainBundle\\\\Form\\\\DataMapper\\\\AddressDataMapper\\:\\:mapDataToForms\\(\\) should be contravariant with parameter \\$forms \\(iterable\\&Traversable\\) of method Symfony\\\\Component\\\\Form\\\\DataMapperInterface\\:\\:mapDataToForms\\(\\)$#" + message: "#^Unreachable statement \\- code above always terminates\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Form/DataMapper/AddressDataMapper.php + path: src/Bundle/ChillMainBundle/Form/DataMapper/ScopePickerDataMapper.php - - message: "#^Parameter \\#1 \\$value \\(string\\) of method Chill\\\\MainBundle\\\\Form\\\\DataTransformer\\\\IdToEntityDataTransformer\\:\\:reverseTransform\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataTransformerInterface\\:\\:reverseTransform\\(\\)$#" - count: 1 + message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" + count: 2 path: src/Bundle/ChillMainBundle/Form/DataTransformer/IdToEntityDataTransformer.php - - message: "#^Parameter \\#1 \\$value \\(array\\\\|Chill\\\\MainBundle\\\\Entity\\\\User\\) of method Chill\\\\MainBundle\\\\Form\\\\Type\\\\DataTransformer\\\\EntityToJsonTransformer\\:\\:transform\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataTransformerInterface\\:\\:transform\\(\\)$#" + message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/LocationFormType.php + + - + message: "#^Parameter \\$resolver of method Chill\\\\MainBundle\\\\Form\\\\LocationFormType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/LocationFormType.php + + - + message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/PermissionsGroupType.php + + - + message: "#^Parameter \\$resolver of method Chill\\\\MainBundle\\\\Form\\\\PermissionsGroupType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/PermissionsGroupType.php + + - + message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/ScopeType.php + + - + message: "#^Parameter \\$resolver of method Chill\\\\MainBundle\\\\Form\\\\ScopeType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/ScopeType.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Form\\\\Type\\\\ChillPhoneNumberType\\:\\:\\$phoneNumberUtil is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/Type/ChillPhoneNumberType.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\:\\:getId\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/Type/CommentType.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and array\\\\|Chill\\\\MainBundle\\\\Entity\\\\User will always evaluate to false\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Form/Type/DataTransformer/EntityToJsonTransformer.php - - message: "#^Parameter \\#1 \\$array \\(array\\) of method Chill\\\\MainBundle\\\\Form\\\\Type\\\\DataTransformer\\\\MultipleObjectsToIdTransformer\\:\\:transform\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataTransformerInterface\\:\\:transform\\(\\)$#" + message: "#^Method Chill\\\\MainBundle\\\\Form\\\\Type\\\\DataTransformer\\\\MultipleObjectsToIdTransformer\\:\\:transform\\(\\) should return Doctrine\\\\Common\\\\Collections\\\\ArrayCollection but returns array\\\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Form/Type/DataTransformer/MultipleObjectsToIdTransformer.php - - message: "#^Parameter \\#1 \\$id \\(string\\) of method Chill\\\\MainBundle\\\\Form\\\\Type\\\\DataTransformer\\\\ObjectToIdTransformer\\:\\:reverseTransform\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Form\\\\DataTransformerInterface\\:\\:reverseTransform\\(\\)$#" + message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Form/Type/DataTransformer/ObjectToIdTransformer.php - - message: "#^Parameter \\#2 \\$subject \\(Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\) of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\EntityWorkflowVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" + message: "#^Call to function is_int\\(\\) with int will always evaluate to true\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Security/Authorization/EntityWorkflowVoter.php + path: src/Bundle/ChillMainBundle/Form/Type/DataTransformer/PostalCodeToIdTransformer.php - - message: "#^Parameter \\#1 \\$entity \\(Chill\\\\MainBundle\\\\Entity\\\\HasCenterInterface\\) of method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\DefaultCenterResolver\\:\\:resolveCenter\\(\\) should be contravariant with parameter \\$entity \\(object\\) of method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\CenterResolverInterface\\:\\:resolveCenter\\(\\)$#" + message: "#^Instanceof between Chill\\\\MainBundle\\\\Export\\\\ExportInterface and Chill\\\\MainBundle\\\\Export\\\\ExportInterface will always evaluate to true\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Form/Type/Export/ExportType.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Form\\\\Type\\\\Select2CountryType\\:\\:\\$requestStack is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/Type/Select2CountryType.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\:\\:replaceDefaults\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/Type/Select2EntityType.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Form\\\\Type\\\\Select2LanguageType\\:\\:\\$requestStack is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/Type/Select2LanguageType.php + + - + message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/UserType.php + + - + message: "#^Parameter \\$resolver of method Chill\\\\MainBundle\\\\Form\\\\UserType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/UserType.php + + - + message: "#^Method Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\:\\:setDefined\\(\\) invoked with 2 parameters, 1 required\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/WorkflowStepType.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Notification\\\\Email\\\\NotificationMailer\\:\\:\\$translator is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Notification/Email/NotificationMailer.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Notification\\\\NotificationHandlerManager\\:\\:\\$em is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Notification/NotificationHandlerManager.php + + - + message: "#^Strict comparison using \\=\\=\\= between 0 and float will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Pagination/Paginator.php + + - + message: "#^PHPDoc tag @param for parameter \\$phoneNumber with type string is incompatible with native type libphonenumber\\\\PhoneNumber\\|null\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Phonenumber/PhonenumberHelper.php + + - + message: "#^Expression on left side of \\?\\? is not nullable\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Phonenumber/Templating.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Repository\\\\GeographicalUnitRepository\\:\\:findBy\\(\\) should return Chill\\\\MainBundle\\\\Entity\\\\GeographicalUnit\\|null but returns array\\\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Repository/GeographicalUnitRepository.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Repository\\\\GeographicalUnitRepository\\:\\:\\$em is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Repository/GeographicalUnitRepository.php + + - + message: "#^Return type \\(Chill\\\\MainBundle\\\\Entity\\\\GeographicalUnit\\|null\\) of method Chill\\\\MainBundle\\\\Repository\\\\GeographicalUnitRepository\\:\\:findBy\\(\\) should be compatible with return type \\(array\\\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" + count: 2 + path: src/Bundle/ChillMainBundle/Repository/GeographicalUnitRepository.php + + - + message: "#^The @implements tag of class Chill\\\\MainBundle\\\\Repository\\\\SavedExportRepository describes Doctrine\\\\Persistence\\\\ObjectRepository but the class implements\\: Chill\\\\MainBundle\\\\Repository\\\\SavedExportRepositoryInterface$#" + count: 1 + path: src/Bundle/ChillMainBundle/Repository/SavedExportRepository.php + + - + message: "#^Interface Chill\\\\MainBundle\\\\Repository\\\\SavedExportRepositoryInterface has @implements tag, but can not implement any interface, must extend from it\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Repository/SavedExportRepositoryInterface.php + + - + message: "#^Strict comparison using \\!\\=\\= between null and array\\\\|Chill\\\\MainBundle\\\\Entity\\\\Center will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Repository/UserACLAwareRepository.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Routing\\\\MenuComposer\\:\\:\\$routeCollection is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Routing/MenuComposer.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Routing\\\\MenuTwig\\:\\:\\$container is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Routing/MenuTwig.php + + - + message: "#^Parameter \\$string of method Chill\\\\MainBundle\\\\Search\\\\AbstractSearch\\:\\:parseDate\\(\\) has invalid type Chill\\\\MainBundle\\\\Search\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Search/AbstractSearch.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Search\\\\SearchApi\\:\\:getResults\\(\\) has invalid return type Chill\\\\MainBundle\\\\Search\\\\Model\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Search/SearchApi.php + + - + message: "#^PHPDoc tag @return with type Chill\\\\MainBundle\\\\Search\\\\Model is not subtype of native type Chill\\\\MainBundle\\\\Serializer\\\\Model\\\\Collection\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Search/SearchApi.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Search\\\\SearchApiNoQueryException\\:\\:\\$parameters is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Search/SearchApiNoQueryException.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Search\\\\SearchApiNoQueryException\\:\\:\\$pattern is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Search/SearchApiNoQueryException.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Search\\\\SearchApiNoQueryException\\:\\:\\$types is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Search/SearchApiNoQueryException.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Search\\\\SearchApiResult\\:\\:\\$pertinence is unused\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Search/SearchApiResult.php + + - + message: "#^Else branch is unreachable because previous condition is always true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Search/SearchProvider.php + + - + message: "#^If condition is always true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Search/SearchProvider.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Search\\\\SearchProvider\\:\\:getHasAdvancedFormByName\\(\\) has invalid return type Chill\\\\MainBundle\\\\Search\\\\HasAdvancedSearchForm\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Search/SearchProvider.php + + - + message: "#^Parameter \\$subject of method Chill\\\\MainBundle\\\\Search\\\\SearchProvider\\:\\:extractDomain\\(\\) has invalid type Chill\\\\MainBundle\\\\Search\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Search/SearchProvider.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Search\\\\SearchProvider\\:\\:\\$hasAdvancedFormSearchServices has unknown class Chill\\\\MainBundle\\\\Search\\\\HasAdvancedSearchForm as its type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Search/SearchProvider.php + + - + message: "#^Strict comparison using \\!\\=\\= between null and string will always evaluate to true\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Search/SearchProvider.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\:\\:getGroupCenters\\(\\)\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php + + - + message: "#^Empty array passed to foreach\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php + + - + message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\Center\\|string and Symfony\\\\Component\\\\Security\\\\Core\\\\Role\\\\Role will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php + + - + message: "#^Instanceof between string and Symfony\\\\Component\\\\Security\\\\Core\\\\Role\\\\Role will always evaluate to false\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\Scope\\|iterable\\ will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and null will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\DefaultVoterHelper\\:\\:\\$centerResolverDispatcher is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Authorization/DefaultVoterHelper.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Workflow\\\\EntityWorkflowHandlerInterface\\:\\:getDeletionRoles\\(\\) invoked with 1 parameter, 0 required\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Authorization/WorkflowEntityDeletionVoter.php + + - + message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\User and Chill\\\\MainBundle\\\\Entity\\\\User will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/PasswordRecover/PasswordRecoverEvent.php + + - + message: "#^Parameter \\$ip of method Chill\\\\MainBundle\\\\Security\\\\PasswordRecover\\\\PasswordRecoverEvent\\:\\:__construct\\(\\) has invalid type Chill\\\\MainBundle\\\\Security\\\\PasswordRecover\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/PasswordRecover/PasswordRecoverEvent.php + + - + message: "#^Parameter \\$token of method Chill\\\\MainBundle\\\\Security\\\\PasswordRecover\\\\PasswordRecoverEvent\\:\\:__construct\\(\\) has invalid type Chill\\\\MainBundle\\\\Security\\\\PasswordRecover\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/PasswordRecover/PasswordRecoverEvent.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Security\\\\PasswordRecover\\\\PasswordRecoverEvent\\:\\:\\$ip \\(string\\) does not accept Chill\\\\MainBundle\\\\Security\\\\PasswordRecover\\\\type\\|null\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/PasswordRecover/PasswordRecoverEvent.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Security\\\\PasswordRecover\\\\PasswordRecoverEvent\\:\\:\\$token \\(string\\) does not accept Chill\\\\MainBundle\\\\Security\\\\PasswordRecover\\\\type\\|null\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/PasswordRecover/PasswordRecoverEvent.php + + - + message: "#^Call to function is_array\\(\\) with array\\ will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Resolver/CenterResolverManager.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and array\\\\|Chill\\\\MainBundle\\\\Entity\\\\Center will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Resolver/CenterResolverManager.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Resolver/CenterResolverManager.php + + - + message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\HasCenterInterface and Chill\\\\MainBundle\\\\Entity\\\\HasCenterInterface will always evaluate to true\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Security/Resolver/DefaultCenterResolver.php - - message: "#^Parameter \\#1 \\$entity \\(Chill\\\\MainBundle\\\\Entity\\\\HasScopeInterface\\|Chill\\\\MainBundle\\\\Entity\\\\HasScopesInterface\\) of method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\DefaultScopeResolver\\:\\:resolveScope\\(\\) should be contravariant with parameter \\$entity \\(mixed\\) of method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\ScopeResolverInterface\\:\\:resolveScope\\(\\)$#" + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Resolver/DefaultCenterResolver.php + + - + message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\HasScopesInterface and Chill\\\\MainBundle\\\\Entity\\\\HasScopesInterface will always evaluate to true\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Security/Resolver/DefaultScopeResolver.php - - message: "#^Parameter \\#1 \\$address \\(Chill\\\\MainBundle\\\\Entity\\\\Address\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\AddressNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Resolver/DefaultScopeResolver.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\ResolverTwigExtension\\:\\:resolveCenter\\(\\) has invalid return type Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\Center\\.$#" count: 2 + path: src/Bundle/ChillMainBundle/Security/Resolver/ResolverTwigExtension.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\ResolverTwigExtension\\:\\:resolveCenter\\(\\) should return array\\\\|Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\Center\\|null but returns array\\\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Resolver/ResolverTwigExtension.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\ScopeResolverDispatcher\\:\\:resolveScope\\(\\) invoked with 0 parameters, 1\\-2 required\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Resolver/ResolverTwigExtension.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\ScopeResolverDispatcher\\:\\:resolveScope\\(\\) should return Chill\\\\MainBundle\\\\Entity\\\\Scope\\|iterable\\ but returns null\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Resolver/ScopeResolverDispatcher.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Security\\\\RoleProvider\\:\\:getRoleTitle\\(\\) should return string but returns null\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/RoleProvider.php + + - + message: "#^Strict comparison using \\!\\=\\= between array\\ and null will always evaluate to true\\.$#" + count: 3 + path: src/Bundle/ChillMainBundle/Security/RoleProvider.php + + - + message: "#^Constant Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\AddressNormalizer\\:\\:NULL_POSTCODE_COUNTRY is unused\\.$#" + count: 1 path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php - - message: "#^Parameter \\#1 \\$collection \\(Chill\\\\MainBundle\\\\Serializer\\\\Model\\\\Collection\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\CollectionNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + message: "#^Constant Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\AddressNormalizer\\:\\:NULL_VALUE is unused\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/CollectionNormalizer.php + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php - - message: "#^Parameter \\#1 \\$object \\(Chill\\\\MainBundle\\\\Entity\\\\Embeddable\\\\CommentEmbeddable\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\CommentEmbeddableDocGenNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" - count: 2 + message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\Address and Chill\\\\MainBundle\\\\Entity\\\\Address will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\Embeddable\\\\CommentEmbeddable will always evaluate to false\\.$#" + count: 1 path: src/Bundle/ChillMainBundle/Serializer/Normalizer/CommentEmbeddableDocGenNormalizer.php - - message: "#^Parameter \\#1 \\$object \\(Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\EntityWorkflowNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + message: "#^Method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\DateNormalizer\\:\\:normalize\\(\\) should return array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|null but return statement is missing\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/EntityWorkflowNormalizer.php + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DateNormalizer.php - - message: "#^Parameter \\#1 \\$object \\(Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflowStep\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\EntityWorkflowStepNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + message: "#^Strict comparison using \\=\\=\\= between null and DateTimeInterface will always evaluate to false\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/EntityWorkflowStepNormalizer.php + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DateNormalizer.php - - message: "#^Parameter \\#1 \\$object \\(Chill\\\\MainBundle\\\\Entity\\\\Notification\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\NotificationNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + message: "#^Instanceof between Doctrine\\\\ORM\\\\Mapping\\\\ClassMetadata\\ and Doctrine\\\\ORM\\\\Mapping\\\\ClassMetadata will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DoctrineExistingEntityNormalizer.php + + - + message: "#^Strict comparison using \\=\\=\\= between false and true will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DoctrineExistingEntityNormalizer.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\NotificationNormalizer\\:\\:\\$notificationHandlerManager is never read, only written\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Serializer/Normalizer/NotificationNormalizer.php - - message: "#^Return type \\(array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|void\\|null\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\NotificationNormalizer\\:\\:normalize\\(\\) should be covariant with return type \\(array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|null\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + message: "#^Result of && is always false\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/NotificationNormalizer.php + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/UserNormalizer.php - - message: "#^Parameter \\#1 \\$data \\(string\\|null\\) of method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\PhonenumberNormalizer\\:\\:denormalize\\(\\) should be contravariant with parameter \\$data \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\DenormalizerInterface\\:\\:denormalize\\(\\)$#" + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\User will always evaluate to false\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/PhonenumberNormalizer.php + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/UserNormalizer.php - - message: "#^Parameter \\#1 \\$value \\(string\\) of method Chill\\\\MainBundle\\\\Validation\\\\Validator\\\\ValidPhonenumber\\:\\:validate\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Validator\\\\ConstraintValidatorInterface\\:\\:validate\\(\\)$#" - count: 2 + message: "#^Call to function is_int\\(\\) with int will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Service/Import/AddressReferenceFromBano.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Mime\\\\RawMessage\\:\\:getSubject\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Service/Mailer/ChillMailer.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Mime\\\\RawMessage\\:\\:getTo\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Service/Mailer/ChillMailer.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Templating\\\\CSVCellTwig\\:\\:getName\\(\\) has invalid return type Chill\\\\MainBundle\\\\Templating\\\\The\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Templating/CSVCellTwig.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Templating\\\\CSVCellTwig\\:\\:getName\\(\\) should return Chill\\\\MainBundle\\\\Templating\\\\The but returns string\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Templating/CSVCellTwig.php + + - + message: "#^Instanceof between string and DateTimeInterface will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Templating/ChillTwigHelper.php + + - + message: "#^PHPDoc tag @return has invalid value \\(array\\<'to'\\: DateTimeImmutable, 'from'\\: DateTimeImmutable\\>\\)\\: Unexpected token \"\\:\", expected '\\>' at offset 29$#" + count: 1 + path: src/Bundle/ChillMainBundle/Templating/Listing/FilterOrderHelper.php + + - + message: "#^Call to an undefined method Symfony\\\\Contracts\\\\Translation\\\\TranslatorInterface\\:\\:getFallbackLocales\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Templating/TranslatableStringHelper.php + + - + message: "#^Strict comparison using \\=\\=\\= between array\\{\\} and non\\-empty\\-array\\ will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Templating/TranslatableStringHelper.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Templating\\\\TranslatableStringTwig\\:\\:getName\\(\\) has invalid return type Chill\\\\MainBundle\\\\Templating\\\\The\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Templating/TranslatableStringTwig.php + + - + message: "#^Method Chill\\\\MainBundle\\\\Templating\\\\TranslatableStringTwig\\:\\:getName\\(\\) should return Chill\\\\MainBundle\\\\Templating\\\\The but returns string\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Templating/TranslatableStringTwig.php + + - + message: "#^Call to method render\\(\\) on an unknown class Chill\\\\MainBundle\\\\Templating\\\\Widget\\\\Widget\\\\WidgetInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Templating/Widget/WidgetRenderingTwig.php + + - + message: "#^Method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) invoked with 2 parameters, 1 required\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Templating/Widget/WidgetRenderingTwig.php + + - + message: "#^PHPDoc tag @var for variable \\$widget contains unknown class Chill\\\\MainBundle\\\\Templating\\\\Widget\\\\Widget\\\\WidgetInterface\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Templating/Widget/WidgetRenderingTwig.php + + - + message: "#^Parameter \\$context of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineBuilder\\:\\:countItems\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\unknown\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Timeline/TimelineBuilder.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Timeline/TimelineBuilder.php + + - + message: "#^Parameter \\$context of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineProviderInterface\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Timeline/TimelineProviderInterface.php + + - + message: "#^Parameter \\$entity of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineProviderInterface\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Timeline/TimelineProviderInterface.php + + - + message: "#^Property Chill\\\\MainBundle\\\\Util\\\\DateRangeCovering\\:\\:\\$intervals is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Util/DateRangeCovering.php + + - + message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$messageDuplicateEmail\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Validation/Validator/UserUniqueEmailAndUsername.php + + - + message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$messageDuplicateUsername\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Validation/Validator/UserUniqueEmailAndUsername.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" + count: 1 path: src/Bundle/ChillMainBundle/Validation/Validator/ValidPhonenumber.php - - message: "#^Parameter \\#2 \\$constraint \\(Chill\\\\MainBundle\\\\Validation\\\\Constraint\\\\PhonenumberConstraint\\) of method Chill\\\\MainBundle\\\\Validation\\\\Validator\\\\ValidPhonenumber\\:\\:validate\\(\\) should be contravariant with parameter \\$constraint \\(Symfony\\\\Component\\\\Validator\\\\Constraint\\) of method Symfony\\\\Component\\\\Validator\\\\ConstraintValidatorInterface\\:\\:validate\\(\\)$#" - count: 2 - path: src/Bundle/ChillMainBundle/Validation/Validator/ValidPhonenumber.php - - - - message: "#^Parameter \\#1 \\$value \\(object\\) of method Chill\\\\MainBundle\\\\Validator\\\\Constraints\\\\Entity\\\\UserCircleConsistencyValidator\\:\\:validate\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Validator\\\\ConstraintValidatorInterface\\:\\:validate\\(\\)$#" - count: 2 + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\User will always evaluate to false\\.$#" + count: 1 path: src/Bundle/ChillMainBundle/Validator/Constraints/Entity/UserCircleConsistencyValidator.php - - message: "#^Parameter \\#2 \\$constraint \\(Chill\\\\MainBundle\\\\Validator\\\\Constraints\\\\Entity\\\\UserCircleConsistency\\) of method Chill\\\\MainBundle\\\\Validator\\\\Constraints\\\\Entity\\\\UserCircleConsistencyValidator\\:\\:validate\\(\\) should be contravariant with parameter \\$constraint \\(Symfony\\\\Component\\\\Validator\\\\Constraint\\) of method Symfony\\\\Component\\\\Validator\\\\ConstraintValidatorInterface\\:\\:validate\\(\\)$#" - count: 2 - path: src/Bundle/ChillMainBundle/Validator/Constraints/Entity/UserCircleConsistencyValidator.php + message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$element\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Validator/Constraints/Export/ExportElementConstraintValidator.php - - message: "#^Parameter \\#1 \\$value \\(Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\) of method Chill\\\\MainBundle\\\\Workflow\\\\Validator\\\\EntityWorkflowCreationValidator\\:\\:validate\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Validator\\\\ConstraintValidatorInterface\\:\\:validate\\(\\)$#" - count: 2 + message: "#^Property Chill\\\\MainBundle\\\\Workflow\\\\Templating\\\\WorkflowTwigExtensionRuntime\\:\\:\\$entityWorkflowManager is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Workflow/Templating/WorkflowTwigExtensionRuntime.php + + - + message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow and Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow will always evaluate to true\\.$#" + count: 1 path: src/Bundle/ChillMainBundle/Workflow/Validator/EntityWorkflowCreationValidator.php - - message: "#^Parameter \\#1 \\$value \\(Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflowStep\\) of method Chill\\\\MainBundle\\\\Workflow\\\\Validator\\\\StepDestValidValidator\\:\\:validate\\(\\) should be contravariant with parameter \\$value \\(mixed\\) of method Symfony\\\\Component\\\\Validator\\\\ConstraintValidatorInterface\\:\\:validate\\(\\)$#" - count: 2 + message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflowStep and Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflowStep will always evaluate to true\\.$#" + count: 1 path: src/Bundle/ChillMainBundle/Workflow/Validator/StepDestValidValidator.php - - message: "#^Parameter \\#3 \\$query \\(Doctrine\\\\ORM\\\\QueryBuilder\\) of method Chill\\\\PersonBundle\\\\Controller\\\\HouseholdCompositionTypeApiController\\:\\:customizeQuery\\(\\) should be contravariant with parameter \\$query \\(mixed\\) of method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\AbstractCRUDController\\:\\:customizeQuery\\(\\)$#" + message: "#^PHPDoc tag @param for parameter \\$postSql with type Chill\\\\PersonBundle\\\\Actions\\\\type is incompatible with native type string\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Controller/HouseholdCompositionTypeApiController.php + path: src/Bundle/ChillPersonBundle/Actions/ActionEvent.php - - message: "#^Return type \\(Doctrine\\\\Common\\\\Collections\\\\Collection\\) of method Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\:\\:getScopes\\(\\) should be covariant with return type \\(iterable\\\\) of method Chill\\\\MainBundle\\\\Entity\\\\HasScopesInterface\\:\\:getScopes\\(\\)$#" + message: "#^Parameter \\$postSql of method Chill\\\\PersonBundle\\\\Actions\\\\ActionEvent\\:\\:addPostSql\\(\\) has invalid type Chill\\\\PersonBundle\\\\Actions\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Actions/ActionEvent.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\PersonMove\\:\\:getSQL\\(\\) has invalid return type Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Actions/Remove/PersonMove.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\PersonMove\\:\\:getSQL\\(\\) should return Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\type but returns array\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Actions/Remove/PersonMove.php + + - + message: "#^Method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) invoked with 2 parameters, 1 required\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Actions/Remove/PersonMove.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\EntityPersonCRUDController\\:\\:filterQueryEntitiesByPerson\\(\\) has invalid return type Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\QueryBuilder\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php + + - + message: "#^PHPDoc tag @param for parameter \\$qb with type Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\QueryBuilder is not subtype of native type Doctrine\\\\ORM\\\\QueryBuilder\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php + + - + message: "#^PHPDoc tag @return with type Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\QueryBuilder is not subtype of native type Doctrine\\\\ORM\\\\QueryBuilder\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php + + - + message: "#^PHPDoc tag @throws with type Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\Symfony\\\\Component\\\\HttpKernel\\\\Exception\\\\NotFoundHttpException is not subtype of Throwable$#" + count: 1 + path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php + + - + message: "#^Parameter \\$action of method Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\EntityPersonCRUDController\\:\\:createEntity\\(\\) has invalid type Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\string\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php + + - + message: "#^Parameter \\$qb of method Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\EntityPersonCRUDController\\:\\:filterQueryEntitiesByPerson\\(\\) has invalid type Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\QueryBuilder\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\DependencyInjection\\\\Extension\\\\ExtensionInterface\\:\\:addWidgetFactory\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/ChillPersonBundle.php + + - + message: "#^Iterating over an object of an unknown class Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\type\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Command/ChillPersonMoveCommand.php + + - + message: "#^PHPDoc tag @var for property Chill\\\\PersonBundle\\\\Command\\\\ImportSocialWorkMetadata\\:\\:\\$importer with type Psr\\\\Log\\\\LoggerInterface is not subtype of native type Chill\\\\PersonBundle\\\\Service\\\\Import\\\\ChillImporter\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Command/ImportSocialWorkMetadata.php + + - + message: "#^Method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) invoked with 2 parameters, 1 required\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseApiController.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Controller\\\\AccompanyingCourseApiController\\:\\:\\$accompanyingPeriodACLAwareRepository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseApiController.php + + - + message: "#^Variable \\$accompanyingPeriod in PHPDoc tag @var does not match assigned variable \\$action\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseApiController.php + + - + message: "#^Strict comparison using \\!\\=\\= between null and Doctrine\\\\Common\\\\Collections\\\\Collection will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Serializer\\\\SerializerInterface\\:\\:normalize\\(\\)\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseWorkController.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Controller\\\\AccompanyingCourseWorkController\\:\\:createDeleteForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseWorkController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseWorkController.php + + - + message: "#^Call to an undefined method Psr\\\\Container\\\\ContainerInterface\\:\\:getParameter\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodController.php + + - + message: "#^Method Symfony\\\\Component\\\\Form\\\\FormInterface\\:\\:isValid\\(\\) invoked with 1 parameter, 0 required\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodController.php + + - + message: "#^Method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) invoked with 2 parameters, 1 required\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod will always evaluate to false\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\HttpFoundation\\\\Session\\\\SessionInterface\\:\\:getFlashBag\\(\\)\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Controller/HouseholdCompositionController.php + + - + message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:initialize\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/HouseholdController.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findById\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/HouseholdMemberController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Serializer\\\\SerializerInterface\\:\\:normalize\\(\\)\\.$#" + count: 3 + path: src/Bundle/ChillPersonBundle/Controller/HouseholdMemberController.php + + - + message: "#^Elseif condition is always true\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Controller/PersonAddressController.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Controller\\\\PersonAddressController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/PersonAddressController.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Controller\\\\PersonAddressController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/PersonAddressController.php + + - + message: "#^PHPDoc tag @param for parameter \\$person with type Chill\\\\PersonBundle\\\\Controller\\\\Chill\\\\PersonBundle\\\\Entity\\\\Person is not subtype of native type Chill\\\\PersonBundle\\\\Entity\\\\Person\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/PersonAddressController.php + + - + message: "#^Parameter \\$person of method Chill\\\\PersonBundle\\\\Controller\\\\PersonAddressController\\:\\:validatePerson\\(\\) has invalid type Chill\\\\PersonBundle\\\\Controller\\\\Chill\\\\PersonBundle\\\\Entity\\\\Person\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/PersonAddressController.php + + - + message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findOneByEntity\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/PersonController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Form\\\\FormInterface\\:\\:isClicked\\(\\)\\.$#" + count: 3 + path: src/Bundle/ChillPersonBundle/Controller/PersonController.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\:\\:getGroupCenters\\(\\)\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Controller/PersonController.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Controller\\\\PersonController\\:\\:_validatePersonAndAccompanyingPeriod\\(\\) is unused\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/PersonController.php + + - + message: "#^Method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) invoked with 2 parameters, 1 required\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Controller/PersonController.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Controller\\\\PersonController\\:\\:\\$logger is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/PersonController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\Person will always evaluate to false\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Controller/PersonController.php + + - + message: "#^Access to an undefined property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$counters\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:countByParameters\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php + + - + message: "#^Cannot access property \\$getId on null\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php + + - + message: "#^Iterating over an object of an unknown class Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Controller\\\\PersonDuplicateController\\:\\:_getCounters\\(\\) never returns null so it can be removed from the return type\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php + + - + message: "#^Method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) invoked with 2 parameters, 1 required\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Controller\\\\PersonDuplicateController\\:\\:\\$translator \\(Symfony\\\\Component\\\\Translation\\\\TranslatorInterface\\) does not accept Symfony\\\\Contracts\\\\Translation\\\\TranslatorInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Controller\\\\PersonDuplicateController\\:\\:\\$translator is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php + + - + message: "#^Call to function is_int\\(\\) with int will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/ReassignAccompanyingPeriodController.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Controller\\\\ReassignAccompanyingPeriodController\\:\\:\\$userRender is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/ReassignAccompanyingPeriodController.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Controller\\\\RelationshipApiController\\:\\:\\$validator is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/RelationshipApiController.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Controller\\\\SocialWorkGoalApiController\\:\\:\\$paginator is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/SocialWorkGoalApiController.php + + - + message: "#^Method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) invoked with 2 parameters, 1 required\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/TimelinePersonController.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/DataFixtures/ORM/LoadAccompanyingPeriodNotifications.php + + - + message: "#^Invalid array key type array\\\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/DataFixtures/ORM/LoadRelationships.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:canBeDisabled\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/DependencyInjection/Configuration.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:values\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/DependencyInjection/Configuration.php + + - + message: "#^Method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\TreeBuilder\\:\\:getRootNode\\(\\) invoked with 1 parameter, 0 required\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/DependencyInjection/Configuration.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Doctrine\\\\DQL\\\\AddressPart\\:\\:\\$part is unused\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Doctrine/DQL/AddressPart.php + + - + message: "#^Result of method Doctrine\\\\ORM\\\\Query\\\\Parser\\:\\:match\\(\\) \\(void\\) is used\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Doctrine/DQL/AddressPart.php + + - + message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - message: "#^Return type \\(Chill\\\\MainBundle\\\\Entity\\\\Center\\|null\\) of method Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:getCenter\\(\\) should be covariant with return type \\(Chill\\\\MainBundle\\\\Entity\\\\Center\\) of method Chill\\\\MainBundle\\\\Entity\\\\HasCenterInterface\\:\\:getCenter\\(\\)$#" + message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection\\:\\:matching\\(\\)\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php + + - + message: "#^Instanceof between Chill\\\\PersonBundle\\\\Entity\\\\Person and Chill\\\\PersonBundle\\\\Entity\\\\Person will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php + + + - + message: "#^Method Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\:\\:getCreatedAt\\(\\) should return DateTime\\|null but returns DateTimeInterface\\|null\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\:\\:getRecursiveSocialActions\\(\\) has invalid return type Chill\\\\PersonBundle\\\\Entity\\\\SocialAction\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\:\\:getRecursiveSocialIssues\\(\\) has invalid return type Chill\\\\PersonBundle\\\\Entity\\\\SocialIssues\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php + + - + message: "#^Negated boolean expression is always true\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php + + - + message: "#^PHPDoc tag @return with type array\\ is incompatible with native type Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php + + - + message: "#^PHPDoc tag @return with type iterable is not subtype of native type Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\:\\:\\$updatedAt is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\:\\:\\$updatedBy is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodStepHistory will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\:\\:\\$createdAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWork.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\:\\:\\$endDate \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\|null\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWork.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\:\\:\\$startDate \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWork.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\:\\:\\$updatedAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWork.php + + - + message: "#^PHPDoc tag @param for parameter \\$createdAt with type DateTimeImmutable\\|null is not subtype of native type DateTimeInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWorkEvaluation.php + + - + message: "#^PHPDoc tag @param for parameter \\$updatedAt with type DateTimeImmutable\\|null is not subtype of native type DateTimeInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWorkEvaluation.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluation\\:\\:\\$createdAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWorkEvaluation.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluation\\:\\:\\$updatedAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWorkEvaluation.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\Comment\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/Comment.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriodParticipation\\:\\:checkSameStartEnd\\(\\) is unused\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriodParticipation.php + + - + message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" + count: 3 + path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php + + - + message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection\\:\\:matching\\(\\)\\.$#" + count: 5 + path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php + + - + message: "#^Call to an undefined method Traversable\\<\\(int\\|string\\), mixed\\>\\:\\:uasort\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php + + - + message: "#^Cannot call method filter\\(\\) on array\\\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php + + - + message: "#^Cannot call method toArray\\(\\) on array\\\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\Household\\:\\:getAddresses\\(\\) should return array\\ but returns Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php + + - + message: "#^PHPDoc tag @return with type array\\ is incompatible with native type Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php + + - + message: "#^PHPDoc tag @return with type array\\ is incompatible with native type Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php + + - + message: "#^Strict comparison using \\!\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\HouseholdMember will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and int will always evaluate to false\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\PersonHouseholdAddress\\:\\:\\$address is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Household/PersonHouseholdAddress.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\PersonHouseholdAddress\\:\\:\\$household is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Household/PersonHouseholdAddress.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\PersonHouseholdAddress\\:\\:\\$person is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Household/PersonHouseholdAddress.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\PersonHouseholdAddress\\:\\:\\$validFrom is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Household/PersonHouseholdAddress.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\PersonHouseholdAddress\\:\\:\\$validTo is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Household/PersonHouseholdAddress.php + + - + message: "#^PHPDoc tag @param has invalid value \\(string array \\$name\\)\\: Unexpected token \"array\", expected variable at offset 49$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/MaritalStatus.php + + - + message: "#^PHPDoc tag @return with type string is incompatible with native type array\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/MaritalStatus.php + + - + message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Entity/Person.php - - message: "#^Parameter \\#1 \\$value \\(null\\) of method Chill\\\\PersonBundle\\\\Form\\\\ChoiceLoader\\\\PersonChoiceLoader\\:\\:loadChoiceList\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadChoiceList\\(\\)$#" + message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" + count: 3 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection\\:\\:matching\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Instanceof between DateTime and DateTimeInterface will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Negated boolean expression is always true\\.$#" + count: 3 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^PHPDoc tag @return with type array\\ is incompatible with native type Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$calendars is unused\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$center is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$currentHouseholdAt is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$deathdate \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\|null\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$maritalStatusDate \\(DateTime\\|null\\) does not accept DateTimeInterface\\|null\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$periodLocatedOn is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$proxyAccompanyingPeriodOpenState is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$spokenLanguages \\(Doctrine\\\\Common\\\\Collections\\\\ArrayCollection\\) does not accept Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Strict comparison using \\=\\=\\= between true and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriodParticipation\\|null will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\\\PersonResource\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person/PersonResource.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\\\ResidentialAddress\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Person/ResidentialAddress.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\PersonAltName\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/PersonAltName.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\PersonPhone\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/PersonPhone.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Relationships\\\\Relationship\\:\\:\\$createdAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Relationships/Relationship.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Relationships\\\\Relationship\\:\\:\\$updatedAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\|null\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/Relationships/Relationship.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\SocialWork\\\\Result\\:\\:\\$desactivationDate \\(DateTime\\|null\\) does not accept DateTimeInterface\\|null\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/SocialWork/Result.php + + - + message: "#^If condition is always false\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Entity/SocialWork/SocialAction.php + + - + message: "#^Negated boolean expression is always true\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Entity/SocialWork/SocialAction.php + + - + message: "#^Call to an undefined method Chill\\\\PersonBundle\\\\Entity\\\\SocialWork\\\\SocialAction\\:\\:getSocialIssue\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/SocialWork/SocialIssue.php + + - + message: "#^Call to an undefined method Chill\\\\PersonBundle\\\\Entity\\\\SocialWork\\\\SocialAction\\:\\:setSocialIssue\\(\\)\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Entity/SocialWork/SocialIssue.php + + - + message: "#^If condition is always false\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Entity/SocialWork/SocialIssue.php + + - + message: "#^Negated boolean expression is always true\\.$#" + count: 4 + path: src/Bundle/ChillPersonBundle/Entity/SocialWork/SocialIssue.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\SocialWork\\\\SocialIssue\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/SocialWork/SocialIssue.php + + - + message: "#^Strict comparison using \\=\\=\\= between DateTimeImmutable and null will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Event/Person/PersonAddressMoveEvent.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and DateTimeImmutable will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Event/Person/PersonAddressMoveEvent.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Export\\\\Aggregator\\\\AccompanyingCourseAggregators\\\\DurationAggregator\\:\\:\\$translator is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/DurationAggregator.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Export\\\\Aggregator\\\\EvaluationAggregators\\\\ByEndDateAggregator\\:\\:\\$translator is unused\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Export/Aggregator/EvaluationAggregators/ByEndDateAggregator.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Export\\\\Aggregator\\\\EvaluationAggregators\\\\ByMaxDateAggregator\\:\\:\\$translator is unused\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Export/Aggregator/EvaluationAggregators/ByMaxDateAggregator.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Export\\\\Aggregator\\\\EvaluationAggregators\\\\ByStartDateAggregator\\:\\:\\$translator is unused\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Export/Aggregator/EvaluationAggregators/ByStartDateAggregator.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Export\\\\Aggregator\\\\HouseholdAggregators\\\\ChildrenNumberAggregator\\:\\:\\$translator is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Export/Aggregator/HouseholdAggregators/ChildrenNumberAggregator.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Export\\\\Export\\\\ListAccompanyingPeriod\\:\\:\\$userHelper is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Export/Export/ListAccompanyingPeriod.php + + - + message: "#^Call to method extractOtherValue\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php + + - + message: "#^Call to method getChoices\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php + + - + message: "#^Call to method isChecked\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php + + - + message: "#^Call to method isMultiple\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php + + - + message: "#^Call to method render\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Export\\\\Export\\\\ListPersonDuplicate\\:\\:\\$translator \\(Symfony\\\\Component\\\\Translation\\\\TranslatorInterface\\) does not accept Symfony\\\\Contracts\\\\Translation\\\\TranslatorInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Export/Export/ListPersonDuplicate.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Export\\\\Filter\\\\AccompanyingCourseFilters\\\\AdministrativeLocationFilter\\:\\:\\$translatableStringHelper is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/AdministrativeLocationFilter.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Export\\\\Filter\\\\AccompanyingCourseFilters\\\\SocialActionFilter\\:\\:\\$translatableStringHelper is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/SocialActionFilter.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Export\\\\Filter\\\\AccompanyingCourseFilters\\\\UserScopeFilter\\:\\:getUserMainScope\\(\\) is unused\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/UserScopeFilter.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Export\\\\Filter\\\\SocialWorkFilters\\\\SocialWorkTypeFilter\\:\\:\\$socialActionRender is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Export/Filter/SocialWorkFilters/SocialWorkTypeFilter.php + + - + message: "#^PHPDoc tag @param for parameter \\$personRepository with type Chill\\\\PersonBundle\\\\Form\\\\ChoiceLoader\\\\EntityRepository is not subtype of native type Chill\\\\PersonBundle\\\\Repository\\\\PersonRepository\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Form/ChoiceLoader/PersonChoiceLoader.php - - message: "#^Parameter \\#2 \\$value \\(null\\) of method Chill\\\\PersonBundle\\\\Form\\\\ChoiceLoader\\\\PersonChoiceLoader\\:\\:loadChoicesForValues\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadChoicesForValues\\(\\)$#" + message: "#^Parameter \\$personRepository of method Chill\\\\PersonBundle\\\\Form\\\\ChoiceLoader\\\\PersonChoiceLoader\\:\\:__construct\\(\\) has invalid type Chill\\\\PersonBundle\\\\Form\\\\ChoiceLoader\\\\EntityRepository\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Form/ChoiceLoader/PersonChoiceLoader.php - - message: "#^Parameter \\#2 \\$value \\(null\\) of method Chill\\\\PersonBundle\\\\Form\\\\ChoiceLoader\\\\PersonChoiceLoader\\:\\:loadValuesForChoices\\(\\) should be contravariant with parameter \\$value \\(\\(callable\\(\\)\\: mixed\\)\\|null\\) of method Symfony\\\\Component\\\\Form\\\\ChoiceList\\\\Loader\\\\ChoiceLoaderInterface\\:\\:loadValuesForChoices\\(\\)$#" + message: "#^Method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) invoked with 2 parameters, 1 required\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Form/ChoiceLoader/PersonChoiceLoader.php + path: src/Bundle/ChillPersonBundle/Form/CreationPersonType.php - - message: "#^Parameter \\#3 \\$limit \\(int\\) of method Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluationRepository\\:\\:findBy\\(\\) should be contravariant with parameter \\$limit \\(int\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/AccompanyingPeriodWorkEvaluationRepository.php + message: "#^Call to function is_array\\(\\) with Doctrine\\\\Common\\\\Collections\\\\Collection will always evaluate to false\\.$#" + count: 2 + path: src/Bundle/ChillPersonBundle/Form/DataMapper/PersonAltNameDataMapper.php - - message: "#^Parameter \\#4 \\$offset \\(int\\) of method Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluationRepository\\:\\:findBy\\(\\) should be contravariant with parameter \\$offset \\(int\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/AccompanyingPeriodWorkEvaluationRepository.php + message: "#^Call to method getData\\(\\) on an unknown class Chill\\\\PersonBundle\\\\Form\\\\DataMapper\\\\FormInterface\\.$#" + count: 3 + path: src/Bundle/ChillPersonBundle/Form/DataMapper/PersonAltNameDataMapper.php - - message: "#^Parameter \\#3 \\$limit \\(int\\) of method Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\HouseholdCompositionRepository\\:\\:findBy\\(\\) should be contravariant with parameter \\$limit \\(int\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" + message: "#^Parameter \\#1 \\$forms \\(array\\\\) of method Chill\\\\PersonBundle\\\\Form\\\\DataMapper\\\\PersonAltNameDataMapper\\:\\:mapFormsToData\\(\\) should be compatible with parameter \\$forms \\(iterable\\&Traversable\\) of method Symfony\\\\Component\\\\Form\\\\DataMapperInterface\\:\\:mapFormsToData\\(\\)$#" count: 1 - path: src/Bundle/ChillPersonBundle/Repository/Household/HouseholdCompositionRepository.php + path: src/Bundle/ChillPersonBundle/Form/DataMapper/PersonAltNameDataMapper.php - - message: "#^Parameter \\#4 \\$offset \\(int\\) of method Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\HouseholdCompositionRepository\\:\\:findBy\\(\\) should be contravariant with parameter \\$offset \\(int\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" + message: "#^Parameter \\$forms of method Chill\\\\PersonBundle\\\\Form\\\\DataMapper\\\\PersonAltNameDataMapper\\:\\:mapFormsToData\\(\\) has invalid type Chill\\\\PersonBundle\\\\Form\\\\DataMapper\\\\FormInterface\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Repository/Household/HouseholdCompositionRepository.php + path: src/Bundle/ChillPersonBundle/Form/DataMapper/PersonAltNameDataMapper.php - - message: "#^Parameter \\#3 \\$limit \\(int\\) of method Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\HouseholdCompositionRepositoryInterface\\:\\:findBy\\(\\) should be contravariant with parameter \\$limit \\(int\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" + message: "#^Property Chill\\\\PersonBundle\\\\Form\\\\PersonResourceType\\:\\:\\$personRender is never read, only written\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Repository/Household/HouseholdCompositionRepositoryInterface.php + path: src/Bundle/ChillPersonBundle/Form/PersonResourceType.php - - message: "#^Parameter \\#4 \\$offset \\(int\\) of method Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\HouseholdCompositionRepositoryInterface\\:\\:findBy\\(\\) should be contravariant with parameter \\$offset \\(int\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" + message: "#^Property Chill\\\\PersonBundle\\\\Form\\\\PersonResourceType\\:\\:\\$thirdPartyRender is never read, only written\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Repository/Household/HouseholdCompositionRepositoryInterface.php + path: src/Bundle/ChillPersonBundle/Form/PersonResourceType.php - - message: "#^Return type \\(class\\-string\\) of method Chill\\\\PersonBundle\\\\Repository\\\\SocialWork\\\\EvaluationRepository\\:\\:getClassName\\(\\) should be covariant with return type \\(class\\-string\\\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:getClassName\\(\\)$#" + message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\PersonBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Repository/SocialWork/EvaluationRepository.php + path: src/Bundle/ChillPersonBundle/Form/PersonType.php - - message: "#^Return type \\(class\\-string\\) of method Chill\\\\PersonBundle\\\\Repository\\\\SocialWork\\\\EvaluationRepositoryInterface\\:\\:getClassName\\(\\) should be covariant with return type \\(class\\-string\\\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:getClassName\\(\\)$#" + message: "#^Parameter \\$resolver of method Chill\\\\PersonBundle\\\\Form\\\\PersonType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\PersonBundle\\\\Form\\\\OptionsResolverInterface\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Repository/SocialWork/EvaluationRepositoryInterface.php + path: src/Bundle/ChillPersonBundle/Form/PersonType.php - - message: "#^Return type \\(class\\-string\\) of method Chill\\\\PersonBundle\\\\Repository\\\\SocialWork\\\\GoalRepository\\:\\:getClassName\\(\\) should be covariant with return type \\(class\\-string\\\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:getClassName\\(\\)$#" + message: "#^Property Chill\\\\PersonBundle\\\\Form\\\\PersonType\\:\\:\\$parameterBag is never read, only written\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Repository/SocialWork/GoalRepository.php + path: src/Bundle/ChillPersonBundle/Form/PersonType.php - - message: "#^Return type \\(class\\-string\\) of method Chill\\\\PersonBundle\\\\Repository\\\\SocialWork\\\\ResultRepository\\:\\:getClassName\\(\\) should be covariant with return type \\(class\\-string\\\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:getClassName\\(\\)$#" + message: "#^Property Chill\\\\PersonBundle\\\\Form\\\\PersonType\\:\\:\\$translatableStringHelper \\(Chill\\\\MainBundle\\\\Templating\\\\TranslatableStringHelper\\) does not accept Chill\\\\MainBundle\\\\Templating\\\\TranslatableStringHelperInterface\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Repository/SocialWork/ResultRepository.php + path: src/Bundle/ChillPersonBundle/Form/PersonType.php - - message: "#^Return type \\(class\\-string\\) of method Chill\\\\PersonBundle\\\\Repository\\\\SocialWork\\\\SocialActionRepository\\:\\:getClassName\\(\\) should be covariant with return type \\(class\\-string\\\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:getClassName\\(\\)$#" + message: "#^Strict comparison using \\=\\=\\= between 'create' and 'create' will always evaluate to true\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Repository/SocialWork/SocialActionRepository.php + path: src/Bundle/ChillPersonBundle/Form/SocialWork/SocialIssueType.php - - message: "#^Return type \\(class\\-string\\) of method Chill\\\\PersonBundle\\\\Repository\\\\SocialWork\\\\SocialIssueRepository\\:\\:getClassName\\(\\) should be covariant with return type \\(class\\-string\\\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:getClassName\\(\\)$#" + message: "#^Property Chill\\\\PersonBundle\\\\Form\\\\Type\\\\PickPersonType\\:\\:\\$user \\(Chill\\\\MainBundle\\\\Entity\\\\User\\) does not accept string\\|Stringable\\|Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Repository/SocialWork/SocialIssueRepository.php + path: src/Bundle/ChillPersonBundle/Form/Type/PickPersonType.php - - message: "#^Parameter \\#2 \\$subject \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluationDocument\\) of method Chill\\\\PersonBundle\\\\Security\\\\Authorization\\\\AccompanyingPeriodWorkEvaluationDocumentVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" + message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Household/MembersEditor.php + + - + message: "#^Method Doctrine\\\\Common\\\\Collections\\\\ExpressionBuilder\\:\\:isNull\\(\\) invoked with 2 parameters, 1 required\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Household/MembersEditor.php + + - + message: "#^Cannot call method getId\\(\\) on string\\|Stringable\\|Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Privacy/PrivacyEventSubscriber.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkGoalRepository\\:\\:\\$repository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/AccompanyingPeriodWorkGoalRepository.php + + - + message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\:\\:countByAccompanyingPeriod\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/AccompanyingPeriodWorkRepository.php + + - + message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\:\\:findByAccompanyingPeriod\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/AccompanyingPeriodWorkRepository.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\CommentRepository\\:\\:\\$repository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/CommentRepository.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\OriginRepository\\:\\:\\$repository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/OriginRepository.php + + - + message: "#^PHPDoc tag @param has invalid value \\(array\\|PostalCode\\[\\]\\)\\: Unexpected token \"\\\\n \\*\", expected variable at offset 36$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriodACLAwareRepository.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriodParticipationRepository\\:\\:\\$repository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriodParticipationRepository.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\HouseholdMembersRepository\\:\\:\\$repository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/Household/HouseholdMembersRepository.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\PositionRepository\\:\\:findOneBy\\(\\) should return array\\ but returns object\\|null\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/Household/PositionRepository.php + + - + message: "#^Return type \\(array\\\\) of method Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\PositionRepository\\:\\:findOneBy\\(\\) should be compatible with return type \\(object\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findOneBy\\(\\)$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/Household/PositionRepository.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\PersonACLAwareRepository\\:\\:\\$countryRepository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/PersonACLAwareRepository.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\PersonAltNameRepository\\:\\:\\$repository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/PersonAltNameRepository.php + + - + message: "#^PHPDoc tag @return with type array\\\\|null is not subtype of native type array\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Repository/ResidentialAddressRepository.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Search\\\\PersonSearch\\:\\:renderResult\\(\\) should return string but returns array\\\\>\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Search/PersonSearch.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Search\\\\SearchHouseholdApiProvider\\:\\:\\$authorizationHelper is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Search/SearchHouseholdApiProvider.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Search\\\\SearchHouseholdApiProvider\\:\\:\\$security is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Search/SearchHouseholdApiProvider.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Search\\\\SearchPersonApiProvider\\:\\:\\$authorizationHelper is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Search/SearchPersonApiProvider.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Search\\\\SearchPersonApiProvider\\:\\:\\$security is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Search/SearchPersonApiProvider.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Security\\\\Authorization\\\\AccompanyingPeriodVoter\\:\\:\\$security is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodVoter.php + + - + message: "#^PHPDoc tag @return with type bool\\|void is not subtype of native type bool\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkEvaluationDocumentVoter.php - - message: "#^Parameter \\#2 \\$subject \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluation\\) of method Chill\\\\PersonBundle\\\\Security\\\\Authorization\\\\AccompanyingPeriodWorkEvaluationVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkEvaluationVoter.php - - - - message: "#^Parameter \\#2 \\$subject \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\) of method Chill\\\\PersonBundle\\\\Security\\\\Authorization\\\\AccompanyingPeriodWorkVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" + message: "#^Elseif branch is unreachable because previous condition is always true\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkVoter.php - - message: "#^Parameter \\#1 \\$period \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\|null\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodDocGenNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" - count: 2 + message: "#^Instanceof between \\*NEVER\\* and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkVoter.php + + - + message: "#^Instanceof between Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkVoter.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Security\\\\Authorization\\\\AccompanyingPeriodWorkVoter\\:\\:\\$voterHelper is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkVoter.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkVoter.php + + - + message: "#^Constant Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodDocGenNormalizer\\:\\:IGNORE_FIRST_PASS_KEY is unused\\.$#" + count: 1 path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodDocGenNormalizer.php - - message: "#^Parameter \\#1 \\$origin \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\Origin\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodOriginNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + message: "#^Strict comparison using \\!\\=\\= between Chill\\\\PersonBundle\\\\Entity\\\\Person\\|Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty and null will always evaluate to true\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodOriginNormalizer.php + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodDocGenNormalizer.php - - message: "#^Parameter \\#1 \\$participation \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriodParticipation\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodParticipationNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" + message: "#^Strict comparison using \\=\\=\\= between null and null will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodDocGenNormalizer.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodDocGenNormalizer.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodParticipationNormalizer.php - - message: "#^Parameter \\#1 \\$object \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluation\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkEvaluationNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" - count: 2 + message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkDenormalizer\\:\\:\\$em is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkDenormalizer.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkDenormalizer\\:\\:\\$workRepository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkDenormalizer.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkEvaluationDocumentNormalizer\\:\\:\\$registry is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkEvaluationDocumentNormalizer.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkEvaluationNormalizer\\:\\:\\$registry is never read, only written\\.$#" + count: 1 path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkEvaluationNormalizer.php - - message: "#^Parameter \\#1 \\$object \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" - count: 2 + message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkNormalizer\\:\\:\\$registry is never read, only written\\.$#" + count: 1 path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkNormalizer.php - - message: "#^Parameter \\#1 \\$person \\(Chill\\\\PersonBundle\\\\Entity\\\\Person\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\PersonJsonNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" - count: 2 + message: "#^Call to function is_array\\(\\) with 'concerned' will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/MembersEditorNormalizer.php + + - + message: "#^Expression on left side of \\?\\? is not nullable\\.$#" + count: 3 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/MembersEditorNormalizer.php + + - + message: "#^Left side of && is always false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/MembersEditorNormalizer.php + + - + message: "#^Strict comparison using \\=\\=\\= between false and false will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/MembersEditorNormalizer.php + + - + message: "#^Instanceof between Chill\\\\PersonBundle\\\\Entity\\\\Person and Chill\\\\PersonBundle\\\\Entity\\\\Person will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonDocGenNormalizer.php + + - + message: "#^Method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\PersonDocGenNormalizer\\:\\:hasGroup\\(\\) is unused\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonDocGenNormalizer.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\Person will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonDocGenNormalizer.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\PersonJsonNormalizer\\:\\:\\$phoneNumberHelper is never read, only written\\.$#" + count: 1 path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonJsonNormalizer.php - - message: "#^Parameter \\#1 \\$relation \\(Chill\\\\PersonBundle\\\\Entity\\\\Relationships\\\\Relationship\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\RelationshipDocGenNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" - count: 2 + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\Relationships\\\\Relationship will always evaluate to false\\.$#" + count: 1 path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/RelationshipDocGenNormalizer.php - - message: "#^Parameter \\#1 \\$object \\(Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\) of method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\WorkflowNormalizer\\:\\:normalize\\(\\) should be contravariant with parameter \\$object \\(mixed\\) of method Symfony\\\\Component\\\\Serializer\\\\Normalizer\\\\NormalizerInterface\\:\\:normalize\\(\\)$#" - count: 2 + message: "#^Method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\SocialIssueNormalizer\\:\\:normalize\\(\\) should return array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|null but return statement is missing\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/SocialIssueNormalizer.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\SocialWork\\\\SocialIssue will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/SocialIssueNormalizer.php + + - + message: "#^PHPDoc tag @return with type array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|void\\|null is not subtype of native type array\\.$#" + count: 1 path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/WorkflowNormalizer.php - - message: "#^Parameter \\#1 \\$object \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluationDocument\\) of method Chill\\\\PersonBundle\\\\Workflow\\\\AccompanyingPeriodWorkEvaluationDocumentWorkflowHandler\\:\\:getRelatedObjects\\(\\) should be contravariant with parameter \\$object \\(object\\) of method Chill\\\\MainBundle\\\\Workflow\\\\EntityWorkflowHandlerInterface\\:\\:getRelatedObjects\\(\\)$#" + message: "#^Call to an undefined method Chill\\\\DocStoreBundle\\\\Entity\\\\Document\\:\\:setCourse\\(\\)\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Workflow/AccompanyingPeriodWorkEvaluationDocumentWorkflowHandler.php + path: src/Bundle/ChillPersonBundle/Service/DocGenerator/AccompanyingPeriodContext.php - - message: "#^Parameter \\#1 \\$object \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluation\\) of method Chill\\\\PersonBundle\\\\Workflow\\\\AccompanyingPeriodWorkEvaluationWorkflowHandler\\:\\:getRelatedObjects\\(\\) should be contravariant with parameter \\$object \\(object\\) of method Chill\\\\MainBundle\\\\Workflow\\\\EntityWorkflowHandlerInterface\\:\\:getRelatedObjects\\(\\)$#" + message: "#^Call to function array_key_exists\\(\\) with 'category' and array will always evaluate to true\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Workflow/AccompanyingPeriodWorkEvaluationWorkflowHandler.php + path: src/Bundle/ChillPersonBundle/Service/DocGenerator/AccompanyingPeriodContext.php - - message: "#^Parameter \\#1 \\$object \\(Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\) of method Chill\\\\PersonBundle\\\\Workflow\\\\AccompanyingPeriodWorkWorkflowHandler\\:\\:getRelatedObjects\\(\\) should be contravariant with parameter \\$object \\(object\\) of method Chill\\\\MainBundle\\\\Workflow\\\\EntityWorkflowHandlerInterface\\:\\:getRelatedObjects\\(\\)$#" + message: "#^Else branch is unreachable because ternary operator condition is always true\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Workflow/AccompanyingPeriodWorkWorkflowHandler.php + path: src/Bundle/ChillPersonBundle/Service/DocGenerator/AccompanyingPeriodContext.php - - message: "#^Return type \\(Chill\\\\MainBundle\\\\Entity\\\\Center\\|null\\) of method Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask\\:\\:getCenter\\(\\) should be covariant with return type \\(Chill\\\\MainBundle\\\\Entity\\\\Center\\) of method Chill\\\\MainBundle\\\\Entity\\\\HasCenterInterface\\:\\:getCenter\\(\\)$#" + message: "#^Call to an undefined method Chill\\\\DocStoreBundle\\\\Entity\\\\Document\\:\\:setPerson\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Service/DocGenerator/PersonContext.php + + - + message: "#^Call to function array_key_exists\\(\\) with 'category' and array will always evaluate to true\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Service/DocGenerator/PersonContext.php + + - + message: "#^Comparison operation \"\\<\" between 1 and array results in an error\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Service/DocGenerator/PersonContext.php + + - + message: "#^Else branch is unreachable because ternary operator condition is always true\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Service/DocGenerator/PersonContext.php + + - + message: "#^PHPDoc tag @param has invalid value \\(array\\\\|SocialIssue\\|string, SocialAction\\|null\\>\\|Evaluation\\|Goal\\|Result\\> \\$previousRow\\)\\: Unexpected token \"\\<\", expected type at offset 333$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Service/Import/SocialWorkMetadata.php + + - + message: "#^PHPDoc tag @return has invalid value \\(array\\\\|SocialIssue\\|string, SocialAction\\|null\\>\\|Evaluation\\|Goal\\|Result\\>\\)\\: Unexpected token \"\\<\", expected type at offset 505$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Service/Import/SocialWorkMetadata.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Service\\\\Import\\\\SocialWorkMetadata\\:\\:\\$socialActionRepository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Service/Import/SocialWorkMetadata.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Service\\\\Import\\\\SocialWorkMetadata\\:\\:\\$socialIssueRepository is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Service/Import/SocialWorkMetadata.php + + - + message: "#^Call to method getId\\(\\) on an unknown class ChillPersonBundle\\:AccompanyingPeriod\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Timeline/AbstractTimelineAccompanyingPeriod.php + + - + message: "#^Cannot call method setKey\\(\\) on array\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodClosing.php + + - + message: "#^Parameter \\$context of method Chill\\\\PersonBundle\\\\Timeline\\\\TimelineAccompanyingPeriodClosing\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodClosing.php + + - + message: "#^Parameter \\$entity of method Chill\\\\PersonBundle\\\\Timeline\\\\TimelineAccompanyingPeriodClosing\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodClosing.php + + - + message: "#^Cannot call method setKey\\(\\) on array\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodOpening.php + + - + message: "#^Parameter \\$context of method Chill\\\\PersonBundle\\\\Timeline\\\\TimelineAccompanyingPeriodOpening\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodOpening.php + + - + message: "#^Parameter \\$entity of method Chill\\\\PersonBundle\\\\Timeline\\\\TimelineAccompanyingPeriodOpening\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodOpening.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Validator\\\\Constraints\\\\AccompanyingPeriod\\\\AccompanyingPeriodValidityValidator\\:\\:\\$token is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Validator/Constraints/AccompanyingPeriod/AccompanyingPeriodValidityValidator.php + + - + message: "#^Property Chill\\\\PersonBundle\\\\Validator\\\\Constraints\\\\AccompanyingPeriod\\\\ParticipationOverlapValidator\\:\\:\\$thirdpartyRender is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Validator/Constraints/AccompanyingPeriod/ParticipationOverlapValidator.php + + - + message: "#^Strict comparison using \\=\\=\\= between 0 and int\\<2, max\\> will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Validator/Constraints/AccompanyingPeriod/ParticipationOverlapValidator.php + + - + message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$message\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Validator/Constraints/Household/HouseholdMembershipSequentialValidator.php + + - + message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$message\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Validator/Constraints/Household/MaxHolderValidator.php + + - + message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$messageInfinity\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Validator/Constraints/Household/MaxHolderValidator.php + + - + message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$message\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Validator/Constraints/Person/BirthdateValidator.php + + - + message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$message\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Validator/Constraints/Person/PersonHasCenterValidator.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and string\\|Stringable\\|Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Widget/PersonListWidget.php + + - + message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeParentInterface\\:\\:info\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Widget/PersonListWidgetFactory.php + + - + message: "#^Parameter \\$place of method Chill\\\\PersonBundle\\\\Widget\\\\PersonListWidgetFactory\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Widget/PersonListWidgetFactory.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQuery\\(\\)\\.$#" + count: 2 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findByCFGroup\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findByEntity\\(\\)\\.$#" + count: 2 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Call to method getId\\(\\) on an unknown class ChillReportBundle\\:Report\\.$#" + count: 2 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Call to method getPerson\\(\\) on an unknown class ChillReportBundle\\:Report\\.$#" + count: 3 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:editAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:editAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:exportAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\A\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:exportAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\A but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:listAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:listAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:newAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:newAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" + count: 2 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeForExportAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeForExportAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" + count: 2 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeForExportAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:updateAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:updateAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:updateAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:viewAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:viewAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) invoked with 2 parameters, 1 required\\.$#" + count: 4 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Negated boolean expression is always false\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Controller/ReportController.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\DataFixtures\\\\ORM\\\\LoadReports\\:\\:getRandomChoice\\(\\) never returns string so it can be removed from the return type\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/DataFixtures/ORM/LoadReports.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\DataFixtures\\\\ORM\\\\LoadReports\\:\\:getRandomChoice\\(\\) should return array\\\\|string but returns array\\\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/DataFixtures/ORM/LoadReports.php + + - + message: "#^Method Chill\\\\ReportBundle\\\\DataFixtures\\\\ORM\\\\LoadReports\\:\\:pickChoice\\(\\) has invalid return type Chill\\\\ReportBundle\\\\DataFixtures\\\\ORM\\\\the\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/DataFixtures/ORM/LoadReports.php + + - + message: "#^Strict comparison using \\=\\=\\= between '_other' and Chill\\\\ReportBundle\\\\DataFixtures\\\\ORM\\\\the will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/DataFixtures/ORM/LoadReports.php + + - + message: "#^Strict comparison using \\=\\=\\= between DateTime and null will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/DataFixtures/ORM/LoadReports.php + + - + message: "#^Method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\TreeBuilder\\:\\:getRootNode\\(\\) invoked with 1 parameter, 0 required\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/DependencyInjection/Configuration.php + + - + message: "#^PHPDoc tag @param for parameter \\$scope with type string is incompatible with native type Chill\\\\MainBundle\\\\Entity\\\\Scope\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Entity/Report.php + + - + message: "#^Property Chill\\\\ReportBundle\\\\Entity\\\\Report\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Entity/Report.php + + - + message: "#^Call to method extractOtherValue\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Export/Export/ReportList.php + + - + message: "#^Call to method getChoices\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 2 + path: src/Bundle/ChillReportBundle/Export/Export/ReportList.php + + - + message: "#^Call to method isChecked\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 2 + path: src/Bundle/ChillReportBundle/Export/Export/ReportList.php + + - + message: "#^Call to method isMultiple\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 2 + path: src/Bundle/ChillReportBundle/Export/Export/ReportList.php + + - + message: "#^Call to method render\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Export/Export/ReportList.php + + - + message: "#^Property Chill\\\\ReportBundle\\\\Form\\\\ReportType\\:\\:\\$user \\(Chill\\\\MainBundle\\\\Entity\\\\User\\) does not accept string\\|Stringable\\|Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Form/ReportType.php + + - + message: "#^Call to method getId\\(\\) on an unknown class ChillReportBundle\\:Report\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Timeline/TimelineReportProvider.php + + - + message: "#^Parameter \\$context of method Chill\\\\ReportBundle\\\\Timeline\\\\TimelineReportProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Timeline/TimelineReportProvider.php + + - + message: "#^Parameter \\$entity of method Chill\\\\ReportBundle\\\\Timeline\\\\TimelineReportProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillReportBundle/Timeline/TimelineReportProvider.php + + - + message: "#^Method Chill\\\\TaskBundle\\\\Controller\\\\SingleTaskController\\:\\:createDeleteForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Controller/SingleTaskController.php + + - + message: "#^Method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) invoked with 2 parameters, 1 required\\.$#" + count: 6 + path: src/Bundle/ChillTaskBundle/Controller/SingleTaskController.php + + - + message: "#^Property Chill\\\\TaskBundle\\\\Controller\\\\SingleTaskController\\:\\:\\$centerResolverDispatcher is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Controller/SingleTaskController.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and int will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Controller/SingleTaskController.php + + - + message: "#^If condition is always true\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Controller/TaskController.php + + - + message: "#^Method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) invoked with 2 parameters, 1 required\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Controller/TaskController.php + + - + message: "#^PHPDoc tag @param for parameter \\$task with type Chill\\\\TaskBundle\\\\Controller\\\\AbstractTask is not subtype of native type Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Controller/TaskController.php + + - + message: "#^Parameter \\$task of method Chill\\\\TaskBundle\\\\Controller\\\\TaskController\\:\\:createTransitionForm\\(\\) has invalid type Chill\\\\TaskBundle\\\\Controller\\\\AbstractTask\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Controller/TaskController.php + + - + message: "#^Method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\TreeBuilder\\:\\:getRootNode\\(\\) invoked with 1 parameter, 0 required\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/DependencyInjection/Configuration.php + + - + message: "#^Property Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask\\:\\:\\$currentStates \\(Chill\\\\TaskBundle\\\\Entity\\\\json\\) does not accept array\\\\.$#" count: 1 path: src/Bundle/ChillTaskBundle/Entity/AbstractTask.php - - message: "#^Return type \\(Chill\\\\MainBundle\\\\Entity\\\\Scope\\|null\\) of method Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask\\:\\:getScope\\(\\) should be covariant with return type \\(Chill\\\\MainBundle\\\\Entity\\\\Scope\\) of method Chill\\\\MainBundle\\\\Entity\\\\HasScopeInterface\\:\\:getScope\\(\\)$#" + message: "#^Property Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask\\:\\:\\$currentStates \\(Chill\\\\TaskBundle\\\\Entity\\\\json\\) does not accept default value of type array\\.$#" count: 1 path: src/Bundle/ChillTaskBundle/Entity/AbstractTask.php - - message: "#^Parameter \\#3 \\$entity \\(Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\) of method Chill\\\\ThirdPartyBundle\\\\Controller\\\\ThirdPartyController\\:\\:onPostFetchEntity\\(\\) should be contravariant with parameter \\$entity \\(mixed\\) of method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\CRUDController\\:\\:onPostFetchEntity\\(\\)$#" + message: "#^Property Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask\\:\\:\\$currentStates has unknown class Chill\\\\TaskBundle\\\\Entity\\\\json as its type\\.$#" count: 1 - path: src/Bundle/ChillThirdPartyBundle/Controller/ThirdPartyController.php + path: src/Bundle/ChillTaskBundle/Entity/AbstractTask.php - - message: "#^Parameter \\#1 \\$createdAt \\(DateTimeImmutable\\) of method Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\:\\:setCreatedAt\\(\\) should be contravariant with parameter \\$datetime \\(DateTimeInterface\\) of method Chill\\\\MainBundle\\\\Doctrine\\\\Model\\\\TrackCreationInterface\\:\\:setCreatedAt\\(\\)$#" + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Entity/AbstractTask.php + + - + message: "#^Method Chill\\\\TaskBundle\\\\Entity\\\\RecurringTask\\:\\:getOccurenceStartDate\\(\\) has invalid return type Chill\\\\TaskBundle\\\\Entity\\\\dateinterval\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Entity/RecurringTask.php + + - + message: "#^Method Chill\\\\TaskBundle\\\\Entity\\\\RecurringTask\\:\\:getOccurenceWarningInterval\\(\\) has invalid return type Chill\\\\TaskBundle\\\\Entity\\\\dateinterval\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Entity/RecurringTask.php + + - + message: "#^Parameter \\$occurenceStartDate of method Chill\\\\TaskBundle\\\\Entity\\\\RecurringTask\\:\\:setOccurenceStartDate\\(\\) has invalid type Chill\\\\TaskBundle\\\\Entity\\\\dateinterval\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Entity/RecurringTask.php + + - + message: "#^Parameter \\$occurenceWarningInterval of method Chill\\\\TaskBundle\\\\Entity\\\\RecurringTask\\:\\:setOccurenceWarningInterval\\(\\) has invalid type Chill\\\\TaskBundle\\\\Entity\\\\dateinterval\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Entity/RecurringTask.php + + - + message: "#^Property Chill\\\\TaskBundle\\\\Entity\\\\RecurringTask\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Entity/RecurringTask.php + + - + message: "#^Property Chill\\\\TaskBundle\\\\Entity\\\\RecurringTask\\:\\:\\$occurenceStartDate has unknown class Chill\\\\TaskBundle\\\\Entity\\\\dateinterval as its type\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Entity/RecurringTask.php + + - + message: "#^Property Chill\\\\TaskBundle\\\\Entity\\\\RecurringTask\\:\\:\\$occurenceWarningInterval has unknown class Chill\\\\TaskBundle\\\\Entity\\\\dateinterval as its type\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Entity/RecurringTask.php + + - + message: "#^Property Chill\\\\TaskBundle\\\\Entity\\\\RecurringTask\\:\\:\\$singleTasks is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Entity/RecurringTask.php + + - + message: "#^Method Chill\\\\TaskBundle\\\\Entity\\\\SingleTask\\:\\:getWarningDate\\(\\) should return DateTimeImmutable but returns null\\.$#" + count: 2 + path: src/Bundle/ChillTaskBundle/Entity/SingleTask.php + + - + message: "#^Property Chill\\\\TaskBundle\\\\Entity\\\\SingleTask\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Entity/SingleTask.php + + - + message: "#^Property Chill\\\\TaskBundle\\\\Entity\\\\SingleTask\\:\\:\\$warningInterval \\(DateInterval\\) does not accept string\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Entity/SingleTask.php + + - + message: "#^Strict comparison using \\=\\=\\= between DateInterval and null will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Entity/SingleTask.php + + - + message: "#^Strict comparison using \\=\\=\\= between DateTime and null will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Entity/SingleTask.php + + - + message: "#^Method Chill\\\\TaskBundle\\\\Entity\\\\Task\\\\AbstractTaskPlaceEvent\\:\\:getDatetime\\(\\) has invalid return type Chill\\\\TaskBundle\\\\Entity\\\\Task\\\\datetime_immutable\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Entity/Task/AbstractTaskPlaceEvent.php + + - + message: "#^Parameter \\$datetime of method Chill\\\\TaskBundle\\\\Entity\\\\Task\\\\AbstractTaskPlaceEvent\\:\\:setDatetime\\(\\) has invalid type Chill\\\\TaskBundle\\\\Entity\\\\Task\\\\datetime_immutable\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Entity/Task/AbstractTaskPlaceEvent.php + + - + message: "#^Property Chill\\\\TaskBundle\\\\Entity\\\\Task\\\\AbstractTaskPlaceEvent\\:\\:\\$data \\(string\\) does not accept default value of type array\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Entity/Task/AbstractTaskPlaceEvent.php + + - + message: "#^Property Chill\\\\TaskBundle\\\\Entity\\\\Task\\\\AbstractTaskPlaceEvent\\:\\:\\$datetime \\(Chill\\\\TaskBundle\\\\Entity\\\\Task\\\\datetime_immutable\\) does not accept DateTimeImmutable\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Entity/Task/AbstractTaskPlaceEvent.php + + - + message: "#^Property Chill\\\\TaskBundle\\\\Entity\\\\Task\\\\AbstractTaskPlaceEvent\\:\\:\\$datetime has unknown class Chill\\\\TaskBundle\\\\Entity\\\\Task\\\\datetime_immutable as its type\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Entity/Task/AbstractTaskPlaceEvent.php + + - + message: "#^Property Chill\\\\TaskBundle\\\\Entity\\\\Task\\\\AbstractTaskPlaceEvent\\:\\:\\$id is never written, only read\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Entity/Task/AbstractTaskPlaceEvent.php + + - + message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask\\:\\:getTaskPlaceEvents\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Event/Lifecycle/TaskLifecycleEvent.php + + - + message: "#^Method Knp\\\\Menu\\\\MenuItem\\:\\:setExtras\\(\\) invoked with 2 parameters, 1 required\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Menu/MenuBuilder.php + + - + message: "#^Call to an undefined method Symfony\\\\Contracts\\\\Translation\\\\TranslatorInterface\\:\\:transChoice\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Menu/UserMenuBuilder.php + + - + message: "#^Method Chill\\\\TaskBundle\\\\Repository\\\\SingleTaskRepository\\:\\:findByParameters\\(\\) has invalid return type Chill\\\\TaskBundle\\\\Repository\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Repository/SingleTaskRepository.php + + - + message: "#^Parameter \\$params of method Chill\\\\TaskBundle\\\\Repository\\\\SingleTaskRepository\\:\\:findByParameters\\(\\) has invalid type Chill\\\\TaskBundle\\\\Repository\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Repository/SingleTaskRepository.php + + - + message: "#^Property Chill\\\\TaskBundle\\\\Security\\\\Authorization\\\\AuthorizationEvent\\:\\:\\$subject has unknown class Chill\\\\TaskBundle\\\\Security\\\\Authorization\\\\Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask as its type\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Security/Authorization/AuthorizationEvent.php + + - + message: "#^Property Chill\\\\TaskBundle\\\\Security\\\\Authorization\\\\AuthorizationEvent\\:\\:\\$vote \\(bool\\) does not accept null\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Security/Authorization/AuthorizationEvent.php + + - + message: "#^Method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) invoked with 2 parameters, 1 required\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Security/Authorization/TaskVoter.php + + - + message: "#^Call to method deleteItem\\(\\) on an unknown class Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CacheItempPoolInterface\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Templating/UI/CountNotificationTask.php + + - + message: "#^Call to method getItem\\(\\) on an unknown class Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CacheItempPoolInterface\\.$#" + count: 2 + path: src/Bundle/ChillTaskBundle/Templating/UI/CountNotificationTask.php + + - + message: "#^Call to method save\\(\\) on an unknown class Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CacheItempPoolInterface\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Templating/UI/CountNotificationTask.php + + - + message: "#^Property Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CountNotificationTask\\:\\:\\$cachePool \\(Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CacheItempPoolInterface\\) does not accept Psr\\\\Cache\\\\CacheItemPoolInterface\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Templating/UI/CountNotificationTask.php + + - + message: "#^Property Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CountNotificationTask\\:\\:\\$cachePool has unknown class Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CacheItempPoolInterface as its type\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Templating/UI/CountNotificationTask.php + + - + message: "#^Call to method getData\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 2 + path: src/Bundle/ChillTaskBundle/Timeline/SingleTaskTaskLifeCycleEventTimelineProvider.php + + - + message: "#^Call to method getTask\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Timeline/SingleTaskTaskLifeCycleEventTimelineProvider.php + + - + message: "#^Call to method getTransition\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Timeline/SingleTaskTaskLifeCycleEventTimelineProvider.php + + - + message: "#^Parameter \\$context of method Chill\\\\TaskBundle\\\\Timeline\\\\SingleTaskTaskLifeCycleEventTimelineProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Timeline/SingleTaskTaskLifeCycleEventTimelineProvider.php + + - + message: "#^Parameter \\$entity of method Chill\\\\TaskBundle\\\\Timeline\\\\SingleTaskTaskLifeCycleEventTimelineProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Timeline/SingleTaskTaskLifeCycleEventTimelineProvider.php + + - + message: "#^Call to method getData\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 2 + path: src/Bundle/ChillTaskBundle/Timeline/TaskLifeCycleEventTimelineProvider.php + + - + message: "#^Call to method getTask\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 2 + path: src/Bundle/ChillTaskBundle/Timeline/TaskLifeCycleEventTimelineProvider.php + + - + message: "#^Call to method getTransition\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Timeline/TaskLifeCycleEventTimelineProvider.php + + - + message: "#^Parameter \\$context of method Chill\\\\TaskBundle\\\\Timeline\\\\TaskLifeCycleEventTimelineProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Timeline/TaskLifeCycleEventTimelineProvider.php + + - + message: "#^Parameter \\$entity of method Chill\\\\TaskBundle\\\\Timeline\\\\TaskLifeCycleEventTimelineProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Timeline/TaskLifeCycleEventTimelineProvider.php + + - + message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask\\:\\:getId\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Workflow/TaskWorkflowManager.php + + - + message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Workflow\\\\TaskWorkflowDefinition\\:\\:getAssociatedWorkflowName\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Workflow/TaskWorkflowManager.php + + - + message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Workflow\\\\TaskWorkflowDefinition\\:\\:getWorkflowMetadata\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Workflow/TaskWorkflowManager.php + + - + message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Workflow\\\\TaskWorkflowDefinition\\:\\:isClosed\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Workflow/TaskWorkflowManager.php + + - + message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Workflow\\\\TaskWorkflowDefinition\\:\\:supports\\(\\)\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Workflow/TaskWorkflowManager.php + + - + message: "#^Method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\TreeBuilder\\:\\:getRootNode\\(\\) invoked with 1 parameter, 0 required\\.$#" + count: 1 + path: src/Bundle/ChillThirdPartyBundle/DependencyInjection/Configuration.php + + - + message: "#^PHPDoc tag @return with type DateTime\\|null is not subtype of native type DateTimeImmutable\\|null\\.$#" count: 1 path: src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php - - message: "#^Parameter \\#1 \\$updatedAt \\(DateTimeImmutable\\) of method Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\:\\:setUpdatedAt\\(\\) should be contravariant with parameter \\$datetime \\(DateTimeInterface\\) of method Chill\\\\MainBundle\\\\Doctrine\\\\Model\\\\TrackUpdateInterface\\:\\:setUpdatedAt\\(\\)$#" + message: "#^PHPDoc tag @var for property Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\:\\:\\$categories with type Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdPartyCategory is not subtype of native type Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" count: 1 path: src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php - - message: "#^Parameter \\#3 \\$limit \\(null\\) of method Chill\\\\ThirdPartyBundle\\\\Repository\\\\ThirdPartyRepository\\:\\:findBy\\(\\) should be contravariant with parameter \\$limit \\(int\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" + message: "#^Property Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\:\\:\\$canonicalized is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php + + - + message: "#^Property Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\:\\:\\$createdBy is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php + + - + message: "#^Property Chill\\\\ThirdPartyBundle\\\\Repository\\\\ThirdPartyACLAwareRepository\\:\\:\\$authorizationHelper is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillThirdPartyBundle/Repository/ThirdPartyACLAwareRepository.php + + - + message: "#^Property Chill\\\\ThirdPartyBundle\\\\Repository\\\\ThirdPartyACLAwareRepository\\:\\:\\$security is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillThirdPartyBundle/Repository/ThirdPartyACLAwareRepository.php + + - + message: "#^Argument of an invalid type string supplied for foreach, only iterables are supported\\.$#" count: 1 path: src/Bundle/ChillThirdPartyBundle/Repository/ThirdPartyRepository.php - - message: "#^Parameter \\#4 \\$offset \\(null\\) of method Chill\\\\ThirdPartyBundle\\\\Repository\\\\ThirdPartyRepository\\:\\:findBy\\(\\) should be contravariant with parameter \\$offset \\(int\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" + message: "#^Method Chill\\\\ThirdPartyBundle\\\\Search\\\\ThirdPartySearch\\:\\:renderResult\\(\\) should return string but returns array\\\\.$#" count: 1 - path: src/Bundle/ChillThirdPartyBundle/Repository/ThirdPartyRepository.php + path: src/Bundle/ChillThirdPartyBundle/Search/ThirdPartySearch.php - - message: "#^Parameter \\#2 \\$subject \\(Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\|null\\) of method Chill\\\\ThirdPartyBundle\\\\Security\\\\Voter\\\\ThirdPartyVoter\\:\\:voteOnAttribute\\(\\) should be contravariant with parameter \\$subject \\(mixed\\) of method Symfony\\\\Component\\\\Security\\\\Core\\\\Authorization\\\\Voter\\\\Voter\\:\\:voteOnAttribute\\(\\)$#" + message: "#^Unreachable statement \\- code above always terminates\\.$#" count: 1 path: src/Bundle/ChillThirdPartyBundle/Security/Voter/ThirdPartyVoter.php - - message: "#^Parameter \\#1 \\$document \\(Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject\\) of method Chill\\\\WopiBundle\\\\Service\\\\Wopi\\\\ChillDocumentManager\\:\\:getBasename\\(\\) should be contravariant with parameter \\$document \\(ChampsLibres\\\\WopiLib\\\\Contract\\\\Entity\\\\Document\\) of method ChampsLibres\\\\WopiLib\\\\Contract\\\\Service\\\\DocumentManagerInterface\\:\\:getBasename\\(\\)$#" + message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillWopiBundle/src/Controller/Editor.php + + - + message: "#^Strict comparison using \\=\\=\\= between false and array will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillWopiBundle/src/Service/Wopi/AuthorizationManager.php + + - + message: "#^Default value of the parameter \\#2 \\$properties \\(array\\{\\}\\) of method Chill\\\\WopiBundle\\\\Service\\\\Wopi\\\\ChillDocumentManager\\:\\:write\\(\\) is incompatible with type array\\{content\\: string, size\\: int\\}\\.$#" count: 1 path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillDocumentManager.php - - message: "#^Parameter \\#1 \\$document \\(Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject\\) of method Chill\\\\WopiBundle\\\\Service\\\\Wopi\\\\ChillDocumentManager\\:\\:getCreationDate\\(\\) should be contravariant with parameter \\$document \\(ChampsLibres\\\\WopiLib\\\\Contract\\\\Entity\\\\Document\\) of method ChampsLibres\\\\WopiLib\\\\Contract\\\\Service\\\\DocumentManagerInterface\\:\\:getCreationDate\\(\\)$#" + message: "#^Method ChampsLibres\\\\WopiLib\\\\Contract\\\\Service\\\\WopiInterface\\:\\:checkFileInfo\\(\\) invoked with 4 parameters, 3 required\\.$#" count: 1 - path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillDocumentManager.php - - - - message: "#^Parameter \\#1 \\$document \\(Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject\\) of method Chill\\\\WopiBundle\\\\Service\\\\Wopi\\\\ChillDocumentManager\\:\\:getDocumentId\\(\\) should be contravariant with parameter \\$document \\(ChampsLibres\\\\WopiLib\\\\Contract\\\\Entity\\\\Document\\) of method ChampsLibres\\\\WopiLib\\\\Contract\\\\Service\\\\DocumentManagerInterface\\:\\:getDocumentId\\(\\)$#" - count: 1 - path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillDocumentManager.php - - - - message: "#^Parameter \\#1 \\$document \\(Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject\\) of method Chill\\\\WopiBundle\\\\Service\\\\Wopi\\\\ChillDocumentManager\\:\\:getLastModifiedDate\\(\\) should be contravariant with parameter \\$document \\(ChampsLibres\\\\WopiLib\\\\Contract\\\\Entity\\\\Document\\) of method ChampsLibres\\\\WopiLib\\\\Contract\\\\Service\\\\DocumentManagerInterface\\:\\:getLastModifiedDate\\(\\)$#" - count: 1 - path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillDocumentManager.php + path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillWopi.php diff --git a/phpstan-baseline-level-5.neon b/phpstan-baseline-level-5.neon index 27945c670..34e2825a3 100644 --- a/phpstan-baseline-level-5.neon +++ b/phpstan-baseline-level-5.neon @@ -1,3166 +1,676 @@ parameters: ignoreErrors: - - message: "#^Access to an undefined property Chill\\\\ActivityBundle\\\\Entity\\\\Activity\\:\\:\\$personsAssociated\\.$#" + message: "#^Parameter \\#1 \\$event of method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) expects object, string given\\.$#" count: 1 path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php - - message: "#^Access to an undefined property Chill\\\\ActivityBundle\\\\Entity\\\\Activity\\:\\:\\$personsNotAssociated\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Serializer\\\\SerializerInterface\\:\\:normalize\\(\\)\\.$#" - count: 2 - path: src/Bundle/ChillActivityBundle/Controller/ActivityController.php - - - - message: "#^Method Chill\\\\ActivityBundle\\\\Controller\\\\ActivityReasonCategoryController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Controller/ActivityReasonCategoryController.php - - - - message: "#^Method Chill\\\\ActivityBundle\\\\Controller\\\\ActivityReasonCategoryController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Controller/ActivityReasonCategoryController.php - - - - message: "#^Method Chill\\\\ActivityBundle\\\\Controller\\\\ActivityReasonController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Controller/ActivityReasonController.php - - - - message: "#^Method Chill\\\\ActivityBundle\\\\Controller\\\\ActivityReasonController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Controller/ActivityReasonController.php - - - - message: "#^Else branch is unreachable because previous condition is always true\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/DataFixtures/ORM/LoadActivity.php - - - - message: "#^Strict comparison using \\!\\=\\= between null and Chill\\\\ActivityBundle\\\\Entity\\\\ActivityReason will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/DataFixtures/ORM/LoadActivity.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/DataFixtures/ORM/LoadActivityNotifications.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/DependencyInjection/Configuration.php - - - - message: "#^Argument of an invalid type string supplied for foreach, only iterables are supported\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Entity/ActivityReasonCategory.php - - - - message: "#^Binary operation \"\\.\" between 'ActivityReasonCateg…' and array results in an error\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Entity/ActivityReasonCategory.php - - - - message: "#^Method Chill\\\\ActivityBundle\\\\Entity\\\\ActivityReasonCategory\\:\\:getName\\(\\) should return array but returns string\\.$#" - count: 3 - path: src/Bundle/ChillActivityBundle/Entity/ActivityReasonCategory.php - - - - message: "#^Property Chill\\\\ActivityBundle\\\\Entity\\\\ActivityReasonCategory\\:\\:\\$name \\(string\\) does not accept array\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Entity/ActivityReasonCategory.php - - - - message: "#^Expression on left side of \\?\\? is not nullable\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/EntityListener/ActivityEntityListener.php - - - - message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\ActivityBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Form/ActivityReasonCategoryType.php - - - - message: "#^Parameter \\$resolver of method Chill\\\\ActivityBundle\\\\Form\\\\ActivityReasonCategoryType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\ActivityBundle\\\\Form\\\\OptionsResolverInterface\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Form/ActivityReasonCategoryType.php - - - - message: "#^Method Chill\\\\ActivityBundle\\\\Repository\\\\ActivityACLAwareRepository\\:\\:getWhereClause\\(\\) should return array but returns string\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Repository/ActivityACLAwareRepository.php - - - - message: "#^Expression on left side of \\?\\? is not nullable\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Repository/ActivityReasonRepository.php - - - - message: "#^Parameter \\$context of method Chill\\\\ActivityBundle\\\\Timeline\\\\TimelineActivityProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + message: "#^Parameter \\#1 \\$context of method Chill\\\\ActivityBundle\\\\Timeline\\\\TimelineActivityProvider\\:\\:checkContext\\(\\) expects string, Chill\\\\MainBundle\\\\Timeline\\\\type given\\.$#" count: 1 path: src/Bundle/ChillActivityBundle/Timeline/TimelineActivityProvider.php - - message: "#^Parameter \\$entity of method Chill\\\\ActivityBundle\\\\Timeline\\\\TimelineActivityProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + message: "#^Parameter \\#1 \\$callback of function array_map expects \\(callable\\(Chill\\\\BudgetBundle\\\\Repository\\\\ChargeType\\)\\: mixed\\)\\|null, Closure\\(Chill\\\\BudgetBundle\\\\Entity\\\\ChargeKind\\)\\: int\\|null given\\.$#" count: 1 - path: src/Bundle/ChillActivityBundle/Timeline/TimelineActivityProvider.php + path: src/Bundle/ChillBudgetBundle/Service/Summary/SummaryBudget.php - - message: "#^Result of && is always false\\.$#" - count: 6 - path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\Embeddable\\\\CommentEmbeddable will always evaluate to false\\.$#" + message: "#^Parameter \\#1 \\$callback of function array_map expects \\(callable\\(Chill\\\\BudgetBundle\\\\Repository\\\\ResourceType\\)\\: mixed\\)\\|null, Closure\\(Chill\\\\BudgetBundle\\\\Entity\\\\ResourceKind\\)\\: int\\|null given\\.$#" count: 1 - path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php + path: src/Bundle/ChillBudgetBundle/Service/Summary/SummaryBudget.php - - message: "#^Strict comparison using \\=\\=\\= between null and DateTime will always evaluate to false\\.$#" + message: "#^Parameter \\#2 \\$byUser of class Chill\\\\CalendarBundle\\\\Messenger\\\\Message\\\\InviteUpdateMessage constructor expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" count: 1 - path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php + path: src/Bundle/ChillCalendarBundle/Controller/InviteApiController.php - - message: "#^Strict comparison using \\=\\=\\= between null and Doctrine\\\\Common\\\\Collections\\\\Collection will always evaluate to false\\.$#" + message: "#^Parameter \\#2 \\$byUser of class Chill\\\\CalendarBundle\\\\Messenger\\\\Message\\\\CalendarRemovedMessage constructor expects Chill\\\\MainBundle\\\\Entity\\\\User\\|null, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + count: 1 + path: src/Bundle/ChillCalendarBundle/Messenger/Doctrine/CalendarEntityListener.php + + - + message: "#^Parameter \\#3 \\$byUser of class Chill\\\\CalendarBundle\\\\Messenger\\\\Message\\\\CalendarMessage constructor expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" count: 2 - path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php + path: src/Bundle/ChillCalendarBundle/Messenger/Doctrine/CalendarEntityListener.php - - message: "#^Strict comparison using \\=\\=\\= between null and bool will always evaluate to false\\.$#" + message: "#^Parameter \\#2 \\$byUser of class Chill\\\\CalendarBundle\\\\Messenger\\\\Message\\\\CalendarRangeRemovedMessage constructor expects Chill\\\\MainBundle\\\\Entity\\\\User\\|null, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" count: 1 - path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php + path: src/Bundle/ChillCalendarBundle/Messenger/Doctrine/CalendarRangeEntityListener.php - - message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidityValidator.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillAsideActivityBundle/src/DependencyInjection/Configuration.php - - - - message: "#^Property Chill\\\\AsideActivityBundle\\\\Entity\\\\AsideActivityCategory\\:\\:\\$id is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillAsideActivityBundle/src/Entity/AsideActivityCategory.php - - - - message: "#^Call to method DateTimeImmutable\\:\\:add\\(\\) on a separate line has no effect\\.$#" - count: 1 - path: src/Bundle/ChillAsideActivityBundle/src/Form/AsideActivityFormType.php - - - - message: "#^Call to method DateTimeImmutable\\:\\:setTimezone\\(\\) on a separate line has no effect\\.$#" - count: 1 - path: src/Bundle/ChillAsideActivityBundle/src/Form/AsideActivityFormType.php - - - - message: "#^Call to an undefined method Chill\\\\BudgetBundle\\\\Entity\\\\AbstractElement\\:\\:getId\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Controller/AbstractElementController.php - - - - message: "#^Method Chill\\\\BudgetBundle\\\\Controller\\\\AbstractElementController\\:\\:createDeleteForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Controller/AbstractElementController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/DependencyInjection/Configuration.php - - - - message: "#^Property Chill\\\\BudgetBundle\\\\Entity\\\\AbstractElement\\:\\:\\$startDate \\(DateTimeImmutable\\) does not accept null\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Entity/AbstractElement.php - - - - message: "#^Strict comparison using \\=\\=\\= between 0 and string will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Entity/AbstractElement.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and DateTimeImmutable will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Entity/AbstractElement.php - - - - message: "#^Property Chill\\\\BudgetBundle\\\\Entity\\\\ChargeKind\\:\\:\\$tags is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Entity/ChargeKind.php - - - - message: "#^Property Chill\\\\BudgetBundle\\\\Entity\\\\ResourceKind\\:\\:\\$tags is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Entity/ResourceKind.php - - - - message: "#^PHPDoc tag @param for parameter \\$limit with type mixed is not subtype of native type int\\|null\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Repository/ChargeKindRepository.php - - - - message: "#^PHPDoc tag @param for parameter \\$offset with type mixed is not subtype of native type int\\|null\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Repository/ChargeKindRepository.php - - - - message: "#^PHPDoc tag @param for parameter \\$limit with type mixed is not subtype of native type int\\|null\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Repository/ResourceKindRepository.php - - - - message: "#^PHPDoc tag @param for parameter \\$offset with type mixed is not subtype of native type int\\|null\\.$#" - count: 1 - path: src/Bundle/ChillBudgetBundle/Repository/ResourceKindRepository.php - - - - message: "#^Property Chill\\\\CalendarBundle\\\\Command\\\\AzureGrantAdminConsentAndAcquireToken\\:\\:\\$clientRegistry is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Command/AzureGrantAdminConsentAndAcquireToken.php - - - - message: "#^Property Chill\\\\CalendarBundle\\\\Command\\\\SendTestShortMessageOnCalendarCommand\\:\\:\\$phoneNumberHelper is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Command/SendTestShortMessageOnCalendarCommand.php - - - - message: "#^Strict comparison using \\=\\=\\= between false and DateInterval will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Command/SendTestShortMessageOnCalendarCommand.php - - - - message: "#^Strict comparison using \\=\\=\\= between false and DateTimeImmutable will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Command/SendTestShortMessageOnCalendarCommand.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Form\\\\FormInterface\\:\\:isClicked\\(\\)\\.$#" - count: 4 - path: src/Bundle/ChillCalendarBundle/Controller/CalendarController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Serializer\\\\SerializerInterface\\:\\:normalize\\(\\)\\.$#" + message: "#^Parameter \\#3 \\$byUser of class Chill\\\\CalendarBundle\\\\Messenger\\\\Message\\\\CalendarRangeMessage constructor expects Chill\\\\MainBundle\\\\Entity\\\\User\\|null, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" count: 2 - path: src/Bundle/ChillCalendarBundle/Controller/CalendarController.php + path: src/Bundle/ChillCalendarBundle/Messenger/Doctrine/CalendarRangeEntityListener.php - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Controller/CalendarController.php - - - - message: "#^Method Symfony\\\\Component\\\\HttpFoundation\\\\Session\\\\SessionInterface\\:\\:remove\\(\\) invoked with 2 parameters, 1 required\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Controller/RemoteCalendarConnectAzureController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/DependencyInjection/Configuration.php - - - - message: "#^Property Chill\\\\CalendarBundle\\\\Messenger\\\\Message\\\\CalendarMessage\\:\\:\\$oldInvites \\(array\\\\) does not accept array\\\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/Messenger/Message/CalendarMessage.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraph/EventsOnUserSubscriptionCreator.php - - - - message: "#^Method Chill\\\\CalendarBundle\\\\RemoteCalendar\\\\Connector\\\\MSGraph\\\\OnBehalfOfUserTokenStorage\\:\\:getToken\\(\\) should return TheNetworg\\\\OAuth2\\\\Client\\\\Token\\\\AccessToken but returns League\\\\OAuth2\\\\Client\\\\Token\\\\AccessTokenInterface\\.$#" + message: "#^Parameter \\#1 \\$token of method Chill\\\\CalendarBundle\\\\RemoteCalendar\\\\Connector\\\\MSGraph\\\\OnBehalfOfUserTokenStorage\\:\\:setToken\\(\\) expects TheNetworg\\\\OAuth2\\\\Client\\\\Token\\\\AccessToken, League\\\\OAuth2\\\\Client\\\\Token\\\\AccessTokenInterface given\\.$#" count: 1 path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraph/OnBehalfOfUserTokenStorage.php - - message: "#^Call to method DateTimeImmutable\\:\\:setTimezone\\(\\) on a separate line has no effect\\.$#" - count: 1 - path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraph/RemoteEventConverter.php - - - - message: "#^Expression on left side of \\?\\? is not nullable\\.$#" - count: 2 - path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraphRemoteCalendarConnector.php - - - - message: "#^PHPDoc tag @return has invalid value \\(array\\{\\?id\\: string, \\?lastModifiedDateTime\\: int, \\?changeKey\\: string\\}\\)\\: Unexpected token \"\\:\", expected '\\}' at offset 129$#" - count: 2 - path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraphRemoteCalendarConnector.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" + message: "#^Parameter \\#2 \\$code of class Exception constructor expects int, array\\ given\\.$#" count: 1 path: src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraphRemoteCalendarConnector.php - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Console\\\\Helper\\\\HelperInterface\\:\\:ask\\(\\)\\.$#" + message: "#^Parameter \\#4 \\$offset of method Chill\\\\CalendarBundle\\\\Repository\\\\CalendarRepository\\:\\:findBy\\(\\) expects int\\|null, array\\|null given\\.$#" count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Command/CreateFieldsOnGroupCommand.php + path: src/Bundle/ChillCalendarBundle/Repository/CalendarRepository.php - - message: "#^If condition is always true\\.$#" + message: "#^Parameter \\#1 \\$prefix of function uniqid expects string, int\\<0, max\\> given\\.$#" count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Command/CreateFieldsOnGroupCommand.php + path: src/Bundle/ChillCustomFieldsBundle/Form/Type/ChoicesListType.php - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface will always evaluate to false\\.$#" + message: "#^Parameter \\#2 \\$callback of function array_filter expects callable\\(Symfony\\\\Component\\\\Serializer\\\\Mapping\\\\AttributeMetadataInterface\\)\\: mixed, Closure\\(Symfony\\\\Component\\\\Serializer\\\\Mapping\\\\AttributeMetadata\\)\\: bool given\\.$#" count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Command/CreateFieldsOnGroupCommand.php + path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/DocGenObjectNormalizer.php - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\Controller\\\\CustomFieldController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + message: "#^Parameter \\#3 \\$metadata of method Chill\\\\DocGeneratorBundle\\\\Serializer\\\\Normalizer\\\\DocGenObjectNormalizer\\:\\:normalizeNullData\\(\\) expects Symfony\\\\Component\\\\Serializer\\\\Mapping\\\\ClassMetadata, Symfony\\\\Component\\\\Serializer\\\\Mapping\\\\ClassMetadataInterface given\\.$#" count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldController.php + path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/DocGenObjectNormalizer.php - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\Controller\\\\CustomFieldController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + message: "#^Parameter \\#4 \\$attributes of method Chill\\\\DocGeneratorBundle\\\\Serializer\\\\Normalizer\\\\DocGenObjectNormalizer\\:\\:normalizeNullData\\(\\) expects array\\, array\\ given\\.$#" count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldController.php + path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/DocGenObjectNormalizer.php - - message: "#^Ternary operator condition is always true\\.$#" + message: "#^Parameter \\#5 \\$metadata of method Chill\\\\DocGeneratorBundle\\\\Serializer\\\\Normalizer\\\\DocGenObjectNormalizer\\:\\:normalizeObject\\(\\) expects Symfony\\\\Component\\\\Serializer\\\\Mapping\\\\ClassMetadata, Symfony\\\\Component\\\\Serializer\\\\Mapping\\\\ClassMetadataInterface given\\.$#" count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldController.php + path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/DocGenObjectNormalizer.php - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQuery\\(\\)\\.$#" + message: "#^Parameter \\#6 \\$attributes of method Chill\\\\DocGeneratorBundle\\\\Serializer\\\\Normalizer\\\\DocGenObjectNormalizer\\:\\:normalizeObject\\(\\) expects array\\, array\\ given\\.$#" count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php + path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/DocGenObjectNormalizer.php - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findOneByEntity\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findOneById\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Form\\\\FormInterface\\:\\:isClicked\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\Controller\\\\CustomFieldsGroupController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\Controller\\\\CustomFieldsGroupController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\Controller\\\\CustomFieldsGroupController\\:\\:createMakeDefaultForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php - - - - message: "#^Method Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\:\\:create\\(\\) invoked with 4 parameters, 1\\-3 required\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldChoice\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and array\\|string will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 3 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldChoice.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:render\\(\\) should return string but returns null\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldDate\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldDate.php - - - - message: "#^PHPDoc tag @param for parameter \\$builder with type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface is not subtype of native type Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" - count: 2 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php - - - - message: "#^PHPDoc tag @param for parameter \\$customField with type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField is not subtype of native type Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomField\\.$#" + message: "#^Parameter \\#1 \\$event of method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) expects object, string given\\.$#" count: 4 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldInterface\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php - - - - message: "#^Anonymous function never returns null so it can be removed from the return type\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldLongChoice\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldLongChoice\\\\Option will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php - - - - message: "#^Ternary operator condition is always true\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldLongChoice.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldNumber\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldNumber.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldText\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldText.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:buildOptionsForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\FormTypeInterface\\|null but returns Symfony\\\\Component\\\\Form\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php - - - - message: "#^Parameter \\$builder of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:buildOptionsForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\FormBuilderInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:buildForm\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:deserialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:render\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php - - - - message: "#^Parameter \\$customField of method Chill\\\\CustomFieldsBundle\\\\CustomFields\\\\CustomFieldTitle\\:\\:serialize\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\CustomField\\\\CustomField\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldTitle.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/DependencyInjection/Configuration.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomField\\:\\:getName\\(\\) should return array but returns string\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Entity/CustomField.php - - - - message: "#^Call to method buildOptionsForm\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/CustomFieldType.php - - - - message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\CustomFieldsBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/CustomFieldType.php - - - - message: "#^Parameter \\$resolver of method Chill\\\\CustomFieldsBundle\\\\Form\\\\CustomFieldType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\Form\\\\OptionsResolverInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/CustomFieldType.php - - - - message: "#^Instanceof between Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup and Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/CustomFieldsGroupToIdTransformer.php - - - - message: "#^Instanceof between string and Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomFieldsGroup will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/CustomFieldsGroupToIdTransformer.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\Form\\\\DataTransformer\\\\CustomFieldsGroupToIdTransformer\\:\\:transform\\(\\) should return string but returns int\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/CustomFieldsGroupToIdTransformer.php - - - - message: "#^Call to an undefined method Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomField\\:\\:getLabel\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/JsonCustomFieldToArrayTransformer.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findOneById\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/DataTransformer/JsonCustomFieldToArrayTransformer.php - - - - message: "#^Call to method getCustomFieldByType\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldCompiler\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/Type/CustomFieldType.php - - - - message: "#^Property Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldType\\:\\:\\$customFieldCompiler \\(Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldCompiler\\) does not accept Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/Type/CustomFieldType.php - - - - message: "#^Property Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldType\\:\\:\\$customFieldCompiler has unknown class Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldCompiler as its type\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/Type/CustomFieldType.php - - - - message: "#^Property Chill\\\\CustomFieldsBundle\\\\Form\\\\Type\\\\CustomFieldType\\:\\:\\$om is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Form/Type/CustomFieldType.php - - - - message: "#^Invalid array key type Chill\\\\CustomFieldsBundle\\\\Service\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:getCustomFieldByType\\(\\) has invalid return type Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php - - - - message: "#^Parameter \\$serviceName of method Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:addCustomField\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\Service\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php - - - - message: "#^Parameter \\$type of method Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:addCustomField\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\Service\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php - - - - message: "#^Property Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:\\$container \\(Chill\\\\CustomFieldsBundle\\\\Service\\\\Container\\) does not accept Symfony\\\\Component\\\\DependencyInjection\\\\ContainerInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php - - - - message: "#^Property Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:\\$container has unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\Container as its type\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php - - - - message: "#^Property Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldProvider\\:\\:\\$container is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldProvider.php - - - - message: "#^Call to method deserialize\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldsHelper.php - - - - message: "#^Call to method isEmptyValue\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldsHelper.php - - - - message: "#^Call to method render\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldsHelper.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldsHelper\\:\\:renderCustomField\\(\\) has invalid return type Chill\\\\CustomFieldsBundle\\\\Service\\\\The\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldsHelper.php - - - - message: "#^Property Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldsHelper\\:\\:\\$em is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Service/CustomFieldsHelper.php - - - - message: "#^Method Chill\\\\CustomFieldsBundle\\\\Templating\\\\Twig\\\\CustomFieldRenderingTwig\\:\\:renderWidget\\(\\) should return string but returns Chill\\\\CustomFieldsBundle\\\\Service\\\\The\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Templating/Twig/CustomFieldRenderingTwig.php - - - - message: "#^Parameter \\$customFielsGroup of method Chill\\\\CustomFieldsBundle\\\\Templating\\\\Twig\\\\CustomFieldsGroupRenderingTwig\\:\\:renderWidget\\(\\) has invalid type Chill\\\\CustomFieldsBundle\\\\Templating\\\\Twig\\\\CustomFieldsGroud\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Templating/Twig/CustomFieldsGroupRenderingTwig.php - - - - message: "#^Left side of && is always true\\.$#" - count: 1 - path: src/Bundle/ChillDocGeneratorBundle/Controller/DocGeneratorTemplateController.php - - - - message: "#^PHPDoc tag @return with type void is incompatible with native type Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" - count: 1 - path: src/Bundle/ChillDocGeneratorBundle/Controller/DocGeneratorTemplateController.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and int will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillDocGeneratorBundle/Controller/DocGeneratorTemplateController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillDocGeneratorBundle/DependencyInjection/Configuration.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Doctrine\\\\Common\\\\Collections\\\\Collection will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/CollectionDocGenNormalizer.php - - - - message: "#^Call to an undefined method ReflectionType\\:\\:getName\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/DocGenObjectNormalizer.php - - - - message: "#^Expression on left side of \\?\\? is not nullable\\.$#" - count: 1 - path: src/Bundle/ChillDocGeneratorBundle/Serializer/Normalizer/DocGenObjectNormalizer.php - - - - message: "#^Parameter \\#1 \\$user of method Chill\\\\DocStoreBundle\\\\Entity\\\\Document\\:\\:setUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User\\|null, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" - count: 2 - path: src/Bundle/ChillDocStoreBundle/Controller/DocumentAccompanyingCourseController.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillDocStoreBundle/Controller/DocumentAccompanyingCourseController.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQuery\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillDocStoreBundle/Controller/DocumentCategoryController.php - - - - message: "#^Parameter \\#1 \\$user of method Chill\\\\DocStoreBundle\\\\Entity\\\\Document\\:\\:setUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User\\|null, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" - count: 2 path: src/Bundle/ChillDocStoreBundle/Controller/DocumentPersonController.php - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\Person will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillDocStoreBundle/Controller/DocumentPersonController.php - - - - message: "#^Property Chill\\\\DocStoreBundle\\\\Repository\\\\AccompanyingCourseDocumentRepository\\:\\:\\$em is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillDocStoreBundle/Repository/AccompanyingCourseDocumentRepository.php - - - - message: "#^Property Chill\\\\DocStoreBundle\\\\Repository\\\\DocumentCategoryRepository\\:\\:\\$em is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillDocStoreBundle/Repository/DocumentCategoryRepository.php - - - - message: "#^Instanceof between Chill\\\\DocStoreBundle\\\\Entity\\\\PersonDocument and Chill\\\\DocStoreBundle\\\\Entity\\\\PersonDocument will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillDocStoreBundle/Security/Authorization/PersonDocumentVoter.php - - - - message: "#^Default value of the parameter \\#5 \\$options \\(array\\{\\}\\) of method Chill\\\\DocStoreBundle\\\\Templating\\\\WopiEditTwigExtensionRuntime\\:\\:renderButtonGroup\\(\\) is incompatible with type array\\{small\\: bool\\}\\.$#" - count: 1 - path: src/Bundle/ChillDocStoreBundle/Templating/WopiEditTwigExtensionRuntime.php - - - - message: "#^Property Chill\\\\DocStoreBundle\\\\Templating\\\\WopiEditTwigExtensionRuntime\\:\\:\\$discovery is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillDocStoreBundle/Templating/WopiEditTwigExtensionRuntime.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:countByPerson\\(\\)\\.$#" + message: "#^Parameter \\#1 \\$event of method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) expects object, string given\\.$#" count: 1 path: src/Bundle/ChillEventBundle/Controller/EventController.php - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findByPersonInCircle\\(\\)\\.$#" + message: "#^Parameter \\#1 \\$value of function count expects array\\|Countable, Chill\\\\MainBundle\\\\Entity\\\\Center given\\.$#" count: 1 path: src/Bundle/ChillEventBundle/Controller/EventController.php - - message: "#^Negated boolean expression is always false\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/EventController.php - - - - message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\EventTypeController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/EventTypeController.php - - - - message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\EventTypeController\\:\\:createDeleteForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/EventTypeController.php - - - - message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\EventTypeController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/EventTypeController.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\EventBundle\\\\Entity\\\\Event will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/ParticipationController.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\EventBundle\\\\Entity\\\\Participation will always evaluate to false\\.$#" + message: "#^Parameter \\#1 \\$participations of method Chill\\\\EventBundle\\\\Controller\\\\ParticipationController\\:\\:createEditFormMultiple\\(\\) expects ArrayIterator, Traversable given\\.$#" count: 2 path: src/Bundle/ChillEventBundle/Controller/ParticipationController.php - - message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\RoleController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/RoleController.php + message: "#^Parameter \\#1 \\$callback of function call_user_func expects callable\\(\\)\\: mixed, null given\\.$#" + count: 2 + path: src/Bundle/ChillEventBundle/Form/ChoiceLoader/EventChoiceLoader.php - - message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\RoleController\\:\\:createDeleteForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/RoleController.php - - - - message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\RoleController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/RoleController.php - - - - message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\StatusController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/StatusController.php - - - - message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\StatusController\\:\\:createDeleteForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/StatusController.php - - - - message: "#^Method Chill\\\\EventBundle\\\\Controller\\\\StatusController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Controller/StatusController.php - - - - message: "#^Instanceof between Chill\\\\EventBundle\\\\Entity\\\\Event and Chill\\\\EventBundle\\\\Entity\\\\Event will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Security/Authorization/EventVoter.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Security/Authorization/EventVoter.php - - - - message: "#^Instanceof between Chill\\\\EventBundle\\\\Entity\\\\Participation and Chill\\\\EventBundle\\\\Entity\\\\Participation will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Security/Authorization/ParticipationVoter.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillEventBundle/Security/Authorization/ParticipationVoter.php - - - - message: "#^Parameter \\#2 \\$context \\(string\\) of method Chill\\\\EventBundle\\\\Timeline\\\\TimelineEventProvider\\:\\:getEntityTemplate\\(\\) should be compatible with parameter \\$context \\(Chill\\\\MainBundle\\\\Timeline\\\\type\\) of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineProviderInterface\\:\\:getEntityTemplate\\(\\)$#" - count: 1 - path: src/Bundle/ChillEventBundle/Timeline/TimelineEventProvider.php - - - - message: "#^Parameter \\#1 \\$seconds of function sleep expects int, string given\\.$#" - count: 1 - path: src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php - - - - message: "#^Parameter \\#1 \\$interval of method DateTimeImmutable\\:\\:add\\(\\) expects DateInterval, string\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillJobBundle/src/Entity/Immersion.php - - - - message: "#^Parameter \\#1 \\$object of static method DateTimeImmutable\\:\\:createFromMutable\\(\\) expects DateTime, DateTimeInterface given\\.$#" - count: 1 - path: src/Bundle/ChillJobBundle/src/Entity/Immersion.php - - - - message: "#^Parameter \\#1 \\$interval of method DateTimeImmutable\\:\\:add\\(\\) expects DateInterval, string\\|null given\\.$#" - count: 1 - path: src/Bundle/ChillJobBundle/src/Security/Authorization/CSConnectesVoter.php - - - - message: "#^Parameter \\#1 \\$object of static method DateTimeImmutable\\:\\:createFromMutable\\(\\) expects DateTime, DateTimeInterface given\\.$#" - count: 1 - path: src/Bundle/ChillJobBundle/src/Security/Authorization/CSConnectesVoter.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQueryBuilder\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/AbstractCRUDController.php - - - - message: "#^PHPDoc tag @param for parameter \\$postedDataContext with type string is incompatible with native type array\\.$#" - count: 1 + message: "#^Parameter \\#2 \\$previous of class Symfony\\\\Component\\\\HttpKernel\\\\Exception\\\\BadRequestHttpException constructor expects Throwable\\|null, int given\\.$#" + count: 3 path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php - - message: "#^PHPDoc tag @param has invalid value \\(mixed id\\)\\: Unexpected token \"id\", expected variable at offset 956$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php - - - - message: "#^PHPDoc tag @param has invalid value \\(string action\\)\\: Unexpected token \"action\", expected variable at offset 929$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php - - - - message: "#^PHPDoc tag @return with type void is incompatible with native type Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and object will always evaluate to false\\.$#" + message: "#^Parameter \\#3 \\$code of class Symfony\\\\Component\\\\HttpKernel\\\\Exception\\\\BadRequestHttpException constructor expects int, Symfony\\\\Component\\\\Serializer\\\\Exception\\\\NotEncodableValueException given\\.$#" count: 2 path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQueryBuilder\\(\\)\\.$#" + message: "#^Parameter \\#3 \\$code of class Symfony\\\\Component\\\\HttpKernel\\\\Exception\\\\BadRequestHttpException constructor expects int, Symfony\\\\Component\\\\Serializer\\\\Exception\\\\UnexpectedValueException given\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/CRUD/Controller/ApiController.php + + - + message: "#^Parameter \\#2 \\$role of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\AuthorizationHelper\\:\\:getReachableCenters\\(\\) expects string, Symfony\\\\Component\\\\Security\\\\Core\\\\Role\\\\Role given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php - - message: "#^Call to method getQuery\\(\\) on an unknown class Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\type\\.$#" + message: "#^Parameter \\#3 \\$formClass of method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\CRUDController\\:\\:createFormFor\\(\\) expects string\\|null, Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\type\\|null given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php - - message: "#^Method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\CRUDController\\:\\:index\\(\\) has invalid return type Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\type\\.$#" + message: "#^Parameter \\#3 \\$scope of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\AuthorizationHelper\\:\\:getReachableCenters\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\Scope\\|null, Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\Scope\\|null given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php - - message: "#^Method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\CRUDController\\:\\:queryEntities\\(\\) has invalid return type Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\type\\.$#" + message: "#^Parameter \\#1 \\$name of method Chill\\\\MainBundle\\\\Entity\\\\Country\\:\\:setName\\(\\) expects string, array\\ given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php + path: src/Bundle/ChillMainBundle/Command/LoadCountriesCommand.php - - message: "#^PHPDoc tag @throws with type Symfony\\\\Component\\\\Security\\\\Core\\\\Exception\\\\AccessDeniedHttpException is not subtype of Throwable$#" + message: "#^Parameter \\#4 \\.\\.\\.\\$values of function sprintf expects bool\\|float\\|int\\|string\\|null, Chill\\\\MainBundle\\\\Entity\\\\the given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php + path: src/Bundle/ChillMainBundle/Command/LoadPostalCodesCommand.php - - message: "#^Parameter \\$formClass of method Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\CRUDController\\:\\:formCreateAction\\(\\) has invalid type Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php - - - - message: "#^Constant Chill\\\\MainBundle\\\\CRUD\\\\Routing\\\\CRUDRoutesLoader\\:\\:ALL_INDEX_METHODS is unused\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Routing/CRUDRoutesLoader.php - - - - message: "#^Constant Chill\\\\MainBundle\\\\CRUD\\\\Routing\\\\CRUDRoutesLoader\\:\\:ALL_SINGLE_METHODS is unused\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Routing/CRUDRoutesLoader.php - - - - message: "#^Strict comparison using \\=\\=\\= between 'CRUD' and null will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Routing/CRUDRoutesLoader.php - - - - message: "#^Strict comparison using \\=\\=\\= between 'collection' and 'single'\\|null will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/CRUD/Routing/CRUDRoutesLoader.php - - - - message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findOneByName\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Command/ChillImportUsersCommand.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Command\\\\ChillImportUsersCommand\\:\\:getCenters\\(\\) should return array\\ but returns null\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Command/ChillImportUsersCommand.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Command\\\\ChillUserSendRenewPasswordCodeCommand\\:\\:\\$output is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Command/ChillUserSendRenewPasswordCodeCommand.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Console\\\\Helper\\\\HelperInterface\\:\\:askHiddenResponse\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Command/SetPasswordCommand.php - - - - message: "#^Instanceof between Chill\\\\MainBundle\\\\Export\\\\DirectExportInterface and Chill\\\\MainBundle\\\\Export\\\\DirectExportInterface will always evaluate to true\\.$#" + message: "#^Parameter \\#1 \\$alias of method Chill\\\\MainBundle\\\\Export\\\\ExportManager\\:\\:getExport\\(\\) expects string, Symfony\\\\Component\\\\HttpFoundation\\\\Request given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Controller/ExportController.php - - message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" + message: "#^Parameter \\#3 \\$alias of method Chill\\\\MainBundle\\\\Controller\\\\ExportController\\:\\:exportFormStep\\(\\) expects string, Symfony\\\\Component\\\\HttpFoundation\\\\Request given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Controller/ExportController.php - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQueryBuilder\\(\\)\\.$#" + message: "#^Parameter \\#3 \\$alias of method Chill\\\\MainBundle\\\\Controller\\\\ExportController\\:\\:formatterFormStep\\(\\) expects string, Symfony\\\\Component\\\\HttpFoundation\\\\Request given\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/ExportController.php + + - + message: "#^Parameter \\#3 \\$alias of method Chill\\\\MainBundle\\\\Controller\\\\ExportController\\:\\:forwardToGenerate\\(\\) expects string, Symfony\\\\Component\\\\HttpFoundation\\\\Request given\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/ExportController.php + + - + message: "#^Parameter \\#3 \\$alias of method Chill\\\\MainBundle\\\\Controller\\\\ExportController\\:\\:selectCentersStep\\(\\) expects string, Symfony\\\\Component\\\\HttpFoundation\\\\Request given\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/ExportController.php + + - + message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Repository\\\\NotificationRepository\\:\\:countUnreadByUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/NotificationApiController.php + + - + message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Repository\\\\NotificationRepository\\:\\:findUnreadByUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/NotificationApiController.php + + - + message: "#^Parameter \\#1 \\$addressee of method Chill\\\\MainBundle\\\\Repository\\\\NotificationRepository\\:\\:countAllForAttendee\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/NotificationController.php + + - + message: "#^Parameter \\#1 \\$addressee of method Chill\\\\MainBundle\\\\Repository\\\\NotificationRepository\\:\\:findAllForAttendee\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/NotificationController.php + + - + message: "#^Parameter \\#1 \\$sender of method Chill\\\\MainBundle\\\\Repository\\\\NotificationRepository\\:\\:countAllForSender\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/NotificationController.php + + - + message: "#^Parameter \\#1 \\$sender of method Chill\\\\MainBundle\\\\Repository\\\\NotificationRepository\\:\\:findAllForSender\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/NotificationController.php + + - + message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Repository\\\\NotificationRepository\\:\\:countUnreadByUserWhereAddressee\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/NotificationController.php + + - + message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Repository\\\\NotificationRepository\\:\\:countUnreadByUserWhereSender\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/NotificationController.php + + - + message: "#^Parameter \\#1 \\$event of method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) expects object, string given\\.$#" + count: 4 + path: src/Bundle/ChillMainBundle/Controller/PasswordController.php + + - + message: "#^Parameter \\#1 \\$token of class Chill\\\\MainBundle\\\\Security\\\\PasswordRecover\\\\PasswordRecoverEvent constructor expects Chill\\\\MainBundle\\\\Security\\\\PasswordRecover\\\\type\\|null, string given\\.$#" count: 2 path: src/Bundle/ChillMainBundle/Controller/PasswordController.php - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findOneByUsernameCanonical\\(\\)\\.$#" - count: 1 + message: "#^Parameter \\#3 \\$ip of class Chill\\\\MainBundle\\\\Security\\\\PasswordRecover\\\\PasswordRecoverEvent constructor expects Chill\\\\MainBundle\\\\Security\\\\PasswordRecover\\\\type\\|null, string\\|null given\\.$#" + count: 4 path: src/Bundle/ChillMainBundle/Controller/PasswordController.php - - message: "#^Method Chill\\\\MainBundle\\\\Controller\\\\PasswordController\\:\\:passwordForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/PasswordController.php - - - - message: "#^PHPDoc tag @param for parameter \\$permissionsGroup with type mixed is not subtype of native type Chill\\\\MainBundle\\\\Entity\\\\PermissionsGroup\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQuery\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/PostalCodeController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\HttpFoundation\\\\Session\\\\SessionInterface\\:\\:getFlashBag\\(\\)\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Controller/SavedExportController.php - - - - message: "#^PHPDoc tag @var for variable \\$variable contains unknown class Chill\\\\MainBundle\\\\Controller\\\\Chill\\\\MainBundle\\\\Search\\\\HasAdvancedSearchFormInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/SearchController.php - - - - message: "#^PHPDoc tag @var for variable \\$variable contains unknown class Chill\\\\MainBundle\\\\Controller\\\\Chill\\\\MainBundle\\\\Search\\\\SearchProvider\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Controller/SearchController.php - - - - message: "#^Variable \\$variable in PHPDoc tag @var does not match assigned variable \\$search\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Controller/SearchController.php - - - - message: "#^Variable \\$variable in PHPDoc tag @var does not match assigned variable \\$searchProvider\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Controller/SearchController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\:\\:getGroupCenters\\(\\)\\.$#" + message: "#^Parameter \\#1 \\$context of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineBuilder\\:\\:countItems\\(\\) expects Chill\\\\MainBundle\\\\Timeline\\\\unknown, string given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Controller/TimelineCenterController.php - - message: "#^Property Chill\\\\MainBundle\\\\DataFixtures\\\\ORM\\\\LoadAddressReferences\\:\\:\\$container is never read, only written\\.$#" + message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\:\\:addSubscriberToFinal\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/DataFixtures/ORM/LoadAddressReferences.php + path: src/Bundle/ChillMainBundle/Controller/WorkflowApiController.php - - message: "#^Property Chill\\\\MainBundle\\\\DataFixtures\\\\ORM\\\\LoadLocationType\\:\\:\\$container is never read, only written\\.$#" + message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\:\\:addSubscriberToStep\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/DataFixtures/ORM/LoadLocationType.php + path: src/Bundle/ChillMainBundle/Controller/WorkflowApiController.php - - message: "#^Property Chill\\\\MainBundle\\\\DataFixtures\\\\ORM\\\\LoadUsers\\:\\:\\$container is never read, only written\\.$#" + message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\:\\:isUserSubscribedToFinal\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/DataFixtures/ORM/LoadUsers.php + path: src/Bundle/ChillMainBundle/Controller/WorkflowApiController.php - - message: "#^Parameter \\$factory of method Chill\\\\MainBundle\\\\DependencyInjection\\\\ChillMainExtension\\:\\:addWidgetFactory\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\WidgetFactoryInterface\\.$#" + message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\:\\:isUserSubscribedToStep\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/ChillMainExtension.php + path: src/Bundle/ChillMainBundle/Controller/WorkflowApiController.php - - message: "#^Offset 'queries' does not exist on array\\{scheme\\: 'ovh', host\\?\\: string, port\\?\\: int\\<0, 65535\\>, user\\?\\: string, pass\\?\\: string, path\\?\\: string, query\\?\\: string, fragment\\?\\: string\\}\\.$#" - count: 5 - path: src/Bundle/ChillMainBundle/DependencyInjection/CompilerPass/ShortMessageCompilerPass.php - - - - message: "#^Offset 'queries' does not exist on array\\{scheme\\?\\: string, host\\?\\: string, port\\?\\: int\\<0, 65535\\>, user\\?\\: string, pass\\?\\: string, path\\?\\: string, query\\?\\: string, fragment\\?\\: string\\}\\|false\\.$#" + message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\:\\:removeSubscriberToFinal\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/CompilerPass/ShortMessageCompilerPass.php + path: src/Bundle/ChillMainBundle/Controller/WorkflowApiController.php - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:canBeUnset\\(\\)\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php + message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow\\:\\:removeSubscriberToStep\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/WorkflowApiController.php - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:children\\(\\)\\.$#" - count: 3 - path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php - - - - message: "#^Method Chill\\\\MainBundle\\\\DependencyInjection\\\\Configuration\\:\\:getWidgetFactories\\(\\) has invalid return type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\WidgetFactoryInterface\\.$#" + message: "#^Parameter \\#1 \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Configuration\\:\\:filterWidgetByPlace\\(\\) expects string, Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\type given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php - - message: "#^PHPDoc tag @param has invalid value \\(WidgetFactoryInterface\\[\\]\\)\\: Unexpected token \"\\\\n \", expected variable at offset 42$#" + message: "#^Parameter \\#1 \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Configuration\\:\\:getWidgetAliasesbyPlace\\(\\) expects Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\type, string given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php - - message: "#^Parameter \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Configuration\\:\\:getWidgetAliasesbyPlace\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\type\\.$#" + message: "#^Parameter \\#2 \\$array of function implode expects array\\|null, Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\type given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php - - message: "#^Parameter \\$widgetFactories of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Configuration\\:\\:setWidgetFactories\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\WidgetFactoryInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Configuration.php - - - - message: "#^Call to an undefined method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:getAllowedPlaces\\(\\)\\.$#" - count: 3 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php - - - - message: "#^Instanceof between Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\HasWidgetFactoriesExtensionInterface and Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\HasWidgetFactoriesExtensionInterface will always evaluate to true\\.$#" + message: "#^Parameter \\#2 \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:createDefinition\\(\\) expects Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type, string given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php - - message: "#^Method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\AbstractWidgetsCompilerPass\\:\\:isPlaceAllowedForWidget\\(\\) has invalid return type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\unknown\\.$#" + message: "#^Parameter \\#3 \\$order of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:createDefinition\\(\\) expects Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type, float given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php - - message: "#^Method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\AbstractWidgetsCompilerPass\\:\\:isPlaceAllowedForWidget\\(\\) should return Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\unknown but returns false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php - - - - message: "#^Method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\AbstractWidgetsCompilerPass\\:\\:isPlaceAllowedForWidget\\(\\) should return Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\unknown but returns true\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php - - - - message: "#^Negated boolean expression is always false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/AbstractWidgetsCompilerPass.php - - - - message: "#^Parameter \\$order of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\AbstractWidgetFactory\\:\\:createDefinition\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" + message: "#^Parameter \\#2 \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:getServiceId\\(\\) expects string, Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/AbstractWidgetFactory.php - - message: "#^Parameter \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\AbstractWidgetFactory\\:\\:createDefinition\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" + message: "#^Parameter \\#3 \\$order of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:getServiceId\\(\\) expects float, Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/AbstractWidgetFactory.php - - message: "#^Parameter \\$order of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:createDefinition\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/WidgetFactoryInterface.php - - - - message: "#^Parameter \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/WidgetFactoryInterface.php - - - - message: "#^Parameter \\$place of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\:\\:createDefinition\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/Factory/WidgetFactoryInterface.php - - - - message: "#^PHPDoc tag @param for parameter \\$factory with type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\WidgetFactoryInterface is not subtype of native type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\WidgetFactoryInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/HasWidgetFactoriesExtensionInterface.php - - - - message: "#^Parameter \\$factory of method Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\HasWidgetFactoriesExtensionInterface\\:\\:addWidgetFactory\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\WidgetFactoryInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/DependencyInjection/Widget/HasWidgetFactoriesExtensionInterface.php - - - - message: "#^Instanceof between DateTime and DateTime will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Address.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\Address\\:\\:\\$validTo \\(DateTime\\|null\\) does not accept DateTimeInterface\\|null\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Address.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Entity\\\\AddressReference\\:\\:setPostcode\\(\\) should return Chill\\\\MainBundle\\\\Entity\\\\Address but returns \\$this\\(Chill\\\\MainBundle\\\\Entity\\\\AddressReference\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/AddressReference.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\AddressReference\\:\\:\\$addressCanonical is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/AddressReference.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\GeographicalUnit\\:\\:\\$geom is unused\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/GeographicalUnit.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\GeographicalUnit\\:\\:\\$unitRefId is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/GeographicalUnit.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Entity\\\\Language\\:\\:getName\\(\\) should return string but returns array\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Language.php - - - - message: "#^PHPDoc tag @param has invalid value \\(string array \\$name\\)\\: Unexpected token \"array\", expected variable at offset 49$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Language.php - - - - message: "#^PHPDoc tag @var for property Chill\\\\MainBundle\\\\Entity\\\\Language\\:\\:\\$name with type string is incompatible with native type array\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Language.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\Location\\:\\:\\$createdAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\|null\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Location.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\Location\\:\\:\\$updatedAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\|null\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Location.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\Notification\\:\\:\\$updatedAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Notification.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\NotificationComment\\:\\:\\$createdAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/NotificationComment.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\NotificationComment\\:\\:\\$updateAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/NotificationComment.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\PermissionsGroup\\:\\:\\$groupCenters is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/PermissionsGroup.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\PostalCode\\:\\:\\$canonical is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/PostalCode.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\PostalCode\\:\\:\\$deletedAt is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/PostalCode.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Entity\\\\RoleScope\\:\\:\\$permissionsGroups is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/RoleScope.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and array will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/User.php - - - - message: "#^Call to an undefined method Traversable\\<\\(int\\|string\\), mixed\\>\\:\\:current\\(\\)\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflow.php - - - - message: "#^Call to an undefined method Traversable\\<\\(int\\|string\\), mixed\\>\\:\\:next\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflow.php - - - - message: "#^Call to an undefined method Traversable\\<\\(int\\|string\\), mixed\\>\\:\\:rewind\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflow.php - - - - message: "#^Call to an undefined method Traversable\\<\\(int\\|string\\), mixed\\>\\:\\:valid\\(\\)\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflow.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflowStep.php - - - - message: "#^Call to an undefined method Chill\\\\MainBundle\\\\Export\\\\ExportElementInterface\\:\\:requiredRole\\(\\)\\.$#" + message: "#^Parameter \\#1 \\$iterator of function iterator_to_array expects Traversable, array\\ given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Export/ExportManager.php - - message: "#^Call to function is_iterable\\(\\) with array will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/ExportManager.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and array\\|string will always evaluate to false\\.$#" + message: "#^Parameter \\#2 \\$nbAggregators of method Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\CSVFormatter\\:\\:appendAggregatorForm\\(\\) expects string, int\\<0, max\\> given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Export/Formatter/CSVFormatter.php - - message: "#^Variable \\$data in PHPDoc tag @var does not match assigned variable \\$contentData\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/CSVFormatter.php - - - - message: "#^Parameter \\#2 \\$exportAlias \\(Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\) of method Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\CSVListFormatter\\:\\:buildForm\\(\\) should be compatible with parameter \\$exportAlias \\(string\\) of method Chill\\\\MainBundle\\\\Export\\\\FormatterInterface\\:\\:buildForm\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/CSVListFormatter.php - - - - message: "#^Parameter \\$exportAlias of method Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\CSVListFormatter\\:\\:buildForm\\(\\) has invalid type Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/CSVListFormatter.php - - - - message: "#^Parameter \\#2 \\$exportAlias \\(Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\) of method Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\CSVPivotedListFormatter\\:\\:buildForm\\(\\) should be compatible with parameter \\$exportAlias \\(string\\) of method Chill\\\\MainBundle\\\\Export\\\\FormatterInterface\\:\\:buildForm\\(\\)$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/CSVPivotedListFormatter.php - - - - message: "#^Parameter \\$exportAlias of method Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\CSVPivotedListFormatter\\:\\:buildForm\\(\\) has invalid type Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/CSVPivotedListFormatter.php - - - - message: "#^Access to offset 'format' on an unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\.$#" + message: "#^Parameter \\#2 \\$array of function array_map expects array, Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php - - message: "#^Access to offset mixed on an unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\.$#" + message: "#^Parameter \\#2 \\$nbAggregators of method Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:appendAggregatorForm\\(\\) expects string, int\\<0, max\\> given\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + + - + message: "#^Parameter \\#1 \\$callback of function call_user_func expects callable\\(\\)\\: mixed, null given\\.$#" count: 2 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + path: src/Bundle/ChillMainBundle/Form/ChoiceLoader/PostalCodeChoiceLoader.php - - message: "#^Iterating over an object of an unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\.$#" - count: 3 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$aggregatorsData \\(Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\) does not accept array\\.$#" + message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Embeddable\\\\PrivateCommentEmbeddable\\:\\:getCommentForUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + path: src/Bundle/ChillMainBundle/Form/DataMapper/PrivateCommentDataMapper.php - - message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$aggregatorsData has unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type as its type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$formatterData \\(Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\) does not accept array\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$formatterData has unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type as its type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$result \\(Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type\\) does not accept array\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\SpreadSheetFormatter\\:\\:\\$result has unknown class Chill\\\\MainBundle\\\\Export\\\\Formatter\\\\type as its type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php - - - - message: "#^Instanceof between string and DateTimeInterface will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadsheetListFormatter.php - - - - message: "#^PHPDoc tag @var for property Chill\\\\MainBundle\\\\Export\\\\Helper\\\\ExportAddressHelper\\:\\:\\$unitNamesKeysCache contains unresolvable type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Helper/ExportAddressHelper.php - - - - message: "#^PHPDoc tag @var for property Chill\\\\MainBundle\\\\Export\\\\Helper\\\\ExportAddressHelper\\:\\:\\$unitNamesKeysCache with type mixed is not subtype of native type array\\|null\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Export/Helper/ExportAddressHelper.php - - - - message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\Address and Chill\\\\MainBundle\\\\Entity\\\\Address will always evaluate to true\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Form/DataMapper/AddressDataMapper.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\Address will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/DataMapper/AddressDataMapper.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Form/DataTransformer/IdToEntityDataTransformer.php - - - - message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/LocationFormType.php - - - - message: "#^Parameter \\$resolver of method Chill\\\\MainBundle\\\\Form\\\\LocationFormType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/LocationFormType.php - - - - message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/PermissionsGroupType.php - - - - message: "#^Parameter \\$resolver of method Chill\\\\MainBundle\\\\Form\\\\PermissionsGroupType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/PermissionsGroupType.php - - - - message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/ScopeType.php - - - - message: "#^Parameter \\$resolver of method Chill\\\\MainBundle\\\\Form\\\\ScopeType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/ScopeType.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Form\\\\Type\\\\ChillPhoneNumberType\\:\\:\\$phoneNumberUtil is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/Type/ChillPhoneNumberType.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\:\\:getId\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/Type/CommentType.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and array\\\\|Chill\\\\MainBundle\\\\Entity\\\\User will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/Type/DataTransformer/EntityToJsonTransformer.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/Type/DataTransformer/ObjectToIdTransformer.php - - - - message: "#^Call to function is_int\\(\\) with int will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/Type/DataTransformer/PostalCodeToIdTransformer.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Form\\\\Type\\\\Select2CountryType\\:\\:\\$requestStack is never read, only written\\.$#" + message: "#^Parameter \\#1 \\$em of class Chill\\\\MainBundle\\\\Form\\\\Type\\\\DataTransformer\\\\ObjectToIdTransformer constructor expects Doctrine\\\\ORM\\\\EntityManagerInterface, Doctrine\\\\Persistence\\\\ObjectManager given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Form/Type/Select2CountryType.php - - message: "#^Call to an undefined method Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\:\\:replaceDefaults\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Form/Type/Select2EntityType.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Form\\\\Type\\\\Select2LanguageType\\:\\:\\$requestStack is never read, only written\\.$#" + message: "#^Parameter \\#1 \\$em of class Chill\\\\MainBundle\\\\Form\\\\Type\\\\DataTransformer\\\\MultipleObjectsToIdTransformer constructor expects Doctrine\\\\ORM\\\\EntityManagerInterface, Doctrine\\\\Persistence\\\\ObjectManager given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Form/Type/Select2LanguageType.php - - message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" + message: "#^Parameter \\#1 \\$translatableStrings of method Chill\\\\MainBundle\\\\Templating\\\\TranslatableStringHelper\\:\\:localize\\(\\) expects array, string given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Form/UserType.php + path: src/Bundle/ChillMainBundle/Form/Type/Select2LanguageType.php - - message: "#^Parameter \\$resolver of method Chill\\\\MainBundle\\\\Form\\\\UserType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\Form\\\\OptionsResolverInterface\\.$#" + message: "#^Parameter \\#1 \\$datetime of class DateTime constructor expects string, Chill\\\\MainBundle\\\\Search\\\\type given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Form/UserType.php + path: src/Bundle/ChillMainBundle/Search/AbstractSearch.php - - message: "#^Property Chill\\\\MainBundle\\\\Notification\\\\Email\\\\NotificationMailer\\:\\:\\$translator is never read, only written\\.$#" + message: "#^Parameter \\#4 \\$paginator of method Chill\\\\MainBundle\\\\Search\\\\SearchApi\\:\\:fetchRawResult\\(\\) expects Chill\\\\MainBundle\\\\Pagination\\\\Paginator, Chill\\\\MainBundle\\\\Pagination\\\\PaginatorInterface given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Notification/Email/NotificationMailer.php + path: src/Bundle/ChillMainBundle/Search/SearchApi.php - - message: "#^Property Chill\\\\MainBundle\\\\Notification\\\\NotificationHandlerManager\\:\\:\\$em is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Notification/NotificationHandlerManager.php - - - - message: "#^Strict comparison using \\=\\=\\= between 0 and float will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Pagination/Paginator.php - - - - message: "#^PHPDoc tag @param for parameter \\$phoneNumber with type string is incompatible with native type libphonenumber\\\\PhoneNumber\\|null\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Phonenumber/PhonenumberHelper.php - - - - message: "#^Expression on left side of \\?\\? is not nullable\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Phonenumber/Templating.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Repository\\\\GeographicalUnitRepository\\:\\:findBy\\(\\) should return Chill\\\\MainBundle\\\\Entity\\\\GeographicalUnit\\|null but returns array\\\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Repository/GeographicalUnitRepository.php - - - - message: "#^Return type \\(Chill\\\\MainBundle\\\\Entity\\\\GeographicalUnit\\|null\\) of method Chill\\\\MainBundle\\\\Repository\\\\GeographicalUnitRepository\\:\\:findBy\\(\\) should be compatible with return type \\(array\\\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findBy\\(\\)$#" - count: 2 - path: src/Bundle/ChillMainBundle/Repository/GeographicalUnitRepository.php - - - - message: "#^The @implements tag of class Chill\\\\MainBundle\\\\Repository\\\\SavedExportRepository describes Doctrine\\\\Persistence\\\\ObjectRepository but the class implements\\: Chill\\\\MainBundle\\\\Repository\\\\SavedExportRepositoryInterface$#" - count: 1 - path: src/Bundle/ChillMainBundle/Repository/SavedExportRepository.php - - - - message: "#^Interface Chill\\\\MainBundle\\\\Repository\\\\SavedExportRepositoryInterface has @implements tag, but can not implement any interface, must extend from it\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Repository/SavedExportRepositoryInterface.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Routing\\\\MenuComposer\\:\\:\\$routeCollection is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Routing/MenuComposer.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Routing\\\\MenuTwig\\:\\:\\$container is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Routing/MenuTwig.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Search\\\\SearchApiNoQueryException\\:\\:\\$parameters is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Search/SearchApiNoQueryException.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Search\\\\SearchApiNoQueryException\\:\\:\\$pattern is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Search/SearchApiNoQueryException.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Search\\\\SearchApiNoQueryException\\:\\:\\$types is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Search/SearchApiNoQueryException.php - - - - message: "#^Else branch is unreachable because previous condition is always true\\.$#" + message: "#^Parameter \\#2 \\$callback of function uasort expects callable\\(Chill\\\\MainBundle\\\\Search\\\\HasAdvancedSearchForm, Chill\\\\MainBundle\\\\Search\\\\HasAdvancedSearchForm\\)\\: int, Closure\\(Chill\\\\MainBundle\\\\Search\\\\SearchInterface, Chill\\\\MainBundle\\\\Search\\\\SearchInterface\\)\\: \\-1\\|0\\|1 given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Search/SearchProvider.php - - message: "#^If condition is always true\\.$#" + message: "#^Parameter \\#2 \\$subject of function preg_match_all expects string, Chill\\\\MainBundle\\\\Search\\\\type given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Search/SearchProvider.php - - message: "#^Parameter \\$subject of method Chill\\\\MainBundle\\\\Search\\\\SearchProvider\\:\\:extractDomain\\(\\) has invalid type Chill\\\\MainBundle\\\\Search\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Search/SearchProvider.php - - - - message: "#^Strict comparison using \\!\\=\\= between null and string will always evaluate to true\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Search/SearchProvider.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\:\\:getGroupCenters\\(\\)\\.$#" + message: "#^Parameter \\#1 \\$object of function get_class expects object, array\\ given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php - - message: "#^Empty array passed to foreach\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php - - - - message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\AuthorizationHelper\\:\\:userHasAccessForCenter\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Workflow\\\\EntityWorkflowHandlerInterface\\:\\:getDeletionRoles\\(\\) invoked with 1 parameter, 0 required\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Authorization/WorkflowEntityDeletionVoter.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and array\\\\|Chill\\\\MainBundle\\\\Entity\\\\Center will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Resolver/CenterResolverManager.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Resolver/CenterResolverManager.php - - - - message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\HasCenterInterface and Chill\\\\MainBundle\\\\Entity\\\\HasCenterInterface will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Resolver/DefaultCenterResolver.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Resolver/DefaultCenterResolver.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Resolver/DefaultScopeResolver.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\ResolverTwigExtension\\:\\:resolveCenter\\(\\) has invalid return type Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\Center\\.$#" - count: 2 - path: src/Bundle/ChillMainBundle/Security/Resolver/ResolverTwigExtension.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\ResolverTwigExtension\\:\\:resolveCenter\\(\\) should return array\\\\|Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\Center\\|null but returns array\\\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Resolver/ResolverTwigExtension.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Security\\\\Resolver\\\\ScopeResolverDispatcher\\:\\:resolveScope\\(\\) invoked with 0 parameters, 1\\-2 required\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/Resolver/ResolverTwigExtension.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Security\\\\RoleProvider\\:\\:getRoleTitle\\(\\) should return string but returns null\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Security/RoleProvider.php - - - - message: "#^Constant Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\AddressNormalizer\\:\\:NULL_POSTCODE_COUNTRY is unused\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php - - - - message: "#^Constant Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\AddressNormalizer\\:\\:NULL_VALUE is unused\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php - - - - message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\Address and Chill\\\\MainBundle\\\\Entity\\\\Address will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/AddressNormalizer.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\Embeddable\\\\CommentEmbeddable will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/CommentEmbeddableDocGenNormalizer.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\DateNormalizer\\:\\:normalize\\(\\) should return array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|null but return statement is missing\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DateNormalizer.php - - - - message: "#^Instanceof between Doctrine\\\\ORM\\\\Mapping\\\\ClassMetadata\\ and Doctrine\\\\ORM\\\\Mapping\\\\ClassMetadata will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DoctrineExistingEntityNormalizer.php - - - - message: "#^Strict comparison using \\=\\=\\= between false and true will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/DoctrineExistingEntityNormalizer.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Serializer\\\\Normalizer\\\\NotificationNormalizer\\:\\:\\$notificationHandlerManager is never read, only written\\.$#" + message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Notification\\:\\:isReadBy\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Serializer/Normalizer/NotificationNormalizer.php - - message: "#^Result of && is always false\\.$#" + message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Entity\\\\Embeddable\\\\PrivateCommentEmbeddable\\:\\:setCommentForUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/UserNormalizer.php + path: src/Bundle/ChillMainBundle/Serializer/Normalizer/PrivateCommentEmbeddableNormalizer.php - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\User will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Serializer/Normalizer/UserNormalizer.php - - - - message: "#^Call to function is_int\\(\\) with int will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Service/Import/AddressReferenceFromBano.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Mime\\\\RawMessage\\:\\:getSubject\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Service/Mailer/ChillMailer.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Mime\\\\RawMessage\\:\\:getTo\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Service/Mailer/ChillMailer.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Templating\\\\CSVCellTwig\\:\\:getName\\(\\) has invalid return type Chill\\\\MainBundle\\\\Templating\\\\The\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Templating/CSVCellTwig.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Templating\\\\CSVCellTwig\\:\\:getName\\(\\) should return Chill\\\\MainBundle\\\\Templating\\\\The but returns string\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Templating/CSVCellTwig.php - - - - message: "#^Instanceof between string and DateTimeInterface will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Templating/ChillTwigHelper.php - - - - message: "#^Call to an undefined method Symfony\\\\Contracts\\\\Translation\\\\TranslatorInterface\\:\\:getFallbackLocales\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Templating/TranslatableStringHelper.php - - - - message: "#^Strict comparison using \\=\\=\\= between array\\{\\} and non\\-empty\\-array\\ will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Templating/TranslatableStringHelper.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Templating\\\\TranslatableStringTwig\\:\\:getName\\(\\) has invalid return type Chill\\\\MainBundle\\\\Templating\\\\The\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Templating/TranslatableStringTwig.php - - - - message: "#^Method Chill\\\\MainBundle\\\\Templating\\\\TranslatableStringTwig\\:\\:getName\\(\\) should return Chill\\\\MainBundle\\\\Templating\\\\The but returns string\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Templating/TranslatableStringTwig.php - - - - message: "#^Call to method render\\(\\) on an unknown class Chill\\\\MainBundle\\\\Templating\\\\Widget\\\\Widget\\\\WidgetInterface\\.$#" + message: "#^Parameter \\#1 \\$event of method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) expects object, string given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Templating/Widget/WidgetRenderingTwig.php - - message: "#^PHPDoc tag @var for variable \\$widget contains unknown class Chill\\\\MainBundle\\\\Templating\\\\Widget\\\\Widget\\\\WidgetInterface\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Templating/Widget/WidgetRenderingTwig.php - - - - message: "#^Parameter \\$context of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineBuilder\\:\\:countItems\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\unknown\\.$#" + message: "#^Parameter \\#1 \\$context of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineBuilder\\:\\:buildUnionQuery\\(\\) expects string, Chill\\\\MainBundle\\\\Timeline\\\\unknown given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Timeline/TimelineBuilder.php - - message: "#^Unreachable statement \\- code above always terminates\\.$#" + message: "#^Parameter \\#2 \\$context of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineProviderInterface\\:\\:getEntityTemplate\\(\\) expects Chill\\\\MainBundle\\\\Timeline\\\\type, string given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Timeline/TimelineBuilder.php - - message: "#^Parameter \\$context of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineProviderInterface\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Timeline/TimelineProviderInterface.php - - - - message: "#^Parameter \\$entity of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineProviderInterface\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Timeline/TimelineProviderInterface.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Util\\\\DateRangeCovering\\:\\:\\$intervals is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Util/DateRangeCovering.php - - - - message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$messageDuplicateEmail\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Validation/Validator/UserUniqueEmailAndUsername.php - - - - message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$messageDuplicateUsername\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Validation/Validator/UserUniqueEmailAndUsername.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" + message: "#^Parameter \\#1 \\$phoneNumber of method Chill\\\\MainBundle\\\\Phonenumber\\\\PhoneNumberHelperInterface\\:\\:format\\(\\) expects libphonenumber\\\\PhoneNumber\\|null, string given\\.$#" count: 1 path: src/Bundle/ChillMainBundle/Validation/Validator/ValidPhonenumber.php - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\MainBundle\\\\Entity\\\\User will always evaluate to false\\.$#" + message: "#^Parameter \\#1 \\$transitionBy of method Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflowStep\\:\\:setTransitionBy\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User\\|null, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" count: 1 - path: src/Bundle/ChillMainBundle/Validator/Constraints/Entity/UserCircleConsistencyValidator.php + path: src/Bundle/ChillMainBundle/Workflow/EventSubscriber/EntityWorkflowTransitionEventSubscriber.php - - message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$element\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Validator/Constraints/Export/ExportElementConstraintValidator.php - - - - message: "#^Property Chill\\\\MainBundle\\\\Workflow\\\\Templating\\\\WorkflowTwigExtensionRuntime\\:\\:\\$entityWorkflowManager is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Workflow/Templating/WorkflowTwigExtensionRuntime.php - - - - message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow and Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflow will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Workflow/Validator/EntityWorkflowCreationValidator.php - - - - message: "#^Instanceof between Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflowStep and Chill\\\\MainBundle\\\\Entity\\\\Workflow\\\\EntityWorkflowStep will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Workflow/Validator/StepDestValidValidator.php - - - - message: "#^PHPDoc tag @param for parameter \\$postSql with type Chill\\\\PersonBundle\\\\Actions\\\\type is incompatible with native type string\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Actions/ActionEvent.php - - - - message: "#^Parameter \\$postSql of method Chill\\\\PersonBundle\\\\Actions\\\\ActionEvent\\:\\:addPostSql\\(\\) has invalid type Chill\\\\PersonBundle\\\\Actions\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Actions/ActionEvent.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\PersonMove\\:\\:getSQL\\(\\) has invalid return type Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Actions/Remove/PersonMove.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\PersonMove\\:\\:getSQL\\(\\) should return Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\type but returns array\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Actions/Remove/PersonMove.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\EntityPersonCRUDController\\:\\:filterQueryEntitiesByPerson\\(\\) has invalid return type Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\QueryBuilder\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php - - - - message: "#^PHPDoc tag @param for parameter \\$qb with type Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\QueryBuilder is not subtype of native type Doctrine\\\\ORM\\\\QueryBuilder\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php - - - - message: "#^PHPDoc tag @return with type Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\QueryBuilder is not subtype of native type Doctrine\\\\ORM\\\\QueryBuilder\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php - - - - message: "#^PHPDoc tag @throws with type Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\Symfony\\\\Component\\\\HttpKernel\\\\Exception\\\\NotFoundHttpException is not subtype of Throwable$#" - count: 1 - path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php - - - - message: "#^Parameter \\$action of method Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\EntityPersonCRUDController\\:\\:createEntity\\(\\) has invalid type Chill\\\\MainBundle\\\\CRUD\\\\Controller\\\\string\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php - - - - message: "#^Parameter \\$qb of method Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\EntityPersonCRUDController\\:\\:filterQueryEntitiesByPerson\\(\\) has invalid type Chill\\\\PersonBundle\\\\CRUD\\\\Controller\\\\QueryBuilder\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\DependencyInjection\\\\Extension\\\\ExtensionInterface\\:\\:addWidgetFactory\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/ChillPersonBundle.php - - - - message: "#^Iterating over an object of an unknown class Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\type\\.$#" + message: "#^Parameter \\#1 \\$event of method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) expects object, string given\\.$#" count: 2 - path: src/Bundle/ChillPersonBundle/Command/ChillPersonMoveCommand.php + path: src/Bundle/ChillPersonBundle/Actions/Remove/PersonMove.php - - message: "#^Property Chill\\\\PersonBundle\\\\Controller\\\\AccompanyingCourseApiController\\:\\:\\$accompanyingPeriodACLAwareRepository is never read, only written\\.$#" + message: "#^Parameter \\#1 \\$event of method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) expects object, string given\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseApiController.php - - message: "#^Variable \\$accompanyingPeriod in PHPDoc tag @var does not match assigned variable \\$action\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseApiController.php - - - - message: "#^Strict comparison using \\!\\=\\= between null and Doctrine\\\\Common\\\\Collections\\\\Collection will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseController.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Serializer\\\\SerializerInterface\\:\\:normalize\\(\\)\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseWorkController.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseWorkController.php - - - - message: "#^Call to an undefined method Psr\\\\Container\\\\ContainerInterface\\:\\:getParameter\\(\\)\\.$#" + message: "#^Parameter \\#1 \\$event of method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) expects object, string given\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodController.php - - message: "#^Method Symfony\\\\Component\\\\Form\\\\FormInterface\\:\\:isValid\\(\\) invoked with 1 parameter, 0 required\\.$#" - count: 2 + message: "#^Parameter \\#2 \\$callback of function usort expects callable\\(mixed, mixed\\)\\: int, Closure\\(mixed, mixed\\)\\: bool given\\.$#" + count: 1 path: src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodController.php - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod will always evaluate to false\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodController.php + message: "#^Parameter \\#1 \\$user of method Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluationRepository\\:\\:countNearMaxDateByUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodWorkEvaluationApiController.php - - message: "#^Call to an undefined method Symfony\\\\Component\\\\HttpFoundation\\\\Session\\\\SessionInterface\\:\\:getFlashBag\\(\\)\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Controller/HouseholdCompositionController.php + message: "#^Parameter \\#1 \\$user of method Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluationRepository\\:\\:findNearMaxDateByUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodWorkEvaluationApiController.php - - message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:initialize\\(\\)\\.$#" + message: "#^Parameter \\#1 \\$object of static method DateTimeImmutable\\:\\:createFromMutable\\(\\) expects DateTime, DateTimeInterface given\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/HouseholdApiController.php + + - + message: "#^Parameter \\#2 \\$callback of function usort expects callable\\(mixed, mixed\\)\\: int, Closure\\(mixed, mixed\\)\\: bool given\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Controller/HouseholdController.php - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Serializer\\\\SerializerInterface\\:\\:normalize\\(\\)\\.$#" - count: 3 + message: "#^Parameter \\#2 \\$previous of class Symfony\\\\Component\\\\HttpKernel\\\\Exception\\\\BadRequestHttpException constructor expects Throwable\\|null, int given\\.$#" + count: 1 path: src/Bundle/ChillPersonBundle/Controller/HouseholdMemberController.php - - message: "#^Elseif condition is always true\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Controller/PersonAddressController.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Controller\\\\PersonAddressController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + message: "#^Parameter \\#3 \\$code of class Symfony\\\\Component\\\\HttpKernel\\\\Exception\\\\BadRequestHttpException constructor expects int, Symfony\\\\Component\\\\Serializer\\\\Exception\\\\InvalidArgumentException\\|Symfony\\\\Component\\\\Serializer\\\\Exception\\\\UnexpectedValueException given\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Controller/PersonAddressController.php + path: src/Bundle/ChillPersonBundle/Controller/HouseholdMemberController.php - - message: "#^Method Chill\\\\PersonBundle\\\\Controller\\\\PersonAddressController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/PersonAddressController.php - - - - message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\\\:\\:findOneByEntity\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/PersonController.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Form\\\\FormInterface\\:\\:isClicked\\(\\)\\.$#" - count: 3 - path: src/Bundle/ChillPersonBundle/Controller/PersonController.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Controller\\\\PersonController\\:\\:_validatePersonAndAccompanyingPeriod\\(\\) is unused\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/PersonController.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\Person will always evaluate to false\\.$#" + message: "#^Parameter \\#1 \\$event of method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) expects object, string given\\.$#" count: 2 path: src/Bundle/ChillPersonBundle/Controller/PersonController.php - - message: "#^Access to an undefined property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$counters\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php + message: "#^Parameter \\#1 \\$form of method Chill\\\\PersonBundle\\\\Controller\\\\PersonController\\:\\:isLastPostDataChanges\\(\\) expects Symfony\\\\Component\\\\Form\\\\Form, Symfony\\\\Component\\\\Form\\\\FormInterface given\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Controller/PersonController.php - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:countByParameters\\(\\)\\.$#" + message: "#^Parameter \\#1 \\$event of method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) expects object, string given\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php - - message: "#^Cannot access property \\$getId on null\\.$#" + message: "#^Parameter \\#2 \\$precision of method Chill\\\\PersonBundle\\\\Search\\\\SimilarPersonMatcher\\:\\:matchPerson\\(\\) expects float, Chill\\\\PersonBundle\\\\Repository\\\\PersonNotDuplicateRepository given\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php - - message: "#^Iterating over an object of an unknown class Chill\\\\PersonBundle\\\\Actions\\\\Remove\\\\type\\.$#" + message: "#^Parameter \\#3 \\$orderBy of method Chill\\\\PersonBundle\\\\Search\\\\SimilarPersonMatcher\\:\\:matchPerson\\(\\) expects string, float given\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php - - message: "#^Method Chill\\\\PersonBundle\\\\Controller\\\\PersonDuplicateController\\:\\:_getCounters\\(\\) never returns null so it can be removed from the return type\\.$#" + message: "#^Parameter \\#4 \\$addYearComparison of method Chill\\\\PersonBundle\\\\Search\\\\SimilarPersonMatcher\\:\\:matchPerson\\(\\) expects bool, string given\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Controller/PersonDuplicateController.php - - message: "#^Call to function is_int\\(\\) with int will always evaluate to true\\.$#" + message: "#^Parameter \\#1 \\$context of method Chill\\\\MainBundle\\\\Timeline\\\\TimelineBuilder\\:\\:countItems\\(\\) expects Chill\\\\MainBundle\\\\Timeline\\\\unknown, string given\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Controller/ReassignAccompanyingPeriodController.php + path: src/Bundle/ChillPersonBundle/Controller/TimelinePersonController.php - - message: "#^Property Chill\\\\PersonBundle\\\\Controller\\\\ReassignAccompanyingPeriodController\\:\\:\\$userRender is never read, only written\\.$#" + message: "#^Parameter \\#1 \\$event of method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) expects object, string given\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Controller/ReassignAccompanyingPeriodController.php + path: src/Bundle/ChillPersonBundle/Controller/TimelinePersonController.php - - message: "#^Property Chill\\\\PersonBundle\\\\Controller\\\\SocialWorkGoalApiController\\:\\:\\$paginator is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Controller/SocialWorkGoalApiController.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/DataFixtures/ORM/LoadAccompanyingPeriodNotifications.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:canBeDisabled\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/DependencyInjection/Configuration.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeDefinition\\:\\:values\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/DependencyInjection/Configuration.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Doctrine\\\\DQL\\\\AddressPart\\:\\:\\$part is unused\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Doctrine/DQL/AddressPart.php - - - - message: "#^Result of method Doctrine\\\\ORM\\\\Query\\\\Parser\\:\\:match\\(\\) \\(void\\) is used\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Doctrine/DQL/AddressPart.php - - - - message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" + message: "#^Parameter \\#1 \\$period of method Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodLocationHistory\\:\\:setPeriod\\(\\) expects Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod, null given\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection\\:\\:matching\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\:\\:getRecursiveSocialActions\\(\\) has invalid return type Chill\\\\PersonBundle\\\\Entity\\\\SocialAction\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\:\\:getRecursiveSocialIssues\\(\\) has invalid return type Chill\\\\PersonBundle\\\\Entity\\\\SocialIssues\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - - - message: "#^Negated boolean expression is always true\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - - - message: "#^PHPDoc tag @return with type array\\ is incompatible with native type Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - - - message: "#^PHPDoc tag @return with type iterable is not subtype of native type Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\:\\:\\$updatedAt is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\:\\:\\$updatedBy is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodStepHistory will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\:\\:\\$createdAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWork.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\:\\:\\$endDate \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\|null\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWork.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\:\\:\\$startDate \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWork.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork\\:\\:\\$updatedAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWork.php - - - - message: "#^PHPDoc tag @param for parameter \\$createdAt with type DateTimeImmutable\\|null is not subtype of native type DateTimeInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWorkEvaluation.php - - - - message: "#^PHPDoc tag @param for parameter \\$updatedAt with type DateTimeImmutable\\|null is not subtype of native type DateTimeInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWorkEvaluation.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluation\\:\\:\\$createdAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWorkEvaluation.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkEvaluation\\:\\:\\$updatedAt \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/AccompanyingPeriodWorkEvaluation.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriodParticipation\\:\\:checkSameStartEnd\\(\\) is unused\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriodParticipation.php - - - - message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" - count: 3 - path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php - - - - message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection\\:\\:matching\\(\\)\\.$#" - count: 4 - path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php - - - - message: "#^Call to an undefined method Traversable\\<\\(int\\|string\\), mixed\\>\\:\\:uasort\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php - - - - message: "#^PHPDoc tag @return with type array\\ is incompatible with native type Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php - - - - message: "#^Strict comparison using \\!\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\HouseholdMember will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and int will always evaluate to false\\.$#" + message: "#^Parameter \\#1 \\$now of method Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\Household\\:\\:getCurrentMembers\\(\\) expects DateTimeImmutable\\|null, DateTimeInterface\\|null given\\.$#" count: 2 path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\PersonHouseholdAddress\\:\\:\\$validFrom is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Household/PersonHouseholdAddress.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\PersonHouseholdAddress\\:\\:\\$validTo is never written, only read\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Household/PersonHouseholdAddress.php - - - - message: "#^PHPDoc tag @param has invalid value \\(string array \\$name\\)\\: Unexpected token \"array\", expected variable at offset 49$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/MaritalStatus.php - - - - message: "#^PHPDoc tag @return with type string is incompatible with native type array\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/MaritalStatus.php - - - - message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" - count: 3 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection\\:\\:matching\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Negated boolean expression is always true\\.$#" - count: 3 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^PHPDoc tag @return with type array\\ is incompatible with native type Doctrine\\\\Common\\\\Collections\\\\Collection\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$center is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$currentHouseholdAt is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$deathdate \\(DateTimeImmutable\\|null\\) does not accept DateTimeInterface\\|null\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$maritalStatusDate \\(DateTime\\|null\\) does not accept DateTimeInterface\\|null\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$periodLocatedOn is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\Person\\:\\:\\$proxyAccompanyingPeriodOpenState is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Strict comparison using \\=\\=\\= between true and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriodParticipation\\|null will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/Person.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Entity\\\\SocialWork\\\\Result\\:\\:\\$desactivationDate \\(DateTime\\|null\\) does not accept DateTimeInterface\\|null\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Entity/SocialWork/Result.php - - - - message: "#^If condition is always false\\.$#" + message: "#^Parameter \\#1 \\$now of method Chill\\\\PersonBundle\\\\Entity\\\\Household\\\\Household\\:\\:getNonCurrentMembers\\(\\) expects DateTimeImmutable\\|null, DateTimeInterface\\|null given\\.$#" count: 2 - path: src/Bundle/ChillPersonBundle/Entity/SocialWork/SocialAction.php + path: src/Bundle/ChillPersonBundle/Entity/Household/Household.php - - message: "#^Negated boolean expression is always true\\.$#" + message: "#^Parameter \\#1 \\$key of method Doctrine\\\\Common\\\\Collections\\\\Collection\\<\\(int\\|string\\),mixed\\>\\:\\:remove\\(\\) expects \\(int\\|string\\), Chill\\\\PersonBundle\\\\Entity\\\\SocialWork\\\\SocialAction given\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Entity/SocialWork/Evaluation.php + + - + message: "#^Parameter \\#1 \\$translatableStrings of method Chill\\\\MainBundle\\\\Templating\\\\TranslatableStringHelper\\:\\:localize\\(\\) expects array, string given\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Export/Helper/ListPersonHelper.php + + - + message: "#^Parameter \\#1 \\$callback of function call_user_func expects callable\\(\\)\\: mixed, null given\\.$#" count: 2 - path: src/Bundle/ChillPersonBundle/Entity/SocialWork/SocialAction.php + path: src/Bundle/ChillPersonBundle/Form/ChoiceLoader/PersonChoiceLoader.php - - message: "#^If condition is always false\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Entity/SocialWork/SocialIssue.php - - - - message: "#^Negated boolean expression is always true\\.$#" - count: 4 - path: src/Bundle/ChillPersonBundle/Entity/SocialWork/SocialIssue.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Export\\\\Aggregator\\\\AccompanyingCourseAggregators\\\\DurationAggregator\\:\\:\\$translator is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/DurationAggregator.php - - - - message: "#^Call to method extractOtherValue\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php - - - - message: "#^Call to method getChoices\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php - - - - message: "#^Call to method isChecked\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php - - - - message: "#^Call to method isMultiple\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 2 - path: src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php - - - - message: "#^Call to method render\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Export\\\\Filter\\\\AccompanyingCourseFilters\\\\AdministrativeLocationFilter\\:\\:\\$translatableStringHelper is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/AdministrativeLocationFilter.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Export\\\\Filter\\\\SocialWorkFilters\\\\SocialWorkTypeFilter\\:\\:\\$socialActionRender is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Export/Filter/SocialWorkFilters/SocialWorkTypeFilter.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Form\\\\PersonResourceType\\:\\:\\$personRender is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Form/PersonResourceType.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Form\\\\PersonResourceType\\:\\:\\$thirdPartyRender is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Form/PersonResourceType.php - - - - message: "#^PHPDoc tag @param for parameter \\$resolver with type Chill\\\\PersonBundle\\\\Form\\\\OptionsResolverInterface is not subtype of native type Symfony\\\\Component\\\\OptionsResolver\\\\OptionsResolver\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Form/PersonType.php - - - - message: "#^Parameter \\$resolver of method Chill\\\\PersonBundle\\\\Form\\\\PersonType\\:\\:configureOptions\\(\\) has invalid type Chill\\\\PersonBundle\\\\Form\\\\OptionsResolverInterface\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Form/PersonType.php - - - - message: "#^Strict comparison using \\=\\=\\= between 'create' and 'create' will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Form/SocialWork/SocialIssueType.php - - - - message: "#^Call to an undefined method Doctrine\\\\Common\\\\Collections\\\\Collection&iterable\\\\:\\:matching\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Household/MembersEditor.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\AccompanyingPeriodWorkGoalRepository\\:\\:\\$repository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/AccompanyingPeriodWorkGoalRepository.php - - - - message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\:\\:countByAccompanyingPeriod\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/AccompanyingPeriodWorkRepository.php - - - - message: "#^Call to an undefined method Doctrine\\\\ORM\\\\EntityRepository\\:\\:findByAccompanyingPeriod\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/AccompanyingPeriodWorkRepository.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\CommentRepository\\:\\:\\$repository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/CommentRepository.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriod\\\\OriginRepository\\:\\:\\$repository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/OriginRepository.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\AccompanyingPeriodParticipationRepository\\:\\:\\$repository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriodParticipationRepository.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\HouseholdMembersRepository\\:\\:\\$repository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/Household/HouseholdMembersRepository.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\PositionRepository\\:\\:findOneBy\\(\\) should return array\\ but returns object\\|null\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/Household/PositionRepository.php - - - - message: "#^Return type \\(array\\\\) of method Chill\\\\PersonBundle\\\\Repository\\\\Household\\\\PositionRepository\\:\\:findOneBy\\(\\) should be compatible with return type \\(object\\|null\\) of method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findOneBy\\(\\)$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/Household/PositionRepository.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\PersonACLAwareRepository\\:\\:\\$countryRepository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/PersonACLAwareRepository.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Repository\\\\PersonAltNameRepository\\:\\:\\$repository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/PersonAltNameRepository.php - - - - message: "#^PHPDoc tag @return with type array\\\\|null is not subtype of native type array\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Repository/ResidentialAddressRepository.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Search\\\\SearchHouseholdApiProvider\\:\\:\\$authorizationHelper is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Search/SearchHouseholdApiProvider.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Search\\\\SearchHouseholdApiProvider\\:\\:\\$security is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Search/SearchHouseholdApiProvider.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Search\\\\SearchPersonApiProvider\\:\\:\\$authorizationHelper is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Search/SearchPersonApiProvider.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Search\\\\SearchPersonApiProvider\\:\\:\\$security is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Search/SearchPersonApiProvider.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Security\\\\Authorization\\\\AccompanyingPeriodVoter\\:\\:\\$security is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodVoter.php - - - - message: "#^PHPDoc tag @return with type bool\\|void is not subtype of native type bool\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkEvaluationDocumentVoter.php - - - - message: "#^Elseif branch is unreachable because previous condition is always true\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkVoter.php - - - - message: "#^Instanceof between \\*NEVER\\* and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkVoter.php - - - - message: "#^Instanceof between Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork and Chill\\\\PersonBundle\\\\Entity\\\\AccompanyingPeriod\\\\AccompanyingPeriodWork will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkVoter.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Security\\\\Authorization\\\\AccompanyingPeriodWorkVoter\\:\\:\\$voterHelper is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkVoter.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodWorkVoter.php - - - - message: "#^Constant Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodDocGenNormalizer\\:\\:IGNORE_FIRST_PASS_KEY is unused\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodDocGenNormalizer.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodDocGenNormalizer.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodParticipationNormalizer.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkDenormalizer\\:\\:\\$em is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkDenormalizer.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkDenormalizer\\:\\:\\$workRepository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkDenormalizer.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkEvaluationDocumentNormalizer\\:\\:\\$registry is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkEvaluationDocumentNormalizer.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkEvaluationNormalizer\\:\\:\\$registry is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkEvaluationNormalizer.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\AccompanyingPeriodWorkNormalizer\\:\\:\\$registry is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/AccompanyingPeriodWorkNormalizer.php - - - - message: "#^Call to function is_array\\(\\) with 'concerned' will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/MembersEditorNormalizer.php - - - - message: "#^Expression on left side of \\?\\? is not nullable\\.$#" - count: 3 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/MembersEditorNormalizer.php - - - - message: "#^Left side of && is always false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/MembersEditorNormalizer.php - - - - message: "#^Strict comparison using \\=\\=\\= between false and false will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/MembersEditorNormalizer.php - - - - message: "#^Instanceof between Chill\\\\PersonBundle\\\\Entity\\\\Person and Chill\\\\PersonBundle\\\\Entity\\\\Person will always evaluate to true\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonDocGenNormalizer.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\PersonDocGenNormalizer\\:\\:hasGroup\\(\\) is unused\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonDocGenNormalizer.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\Person will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonDocGenNormalizer.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\PersonJsonNormalizer\\:\\:\\$phoneNumberHelper is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonJsonNormalizer.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\PersonBundle\\\\Entity\\\\Relationships\\\\Relationship will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/RelationshipDocGenNormalizer.php - - - - message: "#^Method Chill\\\\PersonBundle\\\\Serializer\\\\Normalizer\\\\SocialIssueNormalizer\\:\\:normalize\\(\\) should return array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|null but return statement is missing\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/SocialIssueNormalizer.php - - - - message: "#^PHPDoc tag @return with type array\\|ArrayObject\\|bool\\|float\\|int\\|string\\|void\\|null is not subtype of native type array\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Serializer/Normalizer/WorkflowNormalizer.php - - - - message: "#^Call to an undefined method Chill\\\\DocStoreBundle\\\\Entity\\\\Document\\:\\:setCourse\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Service/DocGenerator/AccompanyingPeriodContext.php - - - - message: "#^Call to an undefined method Chill\\\\DocStoreBundle\\\\Entity\\\\Document\\:\\:setPerson\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Service/DocGenerator/PersonContext.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Service\\\\Import\\\\SocialWorkMetadata\\:\\:\\$socialActionRepository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Service/Import/SocialWorkMetadata.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Service\\\\Import\\\\SocialWorkMetadata\\:\\:\\$socialIssueRepository is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Service/Import/SocialWorkMetadata.php - - - - message: "#^Call to method getId\\(\\) on an unknown class ChillPersonBundle\\:AccompanyingPeriod\\.$#" + message: "#^Parameter \\#1 \\$entityName of method Doctrine\\\\ORM\\\\EntityManager\\:\\:getRepository\\(\\) expects class\\-string\\, string given\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Timeline/AbstractTimelineAccompanyingPeriod.php - - message: "#^Cannot call method setKey\\(\\) on array\\.$#" + message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\AuthorizationHelper\\:\\:filterReachableCenters\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Timeline/AbstractTimelineAccompanyingPeriod.php + + - + message: "#^Parameter \\#3 \\$context of method Chill\\\\PersonBundle\\\\Timeline\\\\AbstractTimelineAccompanyingPeriod\\:\\:getBasicEntityTemplate\\(\\) expects string, Chill\\\\MainBundle\\\\Timeline\\\\type given\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodClosing.php - - message: "#^Parameter \\$context of method Chill\\\\PersonBundle\\\\Timeline\\\\TimelineAccompanyingPeriodClosing\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodClosing.php - - - - message: "#^Parameter \\$entity of method Chill\\\\PersonBundle\\\\Timeline\\\\TimelineAccompanyingPeriodClosing\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodClosing.php - - - - message: "#^Cannot call method setKey\\(\\) on array\\.$#" + message: "#^Parameter \\#3 \\$context of method Chill\\\\PersonBundle\\\\Timeline\\\\AbstractTimelineAccompanyingPeriod\\:\\:getBasicEntityTemplate\\(\\) expects string, Chill\\\\MainBundle\\\\Timeline\\\\type given\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodOpening.php - - message: "#^Parameter \\$context of method Chill\\\\PersonBundle\\\\Timeline\\\\TimelineAccompanyingPeriodOpening\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + message: "#^Parameter \\#2 \\$role of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\AuthorizationHelperInterface\\:\\:getReachableCenters\\(\\) expects string, Symfony\\\\Component\\\\Security\\\\Core\\\\Role\\\\Role given\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodOpening.php + path: src/Bundle/ChillPersonBundle/Widget/PersonListWidget.php - - message: "#^Parameter \\$entity of method Chill\\\\PersonBundle\\\\Timeline\\\\TimelineAccompanyingPeriodOpening\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Timeline/TimelineAccompanyingPeriodOpening.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Validator\\\\Constraints\\\\AccompanyingPeriod\\\\AccompanyingPeriodValidityValidator\\:\\:\\$token is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Validator/Constraints/AccompanyingPeriod/AccompanyingPeriodValidityValidator.php - - - - message: "#^Property Chill\\\\PersonBundle\\\\Validator\\\\Constraints\\\\AccompanyingPeriod\\\\ParticipationOverlapValidator\\:\\:\\$thirdpartyRender is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Validator/Constraints/AccompanyingPeriod/ParticipationOverlapValidator.php - - - - message: "#^Strict comparison using \\=\\=\\= between 0 and int\\<2, max\\> will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Validator/Constraints/AccompanyingPeriod/ParticipationOverlapValidator.php - - - - message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$message\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Validator/Constraints/Household/HouseholdMembershipSequentialValidator.php - - - - message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$message\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Validator/Constraints/Household/MaxHolderValidator.php - - - - message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$messageInfinity\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Validator/Constraints/Household/MaxHolderValidator.php - - - - message: "#^Access to an undefined property Symfony\\\\Component\\\\Validator\\\\Constraint\\:\\:\\$message\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Validator/Constraints/Person/PersonHasCenterValidator.php - - - - message: "#^Call to an undefined method Symfony\\\\Component\\\\Config\\\\Definition\\\\Builder\\\\NodeParentInterface\\:\\:info\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Widget/PersonListWidgetFactory.php - - - - message: "#^Parameter \\$place of method Chill\\\\PersonBundle\\\\Widget\\\\PersonListWidgetFactory\\:\\:configureOptions\\(\\) has invalid type Chill\\\\MainBundle\\\\DependencyInjection\\\\Widget\\\\Factory\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillPersonBundle/Widget/PersonListWidgetFactory.php - - - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:createQuery\\(\\)\\.$#" - count: 2 + message: "#^Parameter \\#1 \\$className of method Doctrine\\\\Persistence\\\\ObjectManager\\:\\:getRepository\\(\\) expects class\\-string\\, string given\\.$#" + count: 4 path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findByCFGroup\\(\\)\\.$#" + message: "#^Parameter \\#1 \\$entity of method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createEditForm\\(\\) expects Chill\\\\ReportBundle\\\\Entity\\\\Report, ChillReportBundle\\:Report given\\.$#" count: 1 path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - message: "#^Call to an undefined method Doctrine\\\\Persistence\\\\ObjectRepository\\\\:\\:findByEntity\\(\\)\\.$#" - count: 2 + message: "#^Parameter \\#1 \\$event of method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) expects object, string given\\.$#" + count: 4 path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - message: "#^Call to method getId\\(\\) on an unknown class ChillReportBundle\\:Report\\.$#" - count: 2 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Call to method getPerson\\(\\) on an unknown class ChillReportBundle\\:Report\\.$#" - count: 3 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" + message: "#^Parameter \\#2 \\$role of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\AuthorizationHelper\\:\\:getReachableScopes\\(\\) expects string, Symfony\\\\Component\\\\Security\\\\Core\\\\Role\\\\Role given\\.$#" count: 1 path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" + message: "#^Parameter \\#1 \\$em of class Chill\\\\MainBundle\\\\Form\\\\Type\\\\DataTransformer\\\\ScopeTransformer constructor expects Doctrine\\\\ORM\\\\EntityManagerInterface, Doctrine\\\\Persistence\\\\ObjectManager given\\.$#" count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php + path: src/Bundle/ChillReportBundle/Form/ReportType.php - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" + message: "#^Parameter \\#2 \\$role of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\AuthorizationHelper\\:\\:getReachableScopes\\(\\) expects string, Symfony\\\\Component\\\\Security\\\\Core\\\\Role\\\\Role given\\.$#" count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php + path: src/Bundle/ChillReportBundle/Form/ReportType.php - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createCreateForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + message: "#^Parameter \\#2 \\$role of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\AuthorizationHelper\\:\\:getReachableCenters\\(\\) expects string, Symfony\\\\Component\\\\Security\\\\Core\\\\Role\\\\Role given\\.$#" count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php + path: src/Bundle/ChillReportBundle/Search/ReportSearch.php - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:createEditForm\\(\\) should return Symfony\\\\Component\\\\Form\\\\Form but returns Symfony\\\\Component\\\\Form\\\\FormInterface\\.$#" + message: "#^Parameter \\#2 \\$role of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\AuthorizationHelper\\:\\:getReachableScopes\\(\\) expects string, Symfony\\\\Component\\\\Security\\\\Core\\\\Role\\\\Role given\\.$#" count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php + path: src/Bundle/ChillReportBundle/Search/ReportSearch.php - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:editAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:editAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:exportAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\A\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:exportAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\A but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:listAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:listAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:newAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:newAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" - count: 2 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeForExportAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeForExportAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" - count: 2 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:selectReportTypeForExportAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:updateAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:updateAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\RedirectResponse\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:updateAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:viewAction\\(\\) has invalid return type Chill\\\\ReportBundle\\\\Controller\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Method Chill\\\\ReportBundle\\\\Controller\\\\ReportController\\:\\:viewAction\\(\\) should return Chill\\\\ReportBundle\\\\Controller\\\\Response but returns Symfony\\\\Component\\\\HttpFoundation\\\\Response\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^Negated boolean expression is always false\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Controller/ReportController.php - - - - message: "#^PHPDoc tag @param for parameter \\$scope with type string is incompatible with native type Chill\\\\MainBundle\\\\Entity\\\\Scope\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Entity/Report.php - - - - message: "#^Call to method extractOtherValue\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Export/Export/ReportList.php - - - - message: "#^Call to method getChoices\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 2 - path: src/Bundle/ChillReportBundle/Export/Export/ReportList.php - - - - message: "#^Call to method isChecked\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 2 - path: src/Bundle/ChillReportBundle/Export/Export/ReportList.php - - - - message: "#^Call to method isMultiple\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 2 - path: src/Bundle/ChillReportBundle/Export/Export/ReportList.php - - - - message: "#^Call to method render\\(\\) on an unknown class Chill\\\\CustomFieldsBundle\\\\Service\\\\CustomFieldInterface\\.$#" - count: 1 - path: src/Bundle/ChillReportBundle/Export/Export/ReportList.php - - - - message: "#^Call to method getId\\(\\) on an unknown class ChillReportBundle\\:Report\\.$#" + message: "#^Parameter \\#1 \\$context of method Chill\\\\ReportBundle\\\\Timeline\\\\TimelineReportProvider\\:\\:checkContext\\(\\) expects string, Chill\\\\MainBundle\\\\Timeline\\\\type given\\.$#" count: 1 path: src/Bundle/ChillReportBundle/Timeline/TimelineReportProvider.php - - message: "#^Parameter \\$context of method Chill\\\\ReportBundle\\\\Timeline\\\\TimelineReportProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + message: "#^Parameter \\#1 \\$entity of method Chill\\\\ReportBundle\\\\Timeline\\\\TimelineReportProvider\\:\\:getFieldsToRender\\(\\) expects Chill\\\\ReportBundle\\\\Entity\\\\Report, Chill\\\\MainBundle\\\\Timeline\\\\type given\\.$#" count: 1 path: src/Bundle/ChillReportBundle/Timeline/TimelineReportProvider.php - - message: "#^Parameter \\$entity of method Chill\\\\ReportBundle\\\\Timeline\\\\TimelineReportProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + message: "#^Parameter \\#1 \\$entityName of method Doctrine\\\\ORM\\\\EntityManager\\:\\:getRepository\\(\\) expects class\\-string\\, string given\\.$#" count: 1 path: src/Bundle/ChillReportBundle/Timeline/TimelineReportProvider.php - - message: "#^Property Chill\\\\TaskBundle\\\\Controller\\\\SingleTaskController\\:\\:\\$centerResolverDispatcher is never read, only written\\.$#" - count: 1 + message: "#^Parameter \\#1 \\$event of method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) expects object, string given\\.$#" + count: 6 path: src/Bundle/ChillTaskBundle/Controller/SingleTaskController.php - - message: "#^Strict comparison using \\=\\=\\= between null and int will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Controller/SingleTaskController.php - - - - message: "#^If condition is always true\\.$#" + message: "#^Parameter \\#1 \\$event of method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) expects object, string given\\.$#" count: 1 path: src/Bundle/ChillTaskBundle/Controller/TaskController.php - - message: "#^Property Chill\\\\TaskBundle\\\\Entity\\\\RecurringTask\\:\\:\\$singleTasks is never read, only written\\.$#" + message: "#^Parameter \\#1 \\$keys of function array_fill_keys expects array, Chill\\\\TaskBundle\\\\Entity\\\\json given\\.$#" count: 1 - path: src/Bundle/ChillTaskBundle/Entity/RecurringTask.php + path: src/Bundle/ChillTaskBundle/Entity/AbstractTask.php - - message: "#^Method Chill\\\\TaskBundle\\\\Entity\\\\SingleTask\\:\\:getWarningDate\\(\\) should return DateTimeImmutable but returns null\\.$#" - count: 2 - path: src/Bundle/ChillTaskBundle/Entity/SingleTask.php - - - - message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask\\:\\:getTaskPlaceEvents\\(\\)\\.$#" + message: "#^Parameter \\#1 \\$task of method Chill\\\\TaskBundle\\\\Entity\\\\Task\\\\SingleTaskPlaceEvent\\:\\:setTask\\(\\) expects Chill\\\\TaskBundle\\\\Entity\\\\SingleTask, Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask given\\.$#" count: 1 path: src/Bundle/ChillTaskBundle/Event/Lifecycle/TaskLifecycleEvent.php - - message: "#^Method Chill\\\\TaskBundle\\\\Repository\\\\SingleTaskRepository\\:\\:findByParameters\\(\\) has invalid return type Chill\\\\TaskBundle\\\\Repository\\\\type\\.$#" + message: "#^Parameter \\#1 \\$repository of class Chill\\\\PersonBundle\\\\Form\\\\DataTransformer\\\\PersonToIdTransformer constructor expects Chill\\\\PersonBundle\\\\Repository\\\\PersonRepository, Doctrine\\\\ORM\\\\EntityManagerInterface given\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Form/SingleTaskListType.php + + - + message: "#^Parameter \\#2 \\$role of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\AuthorizationHelper\\:\\:getReachableCenters\\(\\) expects string, Symfony\\\\Component\\\\Security\\\\Core\\\\Role\\\\Role given\\.$#" + count: 4 + path: src/Bundle/ChillTaskBundle/Form/SingleTaskListType.php + + - + message: "#^Parameter \\#1 \\$extras of method Knp\\\\Menu\\\\MenuItem\\:\\:setExtras\\(\\) expects array\\, string given\\.$#" + count: 1 + path: src/Bundle/ChillTaskBundle/Menu/MenuBuilder.php + + - + message: "#^Parameter \\#2 \\$role of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\AuthorizationHelper\\:\\:getReachableCenters\\(\\) expects string, Symfony\\\\Component\\\\Security\\\\Core\\\\Role\\\\Role given\\.$#" count: 1 path: src/Bundle/ChillTaskBundle/Repository/SingleTaskRepository.php - - message: "#^Parameter \\$params of method Chill\\\\TaskBundle\\\\Repository\\\\SingleTaskRepository\\:\\:findByParameters\\(\\) has invalid type Chill\\\\TaskBundle\\\\Repository\\\\type\\.$#" + message: "#^Parameter \\#1 \\$event of method Symfony\\\\Contracts\\\\EventDispatcher\\\\EventDispatcherInterface\\:\\:dispatch\\(\\) expects object, string given\\.$#" count: 1 - path: src/Bundle/ChillTaskBundle/Repository/SingleTaskRepository.php + path: src/Bundle/ChillTaskBundle/Security/Authorization/TaskVoter.php - - message: "#^Property Chill\\\\TaskBundle\\\\Security\\\\Authorization\\\\AuthorizationEvent\\:\\:\\$vote \\(bool\\) does not accept null\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Security/Authorization/AuthorizationEvent.php - - - - message: "#^Call to method deleteItem\\(\\) on an unknown class Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CacheItempPoolInterface\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Templating/UI/CountNotificationTask.php - - - - message: "#^Call to method getItem\\(\\) on an unknown class Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CacheItempPoolInterface\\.$#" - count: 2 - path: src/Bundle/ChillTaskBundle/Templating/UI/CountNotificationTask.php - - - - message: "#^Call to method save\\(\\) on an unknown class Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CacheItempPoolInterface\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Templating/UI/CountNotificationTask.php - - - - message: "#^Property Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CountNotificationTask\\:\\:\\$cachePool \\(Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CacheItempPoolInterface\\) does not accept Psr\\\\Cache\\\\CacheItemPoolInterface\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Templating/UI/CountNotificationTask.php - - - - message: "#^Property Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CountNotificationTask\\:\\:\\$cachePool has unknown class Chill\\\\TaskBundle\\\\Templating\\\\UI\\\\CacheItempPoolInterface as its type\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Templating/UI/CountNotificationTask.php - - - - message: "#^Call to method getData\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 2 - path: src/Bundle/ChillTaskBundle/Timeline/SingleTaskTaskLifeCycleEventTimelineProvider.php - - - - message: "#^Call to method getTask\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Timeline/SingleTaskTaskLifeCycleEventTimelineProvider.php - - - - message: "#^Call to method getTransition\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Timeline/SingleTaskTaskLifeCycleEventTimelineProvider.php - - - - message: "#^Parameter \\$context of method Chill\\\\TaskBundle\\\\Timeline\\\\SingleTaskTaskLifeCycleEventTimelineProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Timeline/SingleTaskTaskLifeCycleEventTimelineProvider.php - - - - message: "#^Parameter \\$entity of method Chill\\\\TaskBundle\\\\Timeline\\\\SingleTaskTaskLifeCycleEventTimelineProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Timeline/SingleTaskTaskLifeCycleEventTimelineProvider.php - - - - message: "#^Call to method getData\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" + message: "#^Parameter \\#2 \\$role of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\AuthorizationHelper\\:\\:getReachableCenters\\(\\) expects string, Symfony\\\\Component\\\\Security\\\\Core\\\\Role\\\\Role given\\.$#" count: 1 path: src/Bundle/ChillTaskBundle/Timeline/TaskLifeCycleEventTimelineProvider.php - - message: "#^Call to method getTask\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 2 - path: src/Bundle/ChillTaskBundle/Timeline/TaskLifeCycleEventTimelineProvider.php + message: "#^Parameter \\#1 \\$storedObject of method Chill\\\\WopiBundle\\\\Service\\\\Wopi\\\\ChillDocumentManager\\:\\:getContent\\(\\) expects Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject, ChampsLibres\\\\WopiLib\\\\Contract\\\\Entity\\\\Document given\\.$#" + count: 3 + path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillDocumentManager.php - - message: "#^Call to method getTransition\\(\\) on an unknown class Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Timeline/TaskLifeCycleEventTimelineProvider.php - - - - message: "#^Parameter \\$context of method Chill\\\\TaskBundle\\\\Timeline\\\\TaskLifeCycleEventTimelineProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Timeline/TaskLifeCycleEventTimelineProvider.php - - - - message: "#^Parameter \\$entity of method Chill\\\\TaskBundle\\\\Timeline\\\\TaskLifeCycleEventTimelineProvider\\:\\:getEntityTemplate\\(\\) has invalid type Chill\\\\MainBundle\\\\Timeline\\\\type\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Timeline/TaskLifeCycleEventTimelineProvider.php - - - - message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Entity\\\\AbstractTask\\:\\:getId\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Workflow/TaskWorkflowManager.php - - - - message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Workflow\\\\TaskWorkflowDefinition\\:\\:getAssociatedWorkflowName\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Workflow/TaskWorkflowManager.php - - - - message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Workflow\\\\TaskWorkflowDefinition\\:\\:getWorkflowMetadata\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Workflow/TaskWorkflowManager.php - - - - message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Workflow\\\\TaskWorkflowDefinition\\:\\:isClosed\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Workflow/TaskWorkflowManager.php - - - - message: "#^Call to an undefined method Chill\\\\TaskBundle\\\\Workflow\\\\TaskWorkflowDefinition\\:\\:supports\\(\\)\\.$#" - count: 1 - path: src/Bundle/ChillTaskBundle/Workflow/TaskWorkflowManager.php - - - - message: "#^PHPDoc tag @return with type DateTime\\|null is not subtype of native type DateTimeImmutable\\|null\\.$#" - count: 1 - path: src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php - - - - message: "#^Property Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\:\\:\\$canonicalized is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php - - - - message: "#^Property Chill\\\\ThirdPartyBundle\\\\Entity\\\\ThirdParty\\:\\:\\$createdBy is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php - - - - message: "#^Property Chill\\\\ThirdPartyBundle\\\\Repository\\\\ThirdPartyACLAwareRepository\\:\\:\\$authorizationHelper is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillThirdPartyBundle/Repository/ThirdPartyACLAwareRepository.php - - - - message: "#^Property Chill\\\\ThirdPartyBundle\\\\Repository\\\\ThirdPartyACLAwareRepository\\:\\:\\$security is never read, only written\\.$#" - count: 1 - path: src/Bundle/ChillThirdPartyBundle/Repository/ThirdPartyACLAwareRepository.php - - - - message: "#^Argument of an invalid type string supplied for foreach, only iterables are supported\\.$#" - count: 1 - path: src/Bundle/ChillThirdPartyBundle/Repository/ThirdPartyRepository.php - - - - message: "#^Unreachable statement \\- code above always terminates\\.$#" - count: 1 - path: src/Bundle/ChillThirdPartyBundle/Security/Voter/ThirdPartyVoter.php - - - - message: "#^Strict comparison using \\=\\=\\= between null and Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillWopiBundle/src/Controller/Editor.php - - - - message: "#^Strict comparison using \\=\\=\\= between false and array will always evaluate to false\\.$#" - count: 1 - path: src/Bundle/ChillWopiBundle/src/Service/Wopi/AuthorizationManager.php - - - - message: "#^Default value of the parameter \\#2 \\$properties \\(array\\{\\}\\) of method Chill\\\\WopiBundle\\\\Service\\\\Wopi\\\\ChillDocumentManager\\:\\:write\\(\\) is incompatible with type array\\{content\\: string, size\\: int\\}\\.$#" + message: "#^Parameter \\#1 \\$storedObject of method Chill\\\\WopiBundle\\\\Service\\\\Wopi\\\\ChillDocumentManager\\:\\:setContent\\(\\) expects Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject, ChampsLibres\\\\WopiLib\\\\Contract\\\\Entity\\\\Document given\\.$#" count: 1 path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillDocumentManager.php - - message: "#^Method ChampsLibres\\\\WopiLib\\\\Contract\\\\Service\\\\WopiInterface\\:\\:checkFileInfo\\(\\) invoked with 4 parameters, 3 required\\.$#" + message: "#^Parameter \\#1 \\$type of method Chill\\\\DocStoreBundle\\\\Entity\\\\StoredObject\\:\\:setType\\(\\) expects string\\|null, false given\\.$#" count: 1 - path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillWopi.php + path: src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillDocumentManager.php diff --git a/phpstan-baseline.neon b/phpstan-baseline.neon index e69de29bb..8af07174d 100644 --- a/phpstan-baseline.neon +++ b/phpstan-baseline.neon @@ -0,0 +1,76 @@ +parameters: + ignoreErrors: + - + message: "#^Only booleans are allowed in an if condition, mixed given\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Entity/CustomField.php + + - + message: "#^Only booleans are allowed in an if condition, mixed given\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Form/PersonType.php + + - + message: "#^Only booleans are allowed in an if condition, mixed given\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Templating/ChillTwigRoutingHelper.php + + - + message: "#^Only booleans are allowed in an if condition, mixed given\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsGroup.php + + - + message: "#^Only booleans are allowed in an if condition, mixed given\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Repository/NotificationRepository.php + + - + message: "#^Foreach overwrites \\$key with its key variable\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php + + - + message: "#^Variable \\$participation might not be defined\\.$#" + count: 3 + path: src/Bundle/ChillEventBundle/Controller/ParticipationController.php + + - + message: "#^Foreach overwrites \\$value with its value variable\\.$#" + count: 1 + path: src/Bundle/ChillEventBundle/Form/ChoiceLoader/EventChoiceLoader.php + + - + message: "#^Cannot unset offset '_token' on array\\{formatter\\: mixed, export\\: mixed, centers\\: mixed, alias\\: string\\}\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Controller/ExportController.php + + - + message: "#^Foreach overwrites \\$line with its value variable\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Export/Formatter/CSVFormatter.php + + - + message: "#^Foreach overwrites \\$key with its key variable\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + + - + message: "#^Foreach overwrites \\$key with its value variable\\.$#" + count: 3 + path: src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php + + - + message: "#^Foreach overwrites \\$value with its value variable\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Form/ChoiceLoader/PostalCodeChoiceLoader.php + + - + message: "#^Foreach overwrites \\$value with its value variable\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Form/ChoiceLoader/PersonChoiceLoader.php + + - + message: "#^Foreach overwrites \\$value with its value variable\\.$#" + count: 1 + path: src/Bundle/ChillThirdPartyBundle/Form/ChoiceLoader/ThirdPartyChoiceLoader.php diff --git a/phpstan.neon.dist b/phpstan.neon.dist index e09bb5081..ab7c97139 100644 --- a/phpstan.neon.dist +++ b/phpstan.neon.dist @@ -1,5 +1,5 @@ parameters: - level: 5 + level: 3 paths: - src/ - utils/ From 20b38af81282980e35d5904e7753618186b77aa3 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 24 Apr 2024 10:16:16 +0200 Subject: [PATCH 024/136] Create phpstan baseline for level 5 taking into account new bundles --- phpstan-baseline.neon | 149 +++++++++++++++++++++++++++++++++++++----- phpstan.neon.dist | 2 +- 2 files changed, 133 insertions(+), 18 deletions(-) diff --git a/phpstan-baseline.neon b/phpstan-baseline.neon index 8af07174d..641bb5dcd 100644 --- a/phpstan-baseline.neon +++ b/phpstan-baseline.neon @@ -1,34 +1,29 @@ parameters: ignoreErrors: + - + message: "#^Foreach overwrites \\$key with its key variable\\.$#" + count: 1 + path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php + - message: "#^Only booleans are allowed in an if condition, mixed given\\.$#" count: 1 path: src/Bundle/ChillCustomFieldsBundle/Entity/CustomField.php - - message: "#^Only booleans are allowed in an if condition, mixed given\\.$#" + message: "#^Property Chill\\\\CustomFieldsBundle\\\\Entity\\\\CustomField\\:\\:\\$required \\(false\\) does not accept bool\\.$#" count: 1 - path: src/Bundle/ChillPersonBundle/Form/PersonType.php + path: src/Bundle/ChillCustomFieldsBundle/Entity/CustomField.php - - message: "#^Only booleans are allowed in an if condition, mixed given\\.$#" - count: 1 - path: src/Bundle/ChillMainBundle/Templating/ChillTwigRoutingHelper.php - - - - message: "#^Only booleans are allowed in an if condition, mixed given\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsGroup.php - - - - message: "#^Only booleans are allowed in an if condition, mixed given\\.$#" + message: "#^Parameter \\#1 \\$user of method Chill\\\\DocStoreBundle\\\\Entity\\\\Document\\:\\:setUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User\\|null, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" count: 2 - path: src/Bundle/ChillMainBundle/Repository/NotificationRepository.php + path: src/Bundle/ChillDocStoreBundle/Controller/DocumentAccompanyingCourseController.php - - message: "#^Foreach overwrites \\$key with its key variable\\.$#" - count: 1 - path: src/Bundle/ChillCustomFieldsBundle/Controller/CustomFieldsGroupController.php + message: "#^Parameter \\#1 \\$user of method Chill\\\\DocStoreBundle\\\\Entity\\\\Document\\:\\:setUser\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User\\|null, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface\\|null given\\.$#" + count: 2 + path: src/Bundle/ChillDocStoreBundle/Controller/DocumentPersonController.php - message: "#^Variable \\$participation might not be defined\\.$#" @@ -40,6 +35,106 @@ parameters: count: 1 path: src/Bundle/ChillEventBundle/Form/ChoiceLoader/EventChoiceLoader.php + - + message: "#^Comparison operation \"\\>\" between \\(bool\\|int\\|Redis\\) and 0 results in an error\\.$#" + count: 1 + path: src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php + + - + message: "#^Variable \\$response might not be defined\\.$#" + count: 1 + path: src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php + + - + message: "#^Function GuzzleHttp\\\\Psr7\\\\get not found\\.$#" + count: 1 + path: src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php + + - + message: "#^Function GuzzleHttp\\\\Psr7\\\\str not found\\.$#" + count: 2 + path: src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php + + - + message: "#^Parameter \\#1 \\$seconds of function sleep expects int, string given\\.$#" + count: 1 + path: src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php + + - + message: "#^Unreachable statement \\- code above always terminates\\.$#" + count: 1 + path: src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php + + - + message: "#^Parameter \\#1 \\$interval of method DateTimeImmutable\\:\\:add\\(\\) expects DateInterval, string\\|null given\\.$#" + count: 1 + path: src/Bundle/ChillJobBundle/src/Entity/Immersion.php + + - + message: "#^Parameter \\#1 \\$object of static method DateTimeImmutable\\:\\:createFromMutable\\(\\) expects DateTime, DateTimeInterface given\\.$#" + count: 1 + path: src/Bundle/ChillJobBundle/src/Entity/Immersion.php + + - + message: "#^Property Chill\\\\JobBundle\\\\Entity\\\\Rome\\\\Metier\\:\\:\\$appellations is never read, only written\\.$#" + count: 1 + path: src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php + + - + message: "#^Method Chill\\\\JobBundle\\\\Export\\\\ListCSPerson\\:\\:splitArrayToColumns\\(\\) never returns Closure so it can be removed from the return type\\.$#" + count: 1 + path: src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php + + - + message: "#^Variable \\$f might not be defined\\.$#" + count: 1 + path: src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php + + - + message: "#^Method Chill\\\\JobBundle\\\\Export\\\\ListFrein\\:\\:splitArrayToColumns\\(\\) never returns Closure so it can be removed from the return type\\.$#" + count: 1 + path: src/Bundle/ChillJobBundle/src/Export/ListFrein.php + + - + message: "#^Method Chill\\\\JobBundle\\\\Export\\\\ListProjetProfessionnel\\:\\:splitArrayToColumns\\(\\) never returns Closure so it can be removed from the return type\\.$#" + count: 1 + path: src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php + + - + message: "#^Property Chill\\\\JobBundle\\\\Form\\\\ChoiceLoader\\\\RomeAppellationChoiceLoader\\:\\:\\$appellationRepository \\(Chill\\\\JobBundle\\\\Repository\\\\Rome\\\\AppellationRepository\\) does not accept Doctrine\\\\ORM\\\\EntityRepository\\\\.$#" + count: 1 + path: src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php + + - + message: "#^Result of && is always false\\.$#" + count: 1 + path: src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php + + - + message: "#^Strict comparison using \\=\\=\\= between array\\{\\} and Symfony\\\\Component\\\\Validator\\\\ConstraintViolationListInterface will always evaluate to false\\.$#" + count: 2 + path: src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php + + - + message: "#^Strict comparison using \\=\\=\\= between null and string will always evaluate to false\\.$#" + count: 1 + path: src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php + + - + message: "#^Variable \\$metier might not be defined\\.$#" + count: 1 + path: src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php + + - + message: "#^Parameter \\#1 \\$interval of method DateTimeImmutable\\:\\:add\\(\\) expects DateInterval, string\\|null given\\.$#" + count: 1 + path: src/Bundle/ChillJobBundle/src/Security/Authorization/CSConnectesVoter.php + + - + message: "#^Parameter \\#1 \\$object of static method DateTimeImmutable\\:\\:createFromMutable\\(\\) expects DateTime, DateTimeInterface given\\.$#" + count: 1 + path: src/Bundle/ChillJobBundle/src/Security/Authorization/CSConnectesVoter.php + - message: "#^Cannot unset offset '_token' on array\\{formatter\\: mixed, export\\: mixed, centers\\: mixed, alias\\: string\\}\\.$#" count: 1 @@ -65,11 +160,31 @@ parameters: count: 1 path: src/Bundle/ChillMainBundle/Form/ChoiceLoader/PostalCodeChoiceLoader.php + - + message: "#^Only booleans are allowed in an if condition, mixed given\\.$#" + count: 2 + path: src/Bundle/ChillMainBundle/Repository/NotificationRepository.php + + - + message: "#^Parameter \\#1 \\$user of method Chill\\\\MainBundle\\\\Security\\\\Authorization\\\\AuthorizationHelper\\:\\:userHasAccessForCenter\\(\\) expects Chill\\\\MainBundle\\\\Entity\\\\User, Symfony\\\\Component\\\\Security\\\\Core\\\\User\\\\UserInterface given\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php + + - + message: "#^Only booleans are allowed in an if condition, mixed given\\.$#" + count: 1 + path: src/Bundle/ChillMainBundle/Templating/ChillTwigRoutingHelper.php + - message: "#^Foreach overwrites \\$value with its value variable\\.$#" count: 1 path: src/Bundle/ChillPersonBundle/Form/ChoiceLoader/PersonChoiceLoader.php + - + message: "#^Only booleans are allowed in an if condition, mixed given\\.$#" + count: 1 + path: src/Bundle/ChillPersonBundle/Form/PersonType.php + - message: "#^Foreach overwrites \\$value with its value variable\\.$#" count: 1 diff --git a/phpstan.neon.dist b/phpstan.neon.dist index ab7c97139..e09bb5081 100644 --- a/phpstan.neon.dist +++ b/phpstan.neon.dist @@ -1,5 +1,5 @@ parameters: - level: 3 + level: 5 paths: - src/ - utils/ From e312929d86413fa392bc1cad08fab7ff20e864b4 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 24 Apr 2024 10:16:54 +0200 Subject: [PATCH 025/136] php cs fixes --- .../Entity/ActivityReason.php | 2 - .../Entity/CustomField.php | 5 - .../Entity/CustomFieldsDefaultGroup.php | 4 +- .../Entity/CustomFieldsGroup.php | 2 - .../Entity/PersonDocument.php | 4 +- src/Bundle/ChillEventBundle/Entity/Event.php | 2 - .../ChillEventBundle/Entity/EventType.php | 1 - src/Bundle/ChillEventBundle/Entity/Role.php | 1 - src/Bundle/ChillEventBundle/Entity/Status.php | 1 - .../src/ApiHelper/ApiWrapper.php | 1 - .../src/ApiHelper/ProcessRequestTrait.php | 1 - .../src/Controller/CSCrudReportController.php | 2 +- .../src/Controller/CSPersonController.php | 2 +- .../src/Controller/CSReportController.php | 4 +- .../DependencyInjection/ChillJobExtension.php | 56 +-- .../ChillJobBundle/src/Entity/CSPerson.php | 335 +++++------------- src/Bundle/ChillJobBundle/src/Entity/CV.php | 30 +- .../src/Entity/CV/Experience.php | 28 -- .../src/Entity/CV/Formation.php | 13 - .../ChillJobBundle/src/Entity/Frein.php | 3 - .../ChillJobBundle/src/Entity/Immersion.php | 243 +++---------- .../src/Entity/ProjetProfessionnel.php | 11 +- .../src/Entity/Rome/Appellation.php | 4 - .../ChillJobBundle/src/Entity/Rome/Metier.php | 6 +- .../src/Export/ListCSPerson.php | 12 +- .../ChillJobBundle/src/Export/ListCV.php | 2 - .../ChillJobBundle/src/Export/ListFrein.php | 3 - .../src/Export/ListProjetProfessionnel.php | 3 - .../ChillJobBundle/src/Menu/MenuBuilder.php | 40 +-- .../Security/Authorization/ExportsVoter.php | 1 - src/Bundle/ChillMainBundle/Entity/Address.php | 2 +- .../Entity/Embeddable/CommentEmbeddable.php | 3 - .../ChillMainBundle/Entity/Language.php | 2 - .../ChillMainBundle/Entity/PostalCode.php | 5 - .../AccompanyingPeriod/ClosingMotive.php | 1 - .../ChillPersonBundle/Entity/Person.php | 3 - .../Export/Export/ListPerson.php | 6 +- .../ChillReportBundle/Entity/Report.php | 2 - .../ChillTaskBundle/Entity/RecurringTask.php | 6 - .../ChillTaskBundle/Entity/SingleTask.php | 4 - .../Entity/Task/AbstractTaskPlaceEvent.php | 1 - 41 files changed, 216 insertions(+), 641 deletions(-) diff --git a/src/Bundle/ChillActivityBundle/Entity/ActivityReason.php b/src/Bundle/ChillActivityBundle/Entity/ActivityReason.php index bf3542630..bf36ead6c 100644 --- a/src/Bundle/ChillActivityBundle/Entity/ActivityReason.php +++ b/src/Bundle/ChillActivityBundle/Entity/ActivityReason.php @@ -79,7 +79,6 @@ class ActivityReason /** * Set active. * - * * @return ActivityReason */ public function setActive(bool $active) @@ -109,7 +108,6 @@ class ActivityReason /** * Set name. * - * * @return ActivityReason */ public function setName(array $name) diff --git a/src/Bundle/ChillCustomFieldsBundle/Entity/CustomField.php b/src/Bundle/ChillCustomFieldsBundle/Entity/CustomField.php index 169d2ad46..06ff658c7 100644 --- a/src/Bundle/ChillCustomFieldsBundle/Entity/CustomField.php +++ b/src/Bundle/ChillCustomFieldsBundle/Entity/CustomField.php @@ -172,7 +172,6 @@ class CustomField /** * Set active. * - * * @return CustomField */ public function setActive(bool $active) @@ -223,8 +222,6 @@ class CustomField /** * Set order. * - * @param float $order - * * @return CustomField */ public function setOrdering(?float $order) @@ -254,8 +251,6 @@ class CustomField /** * Set type. * - * @param string $type - * * @return CustomField */ public function setType(?string $type) diff --git a/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsDefaultGroup.php b/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsDefaultGroup.php index 6f7c7a930..c0022d530 100644 --- a/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsDefaultGroup.php +++ b/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsDefaultGroup.php @@ -69,7 +69,7 @@ class CustomFieldsDefaultGroup * * @return CustomFieldsDefaultGroup */ - public function setCustomFieldsGroup(?\Chill\CustomFieldsBundle\Entity\CustomFieldsGroup $customFieldsGroup) + public function setCustomFieldsGroup(?CustomFieldsGroup $customFieldsGroup) { $this->customFieldsGroup = $customFieldsGroup; @@ -79,8 +79,6 @@ class CustomFieldsDefaultGroup /** * Set entity. * - * @param string $entity - * * @return CustomFieldsDefaultGroup */ public function setEntity(?string $entity) diff --git a/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsGroup.php b/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsGroup.php index 4ec64f6b6..d26098c58 100644 --- a/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsGroup.php +++ b/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldsGroup.php @@ -165,8 +165,6 @@ class CustomFieldsGroup /** * Set entity. * - * @param string $entity - * * @return CustomFieldsGroup */ public function setEntity(?string $entity) diff --git a/src/Bundle/ChillDocStoreBundle/Entity/PersonDocument.php b/src/Bundle/ChillDocStoreBundle/Entity/PersonDocument.php index 437695b9d..b6eefc733 100644 --- a/src/Bundle/ChillDocStoreBundle/Entity/PersonDocument.php +++ b/src/Bundle/ChillDocStoreBundle/Entity/PersonDocument.php @@ -55,14 +55,14 @@ class PersonDocument extends Document implements HasCenterInterface, HasScopeInt return $this->scope; } - public function setPerson(\Chill\PersonBundle\Entity\Person $person): self + public function setPerson(Person $person): self { $this->person = $person; return $this; } - public function setScope(?\Chill\MainBundle\Entity\Scope $scope): self + public function setScope(?Scope $scope): self { $this->scope = $scope; diff --git a/src/Bundle/ChillEventBundle/Entity/Event.php b/src/Bundle/ChillEventBundle/Entity/Event.php index 55b152132..4a3b4cd67 100644 --- a/src/Bundle/ChillEventBundle/Entity/Event.php +++ b/src/Bundle/ChillEventBundle/Entity/Event.php @@ -265,8 +265,6 @@ class Event implements HasCenterInterface, HasScopeInterface, TrackCreationInter /** * Set label. * - * @param string $label - * * @return Event */ public function setName(?string $label) diff --git a/src/Bundle/ChillEventBundle/Entity/EventType.php b/src/Bundle/ChillEventBundle/Entity/EventType.php index b0448325a..80741f766 100644 --- a/src/Bundle/ChillEventBundle/Entity/EventType.php +++ b/src/Bundle/ChillEventBundle/Entity/EventType.php @@ -146,7 +146,6 @@ class EventType /** * Set active. * - * * @return EventType */ public function setActive(bool $active) diff --git a/src/Bundle/ChillEventBundle/Entity/Role.php b/src/Bundle/ChillEventBundle/Entity/Role.php index 968e52353..7dbd8700c 100644 --- a/src/Bundle/ChillEventBundle/Entity/Role.php +++ b/src/Bundle/ChillEventBundle/Entity/Role.php @@ -81,7 +81,6 @@ class Role /** * Set active. * - * * @return Role */ public function setActive(bool $active) diff --git a/src/Bundle/ChillEventBundle/Entity/Status.php b/src/Bundle/ChillEventBundle/Entity/Status.php index 99dd84451..38c07879c 100644 --- a/src/Bundle/ChillEventBundle/Entity/Status.php +++ b/src/Bundle/ChillEventBundle/Entity/Status.php @@ -81,7 +81,6 @@ class Status /** * Set active. * - * * @return Status */ public function setActive(bool $active) diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php index 0e75e6e79..360f200cd 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php @@ -14,7 +14,6 @@ namespace Chill\FranceTravailApiBundle\ApiHelper; use Chill\MainBundle\Redis\ChillRedis; use GuzzleHttp\Client; use GuzzleHttp\Exception\ClientException; -use GuzzleHttp\Psr7; /** * Wraps the pole emploi api. diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ProcessRequestTrait.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ProcessRequestTrait.php index 7af5cb32d..efd41c223 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ProcessRequestTrait.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ProcessRequestTrait.php @@ -29,7 +29,6 @@ trait ProcessRequestTrait * * @param Request $request the request * @param array $parameters the requests parameters - * */ protected function handleRequest( Request $request, diff --git a/src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php b/src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php index 1d26e9089..6f0cc742c 100644 --- a/src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php +++ b/src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php @@ -116,7 +116,7 @@ class CSCrudReportController extends EntityPersonCRUDController * * @param int $id */ - public function editBilan(Request $request, $id): \Symfony\Component\HttpFoundation\Response + public function editBilan(Request $request, $id): Response { return $this->formEditAction('bilan', $request, $id); } diff --git a/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php b/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php index fd32ac8d8..0c4e44c0e 100644 --- a/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php +++ b/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php @@ -114,7 +114,7 @@ class CSPersonController extends OneToOneEntityPersonCRUDController case 'dispositifs_view': return '@ChillJob/CSPerson/dispositifs_view.html.twig'; default: - return parent::getTemplateFor($action, $entity, $request); + return parent::getTemplateFor($action, $entity, $request); } } diff --git a/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php b/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php index 6b7745cc4..3de5a68e0 100644 --- a/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php +++ b/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php @@ -24,9 +24,7 @@ use Chill\JobBundle\Security\Authorization\CSConnectesVoter; class CSReportController extends AbstractController { - public function __construct(private \Doctrine\Persistence\ManagerRegistry $managerRegistry) - { - } + public function __construct(private \Doctrine\Persistence\ManagerRegistry $managerRegistry) {} #[Route(path: '{_locale}/person/job/{person}/report', name: 'chill_job_report_index')] public function index(Person $person): Response diff --git a/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php b/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php index ffc760768..dce5d1d64 100644 --- a/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php +++ b/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php @@ -50,35 +50,35 @@ class ChillJobExtension extends Extension implements PrependExtensionInterface $this->prependRoute($container); } -/* protected function prependCruds(ContainerBuilder $container) - { - $container->prependExtensionConfig('chill_main', [ - 'cruds' => [ - [ - 'class' => CSPerson::class, - 'controller' => CSPersonController::class, - 'name' => 'admin_personal_situation', -// 'base_path' => '/admin/main/personal_situation', - 'base_role' => 'ROLE_USER', - 'form_class' => CSPersonPersonalSituationType::class, - 'actions' => [ - 'index' => [ - 'role' => 'ROLE_USER', - 'template' => '@ChillPerson/CRUD/index.html.twig', + /* protected function prependCruds(ContainerBuilder $container) + { + $container->prependExtensionConfig('chill_main', [ + 'cruds' => [ + [ + 'class' => CSPerson::class, + 'controller' => CSPersonController::class, + 'name' => 'admin_personal_situation', + // 'base_path' => '/admin/main/personal_situation', + 'base_role' => 'ROLE_USER', + 'form_class' => CSPersonPersonalSituationType::class, + 'actions' => [ + 'index' => [ + 'role' => 'ROLE_USER', + 'template' => '@ChillPerson/CRUD/index.html.twig', + ], + 'new' => [ + 'role' => 'ROLE_USER', + 'template' => '@ChillPerson/CRUD/new.html.twig', + ], + 'edit' => [ + 'role' => 'ROLE_USER', + 'template' => '@ChillPerson/CRUD/edit.html.twig', + ], ], - 'new' => [ - 'role' => 'ROLE_USER', - 'template' => '@ChillPerson/CRUD/new.html.twig', - ], - 'edit' => [ - 'role' => 'ROLE_USER', - 'template' => '@ChillPerson/CRUD/edit.html.twig', - ], - ], - ] - ], - ]); - }*/ + ] + ], + ]); + }*/ protected function prependRoute(ContainerBuilder $container): void { diff --git a/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php b/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php index 286d334ad..cdc01b177 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php @@ -1,5 +1,14 @@ niveauMaitriseLangue = null; return $this; @@ -543,7 +397,6 @@ class CSPerson /** * Get niveauMaitriseLangue. - * */ public function getNiveauMaitriseLangue() { @@ -551,20 +404,20 @@ class CSPerson } /** - * Valide niveauMaitriseLangue + * Valide niveauMaitriseLangue. * * @Assert\Callback() */ public function validateNiveauMatriseLangue(ExecutionContextInterface $context) { - if (NULL === $this->getNiveauMaitriseLangue()) { + if (null === $this->getNiveauMaitriseLangue()) { return; } if (\in_array('aucun', $this->getNiveauMaitriseLangue(), true)) { if (count($this->getNiveauMaitriseLangue()) > 1) { $context->buildViolation("Si \"Aucun\" est choisi dans la liste, il n'est " - . "pas possible de cocher d'autres indications") + ."pas possible de cocher d'autres indications") ->atPath('niveauMaitriseLangue') ->addViolation(); } @@ -574,8 +427,6 @@ class CSPerson /** * Set vehiculePersonnel. * - * @param bool $vehiculePersonnel - * * @return CSPerson */ public function setVehiculePersonnel(?bool $vehiculePersonnel) @@ -609,7 +460,6 @@ class CSPerson /** * Get permisConduire. - * */ public function getPermisConduire() { @@ -619,8 +469,6 @@ class CSPerson /** * Set situationProfessionnelle. * - * @param string $situationProfessionnelle - * * @return CSPerson */ public function setSituationProfessionnelle(?string $situationProfessionnelle) @@ -667,7 +515,6 @@ class CSPerson /** * Set typeContrat. * - * * @return CSPerson */ public function setTypeContrat($typeContrat) @@ -679,7 +526,6 @@ class CSPerson /** * Get typeContrat. - * */ public function getTypeContrat() { @@ -700,7 +546,6 @@ class CSPerson /** * Get ressources. - * */ public function getRessources() { @@ -710,8 +555,6 @@ class CSPerson /** * Set ressourcesComment. * - * @param string $ressourcesComment - * * @return CSPerson */ public function setRessourcesComment(?string $ressourcesComment) @@ -755,12 +598,12 @@ class CSPerson return $this->ressourceDate1Versement; } - function getCPFMontant() + public function getCPFMontant() { return $this->cPFMontant; } - function setCPFMontant(?float $cPFMontant) + public function setCPFMontant(?float $cPFMontant) { $this->cPFMontant = $cPFMontant; @@ -781,7 +624,6 @@ class CSPerson /** * Get accompagnement. - * */ public function getAccompagnement() { @@ -815,8 +657,6 @@ class CSPerson /** * Set accompagnementComment. * - * @param string $accompagnementComment - * * @return CSPerson */ public function setAccompagnementComment(?string $accompagnementComment) @@ -839,8 +679,6 @@ class CSPerson /** * Set poleEmploiId. * - * @param string $poleEmploiId - * * @return CSPerson */ public function setPoleEmploiId(?string $poleEmploiId) @@ -887,8 +725,6 @@ class CSPerson /** * Set cafId. * - * @param string $cafId - * * @return CSPerson */ public function setCafId(?string $cafId) @@ -1000,12 +836,9 @@ class CSPerson $this->pPAESignataire = $pPAESignataire; } - /** * Set nEETEligibilite. * - * @param bool $nEETEligibilite - * * @return CSPerson */ public function setNEETEligibilite(?bool $nEETEligibilite) @@ -1052,8 +885,6 @@ class CSPerson /** * Set fSEMaDemarcheCode. * - * @param string $fSEMaDemarcheCode - * * @return CSPerson */ public function setFSEMaDemarcheCode(?string $fSEMaDemarcheCode) @@ -1073,12 +904,12 @@ class CSPerson return $this->fSEMaDemarcheCode; } - function getDispositifsNotes() + public function getDispositifsNotes() { return $this->dispositifsNotes; } - function setDispositifsNotes(?string $dispositifsNotes) + public function setDispositifsNotes(?string $dispositifsNotes) { $this->dispositifsNotes = $dispositifsNotes; } @@ -1107,142 +938,142 @@ class CSPerson return $this->getPerson()->setMaritalStatus($maritalStatus); } - function getDocumentCV(): ?StoredObject + public function getDocumentCV(): ?StoredObject { return $this->documentCV; } - function getDocumentAgrementIAE(): ?StoredObject + public function getDocumentAgrementIAE(): ?StoredObject { return $this->documentAgrementIAE; } - function getDocumentRQTH(): ?StoredObject + public function getDocumentRQTH(): ?StoredObject { return $this->documentRQTH; } - function getDocumentAttestationNEET(): ?StoredObject + public function getDocumentAttestationNEET(): ?StoredObject { return $this->documentAttestationNEET; } - function getDocumentCI(): ?StoredObject + public function getDocumentCI(): ?StoredObject { return $this->documentCI; } - function getDocumentTitreSejour(): ?StoredObject + public function getDocumentTitreSejour(): ?StoredObject { return $this->documentTitreSejour; } - function getDocumentAttestationFiscale(): ?StoredObject + public function getDocumentAttestationFiscale(): ?StoredObject { return $this->documentAttestationFiscale; } - function getDocumentPermis(): ?StoredObject + public function getDocumentPermis(): ?StoredObject { return $this->documentPermis; } - function getDocumentAttestationCAAF(): ?StoredObject + public function getDocumentAttestationCAAF(): ?StoredObject { return $this->documentAttestationCAAF; } - function getDocumentContraTravail(): ?StoredObject + public function getDocumentContraTravail(): ?StoredObject { return $this->documentContraTravail; } - function getDocumentAttestationFormation(): ?StoredObject + public function getDocumentAttestationFormation(): ?StoredObject { return $this->documentAttestationFormation; } - function getDocumentQuittanceLoyer(): ?StoredObject + public function getDocumentQuittanceLoyer(): ?StoredObject { return $this->documentQuittanceLoyer; } - function getDocumentFactureElectricite(): ?StoredObject + public function getDocumentFactureElectricite(): ?StoredObject { return $this->documentFactureElectricite; } - function getPrescripteur(): ?ThirdParty + public function getPrescripteur(): ?ThirdParty { return $this->prescripteur; } - function setDocumentCV(StoredObject $documentCV = null) + public function setDocumentCV(?StoredObject $documentCV = null) { $this->documentCV = $documentCV; } - function setDocumentAgrementIAE(StoredObject $documentAgrementIAE = null) + public function setDocumentAgrementIAE(?StoredObject $documentAgrementIAE = null) { $this->documentAgrementIAE = $documentAgrementIAE; } - function setDocumentRQTH(StoredObject $documentRQTH = null) + public function setDocumentRQTH(?StoredObject $documentRQTH = null) { $this->documentRQTH = $documentRQTH; } - function setDocumentAttestationNEET(StoredObject $documentAttestationNEET = null) + public function setDocumentAttestationNEET(?StoredObject $documentAttestationNEET = null) { $this->documentAttestationNEET = $documentAttestationNEET; } - function setDocumentCI(StoredObject $documentCI = null) + public function setDocumentCI(?StoredObject $documentCI = null) { $this->documentCI = $documentCI; } - function setDocumentTitreSejour(StoredObject $documentTitreSejour = null) + public function setDocumentTitreSejour(?StoredObject $documentTitreSejour = null) { $this->documentTitreSejour = $documentTitreSejour; } - function setDocumentAttestationFiscale(StoredObject $documentAttestationFiscale = null) + public function setDocumentAttestationFiscale(?StoredObject $documentAttestationFiscale = null) { $this->documentAttestationFiscale = $documentAttestationFiscale; } - function setDocumentPermis(StoredObject $documentPermis = null) + public function setDocumentPermis(?StoredObject $documentPermis = null) { $this->documentPermis = $documentPermis; } - function setDocumentAttestationCAAF(StoredObject $documentAttestationCAAF = null) + public function setDocumentAttestationCAAF(?StoredObject $documentAttestationCAAF = null) { $this->documentAttestationCAAF = $documentAttestationCAAF; } - function setDocumentContraTravail(StoredObject $documentContraTravail = null) + public function setDocumentContraTravail(?StoredObject $documentContraTravail = null) { $this->documentContraTravail = $documentContraTravail; } - function setDocumentAttestationFormation(StoredObject $documentAttestationFormation = null) + public function setDocumentAttestationFormation(?StoredObject $documentAttestationFormation = null) { $this->documentAttestationFormation = $documentAttestationFormation; } - function setDocumentQuittanceLoyer(StoredObject $documentQuittanceLoyer = null) + public function setDocumentQuittanceLoyer(?StoredObject $documentQuittanceLoyer = null) { $this->documentQuittanceLoyer = $documentQuittanceLoyer; } - function setDocumentFactureElectricite(StoredObject $documentFactureElectricite = null) + public function setDocumentFactureElectricite(?StoredObject $documentFactureElectricite = null) { $this->documentFactureElectricite = $documentFactureElectricite; } - function setPrescripteur(ThirdParty $prescripteur = null) + public function setPrescripteur(?ThirdParty $prescripteur = null) { $this->prescripteur = $prescripteur; } @@ -1309,42 +1140,49 @@ class CSPerson public function setSituationLogementPrecision(?string $situationLogementPrecision) { $this->situationLogementPrecision = $situationLogementPrecision; + return $this; } public function setAcompteDIF(?float $acompteDIF) { $this->acompteDIF = $acompteDIF; + return $this; } public function setHandicapIs(?bool $handicapIs) { $this->handicapIs = $handicapIs; + return $this; } public function setHandicapNotes(?string $handicapNotes) { $this->handicapNotes = $handicapNotes; + return $this; } public function setHandicapRecommandation(?string $handicapRecommandation) { $this->handicapRecommandation = $handicapRecommandation; + return $this; } - public function setHandicapAccompagnement(ThirdParty $handicapAccompagnement = null) + public function setHandicapAccompagnement(?ThirdParty $handicapAccompagnement = null) { $this->handicapAccompagnement = $handicapAccompagnement; + return $this; } - public function setDocumentAttestationSecuriteSociale(StoredObject $documentAttestationSecuriteSociale = null) + public function setDocumentAttestationSecuriteSociale(?StoredObject $documentAttestationSecuriteSociale = null) { $this->documentAttestationSecuriteSociale = $documentAttestationSecuriteSociale; + return $this; } @@ -1353,9 +1191,10 @@ class CSPerson return $this->dateContratIEJ; } - public function setDateContratIEJ(\DateTime $dateContratIEJ = null) + public function setDateContratIEJ(?\DateTime $dateContratIEJ = null) { $this->dateContratIEJ = $dateContratIEJ; + return $this; } @@ -1367,6 +1206,7 @@ class CSPerson public function setTypeContratAide(?string $typeContratAide) { $this->typeContratAide = $typeContratAide; + return $this; } @@ -1381,7 +1221,4 @@ class CSPerson return $this; } - - - } diff --git a/src/Bundle/ChillJobBundle/src/Entity/CV.php b/src/Bundle/ChillJobBundle/src/Entity/CV.php index 90a8e772e..709419079 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CV.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CV.php @@ -72,6 +72,7 @@ class CV implements \Stringable /** * @Assert\Valid(traverse=true) + * * @var \Doctrine\Common\Collections\Collection */ #[ORM\OneToMany(targetEntity: CV\Formation::class, mappedBy: 'CV', cascade: ['persist', 'remove', 'detach'], orphanRemoval: true)] @@ -80,6 +81,7 @@ class CV implements \Stringable /** * @Assert\Valid(traverse=true) + * * @var \Doctrine\Common\Collections\Collection */ #[ORM\OneToMany(targetEntity: CV\Experience::class, mappedBy: 'CV', cascade: ['persist', 'remove', 'detach'], orphanRemoval: true)] @@ -108,9 +110,6 @@ class CV implements \Stringable /** * Set reportDate. - * - * - * @return CV */ public function setReportDate(\DateTime $reportDate): self { @@ -121,21 +120,16 @@ class CV implements \Stringable /** * Get reportDate. - * */ - public function getReportDate(): \DateTimeInterface|null + public function getReportDate(): ?\DateTimeInterface { return $this->reportDate; } /** * Set formationLevel. - * - * @param string|null $formationLevel - * - * @return CV */ - public function setFormationLevel(string $formationLevel = null): self + public function setFormationLevel(?string $formationLevel = null): self { $this->formationLevel = $formationLevel; @@ -154,9 +148,6 @@ class CV implements \Stringable /** * Set formationType. - * - * - * @return CV */ public function setFormationType(string $formationType): self { @@ -167,8 +158,6 @@ class CV implements \Stringable /** * Get formationType. - * - * @return string */ public function getFormationType(): ?string { @@ -178,7 +167,7 @@ class CV implements \Stringable /** * Set spokenLanguages. * - * @return CV + * @param mixed|null $spokenLanguages */ public function setSpokenLanguages($spokenLanguages = null): self { @@ -189,7 +178,6 @@ class CV implements \Stringable /** * Get spokenLanguages. - * */ public function getSpokenLanguages(): array { @@ -198,12 +186,8 @@ class CV implements \Stringable /** * Set notes. - * - * @param string|null $notes - * - * @return CV */ - public function setNotes(string $notes = null): self + public function setNotes(?string $notes = null): self { $this->notes = $notes; @@ -212,8 +196,6 @@ class CV implements \Stringable /** * Get notes. - * - * @return string|null */ public function getNotes(): ?string { diff --git a/src/Bundle/ChillJobBundle/src/Entity/CV/Experience.php b/src/Bundle/ChillJobBundle/src/Entity/CV/Experience.php index f0978e139..19d444338 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CV/Experience.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CV/Experience.php @@ -69,8 +69,6 @@ class Experience /** * Get id. - * - * @return int */ public function getId(): ?int { @@ -79,9 +77,6 @@ class Experience /** * Set poste. - * - * - * @return Experience */ public function setPoste(?string $poste = null): self { @@ -92,8 +87,6 @@ class Experience /** * Get poste. - * - * @return string|null */ public function getPoste(): ?string { @@ -102,9 +95,6 @@ class Experience /** * Set structure. - * - * - * @return Experience */ public function setStructure(?string $structure = null): self { @@ -115,8 +105,6 @@ class Experience /** * Get structure. - * - * @return string|null */ public function getStructure(): ?string { @@ -127,8 +115,6 @@ class Experience * Set startDate. * * @param \DateTime|null $startDate - * - * @return Experience */ public function setStartDate(?\DateTimeInterface $startDate = null): self { @@ -151,8 +137,6 @@ class Experience * Set endDate. * * @param \DateTime|null $endDate - * - * @return Experience */ public function setEndDate(?\DateTimeInterface $endDate = null): self { @@ -173,10 +157,6 @@ class Experience /** * Set contratType. - * - * @param string $contratType - * - * @return Experience */ public function setContratType(?string $contratType): self { @@ -187,8 +167,6 @@ class Experience /** * Get contratType. - * - * @return string */ public function getContratType(): ?string { @@ -197,10 +175,6 @@ class Experience /** * Set notes. - * - * @param string $notes - * - * @return Experience */ public function setNotes(?string $notes): self { @@ -211,8 +185,6 @@ class Experience /** * Get notes. - * - * @return string */ public function getNotes(): ?string { diff --git a/src/Bundle/ChillJobBundle/src/Entity/CV/Formation.php b/src/Bundle/ChillJobBundle/src/Entity/CV/Formation.php index 1c4343e3d..84bfda163 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CV/Formation.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CV/Formation.php @@ -77,8 +77,6 @@ class Formation /** * Set title. * - * @param string $title - * * @return Formation */ public function setTitle(?string $title) @@ -168,9 +166,6 @@ class Formation /** * Set diplomaReconnue. - * - * - * @return Formation */ public function setDiplomaReconnue(?string $diplomaReconnue = null): self { @@ -181,8 +176,6 @@ class Formation /** * Get diplomaReconnue. - * - * @return string|null */ public function getDiplomaReconnue(): ?string { @@ -191,10 +184,6 @@ class Formation /** * Set organisme. - * - * @param string $organisme - * - * @return Formation */ public function setOrganisme(?string $organisme): self { @@ -205,8 +194,6 @@ class Formation /** * Get organisme. - * - * @return string */ public function getOrganisme(): ?string { diff --git a/src/Bundle/ChillJobBundle/src/Entity/Frein.php b/src/Bundle/ChillJobBundle/src/Entity/Frein.php index 437df44fe..722109069 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Frein.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Frein.php @@ -79,7 +79,6 @@ class Frein implements HasPerson, \Stringable private ?string $notesEmploi = ''; /** - * * @ORM\ManytoOne( * targetEntity="Chill\PersonBundle\Entity\Person") * @@ -97,7 +96,6 @@ class Frein implements HasPerson, \Stringable return $this->id; } - public function setReportDate(?\DateTimeInterface $reportDate): self { $this->reportDate = $reportDate; @@ -105,7 +103,6 @@ class Frein implements HasPerson, \Stringable return $this; } - public function getReportDate(): ?\DateTimeInterface { return $this->reportDate; diff --git a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php index e39c053d1..88591f732 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php @@ -1,5 +1,14 @@ false])] private ?bool $isBilanFullfilled = false; @@ -208,7 +173,7 @@ class Immersion implements \Stringable 'respect_consigne_securite', 'relation_hierarchie', 'capacite_adaptation', - 'motivation_travail' + 'motivation_travail', ]; /** @@ -217,212 +182,105 @@ class Immersion implements \Stringable #[ORM\Column(name: 'savoirEtre', type: \Doctrine\DBAL\Types\Types::JSON, nullable: true)] private $savoirEtre; - /** - * - * @var string - */ #[ORM\Column(name: 'savoirEtreNote', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $savoirEtreNote = null; - /** - * @var string - */ #[ORM\Column(name: 'noteimmersion', type: \Doctrine\DBAL\Types\Types::TEXT)] private ?string $noteImmersion = ''; - /** - * @var string|null - */ #[ORM\Column(name: 'principalesActivites', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $principalesActivites = null; - /** - * @var string|null - */ #[ORM\Column(name: 'competencesAcquises', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $competencesAcquises = null; - /** - * @var string|null - */ #[ORM\Column(name: 'competencesADevelopper', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $competencesADevelopper = null; - /** - * @var string|null - */ #[ORM\Column(name: 'noteBilan', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $noteBilan = null; public const PONCTUALITE_SALARIE = [ 'aucun', 'un', - 'plusieurs' + 'plusieurs', ]; - /** - * - * @var string|null - */ #[ORM\Column(name: 'ponctualite_salarie', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $ponctualiteSalarie = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'ponctualite_salarie_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $ponctualiteSalarieNote = null; public const ASSIDUITE = [ 'aucun', 'un', - 'plusieurs' + 'plusieurs', ]; - /** - * - * @var string|null - */ #[ORM\Column(name: 'assiduite', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $assiduite = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'assiduite_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $assiduiteNote = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'interet_activite', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $interetActivite = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'interet_activite_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $interetActiviteNote = null; public const INTEGRE_REGLE = [ '1_temps', 'rapidement', - 'pas_encore' + 'pas_encore', ]; - /** - * - * @var string|null - */ #[ORM\Column(name: 'integre_regle', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $integreRegle = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'integre_regle_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $integreRegleNote = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'esprit_initiative', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $espritInitiative = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'esprit_initiative_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $espritInitiativeNote = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'organisation', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $organisation = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'organisation_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $organisationNote = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'capacite_travail_equipe', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $capaciteTravailEquipe = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'capacite_travail_equipe_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $capaciteTravailEquipeNote = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'style_vestimentaire', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $styleVestimentaire = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'style_vestimentaire_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $styleVestimentaireNote = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'langage_prof', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $langageProf = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'langage_prof_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $langageProfNote = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'applique_consigne', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $appliqueConsigne = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'applique_consigne_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $appliqueConsigneNote = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'respect_hierarchie', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $respectHierarchie = null; - /** - * - * @var string|null - */ #[ORM\Column(name: 'respect_hierarchie_note', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $respectHierarchieNote = null; @@ -439,7 +297,6 @@ class Immersion implements \Stringable /** * Set domaineActivite. * - * * @return Immersion */ public function setDomaineActivite(?string $domaineActivite = null) @@ -462,7 +319,6 @@ class Immersion implements \Stringable /** * Set tuteurName. * - * * @return Immersion */ public function setTuteurName(?string $tuteurName = null) @@ -485,7 +341,6 @@ class Immersion implements \Stringable /** * Set tuteurFonction. * - * * @return Immersion */ public function setTuteurFonction(?string $tuteurFonction = null) @@ -508,7 +363,6 @@ class Immersion implements \Stringable /** * Set tuteurPhoneNumber. * - * * @return Immersion */ public function setTuteurPhoneNumber(?string $tuteurPhoneNumber = null) @@ -531,7 +385,6 @@ class Immersion implements \Stringable /** * Set structureAccName. * - * * @return Immersion */ public function setStructureAccName(?string $structureAccName = null) @@ -554,8 +407,6 @@ class Immersion implements \Stringable /** * Set structureAccPhonenumber. * - * @param string $structureAccPhonenumber - * * @return Immersion */ public function setStructureAccPhonenumber(?string $structureAccPhonenumber) @@ -578,7 +429,6 @@ class Immersion implements \Stringable /** * Set posteDescriptif. * - * * @return Immersion */ public function setPosteDescriptif(?string $posteDescriptif = null) @@ -601,7 +451,6 @@ class Immersion implements \Stringable /** * Set posteTitle. * - * * @return Immersion */ public function setPosteTitle(?string $posteTitle = null) @@ -624,7 +473,6 @@ class Immersion implements \Stringable /** * Set posteLieu. * - * * @return Immersion */ public function setPosteLieu(?string $posteLieu = null) @@ -702,7 +550,6 @@ class Immersion implements \Stringable /** * Set horaire. * - * * @return Immersion */ public function setHoraire(?string $horaire = null) @@ -809,7 +656,6 @@ class Immersion implements \Stringable /** * Set principalesActivites. * - * * @return Immersion */ public function setPrincipalesActivites(?string $principalesActivites = null) @@ -832,7 +678,6 @@ class Immersion implements \Stringable /** * Set competencesAcquises. * - * * @return Immersion */ public function setCompetencesAcquises(?string $competencesAcquises = null) @@ -855,7 +700,6 @@ class Immersion implements \Stringable /** * Set competencesADevelopper. * - * * @return Immersion */ public function setCompetencesADevelopper(?string $competencesADevelopper = null) @@ -878,7 +722,6 @@ class Immersion implements \Stringable /** * Set noteBilan. * - * * @return Immersion */ public function setNoteBilan(?string $noteBilan = null) @@ -916,18 +759,21 @@ class Immersion implements \Stringable public function setPerson(Person $person) { $this->person = $person; + return $this; } public function setEntreprise(ThirdParty $entreprise) { $this->entreprise = $entreprise; + return $this; } public function setReferent(User $referent) { $this->referent = $referent; + return $this; } @@ -944,12 +790,14 @@ class Immersion implements \Stringable public function setStructureAccEmail(?string $structureAccEmail) { $this->structureAccEmail = $structureAccEmail; + return $this; } public function setStructureAccAddress(Address $structureAccAddress) { $this->structureAccAddress = $structureAccAddress; + return $this; } @@ -966,12 +814,14 @@ class Immersion implements \Stringable public function setIsBilanFullfilled(?bool $isBilanFullfilled) { $this->isBilanFullfilled = $isBilanFullfilled; + return $this; } public function setSavoirEtreNote(?string $savoirEtreNote) { $this->savoirEtreNote = $savoirEtreNote; + return $this; } @@ -1088,132 +938,154 @@ class Immersion implements \Stringable public function setPonctualiteSalarie(?string $ponctualiteSalarie) { $this->ponctualiteSalarie = $ponctualiteSalarie; + return $this; } public function setPonctualiteSalarieNote(?string $ponctualiteSalarieNote) { $this->ponctualiteSalarieNote = $ponctualiteSalarieNote; + return $this; } public function setAssiduite(?string $assiduite) { $this->assiduite = $assiduite; + return $this; } public function setAssiduiteNote(?string $assiduiteNote) { $this->assiduiteNote = $assiduiteNote; + return $this; } public function setInteretActivite(?string $interetActivite) { $this->interetActivite = $interetActivite; + return $this; } public function setInteretActiviteNote(?string $interetActiviteNote) { $this->interetActiviteNote = $interetActiviteNote; + return $this; } public function setIntegreRegle(?string $integreRegle) { $this->integreRegle = $integreRegle; + return $this; } public function setIntegreRegleNote(?string $integreRegleNote) { $this->integreRegleNote = $integreRegleNote; + return $this; } public function setEspritInitiative(?string $espritInitiative) { $this->espritInitiative = $espritInitiative; + return $this; } public function setEspritInitiativeNote(?string $espritInitiativeNote) { $this->espritInitiativeNote = $espritInitiativeNote; + return $this; } public function setOrganisation(?string $organisation) { $this->organisation = $organisation; + return $this; } public function setOrganisationNote(?string $organisationNote) { $this->organisationNote = $organisationNote; + return $this; } public function setCapaciteTravailEquipe(?string $capaciteTravailEquipe) { $this->capaciteTravailEquipe = $capaciteTravailEquipe; + return $this; } public function setCapaciteTravailEquipeNote(?string $capaciteTravailEquipeNote) { $this->capaciteTravailEquipeNote = $capaciteTravailEquipeNote; + return $this; } public function setStyleVestimentaire(?string $styleVestimentaire) { $this->styleVestimentaire = $styleVestimentaire; + return $this; } public function setStyleVestimentaireNote(?string $styleVestimentaireNote) { $this->styleVestimentaireNote = $styleVestimentaireNote; + return $this; } public function setLangageProf(?string $langageProf) { $this->langageProf = $langageProf; + return $this; } public function setLangageProfNote(?string $langageProfNote) { $this->langageProfNote = $langageProfNote; + return $this; } public function setAppliqueConsigne(?string $appliqueConsigne) { $this->appliqueConsigne = $appliqueConsigne; + return $this; } public function setAppliqueConsigneNote(?string $appliqueConsigneNote) { $this->appliqueConsigneNote = $appliqueConsigneNote; + return $this; } public function setRespectHierarchie(?string $respectHierarchie) { $this->respectHierarchie = $respectHierarchie; + return $this; } public function setRespectHierarchieNote(?string $respectHierarchieNote) { $this->respectHierarchieNote = $respectHierarchieNote; + return $this; } @@ -1221,5 +1093,4 @@ class Immersion implements \Stringable { return 'Rapport "immersion" de '.$this->getPerson(); } - } diff --git a/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php b/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php index ecf172d95..363098f3a 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php +++ b/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php @@ -55,7 +55,7 @@ class ProjetProfessionnel implements \Stringable #[ORM\ManyToMany(targetEntity: Appellation::class, cascade: ['persist'])] private Collection $souhait; - #[ORM\Column(name: 'domaineActiviteSouhait', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] + #[ORM\Column(name: 'domaineActiviteSouhait', type: Types::TEXT, nullable: true)] private ?string $domaineActiviteSouhait = null; public const TYPE_CONTRAT = [ @@ -156,6 +156,7 @@ class ProjetProfessionnel implements \Stringable /** * Set typeContrat. * + * @param mixed|null $typeContrat * * @return ProjetProfessionnel */ @@ -168,7 +169,6 @@ class ProjetProfessionnel implements \Stringable /** * Get typeContrat. - * */ public function getTypeContrat() { @@ -200,6 +200,7 @@ class ProjetProfessionnel implements \Stringable /** * Set volumeHoraire. * + * @param mixed|null $volumeHoraire * * @return ProjetProfessionnel */ @@ -212,7 +213,6 @@ class ProjetProfessionnel implements \Stringable /** * Get volumeHoraire. - * */ public function getVolumeHoraire() { @@ -222,7 +222,6 @@ class ProjetProfessionnel implements \Stringable /** * Set volumeHoraireNotes. * - * * @return ProjetProfessionnel */ public function setVolumeHoraireNotes(?string $volumeHoraireNotes = null) @@ -245,7 +244,6 @@ class ProjetProfessionnel implements \Stringable /** * Set idee. * - * * @return ProjetProfessionnel */ public function setIdee(?string $idee = null) @@ -268,7 +266,6 @@ class ProjetProfessionnel implements \Stringable /** * Set enCoursConstruction. * - * * @return ProjetProfessionnel */ public function setEnCoursConstruction(?string $enCoursConstruction = null) @@ -291,7 +288,6 @@ class ProjetProfessionnel implements \Stringable /** * Set valideNotes. * - * * @return ProjetProfessionnel */ public function setValideNotes(?string $valideNotes = null) @@ -314,7 +310,6 @@ class ProjetProfessionnel implements \Stringable /** * Set projetProfessionnelNote. * - * * @return ProjetProfessionnel */ public function setProjetProfessionnelNote(?string $projetProfessionnelNote = null) diff --git a/src/Bundle/ChillJobBundle/src/Entity/Rome/Appellation.php b/src/Bundle/ChillJobBundle/src/Entity/Rome/Appellation.php index 455240181..2fda76700 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Rome/Appellation.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Rome/Appellation.php @@ -47,8 +47,6 @@ class Appellation implements \Stringable /** * Set code. * - * @param string $code - * * @return Appellation */ public function setCode(?string $code) @@ -71,8 +69,6 @@ class Appellation implements \Stringable /** * Set libelle. * - * @param string $libelle - * * @return Appellation */ public function setLibelle(?string $libelle) diff --git a/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php b/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php index eeaaff951..0f0ffe3bc 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php @@ -41,7 +41,7 @@ class Metier public function __construct() { $this->appellations = new ArrayCollection(); -// $this->appellation = new ArrayCollection(); + // $this->appellation = new ArrayCollection(); } /** @@ -57,8 +57,6 @@ class Metier /** * Set libelle. * - * @param string $libelle - * * @return Metier */ public function setLibelle(?string $libelle) @@ -81,8 +79,6 @@ class Metier /** * Set code. * - * @param string $code - * * @return Metier */ public function setCode(?string $code) diff --git a/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php b/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php index 74486efdc..c8d540a31 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php @@ -237,7 +237,7 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal break; case 'type_contrat__label': - if ($value !== '') { + if ('' !== $value) { $res[$key] = ($f) ? $value : null; } else { $res[$key] = null; @@ -340,7 +340,6 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal /** * @param \Doctrine\ORM\NativeQuery|\Doctrine\ORM\QueryBuilder $qb * @param mixed[] $data - * */ public function getResult($qb, $data) { @@ -381,7 +380,6 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal * @param string $key The column key, as added in the query * @param mixed[] $values The values from the result. if there are duplicates, those might be given twice. Example: array('FR', 'BE', 'CZ', 'FR', 'BE', 'FR') * @param mixed $data The data from the export's form (as defined in `buildForm` - * */ public function getLabels($key, array $values, $data) { @@ -401,7 +399,7 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal str_replace('__', '.', $key) ); } - if ($value === '') { + if ('' === $value) { return ''; } $arr = []; @@ -418,7 +416,7 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal str_replace('__', '.', $key) ); } - if ($value === '') { + if ('' === $value) { return ''; } $this->translationCompatKey($value, $key); @@ -429,7 +427,7 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal if ('_header' === $value) { return $key; } - if ($value === '') { + if ('' === $value) { return ''; } @@ -457,7 +455,7 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal if ('_header' === $value) { return $key; } - if ($value === '') { + if ('' === $value) { return ''; } diff --git a/src/Bundle/ChillJobBundle/src/Export/ListCV.php b/src/Bundle/ChillJobBundle/src/Export/ListCV.php index 90a0312e4..51ca0f3f4 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListCV.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListCV.php @@ -238,7 +238,6 @@ class ListCV implements ListInterface, ExportElementValidatedInterface * * @param QueryBuilder|\Doctrine\ORM\NativeQuery $qb * @param mixed[] $data the data from the export's form (added by self::buildForm) - * */ public function getResult($qb, $data) { @@ -312,7 +311,6 @@ class ListCV implements ListInterface, ExportElementValidatedInterface * @param string $key The column key, as added in the query * @param mixed[] $values The values from the result. if there are duplicates, those might be given twice. Example: array('FR', 'BE', 'CZ', 'FR', 'BE', 'FR') * @param mixed $data The data from the export's form (as defined in `buildForm` - * */ public function getLabels($key, array $values, $data) { diff --git a/src/Bundle/ChillJobBundle/src/Export/ListFrein.php b/src/Bundle/ChillJobBundle/src/Export/ListFrein.php index 0d5ecb3da..b94cc0342 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListFrein.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListFrein.php @@ -204,7 +204,6 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface /** * Return the required Role to execute the Export. - * */ public function requiredRole(): string { @@ -332,7 +331,6 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface * * @param QueryBuilder|\Doctrine\ORM\NativeQuery $qb * @param mixed[] $data the data from the export's form (added by self::buildForm) - * */ public function getResult($qb, $data) { @@ -408,7 +406,6 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface * @param string $key The column key, as added in the query * @param mixed[] $values The values from the result. if there are duplicates, those might be given twice. Example: array('FR', 'BE', 'CZ', 'FR', 'BE', 'FR') * @param mixed $data The data from the export's form (as defined in `buildForm` - * */ public function getLabels($key, array $values, $data) { diff --git a/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php b/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php index 0704a8686..73434474b 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php @@ -210,7 +210,6 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn /** * Return the required Role to execute the Export. - * */ public function requiredRole(): string { @@ -370,7 +369,6 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn * * @param QueryBuilder|\Doctrine\ORM\NativeQuery $qb * @param mixed[] $data the data from the export's form (added by self::buildForm) - * */ public function getResult($qb, $data) { @@ -446,7 +444,6 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn * @param string $key The column key, as added in the query * @param mixed[] $values The values from the result. if there are duplicates, those might be given twice. Example: array('FR', 'BE', 'CZ', 'FR', 'BE', 'FR') * @param mixed $data The data from the export's form (as defined in `buildForm` - * */ public function getLabels($key, array $values, $data) { diff --git a/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php b/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php index b9d521a54..7faa51ed9 100644 --- a/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php +++ b/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php @@ -33,26 +33,26 @@ class MenuBuilder implements LocalMenuBuilderInterface /** @var \Chill\PersonBundle\Entity\Person $person */ $person = $parameters['person']; -// if ($this->authorizationChecker->isGranted(CSConnectesVoter::REPORT_NEW, $person)) { - $menu->addChild('Situation personnelle', [ - 'route' => 'chill_job_personal_situation_view', - 'routeParameters' => [ - 'person' => $person->getId(), - ], - ]) - ->setExtras([ - 'order' => 50, - ]); - $menu->addChild('Dispositifs', [ - 'route' => 'chill_job_dispositifs_view', - 'routeParameters' => [ - 'person' => $person->getId(), - ], - ]) - ->setExtras([ - 'order' => 51, - ]); -// } + // if ($this->authorizationChecker->isGranted(CSConnectesVoter::REPORT_NEW, $person)) { + $menu->addChild('Situation personnelle', [ + 'route' => 'chill_job_personal_situation_view', + 'routeParameters' => [ + 'person' => $person->getId(), + ], + ]) + ->setExtras([ + 'order' => 50, + ]); + $menu->addChild('Dispositifs', [ + 'route' => 'chill_job_dispositifs_view', + 'routeParameters' => [ + 'person' => $person->getId(), + ], + ]) + ->setExtras([ + 'order' => 51, + ]); + // } $menu->addChild('Emploi', [ 'route' => 'chill_job_report_index', diff --git a/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php b/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php index 39a1eb348..7ccf04364 100644 --- a/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php +++ b/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php @@ -86,7 +86,6 @@ class ExportsVoter extends AbstractChillVoter implements ProvideRoleHierarchyInt * ``` * [ 'Title' => [ 'CHILL_FOO_SEE', 'CHILL_FOO_UPDATE' ] ] * ``` - * */ public function getRolesWithHierarchy(): array { diff --git a/src/Bundle/ChillMainBundle/Entity/Address.php b/src/Bundle/ChillMainBundle/Entity/Address.php index 72ad60ace..f04783506 100644 --- a/src/Bundle/ChillMainBundle/Entity/Address.php +++ b/src/Bundle/ChillMainBundle/Entity/Address.php @@ -446,7 +446,7 @@ class Address implements TrackCreationInterface, TrackUpdateInterface return $this; } - public function setLinkedToThirdParty(?\Chill\ThirdPartyBundle\Entity\ThirdParty $linkedToThirdParty): self + public function setLinkedToThirdParty(?ThirdParty $linkedToThirdParty): self { $this->linkedToThirdParty = $linkedToThirdParty; diff --git a/src/Bundle/ChillMainBundle/Entity/Embeddable/CommentEmbeddable.php b/src/Bundle/ChillMainBundle/Entity/Embeddable/CommentEmbeddable.php index ee90fb88b..ea0d4ec29 100644 --- a/src/Bundle/ChillMainBundle/Entity/Embeddable/CommentEmbeddable.php +++ b/src/Bundle/ChillMainBundle/Entity/Embeddable/CommentEmbeddable.php @@ -61,9 +61,6 @@ class CommentEmbeddable $this->date = $date; } - /** - * @param int $userId - */ public function setUserId(?int $userId) { $this->userId = $userId; diff --git a/src/Bundle/ChillMainBundle/Entity/Language.php b/src/Bundle/ChillMainBundle/Entity/Language.php index 079b31d22..894b929ac 100644 --- a/src/Bundle/ChillMainBundle/Entity/Language.php +++ b/src/Bundle/ChillMainBundle/Entity/Language.php @@ -59,8 +59,6 @@ class Language /** * Set id. * - * @param string $id - * * @return Language */ public function setId(?string $id) diff --git a/src/Bundle/ChillMainBundle/Entity/PostalCode.php b/src/Bundle/ChillMainBundle/Entity/PostalCode.php index ed81a2b4b..ecab19a5f 100644 --- a/src/Bundle/ChillMainBundle/Entity/PostalCode.php +++ b/src/Bundle/ChillMainBundle/Entity/PostalCode.php @@ -157,8 +157,6 @@ class PostalCode implements TrackUpdateInterface, TrackCreationInterface /** * Set code. * - * @param string $code - * * @return PostalCode */ public function setCode(?string $code) @@ -183,8 +181,6 @@ class PostalCode implements TrackUpdateInterface, TrackCreationInterface /** * Set name. * - * @param string $name - * * @return PostalCode */ public function setName(?string $name) @@ -197,7 +193,6 @@ class PostalCode implements TrackUpdateInterface, TrackCreationInterface /** * Set origin. * - * * @return PostalCode */ public function setOrigin(int $origin) diff --git a/src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/ClosingMotive.php b/src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/ClosingMotive.php index 6cfd17f26..11321e9bb 100644 --- a/src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/ClosingMotive.php +++ b/src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod/ClosingMotive.php @@ -182,7 +182,6 @@ class ClosingMotive /** * Set name. * - * * @return ClosingMotive */ public function setName(array $name) diff --git a/src/Bundle/ChillPersonBundle/Entity/Person.php b/src/Bundle/ChillPersonBundle/Entity/Person.php index 6c5abf00a..ff9e799a3 100644 --- a/src/Bundle/ChillPersonBundle/Entity/Person.php +++ b/src/Bundle/ChillPersonBundle/Entity/Person.php @@ -1409,9 +1409,6 @@ class Person implements HasCenterInterface, TrackCreationInterface, TrackUpdateI return $this; } - /** - * @param \DateTime $birthdate - */ public function setBirthdate(?\DateTime $birthdate): self { $this->birthdate = $birthdate; diff --git a/src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php b/src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php index 794dcf0d7..21c057a34 100644 --- a/src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php +++ b/src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php @@ -39,11 +39,11 @@ class ListPerson implements ListInterface, GroupedExportInterface private readonly bool $filterStatsByCenters; public function __construct( - private readonly CustomFieldProvider $customFieldProvider, - private readonly ListPersonHelper $listPersonHelper, + private readonly CustomFieldProvider $customFieldProvider, + private readonly ListPersonHelper $listPersonHelper, protected readonly EntityManagerInterface $entityManager, private readonly TranslatableStringHelper $translatableStringHelper, - ParameterBagInterface $parameterBag, + ParameterBagInterface $parameterBag, ) { $this->filterStatsByCenters = $parameterBag->get('chill_main')['acl']['filter_stats_by_center']; } diff --git a/src/Bundle/ChillReportBundle/Entity/Report.php b/src/Bundle/ChillReportBundle/Entity/Report.php index a1579b2a1..8d6c1888f 100644 --- a/src/Bundle/ChillReportBundle/Entity/Report.php +++ b/src/Bundle/ChillReportBundle/Entity/Report.php @@ -154,8 +154,6 @@ class Report implements HasCenterInterface, HasScopeInterface /** * Set date. * - * @param \DateTime $date - * * @return Report */ public function setDate(?\DateTime $date) diff --git a/src/Bundle/ChillTaskBundle/Entity/RecurringTask.php b/src/Bundle/ChillTaskBundle/Entity/RecurringTask.php index f63912b32..4856835e5 100644 --- a/src/Bundle/ChillTaskBundle/Entity/RecurringTask.php +++ b/src/Bundle/ChillTaskBundle/Entity/RecurringTask.php @@ -112,8 +112,6 @@ class RecurringTask extends AbstractTask /** * Set firstOccurenceEndDate. * - * @param \DateTime $firstOccurenceEndDate - * * @return RecurringTask */ public function setFirstOccurenceEndDate(?\DateTime $firstOccurenceEndDate) @@ -126,8 +124,6 @@ class RecurringTask extends AbstractTask /** * Set lastOccurenceEndDate. * - * @param \DateTime $lastOccurenceEndDate - * * @return RecurringTask */ public function setLastOccurenceEndDate(?\DateTime $lastOccurenceEndDate) @@ -140,8 +136,6 @@ class RecurringTask extends AbstractTask /** * Set occurenceFrequency. * - * @param string $occurenceFrequency - * * @return RecurringTask */ public function setOccurenceFrequency(?string $occurenceFrequency) diff --git a/src/Bundle/ChillTaskBundle/Entity/SingleTask.php b/src/Bundle/ChillTaskBundle/Entity/SingleTask.php index c8427b725..1bfbed9d2 100644 --- a/src/Bundle/ChillTaskBundle/Entity/SingleTask.php +++ b/src/Bundle/ChillTaskBundle/Entity/SingleTask.php @@ -136,8 +136,6 @@ class SingleTask extends AbstractTask /** * Set endDate. * - * @param \DateTime $endDate - * * @return SingleTask */ public function setEndDate(?\DateTime $endDate) @@ -155,8 +153,6 @@ class SingleTask extends AbstractTask /** * Set startDate. * - * @param \DateTime $startDate - * * @return SingleTask */ public function setStartDate(?\DateTime $startDate) diff --git a/src/Bundle/ChillTaskBundle/Entity/Task/AbstractTaskPlaceEvent.php b/src/Bundle/ChillTaskBundle/Entity/Task/AbstractTaskPlaceEvent.php index 92de2c496..26a73a7e5 100644 --- a/src/Bundle/ChillTaskBundle/Entity/Task/AbstractTaskPlaceEvent.php +++ b/src/Bundle/ChillTaskBundle/Entity/Task/AbstractTaskPlaceEvent.php @@ -105,7 +105,6 @@ class AbstractTaskPlaceEvent /** * Set transition. * - * * @return AbstractTaskPlaceEvent */ public function setTransition(string $transition) From d8b6cef7b44c05797fe3bd97d2f2bac3bef9a5ae Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 24 Apr 2024 10:18:07 +0200 Subject: [PATCH 026/136] rector fixes --- .../src/ApiHelper/ApiWrapper.php | 2 +- .../src/Controller/CSPersonController.php | 19 +++++++------------ .../src/Controller/CSReportController.php | 2 +- .../ChillJobBundle/src/Entity/Immersion.php | 2 +- 4 files changed, 10 insertions(+), 15 deletions(-) diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php index 360f200cd..975170f72 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php @@ -32,7 +32,7 @@ class ApiWrapper */ public const UNPERSONAL_BEARER = 'api_pemploi_bear_'; - public function __construct(private $clientId, private $clientSecret, private ChillRedis $redis) + public function __construct(private $clientId, private $clientSecret, private readonly ChillRedis $redis) { $this->client = new Client([ 'base_uri' => 'https://entreprise.pole-emploi.fr/connexion/oauth2/access_token', diff --git a/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php b/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php index 0c4e44c0e..d72a87dcc 100644 --- a/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php +++ b/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php @@ -104,18 +104,13 @@ class CSPersonController extends OneToOneEntityPersonCRUDController protected function getTemplateFor($action, $entity, Request $request): string { - switch ($action) { - case 'ps_situation_edit': - return '@ChillJob/CSPerson/personal_situation_edit.html.twig'; - case 'dispositifs_edit': - return '@ChillJob/CSPerson/dispositifs_edit.html.twig'; - case 'ps_situation_view': - return '@ChillJob/CSPerson/personal_situation_view.html.twig'; - case 'dispositifs_view': - return '@ChillJob/CSPerson/dispositifs_view.html.twig'; - default: - return parent::getTemplateFor($action, $entity, $request); - } + return match ($action) { + 'ps_situation_edit' => '@ChillJob/CSPerson/personal_situation_edit.html.twig', + 'dispositifs_edit' => '@ChillJob/CSPerson/dispositifs_edit.html.twig', + 'ps_situation_view' => '@ChillJob/CSPerson/personal_situation_view.html.twig', + 'dispositifs_view' => '@ChillJob/CSPerson/dispositifs_view.html.twig', + default => parent::getTemplateFor($action, $entity, $request), + }; } protected function createFormFor(string $action, $entity, ?string $formClass = null, array $formOptions = []): FormInterface diff --git a/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php b/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php index 3de5a68e0..e6a3c4517 100644 --- a/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php +++ b/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php @@ -24,7 +24,7 @@ use Chill\JobBundle\Security\Authorization\CSConnectesVoter; class CSReportController extends AbstractController { - public function __construct(private \Doctrine\Persistence\ManagerRegistry $managerRegistry) {} + public function __construct(private readonly \Doctrine\Persistence\ManagerRegistry $managerRegistry) {} #[Route(path: '{_locale}/person/job/{person}/report', name: 'chill_job_report_index')] public function index(Person $person): Response diff --git a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php index 88591f732..5de874231 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php @@ -636,7 +636,7 @@ class Immersion implements \Stringable * * @return Immersion */ - public function setNoteImmersion($note) + public function setNoteImmersion(?string $note) { $this->noteImmersion = $note; From 4c354c47c9899008c93e2333d3a648a8c76b6d33 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 24 Apr 2024 10:39:46 +0200 Subject: [PATCH 027/136] Fix construct method for ListCSPerson --- src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php | 1 + 1 file changed, 1 insertion(+) diff --git a/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php b/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php index c8d540a31..800aa5f65 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php @@ -62,6 +62,7 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal protected $customFieldProvider; public function __construct( + TranslatorInterface $translator, EntityManagerInterface $em, ListPersonHelper $listPersonHelper, TranslatableStringHelper $translatableStringHelper, From 511c0af5fa3e95a3545eeef047718b6a11aec26c Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 24 Apr 2024 10:40:09 +0200 Subject: [PATCH 028/136] Last php cs fix --- src/Bundle/ChillJobBundle/src/Entity/Immersion.php | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php index 5de874231..dcd2f029e 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php @@ -632,8 +632,6 @@ class Immersion implements \Stringable /** * Set note. * - * @param string $note - * * @return Immersion */ public function setNoteImmersion(?string $note) From d3390ca334558f2bbe6337d1fa53d1713f2722b3 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 24 Apr 2024 10:49:19 +0200 Subject: [PATCH 029/136] Phpstan error for unused parameter fixed --- .../src/Export/ListCSPerson.php | 22 +++++-------------- .../Export/Export/ListPerson.php | 2 -- 2 files changed, 6 insertions(+), 18 deletions(-) diff --git a/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php b/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php index 800aa5f65..e4f6dd029 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php @@ -34,9 +34,6 @@ use Symfony\Contracts\Translation\TranslatorInterface; */ class ListCSPerson extends ListPerson implements ListInterface, ExportElementValidatedInterface { - /** - * @var array - */ public const CSPERSON = [ 'ressource__label' => CSPerson::RESSOURCES, 'moyen_transport__label' => CSPerson::MOBILITE_MOYEN_TRANSPORT, @@ -47,19 +44,11 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal 'neet_eligibility__label' => CSPerson::NEET_ELIGIBILITY, ]; - /** - * @var array - */ - protected $personIds = []; - - /** EntityManagerInterface $em */ - protected $em; - /** TranslatorInterface $translator */ - protected $translator; - /** TranslatableStringHelper $translatableStringHelper */ - protected $translatableStringHelper; - /** CustomFieldProvider $customFieldProvider */ - protected $customFieldProvider; + protected array $personIds = []; + protected EntityManagerInterface $em; + protected TranslatorInterface $translator; + protected TranslatableStringHelper $translatableStringHelper; + protected CustomFieldProvider $customFieldProvider; public function __construct( TranslatorInterface $translator, @@ -70,6 +59,7 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal ParameterBagInterface $parameterBag ) { parent::__construct($customFieldProvider, $listPersonHelper, $em, $translatableStringHelper, $parameterBag); + $this->translator = $translator; } /** diff --git a/src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php b/src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php index 21c057a34..2b8bfad20 100644 --- a/src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php +++ b/src/Bundle/ChillPersonBundle/Export/Export/ListPerson.php @@ -23,10 +23,8 @@ use Chill\PersonBundle\Entity\Person; use Chill\PersonBundle\Export\Declarations; use Chill\PersonBundle\Export\Helper\ListPersonHelper; use Chill\PersonBundle\Security\Authorization\PersonVoter; -use DateTimeImmutable; use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\Query; -use PhpOffice\PhpSpreadsheet\Shared\Date; use Symfony\Component\DependencyInjection\ParameterBag\ParameterBagInterface; use Symfony\Component\Form\FormBuilderInterface; From 56d5d08ed361c0867395b17e14169ffdad7820d2 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 24 Apr 2024 11:34:06 +0200 Subject: [PATCH 030/136] Run rector on ListCSPerson file --- src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php b/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php index e4f6dd029..3ab0f1b89 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php @@ -46,12 +46,11 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal protected array $personIds = []; protected EntityManagerInterface $em; - protected TranslatorInterface $translator; protected TranslatableStringHelper $translatableStringHelper; protected CustomFieldProvider $customFieldProvider; public function __construct( - TranslatorInterface $translator, + protected TranslatorInterface $translator, EntityManagerInterface $em, ListPersonHelper $listPersonHelper, TranslatableStringHelper $translatableStringHelper, @@ -59,7 +58,6 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal ParameterBagInterface $parameterBag ) { parent::__construct($customFieldProvider, $listPersonHelper, $em, $translatableStringHelper, $parameterBag); - $this->translator = $translator; } /** From 650e85c481c8a4237bbfe42fd9b945468071462e Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 24 Apr 2024 11:44:14 +0200 Subject: [PATCH 031/136] Fix crudconfig --- .../src/Controller/CSPersonController.php | 16 ++++------------ .../DependencyInjection/ChillJobExtension.php | 11 ++++++----- 2 files changed, 10 insertions(+), 17 deletions(-) diff --git a/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php b/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php index d72a87dcc..6b858a130 100644 --- a/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php +++ b/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php @@ -22,7 +22,7 @@ use Symfony\Component\Routing\Annotation\Route; class CSPersonController extends OneToOneEntityPersonCRUDController { - public function personalSituationEdit(Request $request, $id) + public function personalSituationEdit(Request $request, $id): Response { return $this->formEditAction( 'ps_situation_edit', @@ -72,7 +72,7 @@ class CSPersonController extends OneToOneEntityPersonCRUDController return $this->generateUrl($route, ['id' => $entity->getPerson()->getId()]); } - protected function checkACL($action, $entity) + protected function checkACL($action, $entity): void { match ($action) { 'ps_situation_edit', 'dispositifs_edit' => $this->denyAccessUnlessGranted( @@ -116,16 +116,8 @@ class CSPersonController extends OneToOneEntityPersonCRUDController protected function createFormFor(string $action, $entity, ?string $formClass = null, array $formOptions = []): FormInterface { switch ($action) { - case 'dispositifs_edit': - $form = $this->createForm($formClass, $entity, \array_merge( - $formOptions, - ['center' => $entity->getPerson()->getCenter()] - )); - $this->customizeForm($action, $form); - - return $form; - case 'ps_situation_edit': + case 'dispositifs_edit': $form = $this->createForm($formClass, $entity, \array_merge( $formOptions, ['center' => $entity->getPerson()->getCenter()] @@ -139,7 +131,7 @@ class CSPersonController extends OneToOneEntityPersonCRUDController } } - protected function generateLabelForButton($action, $formName, $form) + protected function generateLabelForButton($action, $formName, $form): string { switch ($action) { case 'ps_situation_edit': diff --git a/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php b/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php index dce5d1d64..b4c6b7832 100644 --- a/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php +++ b/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php @@ -48,9 +48,10 @@ class ChillJobExtension extends Extension implements PrependExtensionInterface public function prepend(ContainerBuilder $container): void { $this->prependRoute($container); + $this->prependCruds($container); } - /* protected function prependCruds(ContainerBuilder $container) + protected function prependCruds(ContainerBuilder $container) { $container->prependExtensionConfig('chill_main', [ 'cruds' => [ @@ -58,9 +59,9 @@ class ChillJobExtension extends Extension implements PrependExtensionInterface 'class' => CSPerson::class, 'controller' => CSPersonController::class, 'name' => 'admin_personal_situation', - // 'base_path' => '/admin/main/personal_situation', 'base_role' => 'ROLE_USER', - 'form_class' => CSPersonPersonalSituationType::class, + 'base_path' => '/person/job/', +/* 'form_class' => CSPersonPersonalSituationType::class, 'actions' => [ 'index' => [ 'role' => 'ROLE_USER', @@ -74,11 +75,11 @@ class ChillJobExtension extends Extension implements PrependExtensionInterface 'role' => 'ROLE_USER', 'template' => '@ChillPerson/CRUD/edit.html.twig', ], - ], + ],*/ ] ], ]); - }*/ + } protected function prependRoute(ContainerBuilder $container): void { From 0b5be0419b338da379160058a2147fc376698c5a Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 24 Apr 2024 12:27:23 +0200 Subject: [PATCH 032/136] Move old migrations to directory 'old' just in case --- .../src/migrations/{ => old}/Version20191119172511.php | 1 + .../src/migrations/{ => old}/Version20191129112321.php | 1 + .../src/migrations/{ => old}/Version20200113104411.php | 10 ++++++++++ .../src/migrations/{ => old}/Version20200113142525.php | 1 + .../src/migrations/{ => old}/Version20200114081435.php | 1 + .../src/migrations/{ => old}/Version20200124130244.php | 1 + .../src/migrations/{ => old}/Version20200124132321.php | 1 + .../src/migrations/{ => old}/Version20200127132932.php | 1 + .../src/migrations/{ => old}/Version20200205132532.php | 6 ++++-- .../src/migrations/{ => old}/Version20200207224152.php | 1 + .../src/migrations/{ => old}/Version20200210105342.php | 1 + .../src/migrations/{ => old}/Version20200313124323.php | 2 +- .../src/migrations/{ => old}/Version20200403114520.php | 1 + .../src/migrations/{ => old}/Version20200403123148.php | 1 + 14 files changed, 26 insertions(+), 3 deletions(-) rename src/Bundle/ChillJobBundle/src/migrations/{ => old}/Version20191119172511.php (98%) rename src/Bundle/ChillJobBundle/src/migrations/{ => old}/Version20191129112321.php (96%) rename src/Bundle/ChillJobBundle/src/migrations/{ => old}/Version20200113104411.php (74%) rename src/Bundle/ChillJobBundle/src/migrations/{ => old}/Version20200113142525.php (93%) rename src/Bundle/ChillJobBundle/src/migrations/{ => old}/Version20200114081435.php (94%) rename src/Bundle/ChillJobBundle/src/migrations/{ => old}/Version20200124130244.php (90%) rename src/Bundle/ChillJobBundle/src/migrations/{ => old}/Version20200124132321.php (90%) rename src/Bundle/ChillJobBundle/src/migrations/{ => old}/Version20200127132932.php (90%) rename src/Bundle/ChillJobBundle/src/migrations/{ => old}/Version20200205132532.php (95%) rename src/Bundle/ChillJobBundle/src/migrations/{ => old}/Version20200207224152.php (92%) rename src/Bundle/ChillJobBundle/src/migrations/{ => old}/Version20200210105342.php (91%) rename src/Bundle/ChillJobBundle/src/migrations/{ => old}/Version20200313124323.php (98%) rename src/Bundle/ChillJobBundle/src/migrations/{ => old}/Version20200403114520.php (91%) rename src/Bundle/ChillJobBundle/src/migrations/{ => old}/Version20200403123148.php (87%) diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20191119172511.php b/src/Bundle/ChillJobBundle/src/migrations/old/Version20191119172511.php similarity index 98% rename from src/Bundle/ChillJobBundle/src/migrations/Version20191119172511.php rename to src/Bundle/ChillJobBundle/src/migrations/old/Version20191119172511.php index 0bc03da06..cf4b17d17 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20191119172511.php +++ b/src/Bundle/ChillJobBundle/src/migrations/old/Version20191119172511.php @@ -21,6 +21,7 @@ final class Version20191119172511 extends AbstractMigration { public function up(Schema $schema): void { + $this->skipIf(true, 'Skipping this old migration. Replaced by migration Version20240424095147'); $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); $this->addSql('CREATE SCHEMA chill_csconnectes'); diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20191129112321.php b/src/Bundle/ChillJobBundle/src/migrations/old/Version20191129112321.php similarity index 96% rename from src/Bundle/ChillJobBundle/src/migrations/Version20191129112321.php rename to src/Bundle/ChillJobBundle/src/migrations/old/Version20191129112321.php index 361c68207..85ca4e137 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20191129112321.php +++ b/src/Bundle/ChillJobBundle/src/migrations/old/Version20191129112321.php @@ -21,6 +21,7 @@ final class Version20191129112321 extends AbstractMigration { public function up(Schema $schema): void { + $this->skipIf(true, 'Skipping this old migration. Replaced by migration Version20240424095147'); $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); $this->addSql('DROP INDEX chill_csconnectes.IDX_10864f31217bbb47'); diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20200113104411.php b/src/Bundle/ChillJobBundle/src/migrations/old/Version20200113104411.php similarity index 74% rename from src/Bundle/ChillJobBundle/src/migrations/Version20200113104411.php rename to src/Bundle/ChillJobBundle/src/migrations/old/Version20200113104411.php index 57228f5b6..e4ed9436e 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20200113104411.php +++ b/src/Bundle/ChillJobBundle/src/migrations/old/Version20200113104411.php @@ -21,6 +21,7 @@ final class Version20200113104411 extends AbstractMigration { public function up(Schema $schema): void { + $this->skipIf(true, 'Skipping this old migration. Replaced by migration Version20240424095147'); $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); $this->addSql('CREATE SEQUENCE chill_csconnectes.immersion_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); @@ -32,6 +33,11 @@ final class Version20200113104411 extends AbstractMigration $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD CONSTRAINT FK_FBB3CBB4217BBB47 FOREIGN KEY (person_id) REFERENCES chill_person_person (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD CONSTRAINT FK_FBB3CBB4A4AEAFEA FOREIGN KEY (entreprise_id) REFERENCES chill_3party.third_party (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD CONSTRAINT FK_FBB3CBB435E47E35 FOREIGN KEY (referent_id) REFERENCES users (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + + $this->addSql('CREATE TABLE chill_csconnectes.cv_formation (id INT NOT NULL, title TEXT NOT NULL, startDate DATE DEFAULT NULL, endDate DATE DEFAULT NULL, diplomaObtained VARCHAR(255) DEFAULT NULL, diplomaReconnue VARCHAR(50) DEFAULT NULL, organisme TEXT DEFAULT NULL, CV_id INT DEFAULT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE INDEX IDX_20BE09E2AE1799D8 ON chill_csconnectes.cv_formation (CV_id)'); + $this->addSql('ALTER TABLE chill_csconnectes.cv_formation ADD CONSTRAINT FK_20BE09E2AE1799D8 FOREIGN KEY (CV_id) REFERENCES chill_csconnectes.cv (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + } public function down(Schema $schema): void @@ -40,5 +46,9 @@ final class Version20200113104411 extends AbstractMigration $this->addSql('DROP SEQUENCE chill_csconnectes.immersion_id_seq CASCADE'); $this->addSql('DROP TABLE chill_csconnectes.immersion'); + + $this->addSql('DROP SEQUENCE chill_csconnectes.cv_formation_id_seq CASCADE'); + $this->addSql('ALTER TABLE chill_csconnectes.cv_formation DROP CONSTRAINT FK_20BE09E2AE1799D8'); + $this->addSql('DROP TABLE chill_csconnectes.cv_formation'); } } diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20200113142525.php b/src/Bundle/ChillJobBundle/src/migrations/old/Version20200113142525.php similarity index 93% rename from src/Bundle/ChillJobBundle/src/migrations/Version20200113142525.php rename to src/Bundle/ChillJobBundle/src/migrations/old/Version20200113142525.php index 03d4c44e6..cabc97d59 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20200113142525.php +++ b/src/Bundle/ChillJobBundle/src/migrations/old/Version20200113142525.php @@ -25,6 +25,7 @@ final class Version20200113142525 extends AbstractMigration { public function up(Schema $schema): void { + $this->skipIf(true, 'Skipping this old migration. Replaced by migration Version20240424095147'); $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD structureAccEmail TEXT DEFAULT NULL'); diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20200114081435.php b/src/Bundle/ChillJobBundle/src/migrations/old/Version20200114081435.php similarity index 94% rename from src/Bundle/ChillJobBundle/src/migrations/Version20200114081435.php rename to src/Bundle/ChillJobBundle/src/migrations/old/Version20200114081435.php index 9d4000b44..a03263bf3 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20200114081435.php +++ b/src/Bundle/ChillJobBundle/src/migrations/old/Version20200114081435.php @@ -24,6 +24,7 @@ final class Version20200114081435 extends AbstractMigration { public function up(Schema $schema): void { + $this->skipIf(true, 'Skipping this old migration. Replaced by migration Version20240424095147'); $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD is_bilan_fullfilled BOOLEAN DEFAULT \'false\' NOT NULL'); diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20200124130244.php b/src/Bundle/ChillJobBundle/src/migrations/old/Version20200124130244.php similarity index 90% rename from src/Bundle/ChillJobBundle/src/migrations/Version20200124130244.php rename to src/Bundle/ChillJobBundle/src/migrations/old/Version20200124130244.php index 1d2e5e4d1..dd1e669ae 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20200124130244.php +++ b/src/Bundle/ChillJobBundle/src/migrations/old/Version20200124130244.php @@ -21,6 +21,7 @@ final class Version20200124130244 extends AbstractMigration { public function up(Schema $schema): void { + $this->skipIf(true, 'Skipping this old migration. Replaced by migration Version20240424095147'); $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD datecontratIEJ DATE DEFAULT NULL'); diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20200124132321.php b/src/Bundle/ChillJobBundle/src/migrations/old/Version20200124132321.php similarity index 90% rename from src/Bundle/ChillJobBundle/src/migrations/Version20200124132321.php rename to src/Bundle/ChillJobBundle/src/migrations/old/Version20200124132321.php index cd12ef238..3cf1b3019 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20200124132321.php +++ b/src/Bundle/ChillJobBundle/src/migrations/old/Version20200124132321.php @@ -21,6 +21,7 @@ final class Version20200124132321 extends AbstractMigration { public function up(Schema $schema): void { + $this->skipIf(true, 'Skipping this old migration. Replaced by migration Version20240424095147'); $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD typeContratAide TEXT DEFAULT NULL'); diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20200127132932.php b/src/Bundle/ChillJobBundle/src/migrations/old/Version20200127132932.php similarity index 90% rename from src/Bundle/ChillJobBundle/src/migrations/Version20200127132932.php rename to src/Bundle/ChillJobBundle/src/migrations/old/Version20200127132932.php index 6cf29a7dd..2907c2155 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20200127132932.php +++ b/src/Bundle/ChillJobBundle/src/migrations/old/Version20200127132932.php @@ -21,6 +21,7 @@ final class Version20200127132932 extends AbstractMigration { public function up(Schema $schema): void { + $this->skipIf(true, 'Skipping this old migration. Replaced by migration Version20240424095147'); $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD objectifsAutre TEXT DEFAULT NULL'); diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20200205132532.php b/src/Bundle/ChillJobBundle/src/migrations/old/Version20200205132532.php similarity index 95% rename from src/Bundle/ChillJobBundle/src/migrations/Version20200205132532.php rename to src/Bundle/ChillJobBundle/src/migrations/old/Version20200205132532.php index 495943467..98870f92d 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20200205132532.php +++ b/src/Bundle/ChillJobBundle/src/migrations/old/Version20200205132532.php @@ -21,16 +21,18 @@ final class Version20200205132532 extends AbstractMigration { public function up(Schema $schema): void { - // this up() migration is auto-generated, please modify it to your needs + $this->skipIf(true, 'Skipping this old migration. Replaced by migration Version20240424095147'); $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); - $this->addSql('DROP SEQUENCE report_id_seq CASCADE'); +// $this->addSql('DROP SEQUENCE report_id_seq CASCADE'); $this->addSql('CREATE SEQUENCE chill_csconnectes.rome_appellation_id_seq ' .'INCREMENT BY 1 MINVALUE 1 START 1'); $this->addSql('CREATE SEQUENCE chill_csconnectes.rome_metier_id_seq ' .'INCREMENT BY 1 MINVALUE 1 START 1'); $this->addSql('CREATE SEQUENCE chill_csconnectes.projet_professionnel_id_seq ' .'INCREMENT BY 1 MINVALUE 1 START 1'); + $this->addSql('CREATE SEQUENCE chill_csconnectes.cv_formation_id_seq ' + . 'INCREMENT BY 1 MINVALUE 1 START 1'); $this->addSql('CREATE TABLE chill_csconnectes.rome_appellation (' .'id INT NOT NULL, metier_id INT DEFAULT NULL, code VARCHAR(40) NOT NULL, ' .'libelle TEXT NOT NULL, PRIMARY KEY(id))'); diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20200207224152.php b/src/Bundle/ChillJobBundle/src/migrations/old/Version20200207224152.php similarity index 92% rename from src/Bundle/ChillJobBundle/src/migrations/Version20200207224152.php rename to src/Bundle/ChillJobBundle/src/migrations/old/Version20200207224152.php index 9384f5ea5..6fecfda82 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20200207224152.php +++ b/src/Bundle/ChillJobBundle/src/migrations/old/Version20200207224152.php @@ -21,6 +21,7 @@ final class Version20200207224152 extends AbstractMigration { public function up(Schema $schema): void { + $this->skipIf(true, 'Skipping this old migration. Replaced by migration Version20240424095147'); $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); $this->addSql('CREATE INDEX code_appellation_idx ON chill_csconnectes.rome_appellation (code)'); diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20200210105342.php b/src/Bundle/ChillJobBundle/src/migrations/old/Version20200210105342.php similarity index 91% rename from src/Bundle/ChillJobBundle/src/migrations/Version20200210105342.php rename to src/Bundle/ChillJobBundle/src/migrations/old/Version20200210105342.php index dc5dc7fab..53d88ec2b 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20200210105342.php +++ b/src/Bundle/ChillJobBundle/src/migrations/old/Version20200210105342.php @@ -21,6 +21,7 @@ final class Version20200210105342 extends AbstractMigration { public function up(Schema $schema): void { + $this->skipIf(true, 'Skipping this old migration. Replaced by migration Version20240424095147'); $this->addSql('CREATE UNIQUE INDEX UNIQ_D9E9CABC77153098 ON chill_csconnectes.rome_appellation (code);'); $this->addSql('CREATE UNIQUE INDEX UNIQ_3274952577153098 ON chill_csconnectes.rome_metier (code);'); $this->addSql('DROP INDEX IF EXISTS chill_csconnectes.code_metier_idx '); diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20200313124323.php b/src/Bundle/ChillJobBundle/src/migrations/old/Version20200313124323.php similarity index 98% rename from src/Bundle/ChillJobBundle/src/migrations/Version20200313124323.php rename to src/Bundle/ChillJobBundle/src/migrations/old/Version20200313124323.php index de2dbafab..1c3ef3be4 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20200313124323.php +++ b/src/Bundle/ChillJobBundle/src/migrations/old/Version20200313124323.php @@ -21,8 +21,8 @@ final class Version20200313124323 extends AbstractMigration { public function up(Schema $schema): void { + $this->skipIf(true, 'Skipping this old migration. Replaced by migration Version20240424095147'); $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); - $this->addSql('ALTER TABLE chill_csconnectes.cv_formation ALTER diplomaobtained TYPE VARCHAR(255)'); $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD ponctualite_salarie TEXT DEFAULT NULL'); $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD ponctualite_salarie_note TEXT DEFAULT NULL'); diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20200403114520.php b/src/Bundle/ChillJobBundle/src/migrations/old/Version20200403114520.php similarity index 91% rename from src/Bundle/ChillJobBundle/src/migrations/Version20200403114520.php rename to src/Bundle/ChillJobBundle/src/migrations/old/Version20200403114520.php index a1a4e4f5e..ab80c48d7 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20200403114520.php +++ b/src/Bundle/ChillJobBundle/src/migrations/old/Version20200403114520.php @@ -22,6 +22,7 @@ final class Version20200403114520 extends AbstractMigration { public function up(Schema $schema): void { + $this->skipIf(true, 'Skipping this old migration. Replaced by migration Version20240424095147'); $this->addSql('ALTER TABLE chill_csconnectes.projet_professionnel ADD domaineActiviteSouhait TEXT DEFAULT NULL;'); $this->addSql('ALTER TABLE chill_csconnectes.projet_professionnel ADD domaineActiviteValide TEXT DEFAULT NULL;'); } diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20200403123148.php b/src/Bundle/ChillJobBundle/src/migrations/old/Version20200403123148.php similarity index 87% rename from src/Bundle/ChillJobBundle/src/migrations/Version20200403123148.php rename to src/Bundle/ChillJobBundle/src/migrations/old/Version20200403123148.php index c117ed34b..307cd14c7 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20200403123148.php +++ b/src/Bundle/ChillJobBundle/src/migrations/old/Version20200403123148.php @@ -21,6 +21,7 @@ final class Version20200403123148 extends AbstractMigration { public function up(Schema $schema): void { + $this->skipIf(true, 'Skipping this old migration. Replaced by migration Version20240424095147'); $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD dateavenantIEJ DATE DEFAULT NULL;'); } From 7b25c8e39095c437b770108ed80aabf6d481e231 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 24 Apr 2024 12:27:49 +0200 Subject: [PATCH 033/136] New migration to take care of everything needed for ChillJobBundle --- .../src/migrations/Version20240424095147.php | 152 ++++++++++++++++++ 1 file changed, 152 insertions(+) create mode 100644 src/Bundle/ChillJobBundle/src/migrations/Version20240424095147.php diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20240424095147.php b/src/Bundle/ChillJobBundle/src/migrations/Version20240424095147.php new file mode 100644 index 000000000..1060e2c69 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/migrations/Version20240424095147.php @@ -0,0 +1,152 @@ +addSql('CREATE SCHEMA chill_csconnectes'); + $this->addSql('DROP SEQUENCE chill_person_accompanying_period_work_eval_doc_id_seq CASCADE'); + $this->addSql('CREATE SEQUENCE chill_csconnectes.cv_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); + $this->addSql('CREATE SEQUENCE chill_csconnectes.cv_experience_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); + $this->addSql('CREATE SEQUENCE chill_csconnectes.cv_formation_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); + $this->addSql('CREATE SEQUENCE chill_csconnectes.frein_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); + $this->addSql('CREATE SEQUENCE chill_csconnectes.immersion_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); + $this->addSql('CREATE SEQUENCE chill_csconnectes.projet_professionnel_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); + $this->addSql('CREATE SEQUENCE chill_csconnectes.rome_appellation_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); + $this->addSql('CREATE SEQUENCE chill_csconnectes.rome_metier_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); + $this->addSql('CREATE TABLE chill_csconnectes.cs_person (id INT NOT NULL, person_id INT DEFAULT NULL, prescripteur_id INT DEFAULT NULL, situationLogement VARCHAR(255) DEFAULT NULL, situationLogementPrecision TEXT DEFAULT NULL, enfantACharge INT DEFAULT NULL, niveauMaitriseLangue JSON DEFAULT NULL, vehiculePersonnel BOOLEAN DEFAULT NULL, permisConduire JSON DEFAULT NULL, situationProfessionnelle VARCHAR(255) DEFAULT NULL, dateFinDernierEmploi DATE DEFAULT NULL, typeContrat JSON DEFAULT NULL, typeContratAide TEXT DEFAULT NULL, ressources JSON DEFAULT NULL, ressourcesComment TEXT DEFAULT NULL, ressourceDate1Versement DATE DEFAULT NULL, CPFMontant NUMERIC(10, 2) DEFAULT NULL, acomptedif NUMERIC(10, 2) DEFAULT NULL, accompagnement JSON DEFAULT NULL, accompagnementRQTHDate DATE DEFAULT NULL, accompagnementComment VARCHAR(255) DEFAULT NULL, poleEmploiId VARCHAR(255) DEFAULT NULL, poleEmploiInscriptionDate DATE DEFAULT NULL, cafId VARCHAR(255) DEFAULT NULL, cafInscriptionDate DATE DEFAULT NULL, CERInscriptionDate DATE DEFAULT NULL, PPAEInscriptionDate DATE DEFAULT NULL, CERSignataire TEXT DEFAULT NULL, PPAESignataire TEXT DEFAULT NULL, NEETEligibilite VARCHAR(255) DEFAULT NULL, NEETCommissionDate DATE DEFAULT NULL, FSEMaDemarcheCode TEXT DEFAULT NULL, datecontratIEJ DATE DEFAULT NULL, dateavenantIEJ DATE DEFAULT NULL, dispositifs_notes TEXT DEFAULT NULL, handicap BOOLEAN DEFAULT NULL, handicapnotes TEXT DEFAULT NULL, handicapRecommandation VARCHAR(50) DEFAULT NULL, mobilitemoyentransport JSON DEFAULT NULL, mobilitenotes TEXT DEFAULT NULL, handicapAccompagnement_id INT DEFAULT NULL, documentCV_id INT DEFAULT NULL, documentAgrementIAE_id INT DEFAULT NULL, documentRQTH_id INT DEFAULT NULL, documentAttestationNEET_id INT DEFAULT NULL, documentCI_id INT DEFAULT NULL, documentTitreSejour_id INT DEFAULT NULL, documentAttestationFiscale_id INT DEFAULT NULL, documentPermis_id INT DEFAULT NULL, documentAttestationCAAF_id INT DEFAULT NULL, documentContraTravail_id INT DEFAULT NULL, documentAttestationFormation_id INT DEFAULT NULL, documentQuittanceLoyer_id INT DEFAULT NULL, documentFactureElectricite_id INT DEFAULT NULL, documentAttestationSecuriteSociale_id INT DEFAULT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE UNIQUE INDEX UNIQ_10864F31217BBB47 ON chill_csconnectes.cs_person (person_id)'); + $this->addSql('CREATE INDEX IDX_10864F312654B57D ON chill_csconnectes.cs_person (handicapAccompagnement_id)'); + $this->addSql('CREATE INDEX IDX_10864F3154866550 ON chill_csconnectes.cs_person (documentCV_id)'); + $this->addSql('CREATE INDEX IDX_10864F318825E118 ON chill_csconnectes.cs_person (documentAgrementIAE_id)'); + $this->addSql('CREATE INDEX IDX_10864F31A396AFAC ON chill_csconnectes.cs_person (documentRQTH_id)'); + $this->addSql('CREATE INDEX IDX_10864F3187541764 ON chill_csconnectes.cs_person (documentAttestationNEET_id)'); + $this->addSql('CREATE INDEX IDX_10864F315CFC2299 ON chill_csconnectes.cs_person (documentCI_id)'); + $this->addSql('CREATE INDEX IDX_10864F3134FDF11D ON chill_csconnectes.cs_person (documentTitreSejour_id)'); + $this->addSql('CREATE INDEX IDX_10864F315742C99D ON chill_csconnectes.cs_person (documentAttestationFiscale_id)'); + $this->addSql('CREATE INDEX IDX_10864F31166494D4 ON chill_csconnectes.cs_person (documentPermis_id)'); + $this->addSql('CREATE INDEX IDX_10864F3172820D66 ON chill_csconnectes.cs_person (documentAttestationCAAF_id)'); + $this->addSql('CREATE INDEX IDX_10864F31AFA5E636 ON chill_csconnectes.cs_person (documentContraTravail_id)'); + $this->addSql('CREATE INDEX IDX_10864F3161E05C22 ON chill_csconnectes.cs_person (documentAttestationFormation_id)'); + $this->addSql('CREATE INDEX IDX_10864F316F744BB0 ON chill_csconnectes.cs_person (documentQuittanceLoyer_id)'); + $this->addSql('CREATE INDEX IDX_10864F31AC39B1B ON chill_csconnectes.cs_person (documentFactureElectricite_id)'); + $this->addSql('CREATE INDEX IDX_10864F3172A75B6D ON chill_csconnectes.cs_person (documentAttestationSecuriteSociale_id)'); + $this->addSql('CREATE INDEX IDX_10864F31D486E642 ON chill_csconnectes.cs_person (prescripteur_id)'); + $this->addSql('CREATE TABLE chill_csconnectes.cv (id INT NOT NULL, person_id INT DEFAULT NULL, reportDate DATE NOT NULL, formationLevel VARCHAR(255) DEFAULT NULL, formationType VARCHAR(255) DEFAULT NULL, spokenLanguages JSON DEFAULT NULL, notes TEXT DEFAULT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE INDEX IDX_3F24F812217BBB47 ON chill_csconnectes.cv (person_id)'); + $this->addSql('CREATE TABLE chill_csconnectes.cv_experience (id INT NOT NULL, poste TEXT DEFAULT NULL, structure TEXT DEFAULT NULL, startDate DATE DEFAULT NULL, endDate DATE DEFAULT NULL, contratType VARCHAR(100) NOT NULL, notes TEXT DEFAULT NULL, CV_id INT DEFAULT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE INDEX IDX_102A1262AE1799D8 ON chill_csconnectes.cv_experience (CV_id)'); + $this->addSql('CREATE TABLE chill_csconnectes.cv_formation (id INT NOT NULL, title TEXT NOT NULL, startDate DATE DEFAULT NULL, endDate DATE DEFAULT NULL, diplomaObtained VARCHAR(255) DEFAULT NULL, diplomaReconnue VARCHAR(50) DEFAULT NULL, organisme TEXT DEFAULT NULL, CV_id INT DEFAULT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE INDEX IDX_20BE09E2AE1799D8 ON chill_csconnectes.cv_formation (CV_id)'); + $this->addSql('CREATE TABLE chill_csconnectes.frein (id INT NOT NULL, reportDate DATE NOT NULL, freinsPerso JSON NOT NULL, notesPerso TEXT NOT NULL, freinsEmploi JSON NOT NULL, notesEmploi TEXT NOT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE TABLE chill_csconnectes.immersion (id INT NOT NULL, entreprise_id INT DEFAULT NULL, referent_id INT DEFAULT NULL, domaineActivite TEXT DEFAULT NULL, tuteurName TEXT DEFAULT NULL, tuteurFonction TEXT DEFAULT NULL, tuteurPhoneNumber TEXT DEFAULT NULL, structureAccName TEXT DEFAULT NULL, structureAccPhonenumber TEXT DEFAULT NULL, structureAccEmail TEXT DEFAULT NULL, posteDescriptif TEXT DEFAULT NULL, posteTitle TEXT DEFAULT NULL, posteLieu TEXT DEFAULT NULL, debutDate DATE DEFAULT NULL, duration INTERVAL DEFAULT NULL, horaire TEXT DEFAULT NULL, objectifs JSON DEFAULT NULL, objectifsAutre TEXT DEFAULT NULL, is_bilan_fullfilled BOOLEAN DEFAULT false NOT NULL, savoirEtre JSON DEFAULT NULL, savoirEtreNote TEXT DEFAULT NULL, noteimmersion TEXT NOT NULL, principalesActivites TEXT DEFAULT NULL, competencesAcquises TEXT DEFAULT NULL, competencesADevelopper TEXT DEFAULT NULL, noteBilan TEXT DEFAULT NULL, ponctualite_salarie TEXT DEFAULT NULL, ponctualite_salarie_note TEXT DEFAULT NULL, assiduite TEXT DEFAULT NULL, assiduite_note TEXT DEFAULT NULL, interet_activite TEXT DEFAULT NULL, interet_activite_note TEXT DEFAULT NULL, integre_regle TEXT DEFAULT NULL, integre_regle_note TEXT DEFAULT NULL, esprit_initiative TEXT DEFAULT NULL, esprit_initiative_note TEXT DEFAULT NULL, organisation TEXT DEFAULT NULL, organisation_note TEXT DEFAULT NULL, capacite_travail_equipe TEXT DEFAULT NULL, capacite_travail_equipe_note TEXT DEFAULT NULL, style_vestimentaire TEXT DEFAULT NULL, style_vestimentaire_note TEXT DEFAULT NULL, langage_prof TEXT DEFAULT NULL, langage_prof_note TEXT DEFAULT NULL, applique_consigne TEXT DEFAULT NULL, applique_consigne_note TEXT DEFAULT NULL, respect_hierarchie TEXT DEFAULT NULL, respect_hierarchie_note TEXT DEFAULT NULL, structureAccAddress_id INT DEFAULT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE INDEX IDX_FBB3CBB4A4AEAFEA ON chill_csconnectes.immersion (entreprise_id)'); + $this->addSql('CREATE INDEX IDX_FBB3CBB435E47E35 ON chill_csconnectes.immersion (referent_id)'); + $this->addSql('CREATE INDEX IDX_FBB3CBB4B5E04267 ON chill_csconnectes.immersion (structureAccAddress_id)'); + $this->addSql('COMMENT ON COLUMN chill_csconnectes.immersion.duration IS \'(DC2Type:dateinterval)\''); + $this->addSql('CREATE TABLE chill_csconnectes.projet_professionnel (id INT NOT NULL, reportDate DATE NOT NULL, domaineActiviteSouhait TEXT DEFAULT NULL, typeContrat JSON DEFAULT NULL, typeContratNotes TEXT DEFAULT NULL, volumeHoraire JSON DEFAULT NULL, volumeHoraireNotes TEXT DEFAULT NULL, idee TEXT DEFAULT NULL, enCoursConstruction TEXT DEFAULT NULL, domaineActiviteValide TEXT DEFAULT NULL, valideNotes TEXT DEFAULT NULL, projetProfessionnelNote TEXT DEFAULT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE TABLE chill_csconnectes.projetprofessionnel_souhait (projetprofessionnel_id INT NOT NULL, appellation_id INT NOT NULL, PRIMARY KEY(projetprofessionnel_id, appellation_id))'); + $this->addSql('CREATE INDEX IDX_3280B96DB87BF7B5 ON chill_csconnectes.projetprofessionnel_souhait (projetprofessionnel_id)'); + $this->addSql('CREATE INDEX IDX_3280B96D7CDE30DD ON chill_csconnectes.projetprofessionnel_souhait (appellation_id)'); + $this->addSql('CREATE TABLE chill_csconnectes.projetprofessionnel_valide (projetprofessionnel_id INT NOT NULL, appellation_id INT NOT NULL, PRIMARY KEY(projetprofessionnel_id, appellation_id))'); + $this->addSql('CREATE INDEX IDX_E0501BE0B87BF7B5 ON chill_csconnectes.projetprofessionnel_valide (projetprofessionnel_id)'); + $this->addSql('CREATE INDEX IDX_E0501BE07CDE30DD ON chill_csconnectes.projetprofessionnel_valide (appellation_id)'); + $this->addSql('CREATE TABLE chill_csconnectes.rome_appellation (id INT NOT NULL, metier_id INT DEFAULT NULL, code VARCHAR(40) NOT NULL, libelle TEXT NOT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE UNIQUE INDEX UNIQ_D9E9CABC77153098 ON chill_csconnectes.rome_appellation (code)'); + $this->addSql('CREATE INDEX IDX_D9E9CABCED16FA20 ON chill_csconnectes.rome_appellation (metier_id)'); + $this->addSql('CREATE TABLE chill_csconnectes.rome_metier (id INT NOT NULL, libelle TEXT NOT NULL, code VARCHAR(20) NOT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE UNIQUE INDEX UNIQ_3274952577153098 ON chill_csconnectes.rome_metier (code)'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F31217BBB47 FOREIGN KEY (person_id) REFERENCES chill_person_person (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F312654B57D FOREIGN KEY (handicapAccompagnement_id) REFERENCES chill_3party.third_party (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F3154866550 FOREIGN KEY (documentCV_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F318825E118 FOREIGN KEY (documentAgrementIAE_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F31A396AFAC FOREIGN KEY (documentRQTH_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F3187541764 FOREIGN KEY (documentAttestationNEET_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F315CFC2299 FOREIGN KEY (documentCI_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F3134FDF11D FOREIGN KEY (documentTitreSejour_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F315742C99D FOREIGN KEY (documentAttestationFiscale_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F31166494D4 FOREIGN KEY (documentPermis_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F3172820D66 FOREIGN KEY (documentAttestationCAAF_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F31AFA5E636 FOREIGN KEY (documentContraTravail_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F3161E05C22 FOREIGN KEY (documentAttestationFormation_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F316F744BB0 FOREIGN KEY (documentQuittanceLoyer_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F31AC39B1B FOREIGN KEY (documentFactureElectricite_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F3172A75B6D FOREIGN KEY (documentAttestationSecuriteSociale_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F31D486E642 FOREIGN KEY (prescripteur_id) REFERENCES chill_3party.third_party (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cv ADD CONSTRAINT FK_3F24F812217BBB47 FOREIGN KEY (person_id) REFERENCES chill_person_person (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cv_experience ADD CONSTRAINT FK_102A1262AE1799D8 FOREIGN KEY (CV_id) REFERENCES chill_csconnectes.cv (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.cv_formation ADD CONSTRAINT FK_20BE09E2AE1799D8 FOREIGN KEY (CV_id) REFERENCES chill_csconnectes.cv (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD CONSTRAINT FK_FBB3CBB4A4AEAFEA FOREIGN KEY (entreprise_id) REFERENCES chill_3party.third_party (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD CONSTRAINT FK_FBB3CBB435E47E35 FOREIGN KEY (referent_id) REFERENCES users (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD CONSTRAINT FK_FBB3CBB4B5E04267 FOREIGN KEY (structureAccAddress_id) REFERENCES chill_main_address (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.projetprofessionnel_souhait ADD CONSTRAINT FK_3280B96DB87BF7B5 FOREIGN KEY (projetprofessionnel_id) REFERENCES chill_csconnectes.projet_professionnel (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.projetprofessionnel_souhait ADD CONSTRAINT FK_3280B96D7CDE30DD FOREIGN KEY (appellation_id) REFERENCES chill_csconnectes.rome_appellation (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.projetprofessionnel_valide ADD CONSTRAINT FK_E0501BE0B87BF7B5 FOREIGN KEY (projetprofessionnel_id) REFERENCES chill_csconnectes.projet_professionnel (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.projetprofessionnel_valide ADD CONSTRAINT FK_E0501BE07CDE30DD FOREIGN KEY (appellation_id) REFERENCES chill_csconnectes.rome_appellation (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_csconnectes.rome_appellation ADD CONSTRAINT FK_D9E9CABCED16FA20 FOREIGN KEY (metier_id) REFERENCES chill_csconnectes.rome_metier (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + } + + public function down(Schema $schema): void + { + $this->addSql('CREATE SCHEMA public'); + $this->addSql('DROP SEQUENCE chill_csconnectes.cv_id_seq CASCADE'); + $this->addSql('DROP SEQUENCE chill_csconnectes.cv_experience_id_seq CASCADE'); + $this->addSql('DROP SEQUENCE chill_csconnectes.cv_formation_id_seq CASCADE'); + $this->addSql('DROP SEQUENCE chill_csconnectes.frein_id_seq CASCADE'); + $this->addSql('DROP SEQUENCE chill_csconnectes.immersion_id_seq CASCADE'); + $this->addSql('DROP SEQUENCE chill_csconnectes.projet_professionnel_id_seq CASCADE'); + $this->addSql('DROP SEQUENCE chill_csconnectes.rome_appellation_id_seq CASCADE'); + $this->addSql('DROP SEQUENCE chill_csconnectes.rome_metier_id_seq CASCADE'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F31217BBB47'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F312654B57D'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F3154866550'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F318825E118'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F31A396AFAC'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F3187541764'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F315CFC2299'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F3134FDF11D'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F315742C99D'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F31166494D4'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F3172820D66'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F31AFA5E636'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F3161E05C22'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F316F744BB0'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F31AC39B1B'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F3172A75B6D'); + $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F31D486E642'); + $this->addSql('ALTER TABLE chill_csconnectes.cv DROP CONSTRAINT FK_3F24F812217BBB47'); + $this->addSql('ALTER TABLE chill_csconnectes.cv_experience DROP CONSTRAINT FK_102A1262AE1799D8'); + $this->addSql('ALTER TABLE chill_csconnectes.cv_formation DROP CONSTRAINT FK_20BE09E2AE1799D8'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP CONSTRAINT FK_FBB3CBB4A4AEAFEA'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP CONSTRAINT FK_FBB3CBB435E47E35'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP CONSTRAINT FK_FBB3CBB4B5E04267'); + $this->addSql('ALTER TABLE chill_csconnectes.projetprofessionnel_souhait DROP CONSTRAINT FK_3280B96DB87BF7B5'); + $this->addSql('ALTER TABLE chill_csconnectes.projetprofessionnel_souhait DROP CONSTRAINT FK_3280B96D7CDE30DD'); + $this->addSql('ALTER TABLE chill_csconnectes.projetprofessionnel_valide DROP CONSTRAINT FK_E0501BE0B87BF7B5'); + $this->addSql('ALTER TABLE chill_csconnectes.projetprofessionnel_valide DROP CONSTRAINT FK_E0501BE07CDE30DD'); + $this->addSql('ALTER TABLE chill_csconnectes.rome_appellation DROP CONSTRAINT FK_D9E9CABCED16FA20'); + $this->addSql('DROP TABLE chill_csconnectes.cs_person'); + $this->addSql('DROP TABLE chill_csconnectes.cv'); + $this->addSql('DROP TABLE chill_csconnectes.cv_experience'); + $this->addSql('DROP TABLE chill_csconnectes.cv_formation'); + $this->addSql('DROP TABLE chill_csconnectes.frein'); + $this->addSql('DROP TABLE chill_csconnectes.immersion'); + $this->addSql('DROP TABLE chill_csconnectes.projet_professionnel'); + $this->addSql('DROP TABLE chill_csconnectes.projetprofessionnel_souhait'); + $this->addSql('DROP TABLE chill_csconnectes.projetprofessionnel_valide'); + $this->addSql('DROP TABLE chill_csconnectes.rome_appellation'); + $this->addSql('DROP TABLE chill_csconnectes.rome_metier'); + } +} From adca4f0d6ac02067b32bd84897c53e0160610532 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 24 Apr 2024 12:28:55 +0200 Subject: [PATCH 034/136] php cs fixes --- .../DependencyInjection/ChillJobExtension.php | 54 +++++++++---------- .../src/migrations/Version20240424095147.php | 7 +++ .../migrations/old/Version20200113104411.php | 1 - .../migrations/old/Version20200205132532.php | 4 +- 4 files changed, 36 insertions(+), 30 deletions(-) diff --git a/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php b/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php index b4c6b7832..a93642081 100644 --- a/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php +++ b/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php @@ -52,34 +52,34 @@ class ChillJobExtension extends Extension implements PrependExtensionInterface } protected function prependCruds(ContainerBuilder $container) - { - $container->prependExtensionConfig('chill_main', [ - 'cruds' => [ - [ - 'class' => CSPerson::class, - 'controller' => CSPersonController::class, - 'name' => 'admin_personal_situation', - 'base_role' => 'ROLE_USER', - 'base_path' => '/person/job/', -/* 'form_class' => CSPersonPersonalSituationType::class, - 'actions' => [ - 'index' => [ - 'role' => 'ROLE_USER', - 'template' => '@ChillPerson/CRUD/index.html.twig', - ], - 'new' => [ - 'role' => 'ROLE_USER', - 'template' => '@ChillPerson/CRUD/new.html.twig', - ], - 'edit' => [ - 'role' => 'ROLE_USER', - 'template' => '@ChillPerson/CRUD/edit.html.twig', - ], - ],*/ - ] + { + $container->prependExtensionConfig('chill_main', [ + 'cruds' => [ + [ + 'class' => CSPerson::class, + 'controller' => CSPersonController::class, + 'name' => 'admin_personal_situation', + 'base_role' => 'ROLE_USER', + 'base_path' => '/person/job/', + /* 'form_class' => CSPersonPersonalSituationType::class, + 'actions' => [ + 'index' => [ + 'role' => 'ROLE_USER', + 'template' => '@ChillPerson/CRUD/index.html.twig', + ], + 'new' => [ + 'role' => 'ROLE_USER', + 'template' => '@ChillPerson/CRUD/new.html.twig', + ], + 'edit' => [ + 'role' => 'ROLE_USER', + 'template' => '@ChillPerson/CRUD/edit.html.twig', + ], + ],*/ ], - ]); - } + ], + ]); + } protected function prependRoute(ContainerBuilder $container): void { diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20240424095147.php b/src/Bundle/ChillJobBundle/src/migrations/Version20240424095147.php index 1060e2c69..78f100e43 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20240424095147.php +++ b/src/Bundle/ChillJobBundle/src/migrations/Version20240424095147.php @@ -2,6 +2,13 @@ declare(strict_types=1); +/* + * Chill is a software for social workers + * + * For the full copyright and license information, please view + * the LICENSE file that was distributed with this source code. + */ + namespace Chill\Migrations\Job; use Doctrine\DBAL\Schema\Schema; diff --git a/src/Bundle/ChillJobBundle/src/migrations/old/Version20200113104411.php b/src/Bundle/ChillJobBundle/src/migrations/old/Version20200113104411.php index e4ed9436e..1fb74f5f0 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/old/Version20200113104411.php +++ b/src/Bundle/ChillJobBundle/src/migrations/old/Version20200113104411.php @@ -37,7 +37,6 @@ final class Version20200113104411 extends AbstractMigration $this->addSql('CREATE TABLE chill_csconnectes.cv_formation (id INT NOT NULL, title TEXT NOT NULL, startDate DATE DEFAULT NULL, endDate DATE DEFAULT NULL, diplomaObtained VARCHAR(255) DEFAULT NULL, diplomaReconnue VARCHAR(50) DEFAULT NULL, organisme TEXT DEFAULT NULL, CV_id INT DEFAULT NULL, PRIMARY KEY(id))'); $this->addSql('CREATE INDEX IDX_20BE09E2AE1799D8 ON chill_csconnectes.cv_formation (CV_id)'); $this->addSql('ALTER TABLE chill_csconnectes.cv_formation ADD CONSTRAINT FK_20BE09E2AE1799D8 FOREIGN KEY (CV_id) REFERENCES chill_csconnectes.cv (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); - } public function down(Schema $schema): void diff --git a/src/Bundle/ChillJobBundle/src/migrations/old/Version20200205132532.php b/src/Bundle/ChillJobBundle/src/migrations/old/Version20200205132532.php index 98870f92d..1372aa308 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/old/Version20200205132532.php +++ b/src/Bundle/ChillJobBundle/src/migrations/old/Version20200205132532.php @@ -24,7 +24,7 @@ final class Version20200205132532 extends AbstractMigration $this->skipIf(true, 'Skipping this old migration. Replaced by migration Version20240424095147'); $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.'); -// $this->addSql('DROP SEQUENCE report_id_seq CASCADE'); + // $this->addSql('DROP SEQUENCE report_id_seq CASCADE'); $this->addSql('CREATE SEQUENCE chill_csconnectes.rome_appellation_id_seq ' .'INCREMENT BY 1 MINVALUE 1 START 1'); $this->addSql('CREATE SEQUENCE chill_csconnectes.rome_metier_id_seq ' @@ -32,7 +32,7 @@ final class Version20200205132532 extends AbstractMigration $this->addSql('CREATE SEQUENCE chill_csconnectes.projet_professionnel_id_seq ' .'INCREMENT BY 1 MINVALUE 1 START 1'); $this->addSql('CREATE SEQUENCE chill_csconnectes.cv_formation_id_seq ' - . 'INCREMENT BY 1 MINVALUE 1 START 1'); + .'INCREMENT BY 1 MINVALUE 1 START 1'); $this->addSql('CREATE TABLE chill_csconnectes.rome_appellation (' .'id INT NOT NULL, metier_id INT DEFAULT NULL, code VARCHAR(40) NOT NULL, ' .'libelle TEXT NOT NULL, PRIMARY KEY(id))'); From 28c986fddf1f692944976512f0986ac523ccb67c Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 24 Apr 2024 14:52:19 +0200 Subject: [PATCH 035/136] controller with crud logic + templates fixed for dispositif --- .../src/Controller/CSPersonController.php | 16 +++++++++------- .../DependencyInjection/ChillJobExtension.php | 2 +- .../ChillJobBundle/src/Entity/CSPerson.php | 4 ++-- .../src/Form/CSPersonDispositifsType.php | 4 ++-- .../src/Form/CSPersonPersonalSituationType.php | 4 ++-- .../ChillJobBundle/src/Menu/MenuBuilder.php | 4 ++-- .../views/CSPerson/dispositifs_edit.html.twig | 5 +++++ .../views/CSPerson/dispositifs_view.html.twig | 10 ++++++---- .../Resources/views/CRUD/_edit_content.html.twig | 8 ++++---- 9 files changed, 33 insertions(+), 24 deletions(-) diff --git a/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php b/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php index 6b858a130..7dd20367e 100644 --- a/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php +++ b/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php @@ -22,6 +22,7 @@ use Symfony\Component\Routing\Annotation\Route; class CSPersonController extends OneToOneEntityPersonCRUDController { + #[Route(path: '{_locale}/person/job/personal_situation/{id}/edit', name: 'chill_crud_job_personal_situation_edit')] public function personalSituationEdit(Request $request, $id): Response { return $this->formEditAction( @@ -32,6 +33,7 @@ class CSPersonController extends OneToOneEntityPersonCRUDController ); } + #[Route(path: '{_locale}/person/job/dispositifs/{id}/edit', name: 'chill_crud_job_dispositifs_edit')] public function dispositifsEdit(Request $request, $id) { return $this->formEditAction( @@ -42,13 +44,13 @@ class CSPersonController extends OneToOneEntityPersonCRUDController ); } - #[Route(path: '{_locale}/person/job/{person}/personal_situation', name: 'chill_job_personal_situation_view')] + #[Route(path: '{_locale}/person/job/{person}/personal_situation', name: 'chill_crud_job_personal_situation_view')] public function personalSituationView(Request $request, $person): Response { return $this->viewAction('ps_situation_view', $request, $person); } - #[Route(path: '{_locale}/person/job/{person}/dispositifs', name: 'chill_job_dispositifs_view')] + #[Route(path: '{_locale}/person/job/{person}/dispositifs', name: 'chill_crud_job_dispositifs_view')] public function dispositifsView(Request $request, $person): Response { return $this->viewAction('dispositifs_view', $request, $person); @@ -60,10 +62,10 @@ class CSPersonController extends OneToOneEntityPersonCRUDController switch ($action) { case 'ps_situation_view': - $route = 'chill_crud_csperson_personal_situation_edit'; + $route = 'chill_crud_job_personal_situation_edit'; break; case 'dispositifs_view': - $route = 'chill_crud_csperson_dispositifs_edit'; + $route = 'chill_crud_job_dispositifs_edit'; break; default: parent::generateRedirectOnCreateRoute($action, $request, $entity); @@ -91,12 +93,12 @@ class CSPersonController extends OneToOneEntityPersonCRUDController { return match ($action) { 'ps_situation_edit' => $this->redirectToRoute( - 'chill_crud_'.$this->getCrudName().'_personal_situation_view', - ['id' => $entity->getId()] + 'chill_crud_' .$this->getCrudName().'_personal_situation_view', + ['person' => $entity->getId()] ), 'dispositifs_edit' => $this->redirectToRoute( 'chill_crud_'.$this->getCrudName().'_dispositifs_view', - ['id' => $entity->getId()] + ['person' => $entity->getId()] ), default => null, }; diff --git a/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php b/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php index a93642081..beadae074 100644 --- a/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php +++ b/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php @@ -58,7 +58,7 @@ class ChillJobExtension extends Extension implements PrependExtensionInterface [ 'class' => CSPerson::class, 'controller' => CSPersonController::class, - 'name' => 'admin_personal_situation', + 'name' => 'job', 'base_role' => 'ROLE_USER', 'base_path' => '/person/job/', /* 'form_class' => CSPersonPersonalSituationType::class, diff --git a/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php b/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php index cdc01b177..e7bd12502 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php @@ -1186,7 +1186,7 @@ class CSPerson return $this; } - public function getDateContratIEJ(): \DateTimeInterface + public function getDateContratIEJ(): ?\DateTimeInterface { return $this->dateContratIEJ; } @@ -1210,7 +1210,7 @@ class CSPerson return $this; } - public function getDateAvenantIEJ(): \DateTimeInterface + public function getDateAvenantIEJ(): ?\DateTimeInterface { return $this->dateAvenantIEJ; } diff --git a/src/Bundle/ChillJobBundle/src/Form/CSPersonDispositifsType.php b/src/Bundle/ChillJobBundle/src/Form/CSPersonDispositifsType.php index 8ad7e4cfd..66066e8a2 100644 --- a/src/Bundle/ChillJobBundle/src/Form/CSPersonDispositifsType.php +++ b/src/Bundle/ChillJobBundle/src/Form/CSPersonDispositifsType.php @@ -92,9 +92,9 @@ class CSPersonDispositifsType extends AbstractType ]) ->add('prescripteur', PickThirdpartyDynamicType::class, [ 'required' => false, - 'types' => ['prescripteur'], +// 'types' => ['prescripteur'], 'label' => 'Prescripteur', - 'center' => $options['center'], +// 'center' => $options['center'], ]) ->add('dispositifsNotes', TextareaType::class, [ 'required' => false, diff --git a/src/Bundle/ChillJobBundle/src/Form/CSPersonPersonalSituationType.php b/src/Bundle/ChillJobBundle/src/Form/CSPersonPersonalSituationType.php index 08c8c112f..9fcb39f91 100644 --- a/src/Bundle/ChillJobBundle/src/Form/CSPersonPersonalSituationType.php +++ b/src/Bundle/ChillJobBundle/src/Form/CSPersonPersonalSituationType.php @@ -149,8 +149,8 @@ class CSPersonPersonalSituationType extends AbstractType 'choice_label' => fn ($k) => 'handicap_recommandation.'.$k, ]) ->add('handicapAccompagnement', PickThirdpartyDynamicType::class, [ - 'center' => $options['center'], - 'types' => ['prescripteur'], +// 'center' => $options['center'], +// 'types' => ['prescripteur'], 'required' => false, 'multiple' => false, ]) diff --git a/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php b/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php index 7faa51ed9..c5d3f2596 100644 --- a/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php +++ b/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php @@ -35,7 +35,7 @@ class MenuBuilder implements LocalMenuBuilderInterface // if ($this->authorizationChecker->isGranted(CSConnectesVoter::REPORT_NEW, $person)) { $menu->addChild('Situation personnelle', [ - 'route' => 'chill_job_personal_situation_view', + 'route' => 'chill_crud_job_personal_situation_view', 'routeParameters' => [ 'person' => $person->getId(), ], @@ -44,7 +44,7 @@ class MenuBuilder implements LocalMenuBuilderInterface 'order' => 50, ]); $menu->addChild('Dispositifs', [ - 'route' => 'chill_job_dispositifs_view', + 'route' => 'chill_crud_job_dispositifs_view', 'routeParameters' => [ 'person' => $person->getId(), ], diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/dispositifs_edit.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/dispositifs_edit.html.twig index a2151e5cb..5fe59d910 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/dispositifs_edit.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/dispositifs_edit.html.twig @@ -1,5 +1,9 @@ {% extends '@ChillPerson/CRUD/edit.html.twig' %} +{% block css %} + {{ encore_entry_link_tags('mod_pickentity_type') }} +{% endblock %} + {% block title 'Dispositifs de ' ~ entity.person.firstName ~ ' ' ~ entity.person.lastName %} {% block personcontent %} @@ -84,6 +88,7 @@ {% block js %} {{ parent() }} + {{ encore_entry_script_tags('mod_pickentity_type') }} + {{ encore_entry_script_tags('mod_async_upload') }} + {{ encore_entry_script_tags('mod_pickentity_type') }} {% endblock js %} diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_view.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_view.html.twig index 7f8798801..8409fcffc 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_view.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_view.html.twig @@ -1,12 +1,12 @@ -{% extends "ChillPersonBundle::layout.html.twig" %} +{% extends "@ChillPerson/Person/layout.html.twig" %} {% set person = entity.getPerson() %} {% set activeRouteKey = '' %} -{% set niveaux_maitrise_langue = constant('CSConnectes\\SPBundle\\Entity\\CSPerson::NIVEAU_MAITRISE_LANGUE') %} -{% set permis_conduire = constant('CSConnectes\\SPBundle\\Entity\\CSPerson::PERMIS_CONDUIRE') %} -{% set types_contrat = constant('CSConnectes\\SPBundle\\Entity\\CSPerson::TYPE_CONTRAT') %} -{% set ressources = constant('CSConnectes\\SPBundle\\Entity\\CSPerson::RESSOURCES') %} +{% set niveaux_maitrise_langue = constant('Chill\\JobBundle\\Entity\\CSPerson::NIVEAU_MAITRISE_LANGUE') %} +{% set permis_conduire = constant('Chill\\JobBundle\\Entity\\CSPerson::PERMIS_CONDUIRE') %} +{% set types_contrat = constant('Chill\\JobBundle\\Entity\\CSPerson::TYPE_CONTRAT') %} +{% set ressources = constant('Chill\\JobBundle\\Entity\\CSPerson::RESSOURCES') %} {% import '@ChillDocStore/Macro/macro.html.twig' as doc %} @@ -182,7 +182,7 @@
    Montant CPF
    {% if entity.cPFMontant is not null %} -
    {{ entity.cPFMontant|localizedcurrency('EUR') }}
    +
    {{ entity.cPFMontant|format_currency('EUR') }}
    {% else %}
    {{ null|chill_print_or_message }}
    {% endif %} @@ -190,7 +190,7 @@
    Montant acompte DIF
    {% if entity.acompteDIF is not null %} -
    {{ entity.acompteDIF|localizedcurrency('EUR') }}
    +
    {{ entity.acompteDIF|format_currency('EUR') }}
    {% else %}
    {{ null|chill_print_or_message }}
    {% endif %} @@ -267,7 +267,7 @@ {% endblock %} From 800942bc92c76aa44aab9c8bff2ac9d9d53e5beb Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 24 Apr 2024 17:09:44 +0200 Subject: [PATCH 037/136] Add missing columns to report tables --- .../ChillJobBundle/src/Entity/Frein.php | 4 +- .../ChillJobBundle/src/Entity/Immersion.php | 6 +-- .../src/Entity/ProjetProfessionnel.php | 6 +-- .../src/migrations/Version20240424140641.php | 39 +++++++++++++++++++ 4 files changed, 42 insertions(+), 13 deletions(-) create mode 100644 src/Bundle/ChillJobBundle/src/migrations/Version20240424140641.php diff --git a/src/Bundle/ChillJobBundle/src/Entity/Frein.php b/src/Bundle/ChillJobBundle/src/Entity/Frein.php index 722109069..4236e4aec 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Frein.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Frein.php @@ -79,11 +79,9 @@ class Frein implements HasPerson, \Stringable private ?string $notesEmploi = ''; /** - * @ORM\ManytoOne( - * targetEntity="Chill\PersonBundle\Entity\Person") - * * @Assert\NotNull() */ + #[ORM\ManyToOne(targetEntity: Person::class)] private Person $person; public function __construct() diff --git a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php index dcd2f029e..94137a34a 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php @@ -39,13 +39,9 @@ class Immersion implements \Stringable private ?int $id = null; /** - * @var Person - * - * @ORM\ManytoOne( - * targetEntity="Chill\PersonBundle\Entity\Person") - * * @Assert\NotNull() */ + #[ORM\ManyToOne(targetEntity: Person::class)] private $person; /** diff --git a/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php b/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php index 363098f3a..e9ed41bb5 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php +++ b/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php @@ -33,13 +33,9 @@ class ProjetProfessionnel implements \Stringable private ?int $id = null; /** - * @var Person - * - * @ORM\ManytoOne( - * targetEntity="Chill\PersonBundle\Entity\Person") - * * @Assert\NotNull() */ + #[ORM\ManyToOne(targetEntity: Person::class)] private $person; /** diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20240424140641.php b/src/Bundle/ChillJobBundle/src/migrations/Version20240424140641.php new file mode 100644 index 000000000..5381199ff --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/migrations/Version20240424140641.php @@ -0,0 +1,39 @@ +addSql('ALTER TABLE chill_csconnectes.frein ADD person_id INT DEFAULT NULL'); + $this->addSql('ALTER TABLE chill_csconnectes.frein ADD CONSTRAINT FK_172EAC0A217BBB47 FOREIGN KEY (person_id) REFERENCES chill_person_person (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('CREATE INDEX IDX_172EAC0A217BBB47 ON chill_csconnectes.frein (person_id)'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD person_id INT DEFAULT NULL'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD CONSTRAINT FK_FBB3CBB4217BBB47 FOREIGN KEY (person_id) REFERENCES chill_person_person (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('CREATE INDEX IDX_FBB3CBB4217BBB47 ON chill_csconnectes.immersion (person_id)'); + $this->addSql('ALTER TABLE chill_csconnectes.projet_professionnel ADD person_id INT DEFAULT NULL'); + $this->addSql('ALTER TABLE chill_csconnectes.projet_professionnel ADD CONSTRAINT FK_12E4FFBF217BBB47 FOREIGN KEY (person_id) REFERENCES chill_person_person (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('CREATE INDEX IDX_12E4FFBF217BBB47 ON chill_csconnectes.projet_professionnel (person_id)'); + } + + public function down(Schema $schema): void + { + $this->addSql('ALTER TABLE chill_csconnectes.projet_professionnel DROP CONSTRAINT FK_12E4FFBF217BBB47'); + $this->addSql('ALTER TABLE chill_csconnectes.projet_professionnel DROP person_id'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP CONSTRAINT FK_FBB3CBB4217BBB47'); + $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP person_id'); + $this->addSql('ALTER TABLE chill_csconnectes.frein DROP CONSTRAINT FK_172EAC0A217BBB47'); + $this->addSql('ALTER TABLE chill_csconnectes.frein DROP person_id'); + } +} From 454ab73303da949ce043bf40b68ea0138320c5f1 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 24 Apr 2024 17:11:26 +0200 Subject: [PATCH 038/136] WIP fix emploi reports --- .../src/Controller/CSReportController.php | 8 +- .../DependencyInjection/ChillJobExtension.php | 97 +++++++++++++++++-- .../src/Form/CSPersonDispositifsType.php | 2 - .../Form/CSPersonPersonalSituationType.php | 2 - .../ChillJobBundle/src/Form/ImmersionType.php | 8 +- .../views/CSPerson/dispositifs_edit.html.twig | 2 +- .../personal_situation_edit.html.twig | 2 +- .../src/Resources/views/CV/edit.html.twig | 4 +- .../src/Resources/views/CV/new.html.twig | 6 +- .../src/Resources/views/CV/view.html.twig | 2 +- .../src/Resources/views/Frein/edit.html.twig | 4 +- .../src/Resources/views/Frein/new.html.twig | 4 +- .../src/Resources/views/Frein/view.html.twig | 2 +- .../views/Immersion/edit-bilan.html.twig | 4 +- .../Resources/views/Immersion/edit.html.twig | 4 +- .../Resources/views/Immersion/new.html.twig | 4 +- .../Resources/views/Immersion/view.html.twig | 2 +- .../views/ProjetProfessionnel/edit.html.twig | 4 +- .../views/ProjetProfessionnel/new.html.twig | 4 +- .../views/ProjetProfessionnel/view.html.twig | 2 +- .../Resources/views/Report/delete.html.twig | 2 +- .../Resources/views/Report/index.html.twig | 8 +- .../src/migrations/Version20240424095147.php | 3 +- 23 files changed, 128 insertions(+), 52 deletions(-) diff --git a/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php b/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php index e6a3c4517..fcb2304da 100644 --- a/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php +++ b/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php @@ -45,18 +45,18 @@ class CSReportController extends AbstractController $kinds = []; - if ($this->isGranted(CSConnectesVoter::REPORT_CV, $person)) { +// if ($this->isGranted(CSConnectesVoter::REPORT_CV, $person)) { $kinds['cvs'] = CV::class; - } +// } - if ($this->isGranted(CSConnectesVoter::REPORT_NEW, $person)) { +// if ($this->isGranted(CSConnectesVoter::REPORT_NEW, $person)) { $kinds = \array_merge($kinds, [ 'cvs' => CV::class, 'freins' => Frein::class, 'immersions' => Immersion::class, 'projet_professionnels' => ProjetProfessionnel::class, ]); - } +// } foreach ($kinds as $key => $className) { $ordering = match ($key) { diff --git a/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php b/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php index beadae074..94c0ce998 100644 --- a/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php +++ b/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php @@ -11,9 +11,17 @@ declare(strict_types=1); namespace Chill\JobBundle\DependencyInjection; +use Chill\JobBundle\Controller\CSCrudReportController; use Chill\JobBundle\Controller\CSPersonController; use Chill\JobBundle\Entity\CSPerson; -use Chill\JobBundle\Form\CSPersonPersonalSituationType; +use Chill\JobBundle\Entity\CV; +use Chill\JobBundle\Entity\Frein; +use Chill\JobBundle\Entity\Immersion; +use Chill\JobBundle\Entity\ProjetProfessionnel; +use Chill\JobBundle\Form\CVType; +use Chill\JobBundle\Form\FreinType; +use Chill\JobBundle\Form\ImmersionType; +use Chill\JobBundle\Form\ProjetProfessionnelType; use Symfony\Component\DependencyInjection\ContainerBuilder; use Symfony\Component\Config\FileLocator; use Symfony\Component\DependencyInjection\Extension\PrependExtensionInterface; @@ -61,21 +69,98 @@ class ChillJobExtension extends Extension implements PrependExtensionInterface 'name' => 'job', 'base_role' => 'ROLE_USER', 'base_path' => '/person/job/', - /* 'form_class' => CSPersonPersonalSituationType::class, + ], + [ + 'class' => CV::class, + 'controller' => CSCrudReportController::class, + 'name' => 'cscv', + 'base_role' => 'ROLE_USER', + 'base_path' => '/person/report/cv', + 'form_class' => CVType::class, 'actions' => [ 'index' => [ 'role' => 'ROLE_USER', - 'template' => '@ChillPerson/CRUD/index.html.twig', + 'template' => '@ChillJob/CV/index.html.twig', ], 'new' => [ 'role' => 'ROLE_USER', - 'template' => '@ChillPerson/CRUD/new.html.twig', + 'template' => '@ChillJob/CV/new.html.twig', ], 'edit' => [ 'role' => 'ROLE_USER', - 'template' => '@ChillPerson/CRUD/edit.html.twig', + 'template' => '@ChillJob/CV/edit.html.twig', ], - ],*/ + ], + ], + [ + 'class' => ProjetProfessionnel::class, + 'controller' => CSCrudReportController::class, + 'name' => 'projet_prof', + 'base_role' => 'ROLE_USER', + 'base_path' => '/person/report/projet-professionnel', + 'form_class' => ProjetProfessionnelType::class, + 'actions' => [ + 'view' => [ + 'role' => 'ROLE_USER', + 'template' => '@ChillJob/ProjetProfessionnel/view.html.twig', + ], + 'new' => [ + 'role' => 'ROLE_USER', + 'template' => '@ChillJob/ProjetProfessionnel/new.html.twig', + ], + 'edit' => [ + 'role' => 'ROLE_USER', + 'template' => '@ChillJob/ProjetProfessionnel/edit.html.twig', + ], + ], + ], + [ + 'class' => Frein::class, + 'controller' => CSCrudReportController::class, + 'name' => 'csfrein', + 'base_role' => 'ROLE_USER', + 'base_path' => '/person/report/frein', + 'form_class' => FreinType::class, + 'actions' => [ + 'view' => [ + 'role' => 'ROLE_USER', + 'template' => '@ChillJob/Frein/view.html.twig', + ], + 'new' => [ + 'role' => 'ROLE_USER', + 'template' => '@ChillJob/Frein/new.html.twig', + ], + 'edit' => [ + 'role' => 'ROLE_USER', + 'template' => '@ChillJob/Frein/edit.html.twig', + ], + ], + ], + [ + 'class' => Immersion::class, + 'controller' => CSCrudReportController::class, + 'name' => 'immersion', + 'base_role' => 'ROLE_USER', + 'base_path' => '/person/report/immersion', + 'form_class' => ImmersionType::class, + 'actions' => [ + 'view' => [ + 'role' => 'ROLE_USER', + 'template' => '@ChillJob/Immersion/view.html.twig', + ], + 'new' => [ + 'role' => 'ROLE_USER', + 'template' => '@ChillJob/Immersion/new.html.twig', + ], + 'bilan' => [ + 'role' => 'ROLE_USER', + 'template' => '@ChillJob/Immersion/edit-bilan.html.twig', + ], + 'edit' => [ + 'role' => 'ROLE_USER', + 'template' => '@ChillJob/Immersion/edit.html.twig', + ], + ], ], ], ]); diff --git a/src/Bundle/ChillJobBundle/src/Form/CSPersonDispositifsType.php b/src/Bundle/ChillJobBundle/src/Form/CSPersonDispositifsType.php index 66066e8a2..b30a07153 100644 --- a/src/Bundle/ChillJobBundle/src/Form/CSPersonDispositifsType.php +++ b/src/Bundle/ChillJobBundle/src/Form/CSPersonDispositifsType.php @@ -92,9 +92,7 @@ class CSPersonDispositifsType extends AbstractType ]) ->add('prescripteur', PickThirdpartyDynamicType::class, [ 'required' => false, -// 'types' => ['prescripteur'], 'label' => 'Prescripteur', -// 'center' => $options['center'], ]) ->add('dispositifsNotes', TextareaType::class, [ 'required' => false, diff --git a/src/Bundle/ChillJobBundle/src/Form/CSPersonPersonalSituationType.php b/src/Bundle/ChillJobBundle/src/Form/CSPersonPersonalSituationType.php index 9fcb39f91..ef2e8ef59 100644 --- a/src/Bundle/ChillJobBundle/src/Form/CSPersonPersonalSituationType.php +++ b/src/Bundle/ChillJobBundle/src/Form/CSPersonPersonalSituationType.php @@ -149,8 +149,6 @@ class CSPersonPersonalSituationType extends AbstractType 'choice_label' => fn ($k) => 'handicap_recommandation.'.$k, ]) ->add('handicapAccompagnement', PickThirdpartyDynamicType::class, [ -// 'center' => $options['center'], -// 'types' => ['prescripteur'], 'required' => false, 'multiple' => false, ]) diff --git a/src/Bundle/ChillJobBundle/src/Form/ImmersionType.php b/src/Bundle/ChillJobBundle/src/Form/ImmersionType.php index 833143deb..e9414902c 100644 --- a/src/Bundle/ChillJobBundle/src/Form/ImmersionType.php +++ b/src/Bundle/ChillJobBundle/src/Form/ImmersionType.php @@ -11,6 +11,7 @@ declare(strict_types=1); namespace Chill\JobBundle\Form; +use Chill\MainBundle\Form\Type\PickAddressType; use Chill\ThirdPartyBundle\Form\Type\PickThirdpartyDynamicType; use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\FormBuilderInterface; @@ -22,7 +23,6 @@ use Symfony\Component\Form\Extension\Core\Type\EmailType; use Chill\MainBundle\Form\Type\DateIntervalType; use Symfony\Component\Form\Extension\Core\Type\ChoiceType; use Chill\JobBundle\Entity\Immersion; -use Chill\MainBundle\Form\Type\AddressType; class ImmersionType extends AbstractType { @@ -31,8 +31,6 @@ class ImmersionType extends AbstractType if ('immersion' === $options['step']) { $builder ->add('entreprise', PickThirdpartyDynamicType::class, [ - 'center' => $options['center'], - 'types' => ['entreprise'], 'label' => "Identité de l'entreprise", 'required' => true, 'multiple' => false, @@ -65,11 +63,9 @@ class ImmersionType extends AbstractType 'label' => 'Email de la structure', 'required' => false, ]) - ->add('structureAccAddress', AddressType::class, [ + ->add('structureAccAddress', PickAddressType::class, [ 'label' => 'Addresse de la structure d\'accompagnement', 'required' => false, - 'has_valid_from' => false, - 'null_if_empty' => true, ]) ->add('posteTitle', TextType::class, [ 'label' => 'Intitulé du poste', diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/dispositifs_edit.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/dispositifs_edit.html.twig index 5fe59d910..5e0c53d87 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/dispositifs_edit.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/dispositifs_edit.html.twig @@ -6,7 +6,7 @@ {% block title 'Dispositifs de ' ~ entity.person.firstName ~ ' ' ~ entity.person.lastName %} -{% block personcontent %} +{% block content %} {% embed '@ChillPerson/CRUD/_edit_content.html.twig' %} {% block crud_content_header %}

    Dispositifs

    diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_edit.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_edit.html.twig index 771153d0c..5b4982ede 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_edit.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_edit.html.twig @@ -2,7 +2,7 @@ {% block title 'Situation personnelle de ' ~ entity.person.firstName ~ ' ' ~ entity.person.lastName %} -{% block personcontent %} +{% block content %} {% embed '@ChillPerson/CRUD/_edit_content.html.twig' %} {% block crud_content_header %}

    Situation personnelle

    diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CV/edit.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CV/edit.html.twig index b0d11ec8c..9d674137f 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/CV/edit.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CV/edit.html.twig @@ -1,4 +1,4 @@ -{% extends '@ChillPerson/layout.html.twig' %} +{% extends "@ChillPerson/Person/layout.html.twig" %} {% set person = entity.person %} {% set activeRouteKey = '' %} @@ -24,7 +24,7 @@ {% endblock %} -{% block personcontent %} +{% block content %} {% embed '@ChillPerson/CRUD/_edit_content.html.twig' %} {% block crud_content_form_rows %} diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CV/new.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CV/new.html.twig index 8d3b970e3..fc285b50f 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/CV/new.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CV/new.html.twig @@ -1,4 +1,4 @@ -{% extends '@ChillPerson/layout.html.twig' %} +{% extends "@ChillPerson/Person/layout.html.twig" %} {% set person = entity.person %} {% set activeRouteKey = '' %} @@ -24,7 +24,7 @@ {% endblock %} -{% block personcontent %} +{% block content %} {% embed '@ChillMain/CRUD/_new_content.html.twig' %} {% block crud_content_header %}

    {{ ('crud.'~crud_name~'.title_new')|trans({'%person%': person|chill_entity_render_string }) }}

    @@ -48,7 +48,7 @@ {% block content_form_actions_back %}
  • - + {{ 'Cancel'|trans }}
  • diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CV/view.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CV/view.html.twig index 89655a425..ec938933a 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/CV/view.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CV/view.html.twig @@ -1,6 +1,6 @@ {% extends '@ChillPerson/CRUD/view.html.twig' %} -{% block personcontent %} +{% block content %} {% embed '@ChillPerson/CRUD/_view_content.html.twig' %} {% block crud_content_header %}

    {{ ('crud.' ~ crud_name ~ '.title_view')|trans({'%person%': person|chill_entity_render_string }) }}

    diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Frein/edit.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Frein/edit.html.twig index 296ea7d56..1b685203a 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Frein/edit.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Frein/edit.html.twig @@ -1,4 +1,4 @@ -{% extends '@ChillPerson/layout.html.twig' %} +{% extends "@ChillPerson/Person/layout.html.twig" %} {% set person = entity.person %} {% set activeRouteKey = '' %} @@ -7,7 +7,7 @@ {% include('@ChillMain/CRUD/_edit_title.html.twig') %} {% endblock title %} -{% block personcontent %} +{% block content %} {% embed '@ChillPerson/CRUD/_edit_content.html.twig' %} {% block content_form_actions_back %}
  • diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Frein/new.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Frein/new.html.twig index 415f1f610..bdf6d462e 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Frein/new.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Frein/new.html.twig @@ -1,4 +1,4 @@ -{% extends '@ChillPerson/layout.html.twig' %} +{% extends "@ChillPerson/Person/layout.html.twig" %} {% set person = entity.person %} {% set activeRouteKey = '' %} @@ -7,7 +7,7 @@ {% embed('@ChillPerson/CRUD/_new_title.html.twig') %}{% endembed %} {% endblock %} -{% block personcontent %} +{% block content %} {% embed '@ChillMain/CRUD/_new_content.html.twig' %} {% block crud_content_header %}

    {{ ('crud.'~crud_name~'.title_new')|trans({'%person%': person|chill_entity_render_string }) }}

    diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Frein/view.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Frein/view.html.twig index a93f9dbf6..39ef73b64 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Frein/view.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Frein/view.html.twig @@ -1,6 +1,6 @@ {% extends '@ChillPerson/CRUD/view.html.twig' %} -{% block personcontent %} +{% block content %} {% embed '@ChillPerson/CRUD/_view_content.html.twig' %} {% block crud_content_header %}

    {{ ('crud.' ~ crud_name ~ '.title_view')|trans({'%person%': person|chill_entity_render_string }) }}

    diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit-bilan.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit-bilan.html.twig index b5449a158..f6b27109c 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit-bilan.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit-bilan.html.twig @@ -1,4 +1,4 @@ -{% extends '@ChillPerson/layout.html.twig' %} +{% extends "@ChillPerson/Person/layout.html.twig" %} {% set person = entity.person %} {% set activeRouteKey = '' %} @@ -7,7 +7,7 @@ Bilan d'immersion {% endblock title %} -{% block personcontent %} +{% block content %} {% embed '@ChillPerson/CRUD/_edit_content.html.twig' %} {% block crud_content_header %}

    Bilan d'immersion

    diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit.html.twig index 8fad837dd..8a383ac82 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit.html.twig @@ -1,4 +1,4 @@ -{% extends '@ChillPerson/layout.html.twig' %} +{% extends "@ChillPerson/Person/layout.html.twig" %} {% set person = entity.person %} {% set activeRouteKey = '' %} @@ -7,7 +7,7 @@ {% include('@ChillMain/CRUD/_edit_title.html.twig') %} {% endblock title %} -{% block personcontent %} +{% block content %} {% embed '@ChillPerson/CRUD/_edit_content.html.twig' %} {% block content_form_actions_back %}
  • diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/new.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/new.html.twig index 20da94044..4410bf1db 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/new.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/new.html.twig @@ -1,4 +1,4 @@ -{% extends '@ChillPerson/layout.html.twig' %} +{% extends "@ChillPerson/Person/layout.html.twig" %} {% set person = entity.person %} {% set activeRouteKey = '' %} @@ -7,7 +7,7 @@ {% embed('@ChillPerson/CRUD/_new_title.html.twig') %}{% endembed %} {% endblock %} -{% block personcontent %} +{% block content %} {% embed '@ChillMain/CRUD/_new_content.html.twig' %} {% block crud_content_header %}

    {{ ('crud.'~crud_name~'.title_new')|trans({'%person%': person|chill_entity_render_string }) }}

    diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/view.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/view.html.twig index 26d4c2efc..c01568df4 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/view.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/view.html.twig @@ -1,6 +1,6 @@ {% extends '@ChillPerson/CRUD/view.html.twig' %} -{% block personcontent %} +{% block content %} {% embed '@ChillPerson/CRUD/_view_content.html.twig' %} {% block crud_content_header %}

    {{ ('crud.' ~ crud_name ~ '.title_view')|trans({'%person%': person|chill_entity_render_string }) }}

    diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/edit.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/edit.html.twig index 2a25f9186..462807322 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/edit.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/edit.html.twig @@ -1,4 +1,4 @@ -{% extends '@ChillPerson/layout.html.twig' %} +{% extends "@ChillPerson/Person/layout.html.twig" %} {% set person = entity.person %} {% set activeRouteKey = '' %} @@ -7,7 +7,7 @@ {% include('@ChillMain/CRUD/_edit_title.html.twig') %} {% endblock title %} -{% block personcontent %} +{% block content %} {% embed '@ChillPerson/CRUD/_edit_content.html.twig' %} {% block crud_content_header %}

    {{ ('crud.'~crud_name~'.title_edit')|trans({'%person%': person|chill_entity_render_string }) }}

    diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/new.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/new.html.twig index 9ccc87bdb..d67f8a218 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/new.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/new.html.twig @@ -1,4 +1,4 @@ -{% extends '@ChillPerson/layout.html.twig' %} +{% extends "@ChillPerson/Person/layout.html.twig" %} {% set person = entity.person %} {% set activeRouteKey = '' %} @@ -7,7 +7,7 @@ {% embed('@ChillPerson/CRUD/_new_title.html.twig') %}{% endembed %} {% endblock %} -{% block personcontent %} +{% block content %} {% embed '@ChillMain/CRUD/_new_content.html.twig' %} {% block crud_content_header %}

    {{ ('crud.'~crud_name~'.title_new')|trans({'%person%': person|chill_entity_render_string }) }}

    diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/view.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/view.html.twig index fa3a28329..6f5cb22c0 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/view.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/view.html.twig @@ -1,6 +1,6 @@ {% extends '@ChillPerson/CRUD/view.html.twig' %} -{% block personcontent %} +{% block content %} {% embed '@ChillPerson/CRUD/_view_content.html.twig' %} {% block crud_content_header %}

    {{ ('crud.' ~ crud_name ~ '.title_view')|trans({'%person%': person|chill_entity_render_string }) }}

    diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Report/delete.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Report/delete.html.twig index 5b09e3622..6f1013d0c 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Report/delete.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Report/delete.html.twig @@ -3,7 +3,7 @@ {% set person = entity.person %} {% set activeRouteKey = '' %} -{% block personcontent %} +{% block content %} {% embed '@ChillMain/CRUD/_delete_content.html.twig' %} {% block content_form_actions_back %}
  • diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Report/index.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Report/index.html.twig index b8fe5105b..f9762c445 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Report/index.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Report/index.html.twig @@ -46,7 +46,7 @@
    • - + Nouveau CV
    • @@ -108,7 +108,7 @@
      • - + Nouveau rapport "frein"
      • @@ -166,7 +166,7 @@
        • - + Nouvelle immersion
        • @@ -242,7 +242,7 @@
          • - + Nouveau projet professionnel
          • diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20240424095147.php b/src/Bundle/ChillJobBundle/src/migrations/Version20240424095147.php index 78f100e43..4b75d8e1b 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20240424095147.php +++ b/src/Bundle/ChillJobBundle/src/migrations/Version20240424095147.php @@ -24,7 +24,6 @@ final class Version20240424095147 extends AbstractMigration public function up(Schema $schema): void { $this->addSql('CREATE SCHEMA chill_csconnectes'); - $this->addSql('DROP SEQUENCE chill_person_accompanying_period_work_eval_doc_id_seq CASCADE'); $this->addSql('CREATE SEQUENCE chill_csconnectes.cv_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); $this->addSql('CREATE SEQUENCE chill_csconnectes.cv_experience_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); $this->addSql('CREATE SEQUENCE chill_csconnectes.cv_formation_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); @@ -107,7 +106,6 @@ final class Version20240424095147 extends AbstractMigration public function down(Schema $schema): void { - $this->addSql('CREATE SCHEMA public'); $this->addSql('DROP SEQUENCE chill_csconnectes.cv_id_seq CASCADE'); $this->addSql('DROP SEQUENCE chill_csconnectes.cv_experience_id_seq CASCADE'); $this->addSql('DROP SEQUENCE chill_csconnectes.cv_formation_id_seq CASCADE'); @@ -155,5 +153,6 @@ final class Version20240424095147 extends AbstractMigration $this->addSql('DROP TABLE chill_csconnectes.projetprofessionnel_valide'); $this->addSql('DROP TABLE chill_csconnectes.rome_appellation'); $this->addSql('DROP TABLE chill_csconnectes.rome_metier'); + $this->addSql('DROP SCHEMA chill_csconnectes'); } } From 6f55ba15d6847afc6da370e8c62bf2aed648844a Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 24 Apr 2024 17:40:31 +0200 Subject: [PATCH 039/136] Split crud controllers for each report entity --- .../src/Controller/CSCrudReportController.php | 1 + .../src/Controller/CVCrudController.php | 63 +++++++++++++++ .../src/Controller/FreinCrudController.php | 36 +++++++++ .../Controller/ImmersionCrudController.php | 80 +++++++++++++++++++ .../ProjetProfessionnelCrudController.php | 58 ++++++++++++++ .../DependencyInjection/ChillJobExtension.php | 12 ++- .../Resources/config/services/controller.yml | 15 ++-- 7 files changed, 251 insertions(+), 14 deletions(-) create mode 100644 src/Bundle/ChillJobBundle/src/Controller/CVCrudController.php create mode 100644 src/Bundle/ChillJobBundle/src/Controller/FreinCrudController.php create mode 100644 src/Bundle/ChillJobBundle/src/Controller/ImmersionCrudController.php create mode 100644 src/Bundle/ChillJobBundle/src/Controller/ProjetProfessionnelCrudController.php diff --git a/src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php b/src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php index 6f0cc742c..e52f296cc 100644 --- a/src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php +++ b/src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php @@ -79,6 +79,7 @@ class CSCrudReportController extends EntityPersonCRUDController protected function createFormFor(string $action, $entity, ?string $formClass = null, array $formOptions = []): FormInterface { + dump($entity); if ($entity instanceof Immersion) { if ('edit' === $action || 'new' === $action) { return parent::createFormFor($action, $entity, $formClass, [ diff --git a/src/Bundle/ChillJobBundle/src/Controller/CVCrudController.php b/src/Bundle/ChillJobBundle/src/Controller/CVCrudController.php new file mode 100644 index 000000000..473aff62e --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Controller/CVCrudController.php @@ -0,0 +1,63 @@ +request->get('submit', 'save-and-close'); + + return match ($next) { + 'save-and-close', 'delete-and-close' => $this->redirectToRoute('chill_job_report_index', [ + 'person' => $entity->getPerson()->getId(), + ]), + default => parent::onBeforeRedirectAfterSubmission($action, $entity, $form, $request), + }; + } + + protected function duplicateEntity(string $action, Request $request) + { + if ('cv' === $this->getCrudName()) { + $id = $request->query->get('duplicate_id', 0); + /** @var \Chill\JobBundle\Entity\CV $cv */ + $cv = $this->getEntity($action, $id, $request); + $em = $this->managerRegistry->getManager(); + + $em->detach($cv); + + foreach ($cv->getExperiences() as $experience) { + $cv->removeExperience($experience); + $em->detach($experience); + $cv->addExperience($experience); + } + foreach ($cv->getFormations() as $formation) { + $cv->removeFormation($formation); + $em->detach($formation); + $cv->addFormation($formation); + } + + return $cv; + } + + return parent::duplicateEntity($action, $request); + } +} diff --git a/src/Bundle/ChillJobBundle/src/Controller/FreinCrudController.php b/src/Bundle/ChillJobBundle/src/Controller/FreinCrudController.php new file mode 100644 index 000000000..71aadfa5c --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Controller/FreinCrudController.php @@ -0,0 +1,36 @@ +request->get('submit', 'save-and-close'); + + return match ($next) { + 'save-and-close', 'delete-and-close' => $this->redirectToRoute('chill_job_report_index', [ + 'person' => $entity->getPerson()->getId(), + ]), + default => parent::onBeforeRedirectAfterSubmission($action, $entity, $form, $request), + }; + } +} diff --git a/src/Bundle/ChillJobBundle/src/Controller/ImmersionCrudController.php b/src/Bundle/ChillJobBundle/src/Controller/ImmersionCrudController.php new file mode 100644 index 000000000..7b5f4a07b --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Controller/ImmersionCrudController.php @@ -0,0 +1,80 @@ +request->get('submit', 'save-and-close'); + + return match ($next) { + 'save-and-close', 'delete-and-close' => $this->redirectToRoute('chill_job_report_index', [ + 'person' => $entity->getPerson()->getId(), + ]), + default => parent::onBeforeRedirectAfterSubmission($action, $entity, $form, $request), + }; + } + + protected function createFormFor(string $action, $entity, ?string $formClass = null, array $formOptions = []): FormInterface + { + if ($entity instanceof Immersion) { + if ('edit' === $action || 'new' === $action) { + return parent::createFormFor($action, $entity, $formClass, [ + 'center' => $entity->getPerson()->getCenter(), + ]); + } + if ('bilan' === $action) { + return parent::createFormFor($action, $entity, $formClass, [ + 'center' => $entity->getPerson()->getCenter(), + 'step' => 'bilan', + ]); + } + if ('delete' === $action) { + return parent::createFormFor($action, $entity, $formClass, $formOptions); + } + throw new \LogicException("this step {$action} is not supported"); + } + + return parent::createFormFor($action, $entity, $formClass, $formOptions); + } + + protected function onPreFlush(string $action, $entity, FormInterface $form, Request $request) + { + // for immersion / edit-bilan action + if ('bilan' === $action) { + /* @var $entity Immersion */ + $entity->setIsBilanFullfilled(true); + } + + parent::onPreFlush($action, $entity, $form, $request); + } + + /** + * Edit immersion bilan. + * + * @param int $id + */ + public function editBilan(Request $request, $id): Response + { + return $this->formEditAction('bilan', $request, $id); + } +} diff --git a/src/Bundle/ChillJobBundle/src/Controller/ProjetProfessionnelCrudController.php b/src/Bundle/ChillJobBundle/src/Controller/ProjetProfessionnelCrudController.php new file mode 100644 index 000000000..55cab01eb --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Controller/ProjetProfessionnelCrudController.php @@ -0,0 +1,58 @@ +request->get('submit', 'save-and-close'); + + return match ($next) { + 'save-and-close', 'delete-and-close' => $this->redirectToRoute('chill_job_report_index', [ + 'person' => $entity->getPerson()->getId(), + ]), + default => parent::onBeforeRedirectAfterSubmission($action, $entity, $form, $request), + }; + } + + protected function duplicateEntity(string $action, Request $request) + { + if ('projet_prof' === $this->getCrudName()) { + $id = $request->query->get('duplicate_id', 0); + /** @var \Chill\JobBundle\Entity\ProjetProfessionnel $original */ + $original = $this->getEntity($action, $id, $request); + + $new = parent::duplicateEntity($action, $request); + + foreach ($original->getSouhait() as $s) { + $new->addSouhait($s); + } + foreach ($original->getValide() as $s) { + $new->addValide($s); + } + + return $new; + } + + return parent::duplicateEntity($action, $request); + } +} diff --git a/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php b/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php index 94c0ce998..a855fc0a2 100644 --- a/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php +++ b/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php @@ -13,6 +13,10 @@ namespace Chill\JobBundle\DependencyInjection; use Chill\JobBundle\Controller\CSCrudReportController; use Chill\JobBundle\Controller\CSPersonController; +use Chill\JobBundle\Controller\CVCrudController; +use Chill\JobBundle\Controller\FreinCrudController; +use Chill\JobBundle\Controller\ImmersionCrudController; +use Chill\JobBundle\Controller\ProjetProfessionnelCrudController; use Chill\JobBundle\Entity\CSPerson; use Chill\JobBundle\Entity\CV; use Chill\JobBundle\Entity\Frein; @@ -72,7 +76,7 @@ class ChillJobExtension extends Extension implements PrependExtensionInterface ], [ 'class' => CV::class, - 'controller' => CSCrudReportController::class, + 'controller' => CVCrudController::class, 'name' => 'cscv', 'base_role' => 'ROLE_USER', 'base_path' => '/person/report/cv', @@ -94,7 +98,7 @@ class ChillJobExtension extends Extension implements PrependExtensionInterface ], [ 'class' => ProjetProfessionnel::class, - 'controller' => CSCrudReportController::class, + 'controller' => ProjetProfessionnelCrudController::class, 'name' => 'projet_prof', 'base_role' => 'ROLE_USER', 'base_path' => '/person/report/projet-professionnel', @@ -116,7 +120,7 @@ class ChillJobExtension extends Extension implements PrependExtensionInterface ], [ 'class' => Frein::class, - 'controller' => CSCrudReportController::class, + 'controller' => FreinCrudController::class, 'name' => 'csfrein', 'base_role' => 'ROLE_USER', 'base_path' => '/person/report/frein', @@ -138,7 +142,7 @@ class ChillJobExtension extends Extension implements PrependExtensionInterface ], [ 'class' => Immersion::class, - 'controller' => CSCrudReportController::class, + 'controller' => ImmersionCrudController::class, 'name' => 'immersion', 'base_role' => 'ROLE_USER', 'base_path' => '/person/report/immersion', diff --git a/src/Bundle/ChillJobBundle/src/Resources/config/services/controller.yml b/src/Bundle/ChillJobBundle/src/Resources/config/services/controller.yml index 517fa143d..6f8973999 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/config/services/controller.yml +++ b/src/Bundle/ChillJobBundle/src/Resources/config/services/controller.yml @@ -1,13 +1,8 @@ services: - Chill\JobBundle\Controller\CSReportController: - autoconfigure: true + _defaults: autowire: true + autoconfigure: true + Chill\JobBundle\Controller\: + resource: '../../../Controller' tags: ['controller.service_arguments'] - Chill\JobBundle\Controller\CSPersonController: - autoconfigure: true - autowire: true - tags: ['controller.service_arguments'] - Chill\JobBundle\Controller\CSCrudReportController: - autoconfigure: true - autowire: true - tags: [ 'controller.service_arguments' ] + From cba8a342d53650387ee079aa8dc03271b2e027ef Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 24 Apr 2024 18:02:06 +0200 Subject: [PATCH 040/136] more template fixes --- .../views/CSPerson/dispositifs_edit.html.twig | 4 +-- .../personal_situation_edit.html.twig | 4 +-- .../src/Resources/views/CV/edit.html.twig | 2 +- .../src/Resources/views/CV/view.html.twig | 2 +- .../src/Resources/views/Frein/edit.html.twig | 2 +- .../src/Resources/views/Frein/new.html.twig | 2 +- .../src/Resources/views/Frein/view.html.twig | 2 +- .../views/Immersion/edit-bilan.html.twig | 4 +-- .../Resources/views/Immersion/edit.html.twig | 2 +- .../Resources/views/Immersion/new.html.twig | 11 ++++++-- .../Resources/views/Immersion/view.html.twig | 6 ++--- .../views/ProjetProfessionnel/edit.html.twig | 2 +- .../views/ProjetProfessionnel/new.html.twig | 2 +- .../views/ProjetProfessionnel/view.html.twig | 2 +- .../Resources/views/Report/delete.html.twig | 2 +- .../Resources/views/Report/index.html.twig | 26 +++++++++---------- 16 files changed, 41 insertions(+), 34 deletions(-) diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/dispositifs_edit.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/dispositifs_edit.html.twig index 5e0c53d87..e0d7abc68 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/dispositifs_edit.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/dispositifs_edit.html.twig @@ -7,7 +7,7 @@ {% block title 'Dispositifs de ' ~ entity.person.firstName ~ ' ' ~ entity.person.lastName %} {% block content %} -{% embed '@ChillPerson/CRUD/_edit_content.html.twig' %} +{% embed '@ChillMain/CRUD/_edit_content.html.twig' %} {% block crud_content_header %}

            Dispositifs

            {% endblock %} @@ -15,7 +15,7 @@ {# surcharge le block "retour" par un lien vers la page vue #} {% block content_form_actions_back %}
          • - + {{ 'Cancel'|trans }}
          • diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_edit.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_edit.html.twig index 5b4982ede..3265679dc 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_edit.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_edit.html.twig @@ -3,7 +3,7 @@ {% block title 'Situation personnelle de ' ~ entity.person.firstName ~ ' ' ~ entity.person.lastName %} {% block content %} -{% embed '@ChillPerson/CRUD/_edit_content.html.twig' %} +{% embed '@ChillMain/CRUD/_edit_content.html.twig' %} {% block crud_content_header %}

            Situation personnelle

            {% endblock %} @@ -11,7 +11,7 @@ {# surcharge le block "retour" par un lien vers la page vue #} {% block content_form_actions_back %}
          • - + {{ 'Cancel'|trans }}
          • diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CV/edit.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CV/edit.html.twig index 9d674137f..aabbef4e4 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/CV/edit.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CV/edit.html.twig @@ -48,7 +48,7 @@ {% block content_form_actions_back %}
          • - + {{ 'Cancel'|trans }}
          • diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CV/view.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CV/view.html.twig index ec938933a..c4db35bb9 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/CV/view.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CV/view.html.twig @@ -119,7 +119,7 @@ {% block content_view_actions_back %}
          • - + {{ 'Cancel'|trans }}
          • diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Frein/edit.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Frein/edit.html.twig index 1b685203a..f18c0e964 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Frein/edit.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Frein/edit.html.twig @@ -11,7 +11,7 @@ {% embed '@ChillPerson/CRUD/_edit_content.html.twig' %} {% block content_form_actions_back %}
          • - + {{ 'Cancel'|trans }}
          • diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Frein/new.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Frein/new.html.twig index bdf6d462e..153f669be 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Frein/new.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Frein/new.html.twig @@ -14,7 +14,7 @@ {% endblock crud_content_header %} {% block content_form_actions_back %}
          • - + {{ 'Cancel'|trans }}
          • diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Frein/view.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Frein/view.html.twig index 39ef73b64..04cd6e152 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Frein/view.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Frein/view.html.twig @@ -49,7 +49,7 @@ {% block content_view_actions_back %}
          • - + {{ 'Cancel'|trans }}
          • diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit-bilan.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit-bilan.html.twig index f6b27109c..6c7f2ddb6 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit-bilan.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit-bilan.html.twig @@ -15,7 +15,7 @@ Bilan d'immersion {% block content_form_actions_back %}
          • - + {{ 'Cancel'|trans }}
          • @@ -27,7 +27,7 @@ Bilan d'immersion auprès de
            {{ entity.entreprise.name }}
            Domaine d'activité: {{ entity.domaineActivite }}

            - Modifier + Modifier

            Savoir-être du jeune

            diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit.html.twig index 8a383ac82..f817dbc19 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit.html.twig @@ -11,7 +11,7 @@ {% embed '@ChillPerson/CRUD/_edit_content.html.twig' %} {% block content_form_actions_back %}
          • - + {{ 'Cancel'|trans }}
          • diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/new.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/new.html.twig index 4410bf1db..e10722fed 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/new.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/new.html.twig @@ -3,6 +3,10 @@ {% set person = entity.person %} {% set activeRouteKey = '' %} +{% block css %} + {{ encore_entry_link_tags('mod_pickentity_type') }} +{% endblock %} + {% block title %} {% embed('@ChillPerson/CRUD/_new_title.html.twig') %}{% endembed %} {% endblock %} @@ -14,7 +18,7 @@ {% endblock crud_content_header %} {% block content_form_actions_back %}
          • - + {{ 'Cancel'|trans }}
          • @@ -64,5 +68,8 @@ {% endblock %} {% block js %} - + {{ parent() }} + {{ encore_entry_script_tags('mod_pickentity_type') }} + + {% endblock %} diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/view.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/view.html.twig index c01568df4..70d0f3f28 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/view.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/view.html.twig @@ -7,7 +7,7 @@ {% endblock crud_content_header %} {% block crud_content_view_details %} - {% import 'ChillMainBundle:Address:macro.html.twig' as macro_address %} +{# {% import 'ChillMainBundle:Address:macro.html.twig' as macro_address %}#}

            Entreprise

            @@ -188,14 +188,14 @@ {% block content_view_actions_back %}
          • - + {{ 'Cancel'|trans }}
          • {% endblock %} {% block content_view_actions_after %}
          • - + Bilan diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/edit.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/edit.html.twig index 462807322..e38cbf480 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/edit.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/edit.html.twig @@ -43,7 +43,7 @@ {% block content_form_actions_back %}
          • - + {{ 'Cancel'|trans }}
          • diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/new.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/new.html.twig index d67f8a218..34d5b9b39 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/new.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/new.html.twig @@ -43,7 +43,7 @@ {% block content_form_actions_back %}
          • - + {{ 'Cancel'|trans }}
          • diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/view.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/view.html.twig index 6f5cb22c0..75687f70f 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/view.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/view.html.twig @@ -97,7 +97,7 @@ {% block content_view_actions_back %}
          • - + {{ 'Cancel'|trans }}
          • diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Report/delete.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Report/delete.html.twig index 6f1013d0c..fb3235246 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Report/delete.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Report/delete.html.twig @@ -7,7 +7,7 @@ {% embed '@ChillMain/CRUD/_delete_content.html.twig' %} {% block content_form_actions_back %}
          • - + {{ 'Cancel'|trans }}
          • diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Report/index.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Report/index.html.twig index f9762c445..a88fb6b29 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Report/index.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Report/index.html.twig @@ -26,14 +26,14 @@
            • - +
            • - +
            • {% if is_granted('CHILL_CSCONNECTES_REPORT_DELETE', cv) %}
            • - +
            • {% endif %}
            @@ -88,14 +88,14 @@
            • - +
            • - +
            • {% if is_granted('CHILL_CSCONNECTES_REPORT_DELETE', frein) %}
            • - +
            • {% endif %}
            @@ -140,19 +140,19 @@
            • - +
            • - +
            • - +
            • {% if is_granted('CHILL_CSCONNECTES_REPORT_DELETE', im) %}
            • - +
            • {% endif %}
            @@ -221,14 +221,14 @@
            • - +
            • - +
            • {% if is_granted('CHILL_CSCONNECTES_REPORT_DELETE', pr) %}
            • - +
            • {% endif %}
            From 12a22bcc134622b80c746ad7d2e897182d4e4434 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Mon, 29 Apr 2024 14:13:37 +0200 Subject: [PATCH 041/136] template + form + property fixes for emploi reports --- .../src/Resources/config/services.yml | 4 +- .../Controller/ImmersionCrudController.php | 2 +- .../DependencyInjection/ChillJobExtension.php | 4 +- src/Bundle/ChillJobBundle/src/Entity/CV.php | 4 +- .../ChillJobBundle/src/Entity/Frein.php | 2 - .../ChillJobBundle/src/Entity/Immersion.php | 21 ++- .../ChillJobBundle/src/Form/ImmersionType.php | 5 +- .../Resources/translations/messages.fr.yml | 11 +- .../views/CSPerson/dispositifs_view.html.twig | 4 +- .../personal_situation_view.html.twig | 4 +- .../src/Resources/views/CV/edit.html.twig | 2 +- .../src/Resources/views/CV/view.html.twig | 124 +++++++++--------- .../src/Resources/views/Frein/edit.html.twig | 2 +- .../src/Resources/views/Frein/view.html.twig | 2 +- .../views/Immersion/edit-bilan.html.twig | 4 +- .../Resources/views/Immersion/edit.html.twig | 10 +- .../Resources/views/Immersion/view.html.twig | 41 ++++-- .../views/ProjetProfessionnel/edit.html.twig | 2 +- .../views/ProjetProfessionnel/view.html.twig | 2 +- .../Resources/views/Report/index.html.twig | 10 +- .../Authorization/CSConnectesVoter.php | 2 +- .../src/migrations/Version20240429111628.php | 34 +++++ 22 files changed, 175 insertions(+), 121 deletions(-) create mode 100644 src/Bundle/ChillJobBundle/src/migrations/Version20240429111628.php diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/Resources/config/services.yml b/src/Bundle/ChillFranceTravailApiBundle/src/Resources/config/services.yml index cc41a540c..38d1400e1 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/Resources/config/services.yml +++ b/src/Bundle/ChillFranceTravailApiBundle/src/Resources/config/services.yml @@ -1,7 +1,7 @@ services: Chill\FranceTravailApiBundle\ApiHelper\ApiWrapper: -# $clientId: '%pole_emploi_dev_client_id%' -# $clientSecret: '%pole_emploi_dev_client_secret%' + $clientId: '%pole_emploi_dev_client_id%' + $clientSecret: '%pole_emploi_dev_client_secret%' $redis: '@Chill\MainBundle\Redis\ChillRedis' Chill\FranceTravailApiBundle\ApiHelper\PartenaireRomeAppellation: diff --git a/src/Bundle/ChillJobBundle/src/Controller/ImmersionCrudController.php b/src/Bundle/ChillJobBundle/src/Controller/ImmersionCrudController.php index 7b5f4a07b..c4880c3f3 100644 --- a/src/Bundle/ChillJobBundle/src/Controller/ImmersionCrudController.php +++ b/src/Bundle/ChillJobBundle/src/Controller/ImmersionCrudController.php @@ -73,7 +73,7 @@ class ImmersionCrudController extends EntityPersonCRUDController * * @param int $id */ - public function editBilan(Request $request, $id): Response + public function bilan(Request $request, $id): Response { return $this->formEditAction('bilan', $request, $id); } diff --git a/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php b/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php index a855fc0a2..7e4050056 100644 --- a/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php +++ b/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php @@ -82,9 +82,9 @@ class ChillJobExtension extends Extension implements PrependExtensionInterface 'base_path' => '/person/report/cv', 'form_class' => CVType::class, 'actions' => [ - 'index' => [ + 'view' => [ 'role' => 'ROLE_USER', - 'template' => '@ChillJob/CV/index.html.twig', + 'template' => '@ChillJob/CV/view.html.twig', ], 'new' => [ 'role' => 'ROLE_USER', diff --git a/src/Bundle/ChillJobBundle/src/Entity/CV.php b/src/Bundle/ChillJobBundle/src/Entity/CV.php index 709419079..2a2e89883 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CV.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CV.php @@ -76,7 +76,7 @@ class CV implements \Stringable * @var \Doctrine\Common\Collections\Collection */ #[ORM\OneToMany(targetEntity: CV\Formation::class, mappedBy: 'CV', cascade: ['persist', 'remove', 'detach'], orphanRemoval: true)] - #[ORM\OrderBy(['startDate' => Order::Descending, 'endDate' => 'DESC'])] +// #[ORM\OrderBy(['startDate' => Order::Descending, 'endDate' => 'DESC'])] private Collection $formations; /** @@ -85,7 +85,7 @@ class CV implements \Stringable * @var \Doctrine\Common\Collections\Collection */ #[ORM\OneToMany(targetEntity: CV\Experience::class, mappedBy: 'CV', cascade: ['persist', 'remove', 'detach'], orphanRemoval: true)] - #[ORM\OrderBy(['startDate' => Order::Descending, 'endDate' => 'DESC'])] +// #[ORM\OrderBy(['startDate' => Order::Descending, 'endDate' => 'DESC'])] private Collection $experiences; #[ORM\ManyToOne(targetEntity: Person::class)] diff --git a/src/Bundle/ChillJobBundle/src/Entity/Frein.php b/src/Bundle/ChillJobBundle/src/Entity/Frein.php index 4236e4aec..a145aac34 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Frein.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Frein.php @@ -32,8 +32,6 @@ class Frein implements HasPerson, \Stringable /** * @Assert\NotNull() * - * @Assert\Date() - * * @Assert\GreaterThan("5 years ago", * message="La date du rapport ne peut pas être plus de cinq ans dans le passé" * ) diff --git a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php index 94137a34a..8c4e10baf 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php @@ -17,6 +17,7 @@ use Chill\ThirdPartyBundle\Entity\ThirdParty; use Chill\PersonBundle\Entity\Person; use Chill\MainBundle\Entity\User; use Chill\MainBundle\Entity\Address; +use libphonenumber\PhoneNumber; use Symfony\Component\Validator\Constraints as Assert; use Chill\MainBundle\Validation\Constraint\PhonenumberConstraint; @@ -84,16 +85,16 @@ class Immersion implements \Stringable * * @Assert\NotBlank() */ - #[ORM\Column(name: 'tuteurPhoneNumber', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] + #[ORM\Column(name: 'tuteurPhoneNumber', type: 'phone_number', nullable: true)] #[PhonenumberConstraint(type: 'any')] - private ?string $tuteurPhoneNumber = null; + private ?PhoneNumber $tuteurPhoneNumber = null; #[ORM\Column(name: 'structureAccName', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $structureAccName = null; - #[ORM\Column(name: 'structureAccPhonenumber', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] + #[ORM\Column(name: 'structureAccPhonenumber', type: 'phone_number', nullable: true)] #[PhonenumberConstraint(type: 'any')] - private ?string $structureAccPhonenumber = null; + private ?PhoneNumber $structureAccPhonenumber = null; #[ORM\Column(name: 'structureAccEmail', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $structureAccEmail = null; @@ -361,7 +362,7 @@ class Immersion implements \Stringable * * @return Immersion */ - public function setTuteurPhoneNumber(?string $tuteurPhoneNumber = null) + public function setTuteurPhoneNumber(?PhoneNumber $tuteurPhoneNumber = null) { $this->tuteurPhoneNumber = $tuteurPhoneNumber; @@ -370,10 +371,8 @@ class Immersion implements \Stringable /** * Get tuteurPhoneNumber. - * - * @return string|null */ - public function getTuteurPhoneNumber() + public function getTuteurPhoneNumber(): ?PhoneNumber { return $this->tuteurPhoneNumber; } @@ -405,7 +404,7 @@ class Immersion implements \Stringable * * @return Immersion */ - public function setStructureAccPhonenumber(?string $structureAccPhonenumber) + public function setStructureAccPhonenumber(?PhoneNumber $structureAccPhonenumber) { $this->structureAccPhonenumber = $structureAccPhonenumber; @@ -414,10 +413,8 @@ class Immersion implements \Stringable /** * Get structureAccPhonenumber. - * - * @return string */ - public function getStructureAccPhonenumber() + public function getStructureAccPhonenumber(): ?PhoneNumber { return $this->structureAccPhonenumber; } diff --git a/src/Bundle/ChillJobBundle/src/Form/ImmersionType.php b/src/Bundle/ChillJobBundle/src/Form/ImmersionType.php index e9414902c..4ad8e9ad0 100644 --- a/src/Bundle/ChillJobBundle/src/Form/ImmersionType.php +++ b/src/Bundle/ChillJobBundle/src/Form/ImmersionType.php @@ -11,6 +11,7 @@ declare(strict_types=1); namespace Chill\JobBundle\Form; +use Chill\MainBundle\Form\Type\ChillPhoneNumberType; use Chill\MainBundle\Form\Type\PickAddressType; use Chill\ThirdPartyBundle\Form\Type\PickThirdpartyDynamicType; use Symfony\Component\Form\AbstractType; @@ -47,7 +48,7 @@ class ImmersionType extends AbstractType 'label' => 'Fonction du tuteur', 'required' => true, ]) - ->add('tuteurPhoneNumber', TextType::class, [ + ->add('tuteurPhoneNumber', ChillPhoneNumberType::class, [ 'label' => 'Téléphone du tuteur', 'required' => true, ]) @@ -55,7 +56,7 @@ class ImmersionType extends AbstractType 'label' => 'Nom de la structure', 'required' => false, ]) - ->add('structureAccPhonenumber', TextType::class, [ + ->add('structureAccPhonenumber', ChillPhoneNumberType::class, [ 'label' => 'Téléphone de la structure', 'required' => false, ]) diff --git a/src/Bundle/ChillJobBundle/src/Resources/translations/messages.fr.yml b/src/Bundle/ChillJobBundle/src/Resources/translations/messages.fr.yml index 9f9e652bd..94cd10a0d 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/translations/messages.fr.yml +++ b/src/Bundle/ChillJobBundle/src/Resources/translations/messages.fr.yml @@ -175,13 +175,13 @@ projet_prof: note: "Notes" souhait: code: "Codes souhaits" - - + + chill_3party: key_label: prescripteur: Prescripteur entreprise: Entreprise - + crud: csfrein: title_new: Nouveau rapport "frein" pour %person% @@ -197,6 +197,9 @@ crud: title_delete: Supprimer un CV button_delete: Supprimer confirm_message_delete: Supprimer le %as_string% ? + no_date: Aucune date indiquée + no_end_date: date de fin inconnue + no_start_date: date de début inconnue immersion: title_new: Nouvelle immersion pour %person% title_view: Immersion pour %person% @@ -247,4 +250,4 @@ findernieremploidate: "Date de fin dernier emploi" CHILL_CSCONNECTES_REPORT_NEW: Création et modification des rapports CSConnectes CHILL_CSCONNECTES_REPORT_DELETE: Suppression des rapports CSConnectes CHILL_CSCONNECTES_REPORT_CV: Création et modification des rapports CSConnectes (CV uniquement) -CHILL_CSCONNECTES_EXPORTS: Exports CSConnectes \ No newline at end of file +CHILL_CSCONNECTES_EXPORTS: Exports CSConnectes diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/dispositifs_view.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/dispositifs_view.html.twig index a2e8ecb8a..976f36e5b 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/dispositifs_view.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/dispositifs_view.html.twig @@ -105,10 +105,10 @@
            IEJ
            {% if entity.dateContratIEJ != null %} -

            Date du contrat IEJ : {{ entity.dateContratIEJ|format_date('long', 'none') }}

            +

            Date du contrat IEJ : {{ entity.dateContratIEJ|format_date('short') }}

            {% endif %} {% if entity.dateAvenantIEJ != null %} -

            Date de l'avenant IEJ : {{ entity.dateAvenantIEJ|format_date('long', 'none') }}

            +

            Date de l'avenant IEJ : {{ entity.dateAvenantIEJ|format_date('short') }}

            {% endif %}
            {% endif %} diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_view.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_view.html.twig index 8409fcffc..22b37ce54 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_view.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_view.html.twig @@ -132,7 +132,7 @@
            Date de fin du dernier emploi
            {% if entity.dateFinDernierEmploi is not null %} -
            {{ entity.dateFinDernierEmploi|format_date('medium', 'none') }} +
            {{ entity.dateFinDernierEmploi|format_date('short') }} {% else %}
            {{ null|chill_print_or_message }}
            {% endif %} @@ -175,7 +175,7 @@
            Date du premier versement
            {% if entity.ressourceDate1Versement is not null %} -
            {{ entity.ressourceDate1Versement|format_date('medium', 'none') }} +
            {{ entity.ressourceDate1Versement|format_date('short') }} {% else %}
            {{ null|chill_print_or_message }}
            {% endif %} diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CV/edit.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CV/edit.html.twig index aabbef4e4..ddd16f9bf 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/CV/edit.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CV/edit.html.twig @@ -25,7 +25,7 @@ {% endblock %} {% block content %} -{% embed '@ChillPerson/CRUD/_edit_content.html.twig' %} +{% embed '@ChillMain/CRUD/_edit_content.html.twig' %} {% block crud_content_form_rows %} diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CV/view.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CV/view.html.twig index c4db35bb9..cae02a387 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/CV/view.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CV/view.html.twig @@ -9,7 +9,7 @@ {% block crud_content_view_details %}
            Date du rapport
            -
            {{ entity.reportDate|format_date('long', 'none') }}
            +
            {{ entity.reportDate|format_date('short') }}

            Compétences

            @@ -39,78 +39,80 @@

            Formations suivies

            -
            - {% for f in entity.formations %} -
            -

            {{ f.title }}{% if f.organisme is not empty %} auprès de {{ f.organisme }}{% endif %}

            + {% if entity.formations|length > 0 %} + {% for f in entity.formations %} +
            +
            +

            {{ f.title }}{% if f.organisme is not empty %} auprès de {{ f.organisme }}{% endif %}

            -
            +
            -
            Dates de formation
            -
            - {% if f.startDate is null and f.endDate is null %} - {{ null|chill_print_or_message("Aucune date indiquée") }} - {% elseif f.startDate is null %} - Jusqu'au {{ f.endDate|format_date('long', 'none') }} (date de début inconnue) - {% elseif f.endDate is null %} - Depuis le {{ f.startDate|format_date('long', 'none') }} (date de fin inconnue) - {% else %} - Du {{ f.startDate|format_date('long', 'none') }} au {{ f.endDate|format_date('long', 'none') }} - {% endif %} -
            +
            Dates de formation
            +
            + {% if f.startDate is null and f.endDate is null %} + {{ null|chill_print_or_message("Aucune date indiquée") }} + {% elseif f.startDate is null %} + Jusqu'au {{ f.endDate|format_date('short') }} (date de début inconnue) + {% elseif f.endDate is null %} + Depuis le {{ f.startDate|format_date('short') }} (date de fin inconnue) + {% else %} + Du {{ f.startDate|format_date('short') }} au {{ f.endDate|format_date('short') }} + {% endif %} +
            -
            Diplôme
            -
            -

            Diplôme obtenu: {{ (f.diplomaObtained is null ? null : ('diploma_obtained.' ~ f.diplomaObtained))|chill_print_or_message("Aucune information") }}

            -

            Diplôme reconnu en France: {{ (f.diplomaReconnue is null ? null : ('diploma_reconnu.' ~ f.diplomaReconnue))|chill_print_or_message("Aucune information") }}

            -
            -
            -
            +
            Diplôme
            +
            +

            Diplôme obtenu: {{ (f.diplomaObtained is null ? null : ('diploma_obtained.' ~ f.diplomaObtained))|chill_print_or_message("Aucune information") }}

            +

            Diplôme reconnu en France: {{ (f.diplomaReconnue is null ? null : ('diploma_reconnu.' ~ f.diplomaReconnue))|chill_print_or_message("Aucune information") }}

            +
            +
            +
  • +
    + {% endfor %} {% else %} -

    Aucune formation renseignée

    - {% endfor %} - + {{ 'No education'|trans }} + {% endif %}

    Expériences

    -
    - {% for f in entity.experiences %} -
    -

    {{ f.poste }} {% if f.structure is not empty %}auprès de {{ f.structure }}{% endif %}

    + {% if entity.formations|length > 0 %} + {% for f in entity.experiences %} +
    +
    +

    {{ f.poste }} {% if f.structure is not empty %}auprès de {{ f.structure }}{% endif %}

    -
    +
    +
    Dates de l'expérience
    +
    + {% if f.startDate is null and f.endDate is null %} + {{ null|chill_print_or_message("Aucune date indiquée") }} + {% elseif f.startDate is null %} + Jusqu'au {{ f.endDate|format_date('short') }} (date de début inconnue) + {% elseif f.endDate is null %} + Depuis le {{ f.startDate|format_date('short') }} (date de fin inconnue) + {% else %} + Du {{ f.startDate|format_date('short') }} au {{ f.endDate|format_date('short') }} + {% endif %} +
    -
    Dates de l'expérience
    -
    - {% if f.startDate is null and f.endDate is null %} - {{ null|chill_print_or_message("Aucune date indiquée") }} - {% elseif f.startDate is null %} - Jusqu'au {{ f.endDate|format_date('long', 'none') }} (date de début inconnue) - {% elseif f.endDate is null %} - Depuis le {{ f.startDate|format_date('long', 'none') }} (date de fin inconnue) - {% else %} - Du {{ f.startDate|format_date('long', 'none') }} au {{ f.endDate|format_date('long', 'none') }} - {% endif %} -
    +
    Type de contrat
    +
    + {{ (f.contratType is null ? null : ('xp_contrat_type.'~f.contratType))|chill_print_or_message }} +
    -
    Type de contrat
    -
    - {{ (f.contratType is null ? null : ('xp_contrat_type.'~f.contratType))|chill_print_or_message }} -
    - - {% if f.notes is not empty %} -
    Notes
    -
    - {{ f.notes|chill_print_or_message(null, 'blockquote') }} -
    - {% endif %} -
    -
    + {% if f.notes is not empty %} +
    Notes
    +
    + {{ f.notes|chill_print_or_message(null, 'blockquote') }} +
    + {% endif %} + +
    +
    + {% endfor %} {% else %}

    Aucune formation renseignée

    - {% endfor %} -
    - + {% endif %}

    Note

    diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Frein/edit.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Frein/edit.html.twig index f18c0e964..a7feeeca5 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Frein/edit.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Frein/edit.html.twig @@ -8,7 +8,7 @@ {% endblock title %} {% block content %} -{% embed '@ChillPerson/CRUD/_edit_content.html.twig' %} +{% embed '@ChillMain/CRUD/_edit_content.html.twig' %} {% block content_form_actions_back %}
  • diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Frein/view.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Frein/view.html.twig index 04cd6e152..a5ef2b350 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Frein/view.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Frein/view.html.twig @@ -9,7 +9,7 @@ {% block crud_content_view_details %}
    Date du rapport
    -
    {{ entity.reportDate|format_date('long', 'none') }}
    +
    {{ entity.reportDate|format_date('long') }}
    Freins identifiés
    diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit-bilan.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit-bilan.html.twig index 6c7f2ddb6..f126bcf40 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit-bilan.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit-bilan.html.twig @@ -8,7 +8,7 @@ Bilan d'immersion {% endblock title %} {% block content %} -{% embed '@ChillPerson/CRUD/_edit_content.html.twig' %} +{% embed '@ChillMain/CRUD/_edit_content.html.twig' %} {% block crud_content_header %}

    Bilan d'immersion

    {% endblock crud_content_header %} @@ -23,7 +23,7 @@ Bilan d'immersion {% block crud_content_form_rows %}

    - Immersion du {{ entity.debutDate|format_date('long', 'none') }} au {{ entity.getDateEndComputed|format_date('long', 'none') }}, + Immersion du {{ entity.debutDate|format_date('long') }} au {{ entity.getDateEndComputed|format_date('long') }}, auprès de

    {{ entity.entreprise.name }}
    Domaine d'activité: {{ entity.domaineActivite }}

    diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit.html.twig index f817dbc19..e327ddad3 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/edit.html.twig @@ -3,12 +3,16 @@ {% set person = entity.person %} {% set activeRouteKey = '' %} +{% block css %} + {{ encore_entry_link_tags('mod_pickentity_type') }} +{% endblock %} + {% block title %} {% include('@ChillMain/CRUD/_edit_title.html.twig') %} {% endblock title %} {% block content %} -{% embed '@ChillPerson/CRUD/_edit_content.html.twig' %} +{% embed '@ChillMain/CRUD/_edit_content.html.twig' %} {% block content_form_actions_back %}
  • @@ -61,5 +65,7 @@ {% endblock %} {% block js %} - + {{ parent() }} + {{ encore_entry_script_tags('mod_pickentity_type') }} + {% endblock %} diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/view.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/view.html.twig index 70d0f3f28..3dda01fbd 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/view.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Immersion/view.html.twig @@ -29,21 +29,34 @@ {% if entity.tuteurPhoneNumber is not empty %}
    Téléphone du tuteur
    -
    {{ entity.tuteurPhoneNumber|chill_format_phonenumber }}
    +

    {{ entity.tuteurPhoneNumber|chill_format_phonenumber }}

    {% endif %}

    Structure d'accompagnement

    -
    - {% for el in ['structureAccName', 'structureAccPhonenumber', 'structureAccEmail'] %} - {% set el_data = attribute(entity, el) %} - {% if el_data is not empty %}{{ el_data }}
    {% endif %} - {% endfor %} - {% if entity.structureAccAddress is not empty %} - {{ macro_address._render(entity.structureAccAddress, { 'with_valid_from': false }) }} - {% endif %} -
    +
    Nom de la structure
    +
    {{ entity.structureAccName }}
    + +
    Addresse mail de la structure
    +
    {{ entity.structureAccEmail }}
    + + {% if entity.structureAccPhonenumber is not empty %} +
    Téléphone de la structure
    +
    +

    {{ entity.structureAccPhonenumber|chill_format_phonenumber }}

    +
    + {% endif %} + +{#
    #} +{# {% for el in ['structureAccName', 'structureAccPhonenumber', 'structureAccEmail'] %}#} +{# {% set el_data = attribute(entity, el) %}#} +{# {% if el_data is not empty %}{{ el_data }}
    {% endif %}#} +{# {% endfor %}#} +{# {% if entity.structureAccAddress is not empty %}#} +{# {{ macro_address._render(entity.structureAccAddress, { 'with_valid_from': false }) }}#} +{# {% endif %}#} +{#
    #}

    Poste occupé

    @@ -54,8 +67,8 @@
    {{ entity.posteLieu|chill_print_or_message }}
    Dates
    -
    Du {{ entity.debutDate|format_date('long', 'none') }} - au {{ entity.getDateEndComputed|format_date('long', 'none') }} +
    Du {{ entity.debutDate|format_date('long') }} + au {{ entity.getDateEndComputed|format_date('long') }}
    Horaire
    @@ -135,7 +148,7 @@
    {% set attr = attribute(entity, line[0]) %} {% if attr != null %} - {% if attr in constant('CSConnectes\\SPBundle\\Entity\\Immersion::YES_NO_NSP') %} + {% if attr in constant('Chill\\JobBundle\\Entity\\Immersion::YES_NO_NSP') %} {{ ('immersion_nsp.'~attr)|trans }} {% else %} {{ ('immersion_' ~ line[0] ~ '.' ~ attr)|trans }} @@ -195,7 +208,7 @@ {% endblock %} {% block content_view_actions_after %}
  • - + Bilan diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/edit.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/edit.html.twig index e38cbf480..ec58011b2 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/edit.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/edit.html.twig @@ -8,7 +8,7 @@ {% endblock title %} {% block content %} -{% embed '@ChillPerson/CRUD/_edit_content.html.twig' %} +{% embed '@ChillMain/CRUD/_edit_content.html.twig' %} {% block crud_content_header %}

    {{ ('crud.'~crud_name~'.title_edit')|trans({'%person%': person|chill_entity_render_string }) }}

    {% endblock crud_content_header %} diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/view.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/view.html.twig index 75687f70f..535a77a20 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/view.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/ProjetProfessionnel/view.html.twig @@ -9,7 +9,7 @@ {% block crud_content_view_details %}
    Date
    -
    {{ entity.reportDate|format_date('long', 'none') }}
    +
    {{ entity.reportDate|format_date('long') }}

    Souhaits

    diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Report/index.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Report/index.html.twig index a88fb6b29..2abe8d57a 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Report/index.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Report/index.html.twig @@ -22,7 +22,7 @@ {% for cv in cvs %} - {{ cv.reportDate|format_date('short', 'none') }} + {{ cv.reportDate|format_date('short') }}
    • @@ -70,7 +70,7 @@ {% for frein in freins %} - {{ frein.reportDate|format_date('short', 'none') }} + {{ frein.reportDate|format_date('short') }} {% if frein.freinsPerso|merge(frein.freinsEmploi)|length > 0 %}
        @@ -133,7 +133,7 @@ {% for im in immersions %} - {{ im.debutDate|format_date('short', 'none') }} + {{ im.debutDate|format_date('short') }} {{ im.entreprise.name }} @@ -146,7 +146,7 @@
      • - +
      • @@ -192,7 +192,7 @@ {% for pr in projet_professionnels %} - {{ pr.reportDate|format_date('short', 'none') }} + {{ pr.reportDate|format_date('short') }} {% set romes = [] %} {% if pr.valide|length > 0 %} diff --git a/src/Bundle/ChillJobBundle/src/Security/Authorization/CSConnectesVoter.php b/src/Bundle/ChillJobBundle/src/Security/Authorization/CSConnectesVoter.php index 94f800c7f..dc7e651d4 100644 --- a/src/Bundle/ChillJobBundle/src/Security/Authorization/CSConnectesVoter.php +++ b/src/Bundle/ChillJobBundle/src/Security/Authorization/CSConnectesVoter.php @@ -25,7 +25,7 @@ use Chill\MainBundle\Security\Authorization\AuthorizationHelper; /** * check ACL for CSConnectes. */ -class CSConnectesVoter extends AbstractChillVoter implements ProvideRoleHierarchyInterface, VoterInterface +class CSConnectesVoter extends AbstractChillVoter implements ProvideRoleHierarchyInterface { public const REPORT_NEW = 'CHILL_CSCONNECTES_REPORT_NEW'; public const REPORT_CV = 'CHILL_CSCONNECTES_REPORT_CV'; diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20240429111628.php b/src/Bundle/ChillJobBundle/src/migrations/Version20240429111628.php new file mode 100644 index 000000000..9ff81cce4 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/migrations/Version20240429111628.php @@ -0,0 +1,34 @@ +addSql('ALTER TABLE chill_csconnectes.immersion ALTER tuteurphonenumber TYPE VARCHAR(35)'); + $this->addSql('COMMENT ON COLUMN chill_csconnectes.immersion.tuteurPhoneNumber IS \'(DC2Type:phone_number)\''); + + $this->addSql('ALTER TABLE chill_csconnectes.immersion ALTER structureAccPhonenumber TYPE VARCHAR(35)'); + $this->addSql('COMMENT ON COLUMN chill_csconnectes.immersion.structureAccPhonenumber IS \'(DC2Type:phone_number)\''); + } + + public function down(Schema $schema): void + { + $this->addSql('ALTER TABLE chill_csconnectes.immersion ALTER tuteurPhoneNumber TYPE TEXT'); + $this->addSql('COMMENT ON COLUMN chill_csconnectes.immersion.tuteurphonenumber IS NULL'); + + $this->addSql('ALTER TABLE chill_csconnectes.immersion ALTER structureAccPhonenumber TYPE TEXT'); + $this->addSql('COMMENT ON COLUMN chill_csconnectes.immersion.structureAccPhonenumber IS NULL'); + } +} From 20c27c100cf98dc854de588b76ccdd60488ef273 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Mon, 29 Apr 2024 15:20:23 +0200 Subject: [PATCH 042/136] Name change from CSConnecte to Job --- .../src/Resources/config/services.yml | 4 +- .../src/Controller/CSReportController.php | 10 +- .../DependencyInjection/ChillJobExtension.php | 4 + .../ChillJobBundle/src/Entity/CSPerson.php | 2 +- src/Bundle/ChillJobBundle/src/Entity/CV.php | 2 +- .../src/Entity/CV/Experience.php | 2 +- .../src/Entity/CV/Formation.php | 2 +- .../ChillJobBundle/src/Entity/Frein.php | 2 +- .../ChillJobBundle/src/Entity/Immersion.php | 2 +- .../src/Entity/ProjetProfessionnel.php | 6 +- .../src/Entity/Rome/Appellation.php | 2 +- .../ChillJobBundle/src/Entity/Rome/Metier.php | 2 +- .../src/Export/ListCSPerson.php | 2 +- .../ChillJobBundle/src/Export/ListCV.php | 6 +- .../ChillJobBundle/src/Export/ListFrein.php | 6 +- .../src/Export/ListProjetProfessionnel.php | 18 +- .../src/Form/CSPersonDispositifsType.php | 2 +- .../Form/CSPersonPersonalSituationType.php | 2 +- .../src/Form/CV/ExperienceType.php | 2 +- .../src/Form/CV/FormationType.php | 2 +- src/Bundle/ChillJobBundle/src/Form/CVType.php | 2 +- .../ChillJobBundle/src/Form/FreinType.php | 2 +- .../ChillJobBundle/src/Form/ImmersionType.php | 2 +- .../src/Form/ProjetProfessionnelType.php | 2 +- .../ChillJobBundle/src/Menu/MenuBuilder.php | 48 ++-- .../Resources/config/services/security.yml | 14 +- .../Resources/translations/messages.fr.yml | 8 +- .../src/Resources/views/CV/edit.html.twig | 2 +- .../src/Resources/views/CV/new.html.twig | 2 +- .../src/Resources/views/CV/view.html.twig | 10 +- .../Resources/views/Report/index.html.twig | 8 +- .../{ExportsVoter.php => ExportsJobVoter.php} | 8 +- .../{CSConnectesVoter.php => JobVoter.php} | 12 +- .../src/migrations/Version20240424095147.php | 254 +++++++++--------- .../src/migrations/Version20240424140641.php | 30 +-- .../src/migrations/Version20240429111628.php | 16 +- .../migrations/old/Version20191119172511.php | 2 +- 37 files changed, 252 insertions(+), 250 deletions(-) rename src/Bundle/ChillJobBundle/src/Security/Authorization/{ExportsVoter.php => ExportsJobVoter.php} (92%) rename src/Bundle/ChillJobBundle/src/Security/Authorization/{CSConnectesVoter.php => JobVoter.php} (89%) diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/Resources/config/services.yml b/src/Bundle/ChillFranceTravailApiBundle/src/Resources/config/services.yml index 38d1400e1..1c4fca21e 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/Resources/config/services.yml +++ b/src/Bundle/ChillFranceTravailApiBundle/src/Resources/config/services.yml @@ -1,7 +1,7 @@ services: Chill\FranceTravailApiBundle\ApiHelper\ApiWrapper: - $clientId: '%pole_emploi_dev_client_id%' - $clientSecret: '%pole_emploi_dev_client_secret%' + $clientId: '%env(FRANCE_TRAVAIL_CLIENT_ID)%' + $clientSecret: '%env(FRANCE_TRAVAIL_CLIENT_SECRET)%' $redis: '@Chill\MainBundle\Redis\ChillRedis' Chill\FranceTravailApiBundle\ApiHelper\PartenaireRomeAppellation: diff --git a/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php b/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php index fcb2304da..0fb85f89c 100644 --- a/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php +++ b/src/Bundle/ChillJobBundle/src/Controller/CSReportController.php @@ -20,7 +20,7 @@ use Chill\JobBundle\Entity\CV; use Chill\JobBundle\Entity\Immersion; use Chill\JobBundle\Entity\ProjetProfessionnel; use Chill\PersonBundle\Security\Authorization\PersonVoter; -use Chill\JobBundle\Security\Authorization\CSConnectesVoter; +use Chill\JobBundle\Security\Authorization\JobVoter; class CSReportController extends AbstractController { @@ -45,18 +45,18 @@ class CSReportController extends AbstractController $kinds = []; -// if ($this->isGranted(CSConnectesVoter::REPORT_CV, $person)) { + if ($this->isGranted(JobVoter::REPORT_CV, $person)) { $kinds['cvs'] = CV::class; -// } + } -// if ($this->isGranted(CSConnectesVoter::REPORT_NEW, $person)) { + if ($this->isGranted(JobVoter::REPORT_NEW, $person)) { $kinds = \array_merge($kinds, [ 'cvs' => CV::class, 'freins' => Frein::class, 'immersions' => Immersion::class, 'projet_professionnels' => ProjetProfessionnel::class, ]); -// } + } foreach ($kinds as $key => $className) { $ordering = match ($key) { diff --git a/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php b/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php index 7e4050056..fd5edcffc 100644 --- a/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php +++ b/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php @@ -94,6 +94,10 @@ class ChillJobExtension extends Extension implements PrependExtensionInterface 'role' => 'ROLE_USER', 'template' => '@ChillJob/CV/edit.html.twig', ], + 'delete' => [ + 'role' => 'ROLE_USER', + 'template' => '@ChillJob/CV/delete.html.twig', + ] ], ], [ diff --git a/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php b/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php index e7bd12502..579698a64 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php @@ -22,7 +22,7 @@ use Chill\PersonBundle\Entity\MaritalStatus; /** * CSPerson. */ -#[ORM\Table(name: 'chill_csconnectes.cs_person')] +#[ORM\Table(name: 'chill_job.cs_person')] #[ORM\Entity(repositoryClass: \Chill\JobBundle\Repository\CSPersonRepository::class)] class CSPerson { diff --git a/src/Bundle/ChillJobBundle/src/Entity/CV.php b/src/Bundle/ChillJobBundle/src/Entity/CV.php index 2a2e89883..597303510 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CV.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CV.php @@ -21,7 +21,7 @@ use Symfony\Component\Validator\Constraints as Assert; /** * CV. */ -#[ORM\Table(name: 'chill_csconnectes.cv')] +#[ORM\Table(name: 'chill_job.cv')] #[ORM\Entity(repositoryClass: \Chill\JobBundle\Repository\CVRepository::class)] class CV implements \Stringable { diff --git a/src/Bundle/ChillJobBundle/src/Entity/CV/Experience.php b/src/Bundle/ChillJobBundle/src/Entity/CV/Experience.php index 19d444338..521cc82f6 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CV/Experience.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CV/Experience.php @@ -18,7 +18,7 @@ use Symfony\Component\Validator\Constraints as Assert; /** * Experience. */ -#[ORM\Table(name: 'chill_csconnectes.cv_experience')] +#[ORM\Table(name: 'chill_job.cv_experience')] #[ORM\Entity(repositoryClass: \Chill\JobBundle\Repository\CV\ExperienceRepository::class)] class Experience { diff --git a/src/Bundle/ChillJobBundle/src/Entity/CV/Formation.php b/src/Bundle/ChillJobBundle/src/Entity/CV/Formation.php index 84bfda163..3394fa795 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CV/Formation.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CV/Formation.php @@ -18,7 +18,7 @@ use Symfony\Component\Validator\Constraints as Assert; /** * Formation. */ -#[ORM\Table(name: 'chill_csconnectes.cv_formation')] +#[ORM\Table(name: 'chill_job.cv_formation')] #[ORM\Entity(repositoryClass: \Chill\JobBundle\Repository\CV\FormationRepository::class)] class Formation { diff --git a/src/Bundle/ChillJobBundle/src/Entity/Frein.php b/src/Bundle/ChillJobBundle/src/Entity/Frein.php index a145aac34..b60a342fd 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Frein.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Frein.php @@ -20,7 +20,7 @@ use Symfony\Component\Validator\Context\ExecutionContextInterface; /** * Frein. */ -#[ORM\Table(name: 'chill_csconnectes.frein')] +#[ORM\Table(name: 'chill_job.frein')] #[ORM\Entity(repositoryClass: \Chill\JobBundle\Repository\FreinRepository::class)] class Frein implements HasPerson, \Stringable { diff --git a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php index 8c4e10baf..478615d83 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php @@ -24,7 +24,7 @@ use Chill\MainBundle\Validation\Constraint\PhonenumberConstraint; /** * Immersion. */ -#[ORM\Table(name: 'chill_csconnectes.immersion')] +#[ORM\Table(name: 'chill_job.immersion')] #[ORM\Entity(repositoryClass: ImmersionRepository::class)] class Immersion implements \Stringable { diff --git a/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php b/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php index e9ed41bb5..40141b9e3 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php +++ b/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php @@ -23,7 +23,7 @@ use Chill\JobBundle\Entity\Rome\Appellation; /** * ProjetProfessionnel. */ -#[ORM\Table(name: 'chill_csconnectes.projet_professionnel')] +#[ORM\Table(name: 'chill_job.projet_professionnel')] #[ORM\Entity(repositoryClass: ProjetProfessionnelRepository::class)] class ProjetProfessionnel implements \Stringable { @@ -47,7 +47,7 @@ class ProjetProfessionnel implements \Stringable /** * @var \Doctrine\Common\Collections\Collection */ - #[ORM\JoinTable(name: 'chill_csconnectes.projetprofessionnel_souhait')] + #[ORM\JoinTable(name: 'chill_job.projetprofessionnel_souhait')] #[ORM\ManyToMany(targetEntity: Appellation::class, cascade: ['persist'])] private Collection $souhait; @@ -96,7 +96,7 @@ class ProjetProfessionnel implements \Stringable /** * @var \Doctrine\Common\Collections\Collection */ - #[ORM\JoinTable(name: 'chill_csconnectes.projetprofessionnel_valide')] + #[ORM\JoinTable(name: 'chill_job.projetprofessionnel_valide')] #[ORM\ManyToMany(targetEntity: Appellation::class)] private Collection $valide; diff --git a/src/Bundle/ChillJobBundle/src/Entity/Rome/Appellation.php b/src/Bundle/ChillJobBundle/src/Entity/Rome/Appellation.php index 2fda76700..1d2c3b026 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Rome/Appellation.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Rome/Appellation.php @@ -16,7 +16,7 @@ use Doctrine\ORM\Mapping as ORM; /** * Appellation. */ -#[ORM\Table(name: 'chill_csconnectes.rome_appellation')] +#[ORM\Table(name: 'chill_job.rome_appellation')] #[ORM\Entity(repositoryClass: \Chill\JobBundle\Repository\Rome\AppellationRepository::class)] class Appellation implements \Stringable { diff --git a/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php b/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php index 0f0ffe3bc..668b2283f 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php @@ -17,7 +17,7 @@ use Doctrine\Common\Collections\ArrayCollection; /** * Metier. */ -#[ORM\Table(name: 'chill_csconnectes.rome_metier')] +#[ORM\Table(name: 'chill_job.rome_metier')] #[ORM\Entity(repositoryClass: \Chill\JobBundle\Repository\Rome\MetierRepository::class)] class Metier { diff --git a/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php b/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php index 3ab0f1b89..5740ad466 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php @@ -599,7 +599,7 @@ SELECT FROM public.chill_person_person AS p - LEFT JOIN chill_csconnectes.cs_person AS cs + LEFT JOIN chill_job.cs_person AS cs ON p.id = cs.person_id LEFT JOIN chill_3party.third_party AS tpp ON cs.prescripteur_id = tpp.id diff --git a/src/Bundle/ChillJobBundle/src/Export/ListCV.php b/src/Bundle/ChillJobBundle/src/Export/ListCV.php index 51ca0f3f4..39504a096 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListCV.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListCV.php @@ -16,7 +16,7 @@ use Chill\MainBundle\Export\FormatterInterface; use Chill\MainBundle\Export\ListInterface; use Chill\MainBundle\Form\Type\ChillDateType; use Chill\PersonBundle\Entity\Person; -use Chill\JobBundle\Security\Authorization\ExportsVoter; +use Chill\JobBundle\Security\Authorization\ExportsJobVoter; use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\Query; use Doctrine\ORM\QueryBuilder; @@ -194,7 +194,7 @@ class ListCV implements ListInterface, ExportElementValidatedInterface */ public function requiredRole(): string { - return ExportsVoter::EXPORT; + return ExportsJobVoter::EXPORT; } /** @@ -369,7 +369,7 @@ SELECT cv.formationlevel as formationlevel FROM public.chill_person_person AS p -LEFT JOIN chill_csconnectes.cv AS cv +LEFT JOIN chill_job.cv AS cv ON p.id = cv.person_id LEFT JOIN public.country AS cn ON p.countryofbirth_id = cn.id diff --git a/src/Bundle/ChillJobBundle/src/Export/ListFrein.php b/src/Bundle/ChillJobBundle/src/Export/ListFrein.php index b94cc0342..9bf546f55 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListFrein.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListFrein.php @@ -17,7 +17,7 @@ use Chill\MainBundle\Export\ListInterface; use Chill\MainBundle\Form\Type\ChillDateType; use Chill\PersonBundle\Entity\Person; use Chill\JobBundle\Entity\Frein; -use Chill\JobBundle\Security\Authorization\ExportsVoter; +use Chill\JobBundle\Security\Authorization\ExportsJobVoter; use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\Query; use Doctrine\ORM\QueryBuilder; @@ -207,7 +207,7 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface */ public function requiredRole(): string { - return ExportsVoter::EXPORT; + return ExportsJobVoter::EXPORT; } /** @@ -471,7 +471,7 @@ SELECT fr.notesemploi as notesemploi FROM public.chill_person_person AS p -LEFT JOIN chill_csconnectes.frein AS fr +LEFT JOIN chill_job.frein AS fr ON p.id = fr.person_id LEFT JOIN public.country AS cn ON p.countryofbirth_id = cn.id diff --git a/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php b/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php index 73434474b..52bbc1637 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php @@ -17,7 +17,7 @@ use Chill\MainBundle\Export\ListInterface; use Chill\MainBundle\Form\Type\ChillDateType; use Chill\PersonBundle\Entity\Person; use Chill\JobBundle\Entity\ProjetProfessionnel; -use Chill\JobBundle\Security\Authorization\ExportsVoter; +use Chill\JobBundle\Security\Authorization\ExportsJobVoter; use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\Query; use Doctrine\ORM\QueryBuilder; @@ -213,7 +213,7 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn */ public function requiredRole(): string { - return ExportsVoter::EXPORT; + return ExportsJobVoter::EXPORT; } /** @@ -520,19 +520,19 @@ WITH projet_professionnel AS ( ARRAY_AGG (DISTINCT rms.code) as rms_codes, ARRAY_AGG (DISTINCT rmv.code) as rmv_codes - FROM chill_csconnectes.projet_professionnel AS pp + FROM chill_job.projet_professionnel AS pp - LEFT OUTER JOIN chill_csconnectes.projetprofessionnel_souhait AS pps + LEFT OUTER JOIN chill_job.projetprofessionnel_souhait AS pps ON pp.id = pps.projetprofessionnel_id - LEFT OUTER JOIN chill_csconnectes.rome_appellation AS ras + LEFT OUTER JOIN chill_job.rome_appellation AS ras ON pps.appellation_id = ras.id - LEFT OUTER JOIN chill_csconnectes.rome_metier AS rms + LEFT OUTER JOIN chill_job.rome_metier AS rms ON ras.metier_id = rms.id - LEFT OUTER JOIN chill_csconnectes.projetprofessionnel_valide AS ppv + LEFT OUTER JOIN chill_job.projetprofessionnel_valide AS ppv ON pp.id = ppv.projetprofessionnel_id - LEFT OUTER JOIN chill_csconnectes.rome_appellation AS rav + LEFT OUTER JOIN chill_job.rome_appellation AS rav ON ppv.appellation_id = rav.id - LEFT OUTER JOIN chill_csconnectes.rome_metier AS rmv + LEFT OUTER JOIN chill_job.rome_metier AS rmv ON rav.metier_id = rmv.id GROUP BY pp.id diff --git a/src/Bundle/ChillJobBundle/src/Form/CSPersonDispositifsType.php b/src/Bundle/ChillJobBundle/src/Form/CSPersonDispositifsType.php index b30a07153..187c5f656 100644 --- a/src/Bundle/ChillJobBundle/src/Form/CSPersonDispositifsType.php +++ b/src/Bundle/ChillJobBundle/src/Form/CSPersonDispositifsType.php @@ -120,6 +120,6 @@ class CSPersonDispositifsType extends AbstractType public function getBlockPrefix() { - return 'csconnectes_spbundle_csperson'; + return 'job_bundle_csperson'; } } diff --git a/src/Bundle/ChillJobBundle/src/Form/CSPersonPersonalSituationType.php b/src/Bundle/ChillJobBundle/src/Form/CSPersonPersonalSituationType.php index ef2e8ef59..ba04d8b0f 100644 --- a/src/Bundle/ChillJobBundle/src/Form/CSPersonPersonalSituationType.php +++ b/src/Bundle/ChillJobBundle/src/Form/CSPersonPersonalSituationType.php @@ -251,6 +251,6 @@ class CSPersonPersonalSituationType extends AbstractType public function getBlockPrefix() { - return 'csconnectes_spbundle_csperson'; + return 'job_bundle_csperson'; } } diff --git a/src/Bundle/ChillJobBundle/src/Form/CV/ExperienceType.php b/src/Bundle/ChillJobBundle/src/Form/CV/ExperienceType.php index d38a69adf..de74f2a22 100644 --- a/src/Bundle/ChillJobBundle/src/Form/CV/ExperienceType.php +++ b/src/Bundle/ChillJobBundle/src/Form/CV/ExperienceType.php @@ -65,6 +65,6 @@ class ExperienceType extends AbstractType public function getBlockPrefix() { - return 'csconnectes_spbundle_cv_experience'; + return 'job_bundle_cv_experience'; } } diff --git a/src/Bundle/ChillJobBundle/src/Form/CV/FormationType.php b/src/Bundle/ChillJobBundle/src/Form/CV/FormationType.php index 90d537a44..83093d95b 100644 --- a/src/Bundle/ChillJobBundle/src/Form/CV/FormationType.php +++ b/src/Bundle/ChillJobBundle/src/Form/CV/FormationType.php @@ -70,6 +70,6 @@ class FormationType extends AbstractType public function getBlockPrefix() { - return 'csconnectes_spbundle_cv_formation'; + return 'job_bundle_cv_formation'; } } diff --git a/src/Bundle/ChillJobBundle/src/Form/CVType.php b/src/Bundle/ChillJobBundle/src/Form/CVType.php index f5125e2bb..c6fb6614d 100644 --- a/src/Bundle/ChillJobBundle/src/Form/CVType.php +++ b/src/Bundle/ChillJobBundle/src/Form/CVType.php @@ -86,6 +86,6 @@ class CVType extends AbstractType public function getBlockPrefix() { - return 'csconnectes_spbundle_cv'; + return 'job_bundle_cv'; } } diff --git a/src/Bundle/ChillJobBundle/src/Form/FreinType.php b/src/Bundle/ChillJobBundle/src/Form/FreinType.php index 62d822d56..43c28ddeb 100644 --- a/src/Bundle/ChillJobBundle/src/Form/FreinType.php +++ b/src/Bundle/ChillJobBundle/src/Form/FreinType.php @@ -61,6 +61,6 @@ class FreinType extends AbstractType public function getBlockPrefix() { - return 'csconnectes_spbundle_frein'; + return 'job_bundle_frein'; } } diff --git a/src/Bundle/ChillJobBundle/src/Form/ImmersionType.php b/src/Bundle/ChillJobBundle/src/Form/ImmersionType.php index 4ad8e9ad0..ed5e2276e 100644 --- a/src/Bundle/ChillJobBundle/src/Form/ImmersionType.php +++ b/src/Bundle/ChillJobBundle/src/Form/ImmersionType.php @@ -192,6 +192,6 @@ class ImmersionType extends AbstractType public function getBlockPrefix() { - return 'csconnectes_spbundle_immersion'; + return 'job_bundle_immersion'; } } diff --git a/src/Bundle/ChillJobBundle/src/Form/ProjetProfessionnelType.php b/src/Bundle/ChillJobBundle/src/Form/ProjetProfessionnelType.php index 60b23b814..4817dfcc3 100644 --- a/src/Bundle/ChillJobBundle/src/Form/ProjetProfessionnelType.php +++ b/src/Bundle/ChillJobBundle/src/Form/ProjetProfessionnelType.php @@ -103,6 +103,6 @@ class ProjetProfessionnelType extends AbstractType public function getBlockPrefix() { - return 'csconnectes_spbundle_projetprofessionnel'; + return 'job_bundle_projetprofessionnel'; } } diff --git a/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php b/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php index c5d3f2596..e3119a392 100644 --- a/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php +++ b/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php @@ -14,7 +14,7 @@ namespace Chill\JobBundle\Menu; use Chill\MainBundle\Routing\LocalMenuBuilderInterface; use Knp\Menu\MenuItem; use Symfony\Component\Security\Core\Authorization\AuthorizationCheckerInterface; -use Chill\JobBundle\Security\Authorization\CSConnectesVoter; +use Chill\JobBundle\Security\Authorization\JobVoter; class MenuBuilder implements LocalMenuBuilderInterface { @@ -33,26 +33,26 @@ class MenuBuilder implements LocalMenuBuilderInterface /** @var \Chill\PersonBundle\Entity\Person $person */ $person = $parameters['person']; - // if ($this->authorizationChecker->isGranted(CSConnectesVoter::REPORT_NEW, $person)) { - $menu->addChild('Situation personnelle', [ - 'route' => 'chill_crud_job_personal_situation_view', - 'routeParameters' => [ - 'person' => $person->getId(), - ], - ]) - ->setExtras([ - 'order' => 50, - ]); - $menu->addChild('Dispositifs', [ - 'route' => 'chill_crud_job_dispositifs_view', - 'routeParameters' => [ - 'person' => $person->getId(), - ], - ]) - ->setExtras([ - 'order' => 51, - ]); - // } + if ($this->authorizationChecker->isGranted(JobVoter::REPORT_NEW, $person)) { + $menu->addChild('Situation personnelle', [ + 'route' => 'chill_crud_job_personal_situation_view', + 'routeParameters' => [ + 'person' => $person->getId(), + ], + ]) + ->setExtras([ + 'order' => 50, + ]); + $menu->addChild('Dispositifs', [ + 'route' => 'chill_crud_job_dispositifs_view', + 'routeParameters' => [ + 'person' => $person->getId(), + ], + ]) + ->setExtras([ + 'order' => 51, + ]); + } $menu->addChild('Emploi', [ 'route' => 'chill_job_report_index', @@ -60,9 +60,9 @@ class MenuBuilder implements LocalMenuBuilderInterface 'person' => $person->getId(), ], ]) - ->setExtras([ - 'order' => 52, - ]); + ->setExtras([ + 'order' => 52, + ]); } public static function getMenuIds(): array diff --git a/src/Bundle/ChillJobBundle/src/Resources/config/services/security.yml b/src/Bundle/ChillJobBundle/src/Resources/config/services/security.yml index 3d94cec44..c680bc374 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/config/services/security.yml +++ b/src/Bundle/ChillJobBundle/src/Resources/config/services/security.yml @@ -1,15 +1,13 @@ services: - Chill\JobBundle\Security\Authorization\CSConnectesVoter: - arguments: - $authorizationHelper: '@Chill\MainBundle\Security\Authorization\AuthorizationHelper' + Chill\JobBundle\Security\Authorization\JobVoter: + autowire: true + autoconfigure: true tags: - { name: security.voter } - - { name: chill.role } - Chill\JobBundle\Security\Authorization\ExportsVoter: - arguments: - $authorizationHelper: '@Chill\MainBundle\Security\Authorization\AuthorizationHelper' + Chill\JobBundle\Security\Authorization\ExportsJobVoter: + autowire: true + autoconfigure: true tags: - { name: security.voter } - - { name: chill.role } diff --git a/src/Bundle/ChillJobBundle/src/Resources/translations/messages.fr.yml b/src/Bundle/ChillJobBundle/src/Resources/translations/messages.fr.yml index 94cd10a0d..2baf95ad4 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/translations/messages.fr.yml +++ b/src/Bundle/ChillJobBundle/src/Resources/translations/messages.fr.yml @@ -247,7 +247,7 @@ neetcommissiondate: "Date de commission NEET" fsemademarchecode: "Code démarche FSE" findernieremploidate: "Date de fin dernier emploi" -CHILL_CSCONNECTES_REPORT_NEW: Création et modification des rapports CSConnectes -CHILL_CSCONNECTES_REPORT_DELETE: Suppression des rapports CSConnectes -CHILL_CSCONNECTES_REPORT_CV: Création et modification des rapports CSConnectes (CV uniquement) -CHILL_CSCONNECTES_EXPORTS: Exports CSConnectes +CHILL_JOB_REPORT_NEW: Création et modification des rapports emploi +CHILL_JOB_REPORT_DELETE: Suppression des rapports emploi +CHILL_JOB_REPORT_CV: Création et modification des rapports emploi (CV uniquement) +CHILL_JOB_EXPORTS: Exports emploi diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CV/edit.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CV/edit.html.twig index ddd16f9bf..2ebb37e3d 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/CV/edit.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CV/edit.html.twig @@ -8,7 +8,7 @@ {% endblock title %} {% form_theme form _self %} -{% block csconnectes_spbundle_cv_formation_widget %} +{% block job_bundle_cv_formation_widget %}
        {{ form_row(form.title) }} {{ form_row(form.organisme) }} diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CV/new.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CV/new.html.twig index fc285b50f..756c5a699 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/CV/new.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CV/new.html.twig @@ -8,7 +8,7 @@ {% endblock %} {% form_theme form _self %} -{% block csconnectes_spbundle_cv_formation_widget %} +{% block job_bundle_cv_formation_widget %}
        {{ form_row(form.title) }} {{ form_row(form.organisme) }} diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CV/view.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CV/view.html.twig index cae02a387..7caa8c709 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/CV/view.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CV/view.html.twig @@ -42,7 +42,7 @@ {% if entity.formations|length > 0 %} {% for f in entity.formations %}
        -
        +

        {{ f.title }}{% if f.organisme is not empty %} auprès de {{ f.organisme }}{% endif %}

        @@ -78,7 +78,7 @@ {% if entity.formations|length > 0 %} {% for f in entity.experiences %}
        -
        +

        {{ f.poste }} {% if f.structure is not empty %}auprès de {{ f.structure }}{% endif %}

        @@ -131,13 +131,13 @@ {% block css %} diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Report/index.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Report/index.html.twig index 2abe8d57a..cc6cca86e 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Report/index.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Report/index.html.twig @@ -31,7 +31,7 @@
      • - {% if is_granted('CHILL_CSCONNECTES_REPORT_DELETE', cv) %} + {% if is_granted('CHILL_JOB_REPORT_DELETE', cv) %}
      • @@ -93,7 +93,7 @@
      • - {% if is_granted('CHILL_CSCONNECTES_REPORT_DELETE', frein) %} + {% if is_granted('CHILL_JOB_REPORT_DELETE', frein) %}
      • @@ -150,7 +150,7 @@ - {% if is_granted('CHILL_CSCONNECTES_REPORT_DELETE', im) %} + {% if is_granted('CHILL_JOB_REPORT_DELETE', im) %}
      • @@ -226,7 +226,7 @@
      • - {% if is_granted('CHILL_CSCONNECTES_REPORT_DELETE', pr) %} + {% if is_granted('CHILL_JOB_REPORT_DELETE', pr) %}
      • diff --git a/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php b/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsJobVoter.php similarity index 92% rename from src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php rename to src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsJobVoter.php index 7ccf04364..27139d9ac 100644 --- a/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsVoter.php +++ b/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsJobVoter.php @@ -21,13 +21,13 @@ use Symfony\Component\Security\Core\Authorization\Voter\VoterInterface; use Symfony\Component\Security\Core\Role\Role; /** - * Class ExportsVoter. + * Class ExportsJobVoter. * * @author Mathieu Jaumotte mathieu.jaumotte@champs-libres.coop */ -class ExportsVoter extends AbstractChillVoter implements ProvideRoleHierarchyInterface, VoterInterface +class ExportsJobVoter extends AbstractChillVoter implements ProvideRoleHierarchyInterface, VoterInterface { - public const EXPORT = 'CHILL_CSCONNECTES_EXPORTS'; + public const EXPORT = 'CHILL_JOB_EXPORTS'; /** * @var AuthorizationHelper @@ -89,7 +89,7 @@ class ExportsVoter extends AbstractChillVoter implements ProvideRoleHierarchyInt */ public function getRolesWithHierarchy(): array { - return ['CSConnectes' => $this->getRoles()]; + return ['Job' => $this->getRoles()]; } /** diff --git a/src/Bundle/ChillJobBundle/src/Security/Authorization/CSConnectesVoter.php b/src/Bundle/ChillJobBundle/src/Security/Authorization/JobVoter.php similarity index 89% rename from src/Bundle/ChillJobBundle/src/Security/Authorization/CSConnectesVoter.php rename to src/Bundle/ChillJobBundle/src/Security/Authorization/JobVoter.php index dc7e651d4..ce0a6c10c 100644 --- a/src/Bundle/ChillJobBundle/src/Security/Authorization/CSConnectesVoter.php +++ b/src/Bundle/ChillJobBundle/src/Security/Authorization/JobVoter.php @@ -23,13 +23,13 @@ use Chill\PersonBundle\Entity\Person; use Chill\MainBundle\Security\Authorization\AuthorizationHelper; /** - * check ACL for CSConnectes. + * check ACL for JobBundle. */ -class CSConnectesVoter extends AbstractChillVoter implements ProvideRoleHierarchyInterface +class JobVoter extends AbstractChillVoter implements ProvideRoleHierarchyInterface { - public const REPORT_NEW = 'CHILL_CSCONNECTES_REPORT_NEW'; - public const REPORT_CV = 'CHILL_CSCONNECTES_REPORT_CV'; - public const REPORT_DELETE = 'CHILL_CSCONNECTES_REPORT_DELETE'; + public const REPORT_NEW = 'CHILL_JOB_REPORT_NEW'; + public const REPORT_CV = 'CHILL_JOB_REPORT_CV'; + public const REPORT_DELETE = 'CHILL_JOB_REPORT_DELETE'; public const ALL = [ self::REPORT_NEW, @@ -110,7 +110,7 @@ class CSConnectesVoter extends AbstractChillVoter implements ProvideRoleHierarch public function getRolesWithHierarchy(): array { - return ['CSConnectes' => $this->getRoles()]; + return ['Job' => $this->getRoles()]; } public function getRolesWithoutScope(): array diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20240424095147.php b/src/Bundle/ChillJobBundle/src/migrations/Version20240424095147.php index 4b75d8e1b..97b0a376a 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20240424095147.php +++ b/src/Bundle/ChillJobBundle/src/migrations/Version20240424095147.php @@ -23,136 +23,136 @@ final class Version20240424095147 extends AbstractMigration public function up(Schema $schema): void { - $this->addSql('CREATE SCHEMA chill_csconnectes'); - $this->addSql('CREATE SEQUENCE chill_csconnectes.cv_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); - $this->addSql('CREATE SEQUENCE chill_csconnectes.cv_experience_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); - $this->addSql('CREATE SEQUENCE chill_csconnectes.cv_formation_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); - $this->addSql('CREATE SEQUENCE chill_csconnectes.frein_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); - $this->addSql('CREATE SEQUENCE chill_csconnectes.immersion_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); - $this->addSql('CREATE SEQUENCE chill_csconnectes.projet_professionnel_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); - $this->addSql('CREATE SEQUENCE chill_csconnectes.rome_appellation_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); - $this->addSql('CREATE SEQUENCE chill_csconnectes.rome_metier_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); - $this->addSql('CREATE TABLE chill_csconnectes.cs_person (id INT NOT NULL, person_id INT DEFAULT NULL, prescripteur_id INT DEFAULT NULL, situationLogement VARCHAR(255) DEFAULT NULL, situationLogementPrecision TEXT DEFAULT NULL, enfantACharge INT DEFAULT NULL, niveauMaitriseLangue JSON DEFAULT NULL, vehiculePersonnel BOOLEAN DEFAULT NULL, permisConduire JSON DEFAULT NULL, situationProfessionnelle VARCHAR(255) DEFAULT NULL, dateFinDernierEmploi DATE DEFAULT NULL, typeContrat JSON DEFAULT NULL, typeContratAide TEXT DEFAULT NULL, ressources JSON DEFAULT NULL, ressourcesComment TEXT DEFAULT NULL, ressourceDate1Versement DATE DEFAULT NULL, CPFMontant NUMERIC(10, 2) DEFAULT NULL, acomptedif NUMERIC(10, 2) DEFAULT NULL, accompagnement JSON DEFAULT NULL, accompagnementRQTHDate DATE DEFAULT NULL, accompagnementComment VARCHAR(255) DEFAULT NULL, poleEmploiId VARCHAR(255) DEFAULT NULL, poleEmploiInscriptionDate DATE DEFAULT NULL, cafId VARCHAR(255) DEFAULT NULL, cafInscriptionDate DATE DEFAULT NULL, CERInscriptionDate DATE DEFAULT NULL, PPAEInscriptionDate DATE DEFAULT NULL, CERSignataire TEXT DEFAULT NULL, PPAESignataire TEXT DEFAULT NULL, NEETEligibilite VARCHAR(255) DEFAULT NULL, NEETCommissionDate DATE DEFAULT NULL, FSEMaDemarcheCode TEXT DEFAULT NULL, datecontratIEJ DATE DEFAULT NULL, dateavenantIEJ DATE DEFAULT NULL, dispositifs_notes TEXT DEFAULT NULL, handicap BOOLEAN DEFAULT NULL, handicapnotes TEXT DEFAULT NULL, handicapRecommandation VARCHAR(50) DEFAULT NULL, mobilitemoyentransport JSON DEFAULT NULL, mobilitenotes TEXT DEFAULT NULL, handicapAccompagnement_id INT DEFAULT NULL, documentCV_id INT DEFAULT NULL, documentAgrementIAE_id INT DEFAULT NULL, documentRQTH_id INT DEFAULT NULL, documentAttestationNEET_id INT DEFAULT NULL, documentCI_id INT DEFAULT NULL, documentTitreSejour_id INT DEFAULT NULL, documentAttestationFiscale_id INT DEFAULT NULL, documentPermis_id INT DEFAULT NULL, documentAttestationCAAF_id INT DEFAULT NULL, documentContraTravail_id INT DEFAULT NULL, documentAttestationFormation_id INT DEFAULT NULL, documentQuittanceLoyer_id INT DEFAULT NULL, documentFactureElectricite_id INT DEFAULT NULL, documentAttestationSecuriteSociale_id INT DEFAULT NULL, PRIMARY KEY(id))'); - $this->addSql('CREATE UNIQUE INDEX UNIQ_10864F31217BBB47 ON chill_csconnectes.cs_person (person_id)'); - $this->addSql('CREATE INDEX IDX_10864F312654B57D ON chill_csconnectes.cs_person (handicapAccompagnement_id)'); - $this->addSql('CREATE INDEX IDX_10864F3154866550 ON chill_csconnectes.cs_person (documentCV_id)'); - $this->addSql('CREATE INDEX IDX_10864F318825E118 ON chill_csconnectes.cs_person (documentAgrementIAE_id)'); - $this->addSql('CREATE INDEX IDX_10864F31A396AFAC ON chill_csconnectes.cs_person (documentRQTH_id)'); - $this->addSql('CREATE INDEX IDX_10864F3187541764 ON chill_csconnectes.cs_person (documentAttestationNEET_id)'); - $this->addSql('CREATE INDEX IDX_10864F315CFC2299 ON chill_csconnectes.cs_person (documentCI_id)'); - $this->addSql('CREATE INDEX IDX_10864F3134FDF11D ON chill_csconnectes.cs_person (documentTitreSejour_id)'); - $this->addSql('CREATE INDEX IDX_10864F315742C99D ON chill_csconnectes.cs_person (documentAttestationFiscale_id)'); - $this->addSql('CREATE INDEX IDX_10864F31166494D4 ON chill_csconnectes.cs_person (documentPermis_id)'); - $this->addSql('CREATE INDEX IDX_10864F3172820D66 ON chill_csconnectes.cs_person (documentAttestationCAAF_id)'); - $this->addSql('CREATE INDEX IDX_10864F31AFA5E636 ON chill_csconnectes.cs_person (documentContraTravail_id)'); - $this->addSql('CREATE INDEX IDX_10864F3161E05C22 ON chill_csconnectes.cs_person (documentAttestationFormation_id)'); - $this->addSql('CREATE INDEX IDX_10864F316F744BB0 ON chill_csconnectes.cs_person (documentQuittanceLoyer_id)'); - $this->addSql('CREATE INDEX IDX_10864F31AC39B1B ON chill_csconnectes.cs_person (documentFactureElectricite_id)'); - $this->addSql('CREATE INDEX IDX_10864F3172A75B6D ON chill_csconnectes.cs_person (documentAttestationSecuriteSociale_id)'); - $this->addSql('CREATE INDEX IDX_10864F31D486E642 ON chill_csconnectes.cs_person (prescripteur_id)'); - $this->addSql('CREATE TABLE chill_csconnectes.cv (id INT NOT NULL, person_id INT DEFAULT NULL, reportDate DATE NOT NULL, formationLevel VARCHAR(255) DEFAULT NULL, formationType VARCHAR(255) DEFAULT NULL, spokenLanguages JSON DEFAULT NULL, notes TEXT DEFAULT NULL, PRIMARY KEY(id))'); - $this->addSql('CREATE INDEX IDX_3F24F812217BBB47 ON chill_csconnectes.cv (person_id)'); - $this->addSql('CREATE TABLE chill_csconnectes.cv_experience (id INT NOT NULL, poste TEXT DEFAULT NULL, structure TEXT DEFAULT NULL, startDate DATE DEFAULT NULL, endDate DATE DEFAULT NULL, contratType VARCHAR(100) NOT NULL, notes TEXT DEFAULT NULL, CV_id INT DEFAULT NULL, PRIMARY KEY(id))'); - $this->addSql('CREATE INDEX IDX_102A1262AE1799D8 ON chill_csconnectes.cv_experience (CV_id)'); - $this->addSql('CREATE TABLE chill_csconnectes.cv_formation (id INT NOT NULL, title TEXT NOT NULL, startDate DATE DEFAULT NULL, endDate DATE DEFAULT NULL, diplomaObtained VARCHAR(255) DEFAULT NULL, diplomaReconnue VARCHAR(50) DEFAULT NULL, organisme TEXT DEFAULT NULL, CV_id INT DEFAULT NULL, PRIMARY KEY(id))'); - $this->addSql('CREATE INDEX IDX_20BE09E2AE1799D8 ON chill_csconnectes.cv_formation (CV_id)'); - $this->addSql('CREATE TABLE chill_csconnectes.frein (id INT NOT NULL, reportDate DATE NOT NULL, freinsPerso JSON NOT NULL, notesPerso TEXT NOT NULL, freinsEmploi JSON NOT NULL, notesEmploi TEXT NOT NULL, PRIMARY KEY(id))'); - $this->addSql('CREATE TABLE chill_csconnectes.immersion (id INT NOT NULL, entreprise_id INT DEFAULT NULL, referent_id INT DEFAULT NULL, domaineActivite TEXT DEFAULT NULL, tuteurName TEXT DEFAULT NULL, tuteurFonction TEXT DEFAULT NULL, tuteurPhoneNumber TEXT DEFAULT NULL, structureAccName TEXT DEFAULT NULL, structureAccPhonenumber TEXT DEFAULT NULL, structureAccEmail TEXT DEFAULT NULL, posteDescriptif TEXT DEFAULT NULL, posteTitle TEXT DEFAULT NULL, posteLieu TEXT DEFAULT NULL, debutDate DATE DEFAULT NULL, duration INTERVAL DEFAULT NULL, horaire TEXT DEFAULT NULL, objectifs JSON DEFAULT NULL, objectifsAutre TEXT DEFAULT NULL, is_bilan_fullfilled BOOLEAN DEFAULT false NOT NULL, savoirEtre JSON DEFAULT NULL, savoirEtreNote TEXT DEFAULT NULL, noteimmersion TEXT NOT NULL, principalesActivites TEXT DEFAULT NULL, competencesAcquises TEXT DEFAULT NULL, competencesADevelopper TEXT DEFAULT NULL, noteBilan TEXT DEFAULT NULL, ponctualite_salarie TEXT DEFAULT NULL, ponctualite_salarie_note TEXT DEFAULT NULL, assiduite TEXT DEFAULT NULL, assiduite_note TEXT DEFAULT NULL, interet_activite TEXT DEFAULT NULL, interet_activite_note TEXT DEFAULT NULL, integre_regle TEXT DEFAULT NULL, integre_regle_note TEXT DEFAULT NULL, esprit_initiative TEXT DEFAULT NULL, esprit_initiative_note TEXT DEFAULT NULL, organisation TEXT DEFAULT NULL, organisation_note TEXT DEFAULT NULL, capacite_travail_equipe TEXT DEFAULT NULL, capacite_travail_equipe_note TEXT DEFAULT NULL, style_vestimentaire TEXT DEFAULT NULL, style_vestimentaire_note TEXT DEFAULT NULL, langage_prof TEXT DEFAULT NULL, langage_prof_note TEXT DEFAULT NULL, applique_consigne TEXT DEFAULT NULL, applique_consigne_note TEXT DEFAULT NULL, respect_hierarchie TEXT DEFAULT NULL, respect_hierarchie_note TEXT DEFAULT NULL, structureAccAddress_id INT DEFAULT NULL, PRIMARY KEY(id))'); - $this->addSql('CREATE INDEX IDX_FBB3CBB4A4AEAFEA ON chill_csconnectes.immersion (entreprise_id)'); - $this->addSql('CREATE INDEX IDX_FBB3CBB435E47E35 ON chill_csconnectes.immersion (referent_id)'); - $this->addSql('CREATE INDEX IDX_FBB3CBB4B5E04267 ON chill_csconnectes.immersion (structureAccAddress_id)'); - $this->addSql('COMMENT ON COLUMN chill_csconnectes.immersion.duration IS \'(DC2Type:dateinterval)\''); - $this->addSql('CREATE TABLE chill_csconnectes.projet_professionnel (id INT NOT NULL, reportDate DATE NOT NULL, domaineActiviteSouhait TEXT DEFAULT NULL, typeContrat JSON DEFAULT NULL, typeContratNotes TEXT DEFAULT NULL, volumeHoraire JSON DEFAULT NULL, volumeHoraireNotes TEXT DEFAULT NULL, idee TEXT DEFAULT NULL, enCoursConstruction TEXT DEFAULT NULL, domaineActiviteValide TEXT DEFAULT NULL, valideNotes TEXT DEFAULT NULL, projetProfessionnelNote TEXT DEFAULT NULL, PRIMARY KEY(id))'); - $this->addSql('CREATE TABLE chill_csconnectes.projetprofessionnel_souhait (projetprofessionnel_id INT NOT NULL, appellation_id INT NOT NULL, PRIMARY KEY(projetprofessionnel_id, appellation_id))'); - $this->addSql('CREATE INDEX IDX_3280B96DB87BF7B5 ON chill_csconnectes.projetprofessionnel_souhait (projetprofessionnel_id)'); - $this->addSql('CREATE INDEX IDX_3280B96D7CDE30DD ON chill_csconnectes.projetprofessionnel_souhait (appellation_id)'); - $this->addSql('CREATE TABLE chill_csconnectes.projetprofessionnel_valide (projetprofessionnel_id INT NOT NULL, appellation_id INT NOT NULL, PRIMARY KEY(projetprofessionnel_id, appellation_id))'); - $this->addSql('CREATE INDEX IDX_E0501BE0B87BF7B5 ON chill_csconnectes.projetprofessionnel_valide (projetprofessionnel_id)'); - $this->addSql('CREATE INDEX IDX_E0501BE07CDE30DD ON chill_csconnectes.projetprofessionnel_valide (appellation_id)'); - $this->addSql('CREATE TABLE chill_csconnectes.rome_appellation (id INT NOT NULL, metier_id INT DEFAULT NULL, code VARCHAR(40) NOT NULL, libelle TEXT NOT NULL, PRIMARY KEY(id))'); - $this->addSql('CREATE UNIQUE INDEX UNIQ_D9E9CABC77153098 ON chill_csconnectes.rome_appellation (code)'); - $this->addSql('CREATE INDEX IDX_D9E9CABCED16FA20 ON chill_csconnectes.rome_appellation (metier_id)'); - $this->addSql('CREATE TABLE chill_csconnectes.rome_metier (id INT NOT NULL, libelle TEXT NOT NULL, code VARCHAR(20) NOT NULL, PRIMARY KEY(id))'); - $this->addSql('CREATE UNIQUE INDEX UNIQ_3274952577153098 ON chill_csconnectes.rome_metier (code)'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F31217BBB47 FOREIGN KEY (person_id) REFERENCES chill_person_person (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F312654B57D FOREIGN KEY (handicapAccompagnement_id) REFERENCES chill_3party.third_party (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F3154866550 FOREIGN KEY (documentCV_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F318825E118 FOREIGN KEY (documentAgrementIAE_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F31A396AFAC FOREIGN KEY (documentRQTH_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F3187541764 FOREIGN KEY (documentAttestationNEET_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F315CFC2299 FOREIGN KEY (documentCI_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F3134FDF11D FOREIGN KEY (documentTitreSejour_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F315742C99D FOREIGN KEY (documentAttestationFiscale_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F31166494D4 FOREIGN KEY (documentPermis_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F3172820D66 FOREIGN KEY (documentAttestationCAAF_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F31AFA5E636 FOREIGN KEY (documentContraTravail_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F3161E05C22 FOREIGN KEY (documentAttestationFormation_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F316F744BB0 FOREIGN KEY (documentQuittanceLoyer_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F31AC39B1B FOREIGN KEY (documentFactureElectricite_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F3172A75B6D FOREIGN KEY (documentAttestationSecuriteSociale_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person ADD CONSTRAINT FK_10864F31D486E642 FOREIGN KEY (prescripteur_id) REFERENCES chill_3party.third_party (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); - $this->addSql('ALTER TABLE chill_csconnectes.cv ADD CONSTRAINT FK_3F24F812217BBB47 FOREIGN KEY (person_id) REFERENCES chill_person_person (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); - $this->addSql('ALTER TABLE chill_csconnectes.cv_experience ADD CONSTRAINT FK_102A1262AE1799D8 FOREIGN KEY (CV_id) REFERENCES chill_csconnectes.cv (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); - $this->addSql('ALTER TABLE chill_csconnectes.cv_formation ADD CONSTRAINT FK_20BE09E2AE1799D8 FOREIGN KEY (CV_id) REFERENCES chill_csconnectes.cv (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); - $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD CONSTRAINT FK_FBB3CBB4A4AEAFEA FOREIGN KEY (entreprise_id) REFERENCES chill_3party.third_party (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); - $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD CONSTRAINT FK_FBB3CBB435E47E35 FOREIGN KEY (referent_id) REFERENCES users (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); - $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD CONSTRAINT FK_FBB3CBB4B5E04267 FOREIGN KEY (structureAccAddress_id) REFERENCES chill_main_address (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); - $this->addSql('ALTER TABLE chill_csconnectes.projetprofessionnel_souhait ADD CONSTRAINT FK_3280B96DB87BF7B5 FOREIGN KEY (projetprofessionnel_id) REFERENCES chill_csconnectes.projet_professionnel (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); - $this->addSql('ALTER TABLE chill_csconnectes.projetprofessionnel_souhait ADD CONSTRAINT FK_3280B96D7CDE30DD FOREIGN KEY (appellation_id) REFERENCES chill_csconnectes.rome_appellation (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); - $this->addSql('ALTER TABLE chill_csconnectes.projetprofessionnel_valide ADD CONSTRAINT FK_E0501BE0B87BF7B5 FOREIGN KEY (projetprofessionnel_id) REFERENCES chill_csconnectes.projet_professionnel (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); - $this->addSql('ALTER TABLE chill_csconnectes.projetprofessionnel_valide ADD CONSTRAINT FK_E0501BE07CDE30DD FOREIGN KEY (appellation_id) REFERENCES chill_csconnectes.rome_appellation (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); - $this->addSql('ALTER TABLE chill_csconnectes.rome_appellation ADD CONSTRAINT FK_D9E9CABCED16FA20 FOREIGN KEY (metier_id) REFERENCES chill_csconnectes.rome_metier (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('CREATE SCHEMA chill_job'); + $this->addSql('CREATE SEQUENCE chill_job.cv_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); + $this->addSql('CREATE SEQUENCE chill_job.cv_experience_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); + $this->addSql('CREATE SEQUENCE chill_job.cv_formation_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); + $this->addSql('CREATE SEQUENCE chill_job.frein_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); + $this->addSql('CREATE SEQUENCE chill_job.immersion_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); + $this->addSql('CREATE SEQUENCE chill_job.projet_professionnel_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); + $this->addSql('CREATE SEQUENCE chill_job.rome_appellation_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); + $this->addSql('CREATE SEQUENCE chill_job.rome_metier_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); + $this->addSql('CREATE TABLE chill_job.cs_person (id INT NOT NULL, person_id INT DEFAULT NULL, prescripteur_id INT DEFAULT NULL, situationLogement VARCHAR(255) DEFAULT NULL, situationLogementPrecision TEXT DEFAULT NULL, enfantACharge INT DEFAULT NULL, niveauMaitriseLangue JSON DEFAULT NULL, vehiculePersonnel BOOLEAN DEFAULT NULL, permisConduire JSON DEFAULT NULL, situationProfessionnelle VARCHAR(255) DEFAULT NULL, dateFinDernierEmploi DATE DEFAULT NULL, typeContrat JSON DEFAULT NULL, typeContratAide TEXT DEFAULT NULL, ressources JSON DEFAULT NULL, ressourcesComment TEXT DEFAULT NULL, ressourceDate1Versement DATE DEFAULT NULL, CPFMontant NUMERIC(10, 2) DEFAULT NULL, acomptedif NUMERIC(10, 2) DEFAULT NULL, accompagnement JSON DEFAULT NULL, accompagnementRQTHDate DATE DEFAULT NULL, accompagnementComment VARCHAR(255) DEFAULT NULL, poleEmploiId VARCHAR(255) DEFAULT NULL, poleEmploiInscriptionDate DATE DEFAULT NULL, cafId VARCHAR(255) DEFAULT NULL, cafInscriptionDate DATE DEFAULT NULL, CERInscriptionDate DATE DEFAULT NULL, PPAEInscriptionDate DATE DEFAULT NULL, CERSignataire TEXT DEFAULT NULL, PPAESignataire TEXT DEFAULT NULL, NEETEligibilite VARCHAR(255) DEFAULT NULL, NEETCommissionDate DATE DEFAULT NULL, FSEMaDemarcheCode TEXT DEFAULT NULL, datecontratIEJ DATE DEFAULT NULL, dateavenantIEJ DATE DEFAULT NULL, dispositifs_notes TEXT DEFAULT NULL, handicap BOOLEAN DEFAULT NULL, handicapnotes TEXT DEFAULT NULL, handicapRecommandation VARCHAR(50) DEFAULT NULL, mobilitemoyentransport JSON DEFAULT NULL, mobilitenotes TEXT DEFAULT NULL, handicapAccompagnement_id INT DEFAULT NULL, documentCV_id INT DEFAULT NULL, documentAgrementIAE_id INT DEFAULT NULL, documentRQTH_id INT DEFAULT NULL, documentAttestationNEET_id INT DEFAULT NULL, documentCI_id INT DEFAULT NULL, documentTitreSejour_id INT DEFAULT NULL, documentAttestationFiscale_id INT DEFAULT NULL, documentPermis_id INT DEFAULT NULL, documentAttestationCAAF_id INT DEFAULT NULL, documentContraTravail_id INT DEFAULT NULL, documentAttestationFormation_id INT DEFAULT NULL, documentQuittanceLoyer_id INT DEFAULT NULL, documentFactureElectricite_id INT DEFAULT NULL, documentAttestationSecuriteSociale_id INT DEFAULT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE UNIQUE INDEX UNIQ_10864F31217BBB47 ON chill_job.cs_person (person_id)'); + $this->addSql('CREATE INDEX IDX_10864F312654B57D ON chill_job.cs_person (handicapAccompagnement_id)'); + $this->addSql('CREATE INDEX IDX_10864F3154866550 ON chill_job.cs_person (documentCV_id)'); + $this->addSql('CREATE INDEX IDX_10864F318825E118 ON chill_job.cs_person (documentAgrementIAE_id)'); + $this->addSql('CREATE INDEX IDX_10864F31A396AFAC ON chill_job.cs_person (documentRQTH_id)'); + $this->addSql('CREATE INDEX IDX_10864F3187541764 ON chill_job.cs_person (documentAttestationNEET_id)'); + $this->addSql('CREATE INDEX IDX_10864F315CFC2299 ON chill_job.cs_person (documentCI_id)'); + $this->addSql('CREATE INDEX IDX_10864F3134FDF11D ON chill_job.cs_person (documentTitreSejour_id)'); + $this->addSql('CREATE INDEX IDX_10864F315742C99D ON chill_job.cs_person (documentAttestationFiscale_id)'); + $this->addSql('CREATE INDEX IDX_10864F31166494D4 ON chill_job.cs_person (documentPermis_id)'); + $this->addSql('CREATE INDEX IDX_10864F3172820D66 ON chill_job.cs_person (documentAttestationCAAF_id)'); + $this->addSql('CREATE INDEX IDX_10864F31AFA5E636 ON chill_job.cs_person (documentContraTravail_id)'); + $this->addSql('CREATE INDEX IDX_10864F3161E05C22 ON chill_job.cs_person (documentAttestationFormation_id)'); + $this->addSql('CREATE INDEX IDX_10864F316F744BB0 ON chill_job.cs_person (documentQuittanceLoyer_id)'); + $this->addSql('CREATE INDEX IDX_10864F31AC39B1B ON chill_job.cs_person (documentFactureElectricite_id)'); + $this->addSql('CREATE INDEX IDX_10864F3172A75B6D ON chill_job.cs_person (documentAttestationSecuriteSociale_id)'); + $this->addSql('CREATE INDEX IDX_10864F31D486E642 ON chill_job.cs_person (prescripteur_id)'); + $this->addSql('CREATE TABLE chill_job.cv (id INT NOT NULL, person_id INT DEFAULT NULL, reportDate DATE NOT NULL, formationLevel VARCHAR(255) DEFAULT NULL, formationType VARCHAR(255) DEFAULT NULL, spokenLanguages JSON DEFAULT NULL, notes TEXT DEFAULT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE INDEX IDX_3F24F812217BBB47 ON chill_job.cv (person_id)'); + $this->addSql('CREATE TABLE chill_job.cv_experience (id INT NOT NULL, poste TEXT DEFAULT NULL, structure TEXT DEFAULT NULL, startDate DATE DEFAULT NULL, endDate DATE DEFAULT NULL, contratType VARCHAR(100) NOT NULL, notes TEXT DEFAULT NULL, CV_id INT DEFAULT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE INDEX IDX_102A1262AE1799D8 ON chill_job.cv_experience (CV_id)'); + $this->addSql('CREATE TABLE chill_job.cv_formation (id INT NOT NULL, title TEXT NOT NULL, startDate DATE DEFAULT NULL, endDate DATE DEFAULT NULL, diplomaObtained VARCHAR(255) DEFAULT NULL, diplomaReconnue VARCHAR(50) DEFAULT NULL, organisme TEXT DEFAULT NULL, CV_id INT DEFAULT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE INDEX IDX_20BE09E2AE1799D8 ON chill_job.cv_formation (CV_id)'); + $this->addSql('CREATE TABLE chill_job.frein (id INT NOT NULL, reportDate DATE NOT NULL, freinsPerso JSON NOT NULL, notesPerso TEXT NOT NULL, freinsEmploi JSON NOT NULL, notesEmploi TEXT NOT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE TABLE chill_job.immersion (id INT NOT NULL, entreprise_id INT DEFAULT NULL, referent_id INT DEFAULT NULL, domaineActivite TEXT DEFAULT NULL, tuteurName TEXT DEFAULT NULL, tuteurFonction TEXT DEFAULT NULL, tuteurPhoneNumber TEXT DEFAULT NULL, structureAccName TEXT DEFAULT NULL, structureAccPhonenumber TEXT DEFAULT NULL, structureAccEmail TEXT DEFAULT NULL, posteDescriptif TEXT DEFAULT NULL, posteTitle TEXT DEFAULT NULL, posteLieu TEXT DEFAULT NULL, debutDate DATE DEFAULT NULL, duration INTERVAL DEFAULT NULL, horaire TEXT DEFAULT NULL, objectifs JSON DEFAULT NULL, objectifsAutre TEXT DEFAULT NULL, is_bilan_fullfilled BOOLEAN DEFAULT false NOT NULL, savoirEtre JSON DEFAULT NULL, savoirEtreNote TEXT DEFAULT NULL, noteimmersion TEXT NOT NULL, principalesActivites TEXT DEFAULT NULL, competencesAcquises TEXT DEFAULT NULL, competencesADevelopper TEXT DEFAULT NULL, noteBilan TEXT DEFAULT NULL, ponctualite_salarie TEXT DEFAULT NULL, ponctualite_salarie_note TEXT DEFAULT NULL, assiduite TEXT DEFAULT NULL, assiduite_note TEXT DEFAULT NULL, interet_activite TEXT DEFAULT NULL, interet_activite_note TEXT DEFAULT NULL, integre_regle TEXT DEFAULT NULL, integre_regle_note TEXT DEFAULT NULL, esprit_initiative TEXT DEFAULT NULL, esprit_initiative_note TEXT DEFAULT NULL, organisation TEXT DEFAULT NULL, organisation_note TEXT DEFAULT NULL, capacite_travail_equipe TEXT DEFAULT NULL, capacite_travail_equipe_note TEXT DEFAULT NULL, style_vestimentaire TEXT DEFAULT NULL, style_vestimentaire_note TEXT DEFAULT NULL, langage_prof TEXT DEFAULT NULL, langage_prof_note TEXT DEFAULT NULL, applique_consigne TEXT DEFAULT NULL, applique_consigne_note TEXT DEFAULT NULL, respect_hierarchie TEXT DEFAULT NULL, respect_hierarchie_note TEXT DEFAULT NULL, structureAccAddress_id INT DEFAULT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE INDEX IDX_FBB3CBB4A4AEAFEA ON chill_job.immersion (entreprise_id)'); + $this->addSql('CREATE INDEX IDX_FBB3CBB435E47E35 ON chill_job.immersion (referent_id)'); + $this->addSql('CREATE INDEX IDX_FBB3CBB4B5E04267 ON chill_job.immersion (structureAccAddress_id)'); + $this->addSql('COMMENT ON COLUMN chill_job.immersion.duration IS \'(DC2Type:dateinterval)\''); + $this->addSql('CREATE TABLE chill_job.projet_professionnel (id INT NOT NULL, reportDate DATE NOT NULL, domaineActiviteSouhait TEXT DEFAULT NULL, typeContrat JSON DEFAULT NULL, typeContratNotes TEXT DEFAULT NULL, volumeHoraire JSON DEFAULT NULL, volumeHoraireNotes TEXT DEFAULT NULL, idee TEXT DEFAULT NULL, enCoursConstruction TEXT DEFAULT NULL, domaineActiviteValide TEXT DEFAULT NULL, valideNotes TEXT DEFAULT NULL, projetProfessionnelNote TEXT DEFAULT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE TABLE chill_job.projetprofessionnel_souhait (projetprofessionnel_id INT NOT NULL, appellation_id INT NOT NULL, PRIMARY KEY(projetprofessionnel_id, appellation_id))'); + $this->addSql('CREATE INDEX IDX_3280B96DB87BF7B5 ON chill_job.projetprofessionnel_souhait (projetprofessionnel_id)'); + $this->addSql('CREATE INDEX IDX_3280B96D7CDE30DD ON chill_job.projetprofessionnel_souhait (appellation_id)'); + $this->addSql('CREATE TABLE chill_job.projetprofessionnel_valide (projetprofessionnel_id INT NOT NULL, appellation_id INT NOT NULL, PRIMARY KEY(projetprofessionnel_id, appellation_id))'); + $this->addSql('CREATE INDEX IDX_E0501BE0B87BF7B5 ON chill_job.projetprofessionnel_valide (projetprofessionnel_id)'); + $this->addSql('CREATE INDEX IDX_E0501BE07CDE30DD ON chill_job.projetprofessionnel_valide (appellation_id)'); + $this->addSql('CREATE TABLE chill_job.rome_appellation (id INT NOT NULL, metier_id INT DEFAULT NULL, code VARCHAR(40) NOT NULL, libelle TEXT NOT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE UNIQUE INDEX UNIQ_D9E9CABC77153098 ON chill_job.rome_appellation (code)'); + $this->addSql('CREATE INDEX IDX_D9E9CABCED16FA20 ON chill_job.rome_appellation (metier_id)'); + $this->addSql('CREATE TABLE chill_job.rome_metier (id INT NOT NULL, libelle TEXT NOT NULL, code VARCHAR(20) NOT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE UNIQUE INDEX UNIQ_3274952577153098 ON chill_job.rome_metier (code)'); + $this->addSql('ALTER TABLE chill_job.cs_person ADD CONSTRAINT FK_10864F31217BBB47 FOREIGN KEY (person_id) REFERENCES chill_person_person (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_job.cs_person ADD CONSTRAINT FK_10864F312654B57D FOREIGN KEY (handicapAccompagnement_id) REFERENCES chill_3party.third_party (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_job.cs_person ADD CONSTRAINT FK_10864F3154866550 FOREIGN KEY (documentCV_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_job.cs_person ADD CONSTRAINT FK_10864F318825E118 FOREIGN KEY (documentAgrementIAE_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_job.cs_person ADD CONSTRAINT FK_10864F31A396AFAC FOREIGN KEY (documentRQTH_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_job.cs_person ADD CONSTRAINT FK_10864F3187541764 FOREIGN KEY (documentAttestationNEET_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_job.cs_person ADD CONSTRAINT FK_10864F315CFC2299 FOREIGN KEY (documentCI_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_job.cs_person ADD CONSTRAINT FK_10864F3134FDF11D FOREIGN KEY (documentTitreSejour_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_job.cs_person ADD CONSTRAINT FK_10864F315742C99D FOREIGN KEY (documentAttestationFiscale_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_job.cs_person ADD CONSTRAINT FK_10864F31166494D4 FOREIGN KEY (documentPermis_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_job.cs_person ADD CONSTRAINT FK_10864F3172820D66 FOREIGN KEY (documentAttestationCAAF_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_job.cs_person ADD CONSTRAINT FK_10864F31AFA5E636 FOREIGN KEY (documentContraTravail_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_job.cs_person ADD CONSTRAINT FK_10864F3161E05C22 FOREIGN KEY (documentAttestationFormation_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_job.cs_person ADD CONSTRAINT FK_10864F316F744BB0 FOREIGN KEY (documentQuittanceLoyer_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_job.cs_person ADD CONSTRAINT FK_10864F31AC39B1B FOREIGN KEY (documentFactureElectricite_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_job.cs_person ADD CONSTRAINT FK_10864F3172A75B6D FOREIGN KEY (documentAttestationSecuriteSociale_id) REFERENCES chill_doc.stored_object (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_job.cs_person ADD CONSTRAINT FK_10864F31D486E642 FOREIGN KEY (prescripteur_id) REFERENCES chill_3party.third_party (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_job.cv ADD CONSTRAINT FK_3F24F812217BBB47 FOREIGN KEY (person_id) REFERENCES chill_person_person (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_job.cv_experience ADD CONSTRAINT FK_102A1262AE1799D8 FOREIGN KEY (CV_id) REFERENCES chill_job.cv (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_job.cv_formation ADD CONSTRAINT FK_20BE09E2AE1799D8 FOREIGN KEY (CV_id) REFERENCES chill_job.cv (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_job.immersion ADD CONSTRAINT FK_FBB3CBB4A4AEAFEA FOREIGN KEY (entreprise_id) REFERENCES chill_3party.third_party (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_job.immersion ADD CONSTRAINT FK_FBB3CBB435E47E35 FOREIGN KEY (referent_id) REFERENCES users (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_job.immersion ADD CONSTRAINT FK_FBB3CBB4B5E04267 FOREIGN KEY (structureAccAddress_id) REFERENCES chill_main_address (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_job.projetprofessionnel_souhait ADD CONSTRAINT FK_3280B96DB87BF7B5 FOREIGN KEY (projetprofessionnel_id) REFERENCES chill_job.projet_professionnel (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_job.projetprofessionnel_souhait ADD CONSTRAINT FK_3280B96D7CDE30DD FOREIGN KEY (appellation_id) REFERENCES chill_job.rome_appellation (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_job.projetprofessionnel_valide ADD CONSTRAINT FK_E0501BE0B87BF7B5 FOREIGN KEY (projetprofessionnel_id) REFERENCES chill_job.projet_professionnel (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_job.projetprofessionnel_valide ADD CONSTRAINT FK_E0501BE07CDE30DD FOREIGN KEY (appellation_id) REFERENCES chill_job.rome_appellation (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE chill_job.rome_appellation ADD CONSTRAINT FK_D9E9CABCED16FA20 FOREIGN KEY (metier_id) REFERENCES chill_job.rome_metier (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); } public function down(Schema $schema): void { - $this->addSql('DROP SEQUENCE chill_csconnectes.cv_id_seq CASCADE'); - $this->addSql('DROP SEQUENCE chill_csconnectes.cv_experience_id_seq CASCADE'); - $this->addSql('DROP SEQUENCE chill_csconnectes.cv_formation_id_seq CASCADE'); - $this->addSql('DROP SEQUENCE chill_csconnectes.frein_id_seq CASCADE'); - $this->addSql('DROP SEQUENCE chill_csconnectes.immersion_id_seq CASCADE'); - $this->addSql('DROP SEQUENCE chill_csconnectes.projet_professionnel_id_seq CASCADE'); - $this->addSql('DROP SEQUENCE chill_csconnectes.rome_appellation_id_seq CASCADE'); - $this->addSql('DROP SEQUENCE chill_csconnectes.rome_metier_id_seq CASCADE'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F31217BBB47'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F312654B57D'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F3154866550'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F318825E118'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F31A396AFAC'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F3187541764'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F315CFC2299'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F3134FDF11D'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F315742C99D'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F31166494D4'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F3172820D66'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F31AFA5E636'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F3161E05C22'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F316F744BB0'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F31AC39B1B'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F3172A75B6D'); - $this->addSql('ALTER TABLE chill_csconnectes.cs_person DROP CONSTRAINT FK_10864F31D486E642'); - $this->addSql('ALTER TABLE chill_csconnectes.cv DROP CONSTRAINT FK_3F24F812217BBB47'); - $this->addSql('ALTER TABLE chill_csconnectes.cv_experience DROP CONSTRAINT FK_102A1262AE1799D8'); - $this->addSql('ALTER TABLE chill_csconnectes.cv_formation DROP CONSTRAINT FK_20BE09E2AE1799D8'); - $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP CONSTRAINT FK_FBB3CBB4A4AEAFEA'); - $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP CONSTRAINT FK_FBB3CBB435E47E35'); - $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP CONSTRAINT FK_FBB3CBB4B5E04267'); - $this->addSql('ALTER TABLE chill_csconnectes.projetprofessionnel_souhait DROP CONSTRAINT FK_3280B96DB87BF7B5'); - $this->addSql('ALTER TABLE chill_csconnectes.projetprofessionnel_souhait DROP CONSTRAINT FK_3280B96D7CDE30DD'); - $this->addSql('ALTER TABLE chill_csconnectes.projetprofessionnel_valide DROP CONSTRAINT FK_E0501BE0B87BF7B5'); - $this->addSql('ALTER TABLE chill_csconnectes.projetprofessionnel_valide DROP CONSTRAINT FK_E0501BE07CDE30DD'); - $this->addSql('ALTER TABLE chill_csconnectes.rome_appellation DROP CONSTRAINT FK_D9E9CABCED16FA20'); - $this->addSql('DROP TABLE chill_csconnectes.cs_person'); - $this->addSql('DROP TABLE chill_csconnectes.cv'); - $this->addSql('DROP TABLE chill_csconnectes.cv_experience'); - $this->addSql('DROP TABLE chill_csconnectes.cv_formation'); - $this->addSql('DROP TABLE chill_csconnectes.frein'); - $this->addSql('DROP TABLE chill_csconnectes.immersion'); - $this->addSql('DROP TABLE chill_csconnectes.projet_professionnel'); - $this->addSql('DROP TABLE chill_csconnectes.projetprofessionnel_souhait'); - $this->addSql('DROP TABLE chill_csconnectes.projetprofessionnel_valide'); - $this->addSql('DROP TABLE chill_csconnectes.rome_appellation'); - $this->addSql('DROP TABLE chill_csconnectes.rome_metier'); - $this->addSql('DROP SCHEMA chill_csconnectes'); + $this->addSql('DROP SEQUENCE chill_job.cv_id_seq CASCADE'); + $this->addSql('DROP SEQUENCE chill_job.cv_experience_id_seq CASCADE'); + $this->addSql('DROP SEQUENCE chill_job.cv_formation_id_seq CASCADE'); + $this->addSql('DROP SEQUENCE chill_job.frein_id_seq CASCADE'); + $this->addSql('DROP SEQUENCE chill_job.immersion_id_seq CASCADE'); + $this->addSql('DROP SEQUENCE chill_job.projet_professionnel_id_seq CASCADE'); + $this->addSql('DROP SEQUENCE chill_job.rome_appellation_id_seq CASCADE'); + $this->addSql('DROP SEQUENCE chill_job.rome_metier_id_seq CASCADE'); + $this->addSql('ALTER TABLE chill_job.cs_person DROP CONSTRAINT FK_10864F31217BBB47'); + $this->addSql('ALTER TABLE chill_job.cs_person DROP CONSTRAINT FK_10864F312654B57D'); + $this->addSql('ALTER TABLE chill_job.cs_person DROP CONSTRAINT FK_10864F3154866550'); + $this->addSql('ALTER TABLE chill_job.cs_person DROP CONSTRAINT FK_10864F318825E118'); + $this->addSql('ALTER TABLE chill_job.cs_person DROP CONSTRAINT FK_10864F31A396AFAC'); + $this->addSql('ALTER TABLE chill_job.cs_person DROP CONSTRAINT FK_10864F3187541764'); + $this->addSql('ALTER TABLE chill_job.cs_person DROP CONSTRAINT FK_10864F315CFC2299'); + $this->addSql('ALTER TABLE chill_job.cs_person DROP CONSTRAINT FK_10864F3134FDF11D'); + $this->addSql('ALTER TABLE chill_job.cs_person DROP CONSTRAINT FK_10864F315742C99D'); + $this->addSql('ALTER TABLE chill_job.cs_person DROP CONSTRAINT FK_10864F31166494D4'); + $this->addSql('ALTER TABLE chill_job.cs_person DROP CONSTRAINT FK_10864F3172820D66'); + $this->addSql('ALTER TABLE chill_job.cs_person DROP CONSTRAINT FK_10864F31AFA5E636'); + $this->addSql('ALTER TABLE chill_job.cs_person DROP CONSTRAINT FK_10864F3161E05C22'); + $this->addSql('ALTER TABLE chill_job.cs_person DROP CONSTRAINT FK_10864F316F744BB0'); + $this->addSql('ALTER TABLE chill_job.cs_person DROP CONSTRAINT FK_10864F31AC39B1B'); + $this->addSql('ALTER TABLE chill_job.cs_person DROP CONSTRAINT FK_10864F3172A75B6D'); + $this->addSql('ALTER TABLE chill_job.cs_person DROP CONSTRAINT FK_10864F31D486E642'); + $this->addSql('ALTER TABLE chill_job.cv DROP CONSTRAINT FK_3F24F812217BBB47'); + $this->addSql('ALTER TABLE chill_job.cv_experience DROP CONSTRAINT FK_102A1262AE1799D8'); + $this->addSql('ALTER TABLE chill_job.cv_formation DROP CONSTRAINT FK_20BE09E2AE1799D8'); + $this->addSql('ALTER TABLE chill_job.immersion DROP CONSTRAINT FK_FBB3CBB4A4AEAFEA'); + $this->addSql('ALTER TABLE chill_job.immersion DROP CONSTRAINT FK_FBB3CBB435E47E35'); + $this->addSql('ALTER TABLE chill_job.immersion DROP CONSTRAINT FK_FBB3CBB4B5E04267'); + $this->addSql('ALTER TABLE chill_job.projetprofessionnel_souhait DROP CONSTRAINT FK_3280B96DB87BF7B5'); + $this->addSql('ALTER TABLE chill_job.projetprofessionnel_souhait DROP CONSTRAINT FK_3280B96D7CDE30DD'); + $this->addSql('ALTER TABLE chill_job.projetprofessionnel_valide DROP CONSTRAINT FK_E0501BE0B87BF7B5'); + $this->addSql('ALTER TABLE chill_job.projetprofessionnel_valide DROP CONSTRAINT FK_E0501BE07CDE30DD'); + $this->addSql('ALTER TABLE chill_job.rome_appellation DROP CONSTRAINT FK_D9E9CABCED16FA20'); + $this->addSql('DROP TABLE chill_job.cs_person'); + $this->addSql('DROP TABLE chill_job.cv'); + $this->addSql('DROP TABLE chill_job.cv_experience'); + $this->addSql('DROP TABLE chill_job.cv_formation'); + $this->addSql('DROP TABLE chill_job.frein'); + $this->addSql('DROP TABLE chill_job.immersion'); + $this->addSql('DROP TABLE chill_job.projet_professionnel'); + $this->addSql('DROP TABLE chill_job.projetprofessionnel_souhait'); + $this->addSql('DROP TABLE chill_job.projetprofessionnel_valide'); + $this->addSql('DROP TABLE chill_job.rome_appellation'); + $this->addSql('DROP TABLE chill_job.rome_metier'); + $this->addSql('DROP SCHEMA chill_job'); } } diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20240424140641.php b/src/Bundle/ChillJobBundle/src/migrations/Version20240424140641.php index 5381199ff..1e4fcf7cb 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20240424140641.php +++ b/src/Bundle/ChillJobBundle/src/migrations/Version20240424140641.php @@ -16,24 +16,24 @@ final class Version20240424140641 extends AbstractMigration public function up(Schema $schema): void { - $this->addSql('ALTER TABLE chill_csconnectes.frein ADD person_id INT DEFAULT NULL'); - $this->addSql('ALTER TABLE chill_csconnectes.frein ADD CONSTRAINT FK_172EAC0A217BBB47 FOREIGN KEY (person_id) REFERENCES chill_person_person (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); - $this->addSql('CREATE INDEX IDX_172EAC0A217BBB47 ON chill_csconnectes.frein (person_id)'); - $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD person_id INT DEFAULT NULL'); - $this->addSql('ALTER TABLE chill_csconnectes.immersion ADD CONSTRAINT FK_FBB3CBB4217BBB47 FOREIGN KEY (person_id) REFERENCES chill_person_person (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); - $this->addSql('CREATE INDEX IDX_FBB3CBB4217BBB47 ON chill_csconnectes.immersion (person_id)'); - $this->addSql('ALTER TABLE chill_csconnectes.projet_professionnel ADD person_id INT DEFAULT NULL'); - $this->addSql('ALTER TABLE chill_csconnectes.projet_professionnel ADD CONSTRAINT FK_12E4FFBF217BBB47 FOREIGN KEY (person_id) REFERENCES chill_person_person (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); - $this->addSql('CREATE INDEX IDX_12E4FFBF217BBB47 ON chill_csconnectes.projet_professionnel (person_id)'); + $this->addSql('ALTER TABLE chill_job.frein ADD person_id INT DEFAULT NULL'); + $this->addSql('ALTER TABLE chill_job.frein ADD CONSTRAINT FK_172EAC0A217BBB47 FOREIGN KEY (person_id) REFERENCES chill_person_person (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('CREATE INDEX IDX_172EAC0A217BBB47 ON chill_job.frein (person_id)'); + $this->addSql('ALTER TABLE chill_job.immersion ADD person_id INT DEFAULT NULL'); + $this->addSql('ALTER TABLE chill_job.immersion ADD CONSTRAINT FK_FBB3CBB4217BBB47 FOREIGN KEY (person_id) REFERENCES chill_person_person (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('CREATE INDEX IDX_FBB3CBB4217BBB47 ON chill_job.immersion (person_id)'); + $this->addSql('ALTER TABLE chill_job.projet_professionnel ADD person_id INT DEFAULT NULL'); + $this->addSql('ALTER TABLE chill_job.projet_professionnel ADD CONSTRAINT FK_12E4FFBF217BBB47 FOREIGN KEY (person_id) REFERENCES chill_person_person (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('CREATE INDEX IDX_12E4FFBF217BBB47 ON chill_job.projet_professionnel (person_id)'); } public function down(Schema $schema): void { - $this->addSql('ALTER TABLE chill_csconnectes.projet_professionnel DROP CONSTRAINT FK_12E4FFBF217BBB47'); - $this->addSql('ALTER TABLE chill_csconnectes.projet_professionnel DROP person_id'); - $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP CONSTRAINT FK_FBB3CBB4217BBB47'); - $this->addSql('ALTER TABLE chill_csconnectes.immersion DROP person_id'); - $this->addSql('ALTER TABLE chill_csconnectes.frein DROP CONSTRAINT FK_172EAC0A217BBB47'); - $this->addSql('ALTER TABLE chill_csconnectes.frein DROP person_id'); + $this->addSql('ALTER TABLE chill_job.projet_professionnel DROP CONSTRAINT FK_12E4FFBF217BBB47'); + $this->addSql('ALTER TABLE chill_job.projet_professionnel DROP person_id'); + $this->addSql('ALTER TABLE chill_job.immersion DROP CONSTRAINT FK_FBB3CBB4217BBB47'); + $this->addSql('ALTER TABLE chill_job.immersion DROP person_id'); + $this->addSql('ALTER TABLE chill_job.frein DROP CONSTRAINT FK_172EAC0A217BBB47'); + $this->addSql('ALTER TABLE chill_job.frein DROP person_id'); } } diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20240429111628.php b/src/Bundle/ChillJobBundle/src/migrations/Version20240429111628.php index 9ff81cce4..1a3d4d043 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20240429111628.php +++ b/src/Bundle/ChillJobBundle/src/migrations/Version20240429111628.php @@ -16,19 +16,19 @@ final class Version20240429111628 extends AbstractMigration public function up(Schema $schema): void { - $this->addSql('ALTER TABLE chill_csconnectes.immersion ALTER tuteurphonenumber TYPE VARCHAR(35)'); - $this->addSql('COMMENT ON COLUMN chill_csconnectes.immersion.tuteurPhoneNumber IS \'(DC2Type:phone_number)\''); + $this->addSql('ALTER TABLE chill_job.immersion ALTER tuteurphonenumber TYPE VARCHAR(35)'); + $this->addSql('COMMENT ON COLUMN chill_job.immersion.tuteurPhoneNumber IS \'(DC2Type:phone_number)\''); - $this->addSql('ALTER TABLE chill_csconnectes.immersion ALTER structureAccPhonenumber TYPE VARCHAR(35)'); - $this->addSql('COMMENT ON COLUMN chill_csconnectes.immersion.structureAccPhonenumber IS \'(DC2Type:phone_number)\''); + $this->addSql('ALTER TABLE chill_job.immersion ALTER structureAccPhonenumber TYPE VARCHAR(35)'); + $this->addSql('COMMENT ON COLUMN chill_job.immersion.structureAccPhonenumber IS \'(DC2Type:phone_number)\''); } public function down(Schema $schema): void { - $this->addSql('ALTER TABLE chill_csconnectes.immersion ALTER tuteurPhoneNumber TYPE TEXT'); - $this->addSql('COMMENT ON COLUMN chill_csconnectes.immersion.tuteurphonenumber IS NULL'); + $this->addSql('ALTER TABLE chill_job.immersion ALTER tuteurPhoneNumber TYPE TEXT'); + $this->addSql('COMMENT ON COLUMN chill_job.immersion.tuteurphonenumber IS NULL'); - $this->addSql('ALTER TABLE chill_csconnectes.immersion ALTER structureAccPhonenumber TYPE TEXT'); - $this->addSql('COMMENT ON COLUMN chill_csconnectes.immersion.structureAccPhonenumber IS NULL'); + $this->addSql('ALTER TABLE chill_job.immersion ALTER structureAccPhonenumber TYPE TEXT'); + $this->addSql('COMMENT ON COLUMN chill_job.immersion.structureAccPhonenumber IS NULL'); } } diff --git a/src/Bundle/ChillJobBundle/src/migrations/old/Version20191119172511.php b/src/Bundle/ChillJobBundle/src/migrations/old/Version20191119172511.php index cf4b17d17..6dccbec42 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/old/Version20191119172511.php +++ b/src/Bundle/ChillJobBundle/src/migrations/old/Version20191119172511.php @@ -15,7 +15,7 @@ use Doctrine\DBAL\Schema\Schema; use Doctrine\Migrations\AbstractMigration; /** - * Add schema chill_csconnectes & table cs_person inside. + * Add schema chill_job & table cs_person inside. */ final class Version20191119172511 extends AbstractMigration { From 02b150b0a5d600d1e8995d9b808bea6c1cf39956 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Mon, 29 Apr 2024 15:25:15 +0200 Subject: [PATCH 043/136] fix delete of reports in crud config + template --- .../src/DependencyInjection/ChillJobExtension.php | 14 +++++++++++++- .../src/Resources/views/Report/delete.html.twig | 2 +- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php b/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php index fd5edcffc..42165715a 100644 --- a/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php +++ b/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php @@ -96,7 +96,7 @@ class ChillJobExtension extends Extension implements PrependExtensionInterface ], 'delete' => [ 'role' => 'ROLE_USER', - 'template' => '@ChillJob/CV/delete.html.twig', + 'template' => '@ChillJob/Report/delete.html.twig', ] ], ], @@ -120,6 +120,10 @@ class ChillJobExtension extends Extension implements PrependExtensionInterface 'role' => 'ROLE_USER', 'template' => '@ChillJob/ProjetProfessionnel/edit.html.twig', ], + 'delete' => [ + 'role' => 'ROLE_USER', + 'template' => '@ChillJob/Report/delete.html.twig' + ] ], ], [ @@ -142,6 +146,10 @@ class ChillJobExtension extends Extension implements PrependExtensionInterface 'role' => 'ROLE_USER', 'template' => '@ChillJob/Frein/edit.html.twig', ], + 'delete' => [ + 'role' => 'ROLE_USER', + 'template' => '@ChillJob/Report/delete.html.twig', + ] ], ], [ @@ -168,6 +176,10 @@ class ChillJobExtension extends Extension implements PrependExtensionInterface 'role' => 'ROLE_USER', 'template' => '@ChillJob/Immersion/edit.html.twig', ], + 'delete' => [ + 'role' => 'ROLE_USER', + 'template' => '@ChillJob/Report/delete.html.twig', + ] ], ], ], diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/Report/delete.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/Report/delete.html.twig index fb3235246..9b98e174d 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/Report/delete.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/Report/delete.html.twig @@ -1,4 +1,4 @@ -{% extends '@ChillPerson/layout.html.twig' %} +{% extends '@ChillMain/layout.html.twig' %} {% set person = entity.person %} {% set activeRouteKey = '' %} From 422b6b99eb16fe734466043baf719df16bb8098b Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Mon, 29 Apr 2024 15:28:13 +0200 Subject: [PATCH 044/136] Change translation for the group of voter rights --- .../ChillJobBundle/src/Resources/translations/messages.fr.yml | 2 ++ .../src/Security/Authorization/ExportsJobVoter.php | 2 +- .../ChillJobBundle/src/Security/Authorization/JobVoter.php | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/Bundle/ChillJobBundle/src/Resources/translations/messages.fr.yml b/src/Bundle/ChillJobBundle/src/Resources/translations/messages.fr.yml index 2baf95ad4..4c8571428 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/translations/messages.fr.yml +++ b/src/Bundle/ChillJobBundle/src/Resources/translations/messages.fr.yml @@ -251,3 +251,5 @@ CHILL_JOB_REPORT_NEW: Création et modification des rapports emploi CHILL_JOB_REPORT_DELETE: Suppression des rapports emploi CHILL_JOB_REPORT_CV: Création et modification des rapports emploi (CV uniquement) CHILL_JOB_EXPORTS: Exports emploi + +JobBundle: Emploi diff --git a/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsJobVoter.php b/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsJobVoter.php index 27139d9ac..af4935893 100644 --- a/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsJobVoter.php +++ b/src/Bundle/ChillJobBundle/src/Security/Authorization/ExportsJobVoter.php @@ -89,7 +89,7 @@ class ExportsJobVoter extends AbstractChillVoter implements ProvideRoleHierarchy */ public function getRolesWithHierarchy(): array { - return ['Job' => $this->getRoles()]; + return ['JobBundle' => $this->getRoles()]; } /** diff --git a/src/Bundle/ChillJobBundle/src/Security/Authorization/JobVoter.php b/src/Bundle/ChillJobBundle/src/Security/Authorization/JobVoter.php index ce0a6c10c..40952cdff 100644 --- a/src/Bundle/ChillJobBundle/src/Security/Authorization/JobVoter.php +++ b/src/Bundle/ChillJobBundle/src/Security/Authorization/JobVoter.php @@ -110,7 +110,7 @@ class JobVoter extends AbstractChillVoter implements ProvideRoleHierarchyInterfa public function getRolesWithHierarchy(): array { - return ['Job' => $this->getRoles()]; + return ['JobBundle' => $this->getRoles()]; } public function getRolesWithoutScope(): array From 526882a5b6daceab720759b04218dbab4a08fd95 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Mon, 29 Apr 2024 15:38:09 +0200 Subject: [PATCH 045/136] phpstan, rector and cs fixes --- .../src/Controller/CSPersonController.php | 2 +- .../src/Controller/CVCrudController.php | 1 - .../src/Controller/FreinCrudController.php | 1 - .../ProjetProfessionnelCrudController.php | 1 - .../src/DependencyInjection/ChillJobExtension.php | 11 +++++------ src/Bundle/ChillJobBundle/src/Entity/CV.php | 4 ++-- src/Bundle/ChillJobBundle/src/Entity/Immersion.php | 14 ++++++-------- .../src/Entity/ProjetProfessionnel.php | 2 +- src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php | 6 +++--- .../src/Security/Authorization/JobVoter.php | 1 - .../src/migrations/Version20240424140641.php | 7 +++++++ .../src/migrations/Version20240429111628.php | 7 +++++++ 12 files changed, 32 insertions(+), 25 deletions(-) diff --git a/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php b/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php index 7dd20367e..d5ddf329d 100644 --- a/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php +++ b/src/Bundle/ChillJobBundle/src/Controller/CSPersonController.php @@ -93,7 +93,7 @@ class CSPersonController extends OneToOneEntityPersonCRUDController { return match ($action) { 'ps_situation_edit' => $this->redirectToRoute( - 'chill_crud_' .$this->getCrudName().'_personal_situation_view', + 'chill_crud_'.$this->getCrudName().'_personal_situation_view', ['person' => $entity->getId()] ), 'dispositifs_edit' => $this->redirectToRoute( diff --git a/src/Bundle/ChillJobBundle/src/Controller/CVCrudController.php b/src/Bundle/ChillJobBundle/src/Controller/CVCrudController.php index 473aff62e..bd78498cb 100644 --- a/src/Bundle/ChillJobBundle/src/Controller/CVCrudController.php +++ b/src/Bundle/ChillJobBundle/src/Controller/CVCrudController.php @@ -14,7 +14,6 @@ namespace Chill\JobBundle\Controller; use Chill\PersonBundle\CRUD\Controller\EntityPersonCRUDController; use Symfony\Component\Form\FormInterface; use Symfony\Component\HttpFoundation\Request; -use Chill\JobBundle\Entity\Immersion; use Symfony\Component\HttpFoundation\Response; /** diff --git a/src/Bundle/ChillJobBundle/src/Controller/FreinCrudController.php b/src/Bundle/ChillJobBundle/src/Controller/FreinCrudController.php index 71aadfa5c..d3b8ee6ef 100644 --- a/src/Bundle/ChillJobBundle/src/Controller/FreinCrudController.php +++ b/src/Bundle/ChillJobBundle/src/Controller/FreinCrudController.php @@ -14,7 +14,6 @@ namespace Chill\JobBundle\Controller; use Chill\PersonBundle\CRUD\Controller\EntityPersonCRUDController; use Symfony\Component\Form\FormInterface; use Symfony\Component\HttpFoundation\Request; -use Chill\JobBundle\Entity\Immersion; use Symfony\Component\HttpFoundation\Response; /** diff --git a/src/Bundle/ChillJobBundle/src/Controller/ProjetProfessionnelCrudController.php b/src/Bundle/ChillJobBundle/src/Controller/ProjetProfessionnelCrudController.php index 55cab01eb..80c953699 100644 --- a/src/Bundle/ChillJobBundle/src/Controller/ProjetProfessionnelCrudController.php +++ b/src/Bundle/ChillJobBundle/src/Controller/ProjetProfessionnelCrudController.php @@ -14,7 +14,6 @@ namespace Chill\JobBundle\Controller; use Chill\PersonBundle\CRUD\Controller\EntityPersonCRUDController; use Symfony\Component\Form\FormInterface; use Symfony\Component\HttpFoundation\Request; -use Chill\JobBundle\Entity\Immersion; use Symfony\Component\HttpFoundation\Response; /** diff --git a/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php b/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php index 42165715a..165b5e557 100644 --- a/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php +++ b/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php @@ -11,7 +11,6 @@ declare(strict_types=1); namespace Chill\JobBundle\DependencyInjection; -use Chill\JobBundle\Controller\CSCrudReportController; use Chill\JobBundle\Controller\CSPersonController; use Chill\JobBundle\Controller\CVCrudController; use Chill\JobBundle\Controller\FreinCrudController; @@ -97,7 +96,7 @@ class ChillJobExtension extends Extension implements PrependExtensionInterface 'delete' => [ 'role' => 'ROLE_USER', 'template' => '@ChillJob/Report/delete.html.twig', - ] + ], ], ], [ @@ -122,8 +121,8 @@ class ChillJobExtension extends Extension implements PrependExtensionInterface ], 'delete' => [ 'role' => 'ROLE_USER', - 'template' => '@ChillJob/Report/delete.html.twig' - ] + 'template' => '@ChillJob/Report/delete.html.twig', + ], ], ], [ @@ -149,7 +148,7 @@ class ChillJobExtension extends Extension implements PrependExtensionInterface 'delete' => [ 'role' => 'ROLE_USER', 'template' => '@ChillJob/Report/delete.html.twig', - ] + ], ], ], [ @@ -179,7 +178,7 @@ class ChillJobExtension extends Extension implements PrependExtensionInterface 'delete' => [ 'role' => 'ROLE_USER', 'template' => '@ChillJob/Report/delete.html.twig', - ] + ], ], ], ], diff --git a/src/Bundle/ChillJobBundle/src/Entity/CV.php b/src/Bundle/ChillJobBundle/src/Entity/CV.php index 597303510..257e4a0d0 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CV.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CV.php @@ -76,7 +76,7 @@ class CV implements \Stringable * @var \Doctrine\Common\Collections\Collection */ #[ORM\OneToMany(targetEntity: CV\Formation::class, mappedBy: 'CV', cascade: ['persist', 'remove', 'detach'], orphanRemoval: true)] -// #[ORM\OrderBy(['startDate' => Order::Descending, 'endDate' => 'DESC'])] + // #[ORM\OrderBy(['startDate' => Order::Descending, 'endDate' => 'DESC'])] private Collection $formations; /** @@ -85,7 +85,7 @@ class CV implements \Stringable * @var \Doctrine\Common\Collections\Collection */ #[ORM\OneToMany(targetEntity: CV\Experience::class, mappedBy: 'CV', cascade: ['persist', 'remove', 'detach'], orphanRemoval: true)] -// #[ORM\OrderBy(['startDate' => Order::Descending, 'endDate' => 'DESC'])] + // #[ORM\OrderBy(['startDate' => Order::Descending, 'endDate' => 'DESC'])] private Collection $experiences; #[ORM\ManyToOne(targetEntity: Person::class)] diff --git a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php index 478615d83..174375432 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php @@ -43,7 +43,7 @@ class Immersion implements \Stringable * @Assert\NotNull() */ #[ORM\ManyToOne(targetEntity: Person::class)] - private $person; + private ?\Chill\PersonBundle\Entity\Person $person = null; /** * @Assert\NotNull() @@ -125,7 +125,7 @@ class Immersion implements \Stringable * @Assert\NotNull() */ #[ORM\Column(name: 'debutDate', type: \Doctrine\DBAL\Types\Types::DATE_MUTABLE, nullable: true)] - private ?\DateTimeInterface $debutDate = null; + private ?\DateTime $debutDate = null; /** * @var string|null @@ -488,11 +488,9 @@ class Immersion implements \Stringable /** * Set debutDate. * - * @param \DateTime|null $debutDate - * * @return Immersion */ - public function setDebutDate(?\DateTimeInterface $debutDate = null) + public function setDebutDate(?\DateTime $debutDate = null) { $this->debutDate = $debutDate; @@ -502,7 +500,7 @@ class Immersion implements \Stringable /** * Get debutDate. * - * @return \DateTimeInterface + * @return \DateTime */ public function getDebutDate() { @@ -526,11 +524,11 @@ class Immersion implements \Stringable /** * Get duration. * - * @return string|null + * @return \DateInterval */ public function getDuration() { - return $this->duration; + return new \DateInterval($this->duration); } public function getDateEndComputed() diff --git a/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php b/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php index 40141b9e3..44dd6b412 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php +++ b/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php @@ -36,7 +36,7 @@ class ProjetProfessionnel implements \Stringable * @Assert\NotNull() */ #[ORM\ManyToOne(targetEntity: Person::class)] - private $person; + private ?\Chill\PersonBundle\Entity\Person $person = null; /** * @Assert\NotNull() diff --git a/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php b/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php index e3119a392..c838a4b1a 100644 --- a/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php +++ b/src/Bundle/ChillJobBundle/src/Menu/MenuBuilder.php @@ -60,9 +60,9 @@ class MenuBuilder implements LocalMenuBuilderInterface 'person' => $person->getId(), ], ]) - ->setExtras([ - 'order' => 52, - ]); + ->setExtras([ + 'order' => 52, + ]); } public static function getMenuIds(): array diff --git a/src/Bundle/ChillJobBundle/src/Security/Authorization/JobVoter.php b/src/Bundle/ChillJobBundle/src/Security/Authorization/JobVoter.php index 40952cdff..54de180f5 100644 --- a/src/Bundle/ChillJobBundle/src/Security/Authorization/JobVoter.php +++ b/src/Bundle/ChillJobBundle/src/Security/Authorization/JobVoter.php @@ -15,7 +15,6 @@ use Chill\MainBundle\Security\Authorization\AbstractChillVoter; use Symfony\Component\Security\Core\Authentication\Token\TokenInterface; use Chill\JobBundle\Entity\Frein; use Chill\JobBundle\Entity\CV; -use Symfony\Component\Security\Core\Authorization\Voter\VoterInterface; use Chill\JobBundle\Entity\Immersion; use Chill\JobBundle\Entity\ProjetProfessionnel; use Chill\MainBundle\Security\ProvideRoleHierarchyInterface; diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20240424140641.php b/src/Bundle/ChillJobBundle/src/migrations/Version20240424140641.php index 1e4fcf7cb..87c9d3623 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20240424140641.php +++ b/src/Bundle/ChillJobBundle/src/migrations/Version20240424140641.php @@ -2,6 +2,13 @@ declare(strict_types=1); +/* + * Chill is a software for social workers + * + * For the full copyright and license information, please view + * the LICENSE file that was distributed with this source code. + */ + namespace Chill\Migrations\Job; use Doctrine\DBAL\Schema\Schema; diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20240429111628.php b/src/Bundle/ChillJobBundle/src/migrations/Version20240429111628.php index 1a3d4d043..e12318d7c 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20240429111628.php +++ b/src/Bundle/ChillJobBundle/src/migrations/Version20240429111628.php @@ -2,6 +2,13 @@ declare(strict_types=1); +/* + * Chill is a software for social workers + * + * For the full copyright and license information, please view + * the LICENSE file that was distributed with this source code. + */ + namespace Chill\Migrations\Job; use Doctrine\DBAL\Schema\Schema; From 684f28291abeb7d39822e310ac52bd0a77d0c3ae Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Tue, 7 May 2024 11:14:39 +0200 Subject: [PATCH 046/136] reinstate exports --- .../ChillJobBundle/src/Export/ListCSPerson.php | 2 +- src/Bundle/ChillJobBundle/src/Export/ListCV.php | 2 +- src/Bundle/ChillJobBundle/src/Export/ListFrein.php | 4 ++-- .../src/Export/ListProjetProfessionnel.php | 2 +- .../src/Resources/config/services/export.yml | 14 +++----------- 5 files changed, 8 insertions(+), 16 deletions(-) diff --git a/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php b/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php index 5740ad466..a671cf8f2 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php @@ -284,7 +284,7 @@ class ListCSPerson extends ListPerson implements ListInterface, ExportElementVal 'choices' => $choices, 'data' => $choices, // les checkbox cochés !! - 'choices_as_values' => true, +// 'choices_as_values' => true, 'label' => 'Fields to include in export', 'choice_label' => fn ($key) => str_replace('__', '.', (string) $key), 'choice_attr' => function ($val) { diff --git a/src/Bundle/ChillJobBundle/src/Export/ListCV.php b/src/Bundle/ChillJobBundle/src/Export/ListCV.php index 39504a096..aea1c7217 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListCV.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListCV.php @@ -92,7 +92,7 @@ class ListCV implements ListInterface, ExportElementValidatedInterface ->add('fields', ChoiceType::class, [ 'multiple' => true, 'expanded' => true, - 'choices_as_values' => true, +// 'choices_as_values' => true, 'label' => 'Fields to include in export', 'choices' => array_combine($this->getFields(), $this->getFields()), 'data' => array_combine($this->getFields(), $this->getFields()), diff --git a/src/Bundle/ChillJobBundle/src/Export/ListFrein.php b/src/Bundle/ChillJobBundle/src/Export/ListFrein.php index 9bf546f55..51354e1fb 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListFrein.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListFrein.php @@ -105,7 +105,7 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface ->add('fields', ChoiceType::class, [ 'multiple' => true, 'expanded' => true, - 'choices_as_values' => true, +// 'choices_as_values' => true, 'label' => 'Fields to include in export', 'choices' => array_combine($this->getFields(), $this->getFields()), 'data' => array_combine($this->getFields(), $this->getFields()), @@ -187,7 +187,7 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface public function initiateQuery(array $requiredModifiers, array $acl, array $data = []) { return $this->entityManager->createQueryBuilder() - ->from('ChillPersonBundle:Person', 'person'); + ->from(Person::class, 'person'); } /** diff --git a/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php b/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php index 52bbc1637..54cd2b3a5 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php @@ -110,7 +110,7 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn ->add('fields', ChoiceType::class, [ 'multiple' => true, 'expanded' => true, - 'choices_as_values' => true, +// 'choices_as_values' => true, 'label' => 'Fields to include in export', 'choice_label' => fn ($key) => str_replace('__', '.', (string) $key), 'choices' => array_combine($this->getFields(), $this->getFields()), diff --git a/src/Bundle/ChillJobBundle/src/Resources/config/services/export.yml b/src/Bundle/ChillJobBundle/src/Resources/config/services/export.yml index e03ca2c37..08bacf6ae 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/config/services/export.yml +++ b/src/Bundle/ChillJobBundle/src/Resources/config/services/export.yml @@ -1,28 +1,20 @@ services: + _defaults: + autowire: true + autoconfigure: true Chill\JobBundle\Export\ListCSPerson: - arguments: - $em: '@doctrine.orm.entity_manager' - $translator: "@translator" - $translatableStringHelper: "@chill.main.helper.translatable_string" - $customFieldProvider: "@chill.custom_field.provider" tags: - { name: chill.export, alias: list_CSPerson } Chill\JobBundle\Export\ListCV: - arguments: - $em: '@doctrine.orm.entity_manager' tags: - { name: chill.export, alias: list_CV } Chill\JobBundle\Export\ListFrein: - arguments: - $em: '@doctrine.orm.entity_manager' tags: - { name: chill.export, alias: list_Frein } Chill\JobBundle\Export\ListProjetProfessionnel: - arguments: - $em: '@doctrine.orm.entity_manager' tags: - { name: chill.export, alias: list_ProjetProfessionnel } From d82d534a4c3661a341c17664e7dff627b3e13ba4 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Tue, 7 May 2024 11:15:10 +0200 Subject: [PATCH 047/136] Try to fix API: adjust to new urls, but still receiving error code 400 --- .../src/ApiHelper/ApiWrapper.php | 7 ++++--- .../src/ApiHelper/PartenaireRomeAppellation.php | 6 +++--- .../src/Resources/config/services.yml | 4 ++-- .../src/Form/Type/PickRomeAppellationType.php | 2 +- 4 files changed, 10 insertions(+), 9 deletions(-) diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php index 975170f72..a61a3257b 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php @@ -35,7 +35,9 @@ class ApiWrapper public function __construct(private $clientId, private $clientSecret, private readonly ChillRedis $redis) { $this->client = new Client([ - 'base_uri' => 'https://entreprise.pole-emploi.fr/connexion/oauth2/access_token', +// 'base_uri' => 'https://entreprise.pole-emploi.fr/connexion/oauth2/access_token', + 'base_uri' => 'https://francetravail.io/connexion/oauth2/access_token', + ]); } @@ -49,20 +51,19 @@ class ApiWrapper return $data->access_token; } + try { $response = $this->client->post('', [ 'query' => ['realm' => '/partenaire'], 'headers' => [ 'Content-Type' => 'application/x-www-form-urlencoded', ], - // 'body' => 'grant_type=client_credentials&client_id=PAR_chillcsconnectesdev_0e20082886f1bc5d8ff4f8b34868603e2bcc7ed6bc5963e648e3709c639aced9&client_secret=4e626fa3123bcf4d299591c09731fa3242a7e75bbc003955f903aebc33cdd022&scope=api_romev1%20nomenclatureRome%20application_PAR_chillcsconnectesdev_0e20082886f1bc5d8ff4f8b34868603e2bcc7ed6bc5963e648e3709c639aced9' 'form_params' => [ 'grant_type' => 'client_credentials', 'client_id' => $this->clientId, 'client_secret' => $this->clientSecret, 'scope' => \implode(' ', \array_merge($scopes, ['application_'.$this->clientId])), ], - // ]); ]); } catch (ClientException $e) { dump($e->getResponse()); diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php index 4a30432c9..6ece2afbe 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php @@ -44,14 +44,14 @@ class PartenaireRomeAppellation $this->wrapper = $wrapper; $this->logger = $logger; $this->client = new Client([ - 'base_uri' => 'https://api.emploi-store.fr/partenaire/rome/v1/', + 'base_uri' => 'https://api.francetravail.io/partenaire/rome-metiers', ]); } private function getBearer() { return $this->wrapper->getPublicBearer([ - 'api_romev1', + 'api_rome-metiersv1', 'nomenclatureRome', ]); } @@ -67,7 +67,7 @@ class PartenaireRomeAppellation $parameters = [ 'query' => [ 'q' => $search, - 'qf' => 'libelle', + 'fq' => 'libelle', ], 'headers' => [ 'Authorization' => 'Bearer '.$bearer, diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/Resources/config/services.yml b/src/Bundle/ChillFranceTravailApiBundle/src/Resources/config/services.yml index 1c4fca21e..2bb364f7a 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/Resources/config/services.yml +++ b/src/Bundle/ChillFranceTravailApiBundle/src/Resources/config/services.yml @@ -9,6 +9,6 @@ services: $logger: '@Psr\Log\LoggerInterface' Chill\FranceTravailApiBundle\Controller\RomeController: - arguments: - $apiAppellation: '@Chill\FranceTravailApiBundle\ApiHelper\PartenaireRomeAppellation' + autowire: true + autoconfigure: true tags: ['controller.service_arguments'] diff --git a/src/Bundle/ChillJobBundle/src/Form/Type/PickRomeAppellationType.php b/src/Bundle/ChillJobBundle/src/Form/Type/PickRomeAppellationType.php index da538f649..6ae77ba62 100644 --- a/src/Bundle/ChillJobBundle/src/Form/Type/PickRomeAppellationType.php +++ b/src/Bundle/ChillJobBundle/src/Form/Type/PickRomeAppellationType.php @@ -107,7 +107,7 @@ class PickRomeAppellationType extends AbstractType $view->vars['attr']['data-rome-appellation-picker'] = true; $view->vars['attr']['data-select-interactive-loading'] = true; $view->vars['attr']['data-search-url'] = $this->urlGenerator - ->generate('chill_pole_emploi_api_appellation_search', ['_format' => 'json']); + ->generate('chill_france_travail_api_appellation_search', ['_format' => 'json']); $view->vars['attr']['data-placeholder'] = 'Choisir une appellation'; $view->vars['attr']['data-no-results-label'] = $this->translator->trans('select2.no_results'); $view->vars['attr']['data-error-load-label'] = $this->translator->trans('select2.error_loading'); From 4ed9d3d8e2b70724f2a3c9a7481faaec9e84f1b2 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Tue, 14 May 2024 07:49:40 +0200 Subject: [PATCH 048/136] Fix API call --- .../src/ApiHelper/ApiWrapper.php | 4 +--- .../ApiHelper/PartenaireRomeAppellation.php | 22 +++++++++++++------ .../src/ApiHelper/ProcessRequestTrait.php | 4 ++-- 3 files changed, 18 insertions(+), 12 deletions(-) diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php index a61a3257b..a293b7712 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php @@ -35,9 +35,7 @@ class ApiWrapper public function __construct(private $clientId, private $clientSecret, private readonly ChillRedis $redis) { $this->client = new Client([ -// 'base_uri' => 'https://entreprise.pole-emploi.fr/connexion/oauth2/access_token', - 'base_uri' => 'https://francetravail.io/connexion/oauth2/access_token', - + 'base_uri' => 'https://entreprise.francetravail.fr/connexion/oauth2/access_token', ]); } diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php index 6ece2afbe..8126dd2dc 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php @@ -12,6 +12,7 @@ declare(strict_types=1); namespace Chill\FranceTravailApiBundle\ApiHelper; use GuzzleHttp\Client; +use GuzzleHttp\Exception\ClientException; use GuzzleHttp\Psr7\Request; use GuzzleHttp\Utils; use Psr\Log\LoggerInterface; @@ -44,7 +45,7 @@ class PartenaireRomeAppellation $this->wrapper = $wrapper; $this->logger = $logger; $this->client = new Client([ - 'base_uri' => 'https://api.francetravail.io/partenaire/rome-metiers', + 'base_uri' => 'https://api.pole-emploi.io/partenaire/rome-metiers/v1/metiers/', ]); } @@ -73,12 +74,19 @@ class PartenaireRomeAppellation 'Authorization' => 'Bearer '.$bearer, ], ]; - $response = $this->handleRequest( - $request, - $parameters, - $this->client, - $this->logger - ); + try { + $response = $this->handleRequest( + $request, + $parameters, + $this->client, + $this->logger + ); + + } catch (ClientException $e) { +dump($e->getResponse()); +dump($e->getRequest()); dump($e->getResponse()->getBody()->getContents()); +} + return Utils::jsonDecode((string) $response->getBody()); } diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ProcessRequestTrait.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ProcessRequestTrait.php index efd41c223..01ead1109 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ProcessRequestTrait.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ProcessRequestTrait.php @@ -90,8 +90,8 @@ trait ProcessRequestTrait $logger->error('Error while querying ROME api', [ 'status_code' => $e->getResponse()->getStatusCode(), 'part' => 'appellation', - 'request' => Psr7\str($e->getRequest()), - 'response' => Psr7\str($e->getResponse()), + 'request' => $e->getRequest()->getBody()->getContents(), + 'response' => $e->getResponse()->getBody()->getContents(), ]); throw $e; From 97846a5877eb4f53fbf942fe475f2c617a863a71 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Tue, 14 May 2024 11:01:45 +0200 Subject: [PATCH 049/136] add basic fields csperson to list person export --- .../Export/AddCSPersonToPersonListHelper.php | 183 +++++ .../src/Export/ListCSPerson.php | 628 ------------------ .../src/Resources/config/services/export.yml | 4 +- 3 files changed, 185 insertions(+), 630 deletions(-) create mode 100644 src/Bundle/ChillJobBundle/src/Export/AddCSPersonToPersonListHelper.php delete mode 100644 src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php diff --git a/src/Bundle/ChillJobBundle/src/Export/AddCSPersonToPersonListHelper.php b/src/Bundle/ChillJobBundle/src/Export/AddCSPersonToPersonListHelper.php new file mode 100644 index 000000000..34f10a1f9 --- /dev/null +++ b/src/Bundle/ChillJobBundle/src/Export/AddCSPersonToPersonListHelper.php @@ -0,0 +1,183 @@ +leftJoin(CSPerson::class, 'cs_person', Query\Expr\Join::WITH, 'cs_person.person = person'); + + foreach (self::CSPERSON_FIELDS as $f) { + switch ($f) { + case 'findernieremploidate': + $qb->addSelect('cs_person.dateFinDernierEmploi AS findernieremploidate'); + + break; + + case 'poleemploiid': + $qb->addSelect('cs_person.poleEmploiId AS poleemploiid'); + + break; + + case 'cafid': + $qb->addSelect('cs_person.cafId AS cafid'); + + break; + + case 'cafinscriptiondate': + $qb->addSelect('cs_person.cafInscriptionDate AS cafinscriptiondate'); + + break; + + case 'contratiejdate': + $qb->addSelect('cs_person.dateContratIEJ AS contratiejdate'); + + break; + + case 'cerinscriptiondate': + $qb->addSelect('cs_person.cERInscriptionDate AS cerinscriptiondate'); + + break; + + case 'ppaeinscriptiondate': + $qb->addSelect('cs_person.pPAEInscriptionDate AS ppaeinscriptiondate'); + + break; + + case 'ppaesignataire': + $qb->addSelect('cs_person.pPAESignataire AS ppaesignataire'); + + break; + + case 'cersignataire': + $qb->addSelect('cs_person.cERSignataire AS cersignataire'); + + break; + + case 'neetcommissiondate': + $qb->addSelect('cs_person.nEETCommissionDate AS neetcommissiondate'); + + break; + + case 'fsemademarchecode': + $qb->addSelect('cs_person.fSEMaDemarcheCode AS fsemademarchecode'); + + break; + + default: + $qb->addSelect(sprintf('person.%s as %s', $f, $f)); + + } + } + } + + public function getLabels(string $key, array $values, array $data): ?callable + { +// dump('im here'); + switch ($key) { + case 'cerinscriptiondate': + case 'ppaeinscriptiondate': + case 'neetcommissiondate': + case 'findernieremploidate': + case 'cafinscriptiondate': + case 'contratiejdate': + return function ($value) use ($key) { + if ('_header' === $value) { + return $this->translator->trans($key); + } + + if (null === $value) { + return ''; + } + // warning: won't work with DateTimeImmutable as we reset time a few lines later + $date = \DateTime::createFromFormat('Y-m-d', $value); + $hasTime = false; + + if (false === $date) { + $date = \DateTime::createFromFormat('Y-m-d H:i:s', $value); + $hasTime = true; + } + + // check that the creation could occur. + if (false === $date) { + throw new \Exception(sprintf('The value %s could not be converted to %s', $value, \DateTime::class)); + } + + if (!$hasTime) { + $date->setTime(0, 0, 0); + } + + return $date; + }; + + default: +/* if (!\in_array($key, $this->getAllKeys(), true)) { + throw new \RuntimeException("this key is not supported by this helper: {$key}"); + }*/ + + // for fields which are associated with person + return function ($value) use ($key) { + if ('_header' === $value) { + return $this->translator->trans($key); + } + + return $value; + }; + } + } +} diff --git a/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php b/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php deleted file mode 100644 index a671cf8f2..000000000 --- a/src/Bundle/ChillJobBundle/src/Export/ListCSPerson.php +++ /dev/null @@ -1,628 +0,0 @@ - CSPerson::RESSOURCES, - 'moyen_transport__label' => CSPerson::MOBILITE_MOYEN_TRANSPORT, - 'type_contrat__label' => CSPerson::TYPE_CONTRAT, - 'permis_conduire__label' => CSPerson::PERMIS_CONDUIRE, - 'accompagnement__label' => CSPerson::ACCOMPAGNEMENTS, - 'situation_professionnelle__label' => CSPerson::SITUATION_PROFESSIONNELLE, - 'neet_eligibility__label' => CSPerson::NEET_ELIGIBILITY, - ]; - - protected array $personIds = []; - protected EntityManagerInterface $em; - protected TranslatableStringHelper $translatableStringHelper; - protected CustomFieldProvider $customFieldProvider; - - public function __construct( - protected TranslatorInterface $translator, - EntityManagerInterface $em, - ListPersonHelper $listPersonHelper, - TranslatableStringHelper $translatableStringHelper, - CustomFieldProvider $customFieldProvider, - ParameterBagInterface $parameterBag - ) { - parent::__construct($customFieldProvider, $listPersonHelper, $em, $translatableStringHelper, $parameterBag); - } - - /** - * Rebuild fields array, combining parent ListPerson and ListCSPerson, - * adding query type as value. - * - * @return array - */ - protected function allFields() - { - $fields = [ - 'id' => 'integer', - 'firstName' => 'string', - 'lastName' => 'string', - 'gender' => 'string', - 'birthdate' => 'date', - 'placeOfBirth' => 'string', - 'countryOfBirth' => 'json', - 'nationality' => 'json', - 'email' => 'string', - 'phonenumber' => 'string', - 'mobilenumber' => 'string', - 'contactInfo' => 'string', - 'memo' => 'string', - 'address_valid_from' => 'date', - 'address_street_address_1' => 'string', - 'address_street_address_2' => 'string', - 'address_postcode_code' => 'string', - 'address_postcode_label' => 'string', - 'address_country_name' => 'string', - 'address_country_code' => 'string', - 'address_isnoaddress' => 'boolean', - ]; - - $CSfields = [ - 'recentopeningdate' => 'date', - 'recentclosingdate' => 'date', - 'closingmotive' => 'json', - 'situation_familiale' => 'json', - 'enfantacharge' => 'integer', - 'accompagnement__label' => 'json', - 'findernieremploidate' => 'date', - 'prescripteur__name' => 'string', - 'prescripteur__email' => 'string', - 'prescripteur__phone' => 'string', - 'poleemploiid' => 'string', - 'cafid' => 'string', - 'cafinscriptiondate' => 'date', - 'contratiejdate' => 'date', - 'cerinscriptiondate' => 'date', - 'ppaeinscriptiondate' => 'date', - 'ppaesignataire' => 'string', - 'cersignataire' => 'string', - 'neet_eligibility__label' => 'string', - 'neetcommissiondate' => 'date', - 'fsemademarchecode' => 'string', - 'permis_conduire__label' => 'json', - 'situation_professionnelle__label' => 'string', - 'datefindernieremploi' => 'date', - 'type_contrat__label' => 'json', - 'ressource__label' => 'json', - 'moyen_transport__label' => 'json', - ]; - - return array_merge($fields, $CSfields); - } - - /** - * Return array FIELDS keys only. - * - * @return array - */ - private function getFields() - { - return array_keys($this->allFields()); - } - - /** - * give the list of keys the current export added to the queryBuilder in - * self::initiateQuery. - * - * Example: if your query builder will contains `SELECT count(id) AS count_id ...`, - * this function will return `array('count_id')`. - * - * @param mixed[] $data the data from the export's form (added by self::buildForm) - * - * @return array - */ - public function getQueryKeys($data) - { - $csperson = self::CSPERSON; - - $fields = []; - foreach ($data['fields'] as $key) { - switch ($key) { - case 'ressource__label': - case 'moyen_transport__label': - foreach ($csperson[$key] as $item) { - $this->translationCompatKey($item, $key); - $fields[] = $item; - } - break; - - case 'prescripteur__name': - case 'prescripteur__email': - case 'prescripteur__phone': - $key = str_replace('__', '.', (string) $key); - - // no break - case 'situation_professionnelle__label': - case 'neet_eligibility__label': - case 'accompagnement__label': - case 'permis_conduire__label': - case 'type_contrat__label': - default: - $fields[] = $key; - } - } - - return $fields; - } - - /** - * Some fields values are arrays that have to be splitted in columns. - * This function split theses fields. - * - * @param array $rows - * - * @return array|\Closure - */ - private function splitArrayToColumns($rows) - { - $csperson = self::CSPERSON; - - $results = []; - foreach ($rows as $row) { - $res = []; - foreach ($row as $key => $value) { - switch ($key) { - case 'ressource__label': - case 'moyen_transport__label': - foreach ($csperson[$key] as $item) { - $this->translationCompatKey($item, $key); - if ((null === $value) || (0 === count($value))) { - $res[$item] = ''; - } else { - foreach ($value as $v) { - $this->translationCompatKey($v, $key); - - if ($item === $v) { - $res[$item] = 'x'; - break; - } - $res[$item] = ''; - } - } - } - break; - - case 'situation_professionnelle__label': - $f = false; - if ('en_activite' === $value) { - $f = true; - } - $res[$key] = $value; - break; - - case 'type_contrat__label': - if ('' !== $value) { - $res[$key] = ($f) ? $value : null; - } else { - $res[$key] = null; - } - break; - - case 'prescripteur__name': - case 'prescripteur__email': - case 'prescripteur__phone': - $key = str_replace('__', '.', (string) $key); - - // no break - case 'neet_eligibility__label': - case 'accompagnement__label': - case 'permis_conduire__label': - default: - $res[$key] = $value; - } - } - $results[] = $res; - } - - return $results; - } - - /** - * Make item compatible with YAML messages ids - * for fields that are splitted in columns (with field key to replace). - * - * AVANT - * key: projet_prof__volume_horaire__label - * item: temps_plein - * APRES - * item: projet_prof.volume_horaire.temps_plein - * - * @param string $item (&) passed by reference - * @param string $key - */ - private function translationCompatKey(&$item, $key) - { - $key = str_replace('label', $item, $key); - $key = str_replace('__', '.', $key); - $item = $key; - } - - public function buildForm(FormBuilderInterface $builder) - { - parent::buildForm($builder); // ajouter un '?' dans la query - - $choices = array_combine($this->getFields(), $this->getFields()); - - $builder->add('fields', ChoiceType::class, [ - 'multiple' => true, - 'expanded' => true, - 'choices' => $choices, - 'data' => $choices, - // les checkbox cochés !! -// 'choices_as_values' => true, - 'label' => 'Fields to include in export', - 'choice_label' => fn ($key) => str_replace('__', '.', (string) $key), - 'choice_attr' => function ($val) { - if (str_starts_with($val, 'address_')) { - return ['data-display-target' => 'address_date']; - } - - return []; - }, - 'constraints' => [new Callback(['callback' => function ($selected, ExecutionContextInterface $context) { - if (0 === count($selected)) { - $context->buildViolation('You must select at least one element') - ->atPath('fields') - ->addViolation(); - } - }])], - ]); - } - - /** - * @return \Doctrine\ORM\NativeQuery|\Doctrine\ORM\QueryBuilder - * - * @throws \Doctrine\DBAL\Exception\InvalidArgumentException - */ - public function initiateQuery(array $requiredModifiers, array $acl, array $data = []) - { - $centers = array_map(fn ($el) => $el['center'], $acl); - - // throw an error if any fields are present - if (!\array_key_exists('fields', $data)) { - throw new \Doctrine\DBAL\Exception\InvalidArgumentException('any fields have been checked'); - } - - return $this->entityManager->createQueryBuilder() - ->from('ChillPersonBundle:Person', 'person') - ->join('person.center', 'center') - ->andWhere('center IN (:authorized_centers)') - ->setParameter('authorized_centers', $centers) - ; - } - - /** - * @param \Doctrine\ORM\NativeQuery|\Doctrine\ORM\QueryBuilder $qb - * @param mixed[] $data - */ - public function getResult($qb, $data) - { - $qb->select('person.id'); - - $ids = $qb->getQuery()->getResult(Query::HYDRATE_SCALAR); - $this->personIds = array_map(fn ($e) => $e['id'], $ids); - - $personIdsParameters = '?'.\str_repeat(', ?', count($this->personIds) - 1); - $query = \str_replace('%person_ids%', $personIdsParameters, self::QUERY); - - $rsm = new Query\ResultSetMapping(); - - foreach ($this->allFields() as $name => $type) { - if (null !== $data['fields'][$name]) { - $rsm->addScalarResult(strtolower($name), $name, $type); - } - } - - $nq = $this->entityManager->createNativeQuery($query, $rsm); - - $idx = 0; - for ($i = 1; $i <= 8; ++$i) { - ++$idx; - $nq->setParameter($idx, $data['address_date'], 'date'); - } - for ($i = 1; $i <= count($this->personIds); ++$i) { - ++$idx; - $nq->setParameter($idx, $this->personIds[$i - 1]); - } - - return $this->splitArrayToColumns( - $nq->getResult() - ); - } - - /** - * @param string $key The column key, as added in the query - * @param mixed[] $values The values from the result. if there are duplicates, those might be given twice. Example: array('FR', 'BE', 'CZ', 'FR', 'BE', 'FR') - * @param mixed $data The data from the export's form (as defined in `buildForm` - */ - public function getLabels($key, array $values, $data) - { - $csperson = self::CSPERSON; - - return match ($key) { - 'countryOfBirth', 'situation_familiale', 'closingmotive', 'nationality' => function ($value) use ($key) { - if ('_header' === $value) { - return $key; - } - - return $value['fr']; - }, - 'accompagnement__label', 'permis_conduire__label', 'type_contrat__label' => function ($value) use ($key) { - if ('_header' === $value) { - return $this->translator->trans( - str_replace('__', '.', $key) - ); - } - if ('' === $value) { - return ''; - } - $arr = []; - foreach ($value as $v) { - $this->translationCompatKey($v, $key); - $arr[] = $this->translator->trans($v); - } - - return implode(', ', $arr); - }, - 'situation_professionnelle__label', 'neet_eligibility__label' => function ($value) use ($key) { - if ('_header' === $value) { - return $this->translator->trans( - str_replace('__', '.', $key) - ); - } - if ('' === $value) { - return ''; - } - $this->translationCompatKey($value, $key); - - return $this->translator->trans($value); - }, - 'birthdate', 'address_valid_from', 'recentopeningdate', 'recentclosingdate', 'findernieremploidate', 'cafinscriptiondate', 'contratiejdate', 'cerinscriptiondate', 'ppaeinscriptiondate', 'neetcommissiondate', 'datefindernieremploi' => function ($value) use ($key) { - if ('_header' === $value) { - return $key; - } - if ('' === $value) { - return ''; - } - - return $value->format('d-m-Y'); - }, - 'gender' => function ($value) { - if ('_header' === $value) { - return 'gender'; - } - - return $this->translator->trans($value); - }, - 'address_country_name' => function ($value) use ($key) { - if ('_header' === $value) { - return \strtolower($key); - } - if (null === $value) { - return ''; - } - - return $this->translatableStringHelper->localize(json_decode($value, true)); - }, - 'address_isnoaddress' => parent::getLabels($key, $values, $data), - default => function ($value) use ($key) { - if ('_header' === $value) { - return $key; - } - if ('' === $value) { - return ''; - } - - return $value; - }, - }; - } - - /** - * Native Query SQL. - */ - public const QUERY = <<<'SQL' - -WITH accompagning AS ( - - SELECT * - FROM ( - - SELECT - p.id, - ac.openingdate, - - rank() OVER ( - PARTITION BY p.id - ORDER BY ac.openingdate DESC - ) openingrank, - - ac.closingdate, - - rank() OVER ( - PARTITION BY p.id - ORDER BY ac.closingdate DESC - ) closingrank, - - ( CASE - WHEN ac.closingdate IS NULL - THEN NULL - ELSE cm.name - END ) as closingmotive - - FROM public.chill_person_person AS p - - LEFT OUTER JOIN public.chill_person_accompanying_period AS ac - ON p.id = ac.person_id - - LEFT OUTER JOIN public.chill_person_closingmotive AS cm - ON ac.closingmotive_id = cm.id - - ) AS sq - - WHERE sq.openingrank = 1 - OR sq.closingrank = 1 -) -SELECT --- identifiant - p.id as id, --- ** - p.firstname as firstName, --- ** - p.lastname as lastName, --- genre - p.gender as gender, --- date de naissance - p.birthdate as birthdate, --- ** - p.place_of_birth as placeOfBirth, --- ** - cnb.name as countryOfBirth, --- nationalité - cnn.name as nationality, --- Courriel - p.email as email, --- numéro de téléphone - p.phonenumber as phonenumber, --- numéro de téléphone portable - p.mobilenumber as mobilenumber, --- ** - p.contactInfo as contactInfo, --- memo - p.memo as memo, - --- Date de début de validité de l'adresse - get_last_address_validfrom(p.id, ?::date) as address_valid_from, --- Adresse SDF - get_last_address_isnoaddress(p.id, ?::date) as address_isnoaddress, --- Adresse ligne 1 - get_last_address_streetaddress1(p.id, ?::date) as address_street_address_1, --- Adresse ligne 2 - get_last_address_streetaddress2(p.id, ?::date) as address_street_address_2, --- Code postal - get_last_address_postcode_code(p.id, ?::date) as address_postcode_code, --- Commune - get_last_address_postcode_label(p.id, ?::date) as address_postcode_label, --- Code pays - get_last_address_country_code(p.id, ?::date) as address_country_code, --- Pays - get_last_address_country_name(p.id, ?::date) as address_country_name, - --- date d’ouverture du dossier la plus récente - ac.openingdate as recentopeningdate, --- date de fermeture du dossier la plus récente - ac.closingdate as recentclosingdate, --- motif de cloture - ac.closingmotive as closingmotive, - --- Situation familiale - ms.name as situation_familiale, --- Enfants à charge - cs.enfantacharge as enfantacharge, --- Date de fin du dernier emploi - cs.datefindernieremploi as findernieremploidate, --- Accompagnement - cs.accompagnement as accompagnement__label, --- Prescripteur - tpp.name as prescripteur__name, --- Email prescripteur - tpp.email as prescripteur__email, --- Téléphone prescripteur - tpp.telephone as prescripteur__phone, --- Identifiant pôle emploi - cs.poleemploiid as poleemploiid, --- Numéro allocataire CAF - cs.cafid as cafid, --- Date de l’inscription CAF - cs.cafinscriptiondate as cafinscriptiondate, --- Date de l’avenant du contrat - cs.datecontratiej as contratiejdate, --- Date de l’inscription CER - cs.cerinscriptiondate as cerinscriptiondate, --- Date de l’inscription PPAE - cs.ppaeinscriptiondate as ppaeinscriptiondate, --- Signataire PPAE - cs.ppaesignataire as ppaesignataire, --- Signataire CER - cs.cersignataire as cersignataire, --- Éligibilité NEET - cs.neeteligibilite as neet_eligibility__label, --- Date de commission NEET - cs.neetcommissiondate as neetcommissiondate, --- Code démarche FSE - cs.fsemademarchecode as fsemademarchecode, --- Permis de conduire - cs.permisconduire as permis_conduire__label, --- Situation professionnelle - cs.situationprofessionnelle as situation_professionnelle__label, --- Type de contrat - cs.typecontrat as type_contrat__label, --- Salaire(s), ARE, ASS, RSA, AAH, Autre - cs.ressources as ressource__label, --- Transport en commun, Scooter, Vélo, Voiture, Autre - cs.mobilitemoyentransport as moyen_transport__label - -FROM public.chill_person_person AS p - - LEFT JOIN chill_job.cs_person AS cs - ON p.id = cs.person_id - LEFT JOIN chill_3party.third_party AS tpp - ON cs.prescripteur_id = tpp.id - LEFT JOIN public.chill_person_marital_status AS ms - ON p.maritalstatus_id = ms.id - - LEFT JOIN public.country AS cnb - ON p.countryofbirth_id = cnb.id - LEFT JOIN public.country AS cnn - ON p.nationality_id = cnn.id - - LEFT JOIN accompagning AS ac - ON p.id = ac.id - -WHERE - p.id IN (%person_ids%) - -ORDER BY p.id ASC - -SQL; - - public function validateForm(mixed $data, ExecutionContextInterface $context) - { - // TODO: Implement validateForm() method. - } -} diff --git a/src/Bundle/ChillJobBundle/src/Resources/config/services/export.yml b/src/Bundle/ChillJobBundle/src/Resources/config/services/export.yml index 08bacf6ae..3d9c67261 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/config/services/export.yml +++ b/src/Bundle/ChillJobBundle/src/Resources/config/services/export.yml @@ -3,9 +3,9 @@ services: autowire: true autoconfigure: true - Chill\JobBundle\Export\ListCSPerson: + Chill\JobBundle\Export\AddCSPersonToPersonListHelper: tags: - - { name: chill.export, alias: list_CSPerson } + - { name: chill_person.list_person_customizer } Chill\JobBundle\Export\ListCV: tags: From c07a728f1de57a1eca46b893262ee4deb2fd9e07 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 15 May 2024 14:35:51 +0200 Subject: [PATCH 050/136] Wip: add jsonb fields to export --- .../ChillJobBundle/src/Entity/CSPerson.php | 6 +- .../Export/AddCSPersonToPersonListHelper.php | 114 ++++++++---------- 2 files changed, 54 insertions(+), 66 deletions(-) diff --git a/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php b/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php index 579698a64..012cd62c4 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php @@ -113,7 +113,7 @@ class CSPerson 'ASS', 'RSA', 'AAH', - 'autre', +// 'autre', ]; /** @@ -140,7 +140,7 @@ class CSPerson 'referent_RSA', 'mission_locale', 'rqth', - 'autre', +// 'autre', ]; /** @@ -226,7 +226,7 @@ class CSPerson 'scooter', 'velo', 'voiture', - 'autre', +// 'autre', ]; /** diff --git a/src/Bundle/ChillJobBundle/src/Export/AddCSPersonToPersonListHelper.php b/src/Bundle/ChillJobBundle/src/Export/AddCSPersonToPersonListHelper.php index 34f10a1f9..35a1f9b35 100644 --- a/src/Bundle/ChillJobBundle/src/Export/AddCSPersonToPersonListHelper.php +++ b/src/Bundle/ChillJobBundle/src/Export/AddCSPersonToPersonListHelper.php @@ -28,33 +28,37 @@ class AddCSPersonToPersonListHelper implements CustomizeListPersonHelperInterfac { } + private const CSPERSON_JSON_FIELDS = [ + ...CSPerson::RESSOURCES, + ...CSPerson::MOBILITE_MOYEN_TRANSPORT, + ...CSPerson::TYPE_CONTRAT, + ...CSPerson::PERMIS_CONDUIRE, + ...CSPerson::ACCOMPAGNEMENTS, + ...CSPerson::SITUATION_PROFESSIONNELLE, + ...CSPerson::NEET_ELIGIBILITY, + ]; + private const CSPERSON_FIELDS = [ -/* CSPerson::RESSOURCES, - CSPerson::MOBILITE_MOYEN_TRANSPORT, - CSPerson::TYPE_CONTRAT, - CSPerson::PERMIS_CONDUIRE, - CSPerson::ACCOMPAGNEMENTS, - CSPerson::SITUATION_PROFESSIONNELLE, - CSPerson::NEET_ELIGIBILITY,*/ - 'findernieremploidate', + 'dateFinDernierEmploi', /* 'prescripteur__name', 'prescripteur__email', 'prescripteur__phone',*/ - 'poleemploiid', - 'cafid', - 'cafinscriptiondate', - 'contratiejdate', - 'cerinscriptiondate', - 'ppaeinscriptiondate', - 'ppaesignataire', - 'cersignataire', - 'neetcommissiondate', - 'fsemademarchecode', + 'poleEmploiId', + 'cafId', + 'cafInscriptionDate', + 'dateContratIEJ', + 'cERInscriptionDate', + 'pPAEInscriptionDate', + 'pPAESignataire', + 'cERSignataire', + 'nEETCommissionDate', + 'fSEMaDemarcheCode', + 'enfantACharge' ]; public function alterKeys(array $existing): array { - return [...$existing, ...self::CSPERSON_FIELDS]; + return [...$existing, ...self::CSPERSON_FIELDS, ...self::CSPERSON_JSON_FIELDS]; } public function alterSelect(QueryBuilder $qb, \DateTimeImmutable $computedDate): void @@ -63,72 +67,60 @@ class AddCSPersonToPersonListHelper implements CustomizeListPersonHelperInterfac ->leftJoin(CSPerson::class, 'cs_person', Query\Expr\Join::WITH, 'cs_person.person = person'); foreach (self::CSPERSON_FIELDS as $f) { - switch ($f) { - case 'findernieremploidate': - $qb->addSelect('cs_person.dateFinDernierEmploi AS findernieremploidate'); + $qb->addSelect(sprintf('cs_person.%s as %s', $f, $f)); + } + + foreach (self::CSPERSON_JSON_FIELDS as $jf) + { + switch ($jf) { + case in_array($jf, CSPerson::MOBILITE_MOYEN_TRANSPORT): + $qb->addSelect('JSONB_EXISTS_IN_ARRAY(cs_person.mobiliteMoyenDeTransport, :param) AS mobilite_' . $jf) + ->setParameter('param', $jf); break; - case 'poleemploiid': - $qb->addSelect('cs_person.poleEmploiId AS poleemploiid'); + case in_array($jf, CSPerson::TYPE_CONTRAT): + $qb->addSelect('JSONB_EXISTS_IN_ARRAY(cs_person.typeContrat, :param) AS ' . $jf) + ->setParameter('param', $jf); break; - case 'cafid': - $qb->addSelect('cs_person.cafId AS cafid'); + case in_array($jf, CSPerson::ACCOMPAGNEMENTS): + $qb->addSelect('JSONB_EXISTS_IN_ARRAY(cs_person.accompagnement, :param) AS accompagnements_' . $jf) + ->setParameter('param', $jf); break; - case 'cafinscriptiondate': - $qb->addSelect('cs_person.cafInscriptionDate AS cafinscriptiondate'); + case in_array($jf, CSPerson::SITUATION_PROFESSIONNELLE): + $qb->addSelect('JSONB_EXISTS_IN_ARRAY(cs_person.situationProfessionnelle, :param) AS ' . $jf) + ->setParameter('param', $jf); break; - case 'contratiejdate': - $qb->addSelect('cs_person.dateContratIEJ AS contratiejdate'); + case in_array($jf, CSPerson::NEET_ELIGIBILITY): + $qb->addSelect('JSONB_EXISTS_IN_ARRAY(cs_person.nEETEligibilite, :param) AS ' . $jf) + ->setParameter('param', $jf); break; - case 'cerinscriptiondate': - $qb->addSelect('cs_person.cERInscriptionDate AS cerinscriptiondate'); + case in_array($jf, CSPerson::PERMIS_CONDUIRE): + $qb->addSelect('JSONB_EXISTS_IN_ARRAY(cs_person.permisConduire, :param) AS ' . $jf) + ->setParameter('param', $jf); break; - case 'ppaeinscriptiondate': - $qb->addSelect('cs_person.pPAEInscriptionDate AS ppaeinscriptiondate'); + case in_array($jf, CSPerson::RESSOURCES): + $qb->addSelect('JSONB_EXISTS_IN_ARRAY(cs_person.ressources, :param) AS ressources_' . $jf) + ->setParameter('param', $jf); break; - - case 'ppaesignataire': - $qb->addSelect('cs_person.pPAESignataire AS ppaesignataire'); - - break; - - case 'cersignataire': - $qb->addSelect('cs_person.cERSignataire AS cersignataire'); - - break; - - case 'neetcommissiondate': - $qb->addSelect('cs_person.nEETCommissionDate AS neetcommissiondate'); - - break; - - case 'fsemademarchecode': - $qb->addSelect('cs_person.fSEMaDemarcheCode AS fsemademarchecode'); - - break; - - default: - $qb->addSelect(sprintf('person.%s as %s', $f, $f)); - } + } } public function getLabels(string $key, array $values, array $data): ?callable { -// dump('im here'); switch ($key) { case 'cerinscriptiondate': case 'ppaeinscriptiondate': @@ -166,10 +158,6 @@ class AddCSPersonToPersonListHelper implements CustomizeListPersonHelperInterfac }; default: -/* if (!\in_array($key, $this->getAllKeys(), true)) { - throw new \RuntimeException("this key is not supported by this helper: {$key}"); - }*/ - // for fields which are associated with person return function ($value) use ($key) { if ('_header' === $value) { From bff14aa7003450d12917cde93af0ecd3780ceeda Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 15 May 2024 16:02:14 +0200 Subject: [PATCH 051/136] minor last fixes for immersion and remove of dumps --- .../src/ApiHelper/PartenaireRomeAppellation.php | 5 ++--- .../src/Controller/CSCrudReportController.php | 1 - src/Bundle/ChillJobBundle/src/Entity/Immersion.php | 8 ++++---- .../src/Export/AddCSPersonToPersonListHelper.php | 1 - .../src/migrations/Version20240424095147.php | 2 +- 5 files changed, 7 insertions(+), 10 deletions(-) diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php index 8126dd2dc..8711a5028 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php @@ -83,9 +83,8 @@ class PartenaireRomeAppellation ); } catch (ClientException $e) { -dump($e->getResponse()); -dump($e->getRequest()); dump($e->getResponse()->getBody()->getContents()); -} + dump($e->getResponse()->getBody()->getContents()); + } return Utils::jsonDecode((string) $response->getBody()); diff --git a/src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php b/src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php index e52f296cc..6f0cc742c 100644 --- a/src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php +++ b/src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php @@ -79,7 +79,6 @@ class CSCrudReportController extends EntityPersonCRUDController protected function createFormFor(string $action, $entity, ?string $formClass = null, array $formOptions = []): FormInterface { - dump($entity); if ($entity instanceof Immersion) { if ('edit' === $action || 'new' === $action) { return parent::createFormFor($action, $entity, $formClass, [ diff --git a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php index 174375432..1e3b9879e 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php @@ -182,8 +182,8 @@ class Immersion implements \Stringable #[ORM\Column(name: 'savoirEtreNote', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $savoirEtreNote = null; - #[ORM\Column(name: 'noteimmersion', type: \Doctrine\DBAL\Types\Types::TEXT)] - private ?string $noteImmersion = ''; + #[ORM\Column(name: 'noteimmersion', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] + private ?string $noteImmersion = null; #[ORM\Column(name: 'principalesActivites', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $principalesActivites = null; @@ -524,11 +524,11 @@ class Immersion implements \Stringable /** * Get duration. * - * @return \DateInterval */ public function getDuration() { - return new \DateInterval($this->duration); + return $this->duration; +// return new \DateInterval($this->duration ?? 'P7D'); } public function getDateEndComputed() diff --git a/src/Bundle/ChillJobBundle/src/Export/AddCSPersonToPersonListHelper.php b/src/Bundle/ChillJobBundle/src/Export/AddCSPersonToPersonListHelper.php index 34f10a1f9..1e91dbe18 100644 --- a/src/Bundle/ChillJobBundle/src/Export/AddCSPersonToPersonListHelper.php +++ b/src/Bundle/ChillJobBundle/src/Export/AddCSPersonToPersonListHelper.php @@ -128,7 +128,6 @@ class AddCSPersonToPersonListHelper implements CustomizeListPersonHelperInterfac public function getLabels(string $key, array $values, array $data): ?callable { -// dump('im here'); switch ($key) { case 'cerinscriptiondate': case 'ppaeinscriptiondate': diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20240424095147.php b/src/Bundle/ChillJobBundle/src/migrations/Version20240424095147.php index 97b0a376a..4719332d9 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20240424095147.php +++ b/src/Bundle/ChillJobBundle/src/migrations/Version20240424095147.php @@ -57,7 +57,7 @@ final class Version20240424095147 extends AbstractMigration $this->addSql('CREATE TABLE chill_job.cv_formation (id INT NOT NULL, title TEXT NOT NULL, startDate DATE DEFAULT NULL, endDate DATE DEFAULT NULL, diplomaObtained VARCHAR(255) DEFAULT NULL, diplomaReconnue VARCHAR(50) DEFAULT NULL, organisme TEXT DEFAULT NULL, CV_id INT DEFAULT NULL, PRIMARY KEY(id))'); $this->addSql('CREATE INDEX IDX_20BE09E2AE1799D8 ON chill_job.cv_formation (CV_id)'); $this->addSql('CREATE TABLE chill_job.frein (id INT NOT NULL, reportDate DATE NOT NULL, freinsPerso JSON NOT NULL, notesPerso TEXT NOT NULL, freinsEmploi JSON NOT NULL, notesEmploi TEXT NOT NULL, PRIMARY KEY(id))'); - $this->addSql('CREATE TABLE chill_job.immersion (id INT NOT NULL, entreprise_id INT DEFAULT NULL, referent_id INT DEFAULT NULL, domaineActivite TEXT DEFAULT NULL, tuteurName TEXT DEFAULT NULL, tuteurFonction TEXT DEFAULT NULL, tuteurPhoneNumber TEXT DEFAULT NULL, structureAccName TEXT DEFAULT NULL, structureAccPhonenumber TEXT DEFAULT NULL, structureAccEmail TEXT DEFAULT NULL, posteDescriptif TEXT DEFAULT NULL, posteTitle TEXT DEFAULT NULL, posteLieu TEXT DEFAULT NULL, debutDate DATE DEFAULT NULL, duration INTERVAL DEFAULT NULL, horaire TEXT DEFAULT NULL, objectifs JSON DEFAULT NULL, objectifsAutre TEXT DEFAULT NULL, is_bilan_fullfilled BOOLEAN DEFAULT false NOT NULL, savoirEtre JSON DEFAULT NULL, savoirEtreNote TEXT DEFAULT NULL, noteimmersion TEXT NOT NULL, principalesActivites TEXT DEFAULT NULL, competencesAcquises TEXT DEFAULT NULL, competencesADevelopper TEXT DEFAULT NULL, noteBilan TEXT DEFAULT NULL, ponctualite_salarie TEXT DEFAULT NULL, ponctualite_salarie_note TEXT DEFAULT NULL, assiduite TEXT DEFAULT NULL, assiduite_note TEXT DEFAULT NULL, interet_activite TEXT DEFAULT NULL, interet_activite_note TEXT DEFAULT NULL, integre_regle TEXT DEFAULT NULL, integre_regle_note TEXT DEFAULT NULL, esprit_initiative TEXT DEFAULT NULL, esprit_initiative_note TEXT DEFAULT NULL, organisation TEXT DEFAULT NULL, organisation_note TEXT DEFAULT NULL, capacite_travail_equipe TEXT DEFAULT NULL, capacite_travail_equipe_note TEXT DEFAULT NULL, style_vestimentaire TEXT DEFAULT NULL, style_vestimentaire_note TEXT DEFAULT NULL, langage_prof TEXT DEFAULT NULL, langage_prof_note TEXT DEFAULT NULL, applique_consigne TEXT DEFAULT NULL, applique_consigne_note TEXT DEFAULT NULL, respect_hierarchie TEXT DEFAULT NULL, respect_hierarchie_note TEXT DEFAULT NULL, structureAccAddress_id INT DEFAULT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE TABLE chill_job.immersion (id INT NOT NULL, entreprise_id INT DEFAULT NULL, referent_id INT DEFAULT NULL, domaineActivite TEXT DEFAULT NULL, tuteurName TEXT DEFAULT NULL, tuteurFonction TEXT DEFAULT NULL, tuteurPhoneNumber TEXT DEFAULT NULL, structureAccName TEXT DEFAULT NULL, structureAccPhonenumber TEXT DEFAULT NULL, structureAccEmail TEXT DEFAULT NULL, posteDescriptif TEXT DEFAULT NULL, posteTitle TEXT DEFAULT NULL, posteLieu TEXT DEFAULT NULL, debutDate DATE DEFAULT NULL, duration INTERVAL DEFAULT NULL, horaire TEXT DEFAULT NULL, objectifs JSON DEFAULT NULL, objectifsAutre TEXT DEFAULT NULL, is_bilan_fullfilled BOOLEAN DEFAULT false NOT NULL, savoirEtre JSON DEFAULT NULL, savoirEtreNote TEXT DEFAULT NULL, noteimmersion TEXT, principalesActivites TEXT DEFAULT NULL, competencesAcquises TEXT DEFAULT NULL, competencesADevelopper TEXT DEFAULT NULL, noteBilan TEXT DEFAULT NULL, ponctualite_salarie TEXT DEFAULT NULL, ponctualite_salarie_note TEXT DEFAULT NULL, assiduite TEXT DEFAULT NULL, assiduite_note TEXT DEFAULT NULL, interet_activite TEXT DEFAULT NULL, interet_activite_note TEXT DEFAULT NULL, integre_regle TEXT DEFAULT NULL, integre_regle_note TEXT DEFAULT NULL, esprit_initiative TEXT DEFAULT NULL, esprit_initiative_note TEXT DEFAULT NULL, organisation TEXT DEFAULT NULL, organisation_note TEXT DEFAULT NULL, capacite_travail_equipe TEXT DEFAULT NULL, capacite_travail_equipe_note TEXT DEFAULT NULL, style_vestimentaire TEXT DEFAULT NULL, style_vestimentaire_note TEXT DEFAULT NULL, langage_prof TEXT DEFAULT NULL, langage_prof_note TEXT DEFAULT NULL, applique_consigne TEXT DEFAULT NULL, applique_consigne_note TEXT DEFAULT NULL, respect_hierarchie TEXT DEFAULT NULL, respect_hierarchie_note TEXT DEFAULT NULL, structureAccAddress_id INT DEFAULT NULL, PRIMARY KEY(id))'); $this->addSql('CREATE INDEX IDX_FBB3CBB4A4AEAFEA ON chill_job.immersion (entreprise_id)'); $this->addSql('CREATE INDEX IDX_FBB3CBB435E47E35 ON chill_job.immersion (referent_id)'); $this->addSql('CREATE INDEX IDX_FBB3CBB4B5E04267 ON chill_job.immersion (structureAccAddress_id)'); From cad2dea148b0a212121d4b092565437931e025ea Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 15 May 2024 14:35:51 +0200 Subject: [PATCH 052/136] Wip: add jsonb fields to export --- .../ChillJobBundle/src/Entity/CSPerson.php | 6 +- .../Export/AddCSPersonToPersonListHelper.php | 113 ++++++++---------- 2 files changed, 54 insertions(+), 65 deletions(-) diff --git a/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php b/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php index 579698a64..012cd62c4 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php @@ -113,7 +113,7 @@ class CSPerson 'ASS', 'RSA', 'AAH', - 'autre', +// 'autre', ]; /** @@ -140,7 +140,7 @@ class CSPerson 'referent_RSA', 'mission_locale', 'rqth', - 'autre', +// 'autre', ]; /** @@ -226,7 +226,7 @@ class CSPerson 'scooter', 'velo', 'voiture', - 'autre', +// 'autre', ]; /** diff --git a/src/Bundle/ChillJobBundle/src/Export/AddCSPersonToPersonListHelper.php b/src/Bundle/ChillJobBundle/src/Export/AddCSPersonToPersonListHelper.php index 1e91dbe18..35a1f9b35 100644 --- a/src/Bundle/ChillJobBundle/src/Export/AddCSPersonToPersonListHelper.php +++ b/src/Bundle/ChillJobBundle/src/Export/AddCSPersonToPersonListHelper.php @@ -28,33 +28,37 @@ class AddCSPersonToPersonListHelper implements CustomizeListPersonHelperInterfac { } + private const CSPERSON_JSON_FIELDS = [ + ...CSPerson::RESSOURCES, + ...CSPerson::MOBILITE_MOYEN_TRANSPORT, + ...CSPerson::TYPE_CONTRAT, + ...CSPerson::PERMIS_CONDUIRE, + ...CSPerson::ACCOMPAGNEMENTS, + ...CSPerson::SITUATION_PROFESSIONNELLE, + ...CSPerson::NEET_ELIGIBILITY, + ]; + private const CSPERSON_FIELDS = [ -/* CSPerson::RESSOURCES, - CSPerson::MOBILITE_MOYEN_TRANSPORT, - CSPerson::TYPE_CONTRAT, - CSPerson::PERMIS_CONDUIRE, - CSPerson::ACCOMPAGNEMENTS, - CSPerson::SITUATION_PROFESSIONNELLE, - CSPerson::NEET_ELIGIBILITY,*/ - 'findernieremploidate', + 'dateFinDernierEmploi', /* 'prescripteur__name', 'prescripteur__email', 'prescripteur__phone',*/ - 'poleemploiid', - 'cafid', - 'cafinscriptiondate', - 'contratiejdate', - 'cerinscriptiondate', - 'ppaeinscriptiondate', - 'ppaesignataire', - 'cersignataire', - 'neetcommissiondate', - 'fsemademarchecode', + 'poleEmploiId', + 'cafId', + 'cafInscriptionDate', + 'dateContratIEJ', + 'cERInscriptionDate', + 'pPAEInscriptionDate', + 'pPAESignataire', + 'cERSignataire', + 'nEETCommissionDate', + 'fSEMaDemarcheCode', + 'enfantACharge' ]; public function alterKeys(array $existing): array { - return [...$existing, ...self::CSPERSON_FIELDS]; + return [...$existing, ...self::CSPERSON_FIELDS, ...self::CSPERSON_JSON_FIELDS]; } public function alterSelect(QueryBuilder $qb, \DateTimeImmutable $computedDate): void @@ -63,66 +67,55 @@ class AddCSPersonToPersonListHelper implements CustomizeListPersonHelperInterfac ->leftJoin(CSPerson::class, 'cs_person', Query\Expr\Join::WITH, 'cs_person.person = person'); foreach (self::CSPERSON_FIELDS as $f) { - switch ($f) { - case 'findernieremploidate': - $qb->addSelect('cs_person.dateFinDernierEmploi AS findernieremploidate'); + $qb->addSelect(sprintf('cs_person.%s as %s', $f, $f)); + } + + foreach (self::CSPERSON_JSON_FIELDS as $jf) + { + switch ($jf) { + case in_array($jf, CSPerson::MOBILITE_MOYEN_TRANSPORT): + $qb->addSelect('JSONB_EXISTS_IN_ARRAY(cs_person.mobiliteMoyenDeTransport, :param) AS mobilite_' . $jf) + ->setParameter('param', $jf); break; - case 'poleemploiid': - $qb->addSelect('cs_person.poleEmploiId AS poleemploiid'); + case in_array($jf, CSPerson::TYPE_CONTRAT): + $qb->addSelect('JSONB_EXISTS_IN_ARRAY(cs_person.typeContrat, :param) AS ' . $jf) + ->setParameter('param', $jf); break; - case 'cafid': - $qb->addSelect('cs_person.cafId AS cafid'); + case in_array($jf, CSPerson::ACCOMPAGNEMENTS): + $qb->addSelect('JSONB_EXISTS_IN_ARRAY(cs_person.accompagnement, :param) AS accompagnements_' . $jf) + ->setParameter('param', $jf); break; - case 'cafinscriptiondate': - $qb->addSelect('cs_person.cafInscriptionDate AS cafinscriptiondate'); + case in_array($jf, CSPerson::SITUATION_PROFESSIONNELLE): + $qb->addSelect('JSONB_EXISTS_IN_ARRAY(cs_person.situationProfessionnelle, :param) AS ' . $jf) + ->setParameter('param', $jf); break; - case 'contratiejdate': - $qb->addSelect('cs_person.dateContratIEJ AS contratiejdate'); + case in_array($jf, CSPerson::NEET_ELIGIBILITY): + $qb->addSelect('JSONB_EXISTS_IN_ARRAY(cs_person.nEETEligibilite, :param) AS ' . $jf) + ->setParameter('param', $jf); break; - case 'cerinscriptiondate': - $qb->addSelect('cs_person.cERInscriptionDate AS cerinscriptiondate'); + case in_array($jf, CSPerson::PERMIS_CONDUIRE): + $qb->addSelect('JSONB_EXISTS_IN_ARRAY(cs_person.permisConduire, :param) AS ' . $jf) + ->setParameter('param', $jf); break; - case 'ppaeinscriptiondate': - $qb->addSelect('cs_person.pPAEInscriptionDate AS ppaeinscriptiondate'); + case in_array($jf, CSPerson::RESSOURCES): + $qb->addSelect('JSONB_EXISTS_IN_ARRAY(cs_person.ressources, :param) AS ressources_' . $jf) + ->setParameter('param', $jf); break; - - case 'ppaesignataire': - $qb->addSelect('cs_person.pPAESignataire AS ppaesignataire'); - - break; - - case 'cersignataire': - $qb->addSelect('cs_person.cERSignataire AS cersignataire'); - - break; - - case 'neetcommissiondate': - $qb->addSelect('cs_person.nEETCommissionDate AS neetcommissiondate'); - - break; - - case 'fsemademarchecode': - $qb->addSelect('cs_person.fSEMaDemarcheCode AS fsemademarchecode'); - - break; - - default: - $qb->addSelect(sprintf('person.%s as %s', $f, $f)); - } + } } @@ -165,10 +158,6 @@ class AddCSPersonToPersonListHelper implements CustomizeListPersonHelperInterfac }; default: -/* if (!\in_array($key, $this->getAllKeys(), true)) { - throw new \RuntimeException("this key is not supported by this helper: {$key}"); - }*/ - // for fields which are associated with person return function ($value) use ($key) { if ('_header' === $value) { From 7d309136b174c6d2969f8e0cf402f80cf56295db Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 15 May 2024 16:02:14 +0200 Subject: [PATCH 053/136] minor last fixes for immersion and remove of dumps --- .../src/ApiHelper/PartenaireRomeAppellation.php | 5 ++--- .../src/Controller/CSCrudReportController.php | 1 - src/Bundle/ChillJobBundle/src/Entity/Immersion.php | 8 ++++---- .../src/migrations/Version20240424095147.php | 2 +- 4 files changed, 7 insertions(+), 9 deletions(-) diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php index 8126dd2dc..8711a5028 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php @@ -83,9 +83,8 @@ class PartenaireRomeAppellation ); } catch (ClientException $e) { -dump($e->getResponse()); -dump($e->getRequest()); dump($e->getResponse()->getBody()->getContents()); -} + dump($e->getResponse()->getBody()->getContents()); + } return Utils::jsonDecode((string) $response->getBody()); diff --git a/src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php b/src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php index e52f296cc..6f0cc742c 100644 --- a/src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php +++ b/src/Bundle/ChillJobBundle/src/Controller/CSCrudReportController.php @@ -79,7 +79,6 @@ class CSCrudReportController extends EntityPersonCRUDController protected function createFormFor(string $action, $entity, ?string $formClass = null, array $formOptions = []): FormInterface { - dump($entity); if ($entity instanceof Immersion) { if ('edit' === $action || 'new' === $action) { return parent::createFormFor($action, $entity, $formClass, [ diff --git a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php index 174375432..1e3b9879e 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php @@ -182,8 +182,8 @@ class Immersion implements \Stringable #[ORM\Column(name: 'savoirEtreNote', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $savoirEtreNote = null; - #[ORM\Column(name: 'noteimmersion', type: \Doctrine\DBAL\Types\Types::TEXT)] - private ?string $noteImmersion = ''; + #[ORM\Column(name: 'noteimmersion', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] + private ?string $noteImmersion = null; #[ORM\Column(name: 'principalesActivites', type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] private ?string $principalesActivites = null; @@ -524,11 +524,11 @@ class Immersion implements \Stringable /** * Get duration. * - * @return \DateInterval */ public function getDuration() { - return new \DateInterval($this->duration); + return $this->duration; +// return new \DateInterval($this->duration ?? 'P7D'); } public function getDateEndComputed() diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20240424095147.php b/src/Bundle/ChillJobBundle/src/migrations/Version20240424095147.php index 97b0a376a..4719332d9 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20240424095147.php +++ b/src/Bundle/ChillJobBundle/src/migrations/Version20240424095147.php @@ -57,7 +57,7 @@ final class Version20240424095147 extends AbstractMigration $this->addSql('CREATE TABLE chill_job.cv_formation (id INT NOT NULL, title TEXT NOT NULL, startDate DATE DEFAULT NULL, endDate DATE DEFAULT NULL, diplomaObtained VARCHAR(255) DEFAULT NULL, diplomaReconnue VARCHAR(50) DEFAULT NULL, organisme TEXT DEFAULT NULL, CV_id INT DEFAULT NULL, PRIMARY KEY(id))'); $this->addSql('CREATE INDEX IDX_20BE09E2AE1799D8 ON chill_job.cv_formation (CV_id)'); $this->addSql('CREATE TABLE chill_job.frein (id INT NOT NULL, reportDate DATE NOT NULL, freinsPerso JSON NOT NULL, notesPerso TEXT NOT NULL, freinsEmploi JSON NOT NULL, notesEmploi TEXT NOT NULL, PRIMARY KEY(id))'); - $this->addSql('CREATE TABLE chill_job.immersion (id INT NOT NULL, entreprise_id INT DEFAULT NULL, referent_id INT DEFAULT NULL, domaineActivite TEXT DEFAULT NULL, tuteurName TEXT DEFAULT NULL, tuteurFonction TEXT DEFAULT NULL, tuteurPhoneNumber TEXT DEFAULT NULL, structureAccName TEXT DEFAULT NULL, structureAccPhonenumber TEXT DEFAULT NULL, structureAccEmail TEXT DEFAULT NULL, posteDescriptif TEXT DEFAULT NULL, posteTitle TEXT DEFAULT NULL, posteLieu TEXT DEFAULT NULL, debutDate DATE DEFAULT NULL, duration INTERVAL DEFAULT NULL, horaire TEXT DEFAULT NULL, objectifs JSON DEFAULT NULL, objectifsAutre TEXT DEFAULT NULL, is_bilan_fullfilled BOOLEAN DEFAULT false NOT NULL, savoirEtre JSON DEFAULT NULL, savoirEtreNote TEXT DEFAULT NULL, noteimmersion TEXT NOT NULL, principalesActivites TEXT DEFAULT NULL, competencesAcquises TEXT DEFAULT NULL, competencesADevelopper TEXT DEFAULT NULL, noteBilan TEXT DEFAULT NULL, ponctualite_salarie TEXT DEFAULT NULL, ponctualite_salarie_note TEXT DEFAULT NULL, assiduite TEXT DEFAULT NULL, assiduite_note TEXT DEFAULT NULL, interet_activite TEXT DEFAULT NULL, interet_activite_note TEXT DEFAULT NULL, integre_regle TEXT DEFAULT NULL, integre_regle_note TEXT DEFAULT NULL, esprit_initiative TEXT DEFAULT NULL, esprit_initiative_note TEXT DEFAULT NULL, organisation TEXT DEFAULT NULL, organisation_note TEXT DEFAULT NULL, capacite_travail_equipe TEXT DEFAULT NULL, capacite_travail_equipe_note TEXT DEFAULT NULL, style_vestimentaire TEXT DEFAULT NULL, style_vestimentaire_note TEXT DEFAULT NULL, langage_prof TEXT DEFAULT NULL, langage_prof_note TEXT DEFAULT NULL, applique_consigne TEXT DEFAULT NULL, applique_consigne_note TEXT DEFAULT NULL, respect_hierarchie TEXT DEFAULT NULL, respect_hierarchie_note TEXT DEFAULT NULL, structureAccAddress_id INT DEFAULT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE TABLE chill_job.immersion (id INT NOT NULL, entreprise_id INT DEFAULT NULL, referent_id INT DEFAULT NULL, domaineActivite TEXT DEFAULT NULL, tuteurName TEXT DEFAULT NULL, tuteurFonction TEXT DEFAULT NULL, tuteurPhoneNumber TEXT DEFAULT NULL, structureAccName TEXT DEFAULT NULL, structureAccPhonenumber TEXT DEFAULT NULL, structureAccEmail TEXT DEFAULT NULL, posteDescriptif TEXT DEFAULT NULL, posteTitle TEXT DEFAULT NULL, posteLieu TEXT DEFAULT NULL, debutDate DATE DEFAULT NULL, duration INTERVAL DEFAULT NULL, horaire TEXT DEFAULT NULL, objectifs JSON DEFAULT NULL, objectifsAutre TEXT DEFAULT NULL, is_bilan_fullfilled BOOLEAN DEFAULT false NOT NULL, savoirEtre JSON DEFAULT NULL, savoirEtreNote TEXT DEFAULT NULL, noteimmersion TEXT, principalesActivites TEXT DEFAULT NULL, competencesAcquises TEXT DEFAULT NULL, competencesADevelopper TEXT DEFAULT NULL, noteBilan TEXT DEFAULT NULL, ponctualite_salarie TEXT DEFAULT NULL, ponctualite_salarie_note TEXT DEFAULT NULL, assiduite TEXT DEFAULT NULL, assiduite_note TEXT DEFAULT NULL, interet_activite TEXT DEFAULT NULL, interet_activite_note TEXT DEFAULT NULL, integre_regle TEXT DEFAULT NULL, integre_regle_note TEXT DEFAULT NULL, esprit_initiative TEXT DEFAULT NULL, esprit_initiative_note TEXT DEFAULT NULL, organisation TEXT DEFAULT NULL, organisation_note TEXT DEFAULT NULL, capacite_travail_equipe TEXT DEFAULT NULL, capacite_travail_equipe_note TEXT DEFAULT NULL, style_vestimentaire TEXT DEFAULT NULL, style_vestimentaire_note TEXT DEFAULT NULL, langage_prof TEXT DEFAULT NULL, langage_prof_note TEXT DEFAULT NULL, applique_consigne TEXT DEFAULT NULL, applique_consigne_note TEXT DEFAULT NULL, respect_hierarchie TEXT DEFAULT NULL, respect_hierarchie_note TEXT DEFAULT NULL, structureAccAddress_id INT DEFAULT NULL, PRIMARY KEY(id))'); $this->addSql('CREATE INDEX IDX_FBB3CBB4A4AEAFEA ON chill_job.immersion (entreprise_id)'); $this->addSql('CREATE INDEX IDX_FBB3CBB435E47E35 ON chill_job.immersion (referent_id)'); $this->addSql('CREATE INDEX IDX_FBB3CBB4B5E04267 ON chill_job.immersion (structureAccAddress_id)'); From 2708bafb1fabc9558e7b2fc420fdcde88f7ae473 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 22 May 2024 15:24:39 +0200 Subject: [PATCH 054/136] Export for list person with cs_person columns fixed --- .../ChillJobBundle/src/Entity/CSPerson.php | 6 +- .../Export/AddCSPersonToPersonListHelper.php | 223 ++++++++++-------- .../Resources/translations/messages.fr.yml | 43 ++++ .../src/migrations/Version20240424095147.php | 10 +- 4 files changed, 179 insertions(+), 103 deletions(-) diff --git a/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php b/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php index 012cd62c4..579698a64 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php @@ -113,7 +113,7 @@ class CSPerson 'ASS', 'RSA', 'AAH', -// 'autre', + 'autre', ]; /** @@ -140,7 +140,7 @@ class CSPerson 'referent_RSA', 'mission_locale', 'rqth', -// 'autre', + 'autre', ]; /** @@ -226,7 +226,7 @@ class CSPerson 'scooter', 'velo', 'voiture', -// 'autre', + 'autre', ]; /** diff --git a/src/Bundle/ChillJobBundle/src/Export/AddCSPersonToPersonListHelper.php b/src/Bundle/ChillJobBundle/src/Export/AddCSPersonToPersonListHelper.php index 35a1f9b35..b05b22be4 100644 --- a/src/Bundle/ChillJobBundle/src/Export/AddCSPersonToPersonListHelper.php +++ b/src/Bundle/ChillJobBundle/src/Export/AddCSPersonToPersonListHelper.php @@ -28,16 +28,6 @@ class AddCSPersonToPersonListHelper implements CustomizeListPersonHelperInterfac { } - private const CSPERSON_JSON_FIELDS = [ - ...CSPerson::RESSOURCES, - ...CSPerson::MOBILITE_MOYEN_TRANSPORT, - ...CSPerson::TYPE_CONTRAT, - ...CSPerson::PERMIS_CONDUIRE, - ...CSPerson::ACCOMPAGNEMENTS, - ...CSPerson::SITUATION_PROFESSIONNELLE, - ...CSPerson::NEET_ELIGIBILITY, - ]; - private const CSPERSON_FIELDS = [ 'dateFinDernierEmploi', /* 'prescripteur__name', @@ -53,12 +43,28 @@ class AddCSPersonToPersonListHelper implements CustomizeListPersonHelperInterfac 'cERSignataire', 'nEETCommissionDate', 'fSEMaDemarcheCode', - 'enfantACharge' + 'enfantACharge', + 'nEETEligibilite', + 'situationProfessionnelle', ]; public function alterKeys(array $existing): array { - return [...$existing, ...self::CSPERSON_FIELDS, ...self::CSPERSON_JSON_FIELDS]; + $ressources = array_map(static fn ($key) => 'ressources__' . $key, CSPerson::RESSOURCES); + $moyenTransport = array_map(static fn ($key) => 'moyen_transport__' . $key, CSPerson::MOBILITE_MOYEN_TRANSPORT); + $accompagnements = array_map(static fn ($key) => 'accompagnements__' . $key, CSPerson::ACCOMPAGNEMENTS); + $permisConduire = array_map(static fn ($key) => 'permis_conduire__' . $key, CSPerson::PERMIS_CONDUIRE); + $typeContrat = array_map(static fn ($key) => 'type_contrat__' . $key, CSPerson::TYPE_CONTRAT); + + return [ + ...$existing, + ...self::CSPERSON_FIELDS, + ...$ressources, + ...$moyenTransport, + ...$accompagnements, + ...$permisConduire, + ...$typeContrat, + ]; } public function alterSelect(QueryBuilder $qb, \DateTimeImmutable $computedDate): void @@ -70,102 +76,129 @@ class AddCSPersonToPersonListHelper implements CustomizeListPersonHelperInterfac $qb->addSelect(sprintf('cs_person.%s as %s', $f, $f)); } - foreach (self::CSPERSON_JSON_FIELDS as $jf) +/* $qb->addSelect('cs_person.situationProfessionnelle as situation_prof'); + + $qb->addSelect('cs_person.nEETEligibilite as nEETEligibilite');*/ + + $i = 0; + + foreach (CSPerson::RESSOURCES as $key) { - switch ($jf) { - case in_array($jf, CSPerson::MOBILITE_MOYEN_TRANSPORT): - $qb->addSelect('JSONB_EXISTS_IN_ARRAY(cs_person.mobiliteMoyenDeTransport, :param) AS mobilite_' . $jf) - ->setParameter('param', $jf); - - break; - - case in_array($jf, CSPerson::TYPE_CONTRAT): - $qb->addSelect('JSONB_EXISTS_IN_ARRAY(cs_person.typeContrat, :param) AS ' . $jf) - ->setParameter('param', $jf); - - break; - - case in_array($jf, CSPerson::ACCOMPAGNEMENTS): - $qb->addSelect('JSONB_EXISTS_IN_ARRAY(cs_person.accompagnement, :param) AS accompagnements_' . $jf) - ->setParameter('param', $jf); - - break; - - case in_array($jf, CSPerson::SITUATION_PROFESSIONNELLE): - $qb->addSelect('JSONB_EXISTS_IN_ARRAY(cs_person.situationProfessionnelle, :param) AS ' . $jf) - ->setParameter('param', $jf); - - break; - - case in_array($jf, CSPerson::NEET_ELIGIBILITY): - $qb->addSelect('JSONB_EXISTS_IN_ARRAY(cs_person.nEETEligibilite, :param) AS ' . $jf) - ->setParameter('param', $jf); - - break; - - case in_array($jf, CSPerson::PERMIS_CONDUIRE): - $qb->addSelect('JSONB_EXISTS_IN_ARRAY(cs_person.permisConduire, :param) AS ' . $jf) - ->setParameter('param', $jf); - - break; - - case in_array($jf, CSPerson::RESSOURCES): - $qb->addSelect('JSONB_EXISTS_IN_ARRAY(cs_person.ressources, :param) AS ressources_' . $jf) - ->setParameter('param', $jf); - - break; - } - + $qb->addSelect("JSONB_EXISTS_IN_ARRAY(cs_person.ressources, :param_$i) AS ressources__" . $key) + ->setParameter('param_'.$i, $key); + ++$i; } + + foreach(CSPerson::MOBILITE_MOYEN_TRANSPORT as $key) + { + $qb->addSelect("JSONB_EXISTS_IN_ARRAY(cs_person.mobiliteMoyenDeTransport, :param_$i) AS moyen_transport__" . $key) + ->setParameter('param_'.$i, $key); + ++$i; + } + + foreach(CSPerson::TYPE_CONTRAT as $key) + { + $qb->addSelect("JSONB_EXISTS_IN_ARRAY(cs_person.typeContrat, :param_$i) AS type_contrat__" . $key) + ->setParameter('param_'.$i, $key); + ++$i; + } + + foreach (CSPerson::ACCOMPAGNEMENTS as $key) + { + $qb->addSelect("JSONB_EXISTS_IN_ARRAY(cs_person.accompagnement, :param_$i) AS accompagnements__" . $key) + ->setParameter('param_'.$i, $key); + ++$i; + } + + foreach (CSPerson::PERMIS_CONDUIRE as $key) + { + $qb->addSelect("JSONB_EXISTS_IN_ARRAY(cs_person.permisConduire, :param_$i) AS permis_conduire__" . $key) + ->setParameter('param_'.$i, $key); + ++$i; + } + } public function getLabels(string $key, array $values, array $data): ?callable { - switch ($key) { - case 'cerinscriptiondate': - case 'ppaeinscriptiondate': - case 'neetcommissiondate': - case 'findernieremploidate': - case 'cafinscriptiondate': - case 'contratiejdate': - return function ($value) use ($key) { - if ('_header' === $value) { - return $this->translator->trans($key); - } + switch ($key) { + case str_contains($key, '__'): + return function (string|bool|null $value) use ($key): string { + if ('_header' === $value) { + [$domain, $v] = explode('__', $key); + return 'export.list.cs_person.' . $domain . '.' . $v; + } + + if ('1' === $value || true === $value || 1 === $value || 't' === $value) { + return 'x'; + } - if (null === $value) { return ''; - } - // warning: won't work with DateTimeImmutable as we reset time a few lines later - $date = \DateTime::createFromFormat('Y-m-d', $value); - $hasTime = false; + }; + case 'nEETEligibilite': + return function (string|bool|null $value) use ($key): string { + if ('_header' === $value) { + return 'export.list.cs_person.neet_eligibility'; + } - if (false === $date) { - $date = \DateTime::createFromFormat('Y-m-d H:i:s', $value); - $hasTime = true; - } + if ('1' === $value || true === $value || 1 === $value || 't' === $value) { + return 'x'; + } - // check that the creation could occur. - if (false === $date) { - throw new \Exception(sprintf('The value %s could not be converted to %s', $value, \DateTime::class)); - } + return ''; + }; + case 'situationProfessionnelle': + return function ($value) use ($key) { + if ('_header' === $value) { + return 'export.list.cs_person.situation_professionelle'; + } - if (!$hasTime) { - $date->setTime(0, 0, 0); - } + return $value; + }; + case 'cerinscriptiondate': + case 'ppaeinscriptiondate': + case 'neetcommissiondate': + case 'findernieremploidate': + case 'cafinscriptiondate': + case 'contratiejdate': + return function ($value) use ($key) { + if ('_header' === $value) { + return $this->translator->trans($key); + } - return $date; - }; + if (null === $value) { + return ''; + } + // warning: won't work with DateTimeImmutable as we reset time a few lines later + $date = \DateTime::createFromFormat('Y-m-d', $value); + $hasTime = false; - default: - // for fields which are associated with person - return function ($value) use ($key) { - if ('_header' === $value) { - return $this->translator->trans($key); - } + if (false === $date) { + $date = \DateTime::createFromFormat('Y-m-d H:i:s', $value); + $hasTime = true; + } - return $value; - }; - } + // check that the creation could occur. + if (false === $date) { + throw new \Exception(sprintf('The value %s could not be converted to %s', $value, \DateTime::class)); + } + + if (!$hasTime) { + $date->setTime(0, 0, 0); + } + + return $date; + }; + + default: + // for fields which are associated with person + return function ($value) use ($key) { + if ('_header' === $value) { + return $this->translator->trans($key); + } + + return $value; + }; + } } } diff --git a/src/Bundle/ChillJobBundle/src/Resources/translations/messages.fr.yml b/src/Bundle/ChillJobBundle/src/Resources/translations/messages.fr.yml index 4c8571428..06b35ddcf 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/translations/messages.fr.yml +++ b/src/Bundle/ChillJobBundle/src/Resources/translations/messages.fr.yml @@ -253,3 +253,46 @@ CHILL_JOB_REPORT_CV: Création et modification des rapports emploi (CV uniquemen CHILL_JOB_EXPORTS: Exports emploi JobBundle: Emploi + +export: + list: + cs_person: + ressources: + salaires: 'Ressources: salaires' + ARE: 'Ressources: ARE' + ASS: 'Ressources: ASS' + RSA: 'Ressources: RSA' + AAH: 'Ressources: AAH' + autre: 'Ressources: autre' + moyen_transport: + transport_commun: 'Moyen transport: transport commun' + scooter: 'Moyen transport: scooter' + velo: 'Moyen transport: vélo' + voiture: 'Moyen transport: voiture' + autre: 'Moyen transport: autre' + accompagnements: + plie: 'Accompagnement: plie' + pole_emploi: 'Accompagnement: pôle emploi' + referent_RSA: 'Accompagnement: ' + mission_locale: 'Accompagnement: ' + rqth: 'Accompagnement: ' + autre: 'Accompagnement: ' + permis_conduire: + a: 'Permis de conduire: A' + b: 'Permis de conduire: B' + c: 'Permis de conduire: C' + d: 'Permis de conduire: D' + e: 'Permis de conduire: E' + caces: 'Permis de conduire: caces' + en_cours: 'Permis de conduire: en cours' + pas_de_permis: 'Pas de permis de conduire' + type_contrat: + cdd: 'Type de contrat: cdd' + cdi: 'Type de contrat: cdi' + contrat_interim: 'Type de contrat: interim' + contrat_aide: 'Type de contrat: aide' + cdd_insertion: 'Type de contrat: cdd insertion' + contrat_extra: 'Type de contrat: contrat extra' + service_civique: 'Type de contrat: service civique' + neet_eligibility: 'NEET eligibilité' + situation_professionelle: 'Situation professionelle' diff --git a/src/Bundle/ChillJobBundle/src/migrations/Version20240424095147.php b/src/Bundle/ChillJobBundle/src/migrations/Version20240424095147.php index 4719332d9..dd4b98c11 100644 --- a/src/Bundle/ChillJobBundle/src/migrations/Version20240424095147.php +++ b/src/Bundle/ChillJobBundle/src/migrations/Version20240424095147.php @@ -32,7 +32,7 @@ final class Version20240424095147 extends AbstractMigration $this->addSql('CREATE SEQUENCE chill_job.projet_professionnel_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); $this->addSql('CREATE SEQUENCE chill_job.rome_appellation_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); $this->addSql('CREATE SEQUENCE chill_job.rome_metier_id_seq INCREMENT BY 1 MINVALUE 1 START 1'); - $this->addSql('CREATE TABLE chill_job.cs_person (id INT NOT NULL, person_id INT DEFAULT NULL, prescripteur_id INT DEFAULT NULL, situationLogement VARCHAR(255) DEFAULT NULL, situationLogementPrecision TEXT DEFAULT NULL, enfantACharge INT DEFAULT NULL, niveauMaitriseLangue JSON DEFAULT NULL, vehiculePersonnel BOOLEAN DEFAULT NULL, permisConduire JSON DEFAULT NULL, situationProfessionnelle VARCHAR(255) DEFAULT NULL, dateFinDernierEmploi DATE DEFAULT NULL, typeContrat JSON DEFAULT NULL, typeContratAide TEXT DEFAULT NULL, ressources JSON DEFAULT NULL, ressourcesComment TEXT DEFAULT NULL, ressourceDate1Versement DATE DEFAULT NULL, CPFMontant NUMERIC(10, 2) DEFAULT NULL, acomptedif NUMERIC(10, 2) DEFAULT NULL, accompagnement JSON DEFAULT NULL, accompagnementRQTHDate DATE DEFAULT NULL, accompagnementComment VARCHAR(255) DEFAULT NULL, poleEmploiId VARCHAR(255) DEFAULT NULL, poleEmploiInscriptionDate DATE DEFAULT NULL, cafId VARCHAR(255) DEFAULT NULL, cafInscriptionDate DATE DEFAULT NULL, CERInscriptionDate DATE DEFAULT NULL, PPAEInscriptionDate DATE DEFAULT NULL, CERSignataire TEXT DEFAULT NULL, PPAESignataire TEXT DEFAULT NULL, NEETEligibilite VARCHAR(255) DEFAULT NULL, NEETCommissionDate DATE DEFAULT NULL, FSEMaDemarcheCode TEXT DEFAULT NULL, datecontratIEJ DATE DEFAULT NULL, dateavenantIEJ DATE DEFAULT NULL, dispositifs_notes TEXT DEFAULT NULL, handicap BOOLEAN DEFAULT NULL, handicapnotes TEXT DEFAULT NULL, handicapRecommandation VARCHAR(50) DEFAULT NULL, mobilitemoyentransport JSON DEFAULT NULL, mobilitenotes TEXT DEFAULT NULL, handicapAccompagnement_id INT DEFAULT NULL, documentCV_id INT DEFAULT NULL, documentAgrementIAE_id INT DEFAULT NULL, documentRQTH_id INT DEFAULT NULL, documentAttestationNEET_id INT DEFAULT NULL, documentCI_id INT DEFAULT NULL, documentTitreSejour_id INT DEFAULT NULL, documentAttestationFiscale_id INT DEFAULT NULL, documentPermis_id INT DEFAULT NULL, documentAttestationCAAF_id INT DEFAULT NULL, documentContraTravail_id INT DEFAULT NULL, documentAttestationFormation_id INT DEFAULT NULL, documentQuittanceLoyer_id INT DEFAULT NULL, documentFactureElectricite_id INT DEFAULT NULL, documentAttestationSecuriteSociale_id INT DEFAULT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE TABLE chill_job.cs_person (id INT NOT NULL, person_id INT DEFAULT NULL, prescripteur_id INT DEFAULT NULL, situationLogement VARCHAR(255) DEFAULT NULL, situationLogementPrecision TEXT DEFAULT NULL, enfantACharge INT DEFAULT NULL, niveauMaitriseLangue JSONB DEFAULT NULL, vehiculePersonnel BOOLEAN DEFAULT NULL, permisConduire JSONB DEFAULT NULL, situationProfessionnelle VARCHAR(255) DEFAULT NULL, dateFinDernierEmploi DATE DEFAULT NULL, typeContrat JSONB DEFAULT NULL, typeContratAide TEXT DEFAULT NULL, ressources JSONB DEFAULT NULL, ressourcesComment TEXT DEFAULT NULL, ressourceDate1Versement DATE DEFAULT NULL, CPFMontant NUMERIC(10, 2) DEFAULT NULL, acomptedif NUMERIC(10, 2) DEFAULT NULL, accompagnement JSONB DEFAULT NULL, accompagnementRQTHDate DATE DEFAULT NULL, accompagnementComment VARCHAR(255) DEFAULT NULL, poleEmploiId VARCHAR(255) DEFAULT NULL, poleEmploiInscriptionDate DATE DEFAULT NULL, cafId VARCHAR(255) DEFAULT NULL, cafInscriptionDate DATE DEFAULT NULL, CERInscriptionDate DATE DEFAULT NULL, PPAEInscriptionDate DATE DEFAULT NULL, CERSignataire TEXT DEFAULT NULL, PPAESignataire TEXT DEFAULT NULL, NEETEligibilite VARCHAR(255) DEFAULT NULL, NEETCommissionDate DATE DEFAULT NULL, FSEMaDemarcheCode TEXT DEFAULT NULL, datecontratIEJ DATE DEFAULT NULL, dateavenantIEJ DATE DEFAULT NULL, dispositifs_notes TEXT DEFAULT NULL, handicap BOOLEAN DEFAULT NULL, handicapnotes TEXT DEFAULT NULL, handicapRecommandation VARCHAR(50) DEFAULT NULL, mobilitemoyentransport JSONB DEFAULT NULL, mobilitenotes TEXT DEFAULT NULL, handicapAccompagnement_id INT DEFAULT NULL, documentCV_id INT DEFAULT NULL, documentAgrementIAE_id INT DEFAULT NULL, documentRQTH_id INT DEFAULT NULL, documentAttestationNEET_id INT DEFAULT NULL, documentCI_id INT DEFAULT NULL, documentTitreSejour_id INT DEFAULT NULL, documentAttestationFiscale_id INT DEFAULT NULL, documentPermis_id INT DEFAULT NULL, documentAttestationCAAF_id INT DEFAULT NULL, documentContraTravail_id INT DEFAULT NULL, documentAttestationFormation_id INT DEFAULT NULL, documentQuittanceLoyer_id INT DEFAULT NULL, documentFactureElectricite_id INT DEFAULT NULL, documentAttestationSecuriteSociale_id INT DEFAULT NULL, PRIMARY KEY(id))'); $this->addSql('CREATE UNIQUE INDEX UNIQ_10864F31217BBB47 ON chill_job.cs_person (person_id)'); $this->addSql('CREATE INDEX IDX_10864F312654B57D ON chill_job.cs_person (handicapAccompagnement_id)'); $this->addSql('CREATE INDEX IDX_10864F3154866550 ON chill_job.cs_person (documentCV_id)'); @@ -50,19 +50,19 @@ final class Version20240424095147 extends AbstractMigration $this->addSql('CREATE INDEX IDX_10864F31AC39B1B ON chill_job.cs_person (documentFactureElectricite_id)'); $this->addSql('CREATE INDEX IDX_10864F3172A75B6D ON chill_job.cs_person (documentAttestationSecuriteSociale_id)'); $this->addSql('CREATE INDEX IDX_10864F31D486E642 ON chill_job.cs_person (prescripteur_id)'); - $this->addSql('CREATE TABLE chill_job.cv (id INT NOT NULL, person_id INT DEFAULT NULL, reportDate DATE NOT NULL, formationLevel VARCHAR(255) DEFAULT NULL, formationType VARCHAR(255) DEFAULT NULL, spokenLanguages JSON DEFAULT NULL, notes TEXT DEFAULT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE TABLE chill_job.cv (id INT NOT NULL, person_id INT DEFAULT NULL, reportDate DATE NOT NULL, formationLevel VARCHAR(255) DEFAULT NULL, formationType VARCHAR(255) DEFAULT NULL, spokenLanguages JSONB DEFAULT NULL, notes TEXT DEFAULT NULL, PRIMARY KEY(id))'); $this->addSql('CREATE INDEX IDX_3F24F812217BBB47 ON chill_job.cv (person_id)'); $this->addSql('CREATE TABLE chill_job.cv_experience (id INT NOT NULL, poste TEXT DEFAULT NULL, structure TEXT DEFAULT NULL, startDate DATE DEFAULT NULL, endDate DATE DEFAULT NULL, contratType VARCHAR(100) NOT NULL, notes TEXT DEFAULT NULL, CV_id INT DEFAULT NULL, PRIMARY KEY(id))'); $this->addSql('CREATE INDEX IDX_102A1262AE1799D8 ON chill_job.cv_experience (CV_id)'); $this->addSql('CREATE TABLE chill_job.cv_formation (id INT NOT NULL, title TEXT NOT NULL, startDate DATE DEFAULT NULL, endDate DATE DEFAULT NULL, diplomaObtained VARCHAR(255) DEFAULT NULL, diplomaReconnue VARCHAR(50) DEFAULT NULL, organisme TEXT DEFAULT NULL, CV_id INT DEFAULT NULL, PRIMARY KEY(id))'); $this->addSql('CREATE INDEX IDX_20BE09E2AE1799D8 ON chill_job.cv_formation (CV_id)'); - $this->addSql('CREATE TABLE chill_job.frein (id INT NOT NULL, reportDate DATE NOT NULL, freinsPerso JSON NOT NULL, notesPerso TEXT NOT NULL, freinsEmploi JSON NOT NULL, notesEmploi TEXT NOT NULL, PRIMARY KEY(id))'); - $this->addSql('CREATE TABLE chill_job.immersion (id INT NOT NULL, entreprise_id INT DEFAULT NULL, referent_id INT DEFAULT NULL, domaineActivite TEXT DEFAULT NULL, tuteurName TEXT DEFAULT NULL, tuteurFonction TEXT DEFAULT NULL, tuteurPhoneNumber TEXT DEFAULT NULL, structureAccName TEXT DEFAULT NULL, structureAccPhonenumber TEXT DEFAULT NULL, structureAccEmail TEXT DEFAULT NULL, posteDescriptif TEXT DEFAULT NULL, posteTitle TEXT DEFAULT NULL, posteLieu TEXT DEFAULT NULL, debutDate DATE DEFAULT NULL, duration INTERVAL DEFAULT NULL, horaire TEXT DEFAULT NULL, objectifs JSON DEFAULT NULL, objectifsAutre TEXT DEFAULT NULL, is_bilan_fullfilled BOOLEAN DEFAULT false NOT NULL, savoirEtre JSON DEFAULT NULL, savoirEtreNote TEXT DEFAULT NULL, noteimmersion TEXT, principalesActivites TEXT DEFAULT NULL, competencesAcquises TEXT DEFAULT NULL, competencesADevelopper TEXT DEFAULT NULL, noteBilan TEXT DEFAULT NULL, ponctualite_salarie TEXT DEFAULT NULL, ponctualite_salarie_note TEXT DEFAULT NULL, assiduite TEXT DEFAULT NULL, assiduite_note TEXT DEFAULT NULL, interet_activite TEXT DEFAULT NULL, interet_activite_note TEXT DEFAULT NULL, integre_regle TEXT DEFAULT NULL, integre_regle_note TEXT DEFAULT NULL, esprit_initiative TEXT DEFAULT NULL, esprit_initiative_note TEXT DEFAULT NULL, organisation TEXT DEFAULT NULL, organisation_note TEXT DEFAULT NULL, capacite_travail_equipe TEXT DEFAULT NULL, capacite_travail_equipe_note TEXT DEFAULT NULL, style_vestimentaire TEXT DEFAULT NULL, style_vestimentaire_note TEXT DEFAULT NULL, langage_prof TEXT DEFAULT NULL, langage_prof_note TEXT DEFAULT NULL, applique_consigne TEXT DEFAULT NULL, applique_consigne_note TEXT DEFAULT NULL, respect_hierarchie TEXT DEFAULT NULL, respect_hierarchie_note TEXT DEFAULT NULL, structureAccAddress_id INT DEFAULT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE TABLE chill_job.frein (id INT NOT NULL, reportDate DATE NOT NULL, freinsPerso JSONB NOT NULL, notesPerso TEXT NOT NULL, freinsEmploi JSONB NOT NULL, notesEmploi TEXT NOT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE TABLE chill_job.immersion (id INT NOT NULL, entreprise_id INT DEFAULT NULL, referent_id INT DEFAULT NULL, domaineActivite TEXT DEFAULT NULL, tuteurName TEXT DEFAULT NULL, tuteurFonction TEXT DEFAULT NULL, tuteurPhoneNumber TEXT DEFAULT NULL, structureAccName TEXT DEFAULT NULL, structureAccPhonenumber TEXT DEFAULT NULL, structureAccEmail TEXT DEFAULT NULL, posteDescriptif TEXT DEFAULT NULL, posteTitle TEXT DEFAULT NULL, posteLieu TEXT DEFAULT NULL, debutDate DATE DEFAULT NULL, duration INTERVAL DEFAULT NULL, horaire TEXT DEFAULT NULL, objectifs JSONB DEFAULT NULL, objectifsAutre TEXT DEFAULT NULL, is_bilan_fullfilled BOOLEAN DEFAULT false NOT NULL, savoirEtre JSONB DEFAULT NULL, savoirEtreNote TEXT DEFAULT NULL, noteimmersion TEXT, principalesActivites TEXT DEFAULT NULL, competencesAcquises TEXT DEFAULT NULL, competencesADevelopper TEXT DEFAULT NULL, noteBilan TEXT DEFAULT NULL, ponctualite_salarie TEXT DEFAULT NULL, ponctualite_salarie_note TEXT DEFAULT NULL, assiduite TEXT DEFAULT NULL, assiduite_note TEXT DEFAULT NULL, interet_activite TEXT DEFAULT NULL, interet_activite_note TEXT DEFAULT NULL, integre_regle TEXT DEFAULT NULL, integre_regle_note TEXT DEFAULT NULL, esprit_initiative TEXT DEFAULT NULL, esprit_initiative_note TEXT DEFAULT NULL, organisation TEXT DEFAULT NULL, organisation_note TEXT DEFAULT NULL, capacite_travail_equipe TEXT DEFAULT NULL, capacite_travail_equipe_note TEXT DEFAULT NULL, style_vestimentaire TEXT DEFAULT NULL, style_vestimentaire_note TEXT DEFAULT NULL, langage_prof TEXT DEFAULT NULL, langage_prof_note TEXT DEFAULT NULL, applique_consigne TEXT DEFAULT NULL, applique_consigne_note TEXT DEFAULT NULL, respect_hierarchie TEXT DEFAULT NULL, respect_hierarchie_note TEXT DEFAULT NULL, structureAccAddress_id INT DEFAULT NULL, PRIMARY KEY(id))'); $this->addSql('CREATE INDEX IDX_FBB3CBB4A4AEAFEA ON chill_job.immersion (entreprise_id)'); $this->addSql('CREATE INDEX IDX_FBB3CBB435E47E35 ON chill_job.immersion (referent_id)'); $this->addSql('CREATE INDEX IDX_FBB3CBB4B5E04267 ON chill_job.immersion (structureAccAddress_id)'); $this->addSql('COMMENT ON COLUMN chill_job.immersion.duration IS \'(DC2Type:dateinterval)\''); - $this->addSql('CREATE TABLE chill_job.projet_professionnel (id INT NOT NULL, reportDate DATE NOT NULL, domaineActiviteSouhait TEXT DEFAULT NULL, typeContrat JSON DEFAULT NULL, typeContratNotes TEXT DEFAULT NULL, volumeHoraire JSON DEFAULT NULL, volumeHoraireNotes TEXT DEFAULT NULL, idee TEXT DEFAULT NULL, enCoursConstruction TEXT DEFAULT NULL, domaineActiviteValide TEXT DEFAULT NULL, valideNotes TEXT DEFAULT NULL, projetProfessionnelNote TEXT DEFAULT NULL, PRIMARY KEY(id))'); + $this->addSql('CREATE TABLE chill_job.projet_professionnel (id INT NOT NULL, reportDate DATE NOT NULL, domaineActiviteSouhait TEXT DEFAULT NULL, typeContrat JSONB DEFAULT NULL, typeContratNotes TEXT DEFAULT NULL, volumeHoraire JSONB DEFAULT NULL, volumeHoraireNotes TEXT DEFAULT NULL, idee TEXT DEFAULT NULL, enCoursConstruction TEXT DEFAULT NULL, domaineActiviteValide TEXT DEFAULT NULL, valideNotes TEXT DEFAULT NULL, projetProfessionnelNote TEXT DEFAULT NULL, PRIMARY KEY(id))'); $this->addSql('CREATE TABLE chill_job.projetprofessionnel_souhait (projetprofessionnel_id INT NOT NULL, appellation_id INT NOT NULL, PRIMARY KEY(projetprofessionnel_id, appellation_id))'); $this->addSql('CREATE INDEX IDX_3280B96DB87BF7B5 ON chill_job.projetprofessionnel_souhait (projetprofessionnel_id)'); $this->addSql('CREATE INDEX IDX_3280B96D7CDE30DD ON chill_job.projetprofessionnel_souhait (appellation_id)'); From 2895638f3bc9b06f4b2b2fb122ddce84cd85bd80 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 22 May 2024 15:26:23 +0200 Subject: [PATCH 055/136] php cs fixes --- .../src/ApiHelper/ApiWrapper.php | 1 - .../ApiHelper/PartenaireRomeAppellation.php | 20 +- .../ChillJobBundle/src/Entity/Immersion.php | 5 +- .../src/Entity/ProjetProfessionnel.php | 2 +- .../Export/AddCSPersonToPersonListHelper.php | 215 +++++++++--------- .../ChillJobBundle/src/Export/ListCV.php | 2 +- .../ChillJobBundle/src/Export/ListFrein.php | 2 +- .../src/Export/ListProjetProfessionnel.php | 2 +- 8 files changed, 119 insertions(+), 130 deletions(-) diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php index a293b7712..513050a2a 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/ApiWrapper.php @@ -49,7 +49,6 @@ class ApiWrapper return $data->access_token; } - try { $response = $this->client->post('', [ 'query' => ['realm' => '/partenaire'], diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php index 8711a5028..533e8d274 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php @@ -75,17 +75,15 @@ class PartenaireRomeAppellation ], ]; try { - $response = $this->handleRequest( - $request, - $parameters, - $this->client, - $this->logger - ); - - } catch (ClientException $e) { - dump($e->getResponse()->getBody()->getContents()); - } - + $response = $this->handleRequest( + $request, + $parameters, + $this->client, + $this->logger + ); + } catch (ClientException $e) { + dump($e->getResponse()->getBody()->getContents()); + } return Utils::jsonDecode((string) $response->getBody()); } diff --git a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php index 1e3b9879e..225c4c1a1 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php @@ -43,7 +43,7 @@ class Immersion implements \Stringable * @Assert\NotNull() */ #[ORM\ManyToOne(targetEntity: Person::class)] - private ?\Chill\PersonBundle\Entity\Person $person = null; + private ?Person $person = null; /** * @Assert\NotNull() @@ -523,12 +523,11 @@ class Immersion implements \Stringable /** * Get duration. - * */ public function getDuration() { return $this->duration; -// return new \DateInterval($this->duration ?? 'P7D'); + // return new \DateInterval($this->duration ?? 'P7D'); } public function getDateEndComputed() diff --git a/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php b/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php index 44dd6b412..58a1fca41 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php +++ b/src/Bundle/ChillJobBundle/src/Entity/ProjetProfessionnel.php @@ -36,7 +36,7 @@ class ProjetProfessionnel implements \Stringable * @Assert\NotNull() */ #[ORM\ManyToOne(targetEntity: Person::class)] - private ?\Chill\PersonBundle\Entity\Person $person = null; + private ?Person $person = null; /** * @Assert\NotNull() diff --git a/src/Bundle/ChillJobBundle/src/Export/AddCSPersonToPersonListHelper.php b/src/Bundle/ChillJobBundle/src/Export/AddCSPersonToPersonListHelper.php index b05b22be4..5436158f6 100644 --- a/src/Bundle/ChillJobBundle/src/Export/AddCSPersonToPersonListHelper.php +++ b/src/Bundle/ChillJobBundle/src/Export/AddCSPersonToPersonListHelper.php @@ -24,37 +24,35 @@ use Symfony\Contracts\Translation\TranslatorInterface; */ class AddCSPersonToPersonListHelper implements CustomizeListPersonHelperInterface { - public function __construct(private readonly TranslatorInterface $translator) - { - } + public function __construct(private readonly TranslatorInterface $translator) {} private const CSPERSON_FIELDS = [ - 'dateFinDernierEmploi', -/* 'prescripteur__name', + 'dateFinDernierEmploi', + /* 'prescripteur__name', 'prescripteur__email', 'prescripteur__phone',*/ - 'poleEmploiId', - 'cafId', - 'cafInscriptionDate', - 'dateContratIEJ', - 'cERInscriptionDate', - 'pPAEInscriptionDate', - 'pPAESignataire', - 'cERSignataire', - 'nEETCommissionDate', - 'fSEMaDemarcheCode', - 'enfantACharge', - 'nEETEligibilite', - 'situationProfessionnelle', + 'poleEmploiId', + 'cafId', + 'cafInscriptionDate', + 'dateContratIEJ', + 'cERInscriptionDate', + 'pPAEInscriptionDate', + 'pPAESignataire', + 'cERSignataire', + 'nEETCommissionDate', + 'fSEMaDemarcheCode', + 'enfantACharge', + 'nEETEligibilite', + 'situationProfessionnelle', ]; public function alterKeys(array $existing): array { - $ressources = array_map(static fn ($key) => 'ressources__' . $key, CSPerson::RESSOURCES); - $moyenTransport = array_map(static fn ($key) => 'moyen_transport__' . $key, CSPerson::MOBILITE_MOYEN_TRANSPORT); - $accompagnements = array_map(static fn ($key) => 'accompagnements__' . $key, CSPerson::ACCOMPAGNEMENTS); - $permisConduire = array_map(static fn ($key) => 'permis_conduire__' . $key, CSPerson::PERMIS_CONDUIRE); - $typeContrat = array_map(static fn ($key) => 'type_contrat__' . $key, CSPerson::TYPE_CONTRAT); + $ressources = array_map(static fn ($key) => 'ressources__'.$key, CSPerson::RESSOURCES); + $moyenTransport = array_map(static fn ($key) => 'moyen_transport__'.$key, CSPerson::MOBILITE_MOYEN_TRANSPORT); + $accompagnements = array_map(static fn ($key) => 'accompagnements__'.$key, CSPerson::ACCOMPAGNEMENTS); + $permisConduire = array_map(static fn ($key) => 'permis_conduire__'.$key, CSPerson::PERMIS_CONDUIRE); + $typeContrat = array_map(static fn ($key) => 'type_contrat__'.$key, CSPerson::TYPE_CONTRAT); return [ ...$existing, @@ -76,129 +74,124 @@ class AddCSPersonToPersonListHelper implements CustomizeListPersonHelperInterfac $qb->addSelect(sprintf('cs_person.%s as %s', $f, $f)); } -/* $qb->addSelect('cs_person.situationProfessionnelle as situation_prof'); + /* $qb->addSelect('cs_person.situationProfessionnelle as situation_prof'); - $qb->addSelect('cs_person.nEETEligibilite as nEETEligibilite');*/ + $qb->addSelect('cs_person.nEETEligibilite as nEETEligibilite');*/ $i = 0; - foreach (CSPerson::RESSOURCES as $key) - { - $qb->addSelect("JSONB_EXISTS_IN_ARRAY(cs_person.ressources, :param_$i) AS ressources__" . $key) + foreach (CSPerson::RESSOURCES as $key) { + $qb->addSelect("JSONB_EXISTS_IN_ARRAY(cs_person.ressources, :param_{$i}) AS ressources__".$key) ->setParameter('param_'.$i, $key); ++$i; } - foreach(CSPerson::MOBILITE_MOYEN_TRANSPORT as $key) - { - $qb->addSelect("JSONB_EXISTS_IN_ARRAY(cs_person.mobiliteMoyenDeTransport, :param_$i) AS moyen_transport__" . $key) + foreach (CSPerson::MOBILITE_MOYEN_TRANSPORT as $key) { + $qb->addSelect("JSONB_EXISTS_IN_ARRAY(cs_person.mobiliteMoyenDeTransport, :param_{$i}) AS moyen_transport__".$key) ->setParameter('param_'.$i, $key); ++$i; } - foreach(CSPerson::TYPE_CONTRAT as $key) - { - $qb->addSelect("JSONB_EXISTS_IN_ARRAY(cs_person.typeContrat, :param_$i) AS type_contrat__" . $key) + foreach (CSPerson::TYPE_CONTRAT as $key) { + $qb->addSelect("JSONB_EXISTS_IN_ARRAY(cs_person.typeContrat, :param_{$i}) AS type_contrat__".$key) ->setParameter('param_'.$i, $key); ++$i; } - foreach (CSPerson::ACCOMPAGNEMENTS as $key) - { - $qb->addSelect("JSONB_EXISTS_IN_ARRAY(cs_person.accompagnement, :param_$i) AS accompagnements__" . $key) + foreach (CSPerson::ACCOMPAGNEMENTS as $key) { + $qb->addSelect("JSONB_EXISTS_IN_ARRAY(cs_person.accompagnement, :param_{$i}) AS accompagnements__".$key) ->setParameter('param_'.$i, $key); ++$i; } - foreach (CSPerson::PERMIS_CONDUIRE as $key) - { - $qb->addSelect("JSONB_EXISTS_IN_ARRAY(cs_person.permisConduire, :param_$i) AS permis_conduire__" . $key) + foreach (CSPerson::PERMIS_CONDUIRE as $key) { + $qb->addSelect("JSONB_EXISTS_IN_ARRAY(cs_person.permisConduire, :param_{$i}) AS permis_conduire__".$key) ->setParameter('param_'.$i, $key); ++$i; } - } public function getLabels(string $key, array $values, array $data): ?callable { - switch ($key) { - case str_contains($key, '__'): - return function (string|bool|null $value) use ($key): string { - if ('_header' === $value) { - [$domain, $v] = explode('__', $key); - return 'export.list.cs_person.' . $domain . '.' . $v; - } + switch ($key) { + case str_contains($key, '__'): + return function (string|bool|null $value) use ($key): string { + if ('_header' === $value) { + [$domain, $v] = explode('__', $key); - if ('1' === $value || true === $value || 1 === $value || 't' === $value) { - return 'x'; - } + return 'export.list.cs_person.'.$domain.'.'.$v; + } + if ('1' === $value || true === $value || 1 === $value || 't' === $value) { + return 'x'; + } + + return ''; + }; + case 'nEETEligibilite': + return function (string|bool|null $value): string { + if ('_header' === $value) { + return 'export.list.cs_person.neet_eligibility'; + } + + if ('1' === $value || true === $value || 1 === $value || 't' === $value) { + return 'x'; + } + + return ''; + }; + case 'situationProfessionnelle': + return function ($value) { + if ('_header' === $value) { + return 'export.list.cs_person.situation_professionelle'; + } + + return $value; + }; + case 'cerinscriptiondate': + case 'ppaeinscriptiondate': + case 'neetcommissiondate': + case 'findernieremploidate': + case 'cafinscriptiondate': + case 'contratiejdate': + return function ($value) use ($key) { + if ('_header' === $value) { + return $this->translator->trans($key); + } + + if (null === $value) { return ''; - }; - case 'nEETEligibilite': - return function (string|bool|null $value) use ($key): string { - if ('_header' === $value) { - return 'export.list.cs_person.neet_eligibility'; - } + } + // warning: won't work with DateTimeImmutable as we reset time a few lines later + $date = \DateTime::createFromFormat('Y-m-d', $value); + $hasTime = false; - if ('1' === $value || true === $value || 1 === $value || 't' === $value) { - return 'x'; - } + if (false === $date) { + $date = \DateTime::createFromFormat('Y-m-d H:i:s', $value); + $hasTime = true; + } - return ''; - }; - case 'situationProfessionnelle': - return function ($value) use ($key) { - if ('_header' === $value) { - return 'export.list.cs_person.situation_professionelle'; - } + // check that the creation could occur. + if (false === $date) { + throw new \Exception(sprintf('The value %s could not be converted to %s', $value, \DateTime::class)); + } - return $value; - }; - case 'cerinscriptiondate': - case 'ppaeinscriptiondate': - case 'neetcommissiondate': - case 'findernieremploidate': - case 'cafinscriptiondate': - case 'contratiejdate': - return function ($value) use ($key) { - if ('_header' === $value) { - return $this->translator->trans($key); - } + if (!$hasTime) { + $date->setTime(0, 0, 0); + } - if (null === $value) { - return ''; - } - // warning: won't work with DateTimeImmutable as we reset time a few lines later - $date = \DateTime::createFromFormat('Y-m-d', $value); - $hasTime = false; + return $date; + }; - if (false === $date) { - $date = \DateTime::createFromFormat('Y-m-d H:i:s', $value); - $hasTime = true; - } + default: + // for fields which are associated with person + return function ($value) use ($key) { + if ('_header' === $value) { + return $this->translator->trans($key); + } - // check that the creation could occur. - if (false === $date) { - throw new \Exception(sprintf('The value %s could not be converted to %s', $value, \DateTime::class)); - } - - if (!$hasTime) { - $date->setTime(0, 0, 0); - } - - return $date; - }; - - default: - // for fields which are associated with person - return function ($value) use ($key) { - if ('_header' === $value) { - return $this->translator->trans($key); - } - - return $value; - }; - } + return $value; + }; + } } } diff --git a/src/Bundle/ChillJobBundle/src/Export/ListCV.php b/src/Bundle/ChillJobBundle/src/Export/ListCV.php index aea1c7217..896c7db01 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListCV.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListCV.php @@ -92,7 +92,7 @@ class ListCV implements ListInterface, ExportElementValidatedInterface ->add('fields', ChoiceType::class, [ 'multiple' => true, 'expanded' => true, -// 'choices_as_values' => true, + // 'choices_as_values' => true, 'label' => 'Fields to include in export', 'choices' => array_combine($this->getFields(), $this->getFields()), 'data' => array_combine($this->getFields(), $this->getFields()), diff --git a/src/Bundle/ChillJobBundle/src/Export/ListFrein.php b/src/Bundle/ChillJobBundle/src/Export/ListFrein.php index 51354e1fb..8e3a64294 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListFrein.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListFrein.php @@ -105,7 +105,7 @@ class ListFrein implements ListInterface, ExportElementValidatedInterface ->add('fields', ChoiceType::class, [ 'multiple' => true, 'expanded' => true, -// 'choices_as_values' => true, + // 'choices_as_values' => true, 'label' => 'Fields to include in export', 'choices' => array_combine($this->getFields(), $this->getFields()), 'data' => array_combine($this->getFields(), $this->getFields()), diff --git a/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php b/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php index 54cd2b3a5..0a1eeb753 100644 --- a/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php +++ b/src/Bundle/ChillJobBundle/src/Export/ListProjetProfessionnel.php @@ -110,7 +110,7 @@ class ListProjetProfessionnel implements ListInterface, ExportElementValidatedIn ->add('fields', ChoiceType::class, [ 'multiple' => true, 'expanded' => true, -// 'choices_as_values' => true, + // 'choices_as_values' => true, 'label' => 'Fields to include in export', 'choice_label' => fn ($key) => str_replace('__', '.', (string) $key), 'choices' => array_combine($this->getFields(), $this->getFields()), From 9ce1788a14dc648432b29d0513701c001e2f7ab2 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 22 May 2024 16:42:47 +0200 Subject: [PATCH 056/136] phpstan en rector fixes --- .../CustomFields/CustomFieldInterface.php | 4 - .../CustomFields/CustomFieldsChoiceTest.php | 2 - .../Controller/EventTypeController.php | 1 - .../Controller/RoleController.php | 1 - .../Controller/StatusController.php | 1 - .../ApiHelper/PartenaireRomeAppellation.php | 6 +- .../DependencyInjection/ChillJobExtension.php | 3 - .../Export/AddCSPersonToPersonListHelper.php | 143 ++++++++---------- .../CRUD/Controller/CRUDController.php | 2 - .../Controller/PermissionsGroupController.php | 2 - .../Export/AggregatorInterface.php | 1 - .../ExportElementValidatedInterface.php | 2 - .../Export/ExportInterface.php | 1 - .../ChillMainBundle/Export/ExportManager.php | 6 - .../ChillMainBundle/Search/SearchProvider.php | 6 +- .../Authorization/AuthorizationHelper.php | 1 - 16 files changed, 75 insertions(+), 107 deletions(-) diff --git a/src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php b/src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php index 7ba5cff74..2f4cfd1e4 100644 --- a/src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php +++ b/src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php @@ -49,17 +49,13 @@ interface CustomFieldInterface /** * Return if the value can be considered as empty. - * - * @param mixed $value the value passed throug the deserialize function */ public function isEmptyValue(mixed $value, CustomField $customField); /** * Return a repsentation of the value of the CustomField. * - * @param mixed $value the raw value, **not deserialized** (= as stored in the db) * @param \Chill\CustomFieldsBundle\CustomField\CustomField $customField - * * @return string an html representation of the value */ public function render(mixed $value, CustomField $customField, $documentType = 'html'); diff --git a/src/Bundle/ChillCustomFieldsBundle/Tests/CustomFields/CustomFieldsChoiceTest.php b/src/Bundle/ChillCustomFieldsBundle/Tests/CustomFields/CustomFieldsChoiceTest.php index b9d00d052..6f6ba394e 100644 --- a/src/Bundle/ChillCustomFieldsBundle/Tests/CustomFields/CustomFieldsChoiceTest.php +++ b/src/Bundle/ChillCustomFieldsBundle/Tests/CustomFields/CustomFieldsChoiceTest.php @@ -399,8 +399,6 @@ final class CustomFieldsChoiceTest extends KernelTestCase /** * @dataProvider emptyDataProvider - * - * @param mixed $data deserialized data */ public function testIsEmptyValueEmpty(mixed $data) { diff --git a/src/Bundle/ChillEventBundle/Controller/EventTypeController.php b/src/Bundle/ChillEventBundle/Controller/EventTypeController.php index 881f7a135..d5ea7901b 100644 --- a/src/Bundle/ChillEventBundle/Controller/EventTypeController.php +++ b/src/Bundle/ChillEventBundle/Controller/EventTypeController.php @@ -201,7 +201,6 @@ class EventTypeController extends AbstractController /** * Creates a form to delete a EventType entity by id. * - * @param mixed $id The entity id * * @return \Symfony\Component\Form\Form The form */ diff --git a/src/Bundle/ChillEventBundle/Controller/RoleController.php b/src/Bundle/ChillEventBundle/Controller/RoleController.php index e1d94389a..fe6c60a85 100644 --- a/src/Bundle/ChillEventBundle/Controller/RoleController.php +++ b/src/Bundle/ChillEventBundle/Controller/RoleController.php @@ -201,7 +201,6 @@ class RoleController extends AbstractController /** * Creates a form to delete a Role entity by id. * - * @param mixed $id The entity id * * @return \Symfony\Component\Form\Form The form */ diff --git a/src/Bundle/ChillEventBundle/Controller/StatusController.php b/src/Bundle/ChillEventBundle/Controller/StatusController.php index 77f6d4279..446fb476e 100644 --- a/src/Bundle/ChillEventBundle/Controller/StatusController.php +++ b/src/Bundle/ChillEventBundle/Controller/StatusController.php @@ -201,7 +201,6 @@ class StatusController extends AbstractController /** * Creates a form to delete a Status entity by id. * - * @param mixed $id The entity id * * @return \Symfony\Component\Form\Form The form */ diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php index 533e8d274..5c32033ad 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php @@ -16,6 +16,7 @@ use GuzzleHttp\Exception\ClientException; use GuzzleHttp\Psr7\Request; use GuzzleHttp\Utils; use Psr\Log\LoggerInterface; +use Symfony\Component\HttpFoundation\Response; /** * Queries for ROME partenaires api. @@ -81,11 +82,14 @@ class PartenaireRomeAppellation $this->client, $this->logger ); + + return Utils::jsonDecode((string) $response->getBody()); + } catch (ClientException $e) { dump($e->getResponse()->getBody()->getContents()); } - return Utils::jsonDecode((string) $response->getBody()); + return new Response('No appellation found'); } public function getAppellation($code) diff --git a/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php b/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php index 165b5e557..110e5d8df 100644 --- a/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php +++ b/src/Bundle/ChillJobBundle/src/DependencyInjection/ChillJobExtension.php @@ -51,9 +51,6 @@ class ChillJobExtension extends Extension implements PrependExtensionInterface $loader->load('services/export.yml'); $loader->load('services/menu.yml'); $loader->load('services/security.yml'); - - // exports: list_CSperson override list_person - $container->setAlias('chill.person.export.list_person', \Chill\JobBundle\Export\ListCSPerson::class); } public function prepend(ContainerBuilder $container): void diff --git a/src/Bundle/ChillJobBundle/src/Export/AddCSPersonToPersonListHelper.php b/src/Bundle/ChillJobBundle/src/Export/AddCSPersonToPersonListHelper.php index 5436158f6..4d53722c0 100644 --- a/src/Bundle/ChillJobBundle/src/Export/AddCSPersonToPersonListHelper.php +++ b/src/Bundle/ChillJobBundle/src/Export/AddCSPersonToPersonListHelper.php @@ -113,85 +113,76 @@ class AddCSPersonToPersonListHelper implements CustomizeListPersonHelperInterfac public function getLabels(string $key, array $values, array $data): ?callable { - switch ($key) { - case str_contains($key, '__'): - return function (string|bool|null $value) use ($key): string { - if ('_header' === $value) { - [$domain, $v] = explode('__', $key); + if (str_contains($key, '__')) + { + return function (string|bool|null $value) use ($key): string { + if ('_header' === $value) { + [$domain, $v] = explode('__', $key); - return 'export.list.cs_person.'.$domain.'.'.$v; - } + return 'export.list.cs_person.'.$domain.'.'.$v; + } - if ('1' === $value || true === $value || 1 === $value || 't' === $value) { - return 'x'; - } + if ('1' === $value || true === $value || 't' === $value) { + return 'x'; + } - return ''; - }; - case 'nEETEligibilite': - return function (string|bool|null $value): string { - if ('_header' === $value) { - return 'export.list.cs_person.neet_eligibility'; - } - - if ('1' === $value || true === $value || 1 === $value || 't' === $value) { - return 'x'; - } - - return ''; - }; - case 'situationProfessionnelle': - return function ($value) { - if ('_header' === $value) { - return 'export.list.cs_person.situation_professionelle'; - } - - return $value; - }; - case 'cerinscriptiondate': - case 'ppaeinscriptiondate': - case 'neetcommissiondate': - case 'findernieremploidate': - case 'cafinscriptiondate': - case 'contratiejdate': - return function ($value) use ($key) { - if ('_header' === $value) { - return $this->translator->trans($key); - } - - if (null === $value) { - return ''; - } - // warning: won't work with DateTimeImmutable as we reset time a few lines later - $date = \DateTime::createFromFormat('Y-m-d', $value); - $hasTime = false; - - if (false === $date) { - $date = \DateTime::createFromFormat('Y-m-d H:i:s', $value); - $hasTime = true; - } - - // check that the creation could occur. - if (false === $date) { - throw new \Exception(sprintf('The value %s could not be converted to %s', $value, \DateTime::class)); - } - - if (!$hasTime) { - $date->setTime(0, 0, 0); - } - - return $date; - }; - - default: - // for fields which are associated with person - return function ($value) use ($key) { - if ('_header' === $value) { - return $this->translator->trans($key); - } - - return $value; - }; + return ''; + }; } + return match ($key) { + 'nEETEligibilite' => function (string|bool|null $value): string { + if ('_header' === $value) { + return 'export.list.cs_person.neet_eligibility'; + } + + if ('1' === $value || true === $value || 't' === $value) { + return 'x'; + } + + return ''; + }, + 'situationProfessionnelle' => function ($value) { + if ('_header' === $value) { + return 'export.list.cs_person.situation_professionelle'; + } + + return $value; + }, + 'cerinscriptiondate', 'ppaeinscriptiondate', 'neetcommissiondate', 'findernieremploidate', 'cafinscriptiondate', 'contratiejdate' => function ($value) use ($key) { + if ('_header' === $value) { + return $this->translator->trans($key); + } + + if (null === $value) { + return ''; + } + // warning: won't work with DateTimeImmutable as we reset time a few lines later + $date = \DateTime::createFromFormat('Y-m-d', $value); + $hasTime = false; + + if (false === $date) { + $date = \DateTime::createFromFormat('Y-m-d H:i:s', $value); + $hasTime = true; + } + + // check that the creation could occur. + if (false === $date) { + throw new \Exception(sprintf('The value %s could not be converted to %s', $value, \DateTime::class)); + } + + if (!$hasTime) { + $date->setTime(0, 0, 0); + } + + return $date; + }, + default => function ($value) use ($key) { + if ('_header' === $value) { + return $this->translator->trans($key); + } + + return $value; + }, + }; } } diff --git a/src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php b/src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php index f4c9538c7..ada07eb7b 100644 --- a/src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php +++ b/src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php @@ -725,10 +725,8 @@ class CRUDController extends AbstractController * and view. * * @param string $action - * @param mixed $entity the entity for the current request, or an array of entities * * @return string the path to the template - * * @throws \LogicException if no template are available */ protected function getTemplateFor($action, mixed $entity, Request $request) diff --git a/src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php b/src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php index fc5d7d061..ec28d3040 100644 --- a/src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php +++ b/src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php @@ -442,8 +442,6 @@ final class PermissionsGroupController extends AbstractController /** * Creates a form to delete a link to roleScope. - * - * @param mixed $permissionsGroup The entity id */ private function createDeleteRoleScopeForm( PermissionsGroup $permissionsGroup, diff --git a/src/Bundle/ChillMainBundle/Export/AggregatorInterface.php b/src/Bundle/ChillMainBundle/Export/AggregatorInterface.php index 28c168893..e849dec07 100644 --- a/src/Bundle/ChillMainBundle/Export/AggregatorInterface.php +++ b/src/Bundle/ChillMainBundle/Export/AggregatorInterface.php @@ -73,7 +73,6 @@ interface AggregatorInterface extends ModifierInterface * * @param string $key The column key, as added in the query * @param mixed[] $values The values from the result. if there are duplicates, those might be given twice. Example: array('FR', 'BE', 'CZ', 'FR', 'BE', 'FR') - * @param mixed $data The data from the export's form (as defined in `buildForm` * * @return \Closure where the first argument is the value, and the function should return the label to show in the formatted file. Example : `function($countryCode) use ($countries) { return $countries[$countryCode]->getName(); }` */ diff --git a/src/Bundle/ChillMainBundle/Export/ExportElementValidatedInterface.php b/src/Bundle/ChillMainBundle/Export/ExportElementValidatedInterface.php index ea9094687..d4f58a570 100644 --- a/src/Bundle/ChillMainBundle/Export/ExportElementValidatedInterface.php +++ b/src/Bundle/ChillMainBundle/Export/ExportElementValidatedInterface.php @@ -30,8 +30,6 @@ interface ExportElementValidatedInterface /** * validate the form's data and, if required, build a contraint * violation on the data. - * - * @param mixed $data the data, as returned by the user */ public function validateForm(mixed $data, ExecutionContextInterface $context); } diff --git a/src/Bundle/ChillMainBundle/Export/ExportInterface.php b/src/Bundle/ChillMainBundle/Export/ExportInterface.php index 39e265153..a9d3efd13 100644 --- a/src/Bundle/ChillMainBundle/Export/ExportInterface.php +++ b/src/Bundle/ChillMainBundle/Export/ExportInterface.php @@ -96,7 +96,6 @@ interface ExportInterface extends ExportElementInterface * * @param string $key The column key, as added in the query * @param mixed[] $values The values from the result. if there are duplicates, those might be given twice. Example: array('FR', 'BE', 'CZ', 'FR', 'BE', 'FR') - * @param mixed $data The data from the export's form (as defined in `buildForm`) * * @return (callable(string|int|float|'_header'|null $value): string|int|\DateTimeInterface) where the first argument is the value, and the function should return the label to show in the formatted file. Example : `function($countryCode) use ($countries) { return $countries[$countryCode]->getName(); }` */ diff --git a/src/Bundle/ChillMainBundle/Export/ExportManager.php b/src/Bundle/ChillMainBundle/Export/ExportManager.php index 159b90b6b..eb59c4ae2 100644 --- a/src/Bundle/ChillMainBundle/Export/ExportManager.php +++ b/src/Bundle/ChillMainBundle/Export/ExportManager.php @@ -552,9 +552,7 @@ class ExportManager * * This function check the acl. * - * @param mixed $data the data under the initial 'filters' data * @param \Chill\MainBundle\Entity\Center[] $centers the picked centers - * * @throw UnauthorizedHttpException if the user is not authorized */ private function handleFilters( @@ -615,9 +613,6 @@ class ExportManager return $usedTypes; } - /** - * @param mixed $data the data from the filter key of the ExportType - */ private function retrieveUsedFilters(mixed $data): iterable { if (null === $data) { @@ -634,7 +629,6 @@ class ExportManager /** * Retrieve the filter used in this export. * - * @param mixed $data the data from the `filters` key of the ExportType * * @return array an array with types */ diff --git a/src/Bundle/ChillMainBundle/Search/SearchProvider.php b/src/Bundle/ChillMainBundle/Search/SearchProvider.php index e239b872d..73c48f4cf 100644 --- a/src/Bundle/ChillMainBundle/Search/SearchProvider.php +++ b/src/Bundle/ChillMainBundle/Search/SearchProvider.php @@ -257,10 +257,10 @@ class SearchProvider $this->mustBeExtracted[] = $matches[0][$key]; // strip parenthesis if ( - '"' === mb_substr((string) $match, 0, 1) - && '"' === mb_substr((string) $match, mb_strlen((string) $match) - 1) + '"' === mb_substr($match, 0, 1) + && '"' === mb_substr($match, mb_strlen($match) - 1) ) { - $match = trim(mb_substr((string) $match, 1, mb_strlen((string) $match) - 2)); + $match = trim(mb_substr($match, 1, mb_strlen($match) - 2)); } $terms[$matches[1][$key]] = $match; } diff --git a/src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php b/src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php index 9ca1bdc0b..04d9f30f0 100644 --- a/src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php +++ b/src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php @@ -198,7 +198,6 @@ class AuthorizationHelper implements AuthorizationHelperInterface * if the entity implements Chill\MainBundle\Entity\HasScopeInterface, * the scope is taken into account. * - * @param mixed $entity the entity may also implement HasScopeInterface * * @return bool true if the user has access */ From dddb6d66bc4f03f10ac7aec359ffd1d7ff239e6d Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 22 May 2024 16:44:02 +0200 Subject: [PATCH 057/136] php cs fixes after merge --- .../CustomFields/CustomFieldInterface.php | 1 + .../ChillEventBundle/Controller/EventTypeController.php | 1 - src/Bundle/ChillEventBundle/Controller/RoleController.php | 1 - src/Bundle/ChillEventBundle/Controller/StatusController.php | 1 - .../src/ApiHelper/PartenaireRomeAppellation.php | 1 - .../src/Export/AddCSPersonToPersonListHelper.php | 4 ++-- src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php | 1 + src/Bundle/ChillMainBundle/Export/ExportManager.php | 2 +- .../Security/Authorization/AuthorizationHelper.php | 1 - .../GeographicalUnitStatAggregator.php | 3 +-- .../AccompanyingCourseFilters/GeographicalUnitStatFilter.php | 3 +-- 11 files changed, 7 insertions(+), 12 deletions(-) diff --git a/src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php b/src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php index 2f4cfd1e4..eb2d3b011 100644 --- a/src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php +++ b/src/Bundle/ChillCustomFieldsBundle/CustomFields/CustomFieldInterface.php @@ -56,6 +56,7 @@ interface CustomFieldInterface * Return a repsentation of the value of the CustomField. * * @param \Chill\CustomFieldsBundle\CustomField\CustomField $customField + * * @return string an html representation of the value */ public function render(mixed $value, CustomField $customField, $documentType = 'html'); diff --git a/src/Bundle/ChillEventBundle/Controller/EventTypeController.php b/src/Bundle/ChillEventBundle/Controller/EventTypeController.php index d5ea7901b..5706dbe19 100644 --- a/src/Bundle/ChillEventBundle/Controller/EventTypeController.php +++ b/src/Bundle/ChillEventBundle/Controller/EventTypeController.php @@ -201,7 +201,6 @@ class EventTypeController extends AbstractController /** * Creates a form to delete a EventType entity by id. * - * * @return \Symfony\Component\Form\Form The form */ private function createDeleteForm(mixed $id) diff --git a/src/Bundle/ChillEventBundle/Controller/RoleController.php b/src/Bundle/ChillEventBundle/Controller/RoleController.php index fe6c60a85..24e4f2121 100644 --- a/src/Bundle/ChillEventBundle/Controller/RoleController.php +++ b/src/Bundle/ChillEventBundle/Controller/RoleController.php @@ -201,7 +201,6 @@ class RoleController extends AbstractController /** * Creates a form to delete a Role entity by id. * - * * @return \Symfony\Component\Form\Form The form */ private function createDeleteForm(mixed $id) diff --git a/src/Bundle/ChillEventBundle/Controller/StatusController.php b/src/Bundle/ChillEventBundle/Controller/StatusController.php index 446fb476e..286408b0b 100644 --- a/src/Bundle/ChillEventBundle/Controller/StatusController.php +++ b/src/Bundle/ChillEventBundle/Controller/StatusController.php @@ -201,7 +201,6 @@ class StatusController extends AbstractController /** * Creates a form to delete a Status entity by id. * - * * @return \Symfony\Component\Form\Form The form */ private function createDeleteForm(mixed $id) diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php index 5c32033ad..cb40311b6 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php @@ -84,7 +84,6 @@ class PartenaireRomeAppellation ); return Utils::jsonDecode((string) $response->getBody()); - } catch (ClientException $e) { dump($e->getResponse()->getBody()->getContents()); } diff --git a/src/Bundle/ChillJobBundle/src/Export/AddCSPersonToPersonListHelper.php b/src/Bundle/ChillJobBundle/src/Export/AddCSPersonToPersonListHelper.php index 4d53722c0..0c27bdb32 100644 --- a/src/Bundle/ChillJobBundle/src/Export/AddCSPersonToPersonListHelper.php +++ b/src/Bundle/ChillJobBundle/src/Export/AddCSPersonToPersonListHelper.php @@ -113,8 +113,7 @@ class AddCSPersonToPersonListHelper implements CustomizeListPersonHelperInterfac public function getLabels(string $key, array $values, array $data): ?callable { - if (str_contains($key, '__')) - { + if (str_contains($key, '__')) { return function (string|bool|null $value) use ($key): string { if ('_header' === $value) { [$domain, $v] = explode('__', $key); @@ -129,6 +128,7 @@ class AddCSPersonToPersonListHelper implements CustomizeListPersonHelperInterfac return ''; }; } + return match ($key) { 'nEETEligibilite' => function (string|bool|null $value): string { if ('_header' === $value) { diff --git a/src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php b/src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php index ada07eb7b..2384e32b4 100644 --- a/src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php +++ b/src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php @@ -727,6 +727,7 @@ class CRUDController extends AbstractController * @param string $action * * @return string the path to the template + * * @throws \LogicException if no template are available */ protected function getTemplateFor($action, mixed $entity, Request $request) diff --git a/src/Bundle/ChillMainBundle/Export/ExportManager.php b/src/Bundle/ChillMainBundle/Export/ExportManager.php index eb59c4ae2..9cb2a54ba 100644 --- a/src/Bundle/ChillMainBundle/Export/ExportManager.php +++ b/src/Bundle/ChillMainBundle/Export/ExportManager.php @@ -553,6 +553,7 @@ class ExportManager * This function check the acl. * * @param \Chill\MainBundle\Entity\Center[] $centers the picked centers + * * @throw UnauthorizedHttpException if the user is not authorized */ private function handleFilters( @@ -629,7 +630,6 @@ class ExportManager /** * Retrieve the filter used in this export. * - * * @return array an array with types */ private function retrieveUsedFiltersType(mixed $data): iterable diff --git a/src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php b/src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php index 04d9f30f0..098b741e6 100644 --- a/src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php +++ b/src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelper.php @@ -198,7 +198,6 @@ class AuthorizationHelper implements AuthorizationHelperInterface * if the entity implements Chill\MainBundle\Entity\HasScopeInterface, * the scope is taken into account. * - * * @return bool true if the user has access */ public function userHasAccess(UserInterface $user, mixed $entity, string $attribute): bool diff --git a/src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/GeographicalUnitStatAggregator.php b/src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/GeographicalUnitStatAggregator.php index 0a861d64c..ffa5501dd 100644 --- a/src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/GeographicalUnitStatAggregator.php +++ b/src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/GeographicalUnitStatAggregator.php @@ -32,8 +32,7 @@ final readonly class GeographicalUnitStatAggregator implements AggregatorInterfa private GeographicalUnitLayerRepositoryInterface $geographicalUnitLayerRepository, private TranslatableStringHelperInterface $translatableStringHelper, private RollingDateConverterInterface $rollingDateConverter - ) { - } + ) {} public function addRole(): ?string { diff --git a/src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/GeographicalUnitStatFilter.php b/src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/GeographicalUnitStatFilter.php index d84745403..7adf03d13 100644 --- a/src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/GeographicalUnitStatFilter.php +++ b/src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/GeographicalUnitStatFilter.php @@ -38,8 +38,7 @@ class GeographicalUnitStatFilter implements FilterInterface private readonly GeographicalUnitLayerRepositoryInterface $geographicalUnitLayerRepository, private readonly TranslatableStringHelperInterface $translatableStringHelper, private readonly RollingDateConverterInterface $rollingDateConverter - ) { - } + ) {} public function addRole(): ?string { From cb5ade3d148e0c27b9e5877109b42f0c1ff05320 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 22 May 2024 16:49:45 +0200 Subject: [PATCH 058/136] add changie for module emploi --- .changes/unreleased/Feature-20240522-164933.yaml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changes/unreleased/Feature-20240522-164933.yaml diff --git a/.changes/unreleased/Feature-20240522-164933.yaml b/.changes/unreleased/Feature-20240522-164933.yaml new file mode 100644 index 000000000..947c6589f --- /dev/null +++ b/.changes/unreleased/Feature-20240522-164933.yaml @@ -0,0 +1,5 @@ +kind: Feature +body: Add job bundle (module emploi) +time: 2024-05-22T16:49:33.730465146+02:00 +custom: + Issue: "" From 854d72fa425590985bdbffc506a7764bef2a5de9 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 22 May 2024 17:12:49 +0200 Subject: [PATCH 059/136] php cs fixes --- .../Dav/Exception/ParseRequestException.php | 4 +--- .../Security/Guard/DavOnUrlTokenExtractor.php | 3 +-- .../Security/Guard/JWTDavTokenProvider.php | 3 +-- .../Security/Guard/JWTOnDavUrlAuthenticator.php | 2 +- .../Templating/WopiEditTwigExtensionRuntime.php | 3 +-- .../Tests/Controller/WebdavControllerTest.php | 4 +--- .../Tests/Security/Authorization/StoredObjectVoterTest.php | 4 ++-- src/Bundle/ChillJobBundle/src/Entity/CSPerson.php | 6 +++--- src/Bundle/ChillJobBundle/src/Entity/Immersion.php | 4 +--- .../src/Form/Type/PickRomeAppellationType.php | 2 +- 10 files changed, 13 insertions(+), 22 deletions(-) diff --git a/src/Bundle/ChillDocStoreBundle/Dav/Exception/ParseRequestException.php b/src/Bundle/ChillDocStoreBundle/Dav/Exception/ParseRequestException.php index 70fff1866..0c740be17 100644 --- a/src/Bundle/ChillDocStoreBundle/Dav/Exception/ParseRequestException.php +++ b/src/Bundle/ChillDocStoreBundle/Dav/Exception/ParseRequestException.php @@ -11,6 +11,4 @@ declare(strict_types=1); namespace Chill\DocStoreBundle\Dav\Exception; -class ParseRequestException extends \UnexpectedValueException -{ -} +class ParseRequestException extends \UnexpectedValueException {} diff --git a/src/Bundle/ChillDocStoreBundle/Security/Guard/DavOnUrlTokenExtractor.php b/src/Bundle/ChillDocStoreBundle/Security/Guard/DavOnUrlTokenExtractor.php index 543996f57..3881c6251 100644 --- a/src/Bundle/ChillDocStoreBundle/Security/Guard/DavOnUrlTokenExtractor.php +++ b/src/Bundle/ChillDocStoreBundle/Security/Guard/DavOnUrlTokenExtractor.php @@ -27,8 +27,7 @@ final readonly class DavOnUrlTokenExtractor implements TokenExtractorInterface { public function __construct( private LoggerInterface $logger, - ) { - } + ) {} public function extract(Request $request): false|string { diff --git a/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTDavTokenProvider.php b/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTDavTokenProvider.php index 24e89a3ba..0bd0cdb8e 100644 --- a/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTDavTokenProvider.php +++ b/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTDavTokenProvider.php @@ -24,8 +24,7 @@ final readonly class JWTDavTokenProvider implements JWTDavTokenProviderInterface public function __construct( private JWTTokenManagerInterface $JWTTokenManager, private Security $security, - ) { - } + ) {} public function createToken(StoredObject $storedObject, StoredObjectRoleEnum $roleEnum): string { diff --git a/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTOnDavUrlAuthenticator.php b/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTOnDavUrlAuthenticator.php index 7695fb635..fe8ba2b73 100644 --- a/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTOnDavUrlAuthenticator.php +++ b/src/Bundle/ChillDocStoreBundle/Security/Guard/JWTOnDavUrlAuthenticator.php @@ -29,7 +29,7 @@ class JWTOnDavUrlAuthenticator extends JWTTokenAuthenticator TokenExtractorInterface $tokenExtractor, private readonly DavOnUrlTokenExtractor $davOnUrlTokenExtractor, TokenStorageInterface $preAuthenticationTokenStorage, - TranslatorInterface $translator = null, + ?TranslatorInterface $translator = null, ) { parent::__construct($jwtManager, $dispatcher, $tokenExtractor, $preAuthenticationTokenStorage, $translator); } diff --git a/src/Bundle/ChillDocStoreBundle/Templating/WopiEditTwigExtensionRuntime.php b/src/Bundle/ChillDocStoreBundle/Templating/WopiEditTwigExtensionRuntime.php index 3b6c32148..716cb422e 100644 --- a/src/Bundle/ChillDocStoreBundle/Templating/WopiEditTwigExtensionRuntime.php +++ b/src/Bundle/ChillDocStoreBundle/Templating/WopiEditTwigExtensionRuntime.php @@ -128,8 +128,7 @@ final readonly class WopiEditTwigExtensionRuntime implements RuntimeExtensionInt private NormalizerInterface $normalizer, private JWTDavTokenProviderInterface $davTokenProvider, private UrlGeneratorInterface $urlGenerator, - ) { - } + ) {} /** * return true if the document is editable. diff --git a/src/Bundle/ChillDocStoreBundle/Tests/Controller/WebdavControllerTest.php b/src/Bundle/ChillDocStoreBundle/Tests/Controller/WebdavControllerTest.php index 9254efc2d..fab84ce7f 100644 --- a/src/Bundle/ChillDocStoreBundle/Tests/Controller/WebdavControllerTest.php +++ b/src/Bundle/ChillDocStoreBundle/Tests/Controller/WebdavControllerTest.php @@ -399,9 +399,7 @@ class MockedStoredObjectManager implements StoredObjectManagerInterface return 'abcde'; } - public function write(StoredObject $document, string $clearContent): void - { - } + public function write(StoredObject $document, string $clearContent): void {} public function etag(StoredObject $document): string { diff --git a/src/Bundle/ChillDocStoreBundle/Tests/Security/Authorization/StoredObjectVoterTest.php b/src/Bundle/ChillDocStoreBundle/Tests/Security/Authorization/StoredObjectVoterTest.php index 477427078..92c928681 100644 --- a/src/Bundle/ChillDocStoreBundle/Tests/Security/Authorization/StoredObjectVoterTest.php +++ b/src/Bundle/ChillDocStoreBundle/Tests/Security/Authorization/StoredObjectVoterTest.php @@ -32,7 +32,7 @@ class StoredObjectVoterTest extends TestCase /** * @dataProvider provideDataVote */ - public function testVote(TokenInterface $token, null|object $subject, string $attribute, mixed $expected): void + public function testVote(TokenInterface $token, ?object $subject, string $attribute, mixed $expected): void { $voter = new StoredObjectVoter(); @@ -98,7 +98,7 @@ class StoredObjectVoterTest extends TestCase ]; } - private function buildToken(StoredObjectRoleEnum $storedObjectRoleEnum = null, StoredObject $storedObject = null): TokenInterface + private function buildToken(?StoredObjectRoleEnum $storedObjectRoleEnum = null, ?StoredObject $storedObject = null): TokenInterface { $token = $this->prophesize(TokenInterface::class); diff --git a/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php b/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php index 012cd62c4..1a2608388 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php +++ b/src/Bundle/ChillJobBundle/src/Entity/CSPerson.php @@ -113,7 +113,7 @@ class CSPerson 'ASS', 'RSA', 'AAH', -// 'autre', + // 'autre', ]; /** @@ -140,7 +140,7 @@ class CSPerson 'referent_RSA', 'mission_locale', 'rqth', -// 'autre', + // 'autre', ]; /** @@ -226,7 +226,7 @@ class CSPerson 'scooter', 'velo', 'voiture', -// 'autre', + // 'autre', ]; /** diff --git a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php index 75ff04367..5ae19a365 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Immersion.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Immersion.php @@ -523,12 +523,10 @@ class Immersion implements \Stringable /** * Get duration. - * - * @return \DateInterval */ public function getDuration() { - return new \DateInterval($this->duration); + return $this->duration; } public function getDateEndComputed() diff --git a/src/Bundle/ChillJobBundle/src/Form/Type/PickRomeAppellationType.php b/src/Bundle/ChillJobBundle/src/Form/Type/PickRomeAppellationType.php index 6ae77ba62..174a25c18 100644 --- a/src/Bundle/ChillJobBundle/src/Form/Type/PickRomeAppellationType.php +++ b/src/Bundle/ChillJobBundle/src/Form/Type/PickRomeAppellationType.php @@ -88,7 +88,7 @@ class PickRomeAppellationType extends AbstractType ->setDefault('class', Appellation::class) ->setDefault('choice_label', fn (Appellation $a) => $a->getLibelle()) ->setDefault('placeholder', 'Choisir une appellation') - // ->setDefault('attr', ['class' => 'select2 ']) + ->setDefault('attr', ['class' => 'select2 ']) ->setDefault('choice_loader', fn (Options $o) => new RomeAppellationChoiceLoader( $this->em, $this->apiPartenaire, From b96cbc55947610b620ce6b8c5ab7835fd365b1f6 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 22 May 2024 17:13:27 +0200 Subject: [PATCH 060/136] rector fixes --- .../Tests/Controller/WebdavControllerTest.php | 2 +- .../Tests/Dav/Request/PropfindRequestAnalyzerTest.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Bundle/ChillDocStoreBundle/Tests/Controller/WebdavControllerTest.php b/src/Bundle/ChillDocStoreBundle/Tests/Controller/WebdavControllerTest.php index fab84ce7f..771386a60 100644 --- a/src/Bundle/ChillDocStoreBundle/Tests/Controller/WebdavControllerTest.php +++ b/src/Bundle/ChillDocStoreBundle/Tests/Controller/WebdavControllerTest.php @@ -36,7 +36,7 @@ class WebdavControllerTest extends KernelTestCase { self::bootKernel(); - $this->engine = self::$container->get(\Twig\Environment::class); + $this->engine = self::getContainer()->get(\Twig\Environment::class); } private function buildController(): WebdavController diff --git a/src/Bundle/ChillDocStoreBundle/Tests/Dav/Request/PropfindRequestAnalyzerTest.php b/src/Bundle/ChillDocStoreBundle/Tests/Dav/Request/PropfindRequestAnalyzerTest.php index babe9932a..b3012f3c6 100644 --- a/src/Bundle/ChillDocStoreBundle/Tests/Dav/Request/PropfindRequestAnalyzerTest.php +++ b/src/Bundle/ChillDocStoreBundle/Tests/Dav/Request/PropfindRequestAnalyzerTest.php @@ -47,7 +47,7 @@ class PropfindRequestAnalyzerTest extends TestCase } } - public function provideRequestedProperties(): iterable + public static function provideRequestedProperties(): iterable { yield [ <<<'XML' From 33a6f9996e73d4607ace63a21cce28246ec22c73 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 22 May 2024 21:02:17 +0200 Subject: [PATCH 061/136] remove dumps --- package.json | 2 +- src/Bundle/ChillEventBundle/Controller/EventController.php | 1 - .../ChillMainBundle/Controller/PermissionsGroupController.php | 2 -- 3 files changed, 1 insertion(+), 4 deletions(-) diff --git a/package.json b/package.json index 634cee4b6..ed1747439 100644 --- a/package.json +++ b/package.json @@ -26,7 +26,7 @@ "popper.js": "^1.16.1", "postcss-loader": "^7.0.2", "raw-loader": "^4.0.2", - "sass-loader": "^13.0.0", + "sass-loader": "^14.0.0", "select2": "^4.0.13", "select2-bootstrap-theme": "0.1.0-beta.10", "style-loader": "^3.3.1", diff --git a/src/Bundle/ChillEventBundle/Controller/EventController.php b/src/Bundle/ChillEventBundle/Controller/EventController.php index ad67728d7..95817485c 100644 --- a/src/Bundle/ChillEventBundle/Controller/EventController.php +++ b/src/Bundle/ChillEventBundle/Controller/EventController.php @@ -418,7 +418,6 @@ final class EventController extends AbstractController $builder->add('event_id', HiddenType::class, [ 'data' => $event->getId(), ]); - dump($event->getId()); return $builder->getForm(); } diff --git a/src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php b/src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php index ec28d3040..e3327648a 100644 --- a/src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php +++ b/src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php @@ -61,8 +61,6 @@ final class PermissionsGroupController extends AbstractController $form = $this->createAddRoleScopeForm($permissionsGroup); $form->handleRequest($request); - dump($form->isSubmitted()); - if ($form->isSubmitted() && $form->isValid()) { $roleScope = $this->getPersistentRoleScopeBy( $form['composed_role_scope']->getData()->getRole(), From a5c25761247e339da53db8e038759a205addacb4 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Thu, 23 May 2024 12:46:12 +0200 Subject: [PATCH 062/136] Fix the appellation selection for projet professional --- .../ApiHelper/PartenaireRomeAppellation.php | 35 ++++++++----------- .../RomeAppellationChoiceLoader.php | 3 -- 2 files changed, 14 insertions(+), 24 deletions(-) diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php index cb40311b6..b2a3db3ac 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php @@ -65,30 +65,23 @@ class PartenaireRomeAppellation { $bearer = $this->getBearer(); - $request = new Request('GET', 'appellation'); - $parameters = [ - 'query' => [ - 'q' => $search, - 'fq' => 'libelle', - ], - 'headers' => [ - 'Authorization' => 'Bearer '.$bearer, - ], - ]; try { - $response = $this->handleRequest( - $request, - $parameters, - $this->client, - $this->logger - ); + $response = $this->httpClient->request( + 'GET', self::BASE . 'appellation/requete', [ + 'headers' => [ + 'Authorization' => 'Bearer '.$bearer, + 'Accept' => 'application/json', + ], + 'query' => [ + 'q' => $search + ], + ] + ); - return Utils::jsonDecode((string) $response->getBody()); - } catch (ClientException $e) { - dump($e->getResponse()->getBody()->getContents()); + return $response->toArray()['resultats']; + } catch (HttpExceptionInterface $exception) { + throw $exception; } - - return new Response('No appellation found'); } public function getAppellation($code) diff --git a/src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php b/src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php index 0952991e4..83f1f85a1 100644 --- a/src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php +++ b/src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php @@ -50,9 +50,6 @@ class RomeAppellationChoiceLoader implements ChoiceLoaderInterface */ protected $validator; - /** - * RomeAppellationChoiceLoader constructor. - */ public function __construct( EntityManagerInterface $em, PartenaireRomeAppellation $apiAppellation, From 405aad7333de8310eeae3d8a0ef8cbe9796c82db Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Thu, 23 May 2024 13:47:33 +0200 Subject: [PATCH 063/136] fix rome appellation selector and admin --- .../ApiHelper/PartenaireRomeAppellation.php | 44 +++++++++---------- .../src/Controller/RomeController.php | 4 +- .../src/Resources/config/services.yml | 8 ++-- .../ChillJobBundle/src/Entity/Rome/Metier.php | 2 +- .../RomeAppellationChoiceLoader.php | 38 +++++++++++----- .../Controller/PermissionsGroupController.php | 2 +- 6 files changed, 56 insertions(+), 42 deletions(-) diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php index b2a3db3ac..2daf280bb 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php @@ -17,6 +17,7 @@ use GuzzleHttp\Psr7\Request; use GuzzleHttp\Utils; use Psr\Log\LoggerInterface; use Symfony\Component\HttpFoundation\Response; +use Symfony\Contracts\HttpClient\Exception\HttpExceptionInterface; /** * Queries for ROME partenaires api. @@ -39,9 +40,12 @@ class PartenaireRomeAppellation */ protected $logger; + private const BASE = 'https://api.pole-emploi.io/partenaire/rome-metiers/v1/metiers/'; + public function __construct( ApiWrapper $wrapper, - LoggerInterface $logger + LoggerInterface $logger, + private \Symfony\Contracts\HttpClient\HttpClientInterface $httpClient, ) { $this->wrapper = $wrapper; $this->logger = $logger; @@ -58,10 +62,7 @@ class PartenaireRomeAppellation ]); } - /** - * @param string $search - */ - public function getListeAppellation($search) + public function getListeAppellation(string $search): array { $bearer = $this->getBearer(); @@ -84,27 +85,24 @@ class PartenaireRomeAppellation } } - public function getAppellation($code) + public function getAppellation(string $code): array { $bearer = $this->getBearer(); - $request = new Request('GET', sprintf('appellation/%s', $code)); - $parameters = [ - 'headers' => [ - 'Authorization' => 'Bearer '.$bearer, - ], - 'query' => [ - 'champs' => 'code,libelle,metier(code,libelle)', - ], - ]; + try { + $response = $this->httpClient->request('GET', sprintf(self::BASE . 'appellation/%s', $code), [ + 'headers' => [ + 'Authorization' => 'Bearer '.$bearer, + 'Accept' => 'application/json', + ], + 'query' => [ + 'champs' => 'code,libelle,metier(code,libelle)', + ], + ]); - $response = $this->handleRequest( - $request, - $parameters, - $this->client, - $this->logger - ); - - return Utils::jsonDecode((string) $response->getBody()); + return $response->toArray(); + } catch (HttpExceptionInterface $exception) { + throw $exception; + } } } diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/Controller/RomeController.php b/src/Bundle/ChillFranceTravailApiBundle/src/Controller/RomeController.php index ef7a0619f..5a26d590c 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/Controller/RomeController.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/Controller/RomeController.php @@ -41,8 +41,8 @@ class RomeController extends AbstractController $results = []; foreach ($appellations as $appellation) { - $appellation->id = 'original-'.$appellation->code; - $appellation->text = $appellation->libelle; + $appellation['id'] = 'original-'.$appellation['code']; + $appellation['text'] = $appellation['libelle']; $results[] = $appellation; } diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/Resources/config/services.yml b/src/Bundle/ChillFranceTravailApiBundle/src/Resources/config/services.yml index 2bb364f7a..658a152dc 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/Resources/config/services.yml +++ b/src/Bundle/ChillFranceTravailApiBundle/src/Resources/config/services.yml @@ -1,12 +1,14 @@ services: + _defaults: + autowire: true + autoconfigure: true + Chill\FranceTravailApiBundle\ApiHelper\ApiWrapper: $clientId: '%env(FRANCE_TRAVAIL_CLIENT_ID)%' $clientSecret: '%env(FRANCE_TRAVAIL_CLIENT_SECRET)%' $redis: '@Chill\MainBundle\Redis\ChillRedis' - Chill\FranceTravailApiBundle\ApiHelper\PartenaireRomeAppellation: - $wrapper: '@Chill\FranceTravailApiBundle\ApiHelper\ApiWrapper' - $logger: '@Psr\Log\LoggerInterface' + Chill\FranceTravailApiBundle\ApiHelper\PartenaireRomeAppellation: ~ Chill\FranceTravailApiBundle\Controller\RomeController: autowire: true diff --git a/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php b/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php index 668b2283f..ce44a6acf 100644 --- a/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php +++ b/src/Bundle/ChillJobBundle/src/Entity/Rome/Metier.php @@ -36,7 +36,7 @@ class Metier * @var \Doctrine\Common\Collections\Collection */ #[ORM\OneToMany(targetEntity: Appellation::class, mappedBy: 'metier')] - private readonly \Doctrine\Common\Collections\Collection $appellations; + private \Doctrine\Common\Collections\Collection $appellations; public function __construct() { diff --git a/src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php b/src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php index 83f1f85a1..9e849ab5e 100644 --- a/src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php +++ b/src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php @@ -11,6 +11,7 @@ declare(strict_types=1); namespace Chill\JobBundle\Form\ChoiceLoader; +use App\App; use Chill\FranceTravailApiBundle\ApiHelper\PartenaireRomeAppellation; use Symfony\Component\Form\ChoiceList\Loader\ChoiceLoaderInterface; use Symfony\Component\Form\ChoiceList\ChoiceListInterface; @@ -50,6 +51,11 @@ class RomeAppellationChoiceLoader implements ChoiceLoaderInterface */ protected $validator; + /** + * @var array + */ + private $toBeCreated = []; + public function __construct( EntityManagerInterface $em, PartenaireRomeAppellation $apiAppellation, @@ -80,33 +86,41 @@ class RomeAppellationChoiceLoader implements ChoiceLoaderInterface if (str_starts_with($v, 'original-')) { $code = \substr($v, \strlen('original-')); $appellation = $this->appellationRepository->findOneBy(['code' => $code]); + + if (null === $appellation) { + if (array_key_exists($v, $this->toBeCreated)) { + [$appellation, $metier] = $this->toBeCreated[$v]; + } + } } else { $id = $v; $appellation = $this->appellationRepository->find($id); + $metier = $appellation->getMetier(); } if (null === $appellation && '' !== $code) { $def = $this->apiAppellation->getAppellation($code); - $metier = $this->em->getRepository(Metier::class) - ->findOneBy(['code' => $def->metier->code]) - ; - if (null === $metier) { - $metier = (new Metier()) - ->setCode($def->metier->code) - ->setLibelle($def->metier->libelle) - ; - } + $metier = $metier + ?? $this->em->getRepository(Metier::class) + ->findOneBy(['code' => $def['metier']['code']]) + ?? (new Metier()) + ->setCode($def['metier']['code']) + ->setLibelle($def['metier']['libelle']); $appellation = new Appellation(); $appellation - ->setCode($def->code) - ->setLibelle($def->libelle) + ->setCode($def['code']) + ->setLibelle($def['libelle']) ->setMetier($metier) ; - if ([] === $this->validator->validate($appellation) && [] === $this->validator->validate($metier)) { + $errorsAppellation = $this->validator->validate($appellation); + $errorsMetier = $this->validator->validate($metier); + + if ($errorsAppellation->count() === 0 && $errorsMetier->count() === 0) { + $this->toBeCreated[$v] = [$appellation, $metier]; $this->em->persist($appellation); } } diff --git a/src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php b/src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php index e3327648a..a326e0ff5 100644 --- a/src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php +++ b/src/Bundle/ChillMainBundle/Controller/PermissionsGroupController.php @@ -151,7 +151,7 @@ final class PermissionsGroupController extends AbstractController /** * remove an association between permissionsGroup and roleScope. */ - #[\Symfony\Component\Routing\Annotation\Route(path: '/{_locale}/admin/permissionsgroup/{pgid}/delete_link_role_scope/{rsid}', name: 'admin_permissionsgroup_delete_role_scope', methods: ['DELETE'])] + #[\Symfony\Component\Routing\Annotation\Route(path: '/{_locale}/admin/permissionsgroup/{pgid}/delete_link_role_scope/{rsid}', name: 'admin_permissionsgroup_delete_role_scope', methods: ['POST'])] public function deleteLinkRoleScopeAction(int $pgid, int $rsid): Response { $permissionsGroup = $this->permissionsGroupRepository->find($pgid); From 436ef33dbcb0bab0192f75d1f58e6f5170ffd395 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Thu, 23 May 2024 14:05:14 +0200 Subject: [PATCH 064/136] final fix for appellation selector: define metier when appellation already exists --- .../ApiHelper/PartenaireRomeAppellation.php | 46 +++++++++---------- .../RomeAppellationChoiceLoader.php | 18 ++++---- 2 files changed, 32 insertions(+), 32 deletions(-) diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php index 2daf280bb..a548894c9 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php @@ -12,11 +12,7 @@ declare(strict_types=1); namespace Chill\FranceTravailApiBundle\ApiHelper; use GuzzleHttp\Client; -use GuzzleHttp\Exception\ClientException; -use GuzzleHttp\Psr7\Request; -use GuzzleHttp\Utils; use Psr\Log\LoggerInterface; -use Symfony\Component\HttpFoundation\Response; use Symfony\Contracts\HttpClient\Exception\HttpExceptionInterface; /** @@ -67,19 +63,21 @@ class PartenaireRomeAppellation $bearer = $this->getBearer(); try { - $response = $this->httpClient->request( - 'GET', self::BASE . 'appellation/requete', [ - 'headers' => [ - 'Authorization' => 'Bearer '.$bearer, - 'Accept' => 'application/json', - ], - 'query' => [ - 'q' => $search - ], - ] - ); + $response = $this->httpClient->request( + 'GET', + self::BASE.'appellation/requete', + [ + 'headers' => [ + 'Authorization' => 'Bearer '.$bearer, + 'Accept' => 'application/json', + ], + 'query' => [ + 'q' => $search, + ], + ] + ); - return $response->toArray()['resultats']; + return $response->toArray()['resultats']; } catch (HttpExceptionInterface $exception) { throw $exception; } @@ -90,14 +88,14 @@ class PartenaireRomeAppellation $bearer = $this->getBearer(); try { - $response = $this->httpClient->request('GET', sprintf(self::BASE . 'appellation/%s', $code), [ - 'headers' => [ - 'Authorization' => 'Bearer '.$bearer, - 'Accept' => 'application/json', - ], - 'query' => [ - 'champs' => 'code,libelle,metier(code,libelle)', - ], + $response = $this->httpClient->request('GET', sprintf(self::BASE.'appellation/%s', $code), [ + 'headers' => [ + 'Authorization' => 'Bearer '.$bearer, + 'Accept' => 'application/json', + ], + 'query' => [ + 'champs' => 'code,libelle,metier(code,libelle)', + ], ]); return $response->toArray(); diff --git a/src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php b/src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php index 9e849ab5e..39ab23ae1 100644 --- a/src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php +++ b/src/Bundle/ChillJobBundle/src/Form/ChoiceLoader/RomeAppellationChoiceLoader.php @@ -11,7 +11,6 @@ declare(strict_types=1); namespace Chill\JobBundle\Form\ChoiceLoader; -use App\App; use Chill\FranceTravailApiBundle\ApiHelper\PartenaireRomeAppellation; use Symfony\Component\Form\ChoiceList\Loader\ChoiceLoaderInterface; use Symfony\Component\Form\ChoiceList\ChoiceListInterface; @@ -87,6 +86,10 @@ class RomeAppellationChoiceLoader implements ChoiceLoaderInterface $code = \substr($v, \strlen('original-')); $appellation = $this->appellationRepository->findOneBy(['code' => $code]); + if ($appellation) { + $metier = $appellation->getMetier(); + } + if (null === $appellation) { if (array_key_exists($v, $this->toBeCreated)) { [$appellation, $metier] = $this->toBeCreated[$v]; @@ -101,12 +104,11 @@ class RomeAppellationChoiceLoader implements ChoiceLoaderInterface if (null === $appellation && '' !== $code) { $def = $this->apiAppellation->getAppellation($code); - $metier = $metier - ?? $this->em->getRepository(Metier::class) - ->findOneBy(['code' => $def['metier']['code']]) - ?? (new Metier()) - ->setCode($def['metier']['code']) - ->setLibelle($def['metier']['libelle']); + $metier ??= $this->em->getRepository(Metier::class) + ->findOneBy(['code' => $def['metier']['code']]) + ?? (new Metier()) + ->setCode($def['metier']['code']) + ->setLibelle($def['metier']['libelle']); $appellation = new Appellation(); @@ -119,7 +121,7 @@ class RomeAppellationChoiceLoader implements ChoiceLoaderInterface $errorsAppellation = $this->validator->validate($appellation); $errorsMetier = $this->validator->validate($metier); - if ($errorsAppellation->count() === 0 && $errorsMetier->count() === 0) { + if (0 === $errorsAppellation->count() && 0 === $errorsMetier->count()) { $this->toBeCreated[$v] = [$appellation, $metier]; $this->em->persist($appellation); } From f60a595ab6f7dde23de93aa7d01899ea203e1115 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 29 May 2024 11:37:04 +0200 Subject: [PATCH 065/136] Update vue toast version and implementation --- package.json | 2 +- .../Resources/public/vuejs/AccompanyingCourse/index.js | 6 +++--- .../public/vuejs/AccompanyingCourseWorkCreate/index.js | 4 ++-- .../public/vuejs/AccompanyingCourseWorkEdit/index.js | 4 ++-- .../Resources/public/vuejs/HouseholdMembersEditor/index.js | 4 ++-- .../Resources/public/vuejs/VisGraph/index.js | 5 ++--- 6 files changed, 12 insertions(+), 13 deletions(-) diff --git a/package.json b/package.json index ed1747439..1a83946b8 100644 --- a/package.json +++ b/package.json @@ -55,7 +55,7 @@ "vue": "^3.2.37", "vue-i18n": "^9.1.6", "vue-multiselect": "3.0.0-alpha.2", - "vue-toast-notification": "^2.0", + "vue-toast-notification": "^3.1.2", "vuex": "^4.0.0" }, "browserslist": [ diff --git a/src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourse/index.js b/src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourse/index.js index 4cf073eb4..a420671b5 100644 --- a/src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourse/index.js +++ b/src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourse/index.js @@ -2,10 +2,10 @@ import { createApp } from 'vue' import { _createI18n } from 'ChillMainAssets/vuejs/_js/i18n' import { appMessages } from './js/i18n' import { initPromise } from './store' -import VueToast from 'vue-toast-notification'; import 'vue-toast-notification/dist/theme-sugar.css'; import App from './App.vue'; import Banner from './components/Banner.vue'; +import ToastPlugin from "vue-toast-notification"; const root = window.vueRootComponent; @@ -22,7 +22,7 @@ if (root === 'app') { }) .use(store) .use(i18n) - .use(VueToast, { + .use(ToastPlugin, { position: "bottom-right", type: "error", duration: 5000, @@ -46,7 +46,7 @@ if (root === 'banner') { }) .use(store) .use(i18n) - .use(VueToast, { + .use(ToastPlugin, { position: "bottom-right", type: "error", duration: 5000, diff --git a/src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourseWorkCreate/index.js b/src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourseWorkCreate/index.js index 1f8a25d3a..16d04f2ed 100644 --- a/src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourseWorkCreate/index.js +++ b/src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourseWorkCreate/index.js @@ -3,7 +3,7 @@ import {_createI18n} from 'ChillMainAssets/vuejs/_js/i18n'; import {store} from './store'; import {personMessages} from 'ChillPersonAssets/vuejs/_js/i18n' import App from './App.vue'; -import VueToast from "vue-toast-notification"; +import ToastPlugin from "vue-toast-notification"; const i18n = _createI18n(personMessages); @@ -12,7 +12,7 @@ const app = createApp({ }) .use(store) .use(i18n) - .use(VueToast, { + .use(ToastPlugin, { position: "bottom-right", type: "error", duration: 10000, diff --git a/src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourseWorkEdit/index.js b/src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourseWorkEdit/index.js index b0868b48b..fc6d96674 100644 --- a/src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourseWorkEdit/index.js +++ b/src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourseWorkEdit/index.js @@ -2,9 +2,9 @@ import { createApp } from 'vue'; import { _createI18n } from 'ChillMainAssets/vuejs/_js/i18n'; import { store } from './store'; import { personMessages } from 'ChillPersonAssets/vuejs/_js/i18n'; -import VueToast from 'vue-toast-notification'; import 'vue-toast-notification/dist/theme-sugar.css'; import App from './App.vue'; +import ToastPlugin from "vue-toast-notification"; const i18n = _createI18n(personMessages); @@ -12,7 +12,7 @@ const app = createApp({ template: ``, }) .use(store) -.use(VueToast, { +.use(ToastPlugin, { position: "bottom-right", type: "error", duration: 10000, diff --git a/src/Bundle/ChillPersonBundle/Resources/public/vuejs/HouseholdMembersEditor/index.js b/src/Bundle/ChillPersonBundle/Resources/public/vuejs/HouseholdMembersEditor/index.js index d2b271e17..6e4d3fe83 100644 --- a/src/Bundle/ChillPersonBundle/Resources/public/vuejs/HouseholdMembersEditor/index.js +++ b/src/Bundle/ChillPersonBundle/Resources/public/vuejs/HouseholdMembersEditor/index.js @@ -2,8 +2,8 @@ import { createApp } from 'vue'; import { _createI18n } from 'ChillMainAssets/vuejs/_js/i18n'; import { appMessages } from './js/i18n'; import { store } from './store'; -import VueToast from 'vue-toast-notification'; import 'vue-toast-notification/dist/theme-sugar.css'; +import ToastPlugin from 'vue-toast-notification'; import App from './App.vue'; @@ -14,7 +14,7 @@ const app = createApp({ }) .use(store) .use(i18n) -.use(VueToast, { +.use(ToastPlugin, { position: "bottom-right", type: "error", duration: 5000, diff --git a/src/Bundle/ChillPersonBundle/Resources/public/vuejs/VisGraph/index.js b/src/Bundle/ChillPersonBundle/Resources/public/vuejs/VisGraph/index.js index a64afd4a1..3a1a72c93 100644 --- a/src/Bundle/ChillPersonBundle/Resources/public/vuejs/VisGraph/index.js +++ b/src/Bundle/ChillPersonBundle/Resources/public/vuejs/VisGraph/index.js @@ -3,10 +3,9 @@ import { store } from "./store.js" import { _createI18n } from 'ChillMainAssets/vuejs/_js/i18n' import { visMessages } from './i18n' import App from './App.vue' -import VueToast from 'vue-toast-notification'; import 'vue-toast-notification/dist/theme-sugar.css'; - import './vis-network'; +import ToastPlugin from "vue-toast-notification"; const i18n = _createI18n(visMessages) const container = document.getElementById('relationship-graph') @@ -27,7 +26,7 @@ const app = createApp({ }) .use(store) .use(i18n) -.use(VueToast, { +.use(ToastPlugin, { position: "bottom-right", type: "error", duration: 5000, From 3fd6e52e9d6ca57a80a9a7656486e40fc9bde2a8 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 29 May 2024 11:37:42 +0200 Subject: [PATCH 066/136] remove unnecessary constraints from 3party properties acronym and nameCompany --- src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php b/src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php index 7fa3178fe..8e9d8435b 100644 --- a/src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php +++ b/src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php @@ -85,7 +85,7 @@ class ThirdParty implements TrackCreationInterface, TrackUpdateInterface, \Strin /** * [fr] Sigle. */ - #[Assert\Length(min: 2)] +// #[Assert\Length(min: 2)] #[Groups(['read', 'write', 'docgen:read', 'docgen:read:3party:parent'])] #[ORM\Column(name: 'acronym', type: \Doctrine\DBAL\Types\Types::STRING, length: 64, nullable: true)] private ?string $acronym = ''; @@ -184,7 +184,7 @@ class ThirdParty implements TrackCreationInterface, TrackUpdateInterface, \Strin /** * [fr] Raison sociale. */ - #[Assert\Length(min: 3)] +// #[Assert\Length(min: 3)] #[Groups(['read', 'write', 'docgen:read', 'docgen:read:3party:parent'])] #[ORM\Column(name: 'name_company', type: \Doctrine\DBAL\Types\Types::STRING, length: 255, nullable: true)] private ?string $nameCompany = ''; From 87a6757e5e41f823d3ca6824e08ac914170d3ece Mon Sep 17 00:00:00 2001 From: LenaertsJ Date: Tue, 25 Jun 2024 11:24:57 +0000 Subject: [PATCH 067/136] Add eventBundle exports --- composer.json | 2 +- rector.php | 8 +- .../Controller/EventController.php | 3 +- .../Controller/ParticipationController.php | 2 +- .../ChillEventExtension.php | 7 +- .../Export/Aggregator/EventDateAggregator.php | 110 +++++++++++++++ .../Export/Aggregator/EventTypeAggregator.php | 83 ++++++++++++ .../Export/Aggregator/RoleAggregator.php | 83 ++++++++++++ .../ChillEventBundle/Export/Declarations.php | 22 +++ .../Export/CountEventParticipations.php | 127 +++++++++++++++++ .../Export/Export/CountEvents.php | 128 ++++++++++++++++++ .../Export/Filter/EventDateFilter.php | 97 +++++++++++++ .../Export/Filter/EventTypeFilter.php | 95 +++++++++++++ .../Export/Filter/RoleFilter.php | 95 +++++++++++++ .../Menu/PersonMenuBuilder.php | 2 +- .../Menu/SectionMenuBuilder.php | 2 +- .../Repository/EventACLAwareRepository.php | 2 +- .../Repository/RoleRepository.php | 54 +++++++- .../{Authorization => }/EventVoter.php | 64 +++------ .../ParticipationVoter.php | 59 +++----- .../Export/CountEventParticipationsTest.php | 43 ++++++ .../Tests/Export/CountEventTest.php | 43 ++++++ .../aggregators/EventDateAggregatorTest.php | 59 ++++++++ .../aggregators/EventTypeAggregatorTest.php | 59 ++++++++ .../Export/aggregators/RoleAggregatorTest.php | 63 +++++++++ .../Export/filters/EventDateFilterTest.php | 65 +++++++++ .../Export/filters/EventTypeFilterTest.php | 76 +++++++++++ .../Tests/Export/filters/RoleFilterTest.php | 81 +++++++++++ .../EventACLAwareRepositoryTest.php | 2 +- .../config/services/authorization.yaml | 20 --- .../config/services/export.yaml | 41 ++++++ .../config/services/security.yaml | 14 ++ .../translations/messages.fr.yml | 22 +++ 33 files changed, 1512 insertions(+), 121 deletions(-) create mode 100644 src/Bundle/ChillEventBundle/Export/Aggregator/EventDateAggregator.php create mode 100644 src/Bundle/ChillEventBundle/Export/Aggregator/EventTypeAggregator.php create mode 100644 src/Bundle/ChillEventBundle/Export/Aggregator/RoleAggregator.php create mode 100644 src/Bundle/ChillEventBundle/Export/Declarations.php create mode 100644 src/Bundle/ChillEventBundle/Export/Export/CountEventParticipations.php create mode 100644 src/Bundle/ChillEventBundle/Export/Export/CountEvents.php create mode 100644 src/Bundle/ChillEventBundle/Export/Filter/EventDateFilter.php create mode 100644 src/Bundle/ChillEventBundle/Export/Filter/EventTypeFilter.php create mode 100644 src/Bundle/ChillEventBundle/Export/Filter/RoleFilter.php rename src/Bundle/ChillEventBundle/Security/{Authorization => }/EventVoter.php (60%) rename src/Bundle/ChillEventBundle/Security/{Authorization => }/ParticipationVoter.php (62%) create mode 100644 src/Bundle/ChillEventBundle/Tests/Export/CountEventParticipationsTest.php create mode 100644 src/Bundle/ChillEventBundle/Tests/Export/CountEventTest.php create mode 100644 src/Bundle/ChillEventBundle/Tests/Export/aggregators/EventDateAggregatorTest.php create mode 100644 src/Bundle/ChillEventBundle/Tests/Export/aggregators/EventTypeAggregatorTest.php create mode 100644 src/Bundle/ChillEventBundle/Tests/Export/aggregators/RoleAggregatorTest.php create mode 100644 src/Bundle/ChillEventBundle/Tests/Export/filters/EventDateFilterTest.php create mode 100644 src/Bundle/ChillEventBundle/Tests/Export/filters/EventTypeFilterTest.php create mode 100644 src/Bundle/ChillEventBundle/Tests/Export/filters/RoleFilterTest.php delete mode 100644 src/Bundle/ChillEventBundle/config/services/authorization.yaml create mode 100644 src/Bundle/ChillEventBundle/config/services/export.yaml create mode 100644 src/Bundle/ChillEventBundle/config/services/security.yaml diff --git a/composer.json b/composer.json index 37282788e..f08f94677 100644 --- a/composer.json +++ b/composer.json @@ -76,7 +76,7 @@ "phpunit/phpunit": ">= 7.5", "psalm/plugin-phpunit": "^0.18.4", "psalm/plugin-symfony": "^4.0.2", - "rector/rector": "^1.1.0", + "rector/rector": "1.1.1", "symfony/debug-bundle": "^5.1", "symfony/dotenv": "^4.4", "symfony/maker-bundle": "^1.20", diff --git a/rector.php b/rector.php index 8aa62bdd0..0e6961bb6 100644 --- a/rector.php +++ b/rector.php @@ -32,9 +32,13 @@ return static function (RectorConfig $rectorConfig): void { //define sets of rules $rectorConfig->sets([ LevelSetList::UP_TO_PHP_82, - \Rector\Symfony\Set\SymfonyLevelSetList::UP_TO_SYMFONY_44, + \Rector\Symfony\Set\SymfonySetList::SYMFONY_40, + \Rector\Symfony\Set\SymfonySetList::SYMFONY_41, + \Rector\Symfony\Set\SymfonySetList::SYMFONY_42, + \Rector\Symfony\Set\SymfonySetList::SYMFONY_43, + \Rector\Symfony\Set\SymfonySetList::SYMFONY_44, \Rector\Doctrine\Set\DoctrineSetList::DOCTRINE_CODE_QUALITY, - \Rector\PHPUnit\Set\PHPUnitLevelSetList::UP_TO_PHPUNIT_90, + \Rector\PHPUnit\Set\PHPUnitSetList::PHPUNIT_90, ]); // some routes are added twice if it remains activated diff --git a/src/Bundle/ChillEventBundle/Controller/EventController.php b/src/Bundle/ChillEventBundle/Controller/EventController.php index e49c02c06..4a000eefc 100644 --- a/src/Bundle/ChillEventBundle/Controller/EventController.php +++ b/src/Bundle/ChillEventBundle/Controller/EventController.php @@ -15,7 +15,7 @@ use Chill\EventBundle\Entity\Event; use Chill\EventBundle\Entity\Participation; use Chill\EventBundle\Form\EventType; use Chill\EventBundle\Form\Type\PickEventType; -use Chill\EventBundle\Security\Authorization\EventVoter; +use Chill\EventBundle\Security\EventVoter; use Chill\MainBundle\Entity\Center; use Chill\MainBundle\Entity\User; use Chill\MainBundle\Pagination\PaginatorFactory; @@ -433,7 +433,6 @@ final class EventController extends AbstractController $builder->add('event_id', HiddenType::class, [ 'data' => $event->getId(), ]); - dump($event->getId()); return $builder->getForm(); } diff --git a/src/Bundle/ChillEventBundle/Controller/ParticipationController.php b/src/Bundle/ChillEventBundle/Controller/ParticipationController.php index 06a8dda29..2c20de7e9 100644 --- a/src/Bundle/ChillEventBundle/Controller/ParticipationController.php +++ b/src/Bundle/ChillEventBundle/Controller/ParticipationController.php @@ -15,7 +15,7 @@ use Chill\EventBundle\Entity\Event; use Chill\EventBundle\Entity\Participation; use Chill\EventBundle\Form\ParticipationType; use Chill\EventBundle\Repository\EventRepository; -use Chill\EventBundle\Security\Authorization\ParticipationVoter; +use Chill\EventBundle\Security\ParticipationVoter; use Chill\PersonBundle\Repository\PersonRepository; use Chill\PersonBundle\Security\Authorization\PersonVoter; use Doctrine\Common\Collections\Collection; diff --git a/src/Bundle/ChillEventBundle/DependencyInjection/ChillEventExtension.php b/src/Bundle/ChillEventBundle/DependencyInjection/ChillEventExtension.php index 8ddcab58c..0b30ca6c5 100644 --- a/src/Bundle/ChillEventBundle/DependencyInjection/ChillEventExtension.php +++ b/src/Bundle/ChillEventBundle/DependencyInjection/ChillEventExtension.php @@ -11,8 +11,8 @@ declare(strict_types=1); namespace Chill\EventBundle\DependencyInjection; -use Chill\EventBundle\Security\Authorization\EventVoter; -use Chill\EventBundle\Security\Authorization\ParticipationVoter; +use Chill\EventBundle\Security\EventVoter; +use Chill\EventBundle\Security\ParticipationVoter; use Symfony\Component\Config\FileLocator; use Symfony\Component\DependencyInjection\ContainerBuilder; use Symfony\Component\DependencyInjection\Extension\PrependExtensionInterface; @@ -33,12 +33,13 @@ class ChillEventExtension extends Extension implements PrependExtensionInterface $loader = new Loader\YamlFileLoader($container, new FileLocator(__DIR__.'/../config')); $loader->load('services.yaml'); - $loader->load('services/authorization.yaml'); + $loader->load('services/security.yaml'); $loader->load('services/fixtures.yaml'); $loader->load('services/forms.yaml'); $loader->load('services/repositories.yaml'); $loader->load('services/search.yaml'); $loader->load('services/timeline.yaml'); + $loader->load('services/export.yaml'); } /** (non-PHPdoc). diff --git a/src/Bundle/ChillEventBundle/Export/Aggregator/EventDateAggregator.php b/src/Bundle/ChillEventBundle/Export/Aggregator/EventDateAggregator.php new file mode 100644 index 000000000..1e519997a --- /dev/null +++ b/src/Bundle/ChillEventBundle/Export/Aggregator/EventDateAggregator.php @@ -0,0 +1,110 @@ + 'month', + 'by week' => 'week', + 'by year' => 'year', + ]; + + private const DEFAULT_CHOICE = 'year'; + + public function addRole(): ?string + { + return null; + } + + public function alterQuery(QueryBuilder $qb, $data) + { + $order = null; + + switch ($data['frequency']) { + case 'month': + $fmt = 'YYYY-MM'; + + break; + + case 'week': + $fmt = 'YYYY-IW'; + + break; + + case 'year': + $fmt = 'YYYY'; + $order = 'DESC'; + + break; + + default: + throw new \RuntimeException(sprintf("The frequency data '%s' is invalid.", $data['frequency'])); + } + + $qb->addSelect(sprintf("TO_CHAR(event.date, '%s') AS date_aggregator", $fmt)); + $qb->addGroupBy('date_aggregator'); + $qb->addOrderBy('date_aggregator', $order); + } + + public function applyOn(): string + { + return Declarations::EVENT; + } + + public function buildForm(FormBuilderInterface $builder) + { + $builder->add('frequency', ChoiceType::class, [ + 'choices' => self::CHOICES, + 'multiple' => false, + 'expanded' => true, + ]); + } + + public function getFormDefaultData(): array + { + return ['frequency' => self::DEFAULT_CHOICE]; + } + + public function getLabels($key, array $values, $data) + { + return static function ($value) use ($data): string { + if ('_header' === $value) { + return 'by '.$data['frequency']; + } + + if (null === $value) { + return ''; + } + + return match ($data['frequency']) { + default => $value, + }; + }; + } + + public function getQueryKeys($data): array + { + return ['date_aggregator']; + } + + public function getTitle(): string + { + return 'Group event by date'; + } +} diff --git a/src/Bundle/ChillEventBundle/Export/Aggregator/EventTypeAggregator.php b/src/Bundle/ChillEventBundle/Export/Aggregator/EventTypeAggregator.php new file mode 100644 index 000000000..c0010d77a --- /dev/null +++ b/src/Bundle/ChillEventBundle/Export/Aggregator/EventTypeAggregator.php @@ -0,0 +1,83 @@ +getAllAliases(), true)) { + $qb->leftJoin('event.type', 'eventtype'); + } + + $qb->addSelect(sprintf('IDENTITY(event.type) AS %s', self::KEY)); + $qb->addGroupBy(self::KEY); + } + + public function applyOn(): string + { + return Declarations::EVENT; + } + + public function buildForm(FormBuilderInterface $builder) + { + // no form required for this aggregator + } + + public function getFormDefaultData(): array + { + return []; + } + + public function getLabels($key, array $values, $data): \Closure + { + return function (int|string|null $value): string { + if ('_header' === $value) { + return 'Event type'; + } + + if (null === $value || '' === $value || null === $t = $this->eventTypeRepository->find($value)) { + return ''; + } + + return $this->translatableStringHelper->localize($t->getName()); + }; + } + + public function getQueryKeys($data): array + { + return [self::KEY]; + } + + public function getTitle() + { + return 'Group by event type'; + } +} diff --git a/src/Bundle/ChillEventBundle/Export/Aggregator/RoleAggregator.php b/src/Bundle/ChillEventBundle/Export/Aggregator/RoleAggregator.php new file mode 100644 index 000000000..f8d1985e2 --- /dev/null +++ b/src/Bundle/ChillEventBundle/Export/Aggregator/RoleAggregator.php @@ -0,0 +1,83 @@ +getAllAliases(), true)) { + $qb->leftJoin('event_part.role', 'role'); + } + + $qb->addSelect(sprintf('IDENTITY(event_part.role) AS %s', self::KEY)); + $qb->addGroupBy(self::KEY); + } + + public function applyOn(): string + { + return Declarations::EVENT_PARTICIPANTS; + } + + public function buildForm(FormBuilderInterface $builder) + { + // no form required for this aggregator + } + + public function getFormDefaultData(): array + { + return []; + } + + public function getLabels($key, array $values, $data): \Closure + { + return function (int|string|null $value): string { + if ('_header' === $value) { + return 'Participant role'; + } + + if (null === $value || '' === $value || null === $r = $this->roleRepository->find($value)) { + return ''; + } + + return $this->translatableStringHelper->localize($r->getName()); + }; + } + + public function getQueryKeys($data): array + { + return [self::KEY]; + } + + public function getTitle() + { + return 'Group by participant role'; + } +} diff --git a/src/Bundle/ChillEventBundle/Export/Declarations.php b/src/Bundle/ChillEventBundle/Export/Declarations.php new file mode 100644 index 000000000..8a873a673 --- /dev/null +++ b/src/Bundle/ChillEventBundle/Export/Declarations.php @@ -0,0 +1,22 @@ +filterStatsByCenters = $parameterBag->get('chill_main')['acl']['filter_stats_by_center']; + } + + public function buildForm(FormBuilderInterface $builder) + { + } + + public function getFormDefaultData(): array + { + return []; + } + + public function getAllowedFormattersTypes() + { + return [FormatterInterface::TYPE_TABULAR]; + } + + public function getDescription() + { + return 'Count participants to an event by various parameters.'; + } + + public function getGroup(): string + { + return 'Exports of events'; + } + + public function getLabels($key, array $values, $data) + { + if ('export_count_event_participants' !== $key) { + throw new \LogicException("the key {$key} is not used by this export"); + } + + return static fn ($value) => '_header' === $value ? 'Count event participants' : $value; + } + + public function getQueryKeys($data) + { + return ['export_count_event_participants']; + } + + public function getResult($query, $data) + { + return $query->getQuery()->getResult(Query::HYDRATE_SCALAR); + } + + public function getTitle() + { + return 'Count event participants'; + } + + public function getType(): string + { + return Declarations::EVENT_PARTICIPANTS; + } + + public function initiateQuery(array $requiredModifiers, array $acl, array $data = []) + { + $centers = array_map(static fn ($el) => $el['center'], $acl); + + $qb = $this->participationRepository + ->createQueryBuilder('event_part') + ->join('event_part.person', 'person'); + + $qb->select('COUNT(event_part.id) as export_count_event_participants'); + + if ($this->filterStatsByCenters) { + $qb + ->andWhere( + $qb->expr()->exists( + 'SELECT 1 FROM '.PersonCenterHistory::class.' acl_count_person_history WHERE acl_count_person_history.person = person + AND acl_count_person_history.center IN (:authorized_centers) + ' + ) + ) + ->setParameter('authorized_centers', $centers); + } + + return $qb; + } + + public function requiredRole(): string + { + return ParticipationVoter::STATS; + } + + public function supportsModifiers() + { + return [ + Declarations::EVENT_PARTICIPANTS, + PersonDeclarations::PERSON_TYPE, + ]; + } +} diff --git a/src/Bundle/ChillEventBundle/Export/Export/CountEvents.php b/src/Bundle/ChillEventBundle/Export/Export/CountEvents.php new file mode 100644 index 000000000..5a1930862 --- /dev/null +++ b/src/Bundle/ChillEventBundle/Export/Export/CountEvents.php @@ -0,0 +1,128 @@ +filterStatsByCenters = $parameterBag->get('chill_main')['acl']['filter_stats_by_center']; + } + + public function buildForm(FormBuilderInterface $builder) + { + } + + public function getFormDefaultData(): array + { + return []; + } + + public function getAllowedFormattersTypes() + { + return [FormatterInterface::TYPE_TABULAR]; + } + + public function getDescription() + { + return 'Count events by various parameters.'; + } + + public function getGroup(): string + { + return 'Exports of events'; + } + + public function getLabels($key, array $values, $data) + { + if ('export_count_event' !== $key) { + throw new \LogicException("the key {$key} is not used by this export"); + } + + return static fn ($value) => '_header' === $value ? 'Number of events' : $value; + } + + public function getQueryKeys($data) + { + return ['export_count_event']; + } + + public function getResult($query, $data) + { + return $query->getQuery()->getResult(Query::HYDRATE_SCALAR); + } + + public function getTitle() + { + return 'Count events'; + } + + public function getType(): string + { + return Declarations::EVENT; + } + + public function initiateQuery(array $requiredModifiers, array $acl, array $data = []) + { + $centers = array_map(static fn ($el) => $el['center'], $acl); + + $qb = $this->eventRepository + ->createQueryBuilder('event') + ->leftJoin('event.participations', 'epart') + ->leftJoin('epart.person', 'person'); + + $qb->select('COUNT(event.id) as export_count_event'); + + if ($this->filterStatsByCenters) { + $qb + ->andWhere( + $qb->expr()->exists( + 'SELECT 1 FROM '.PersonCenterHistory::class.' acl_count_person_history WHERE acl_count_person_history.person = person + AND acl_count_person_history.center IN (:authorized_centers) + ' + ) + ) + ->setParameter('authorized_centers', $centers); + } + + return $qb; + } + + public function requiredRole(): string + { + return EventVoter::STATS; + } + + public function supportsModifiers() + { + return [ + Declarations::EVENT, + PersonDeclarations::PERSON_TYPE, + ]; + } +} diff --git a/src/Bundle/ChillEventBundle/Export/Filter/EventDateFilter.php b/src/Bundle/ChillEventBundle/Export/Filter/EventDateFilter.php new file mode 100644 index 000000000..650c5348d --- /dev/null +++ b/src/Bundle/ChillEventBundle/Export/Filter/EventDateFilter.php @@ -0,0 +1,97 @@ +getDQLPart('where'); + $clause = $qb->expr()->between( + 'event.date', + ':date_from', + ':date_to' + ); + + if ($where instanceof Expr\Andx) { + $where->add($clause); + } else { + $where = $qb->expr()->andX($clause); + } + + $qb->add('where', $where); + $qb->setParameter( + 'date_from', + $this->rollingDateConverter->convert($data['date_from']) + ); + $qb->setParameter( + 'date_to', + $this->rollingDateConverter->convert($data['date_to']) + ); + } + + public function applyOn(): string + { + return Declarations::EVENT; + } + + public function buildForm(FormBuilderInterface $builder) + { + $builder + ->add('date_from', PickRollingDateType::class, [ + 'label' => 'Events after this date', + ]) + ->add('date_to', PickRollingDateType::class, [ + 'label' => 'Events before this date', + ]); + } + + public function getFormDefaultData(): array + { + return ['date_from' => new RollingDate(RollingDate::T_YEAR_PREVIOUS_START), 'date_to' => new RollingDate(RollingDate::T_TODAY)]; + } + + public function describeAction($data, $format = 'string') + { + return [ + 'Filtered by date of event: only between %date_from% and %date_to%', + [ + '%date_from%' => $this->rollingDateConverter->convert($data['date_from'])->format('d-m-Y'), + '%date_to%' => $this->rollingDateConverter->convert($data['date_to'])->format('d-m-Y'), + ], + ]; + } + + public function getTitle() + { + return 'Filtered by event date'; + } +} diff --git a/src/Bundle/ChillEventBundle/Export/Filter/EventTypeFilter.php b/src/Bundle/ChillEventBundle/Export/Filter/EventTypeFilter.php new file mode 100644 index 000000000..d4c1a96c0 --- /dev/null +++ b/src/Bundle/ChillEventBundle/Export/Filter/EventTypeFilter.php @@ -0,0 +1,95 @@ +expr()->in('event.type', ':selected_event_types'); + + $qb->andWhere($clause); + $qb->setParameter('selected_event_types', $data['types']); + } + + public function applyOn(): string + { + return Declarations::EVENT; + } + + public function buildForm(FormBuilderInterface $builder) + { + $builder->add('types', EntityType::class, [ + 'choices' => $this->eventTypeRepository->findAllActive(), + 'class' => EventType::class, + 'choice_label' => fn (EventType $ety) => $this->translatableStringHelper->localize($ety->getName()), + 'multiple' => true, + 'expanded' => false, + 'attr' => [ + 'class' => 'select2', + ], + ]); + } + + public function getFormDefaultData(): array + { + return []; + } + + public function describeAction($data, $format = 'string') + { + $typeNames = array_map( + fn (EventType $t): string => $this->translatableStringHelper->localize($t->getName()), + $this->eventTypeRepository->findBy(['id' => $data['types'] instanceof \Doctrine\Common\Collections\Collection ? $data['types']->toArray() : $data['types']]) + ); + + return ['Filtered by event type: only %list%', [ + '%list%' => implode(', ', $typeNames), + ]]; + } + + public function getTitle() + { + return 'Filtered by event type'; + } + + public function validateForm($data, ExecutionContextInterface $context) + { + if (null === $data['types'] || 0 === \count($data['types'])) { + $context + ->buildViolation('At least one type must be chosen') + ->addViolation(); + } + } +} diff --git a/src/Bundle/ChillEventBundle/Export/Filter/RoleFilter.php b/src/Bundle/ChillEventBundle/Export/Filter/RoleFilter.php new file mode 100644 index 000000000..d791bafe7 --- /dev/null +++ b/src/Bundle/ChillEventBundle/Export/Filter/RoleFilter.php @@ -0,0 +1,95 @@ +expr()->in('event_part.role', ':selected_part_roles'); + + $qb->andWhere($clause); + $qb->setParameter('selected_part_roles', $data['part_roles']); + } + + public function applyOn(): string + { + return Declarations::EVENT_PARTICIPANTS; + } + + public function buildForm(FormBuilderInterface $builder) + { + $builder->add('part_roles', EntityType::class, [ + 'choices' => $this->roleRepository->findAllActive(), + 'class' => Role::class, + 'choice_label' => fn (Role $r) => $this->translatableStringHelper->localize($r->getName()), + 'multiple' => true, + 'expanded' => false, + 'attr' => [ + 'class' => 'select2', + ], + ]); + } + + public function getFormDefaultData(): array + { + return []; + } + + public function describeAction($data, $format = 'string') + { + $roleNames = array_map( + fn (Role $r): string => $this->translatableStringHelper->localize($r->getName()), + $this->roleRepository->findBy(['id' => $data['part_roles'] instanceof \Doctrine\Common\Collections\Collection ? $data['part_roles']->toArray() : $data['part_roles']]) + ); + + return ['Filtered by participant roles: only %list%', [ + '%list%' => implode(', ', $roleNames), + ]]; + } + + public function getTitle() + { + return 'Filter by participant roles'; + } + + public function validateForm($data, ExecutionContextInterface $context) + { + if (null === $data['part_roles'] || 0 === \count($data['part_roles'])) { + $context + ->buildViolation('At least one role must be chosen') + ->addViolation(); + } + } +} diff --git a/src/Bundle/ChillEventBundle/Menu/PersonMenuBuilder.php b/src/Bundle/ChillEventBundle/Menu/PersonMenuBuilder.php index 8abfc7cd6..e14e4c979 100644 --- a/src/Bundle/ChillEventBundle/Menu/PersonMenuBuilder.php +++ b/src/Bundle/ChillEventBundle/Menu/PersonMenuBuilder.php @@ -11,7 +11,7 @@ declare(strict_types=1); namespace Chill\EventBundle\Menu; -use Chill\EventBundle\Security\Authorization\EventVoter; +use Chill\EventBundle\Security\EventVoter; use Chill\MainBundle\Routing\LocalMenuBuilderInterface; use Knp\Menu\MenuItem; use Symfony\Component\Security\Core\Authorization\AuthorizationCheckerInterface; diff --git a/src/Bundle/ChillEventBundle/Menu/SectionMenuBuilder.php b/src/Bundle/ChillEventBundle/Menu/SectionMenuBuilder.php index 2c78392ee..072f6e6bd 100644 --- a/src/Bundle/ChillEventBundle/Menu/SectionMenuBuilder.php +++ b/src/Bundle/ChillEventBundle/Menu/SectionMenuBuilder.php @@ -11,7 +11,7 @@ declare(strict_types=1); namespace Chill\EventBundle\Menu; -use Chill\EventBundle\Security\Authorization\EventVoter; +use Chill\EventBundle\Security\EventVoter; use Chill\MainBundle\Routing\LocalMenuBuilderInterface; use Knp\Menu\MenuItem; use Symfony\Component\Security\Core\Security; diff --git a/src/Bundle/ChillEventBundle/Repository/EventACLAwareRepository.php b/src/Bundle/ChillEventBundle/Repository/EventACLAwareRepository.php index f92b1e825..7520d68e7 100644 --- a/src/Bundle/ChillEventBundle/Repository/EventACLAwareRepository.php +++ b/src/Bundle/ChillEventBundle/Repository/EventACLAwareRepository.php @@ -13,7 +13,7 @@ namespace Chill\EventBundle\Repository; use Chill\EventBundle\Entity\Event; use Chill\EventBundle\Entity\Participation; -use Chill\EventBundle\Security\Authorization\EventVoter; +use Chill\EventBundle\Security\EventVoter; use Chill\MainBundle\Entity\User; use Chill\MainBundle\Security\Authorization\AuthorizationHelperForCurrentUserInterface; use Chill\PersonBundle\Entity\Person; diff --git a/src/Bundle/ChillEventBundle/Repository/RoleRepository.php b/src/Bundle/ChillEventBundle/Repository/RoleRepository.php index fa0524a6d..b5444a85b 100644 --- a/src/Bundle/ChillEventBundle/Repository/RoleRepository.php +++ b/src/Bundle/ChillEventBundle/Repository/RoleRepository.php @@ -12,13 +12,57 @@ declare(strict_types=1); namespace Chill\EventBundle\Repository; use Chill\EventBundle\Entity\Role; -use Doctrine\Bundle\DoctrineBundle\Repository\ServiceEntityRepository; -use Doctrine\Persistence\ManagerRegistry; +use Chill\MainBundle\Templating\TranslatableStringHelper; +use Doctrine\ORM\EntityManagerInterface; +use Doctrine\ORM\EntityRepository; +use Doctrine\ORM\QueryBuilder; +use Doctrine\Persistence\ObjectRepository; -class RoleRepository extends ServiceEntityRepository +readonly class RoleRepository implements ObjectRepository { - public function __construct(ManagerRegistry $registry) + private EntityRepository $repository; + + public function __construct(EntityManagerInterface $entityManager, private TranslatableStringHelper $translatableStringHelper) { - parent::__construct($registry, Role::class); + $this->repository = $entityManager->getRepository(Role::class); + } + + public function createQueryBuilder(string $alias, ?string $indexBy = null): QueryBuilder + { + return $this->repository->createQueryBuilder($alias, $indexBy); + } + + public function find($id) + { + return $this->repository->find($id); + } + + public function findAll(): array + { + return $this->repository->findAll(); + } + + public function findAllActive(): array + { + $roles = $this->repository->findBy(['active' => true]); + + usort($roles, fn (Role $a, Role $b) => $this->translatableStringHelper->localize($a->getName()) <=> $this->translatableStringHelper->localize($b->getName())); + + return $roles; + } + + public function findBy(array $criteria, ?array $orderBy = null, ?int $limit = null, ?int $offset = null): array + { + return $this->repository->findBy($criteria, $orderBy, $limit, $offset); + } + + public function findOneBy(array $criteria) + { + return $this->repository->findOneBy($criteria); + } + + public function getClassName(): string + { + return Role::class; } } diff --git a/src/Bundle/ChillEventBundle/Security/Authorization/EventVoter.php b/src/Bundle/ChillEventBundle/Security/EventVoter.php similarity index 60% rename from src/Bundle/ChillEventBundle/Security/Authorization/EventVoter.php rename to src/Bundle/ChillEventBundle/Security/EventVoter.php index c88f2804a..e490e0518 100644 --- a/src/Bundle/ChillEventBundle/Security/Authorization/EventVoter.php +++ b/src/Bundle/ChillEventBundle/Security/EventVoter.php @@ -9,18 +9,19 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\EventBundle\Security\Authorization; +namespace Chill\EventBundle\Security; use Chill\EventBundle\Entity\Event; +use Chill\MainBundle\Entity\Center; use Chill\MainBundle\Entity\User; use Chill\MainBundle\Security\Authorization\AbstractChillVoter; use Chill\MainBundle\Security\Authorization\AuthorizationHelper; +use Chill\MainBundle\Security\Authorization\VoterHelperFactoryInterface; +use Chill\MainBundle\Security\Authorization\VoterHelperInterface; use Chill\MainBundle\Security\ProvideRoleHierarchyInterface; use Chill\PersonBundle\Entity\Person; -use Chill\PersonBundle\Security\Authorization\PersonVoter; use Psr\Log\LoggerInterface; use Symfony\Component\Security\Core\Authentication\Token\TokenInterface; -use Symfony\Component\Security\Core\Authorization\AccessDecisionManagerInterface; /** * Description of EventVoter. @@ -42,61 +43,46 @@ class EventVoter extends AbstractChillVoter implements ProvideRoleHierarchyInter final public const UPDATE = 'CHILL_EVENT_UPDATE'; - /** - * @var AccessDecisionManagerInterface - */ - protected $accessDecisionManager; + final public const STATS = 'CHILL_EVENT_STATS'; - /** - * @var AuthorizationHelper - */ - protected $authorizationHelper; - - /** - * @var LoggerInterface - */ - protected $logger; + private readonly VoterHelperInterface $voterHelper; public function __construct( - AccessDecisionManagerInterface $accessDecisionManager, - AuthorizationHelper $authorizationHelper, - LoggerInterface $logger + private readonly AuthorizationHelper $authorizationHelper, + private readonly LoggerInterface $logger, + VoterHelperFactoryInterface $voterHelperFactory ) { - $this->accessDecisionManager = $accessDecisionManager; - $this->authorizationHelper = $authorizationHelper; - $this->logger = $logger; + $this->voterHelper = $voterHelperFactory + ->generate(self::class) + ->addCheckFor(null, [self::SEE]) + ->addCheckFor(Event::class, [...self::ROLES]) + ->addCheckFor(Person::class, [self::SEE, self::CREATE]) + ->addCheckFor(Center::class, [self::STATS]) + ->build(); } public function getRoles(): array { - return self::ROLES; + return [...self::ROLES, self::STATS]; } public function getRolesWithHierarchy(): array { return [ - 'Event' => self::ROLES, + 'Event' => $this->getRoles(), ]; } public function getRolesWithoutScope(): array { - return []; + return [self::ROLES, self::STATS]; } public function supports($attribute, $subject) { - return ($subject instanceof Event && \in_array($attribute, self::ROLES, true)) - || ($subject instanceof Person && \in_array($attribute, [self::CREATE, self::SEE], true)) - || (null === $subject && self::SEE === $attribute); + return $this->voterHelper->supports($attribute, $subject); } - /** - * @param string $attribute - * @param Event $subject - * - * @return bool - */ protected function voteOnAttribute($attribute, $subject, TokenInterface $token) { $this->logger->debug(sprintf('Voting from %s class', self::class)); @@ -118,15 +104,5 @@ class EventVoter extends AbstractChillVoter implements ProvideRoleHierarchyInter ->getReachableCenters($token->getUser(), $attribute); return \count($centers) > 0; - - if (!$this->accessDecisionManager->decide($token, [PersonVoter::SEE], $person)) { - return false; - } - - return $this->authorizationHelper->userHasAccess( - $token->getUser(), - $subject, - $attribute - ); } } diff --git a/src/Bundle/ChillEventBundle/Security/Authorization/ParticipationVoter.php b/src/Bundle/ChillEventBundle/Security/ParticipationVoter.php similarity index 62% rename from src/Bundle/ChillEventBundle/Security/Authorization/ParticipationVoter.php rename to src/Bundle/ChillEventBundle/Security/ParticipationVoter.php index ad2e90377..670cff815 100644 --- a/src/Bundle/ChillEventBundle/Security/Authorization/ParticipationVoter.php +++ b/src/Bundle/ChillEventBundle/Security/ParticipationVoter.php @@ -9,18 +9,19 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\EventBundle\Security\Authorization; +namespace Chill\EventBundle\Security; use Chill\EventBundle\Entity\Participation; +use Chill\MainBundle\Entity\Center; use Chill\MainBundle\Entity\User; use Chill\MainBundle\Security\Authorization\AbstractChillVoter; use Chill\MainBundle\Security\Authorization\AuthorizationHelper; +use Chill\MainBundle\Security\Authorization\VoterHelperFactoryInterface; +use Chill\MainBundle\Security\Authorization\VoterHelperInterface; use Chill\MainBundle\Security\ProvideRoleHierarchyInterface; use Chill\PersonBundle\Entity\Person; -use Chill\PersonBundle\Security\Authorization\PersonVoter; use Psr\Log\LoggerInterface; use Symfony\Component\Security\Core\Authentication\Token\TokenInterface; -use Symfony\Component\Security\Core\Authorization\AccessDecisionManagerInterface; class ParticipationVoter extends AbstractChillVoter implements ProvideRoleHierarchyInterface { @@ -39,40 +40,33 @@ class ParticipationVoter extends AbstractChillVoter implements ProvideRoleHierar final public const UPDATE = 'CHILL_EVENT_PARTICIPATION_UPDATE'; - /** - * @var AccessDecisionManagerInterface - */ - protected $accessDecisionManager; + final public const STATS = 'CHILL_EVENT_PARTICIPATION_STATS'; - /** - * @var AuthorizationHelper - */ - protected $authorizationHelper; - - /** - * @var LoggerInterface - */ - protected $logger; + private readonly VoterHelperInterface $voterHelper; public function __construct( - AccessDecisionManagerInterface $accessDecisionManager, - AuthorizationHelper $authorizationHelper, - LoggerInterface $logger + private readonly AuthorizationHelper $authorizationHelper, + private readonly LoggerInterface $logger, + VoterHelperFactoryInterface $voterHelperFactory ) { - $this->accessDecisionManager = $accessDecisionManager; - $this->authorizationHelper = $authorizationHelper; - $this->logger = $logger; + $this->voterHelper = $voterHelperFactory + ->generate(self::class) + ->addCheckFor(null, [self::SEE]) + ->addCheckFor(Participation::class, [...self::ROLES]) + ->addCheckFor(Person::class, [self::SEE, self::CREATE]) + ->addCheckFor(Center::class, [self::STATS]) + ->build(); } public function getRoles(): array { - return self::ROLES; + return [...self::ROLES, self::STATS]; } public function getRolesWithHierarchy(): array { return [ - 'Event' => self::ROLES, + 'Participation' => $this->getRoles(), ]; } @@ -83,14 +77,11 @@ class ParticipationVoter extends AbstractChillVoter implements ProvideRoleHierar public function supports($attribute, $subject) { - return ($subject instanceof Participation && \in_array($attribute, self::ROLES, true)) - || ($subject instanceof Person && \in_array($attribute, [self::CREATE, self::SEE], true)) - || (null === $subject && self::SEE === $attribute); + return $this->voterHelper->supports($attribute, $subject); } /** - * @param string $attribute - * @param Participation $subject + * @param string $attribute * * @return bool */ @@ -115,15 +106,5 @@ class ParticipationVoter extends AbstractChillVoter implements ProvideRoleHierar ->getReachableCenters($token->getUser(), $attribute); return \count($centers) > 0; - - if (!$this->accessDecisionManager->decide($token, [PersonVoter::SEE], $person)) { - return false; - } - - return $this->authorizationHelper->userHasAccess( - $token->getUser(), - $subject, - $attribute - ); } } diff --git a/src/Bundle/ChillEventBundle/Tests/Export/CountEventParticipationsTest.php b/src/Bundle/ChillEventBundle/Tests/Export/CountEventParticipationsTest.php new file mode 100644 index 000000000..3d606dd04 --- /dev/null +++ b/src/Bundle/ChillEventBundle/Tests/Export/CountEventParticipationsTest.php @@ -0,0 +1,43 @@ +countEventParticipations = self::$container->get(CountEventParticipations::class); + } + + public function testExecuteQuery(): void + { + $qb = $this->countEventParticipations->initiateQuery([], [], []) + ->setMaxResults(1); + + $results = $qb->getQuery()->getResult(AbstractQuery::HYDRATE_ARRAY); + + self::assertIsArray($results, 'smoke test: test that the result is an array'); + } +} diff --git a/src/Bundle/ChillEventBundle/Tests/Export/CountEventTest.php b/src/Bundle/ChillEventBundle/Tests/Export/CountEventTest.php new file mode 100644 index 000000000..4afbe64e9 --- /dev/null +++ b/src/Bundle/ChillEventBundle/Tests/Export/CountEventTest.php @@ -0,0 +1,43 @@ +countEvents = self::$container->get(CountEvents::class); + } + + public function testExecuteQuery(): void + { + $qb = $this->countEvents->initiateQuery([], [], []) + ->setMaxResults(1); + + $results = $qb->getQuery()->getResult(AbstractQuery::HYDRATE_ARRAY); + + self::assertIsArray($results, 'smoke test: test that the result is an array'); + } +} diff --git a/src/Bundle/ChillEventBundle/Tests/Export/aggregators/EventDateAggregatorTest.php b/src/Bundle/ChillEventBundle/Tests/Export/aggregators/EventDateAggregatorTest.php new file mode 100644 index 000000000..96e377f4e --- /dev/null +++ b/src/Bundle/ChillEventBundle/Tests/Export/aggregators/EventDateAggregatorTest.php @@ -0,0 +1,59 @@ +aggregator = self::$container->get(EventDateAggregator::class); + } + + public function getAggregator() + { + return $this->aggregator; + } + + public function getFormData(): array|\Generator + { + yield ['frequency' => 'YYYY']; + yield ['frequency' => 'YYYY-MM']; + yield ['frequency' => 'YYYY-IV']; + } + + public function getQueryBuilders(): array + { + self::bootKernel(); + + $em = self::$container->get(EntityManagerInterface::class); + + return [ + $em->createQueryBuilder() + ->select('event.id') + ->from(Event::class, 'event'), + ]; + } +} diff --git a/src/Bundle/ChillEventBundle/Tests/Export/aggregators/EventTypeAggregatorTest.php b/src/Bundle/ChillEventBundle/Tests/Export/aggregators/EventTypeAggregatorTest.php new file mode 100644 index 000000000..321eae153 --- /dev/null +++ b/src/Bundle/ChillEventBundle/Tests/Export/aggregators/EventTypeAggregatorTest.php @@ -0,0 +1,59 @@ +aggregator = self::$container->get(EventTypeAggregator::class); + } + + public function getAggregator() + { + return $this->aggregator; + } + + public function getFormData(): array + { + return [ + [], + ]; + } + + public function getQueryBuilders(): array + { + self::bootKernel(); + + $em = self::$container->get(EntityManagerInterface::class); + + return [ + $em->createQueryBuilder() + ->select('event.id') + ->from(Event::class, 'event'), + ]; + } +} diff --git a/src/Bundle/ChillEventBundle/Tests/Export/aggregators/RoleAggregatorTest.php b/src/Bundle/ChillEventBundle/Tests/Export/aggregators/RoleAggregatorTest.php new file mode 100644 index 000000000..0e4f0a896 --- /dev/null +++ b/src/Bundle/ChillEventBundle/Tests/Export/aggregators/RoleAggregatorTest.php @@ -0,0 +1,63 @@ +aggregator = self::$container->get(RoleAggregator::class); + } + + public function getAggregator() + { + return $this->aggregator; + } + + public function getFormData(): array + { + return [ + [], + ]; + } + + public function getQueryBuilders(): array + { + self::bootKernel(); + + $em = self::$container->get(EntityManagerInterface::class); + + return [ + $em->createQueryBuilder() + ->select('event.id') + ->from(Event::class, 'event'), + $em->createQueryBuilder() + ->select('event_part') + ->from(Participation::class, 'event_part'), + ]; + } +} diff --git a/src/Bundle/ChillEventBundle/Tests/Export/filters/EventDateFilterTest.php b/src/Bundle/ChillEventBundle/Tests/Export/filters/EventDateFilterTest.php new file mode 100644 index 000000000..dd13c5c77 --- /dev/null +++ b/src/Bundle/ChillEventBundle/Tests/Export/filters/EventDateFilterTest.php @@ -0,0 +1,65 @@ +rollingDateConverter = self::$container->get(RollingDateConverterInterface::class); + } + + public function getFilter() + { + return new EventDateFilter($this->rollingDateConverter); + } + + public function getFormData() + { + return [ + [ + 'date_from' => new RollingDate(RollingDate::T_YEAR_CURRENT_START), + 'date_to' => new RollingDate(RollingDate::T_TODAY), + ], + ]; + } + + public function getQueryBuilders(): array + { + self::bootKernel(); + + $em = self::$container->get(EntityManagerInterface::class); + + return [ + $em->createQueryBuilder() + ->select('event.id') + ->from(Event::class, 'event'), + ]; + } +} diff --git a/src/Bundle/ChillEventBundle/Tests/Export/filters/EventTypeFilterTest.php b/src/Bundle/ChillEventBundle/Tests/Export/filters/EventTypeFilterTest.php new file mode 100644 index 000000000..8d54c8068 --- /dev/null +++ b/src/Bundle/ChillEventBundle/Tests/Export/filters/EventTypeFilterTest.php @@ -0,0 +1,76 @@ +filter = self::$container->get(EventTypeFilter::class); + } + + public function getFilter(): EventTypeFilter|\Chill\MainBundle\Export\FilterInterface + { + return $this->filter; + } + + public function getFormData() + { + self::bootKernel(); + + $em = self::$container->get(EntityManagerInterface::class); + + $array = $em->createQueryBuilder() + ->from(EventType::class, 'et') + ->select('et') + ->getQuery() + ->getResult(); + + $data = []; + + foreach ($array as $a) { + $data[] = [ + 'types' => new ArrayCollection([$a]), + ]; + } + + return $data; + } + + public function getQueryBuilders() + { + self::bootKernel(); + + $em = self::$container->get(EntityManagerInterface::class); + + return [ + $em->createQueryBuilder() + ->select('event.id') + ->from(Event::class, 'event'), + ]; + } +} diff --git a/src/Bundle/ChillEventBundle/Tests/Export/filters/RoleFilterTest.php b/src/Bundle/ChillEventBundle/Tests/Export/filters/RoleFilterTest.php new file mode 100644 index 000000000..f03aac5e0 --- /dev/null +++ b/src/Bundle/ChillEventBundle/Tests/Export/filters/RoleFilterTest.php @@ -0,0 +1,81 @@ +filter = self::$container->get(RoleFilter::class); + } + + public function getFilter() + { + return $this->filter; + } + + public function getFormData(): array + { + self::bootKernel(); + $em = self::$container->get(EntityManagerInterface::class); + + $array = $em->createQueryBuilder() + ->from(Role::class, 'r') + ->select('r') + ->getQuery() + ->setMaxResults(1) + ->getResult(); + + $data = []; + + foreach ($array as $a) { + $data[] = [ + 'roles' => new ArrayCollection([$a]), + ]; + } + + return $data; + } + + public function getQueryBuilders() + { + self::bootKernel(); + + $em = self::$container->get(EntityManagerInterface::class); + + return [ + $em->createQueryBuilder() + ->select('event.id') + ->from(Event::class, 'event'), + $em->createQueryBuilder() + ->select('event_part') + ->from(Participation::class, 'event_part'), + ]; + } +} diff --git a/src/Bundle/ChillEventBundle/Tests/Repository/EventACLAwareRepositoryTest.php b/src/Bundle/ChillEventBundle/Tests/Repository/EventACLAwareRepositoryTest.php index f489f6cd4..c830c2613 100644 --- a/src/Bundle/ChillEventBundle/Tests/Repository/EventACLAwareRepositoryTest.php +++ b/src/Bundle/ChillEventBundle/Tests/Repository/EventACLAwareRepositoryTest.php @@ -12,7 +12,7 @@ declare(strict_types=1); namespace Chill\EventBundle\Tests\Repository; use Chill\EventBundle\Repository\EventACLAwareRepository; -use Chill\EventBundle\Security\Authorization\EventVoter; +use Chill\EventBundle\Security\EventVoter; use Chill\MainBundle\Entity\Center; use Chill\MainBundle\Entity\Scope; use Chill\MainBundle\Entity\User; diff --git a/src/Bundle/ChillEventBundle/config/services/authorization.yaml b/src/Bundle/ChillEventBundle/config/services/authorization.yaml deleted file mode 100644 index ca1eb789b..000000000 --- a/src/Bundle/ChillEventBundle/config/services/authorization.yaml +++ /dev/null @@ -1,20 +0,0 @@ -services: - chill_event.event_voter: - class: Chill\EventBundle\Security\Authorization\EventVoter - arguments: - - "@security.access.decision_manager" - - "@chill.main.security.authorization.helper" - - "@logger" - tags: - - { name: chill.role } - - { name: security.voter } - - chill_event.event_participation: - class: Chill\EventBundle\Security\Authorization\ParticipationVoter - arguments: - - "@security.access.decision_manager" - - "@chill.main.security.authorization.helper" - - "@logger" - tags: - - { name: chill.role } - - { name: security.voter } diff --git a/src/Bundle/ChillEventBundle/config/services/export.yaml b/src/Bundle/ChillEventBundle/config/services/export.yaml new file mode 100644 index 000000000..8f8399e31 --- /dev/null +++ b/src/Bundle/ChillEventBundle/config/services/export.yaml @@ -0,0 +1,41 @@ +services: + _defaults: + autowire: true + autoconfigure: true + + # indicators + + Chill\EventBundle\Export\Export\CountEvents: + tags: + - { name: chill.export, alias: 'count_events' } + Chill\EventBundle\Export\Export\CountEventParticipations: + tags: + - { name: chill.export, alias: 'count_event_participants' } + + # filters + + Chill\EventBundle\Export\Filter\EventDateFilter: + tags: + - { name: chill.export_filter, alias: 'event_date_filter' } + + Chill\EventBundle\Export\Filter\EventTypeFilter: + tags: + - { name: chill.export_filter, alias: 'event_type_filter' } + + Chill\EventBundle\Export\Filter\RoleFilter: + tags: + - { name: chill.export_filter, alias: 'role_filter' } + + # aggregators + + Chill\EventBundle\Export\Aggregator\EventTypeAggregator: + tags: + - { name: chill.export_aggregator, alias: event_type_aggregator } + + Chill\EventBundle\Export\Aggregator\EventDateAggregator: + tags: + - { name: chill.export_aggregator, alias: event_date_aggregator } + + Chill\EventBundle\Export\Aggregator\RoleAggregator: + tags: + - { name: chill.export_aggregator, alias: role_aggregator } diff --git a/src/Bundle/ChillEventBundle/config/services/security.yaml b/src/Bundle/ChillEventBundle/config/services/security.yaml new file mode 100644 index 000000000..13198d55f --- /dev/null +++ b/src/Bundle/ChillEventBundle/config/services/security.yaml @@ -0,0 +1,14 @@ +services: + Chill\EventBundle\Security\EventVoter: + autowire: true + autoconfigure: true + tags: + - { name: security.voter } + - { name: chill.role } + + Chill\EventBundle\Security\ParticipationVoter: + autowire: true + autoconfigure: true + tags: + - { name: security.voter } + - { name: chill.role } diff --git a/src/Bundle/ChillEventBundle/translations/messages.fr.yml b/src/Bundle/ChillEventBundle/translations/messages.fr.yml index 60d888f07..bb9f8acd3 100644 --- a/src/Bundle/ChillEventBundle/translations/messages.fr.yml +++ b/src/Bundle/ChillEventBundle/translations/messages.fr.yml @@ -81,9 +81,31 @@ Pick an event: Choisir un événement Pick a type of event: Choisir un type d'événement Pick a moderator: Choisir un animateur +# exports Select a format: Choisir un format Export: Exporter +Count events: Nombre d'événements +Count events by various parameters.: Compte le nombre d'événements selon divers critères +Exports of events: Exports d'événements + +Filtered by event date: Filtrer par date d'événement +'Filtered by date of event: only between %date_from% and %date_to%': "Filtré par date d'événement: uniquement entre le %date_from% et le %date_to%" +Events after this date: Événements après cette date +Events before this date: Événements avant cette date +Filtered by event type: Filtrer par type d'événement +'Filtered by event type: only %list%': "Filtré par type: uniquement %list%" +Group event by date: Grouper par date d'événement +Group by event type: Grouper par type d'événement + +Count event participants: Nombre de participations +Count participants to an event by various parameters.: Compte le nombre de participations selon divers critères +Exports of event participants: Exports de participations +'Filtered by participant roles: only %list%': "Filtré par rôles de participation: uniquement %list%" +Filter by participant roles: Filtrer par rôles de participation +Part roles: Rôles de participation +Group by participant role: Grouper par rôle de participation + Events configuration: Configuration des événements Events configuration menu: Menu des événements From 145419a76b18af360b9634bd2e800568bfe4fda2 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Tue, 25 Jun 2024 13:29:24 +0200 Subject: [PATCH 068/136] CHANGELOG entry added for exports in event bundle --- .changes/v2.22.0.md | 6 ++++++ CHANGELOG.md | 7 +++++++ 2 files changed, 13 insertions(+) create mode 100644 .changes/v2.22.0.md diff --git a/.changes/v2.22.0.md b/.changes/v2.22.0.md new file mode 100644 index 000000000..fef006fd0 --- /dev/null +++ b/.changes/v2.22.0.md @@ -0,0 +1,6 @@ +## v2.22.0 - 2024-06-25 +### Feature +* ([#216](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/216)) [event bundle] exports added for the event module + +### Traduction francophone +* Exports sont ajoutés pour la module événement. diff --git a/CHANGELOG.md b/CHANGELOG.md index dc8f2305a..47b3760b0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,13 @@ adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html), and is generated by [Changie](https://github.com/miniscruff/changie). +## v2.22.0 - 2024-06-25 +### Feature +* ([#216](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/216)) [event bundle] exports added for the event module + +### Traduction francophone +* Exports sont ajoutés pour la module événement. + ## v2.21.0 - 2024-06-18 ### Feature * Add flash menu buttons in search results, to open directly a new calendar, or a new activity in an accompanying period From 9a34064b2347bf880619c4b736271a6fed62bdd9 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Tue, 25 Jun 2024 17:21:08 +0200 Subject: [PATCH 069/136] Implement chill_document_button_group to allow download of document At first another download button was used, but not working.\ Elsewhere in Chill the chill_document_button_group seems to\ be used so more coherent to use it here too. --- .../views/CSPerson/personal_situation_view.html.twig | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_view.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_view.html.twig index 22b37ce54..a1f5413bf 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_view.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_view.html.twig @@ -254,11 +254,11 @@ ] %}
        {{ r[1] }}
        - {% set document = attribute(entity, r[0]) %} - {% if document is null %} + {% set d = attribute(entity, r[0]) %} + {% if d is null %}
        {{ null|chill_print_or_message("Aucun document") }}
        {% else %} -
        {{ doc.download_button(document, r[1] ~ " de " ~ person.firstName ~ " " ~ person.lastName) }}
        +
        {{ d.title }} {{ d|chill_document_button_group(d.title, is_granted('CHILL_PERSON_UPDATE', person), {small: true}) }}
        {% endif %} {% endfor %} @@ -273,10 +273,12 @@ {% block css %} {{ parent() }} - + {{ encore_entry_link_tags('mod_async_upload') }} + {{ encore_entry_script_tags('mod_document_action_buttons_group') }} {% endblock css %} {% block js %} {{ parent() }} - + {{ encore_entry_script_tags('mod_async_upload') }} + {{ encore_entry_link_tags('mod_document_action_buttons_group') }} {% endblock js %} From 36f2275a560b8d04c8bfe1e1c2766c3f4db5588d Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Tue, 25 Jun 2024 17:22:48 +0200 Subject: [PATCH 070/136] Delete overriding of generateTemplateParameters method This method was requiring a person_id to be set, which was\ not the case here so it threw an error. Using the method\ already available in CRUDController works fine, seems to be\ no need to override it. --- .../Controller/EntityPersonCRUDController.php | 19 ------------------- 1 file changed, 19 deletions(-) diff --git a/src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php b/src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php index 6980e84b1..760b7ee9d 100644 --- a/src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php +++ b/src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php @@ -66,25 +66,6 @@ class EntityPersonCRUDController extends CRUDController return $qb; } - /** - * @throws \Exception - */ - protected function generateTemplateParameter(string $action, $entity, Request $request, array $defaultTemplateParameters = []): array - { - $person = $this->getPerson($request); - - if (null === $person) { - throw new \Exception('the `person_id` parameter is not set in the query. You should set it or override the current method to allow another behaviour: '.__METHOD__); - } - - return parent::generateTemplateParameter( - $action, - $entity, - $request, - \array_merge(['person' => $person], $defaultTemplateParameters) - ); - } - /** * Extract the person from the request. * From e38d47ec5e2edacb648adc164edc580801246179 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 26 Jun 2024 09:38:13 +0200 Subject: [PATCH 071/136] fix pipeline rector and cs --- rector.php | 10 +++++++--- .../Tests/Form/Type/TranslatableActivityTypeTest.php | 2 +- .../Connector/MSGraph/RemoteEventConverter.php | 4 ++-- .../CompilerPass/ShortMessageCompilerPass.php | 2 +- src/Bundle/ChillMainBundle/Export/ExportManager.php | 4 ++-- .../Search/Utils/ExtractDateFromPattern.php | 6 +++--- .../Search/Utils/ExtractPhonenumberFromPattern.php | 2 +- .../Controller/AccompanyingCourseControllerTest.php | 4 ++-- .../DependencyInjection/ChillReportExtensionTest.php | 2 +- src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php | 4 ++-- .../ChillWopiBundle/src/Resources/config/services.php | 4 ++-- 11 files changed, 24 insertions(+), 20 deletions(-) diff --git a/rector.php b/rector.php index 0b4f5b1fe..4b38affb3 100644 --- a/rector.php +++ b/rector.php @@ -39,10 +39,14 @@ return static function (RectorConfig $rectorConfig): void { //define sets of rules $rectorConfig->sets([ - \Rector\Set\ValueObject\LevelSetList::UP_TO_PHP_82, - \Rector\Symfony\Set\SymfonyLevelSetList::UP_TO_SYMFONY_54, + LevelSetList::UP_TO_PHP_82, + \Rector\Symfony\Set\SymfonySetList::SYMFONY_40, + \Rector\Symfony\Set\SymfonySetList::SYMFONY_41, + \Rector\Symfony\Set\SymfonySetList::SYMFONY_42, + \Rector\Symfony\Set\SymfonySetList::SYMFONY_43, + \Rector\Symfony\Set\SymfonySetList::SYMFONY_44, \Rector\Doctrine\Set\DoctrineSetList::DOCTRINE_CODE_QUALITY, - \Rector\Doctrine\Set\DoctrineSetList::ANNOTATIONS_TO_ATTRIBUTES, + \Rector\PHPUnit\Set\PHPUnitSetList::PHPUNIT_90, ]); $rectorConfig->ruleWithConfiguration(\Rector\Php80\Rector\Class_\AnnotationToAttributeRector::class, [ diff --git a/src/Bundle/ChillActivityBundle/Tests/Form/Type/TranslatableActivityTypeTest.php b/src/Bundle/ChillActivityBundle/Tests/Form/Type/TranslatableActivityTypeTest.php index c6ecc377c..6715af3ed 100644 --- a/src/Bundle/ChillActivityBundle/Tests/Form/Type/TranslatableActivityTypeTest.php +++ b/src/Bundle/ChillActivityBundle/Tests/Form/Type/TranslatableActivityTypeTest.php @@ -60,7 +60,7 @@ final class TranslatableActivityTypeTest extends KernelTestCase $this->assertInstanceOf( ActivityType::class, $form->getData()['type'], - 'The data is an instance of Chill\\ActivityBundle\\Entity\\ActivityType' + 'The data is an instance of Chill\ActivityBundle\Entity\ActivityType' ); $this->assertEquals($type->getId(), $form->getData()['type']->getId()); diff --git a/src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraph/RemoteEventConverter.php b/src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraph/RemoteEventConverter.php index 94b488ddd..84797f6f1 100644 --- a/src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraph/RemoteEventConverter.php +++ b/src/Bundle/ChillCalendarBundle/RemoteCalendar/Connector/MSGraph/RemoteEventConverter.php @@ -37,12 +37,12 @@ class RemoteEventConverter * valid when the remote string contains also a timezone, like in * lastModifiedDate. */ - final public const REMOTE_DATETIMEZONE_FORMAT = 'Y-m-d\\TH:i:s.u?P'; + final public const REMOTE_DATETIMEZONE_FORMAT = 'Y-m-d\TH:i:s.u?P'; /** * Same as above, but sometimes the date is expressed with only 6 milliseconds. */ - final public const REMOTE_DATETIMEZONE_FORMAT_ALT = 'Y-m-d\\TH:i:s.uP'; + final public const REMOTE_DATETIMEZONE_FORMAT_ALT = 'Y-m-d\TH:i:s.uP'; private const REMOTE_DATE_FORMAT = 'Y-m-d\TH:i:s.u0'; diff --git a/src/Bundle/ChillMainBundle/DependencyInjection/CompilerPass/ShortMessageCompilerPass.php b/src/Bundle/ChillMainBundle/DependencyInjection/CompilerPass/ShortMessageCompilerPass.php index ebbfcee1b..9da9154b3 100644 --- a/src/Bundle/ChillMainBundle/DependencyInjection/CompilerPass/ShortMessageCompilerPass.php +++ b/src/Bundle/ChillMainBundle/DependencyInjection/CompilerPass/ShortMessageCompilerPass.php @@ -43,7 +43,7 @@ class ShortMessageCompilerPass implements CompilerPassInterface $defaultTransporter = new Reference(NullShortMessageSender::class); } elseif ('ovh' === $dsn['scheme']) { if (!class_exists('\\'.\Ovh\Api::class)) { - throw new RuntimeException('Class \\Ovh\\Api not found'); + throw new RuntimeException('Class \Ovh\Api not found'); } foreach (['user', 'host', 'pass'] as $component) { diff --git a/src/Bundle/ChillMainBundle/Export/ExportManager.php b/src/Bundle/ChillMainBundle/Export/ExportManager.php index 9cb2a54ba..d4e87d449 100644 --- a/src/Bundle/ChillMainBundle/Export/ExportManager.php +++ b/src/Bundle/ChillMainBundle/Export/ExportManager.php @@ -190,7 +190,7 @@ class ExportManager // throw an error if the export require other modifier, which is // not allowed when the export return a `NativeQuery` if (\count($export->supportsModifiers()) > 0) { - throw new \LogicException("The export with alias `{$exportAlias}` return ".'a `\\Doctrine\\ORM\\NativeQuery` and supports modifiers, which is not allowed. Either the method `supportsModifiers` should return an empty array, or return a `Doctrine\\ORM\\QueryBuilder`'); + throw new \LogicException("The export with alias `{$exportAlias}` return ".'a `\Doctrine\ORM\NativeQuery` and supports modifiers, which is not allowed. Either the method `supportsModifiers` should return an empty array, or return a `Doctrine\ORM\QueryBuilder`'); } } elseif ($query instanceof QueryBuilder) { // handle filters @@ -203,7 +203,7 @@ class ExportManager 'dql' => $query->getDQL(), ]); } else { - throw new \UnexpectedValueException('The method `intiateQuery` should return a `\\Doctrine\\ORM\\NativeQuery` or a `Doctrine\\ORM\\QueryBuilder` object.'); + throw new \UnexpectedValueException('The method `intiateQuery` should return a `\Doctrine\ORM\NativeQuery` or a `Doctrine\ORM\QueryBuilder` object.'); } $result = $export->getResult($query, $data[ExportType::EXPORT_KEY]); diff --git a/src/Bundle/ChillMainBundle/Search/Utils/ExtractDateFromPattern.php b/src/Bundle/ChillMainBundle/Search/Utils/ExtractDateFromPattern.php index f858797f5..9cce3fa13 100644 --- a/src/Bundle/ChillMainBundle/Search/Utils/ExtractDateFromPattern.php +++ b/src/Bundle/ChillMainBundle/Search/Utils/ExtractDateFromPattern.php @@ -14,9 +14,9 @@ namespace Chill\MainBundle\Search\Utils; class ExtractDateFromPattern { private const DATE_PATTERN = [ - ['([12]\\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01]))', 'Y-m-d'], // 1981-05-12 - ['((0[1-9]|[12]\\d|3[01])\\/(0[1-9]|1[0-2])\\/([12]\\d{3}))', 'd/m/Y'], // 15/12/1980 - ['((0[1-9]|[12]\\d|3[01])-(0[1-9]|1[0-2])-([12]\\d{3}))', 'd-m-Y'], // 15/12/1980 + ['([12]\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01]))', 'Y-m-d'], // 1981-05-12 + ['((0[1-9]|[12]\d|3[01])\/(0[1-9]|1[0-2])\/([12]\d{3}))', 'd/m/Y'], // 15/12/1980 + ['((0[1-9]|[12]\d|3[01])-(0[1-9]|1[0-2])-([12]\d{3}))', 'd-m-Y'], // 15/12/1980 ]; public function extractDates(string $subject): SearchExtractionResult diff --git a/src/Bundle/ChillMainBundle/Search/Utils/ExtractPhonenumberFromPattern.php b/src/Bundle/ChillMainBundle/Search/Utils/ExtractPhonenumberFromPattern.php index 1823e462c..2be3d54db 100644 --- a/src/Bundle/ChillMainBundle/Search/Utils/ExtractPhonenumberFromPattern.php +++ b/src/Bundle/ChillMainBundle/Search/Utils/ExtractPhonenumberFromPattern.php @@ -16,7 +16,7 @@ use Symfony\Component\DependencyInjection\ParameterBag\ParameterBagInterface; class ExtractPhonenumberFromPattern { - private const PATTERN = '([\\+]{0,1}[0-9\\ ]{5,})'; + private const PATTERN = '([\+]{0,1}[0-9\ ]{5,})'; private readonly string $defaultCarrierCode; diff --git a/src/Bundle/ChillPersonBundle/Tests/Controller/AccompanyingCourseControllerTest.php b/src/Bundle/ChillPersonBundle/Tests/Controller/AccompanyingCourseControllerTest.php index 4f8f1453d..240c3ab98 100644 --- a/src/Bundle/ChillPersonBundle/Tests/Controller/AccompanyingCourseControllerTest.php +++ b/src/Bundle/ChillPersonBundle/Tests/Controller/AccompanyingCourseControllerTest.php @@ -74,7 +74,7 @@ final class AccompanyingCourseControllerTest extends WebTestCase $this->assertResponseRedirects(); $location = $this->client->getResponse()->headers->get('Location'); - $this->assertEquals(1, \preg_match('|^\\/[^\\/]+\\/parcours/([\\d]+)/edit$|', (string) $location)); + $this->assertEquals(1, \preg_match('|^\/[^\/]+\/parcours/([\d]+)/edit$|', (string) $location)); } /** @@ -93,7 +93,7 @@ final class AccompanyingCourseControllerTest extends WebTestCase $location = $this->client->getResponse()->headers->get('Location'); $matches = []; - $this->assertEquals(1, \preg_match('|^\\/[^\\/]+\\/parcours/([\\d]+)/edit$|', (string) $location, $matches)); + $this->assertEquals(1, \preg_match('|^\/[^\/]+\/parcours/([\d]+)/edit$|', (string) $location, $matches)); $id = $matches[1]; $period = self::getContainer()->get(EntityManagerInterface::class) diff --git a/src/Bundle/ChillReportBundle/Tests/DependencyInjection/ChillReportExtensionTest.php b/src/Bundle/ChillReportBundle/Tests/DependencyInjection/ChillReportExtensionTest.php index ae01d8d90..db938f0bf 100644 --- a/src/Bundle/ChillReportBundle/Tests/DependencyInjection/ChillReportExtensionTest.php +++ b/src/Bundle/ChillReportBundle/Tests/DependencyInjection/ChillReportExtensionTest.php @@ -41,7 +41,7 @@ final class ChillReportExtensionTest extends KernelTestCase } if (!$reportFounded) { - throw new \Exception('Class Chill\\ReportBundle\\Entity\\Report not found in chill_custom_fields.customizables_entities', 1); + throw new \Exception('Class Chill\ReportBundle\Entity\Report not found in chill_custom_fields.customizables_entities', 1); } } } diff --git a/src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php b/src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php index eb0b559de..f592edfce 100644 --- a/src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php +++ b/src/Bundle/ChillThirdPartyBundle/Entity/ThirdParty.php @@ -85,7 +85,7 @@ class ThirdParty implements TrackCreationInterface, TrackUpdateInterface, \Strin /** * [fr] Sigle. */ -// #[Assert\Length(min: 2)] + // #[Assert\Length(min: 2)] #[Groups(['read', 'write', 'docgen:read', 'docgen:read:3party:parent'])] #[ORM\Column(name: 'acronym', type: \Doctrine\DBAL\Types\Types::STRING, length: 64, nullable: true)] private ?string $acronym = ''; @@ -184,7 +184,7 @@ class ThirdParty implements TrackCreationInterface, TrackUpdateInterface, \Strin /** * [fr] Raison sociale. */ -// #[Assert\Length(min: 3)] + // #[Assert\Length(min: 3)] #[Groups(['read', 'write', 'docgen:read', 'docgen:read:3party:parent'])] #[ORM\Column(name: 'name_company', type: \Doctrine\DBAL\Types\Types::STRING, length: 255, nullable: true)] private ?string $nameCompany = ''; diff --git a/src/Bundle/ChillWopiBundle/src/Resources/config/services.php b/src/Bundle/ChillWopiBundle/src/Resources/config/services.php index 005994bb6..d29f33205 100644 --- a/src/Bundle/ChillWopiBundle/src/Resources/config/services.php +++ b/src/Bundle/ChillWopiBundle/src/Resources/config/services.php @@ -32,10 +32,10 @@ return static function (ContainerConfigurator $container) { ->autoconfigure(); $services - ->load('Chill\\WopiBundle\\Service\\', __DIR__.'/../../Service'); + ->load('Chill\WopiBundle\Service\\', __DIR__.'/../../Service'); $services - ->load('Chill\\WopiBundle\\Controller\\', __DIR__.'/../../Controller') + ->load('Chill\WopiBundle\Controller\\', __DIR__.'/../../Controller') ->tag('controller.service_arguments'); $services From ba25c181f5c228419af4811ce9d0bdb7f5c39be7 Mon Sep 17 00:00:00 2001 From: nobohan Date: Thu, 27 Jun 2024 10:07:24 +0200 Subject: [PATCH 072/136] DX import Luxembourg address command --- .changes/unreleased/DX-20240627-100653.yaml | 6 ++ .../LoadAddressesLUFromBDAddressCommand.php | 40 +++++++ .../Service/Import/AddressReferenceLU.php | 102 ++++++++++++++++++ 3 files changed, 148 insertions(+) create mode 100644 .changes/unreleased/DX-20240627-100653.yaml create mode 100644 src/Bundle/ChillMainBundle/Command/LoadAddressesLUFromBDAddressCommand.php create mode 100644 src/Bundle/ChillMainBundle/Service/Import/AddressReferenceLU.php diff --git a/.changes/unreleased/DX-20240627-100653.yaml b/.changes/unreleased/DX-20240627-100653.yaml new file mode 100644 index 000000000..538cf2697 --- /dev/null +++ b/.changes/unreleased/DX-20240627-100653.yaml @@ -0,0 +1,6 @@ +kind: DX +body: Add a command for reading official address DB from Luxembourg and update chill + addresses +time: 2024-06-27T10:06:53.098022939+02:00 +custom: + Issue: "" diff --git a/src/Bundle/ChillMainBundle/Command/LoadAddressesLUFromBDAddressCommand.php b/src/Bundle/ChillMainBundle/Command/LoadAddressesLUFromBDAddressCommand.php new file mode 100644 index 000000000..2477a486d --- /dev/null +++ b/src/Bundle/ChillMainBundle/Command/LoadAddressesLUFromBDAddressCommand.php @@ -0,0 +1,40 @@ +setName('chill:main:address-ref-lux'); + } + + protected function execute(InputInterface $input, OutputInterface $output): int + { + $this->addressImporter->import(); + + return Command::SUCCESS; + } +} diff --git a/src/Bundle/ChillMainBundle/Service/Import/AddressReferenceLU.php b/src/Bundle/ChillMainBundle/Service/Import/AddressReferenceLU.php new file mode 100644 index 000000000..c29921847 --- /dev/null +++ b/src/Bundle/ChillMainBundle/Service/Import/AddressReferenceLU.php @@ -0,0 +1,102 @@ +client->request('GET', $downloadUrl); + + if (200 !== $response->getStatusCode()) { + throw new \Exception('Could not download CSV: '.$response->getStatusCode()); + } + + $tmpname = tempnam(sys_get_temp_dir(), 'php-add-'); + $file = fopen($tmpname, 'r+b'); + + foreach ($this->client->stream($response) as $chunk) { + fwrite($file, $chunk->getContent()); + } + + fclose($file); + + $uncompressedStream = gzopen($tmpname, 'r'); + + $csv = Reader::createFromStream($uncompressedStream); + $csv->setDelimiter(';'); + $csv->setHeaderOffset(0); + + $this->process_postal_code($csv); + + $this->process_address($csv); + + $this->addressToReferenceMatcher->checkAddressesMatchingReferences(); + + gzclose($uncompressedStream); + } + + private function process_address(Reader $csv): void + { + $stmt = Statement::create()->process($csv); + foreach ($stmt as $record) { + $this->addressBaseImporter->importAddress( + $record['id_geoportail'], + $record['code_postal'], + $record['code_postal'], + $record['rue'], + $record['numero'], + 'bd addresses', + (float) $record['lat_wgs84'], + (float) $record['lon_wgs84'], + 4326 + ); + } + + $this->addressBaseImporter->finalize(); + } + + private function process_postal_code(Reader $csv): void + { + $stmt = Statement::create()->process($csv); + $arr_postal_codes = []; + foreach ($stmt as $record) { + if (false === \in_array($record['code_postal'], $arr_postal_codes, true)) { + $this->postalCodeBaseImporter->importCode( + 'LU', + trim((string) $record['localite']), + trim((string) $record['code_postal']), + trim((string) $record['code_postal']), + 'bd addresses', + (float) $record['lat_wgs84'], + (float) $record['lon_wgs84'], + 4326 + ); + \array_push($arr_postal_codes, $record['code_postal']); + } + } + } +} + + + From 25ccb1630899f48895c32e24e271fff996e92694 Mon Sep 17 00:00:00 2001 From: nobohan Date: Thu, 27 Jun 2024 10:17:08 +0200 Subject: [PATCH 073/136] DX import Luxembourg address command - csfixer --- .../ChillMainBundle/Service/Import/AddressReferenceLU.php | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/Bundle/ChillMainBundle/Service/Import/AddressReferenceLU.php b/src/Bundle/ChillMainBundle/Service/Import/AddressReferenceLU.php index c29921847..3e45fc565 100644 --- a/src/Bundle/ChillMainBundle/Service/Import/AddressReferenceLU.php +++ b/src/Bundle/ChillMainBundle/Service/Import/AddressReferenceLU.php @@ -13,14 +13,15 @@ namespace Chill\MainBundle\Service\Import; use League\Csv\Reader; use League\Csv\Statement; -use Symfony\Contracts\HttpClient\Exception\TransportExceptionInterface; use Symfony\Contracts\HttpClient\HttpClientInterface; class AddressReferenceLU { private const RELEASE = 'https://data.public.lu/fr/datasets/r/5cadc5b8-6a7d-4283-87bc-f9e58dd771f7'; - public function __construct(private readonly HttpClientInterface $client, private readonly AddressReferenceBaseImporter $addressBaseImporter, private readonly PostalCodeBaseImporter $postalCodeBaseImporter, private readonly AddressToReferenceMatcher $addressToReferenceMatcher) {} + public function __construct(private readonly HttpClientInterface $client, private readonly AddressReferenceBaseImporter $addressBaseImporter, private readonly PostalCodeBaseImporter $postalCodeBaseImporter, private readonly AddressToReferenceMatcher $addressToReferenceMatcher) + { + } public function import(): void { @@ -97,6 +98,3 @@ class AddressReferenceLU } } } - - - From d9c50cffb7952b43796eef6d9574413921237e84 Mon Sep 17 00:00:00 2001 From: nobohan Date: Thu, 27 Jun 2024 10:34:41 +0200 Subject: [PATCH 074/136] DX import Luxembourg address command - phpstan --- .../Command/LoadAddressesLUFromBDAddressCommand.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Bundle/ChillMainBundle/Command/LoadAddressesLUFromBDAddressCommand.php b/src/Bundle/ChillMainBundle/Command/LoadAddressesLUFromBDAddressCommand.php index 2477a486d..499751c7c 100644 --- a/src/Bundle/ChillMainBundle/Command/LoadAddressesLUFromBDAddressCommand.php +++ b/src/Bundle/ChillMainBundle/Command/LoadAddressesLUFromBDAddressCommand.php @@ -35,6 +35,6 @@ class LoadAddressesLUFromBDAddressCommand extends Command { $this->addressImporter->import(); - return Command::SUCCESS; + return 0; } } From c5a24e8ac54135c5c7de24413ddc6ae7646330e0 Mon Sep 17 00:00:00 2001 From: nobohan Date: Fri, 28 Jun 2024 09:27:45 +0200 Subject: [PATCH 075/136] DX: Improve Lux address import command - WIP --- .../Service/Import/AddressReferenceLU.php | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/Bundle/ChillMainBundle/Service/Import/AddressReferenceLU.php b/src/Bundle/ChillMainBundle/Service/Import/AddressReferenceLU.php index 3e45fc565..f5cb03f19 100644 --- a/src/Bundle/ChillMainBundle/Service/Import/AddressReferenceLU.php +++ b/src/Bundle/ChillMainBundle/Service/Import/AddressReferenceLU.php @@ -42,9 +42,9 @@ class AddressReferenceLU fclose($file); - $uncompressedStream = gzopen($tmpname, 'r'); + //$uncompressedStream = gzopen($tmpname, 'r'); - $csv = Reader::createFromStream($uncompressedStream); + $csv = Reader::createFromStream($file); $csv->setDelimiter(';'); $csv->setHeaderOffset(0); @@ -54,7 +54,7 @@ class AddressReferenceLU $this->addressToReferenceMatcher->checkAddressesMatchingReferences(); - gzclose($uncompressedStream); + //gzclose($uncompressedStream); } private function process_address(Reader $csv): void @@ -67,7 +67,7 @@ class AddressReferenceLU $record['code_postal'], $record['rue'], $record['numero'], - 'bd addresses', + 'bd-addresses.lux', (float) $record['lat_wgs84'], (float) $record['lon_wgs84'], 4326 @@ -82,7 +82,8 @@ class AddressReferenceLU $stmt = Statement::create()->process($csv); $arr_postal_codes = []; foreach ($stmt as $record) { - if (false === \in_array($record['code_postal'], $arr_postal_codes, true)) { + //if (false === \in_array($record['code_postal'], $arr_postal_codes, true)) { + if (false === \array_key_exists($record['code_postal'], $arr_postal_codes, true)) { $this->postalCodeBaseImporter->importCode( 'LU', trim((string) $record['localite']), @@ -93,7 +94,7 @@ class AddressReferenceLU (float) $record['lon_wgs84'], 4326 ); - \array_push($arr_postal_codes, $record['code_postal']); + $arr_postal_codes[$record['code_postal']] = 1; } } } From 9c28df25a1b32499eec56acb4200ac9eb160effe Mon Sep 17 00:00:00 2001 From: nobohan Date: Fri, 28 Jun 2024 10:45:58 +0200 Subject: [PATCH 076/136] DX: Improve Lux adress import command + register in config --- .../Service/Import/AddressReferenceLU.php | 14 +++++--------- .../ChillMainBundle/config/services/command.yaml | 6 ++++++ 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/src/Bundle/ChillMainBundle/Service/Import/AddressReferenceLU.php b/src/Bundle/ChillMainBundle/Service/Import/AddressReferenceLU.php index f5cb03f19..d70b5085d 100644 --- a/src/Bundle/ChillMainBundle/Service/Import/AddressReferenceLU.php +++ b/src/Bundle/ChillMainBundle/Service/Import/AddressReferenceLU.php @@ -33,16 +33,13 @@ class AddressReferenceLU throw new \Exception('Could not download CSV: '.$response->getStatusCode()); } - $tmpname = tempnam(sys_get_temp_dir(), 'php-add-'); - $file = fopen($tmpname, 'r+b'); + $file = tmpfile(); foreach ($this->client->stream($response) as $chunk) { fwrite($file, $chunk->getContent()); } - fclose($file); - - //$uncompressedStream = gzopen($tmpname, 'r'); + fseek($file, 0); $csv = Reader::createFromStream($file); $csv->setDelimiter(';'); @@ -54,7 +51,7 @@ class AddressReferenceLU $this->addressToReferenceMatcher->checkAddressesMatchingReferences(); - //gzclose($uncompressedStream); + fclose($file); } private function process_address(Reader $csv): void @@ -82,14 +79,13 @@ class AddressReferenceLU $stmt = Statement::create()->process($csv); $arr_postal_codes = []; foreach ($stmt as $record) { - //if (false === \in_array($record['code_postal'], $arr_postal_codes, true)) { - if (false === \array_key_exists($record['code_postal'], $arr_postal_codes, true)) { + if (false === \array_key_exists($record['code_postal'], $arr_postal_codes)) { $this->postalCodeBaseImporter->importCode( 'LU', trim((string) $record['localite']), trim((string) $record['code_postal']), trim((string) $record['code_postal']), - 'bd addresses', + 'bd-addresses.lux', (float) $record['lat_wgs84'], (float) $record['lon_wgs84'], 4326 diff --git a/src/Bundle/ChillMainBundle/config/services/command.yaml b/src/Bundle/ChillMainBundle/config/services/command.yaml index 8a2327c0b..94cb2cf97 100644 --- a/src/Bundle/ChillMainBundle/config/services/command.yaml +++ b/src/Bundle/ChillMainBundle/config/services/command.yaml @@ -59,6 +59,12 @@ services: tags: - { name: console.command } + Chill\MainBundle\Command\LoadAddressesLUFromBDAddressCommand: + autoconfigure: true + autowire: true + tags: + - { name: console.command } + Chill\MainBundle\Command\ExecuteCronJobCommand: autoconfigure: true autowire: true From 436661d952a8201337f0665726e942515e63cec5 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Mon, 1 Jul 2024 09:19:22 +0200 Subject: [PATCH 077/136] Remove debug word from code --- .../Resources/views/Activity/concernedGroups.html.twig | 1 - 1 file changed, 1 deletion(-) diff --git a/src/Bundle/ChillActivityBundle/Resources/views/Activity/concernedGroups.html.twig b/src/Bundle/ChillActivityBundle/Resources/views/Activity/concernedGroups.html.twig index 76db92d42..5528ab233 100644 --- a/src/Bundle/ChillActivityBundle/Resources/views/Activity/concernedGroups.html.twig +++ b/src/Bundle/ChillActivityBundle/Resources/views/Activity/concernedGroups.html.twig @@ -87,7 +87,6 @@
      • {% if bloc.type == 'user' %} - hello {{ item|chill_entity_render_box({'render': 'raw', 'addAltNames': false, 'at_date': entity.date }) }} {% else %} From db3961275bd3b91b07c86a1f7892ac8f12a7683f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julien=20Fastr=C3=A9?= Date: Mon, 1 Jul 2024 09:53:41 +0200 Subject: [PATCH 078/136] git release 2.22.1 --- .changes/unreleased/DX-20240627-100653.yaml | 6 ------ .changes/v2.22.1.md | 5 +++++ 2 files changed, 5 insertions(+), 6 deletions(-) delete mode 100644 .changes/unreleased/DX-20240627-100653.yaml create mode 100644 .changes/v2.22.1.md diff --git a/.changes/unreleased/DX-20240627-100653.yaml b/.changes/unreleased/DX-20240627-100653.yaml deleted file mode 100644 index 538cf2697..000000000 --- a/.changes/unreleased/DX-20240627-100653.yaml +++ /dev/null @@ -1,6 +0,0 @@ -kind: DX -body: Add a command for reading official address DB from Luxembourg and update chill - addresses -time: 2024-06-27T10:06:53.098022939+02:00 -custom: - Issue: "" diff --git a/.changes/v2.22.1.md b/.changes/v2.22.1.md new file mode 100644 index 000000000..b856cc95b --- /dev/null +++ b/.changes/v2.22.1.md @@ -0,0 +1,5 @@ +## v2.22.1 - 2024-07-01 +### Fixed +* Remove debug word +### DX +* Add a command for reading official address DB from Luxembourg and update chill addresses From 18df08e8c3a03631b986881292dddb5469f9c6ef Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Mon, 1 Jul 2024 11:14:02 +0200 Subject: [PATCH 079/136] Do not require scope for event participation stats --- src/Bundle/ChillEventBundle/Security/ParticipationVoter.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Bundle/ChillEventBundle/Security/ParticipationVoter.php b/src/Bundle/ChillEventBundle/Security/ParticipationVoter.php index 670cff815..368a47cab 100644 --- a/src/Bundle/ChillEventBundle/Security/ParticipationVoter.php +++ b/src/Bundle/ChillEventBundle/Security/ParticipationVoter.php @@ -72,7 +72,7 @@ class ParticipationVoter extends AbstractChillVoter implements ProvideRoleHierar public function getRolesWithoutScope(): array { - return []; + return [self::ROLES, self::STATS]; } public function supports($attribute, $subject) From 2c99ea17d408755bc121cdaad3bc4e5551294dba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julien=20Fastr=C3=A9?= Date: Mon, 1 Jul 2024 09:55:38 +0000 Subject: [PATCH 080/136] Update new version of chill + more obvious generate jwt keypair command --- docs/source/installation/index.rst | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/docs/source/installation/index.rst b/docs/source/installation/index.rst index 072a32ffb..a9a4ea0c6 100644 --- a/docs/source/installation/index.rst +++ b/docs/source/installation/index.rst @@ -56,7 +56,7 @@ We strongly encourage you to initialize a git repository at this step, to track cat <<< "$(jq '.extra.symfony += {"endpoint": ["flex://defaults", "https://gitlab.com/api/v4/projects/57371968/repository/files/index.json/raw?ref=main"]}' composer.json)" > composer.json # install chill and some dependencies # TODO fix the suffix "alpha1" and replace by ^3.0.0 when version 3.0.0 will be released - symfony composer require chill-project/chill-bundles v3.0.0-alpha1 champs-libres/wopi-lib dev-master@dev champs-libres/wopi-bundle dev-master@dev + symfony composer require chill-project/chill-bundles v3.0.0-RC3 champs-libres/wopi-lib dev-master@dev champs-libres/wopi-bundle dev-master@dev We encourage you to accept the inclusion of the "Docker configuration from recipes": this is the documented way to run the database. You must also accept to configure recipes from the contrib repository, unless you want to configure the bundles manually). @@ -110,15 +110,14 @@ you can either: .. code-block:: env ADMIN_PASSWORD=\$2y\$13\$iyvJLuT4YEa6iWXyQV4/N.hNHpNG8kXlYDkkt5MkYy4FXcSwYAwmm + # note: if you copy-paste the line above, the password will be "admin". - add the generated password to the secrets manager (**note**: you must add the generated hashed password to the secrets env, not the password in clear text). - set up the jwt authentication bundle -Some environment variables are available for the JWT authentication bundle in the :code:`.env` file. You must also run the command -:code:`symfony console lexik:jwt:generate-keypair` to generate some keys that will be stored in the paths set up in the :code:`JWT_SECRET_KEY` -and the :code:`JWT_PUBLIC_KEY` env variables. This is only required for using the stored documents in Chill. +Some environment variables are available for the JWT authentication bundle in the :code:`.env` file. Prepare migrations and other tools ********************************** @@ -136,6 +135,8 @@ To continue the installation process, you will have to run migrations: symfony console messenger:setup-transports # prepare some views symfony console chill:db:sync-views + # generate jwt token, required for some api features (webdav access, ...) + symfony console lexik:jwt:generate-keypair .. warning:: From 3a7ed7ef8fd95909ffc3a2539b19c45e08007e46 Mon Sep 17 00:00:00 2001 From: nobohan Date: Thu, 13 Jun 2024 14:00:25 +0200 Subject: [PATCH 081/136] #271 Account for acp closing date inn action filters (export) --- .changes/unreleased/Fixed-20240613-135945.yaml | 5 +++++ .../AccompanyingPeriodWorkEndDateBetweenDateFilter.php | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) create mode 100644 .changes/unreleased/Fixed-20240613-135945.yaml diff --git a/.changes/unreleased/Fixed-20240613-135945.yaml b/.changes/unreleased/Fixed-20240613-135945.yaml new file mode 100644 index 000000000..38028a735 --- /dev/null +++ b/.changes/unreleased/Fixed-20240613-135945.yaml @@ -0,0 +1,5 @@ +kind: Fixed +body: Take into account the acp closing date in the acp works date filter +time: 2024-06-13T13:59:45.561891547+02:00 +custom: + Issue: "271" diff --git a/src/Bundle/ChillPersonBundle/Export/Filter/SocialWorkFilters/AccompanyingPeriodWorkEndDateBetweenDateFilter.php b/src/Bundle/ChillPersonBundle/Export/Filter/SocialWorkFilters/AccompanyingPeriodWorkEndDateBetweenDateFilter.php index 92258ccf9..38ca39320 100644 --- a/src/Bundle/ChillPersonBundle/Export/Filter/SocialWorkFilters/AccompanyingPeriodWorkEndDateBetweenDateFilter.php +++ b/src/Bundle/ChillPersonBundle/Export/Filter/SocialWorkFilters/AccompanyingPeriodWorkEndDateBetweenDateFilter.php @@ -86,11 +86,11 @@ final readonly class AccompanyingPeriodWorkEndDateBetweenDateFilter implements F }; $end = match ($data['keep_null']) { true => $qb->expr()->orX( - $qb->expr()->gt('acpw.endDate', ':'.$as), + $qb->expr()->gt('COALESCE(acp.closingDate, acpw.endDate)', ':'.$as), $qb->expr()->isNull('acpw.endDate') ), false => $qb->expr()->andX( - $qb->expr()->gt('acpw.endDate', ':'.$as), + $qb->expr()->gt('COALESCE(acp.closingDate, acpw.endDate)', ':'.$as), $qb->expr()->isNotNull('acpw.endDate') ), default => throw new \LogicException('This value is not supported'), From 41dd4d89f7e3535a2f4fa817b278eb0e932163fd Mon Sep 17 00:00:00 2001 From: nobohan Date: Tue, 2 Jul 2024 16:24:45 +0200 Subject: [PATCH 082/136] Revert "#271 Account for acp closing date inn action filters (export)" This reverts commit 3a7ed7ef8fd95909ffc3a2539b19c45e08007e46. --- .changes/unreleased/Fixed-20240613-135945.yaml | 5 ----- .../AccompanyingPeriodWorkEndDateBetweenDateFilter.php | 4 ++-- 2 files changed, 2 insertions(+), 7 deletions(-) delete mode 100644 .changes/unreleased/Fixed-20240613-135945.yaml diff --git a/.changes/unreleased/Fixed-20240613-135945.yaml b/.changes/unreleased/Fixed-20240613-135945.yaml deleted file mode 100644 index 38028a735..000000000 --- a/.changes/unreleased/Fixed-20240613-135945.yaml +++ /dev/null @@ -1,5 +0,0 @@ -kind: Fixed -body: Take into account the acp closing date in the acp works date filter -time: 2024-06-13T13:59:45.561891547+02:00 -custom: - Issue: "271" diff --git a/src/Bundle/ChillPersonBundle/Export/Filter/SocialWorkFilters/AccompanyingPeriodWorkEndDateBetweenDateFilter.php b/src/Bundle/ChillPersonBundle/Export/Filter/SocialWorkFilters/AccompanyingPeriodWorkEndDateBetweenDateFilter.php index 38ca39320..92258ccf9 100644 --- a/src/Bundle/ChillPersonBundle/Export/Filter/SocialWorkFilters/AccompanyingPeriodWorkEndDateBetweenDateFilter.php +++ b/src/Bundle/ChillPersonBundle/Export/Filter/SocialWorkFilters/AccompanyingPeriodWorkEndDateBetweenDateFilter.php @@ -86,11 +86,11 @@ final readonly class AccompanyingPeriodWorkEndDateBetweenDateFilter implements F }; $end = match ($data['keep_null']) { true => $qb->expr()->orX( - $qb->expr()->gt('COALESCE(acp.closingDate, acpw.endDate)', ':'.$as), + $qb->expr()->gt('acpw.endDate', ':'.$as), $qb->expr()->isNull('acpw.endDate') ), false => $qb->expr()->andX( - $qb->expr()->gt('COALESCE(acp.closingDate, acpw.endDate)', ':'.$as), + $qb->expr()->gt('acpw.endDate', ':'.$as), $qb->expr()->isNotNull('acpw.endDate') ), default => throw new \LogicException('This value is not supported'), From 702a5a27d281d8ba5bf44265c185b639cc051b1a Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 3 Jul 2024 12:22:53 +0200 Subject: [PATCH 083/136] Update version of bundles to 2.22.2 --- .changes/v2.22.2.md | 3 +++ CHANGELOG.md | 10 ++++++++++ 2 files changed, 13 insertions(+) create mode 100644 .changes/v2.22.2.md diff --git a/.changes/v2.22.2.md b/.changes/v2.22.2.md new file mode 100644 index 000000000..51b3c75da --- /dev/null +++ b/.changes/v2.22.2.md @@ -0,0 +1,3 @@ +## v2.22.2 - 2024-07-03 +### Fixed +* Remove scope required for event participation stats diff --git a/CHANGELOG.md b/CHANGELOG.md index 47b3760b0..1d0fd76e4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,16 @@ adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html), and is generated by [Changie](https://github.com/miniscruff/changie). +## v2.22.2 - 2024-07-03 +### Fixed +* Remove scope required for event participation stats + +## v2.22.1 - 2024-07-01 +### Fixed +* Remove debug word +### DX +* Add a command for reading official address DB from Luxembourg and update chill addresses + ## v2.22.0 - 2024-06-25 ### Feature * ([#216](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/216)) [event bundle] exports added for the event module From ead1abb825dbfeaefeb9c2f853a52c41c37db956 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julien=20Fastr=C3=A9?= Date: Wed, 3 Jul 2024 13:29:22 +0200 Subject: [PATCH 084/136] fix code style for symfony 5 --- .../Export/Aggregator/EventTypeAggregator.php | 4 +--- .../ChillEventBundle/Export/Aggregator/RoleAggregator.php | 4 +--- .../Export/Export/CountEventParticipations.php | 4 +--- src/Bundle/ChillEventBundle/Export/Export/CountEvents.php | 4 +--- .../ChillEventBundle/Export/Filter/EventDateFilter.php | 4 +--- .../ChillEventBundle/Export/Filter/EventTypeFilter.php | 3 +-- src/Bundle/ChillEventBundle/Export/Filter/RoleFilter.php | 3 +-- .../Tests/Export/CountEventParticipationsTest.php | 2 +- src/Bundle/ChillEventBundle/Tests/Export/CountEventTest.php | 2 +- .../Tests/Export/aggregators/EventDateAggregatorTest.php | 4 ++-- .../Tests/Export/aggregators/EventTypeAggregatorTest.php | 4 ++-- .../Tests/Export/aggregators/RoleAggregatorTest.php | 4 ++-- .../Tests/Export/filters/EventDateFilterTest.php | 4 ++-- .../Tests/Export/filters/EventTypeFilterTest.php | 6 +++--- .../Tests/Export/filters/RoleFilterTest.php | 6 +++--- .../Command/LoadAddressesLUFromBDAddressCommand.php | 2 +- .../ChillMainBundle/Service/Import/AddressReferenceLU.php | 4 +--- 17 files changed, 25 insertions(+), 39 deletions(-) diff --git a/src/Bundle/ChillEventBundle/Export/Aggregator/EventTypeAggregator.php b/src/Bundle/ChillEventBundle/Export/Aggregator/EventTypeAggregator.php index c0010d77a..db757cac9 100644 --- a/src/Bundle/ChillEventBundle/Export/Aggregator/EventTypeAggregator.php +++ b/src/Bundle/ChillEventBundle/Export/Aggregator/EventTypeAggregator.php @@ -22,9 +22,7 @@ class EventTypeAggregator implements AggregatorInterface { final public const KEY = 'event_type_aggregator'; - public function __construct(protected EventTypeRepository $eventTypeRepository, protected TranslatableStringHelperInterface $translatableStringHelper) - { - } + public function __construct(protected EventTypeRepository $eventTypeRepository, protected TranslatableStringHelperInterface $translatableStringHelper) {} public function addRole(): ?string { diff --git a/src/Bundle/ChillEventBundle/Export/Aggregator/RoleAggregator.php b/src/Bundle/ChillEventBundle/Export/Aggregator/RoleAggregator.php index f8d1985e2..c02483db2 100644 --- a/src/Bundle/ChillEventBundle/Export/Aggregator/RoleAggregator.php +++ b/src/Bundle/ChillEventBundle/Export/Aggregator/RoleAggregator.php @@ -22,9 +22,7 @@ class RoleAggregator implements AggregatorInterface { final public const KEY = 'part_role_aggregator'; - public function __construct(protected RoleRepository $roleRepository, protected TranslatableStringHelperInterface $translatableStringHelper) - { - } + public function __construct(protected RoleRepository $roleRepository, protected TranslatableStringHelperInterface $translatableStringHelper) {} public function addRole(): ?string { diff --git a/src/Bundle/ChillEventBundle/Export/Export/CountEventParticipations.php b/src/Bundle/ChillEventBundle/Export/Export/CountEventParticipations.php index 2970ed321..5c5d5bf05 100644 --- a/src/Bundle/ChillEventBundle/Export/Export/CountEventParticipations.php +++ b/src/Bundle/ChillEventBundle/Export/Export/CountEventParticipations.php @@ -34,9 +34,7 @@ readonly class CountEventParticipations implements ExportInterface, GroupedExpor $this->filterStatsByCenters = $parameterBag->get('chill_main')['acl']['filter_stats_by_center']; } - public function buildForm(FormBuilderInterface $builder) - { - } + public function buildForm(FormBuilderInterface $builder) {} public function getFormDefaultData(): array { diff --git a/src/Bundle/ChillEventBundle/Export/Export/CountEvents.php b/src/Bundle/ChillEventBundle/Export/Export/CountEvents.php index 5a1930862..6ecfa3f43 100644 --- a/src/Bundle/ChillEventBundle/Export/Export/CountEvents.php +++ b/src/Bundle/ChillEventBundle/Export/Export/CountEvents.php @@ -34,9 +34,7 @@ readonly class CountEvents implements ExportInterface, GroupedExportInterface $this->filterStatsByCenters = $parameterBag->get('chill_main')['acl']['filter_stats_by_center']; } - public function buildForm(FormBuilderInterface $builder) - { - } + public function buildForm(FormBuilderInterface $builder) {} public function getFormDefaultData(): array { diff --git a/src/Bundle/ChillEventBundle/Export/Filter/EventDateFilter.php b/src/Bundle/ChillEventBundle/Export/Filter/EventDateFilter.php index 650c5348d..10f1dbd81 100644 --- a/src/Bundle/ChillEventBundle/Export/Filter/EventDateFilter.php +++ b/src/Bundle/ChillEventBundle/Export/Filter/EventDateFilter.php @@ -23,9 +23,7 @@ use Symfony\Contracts\Translation\TranslatorInterface; class EventDateFilter implements FilterInterface { - public function __construct(protected TranslatorInterface $translator, private readonly RollingDateConverterInterface $rollingDateConverter) - { - } + public function __construct(protected TranslatorInterface $translator, private readonly RollingDateConverterInterface $rollingDateConverter) {} public function addRole(): ?string { diff --git a/src/Bundle/ChillEventBundle/Export/Filter/EventTypeFilter.php b/src/Bundle/ChillEventBundle/Export/Filter/EventTypeFilter.php index d4c1a96c0..9e8855adf 100644 --- a/src/Bundle/ChillEventBundle/Export/Filter/EventTypeFilter.php +++ b/src/Bundle/ChillEventBundle/Export/Filter/EventTypeFilter.php @@ -27,8 +27,7 @@ class EventTypeFilter implements ExportElementValidatedInterface, FilterInterfac public function __construct( protected TranslatableStringHelperInterface $translatableStringHelper, protected EventTypeRepository $eventTypeRepository - ) { - } + ) {} public function addRole(): ?string { diff --git a/src/Bundle/ChillEventBundle/Export/Filter/RoleFilter.php b/src/Bundle/ChillEventBundle/Export/Filter/RoleFilter.php index d791bafe7..791f07f7a 100644 --- a/src/Bundle/ChillEventBundle/Export/Filter/RoleFilter.php +++ b/src/Bundle/ChillEventBundle/Export/Filter/RoleFilter.php @@ -27,8 +27,7 @@ class RoleFilter implements ExportElementValidatedInterface, FilterInterface public function __construct( protected TranslatableStringHelperInterface $translatableStringHelper, protected RoleRepository $roleRepository - ) { - } + ) {} public function addRole(): ?string { diff --git a/src/Bundle/ChillEventBundle/Tests/Export/CountEventParticipationsTest.php b/src/Bundle/ChillEventBundle/Tests/Export/CountEventParticipationsTest.php index 3d606dd04..2c7886ed7 100644 --- a/src/Bundle/ChillEventBundle/Tests/Export/CountEventParticipationsTest.php +++ b/src/Bundle/ChillEventBundle/Tests/Export/CountEventParticipationsTest.php @@ -28,7 +28,7 @@ class CountEventParticipationsTest extends KernelTestCase { parent::setUp(); self::bootKernel(); - $this->countEventParticipations = self::$container->get(CountEventParticipations::class); + $this->countEventParticipations = self::getContainer()->get(CountEventParticipations::class); } public function testExecuteQuery(): void diff --git a/src/Bundle/ChillEventBundle/Tests/Export/CountEventTest.php b/src/Bundle/ChillEventBundle/Tests/Export/CountEventTest.php index 4afbe64e9..15884edec 100644 --- a/src/Bundle/ChillEventBundle/Tests/Export/CountEventTest.php +++ b/src/Bundle/ChillEventBundle/Tests/Export/CountEventTest.php @@ -28,7 +28,7 @@ class CountEventTest extends KernelTestCase { parent::setUp(); self::bootKernel(); - $this->countEvents = self::$container->get(CountEvents::class); + $this->countEvents = self::getContainer()->get(CountEvents::class); } public function testExecuteQuery(): void diff --git a/src/Bundle/ChillEventBundle/Tests/Export/aggregators/EventDateAggregatorTest.php b/src/Bundle/ChillEventBundle/Tests/Export/aggregators/EventDateAggregatorTest.php index 96e377f4e..4adf4fa2c 100644 --- a/src/Bundle/ChillEventBundle/Tests/Export/aggregators/EventDateAggregatorTest.php +++ b/src/Bundle/ChillEventBundle/Tests/Export/aggregators/EventDateAggregatorTest.php @@ -29,7 +29,7 @@ class EventDateAggregatorTest extends AbstractAggregatorTest { self::bootKernel(); - $this->aggregator = self::$container->get(EventDateAggregator::class); + $this->aggregator = self::getContainer()->get(EventDateAggregator::class); } public function getAggregator() @@ -48,7 +48,7 @@ class EventDateAggregatorTest extends AbstractAggregatorTest { self::bootKernel(); - $em = self::$container->get(EntityManagerInterface::class); + $em = self::getContainer()->get(EntityManagerInterface::class); return [ $em->createQueryBuilder() diff --git a/src/Bundle/ChillEventBundle/Tests/Export/aggregators/EventTypeAggregatorTest.php b/src/Bundle/ChillEventBundle/Tests/Export/aggregators/EventTypeAggregatorTest.php index 321eae153..33e3182c4 100644 --- a/src/Bundle/ChillEventBundle/Tests/Export/aggregators/EventTypeAggregatorTest.php +++ b/src/Bundle/ChillEventBundle/Tests/Export/aggregators/EventTypeAggregatorTest.php @@ -29,7 +29,7 @@ class EventTypeAggregatorTest extends AbstractAggregatorTest { self::bootKernel(); - $this->aggregator = self::$container->get(EventTypeAggregator::class); + $this->aggregator = self::getContainer()->get(EventTypeAggregator::class); } public function getAggregator() @@ -48,7 +48,7 @@ class EventTypeAggregatorTest extends AbstractAggregatorTest { self::bootKernel(); - $em = self::$container->get(EntityManagerInterface::class); + $em = self::getContainer()->get(EntityManagerInterface::class); return [ $em->createQueryBuilder() diff --git a/src/Bundle/ChillEventBundle/Tests/Export/aggregators/RoleAggregatorTest.php b/src/Bundle/ChillEventBundle/Tests/Export/aggregators/RoleAggregatorTest.php index 0e4f0a896..c9cdb92be 100644 --- a/src/Bundle/ChillEventBundle/Tests/Export/aggregators/RoleAggregatorTest.php +++ b/src/Bundle/ChillEventBundle/Tests/Export/aggregators/RoleAggregatorTest.php @@ -30,7 +30,7 @@ class RoleAggregatorTest extends AbstractAggregatorTest { self::bootKernel(); - $this->aggregator = self::$container->get(RoleAggregator::class); + $this->aggregator = self::getContainer()->get(RoleAggregator::class); } public function getAggregator() @@ -49,7 +49,7 @@ class RoleAggregatorTest extends AbstractAggregatorTest { self::bootKernel(); - $em = self::$container->get(EntityManagerInterface::class); + $em = self::getContainer()->get(EntityManagerInterface::class); return [ $em->createQueryBuilder() diff --git a/src/Bundle/ChillEventBundle/Tests/Export/filters/EventDateFilterTest.php b/src/Bundle/ChillEventBundle/Tests/Export/filters/EventDateFilterTest.php index dd13c5c77..369ceee59 100644 --- a/src/Bundle/ChillEventBundle/Tests/Export/filters/EventDateFilterTest.php +++ b/src/Bundle/ChillEventBundle/Tests/Export/filters/EventDateFilterTest.php @@ -32,7 +32,7 @@ class EventDateFilterTest extends AbstractFilterTest parent::setUp(); self::bootKernel(); - $this->rollingDateConverter = self::$container->get(RollingDateConverterInterface::class); + $this->rollingDateConverter = self::getContainer()->get(RollingDateConverterInterface::class); } public function getFilter() @@ -54,7 +54,7 @@ class EventDateFilterTest extends AbstractFilterTest { self::bootKernel(); - $em = self::$container->get(EntityManagerInterface::class); + $em = self::getContainer()->get(EntityManagerInterface::class); return [ $em->createQueryBuilder() diff --git a/src/Bundle/ChillEventBundle/Tests/Export/filters/EventTypeFilterTest.php b/src/Bundle/ChillEventBundle/Tests/Export/filters/EventTypeFilterTest.php index 8d54c8068..4e41b624e 100644 --- a/src/Bundle/ChillEventBundle/Tests/Export/filters/EventTypeFilterTest.php +++ b/src/Bundle/ChillEventBundle/Tests/Export/filters/EventTypeFilterTest.php @@ -30,7 +30,7 @@ class EventTypeFilterTest extends AbstractFilterTest protected function setUp(): void { self::bootKernel(); - $this->filter = self::$container->get(EventTypeFilter::class); + $this->filter = self::getContainer()->get(EventTypeFilter::class); } public function getFilter(): EventTypeFilter|\Chill\MainBundle\Export\FilterInterface @@ -42,7 +42,7 @@ class EventTypeFilterTest extends AbstractFilterTest { self::bootKernel(); - $em = self::$container->get(EntityManagerInterface::class); + $em = self::getContainer()->get(EntityManagerInterface::class); $array = $em->createQueryBuilder() ->from(EventType::class, 'et') @@ -65,7 +65,7 @@ class EventTypeFilterTest extends AbstractFilterTest { self::bootKernel(); - $em = self::$container->get(EntityManagerInterface::class); + $em = self::getContainer()->get(EntityManagerInterface::class); return [ $em->createQueryBuilder() diff --git a/src/Bundle/ChillEventBundle/Tests/Export/filters/RoleFilterTest.php b/src/Bundle/ChillEventBundle/Tests/Export/filters/RoleFilterTest.php index f03aac5e0..714098956 100644 --- a/src/Bundle/ChillEventBundle/Tests/Export/filters/RoleFilterTest.php +++ b/src/Bundle/ChillEventBundle/Tests/Export/filters/RoleFilterTest.php @@ -32,7 +32,7 @@ class RoleFilterTest extends AbstractFilterTest { self::bootKernel(); - $this->filter = self::$container->get(RoleFilter::class); + $this->filter = self::getContainer()->get(RoleFilter::class); } public function getFilter() @@ -43,7 +43,7 @@ class RoleFilterTest extends AbstractFilterTest public function getFormData(): array { self::bootKernel(); - $em = self::$container->get(EntityManagerInterface::class); + $em = self::getContainer()->get(EntityManagerInterface::class); $array = $em->createQueryBuilder() ->from(Role::class, 'r') @@ -67,7 +67,7 @@ class RoleFilterTest extends AbstractFilterTest { self::bootKernel(); - $em = self::$container->get(EntityManagerInterface::class); + $em = self::getContainer()->get(EntityManagerInterface::class); return [ $em->createQueryBuilder() diff --git a/src/Bundle/ChillMainBundle/Command/LoadAddressesLUFromBDAddressCommand.php b/src/Bundle/ChillMainBundle/Command/LoadAddressesLUFromBDAddressCommand.php index 499751c7c..2477a486d 100644 --- a/src/Bundle/ChillMainBundle/Command/LoadAddressesLUFromBDAddressCommand.php +++ b/src/Bundle/ChillMainBundle/Command/LoadAddressesLUFromBDAddressCommand.php @@ -35,6 +35,6 @@ class LoadAddressesLUFromBDAddressCommand extends Command { $this->addressImporter->import(); - return 0; + return Command::SUCCESS; } } diff --git a/src/Bundle/ChillMainBundle/Service/Import/AddressReferenceLU.php b/src/Bundle/ChillMainBundle/Service/Import/AddressReferenceLU.php index d70b5085d..50ee16401 100644 --- a/src/Bundle/ChillMainBundle/Service/Import/AddressReferenceLU.php +++ b/src/Bundle/ChillMainBundle/Service/Import/AddressReferenceLU.php @@ -19,9 +19,7 @@ class AddressReferenceLU { private const RELEASE = 'https://data.public.lu/fr/datasets/r/5cadc5b8-6a7d-4283-87bc-f9e58dd771f7'; - public function __construct(private readonly HttpClientInterface $client, private readonly AddressReferenceBaseImporter $addressBaseImporter, private readonly PostalCodeBaseImporter $postalCodeBaseImporter, private readonly AddressToReferenceMatcher $addressToReferenceMatcher) - { - } + public function __construct(private readonly HttpClientInterface $client, private readonly AddressReferenceBaseImporter $addressBaseImporter, private readonly PostalCodeBaseImporter $postalCodeBaseImporter, private readonly AddressToReferenceMatcher $addressToReferenceMatcher) {} public function import(): void { From 724b98e8c5e6c53ddfc3c3f611db5f0ade831d9c Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Thu, 4 Jul 2024 13:28:54 +0200 Subject: [PATCH 085/136] Improve naming of downloaded documents in job bundle When downloaded the title of the document was\ always set to 'Document', which gave little\ indication as to what the document was about.\ Now documents are titled with the name of the\ person and the type of document (CV, permis,...) --- .../Resources/views/CSPerson/personal_situation_view.html.twig | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_view.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_view.html.twig index a1f5413bf..ed5e5e590 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_view.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_view.html.twig @@ -258,7 +258,8 @@ {% if d is null %}
        {{ null|chill_print_or_message("Aucun document") }}
        {% else %} -
        {{ d.title }} {{ d|chill_document_button_group(d.title, is_granted('CHILL_PERSON_UPDATE', person), {small: true}) }}
        + {% set title = person.lastname ~ ' ' ~ person.firstname ~ ', ' ~ r[0] %} +
        {{ d|chill_document_button_group(title, is_granted('CHILL_PERSON_UPDATE', person), {small: true}) }}
        {% endif %} {% endfor %} From 00ceee1fd5fa46aa11a57fd9514096e6db5fb349 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Mon, 15 Jul 2024 15:09:45 +0200 Subject: [PATCH 086/136] Remove "document" from document name --- .../Resources/views/CSPerson/personal_situation_view.html.twig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_view.html.twig b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_view.html.twig index ed5e5e590..3ce2bd98d 100644 --- a/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_view.html.twig +++ b/src/Bundle/ChillJobBundle/src/Resources/views/CSPerson/personal_situation_view.html.twig @@ -258,7 +258,7 @@ {% if d is null %}
        {{ null|chill_print_or_message("Aucun document") }}
        {% else %} - {% set title = person.lastname ~ ' ' ~ person.firstname ~ ', ' ~ r[0] %} + {% set title = person.lastname ~ ' ' ~ person.firstname ~ ', ' ~ r[1]|replace({"Document ": ""}) %}
        {{ d|chill_document_button_group(title, is_granted('CHILL_PERSON_UPDATE', person), {small: true}) }}
        {% endif %} From b100792a3474f7939982b67d79f6426785588ad1 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Mon, 15 Jul 2024 15:11:34 +0200 Subject: [PATCH 087/136] Fix request to France Travail Api to accomodate for new request limit A new limit was set to allow a maximum amount of request in a certain timeframe. We need to wait 1 sec to make next request. --- .../ApiHelper/PartenaireRomeAppellation.php | 33 +++++++++++-------- 1 file changed, 20 insertions(+), 13 deletions(-) diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php index a548894c9..605bbf668 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php @@ -87,20 +87,27 @@ class PartenaireRomeAppellation { $bearer = $this->getBearer(); - try { - $response = $this->httpClient->request('GET', sprintf(self::BASE.'appellation/%s', $code), [ - 'headers' => [ - 'Authorization' => 'Bearer '.$bearer, - 'Accept' => 'application/json', - ], - 'query' => [ - 'champs' => 'code,libelle,metier(code,libelle)', - ], - ]); + while (true) { + try { + $response = $this->httpClient->request('GET', sprintf(self::BASE.'appellation/%s', $code), [ + 'headers' => [ + 'Authorization' => 'Bearer ' . $bearer, + 'Accept' => 'application/json', + ], + 'query' => [ + 'champs' => 'code,libelle,metier(code,libelle)', + ], + ]); - return $response->toArray(); - } catch (HttpExceptionInterface $exception) { - throw $exception; + return $response->toArray(); + } catch (HttpExceptionInterface $exception) { + if ($exception->getResponse()->getStatusCode() === 429) { + $retryAfter = $exception->getResponse()->getHeaders(false)['retry-after'][0] ?? 1; + sleep((int)$retryAfter); + } else { + throw $exception; + } + } } } } From 1079c7e394d2000b03273631dbdcb3e3b0d75d68 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Tue, 16 Jul 2024 07:07:08 +0200 Subject: [PATCH 088/136] Fix translation in event bundle using new pluralization syntax --- .../views/Participation/_ignored_participations.html.twig | 2 +- .../ChillEventBundle/translations/messages+intl-icu.fr.yml | 6 ++++++ src/Bundle/ChillEventBundle/translations/messages.fr.yml | 1 - 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/Bundle/ChillEventBundle/Resources/views/Participation/_ignored_participations.html.twig b/src/Bundle/ChillEventBundle/Resources/views/Participation/_ignored_participations.html.twig index 9451f3c2b..f43c94f72 100644 --- a/src/Bundle/ChillEventBundle/Resources/views/Participation/_ignored_participations.html.twig +++ b/src/Bundle/ChillEventBundle/Resources/views/Participation/_ignored_participations.html.twig @@ -1,7 +1,7 @@ {% import '@ChillPerson/Person/macro.html.twig' as person_macro %} {% if ignored_participations|length > 0 %} -

        {% transchoice ignored_participations|length %}The following people have been ignored because they are already participating on the event{% endtranschoice %} :

        +

        {{ 'ignored_participations'|trans({'count': ignored_participations|length}) }}:

          {% for p in ignored_participations %}
        • {{ person_macro.render(p.person) }}
        • diff --git a/src/Bundle/ChillEventBundle/translations/messages+intl-icu.fr.yml b/src/Bundle/ChillEventBundle/translations/messages+intl-icu.fr.yml index 5c2a5b7c9..ed2568d06 100644 --- a/src/Bundle/ChillEventBundle/translations/messages+intl-icu.fr.yml +++ b/src/Bundle/ChillEventBundle/translations/messages+intl-icu.fr.yml @@ -19,3 +19,9 @@ events: one {et un autre participant} other {et # autres participants} } + +ignored_participations: >- + { count, plural, + one {La personne suivante a été ignorée parce qu''elle participe déjà à l''événement} + other {Les personnes suivantes ont été ignorées parce qu''elles participent déjà à l'événement} + } diff --git a/src/Bundle/ChillEventBundle/translations/messages.fr.yml b/src/Bundle/ChillEventBundle/translations/messages.fr.yml index 60d888f07..f12b8f866 100644 --- a/src/Bundle/ChillEventBundle/translations/messages.fr.yml +++ b/src/Bundle/ChillEventBundle/translations/messages.fr.yml @@ -41,7 +41,6 @@ Back to the event: Retour à l'événement The participation was created: La participation a été créée The participation was updated: La participation a été mise à jour 'None of the requested people may participate the event: they are maybe already participating.': 'Aucune des personnes indiquées ne peut être ajoutée à l''événement: elles sont peut-être déjà inscrites comme participantes.' -'The following people have been ignored because they are already participating on the event': '{1} La personne suivante a été ignorée parce qu''elle participe déjà à l''événement | ]1,Inf] Les personnes suivantes ont été ignorées parce qu''elles participent déjà à l''événement' There are no participation to edit for this event: Il n'y a pas de participation pour cet événement The participations have been successfully updated.: Les participations ont été mises à jour. The participation has been sucessfully removed: La participation a été correctement supprimée. From 15094d5a9136910bdd87084bde22bad9756ebd51 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 17 Jul 2024 13:05:14 +0200 Subject: [PATCH 089/136] Fix delete request for all entities --- .../ChillActivityBundle/Controller/ActivityController.php | 5 ++--- .../Controller/AbstractElementController.php | 5 ++--- .../ChillCalendarBundle/Controller/CalendarController.php | 3 +-- .../ChillEventBundle/Controller/EventController.php | 7 +++---- .../ChillEventBundle/Controller/EventTypeController.php | 3 +-- .../Controller/ParticipationController.php | 5 ++--- src/Bundle/ChillEventBundle/Controller/RoleController.php | 2 +- .../Controller/AccompanyingCourseWorkController.php | 5 ++--- .../Controller/HouseholdCompositionController.php | 3 +-- .../Controller/PersonResourceController.php | 5 ++--- .../ChillTaskBundle/Controller/SingleTaskController.php | 8 +++----- 11 files changed, 20 insertions(+), 31 deletions(-) diff --git a/src/Bundle/ChillActivityBundle/Controller/ActivityController.php b/src/Bundle/ChillActivityBundle/Controller/ActivityController.php index 2248c54d3..cbfb93400 100644 --- a/src/Bundle/ChillActivityBundle/Controller/ActivityController.php +++ b/src/Bundle/ChillActivityBundle/Controller/ActivityController.php @@ -99,10 +99,10 @@ final class ActivityController extends AbstractController $form = $this->createDeleteForm($activity->getId(), $person, $accompanyingPeriod); - if (Request::METHOD_DELETE === $request->getMethod()) { + if (Request::METHOD_POST === $request->getMethod()) { $form->handleRequest($request); - if ($form->isValid()) { + if ($form->isSubmitted() && $form->isValid()) { $this->logger->notice('An activity has been removed', [ 'by_user' => $this->getUser()->getUsername(), 'activity_id' => $activity->getId(), @@ -640,7 +640,6 @@ final class ActivityController extends AbstractController return $this->createFormBuilder() ->setAction($this->generateUrl('chill_activity_activity_delete', $params)) - ->setMethod('DELETE') ->add('submit', SubmitType::class, ['label' => 'Delete']) ->getForm(); } diff --git a/src/Bundle/ChillBudgetBundle/Controller/AbstractElementController.php b/src/Bundle/ChillBudgetBundle/Controller/AbstractElementController.php index d293907f5..bb204c557 100644 --- a/src/Bundle/ChillBudgetBundle/Controller/AbstractElementController.php +++ b/src/Bundle/ChillBudgetBundle/Controller/AbstractElementController.php @@ -54,7 +54,7 @@ abstract class AbstractElementController extends AbstractController $indexPage = 'chill_budget_elements_household_index'; } - if (Request::METHOD_DELETE === $request->getMethod()) { + if (Request::METHOD_POST === $request->getMethod()) { $form->handleRequest($request); if ($form->isSubmitted() && $form->isValid()) { @@ -198,10 +198,9 @@ abstract class AbstractElementController extends AbstractController /** * Creates a form to delete a help request entity by id. */ - private function createDeleteForm(): Form + private function createDeleteForm(): \Symfony\Component\Form\FormInterface { return $this->createFormBuilder() - ->setMethod(Request::METHOD_DELETE) ->add('submit', SubmitType::class, ['label' => 'Delete']) ->getForm(); } diff --git a/src/Bundle/ChillCalendarBundle/Controller/CalendarController.php b/src/Bundle/ChillCalendarBundle/Controller/CalendarController.php index 328b8788f..e57d2743d 100644 --- a/src/Bundle/ChillCalendarBundle/Controller/CalendarController.php +++ b/src/Bundle/ChillCalendarBundle/Controller/CalendarController.php @@ -84,7 +84,7 @@ class CalendarController extends AbstractController $form = $this->createDeleteForm($entity); - if (Request::METHOD_DELETE === $request->getMethod()) { + if (Request::METHOD_POST === $request->getMethod()) { $form->handleRequest($request); if ($form->isValid()) { @@ -512,7 +512,6 @@ class CalendarController extends AbstractController { return $this->createFormBuilder() ->setAction($this->generateUrl('chill_calendar_calendar_delete', ['id' => $calendar->getId()])) - ->setMethod('DELETE') ->add('submit', SubmitType::class, ['label' => 'Delete']) ->getForm(); } diff --git a/src/Bundle/ChillEventBundle/Controller/EventController.php b/src/Bundle/ChillEventBundle/Controller/EventController.php index 95817485c..069ee5c6d 100644 --- a/src/Bundle/ChillEventBundle/Controller/EventController.php +++ b/src/Bundle/ChillEventBundle/Controller/EventController.php @@ -61,7 +61,7 @@ final class EventController extends AbstractController private readonly \Doctrine\Persistence\ManagerRegistry $managerRegistry ) {} - #[\Symfony\Component\Routing\Annotation\Route(path: '/{_locale}/event/event/{event_id}/delete', name: 'chill_event__event_delete', requirements: ['event_id' => '\d+'], methods: ['GET', 'DELETE'])] + #[\Symfony\Component\Routing\Annotation\Route(path: '/{_locale}/event/event/{event_id}/delete', name: 'chill_event__event_delete', requirements: ['event_id' => '\d+'], methods: ['GET', 'POST', 'DELETE'])] public function deleteAction($event_id, Request $request): \Symfony\Component\HttpFoundation\RedirectResponse|Response { $em = $this->managerRegistry->getManager(); @@ -78,10 +78,10 @@ final class EventController extends AbstractController $form = $this->createDeleteForm($event_id); - if (Request::METHOD_DELETE === $request->getMethod()) { + if (Request::METHOD_POST === $request->getMethod()) { $form->handleRequest($request); - if ($form->isValid()) { + if ($form->isSubmitted() && $form->isValid()) { foreach ($participations as $participation) { $em->remove($participation); } @@ -599,7 +599,6 @@ final class EventController extends AbstractController ->setAction($this->generateUrl('chill_event__event_delete', [ 'event_id' => $event_id, ])) - ->setMethod('DELETE') ->add('submit', SubmitType::class, ['label' => 'Delete']) ->getForm(); } diff --git a/src/Bundle/ChillEventBundle/Controller/EventTypeController.php b/src/Bundle/ChillEventBundle/Controller/EventTypeController.php index 5706dbe19..f7b1b205c 100644 --- a/src/Bundle/ChillEventBundle/Controller/EventTypeController.php +++ b/src/Bundle/ChillEventBundle/Controller/EventTypeController.php @@ -201,7 +201,7 @@ class EventTypeController extends AbstractController /** * Creates a form to delete a EventType entity by id. * - * @return \Symfony\Component\Form\Form The form + * @return \Symfony\Component\Form\FormInterface The form */ private function createDeleteForm(mixed $id) { @@ -210,7 +210,6 @@ class EventTypeController extends AbstractController 'chill_eventtype_admin_delete', ['id' => $id] )) - ->setMethod('DELETE') ->add('submit', SubmitType::class, ['label' => 'Delete']) ->getForm(); } diff --git a/src/Bundle/ChillEventBundle/Controller/ParticipationController.php b/src/Bundle/ChillEventBundle/Controller/ParticipationController.php index 8030a7878..c862c8fd6 100644 --- a/src/Bundle/ChillEventBundle/Controller/ParticipationController.php +++ b/src/Bundle/ChillEventBundle/Controller/ParticipationController.php @@ -259,10 +259,10 @@ final class ParticipationController extends AbstractController $form = $this->createDeleteForm($participation_id); - if (Request::METHOD_DELETE === $request->getMethod()) { + if (Request::METHOD_POST === $request->getMethod()) { $form->handleRequest($request); - if ($form->isValid()) { + if ($form->isSubmitted() && $form->isValid()) { $em->remove($participation); $em->flush(); @@ -753,7 +753,6 @@ final class ParticipationController extends AbstractController ->setAction($this->generateUrl('chill_event_participation_delete', [ 'participation_id' => $participation_id, ])) - ->setMethod('DELETE') ->add('submit', SubmitType::class, ['label' => 'Delete']) ->getForm(); } diff --git a/src/Bundle/ChillEventBundle/Controller/RoleController.php b/src/Bundle/ChillEventBundle/Controller/RoleController.php index 24e4f2121..1ff205dfc 100644 --- a/src/Bundle/ChillEventBundle/Controller/RoleController.php +++ b/src/Bundle/ChillEventBundle/Controller/RoleController.php @@ -201,7 +201,7 @@ class RoleController extends AbstractController /** * Creates a form to delete a Role entity by id. * - * @return \Symfony\Component\Form\Form The form + * @return \Symfony\Component\Form\FormInterface The form */ private function createDeleteForm(mixed $id) { diff --git a/src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseWorkController.php b/src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseWorkController.php index e206a6538..0243d55b5 100644 --- a/src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseWorkController.php +++ b/src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseWorkController.php @@ -80,10 +80,10 @@ final class AccompanyingCourseWorkController extends AbstractController $form = $this->createDeleteForm($work->getId()); - if (Request::METHOD_DELETE === $request->getMethod()) { + if (Request::METHOD_POST === $request->getMethod()) { $form->handleRequest($request); - if ($form->isValid()) { + if ($form->isSubmitted() && $form->isValid()) { $this->chillLogger->notice('An accompanying period work has been removed', [ 'by_user' => $this->getUser()->getUsername(), 'work_id' => $work->getId(), @@ -179,7 +179,6 @@ final class AccompanyingCourseWorkController extends AbstractController return $this->createFormBuilder() ->setAction($this->generateUrl('chill_person_accompanying_period_work_delete', $params)) - ->setMethod('DELETE') ->add('submit', SubmitType::class, ['label' => 'Delete']) ->getForm(); } diff --git a/src/Bundle/ChillPersonBundle/Controller/HouseholdCompositionController.php b/src/Bundle/ChillPersonBundle/Controller/HouseholdCompositionController.php index 0da3688f9..d9583c8d8 100644 --- a/src/Bundle/ChillPersonBundle/Controller/HouseholdCompositionController.php +++ b/src/Bundle/ChillPersonBundle/Controller/HouseholdCompositionController.php @@ -63,11 +63,10 @@ class HouseholdCompositionController extends AbstractController 'composition_id' => $composition_id, 'household_id' => $household_id, ])) - ->setMethod('DELETE') ->add('submit', SubmitType::class, ['label' => 'Delete']) ->getForm(); - if (Request::METHOD_DELETE === $request->getMethod()) { + if (Request::METHOD_POST === $request->getMethod()) { $form->handleRequest($request); if ($form->isValid()) { diff --git a/src/Bundle/ChillPersonBundle/Controller/PersonResourceController.php b/src/Bundle/ChillPersonBundle/Controller/PersonResourceController.php index 079830cf7..8332d468e 100644 --- a/src/Bundle/ChillPersonBundle/Controller/PersonResourceController.php +++ b/src/Bundle/ChillPersonBundle/Controller/PersonResourceController.php @@ -44,14 +44,13 @@ final class PersonResourceController extends AbstractController 'resource_id' => $resource_id, 'person_id' => $person_id, ])) - ->setMethod('DELETE') ->add('submit', SubmitType::class, ['label' => 'Delete']) ->getForm(); - if (Request::METHOD_DELETE === $request->getMethod()) { + if (Request::METHOD_POST === $request->getMethod()) { $form->handleRequest($request); - if ($form->isValid()) { + if ($form->isSubmitted() && $form->isValid()) { $this->em->remove($resource); $this->em->flush(); diff --git a/src/Bundle/ChillTaskBundle/Controller/SingleTaskController.php b/src/Bundle/ChillTaskBundle/Controller/SingleTaskController.php index 2c6234eb0..0c3b8a7ba 100644 --- a/src/Bundle/ChillTaskBundle/Controller/SingleTaskController.php +++ b/src/Bundle/ChillTaskBundle/Controller/SingleTaskController.php @@ -62,7 +62,7 @@ final class SingleTaskController extends AbstractController private readonly \Doctrine\Persistence\ManagerRegistry $managerRegistry, ) {} - #[Route(path: '/{_locale}/task/single-task/{id}/delete', name: 'chill_task_single_task_delete')] + #[Route(path: '/{_locale}/task/single-task/{id}/delete', name: 'chill_task_single_task_delete', methods: ['GET', 'POST', 'DELETE'])] public function deleteAction(Request $request, mixed $id) { $course = null; @@ -110,10 +110,9 @@ final class SingleTaskController extends AbstractController $form = $this->createDeleteForm($id); - if (Request::METHOD_DELETE === $request->getMethod()) { + if (Request::METHOD_POST === $request->getMethod()) { $form->handleRequest($request); - - if ($form->isValid()) { + if ($form->isSubmitted() && $form->isValid()) { $this->logger->notice('A task has been removed', [ 'by_user' => $this->getUser()->getUsername(), 'task_id' => $task->getId(), @@ -660,7 +659,6 @@ final class SingleTaskController extends AbstractController 'chill_task_single_task_delete', ['id' => $id] )) - ->setMethod('DELETE') ->add('submit', SubmitType::class, ['label' => 'Delete']) ->getForm(); } From f76379551cefa997512d032f8899bb9663acec5d Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 17 Jul 2024 13:08:48 +0200 Subject: [PATCH 090/136] Change namespace event voters for consistency --- .../Controller/EventController.php | 2 +- .../Controller/ParticipationController.php | 2 +- .../ChillEventExtension.php | 6 +++--- .../Menu/PersonMenuBuilder.php | 2 +- .../Menu/SectionMenuBuilder.php | 2 +- .../Repository/EventACLAwareRepository.php | 2 +- .../{Authorization => }/EventVoter.php | 2 +- .../{Authorization => }/ParticipationVoter.php | 2 +- .../Repository/EventACLAwareRepositoryTest.php | 2 +- .../config/services/authorization.yaml | 18 ------------------ .../config/services/security.yaml | 15 +++++++++++++++ 11 files changed, 26 insertions(+), 29 deletions(-) rename src/Bundle/ChillEventBundle/Security/{Authorization => }/EventVoter.php (98%) rename src/Bundle/ChillEventBundle/Security/{Authorization => }/ParticipationVoter.php (98%) delete mode 100644 src/Bundle/ChillEventBundle/config/services/authorization.yaml create mode 100644 src/Bundle/ChillEventBundle/config/services/security.yaml diff --git a/src/Bundle/ChillEventBundle/Controller/EventController.php b/src/Bundle/ChillEventBundle/Controller/EventController.php index 069ee5c6d..773593057 100644 --- a/src/Bundle/ChillEventBundle/Controller/EventController.php +++ b/src/Bundle/ChillEventBundle/Controller/EventController.php @@ -15,7 +15,7 @@ use Chill\EventBundle\Entity\Event; use Chill\EventBundle\Entity\Participation; use Chill\EventBundle\Form\EventType; use Chill\EventBundle\Form\Type\PickEventType; -use Chill\EventBundle\Security\Authorization\EventVoter; +use Chill\EventBundle\Security\EventVoter; use Chill\MainBundle\Entity\Center; use Chill\MainBundle\Entity\User; use Chill\MainBundle\Pagination\PaginatorFactory; diff --git a/src/Bundle/ChillEventBundle/Controller/ParticipationController.php b/src/Bundle/ChillEventBundle/Controller/ParticipationController.php index c862c8fd6..59501acd7 100644 --- a/src/Bundle/ChillEventBundle/Controller/ParticipationController.php +++ b/src/Bundle/ChillEventBundle/Controller/ParticipationController.php @@ -15,7 +15,7 @@ use Chill\EventBundle\Entity\Event; use Chill\EventBundle\Entity\Participation; use Chill\EventBundle\Form\ParticipationType; use Chill\EventBundle\Repository\EventRepository; -use Chill\EventBundle\Security\Authorization\ParticipationVoter; +use Chill\EventBundle\Security\ParticipationVoter; use Chill\PersonBundle\Repository\PersonRepository; use Chill\PersonBundle\Security\Authorization\PersonVoter; use Doctrine\Common\Collections\Collection; diff --git a/src/Bundle/ChillEventBundle/DependencyInjection/ChillEventExtension.php b/src/Bundle/ChillEventBundle/DependencyInjection/ChillEventExtension.php index 8ddcab58c..f36e82075 100644 --- a/src/Bundle/ChillEventBundle/DependencyInjection/ChillEventExtension.php +++ b/src/Bundle/ChillEventBundle/DependencyInjection/ChillEventExtension.php @@ -11,8 +11,8 @@ declare(strict_types=1); namespace Chill\EventBundle\DependencyInjection; -use Chill\EventBundle\Security\Authorization\EventVoter; -use Chill\EventBundle\Security\Authorization\ParticipationVoter; +use Chill\EventBundle\Security\EventVoter; +use Chill\EventBundle\Security\ParticipationVoter; use Symfony\Component\Config\FileLocator; use Symfony\Component\DependencyInjection\ContainerBuilder; use Symfony\Component\DependencyInjection\Extension\PrependExtensionInterface; @@ -33,7 +33,7 @@ class ChillEventExtension extends Extension implements PrependExtensionInterface $loader = new Loader\YamlFileLoader($container, new FileLocator(__DIR__.'/../config')); $loader->load('services.yaml'); - $loader->load('services/authorization.yaml'); + $loader->load('services/security.yaml'); $loader->load('services/fixtures.yaml'); $loader->load('services/forms.yaml'); $loader->load('services/repositories.yaml'); diff --git a/src/Bundle/ChillEventBundle/Menu/PersonMenuBuilder.php b/src/Bundle/ChillEventBundle/Menu/PersonMenuBuilder.php index 8abfc7cd6..e14e4c979 100644 --- a/src/Bundle/ChillEventBundle/Menu/PersonMenuBuilder.php +++ b/src/Bundle/ChillEventBundle/Menu/PersonMenuBuilder.php @@ -11,7 +11,7 @@ declare(strict_types=1); namespace Chill\EventBundle\Menu; -use Chill\EventBundle\Security\Authorization\EventVoter; +use Chill\EventBundle\Security\EventVoter; use Chill\MainBundle\Routing\LocalMenuBuilderInterface; use Knp\Menu\MenuItem; use Symfony\Component\Security\Core\Authorization\AuthorizationCheckerInterface; diff --git a/src/Bundle/ChillEventBundle/Menu/SectionMenuBuilder.php b/src/Bundle/ChillEventBundle/Menu/SectionMenuBuilder.php index 341848e42..276324938 100644 --- a/src/Bundle/ChillEventBundle/Menu/SectionMenuBuilder.php +++ b/src/Bundle/ChillEventBundle/Menu/SectionMenuBuilder.php @@ -11,7 +11,7 @@ declare(strict_types=1); namespace Chill\EventBundle\Menu; -use Chill\EventBundle\Security\Authorization\EventVoter; +use Chill\EventBundle\Security\EventVoter; use Chill\MainBundle\Routing\LocalMenuBuilderInterface; use Knp\Menu\MenuItem; use Symfony\Component\Security\Core\Security; diff --git a/src/Bundle/ChillEventBundle/Repository/EventACLAwareRepository.php b/src/Bundle/ChillEventBundle/Repository/EventACLAwareRepository.php index 7b9b027f9..22141b536 100644 --- a/src/Bundle/ChillEventBundle/Repository/EventACLAwareRepository.php +++ b/src/Bundle/ChillEventBundle/Repository/EventACLAwareRepository.php @@ -13,7 +13,7 @@ namespace Chill\EventBundle\Repository; use Chill\EventBundle\Entity\Event; use Chill\EventBundle\Entity\Participation; -use Chill\EventBundle\Security\Authorization\EventVoter; +use Chill\EventBundle\Security\EventVoter; use Chill\MainBundle\Entity\User; use Chill\MainBundle\Security\Authorization\AuthorizationHelperForCurrentUserInterface; use Chill\PersonBundle\Entity\Person; diff --git a/src/Bundle/ChillEventBundle/Security/Authorization/EventVoter.php b/src/Bundle/ChillEventBundle/Security/EventVoter.php similarity index 98% rename from src/Bundle/ChillEventBundle/Security/Authorization/EventVoter.php rename to src/Bundle/ChillEventBundle/Security/EventVoter.php index c88f2804a..0bcf9936c 100644 --- a/src/Bundle/ChillEventBundle/Security/Authorization/EventVoter.php +++ b/src/Bundle/ChillEventBundle/Security/EventVoter.php @@ -9,7 +9,7 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\EventBundle\Security\Authorization; +namespace Chill\EventBundle\Security; use Chill\EventBundle\Entity\Event; use Chill\MainBundle\Entity\User; diff --git a/src/Bundle/ChillEventBundle/Security/Authorization/ParticipationVoter.php b/src/Bundle/ChillEventBundle/Security/ParticipationVoter.php similarity index 98% rename from src/Bundle/ChillEventBundle/Security/Authorization/ParticipationVoter.php rename to src/Bundle/ChillEventBundle/Security/ParticipationVoter.php index ad2e90377..c2cb45206 100644 --- a/src/Bundle/ChillEventBundle/Security/Authorization/ParticipationVoter.php +++ b/src/Bundle/ChillEventBundle/Security/ParticipationVoter.php @@ -9,7 +9,7 @@ declare(strict_types=1); * the LICENSE file that was distributed with this source code. */ -namespace Chill\EventBundle\Security\Authorization; +namespace Chill\EventBundle\Security; use Chill\EventBundle\Entity\Participation; use Chill\MainBundle\Entity\User; diff --git a/src/Bundle/ChillEventBundle/Tests/Repository/EventACLAwareRepositoryTest.php b/src/Bundle/ChillEventBundle/Tests/Repository/EventACLAwareRepositoryTest.php index 4bcaac1f6..758e50d56 100644 --- a/src/Bundle/ChillEventBundle/Tests/Repository/EventACLAwareRepositoryTest.php +++ b/src/Bundle/ChillEventBundle/Tests/Repository/EventACLAwareRepositoryTest.php @@ -12,7 +12,7 @@ declare(strict_types=1); namespace Chill\EventBundle\Tests\Repository; use Chill\EventBundle\Repository\EventACLAwareRepository; -use Chill\EventBundle\Security\Authorization\EventVoter; +use Chill\EventBundle\Security\EventVoter; use Chill\MainBundle\Entity\Center; use Chill\MainBundle\Entity\Scope; use Chill\MainBundle\Entity\User; diff --git a/src/Bundle/ChillEventBundle/config/services/authorization.yaml b/src/Bundle/ChillEventBundle/config/services/authorization.yaml deleted file mode 100644 index 6f382b72e..000000000 --- a/src/Bundle/ChillEventBundle/config/services/authorization.yaml +++ /dev/null @@ -1,18 +0,0 @@ -services: - chill_event.event_voter: - class: Chill\EventBundle\Security\Authorization\EventVoter - arguments: - - "@security.access.decision_manager" - - "@chill.main.security.authorization.helper" - - "@logger" - tags: - - { name: security.voter } - - chill_event.event_participation: - class: Chill\EventBundle\Security\Authorization\ParticipationVoter - arguments: - - "@security.access.decision_manager" - - "@chill.main.security.authorization.helper" - - "@logger" - tags: - - { name: security.voter } diff --git a/src/Bundle/ChillEventBundle/config/services/security.yaml b/src/Bundle/ChillEventBundle/config/services/security.yaml new file mode 100644 index 000000000..a139b72a9 --- /dev/null +++ b/src/Bundle/ChillEventBundle/config/services/security.yaml @@ -0,0 +1,15 @@ +services: + Chill\EventBundle\Security\EventVoter: + autowire: true + autoconfigure: true + tags: + - { name: security.voter } + - { name: chill.role } + + Chill\EventBundle\Security\ParticipationVoter: + autowire: true + autoconfigure: true + tags: + - { name: security.voter } + - { name: chill.role } + From f9d5ba77787dfa59233830d468188100cab600c3 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 17 Jul 2024 13:10:14 +0200 Subject: [PATCH 091/136] Fix edit request for event bundle --- .../Controller/EventController.php | 37 ++++++------------- .../ChillEventBundle/Form/EventType.php | 8 +++- 2 files changed, 17 insertions(+), 28 deletions(-) diff --git a/src/Bundle/ChillEventBundle/Controller/EventController.php b/src/Bundle/ChillEventBundle/Controller/EventController.php index 773593057..950606691 100644 --- a/src/Bundle/ChillEventBundle/Controller/EventController.php +++ b/src/Bundle/ChillEventBundle/Controller/EventController.php @@ -313,7 +313,7 @@ final class EventController extends AbstractController /** * Edits an existing Event entity. */ - #[\Symfony\Component\Routing\Annotation\Route(path: '/{_locale}/event/event/{event_id}/update', name: 'chill_event__event_update', methods: ['POST', 'PUT'])] + #[\Symfony\Component\Routing\Annotation\Route(path: '/{_locale}/event/event/{event_id}/update', name: 'chill_event__event_update', methods: ['GET', 'POST', 'PUT'])] public function updateAction(Request $request, $event_id): \Symfony\Component\HttpFoundation\RedirectResponse|Response { $em = $this->managerRegistry->getManager(); @@ -324,14 +324,20 @@ final class EventController extends AbstractController throw $this->createNotFoundException('Unable to find Event entity.'); } - $editForm = $this->createEditForm($entity); + $editForm = $this->createForm(EventType::class, $entity, [ + 'center' => $entity->getCenter(), + 'role' => EventVoter::UPDATE, + ]); + + $editForm->add('submit', SubmitType::class, ['label' => 'Update']); + $editForm->handleRequest($request); - if ($editForm->isValid()) { + if ($editForm->isSubmitted() && $editForm->isValid()) { + $em->persist($entity); $em->flush(); - $this->addFlash('success', $this->translator - ->trans('The event was updated')); + $this->addFlash('success', $this->translator->trans('The event was updated')); return $this->redirectToRoute('chill_event__event_show', ['event_id' => $event_id]); } @@ -602,25 +608,4 @@ final class EventController extends AbstractController ->add('submit', SubmitType::class, ['label' => 'Delete']) ->getForm(); } - - /** - * Creates a form to edit a Event entity. - * - * @return \Symfony\Component\Form\FormInterface - */ - private function createEditForm(Event $entity) - { - $form = $this->createForm(EventType::class, $entity, [ - 'action' => $this->generateUrl('chill_event__event_update', ['event_id' => $entity->getId()]), - 'method' => 'PUT', - 'center' => $entity->getCenter(), - 'role' => 'CHILL_EVENT_CREATE', - ]); - - $form->remove('center'); - - $form->add('submit', SubmitType::class, ['label' => 'Update']); - - return $form; - } } diff --git a/src/Bundle/ChillEventBundle/Form/EventType.php b/src/Bundle/ChillEventBundle/Form/EventType.php index 98cb5ea5e..c2dd6f0cf 100644 --- a/src/Bundle/ChillEventBundle/Form/EventType.php +++ b/src/Bundle/ChillEventBundle/Form/EventType.php @@ -13,6 +13,7 @@ namespace Chill\EventBundle\Form; use Chill\DocStoreBundle\Entity\StoredObject; use Chill\DocStoreBundle\Form\StoredObjectType; +use Chill\EventBundle\Entity\Event; use Chill\EventBundle\Form\Type\PickEventTypeType; use Chill\MainBundle\Entity\Center; use Chill\MainBundle\Form\Type\ChillCollectionType; @@ -23,6 +24,7 @@ use Chill\MainBundle\Form\Type\PickUserLocationType; use Chill\MainBundle\Form\Type\ScopePickerType; use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\Extension\Core\Type\MoneyType; +use Symfony\Component\Form\Extension\Core\Type\TextType; use Symfony\Component\Form\FormBuilderInterface; use Symfony\Component\OptionsResolver\OptionsResolver; @@ -31,7 +33,9 @@ class EventType extends AbstractType public function buildForm(FormBuilderInterface $builder, array $options) { $builder - ->add('name') + ->add('name', TextType::class, [ + 'required' => true + ]) ->add('date', ChillDateTimeType::class, [ 'required' => true, ]) @@ -75,7 +79,7 @@ class EventType extends AbstractType public function configureOptions(OptionsResolver $resolver) { $resolver->setDefaults([ - 'data_class' => \Chill\EventBundle\Entity\Event::class, + 'data_class' => Event::class, ]); $resolver ->setRequired(['center', 'role']) From 5b95336bac7f503f45aed53f49bd49b031c1715e Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 17 Jul 2024 13:10:51 +0200 Subject: [PATCH 092/136] Fix event and participation voters --- .../ChillEventBundle/Security/EventVoter.php | 62 ++++++------------- .../Security/ParticipationVoter.php | 59 ++++++------------ 2 files changed, 39 insertions(+), 82 deletions(-) diff --git a/src/Bundle/ChillEventBundle/Security/EventVoter.php b/src/Bundle/ChillEventBundle/Security/EventVoter.php index 0bcf9936c..e490e0518 100644 --- a/src/Bundle/ChillEventBundle/Security/EventVoter.php +++ b/src/Bundle/ChillEventBundle/Security/EventVoter.php @@ -12,15 +12,16 @@ declare(strict_types=1); namespace Chill\EventBundle\Security; use Chill\EventBundle\Entity\Event; +use Chill\MainBundle\Entity\Center; use Chill\MainBundle\Entity\User; use Chill\MainBundle\Security\Authorization\AbstractChillVoter; use Chill\MainBundle\Security\Authorization\AuthorizationHelper; +use Chill\MainBundle\Security\Authorization\VoterHelperFactoryInterface; +use Chill\MainBundle\Security\Authorization\VoterHelperInterface; use Chill\MainBundle\Security\ProvideRoleHierarchyInterface; use Chill\PersonBundle\Entity\Person; -use Chill\PersonBundle\Security\Authorization\PersonVoter; use Psr\Log\LoggerInterface; use Symfony\Component\Security\Core\Authentication\Token\TokenInterface; -use Symfony\Component\Security\Core\Authorization\AccessDecisionManagerInterface; /** * Description of EventVoter. @@ -42,61 +43,46 @@ class EventVoter extends AbstractChillVoter implements ProvideRoleHierarchyInter final public const UPDATE = 'CHILL_EVENT_UPDATE'; - /** - * @var AccessDecisionManagerInterface - */ - protected $accessDecisionManager; + final public const STATS = 'CHILL_EVENT_STATS'; - /** - * @var AuthorizationHelper - */ - protected $authorizationHelper; - - /** - * @var LoggerInterface - */ - protected $logger; + private readonly VoterHelperInterface $voterHelper; public function __construct( - AccessDecisionManagerInterface $accessDecisionManager, - AuthorizationHelper $authorizationHelper, - LoggerInterface $logger + private readonly AuthorizationHelper $authorizationHelper, + private readonly LoggerInterface $logger, + VoterHelperFactoryInterface $voterHelperFactory ) { - $this->accessDecisionManager = $accessDecisionManager; - $this->authorizationHelper = $authorizationHelper; - $this->logger = $logger; + $this->voterHelper = $voterHelperFactory + ->generate(self::class) + ->addCheckFor(null, [self::SEE]) + ->addCheckFor(Event::class, [...self::ROLES]) + ->addCheckFor(Person::class, [self::SEE, self::CREATE]) + ->addCheckFor(Center::class, [self::STATS]) + ->build(); } public function getRoles(): array { - return self::ROLES; + return [...self::ROLES, self::STATS]; } public function getRolesWithHierarchy(): array { return [ - 'Event' => self::ROLES, + 'Event' => $this->getRoles(), ]; } public function getRolesWithoutScope(): array { - return []; + return [self::ROLES, self::STATS]; } public function supports($attribute, $subject) { - return ($subject instanceof Event && \in_array($attribute, self::ROLES, true)) - || ($subject instanceof Person && \in_array($attribute, [self::CREATE, self::SEE], true)) - || (null === $subject && self::SEE === $attribute); + return $this->voterHelper->supports($attribute, $subject); } - /** - * @param string $attribute - * @param Event $subject - * - * @return bool - */ protected function voteOnAttribute($attribute, $subject, TokenInterface $token) { $this->logger->debug(sprintf('Voting from %s class', self::class)); @@ -118,15 +104,5 @@ class EventVoter extends AbstractChillVoter implements ProvideRoleHierarchyInter ->getReachableCenters($token->getUser(), $attribute); return \count($centers) > 0; - - if (!$this->accessDecisionManager->decide($token, [PersonVoter::SEE], $person)) { - return false; - } - - return $this->authorizationHelper->userHasAccess( - $token->getUser(), - $subject, - $attribute - ); } } diff --git a/src/Bundle/ChillEventBundle/Security/ParticipationVoter.php b/src/Bundle/ChillEventBundle/Security/ParticipationVoter.php index c2cb45206..368a47cab 100644 --- a/src/Bundle/ChillEventBundle/Security/ParticipationVoter.php +++ b/src/Bundle/ChillEventBundle/Security/ParticipationVoter.php @@ -12,15 +12,16 @@ declare(strict_types=1); namespace Chill\EventBundle\Security; use Chill\EventBundle\Entity\Participation; +use Chill\MainBundle\Entity\Center; use Chill\MainBundle\Entity\User; use Chill\MainBundle\Security\Authorization\AbstractChillVoter; use Chill\MainBundle\Security\Authorization\AuthorizationHelper; +use Chill\MainBundle\Security\Authorization\VoterHelperFactoryInterface; +use Chill\MainBundle\Security\Authorization\VoterHelperInterface; use Chill\MainBundle\Security\ProvideRoleHierarchyInterface; use Chill\PersonBundle\Entity\Person; -use Chill\PersonBundle\Security\Authorization\PersonVoter; use Psr\Log\LoggerInterface; use Symfony\Component\Security\Core\Authentication\Token\TokenInterface; -use Symfony\Component\Security\Core\Authorization\AccessDecisionManagerInterface; class ParticipationVoter extends AbstractChillVoter implements ProvideRoleHierarchyInterface { @@ -39,58 +40,48 @@ class ParticipationVoter extends AbstractChillVoter implements ProvideRoleHierar final public const UPDATE = 'CHILL_EVENT_PARTICIPATION_UPDATE'; - /** - * @var AccessDecisionManagerInterface - */ - protected $accessDecisionManager; + final public const STATS = 'CHILL_EVENT_PARTICIPATION_STATS'; - /** - * @var AuthorizationHelper - */ - protected $authorizationHelper; - - /** - * @var LoggerInterface - */ - protected $logger; + private readonly VoterHelperInterface $voterHelper; public function __construct( - AccessDecisionManagerInterface $accessDecisionManager, - AuthorizationHelper $authorizationHelper, - LoggerInterface $logger + private readonly AuthorizationHelper $authorizationHelper, + private readonly LoggerInterface $logger, + VoterHelperFactoryInterface $voterHelperFactory ) { - $this->accessDecisionManager = $accessDecisionManager; - $this->authorizationHelper = $authorizationHelper; - $this->logger = $logger; + $this->voterHelper = $voterHelperFactory + ->generate(self::class) + ->addCheckFor(null, [self::SEE]) + ->addCheckFor(Participation::class, [...self::ROLES]) + ->addCheckFor(Person::class, [self::SEE, self::CREATE]) + ->addCheckFor(Center::class, [self::STATS]) + ->build(); } public function getRoles(): array { - return self::ROLES; + return [...self::ROLES, self::STATS]; } public function getRolesWithHierarchy(): array { return [ - 'Event' => self::ROLES, + 'Participation' => $this->getRoles(), ]; } public function getRolesWithoutScope(): array { - return []; + return [self::ROLES, self::STATS]; } public function supports($attribute, $subject) { - return ($subject instanceof Participation && \in_array($attribute, self::ROLES, true)) - || ($subject instanceof Person && \in_array($attribute, [self::CREATE, self::SEE], true)) - || (null === $subject && self::SEE === $attribute); + return $this->voterHelper->supports($attribute, $subject); } /** - * @param string $attribute - * @param Participation $subject + * @param string $attribute * * @return bool */ @@ -115,15 +106,5 @@ class ParticipationVoter extends AbstractChillVoter implements ProvideRoleHierar ->getReachableCenters($token->getUser(), $attribute); return \count($centers) > 0; - - if (!$this->accessDecisionManager->decide($token, [PersonVoter::SEE], $person)) { - return false; - } - - return $this->authorizationHelper->userHasAccess( - $token->getUser(), - $subject, - $attribute - ); } } From 116fe35ad22fce61619a1f6f8a3f93a9549da279 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 17 Jul 2024 13:11:09 +0200 Subject: [PATCH 093/136] Fix delete request for event status controller --- src/Bundle/ChillEventBundle/Controller/StatusController.php | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/Bundle/ChillEventBundle/Controller/StatusController.php b/src/Bundle/ChillEventBundle/Controller/StatusController.php index 286408b0b..3b302500d 100644 --- a/src/Bundle/ChillEventBundle/Controller/StatusController.php +++ b/src/Bundle/ChillEventBundle/Controller/StatusController.php @@ -201,13 +201,12 @@ class StatusController extends AbstractController /** * Creates a form to delete a Status entity by id. * - * @return \Symfony\Component\Form\Form The form + * @return \Symfony\Component\Form\FormInterface The form */ private function createDeleteForm(mixed $id) { return $this->createFormBuilder() ->setAction($this->generateUrl('chill_event_admin_status_delete', ['id' => $id])) - ->setMethod('DELETE') ->add('submit', SubmitType::class, ['label' => 'Delete']) ->getForm(); } From a80b36bb315b2d4192a7a56334dc00612d105752 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 17 Jul 2024 13:15:22 +0200 Subject: [PATCH 094/136] Fix EntityPersonCRUDController.php add 'person' key --- .../CRUD/Controller/EntityPersonCRUDController.php | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php b/src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php index 760b7ee9d..74f2d44fa 100644 --- a/src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php +++ b/src/Bundle/ChillPersonBundle/CRUD/Controller/EntityPersonCRUDController.php @@ -25,6 +25,15 @@ class EntityPersonCRUDController extends CRUDController { public function __construct(protected readonly \Doctrine\Persistence\ManagerRegistry $managerRegistry) {} + protected function generateTemplateParameter(string $action, mixed $entity, Request $request, array $defaultTemplateParameters = []) + { + $templateParameters = parent::generateTemplateParameter($action, $entity, $request, $defaultTemplateParameters); + + $templateParameters['person'] = $this->getPerson($request); + + return $templateParameters; + } + /** * Override the base method to add a filtering step to a person. * From c8e87ced3549791b3ea1b72df1e9100bd9753a09 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 17 Jul 2024 13:29:14 +0200 Subject: [PATCH 095/136] Remove duplicate edit method in events controller --- .../Controller/EventController.php | 24 +------------------ 1 file changed, 1 insertion(+), 23 deletions(-) diff --git a/src/Bundle/ChillEventBundle/Controller/EventController.php b/src/Bundle/ChillEventBundle/Controller/EventController.php index 950606691..dc7da134c 100644 --- a/src/Bundle/ChillEventBundle/Controller/EventController.php +++ b/src/Bundle/ChillEventBundle/Controller/EventController.php @@ -108,28 +108,6 @@ final class EventController extends AbstractController ]); } - /** - * Displays a form to edit an existing Event entity. - */ - #[\Symfony\Component\Routing\Annotation\Route(path: '/{_locale}/event/event/{event_id}/edit', name: 'chill_event__event_edit')] - public function editAction($event_id): Response - { - $em = $this->managerRegistry->getManager(); - - $entity = $em->getRepository(Event::class)->find($event_id); - - if (!$entity) { - throw $this->createNotFoundException('Unable to find Event entity.'); - } - - $editForm = $this->createEditForm($entity); - - return $this->render('@ChillEvent/Event/edit.html.twig', [ - 'entity' => $entity, - 'edit_form' => $editForm->createView(), - ]); - } - /** * List events subscriptions for a person. * @@ -313,7 +291,7 @@ final class EventController extends AbstractController /** * Edits an existing Event entity. */ - #[\Symfony\Component\Routing\Annotation\Route(path: '/{_locale}/event/event/{event_id}/update', name: 'chill_event__event_update', methods: ['GET', 'POST', 'PUT'])] + #[\Symfony\Component\Routing\Annotation\Route(path: '/{_locale}/event/event/{event_id}/edit', name: 'chill_event__event_edit', methods: ['GET', 'POST', 'PUT'])] public function updateAction(Request $request, $event_id): \Symfony\Component\HttpFoundation\RedirectResponse|Response { $em = $this->managerRegistry->getManager(); From 74be6460d4b9c7fc7549045249db6394c95720a6 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 17 Jul 2024 13:05:14 +0200 Subject: [PATCH 096/136] Fix delete request for all entities --- .../ChillActivityBundle/Controller/ActivityController.php | 5 ++--- .../Controller/AbstractElementController.php | 5 ++--- .../ChillCalendarBundle/Controller/CalendarController.php | 3 +-- .../ChillEventBundle/Controller/EventController.php | 7 +++---- .../ChillEventBundle/Controller/EventTypeController.php | 3 +-- .../Controller/ParticipationController.php | 5 ++--- src/Bundle/ChillEventBundle/Controller/RoleController.php | 2 +- .../Controller/AccompanyingCourseWorkController.php | 5 ++--- .../Controller/HouseholdCompositionController.php | 3 +-- .../Controller/PersonResourceController.php | 5 ++--- .../ChillTaskBundle/Controller/SingleTaskController.php | 8 +++----- 11 files changed, 20 insertions(+), 31 deletions(-) diff --git a/src/Bundle/ChillActivityBundle/Controller/ActivityController.php b/src/Bundle/ChillActivityBundle/Controller/ActivityController.php index 2248c54d3..cbfb93400 100644 --- a/src/Bundle/ChillActivityBundle/Controller/ActivityController.php +++ b/src/Bundle/ChillActivityBundle/Controller/ActivityController.php @@ -99,10 +99,10 @@ final class ActivityController extends AbstractController $form = $this->createDeleteForm($activity->getId(), $person, $accompanyingPeriod); - if (Request::METHOD_DELETE === $request->getMethod()) { + if (Request::METHOD_POST === $request->getMethod()) { $form->handleRequest($request); - if ($form->isValid()) { + if ($form->isSubmitted() && $form->isValid()) { $this->logger->notice('An activity has been removed', [ 'by_user' => $this->getUser()->getUsername(), 'activity_id' => $activity->getId(), @@ -640,7 +640,6 @@ final class ActivityController extends AbstractController return $this->createFormBuilder() ->setAction($this->generateUrl('chill_activity_activity_delete', $params)) - ->setMethod('DELETE') ->add('submit', SubmitType::class, ['label' => 'Delete']) ->getForm(); } diff --git a/src/Bundle/ChillBudgetBundle/Controller/AbstractElementController.php b/src/Bundle/ChillBudgetBundle/Controller/AbstractElementController.php index d293907f5..bb204c557 100644 --- a/src/Bundle/ChillBudgetBundle/Controller/AbstractElementController.php +++ b/src/Bundle/ChillBudgetBundle/Controller/AbstractElementController.php @@ -54,7 +54,7 @@ abstract class AbstractElementController extends AbstractController $indexPage = 'chill_budget_elements_household_index'; } - if (Request::METHOD_DELETE === $request->getMethod()) { + if (Request::METHOD_POST === $request->getMethod()) { $form->handleRequest($request); if ($form->isSubmitted() && $form->isValid()) { @@ -198,10 +198,9 @@ abstract class AbstractElementController extends AbstractController /** * Creates a form to delete a help request entity by id. */ - private function createDeleteForm(): Form + private function createDeleteForm(): \Symfony\Component\Form\FormInterface { return $this->createFormBuilder() - ->setMethod(Request::METHOD_DELETE) ->add('submit', SubmitType::class, ['label' => 'Delete']) ->getForm(); } diff --git a/src/Bundle/ChillCalendarBundle/Controller/CalendarController.php b/src/Bundle/ChillCalendarBundle/Controller/CalendarController.php index 328b8788f..e57d2743d 100644 --- a/src/Bundle/ChillCalendarBundle/Controller/CalendarController.php +++ b/src/Bundle/ChillCalendarBundle/Controller/CalendarController.php @@ -84,7 +84,7 @@ class CalendarController extends AbstractController $form = $this->createDeleteForm($entity); - if (Request::METHOD_DELETE === $request->getMethod()) { + if (Request::METHOD_POST === $request->getMethod()) { $form->handleRequest($request); if ($form->isValid()) { @@ -512,7 +512,6 @@ class CalendarController extends AbstractController { return $this->createFormBuilder() ->setAction($this->generateUrl('chill_calendar_calendar_delete', ['id' => $calendar->getId()])) - ->setMethod('DELETE') ->add('submit', SubmitType::class, ['label' => 'Delete']) ->getForm(); } diff --git a/src/Bundle/ChillEventBundle/Controller/EventController.php b/src/Bundle/ChillEventBundle/Controller/EventController.php index 7a28e51f2..773593057 100644 --- a/src/Bundle/ChillEventBundle/Controller/EventController.php +++ b/src/Bundle/ChillEventBundle/Controller/EventController.php @@ -61,7 +61,7 @@ final class EventController extends AbstractController private readonly \Doctrine\Persistence\ManagerRegistry $managerRegistry ) {} - #[\Symfony\Component\Routing\Annotation\Route(path: '/{_locale}/event/event/{event_id}/delete', name: 'chill_event__event_delete', requirements: ['event_id' => '\d+'], methods: ['GET', 'DELETE'])] + #[\Symfony\Component\Routing\Annotation\Route(path: '/{_locale}/event/event/{event_id}/delete', name: 'chill_event__event_delete', requirements: ['event_id' => '\d+'], methods: ['GET', 'POST', 'DELETE'])] public function deleteAction($event_id, Request $request): \Symfony\Component\HttpFoundation\RedirectResponse|Response { $em = $this->managerRegistry->getManager(); @@ -78,10 +78,10 @@ final class EventController extends AbstractController $form = $this->createDeleteForm($event_id); - if (Request::METHOD_DELETE === $request->getMethod()) { + if (Request::METHOD_POST === $request->getMethod()) { $form->handleRequest($request); - if ($form->isValid()) { + if ($form->isSubmitted() && $form->isValid()) { foreach ($participations as $participation) { $em->remove($participation); } @@ -599,7 +599,6 @@ final class EventController extends AbstractController ->setAction($this->generateUrl('chill_event__event_delete', [ 'event_id' => $event_id, ])) - ->setMethod('DELETE') ->add('submit', SubmitType::class, ['label' => 'Delete']) ->getForm(); } diff --git a/src/Bundle/ChillEventBundle/Controller/EventTypeController.php b/src/Bundle/ChillEventBundle/Controller/EventTypeController.php index 5706dbe19..f7b1b205c 100644 --- a/src/Bundle/ChillEventBundle/Controller/EventTypeController.php +++ b/src/Bundle/ChillEventBundle/Controller/EventTypeController.php @@ -201,7 +201,7 @@ class EventTypeController extends AbstractController /** * Creates a form to delete a EventType entity by id. * - * @return \Symfony\Component\Form\Form The form + * @return \Symfony\Component\Form\FormInterface The form */ private function createDeleteForm(mixed $id) { @@ -210,7 +210,6 @@ class EventTypeController extends AbstractController 'chill_eventtype_admin_delete', ['id' => $id] )) - ->setMethod('DELETE') ->add('submit', SubmitType::class, ['label' => 'Delete']) ->getForm(); } diff --git a/src/Bundle/ChillEventBundle/Controller/ParticipationController.php b/src/Bundle/ChillEventBundle/Controller/ParticipationController.php index a8b72dfd4..59501acd7 100644 --- a/src/Bundle/ChillEventBundle/Controller/ParticipationController.php +++ b/src/Bundle/ChillEventBundle/Controller/ParticipationController.php @@ -259,10 +259,10 @@ final class ParticipationController extends AbstractController $form = $this->createDeleteForm($participation_id); - if (Request::METHOD_DELETE === $request->getMethod()) { + if (Request::METHOD_POST === $request->getMethod()) { $form->handleRequest($request); - if ($form->isValid()) { + if ($form->isSubmitted() && $form->isValid()) { $em->remove($participation); $em->flush(); @@ -753,7 +753,6 @@ final class ParticipationController extends AbstractController ->setAction($this->generateUrl('chill_event_participation_delete', [ 'participation_id' => $participation_id, ])) - ->setMethod('DELETE') ->add('submit', SubmitType::class, ['label' => 'Delete']) ->getForm(); } diff --git a/src/Bundle/ChillEventBundle/Controller/RoleController.php b/src/Bundle/ChillEventBundle/Controller/RoleController.php index 24e4f2121..1ff205dfc 100644 --- a/src/Bundle/ChillEventBundle/Controller/RoleController.php +++ b/src/Bundle/ChillEventBundle/Controller/RoleController.php @@ -201,7 +201,7 @@ class RoleController extends AbstractController /** * Creates a form to delete a Role entity by id. * - * @return \Symfony\Component\Form\Form The form + * @return \Symfony\Component\Form\FormInterface The form */ private function createDeleteForm(mixed $id) { diff --git a/src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseWorkController.php b/src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseWorkController.php index e206a6538..0243d55b5 100644 --- a/src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseWorkController.php +++ b/src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseWorkController.php @@ -80,10 +80,10 @@ final class AccompanyingCourseWorkController extends AbstractController $form = $this->createDeleteForm($work->getId()); - if (Request::METHOD_DELETE === $request->getMethod()) { + if (Request::METHOD_POST === $request->getMethod()) { $form->handleRequest($request); - if ($form->isValid()) { + if ($form->isSubmitted() && $form->isValid()) { $this->chillLogger->notice('An accompanying period work has been removed', [ 'by_user' => $this->getUser()->getUsername(), 'work_id' => $work->getId(), @@ -179,7 +179,6 @@ final class AccompanyingCourseWorkController extends AbstractController return $this->createFormBuilder() ->setAction($this->generateUrl('chill_person_accompanying_period_work_delete', $params)) - ->setMethod('DELETE') ->add('submit', SubmitType::class, ['label' => 'Delete']) ->getForm(); } diff --git a/src/Bundle/ChillPersonBundle/Controller/HouseholdCompositionController.php b/src/Bundle/ChillPersonBundle/Controller/HouseholdCompositionController.php index 0da3688f9..d9583c8d8 100644 --- a/src/Bundle/ChillPersonBundle/Controller/HouseholdCompositionController.php +++ b/src/Bundle/ChillPersonBundle/Controller/HouseholdCompositionController.php @@ -63,11 +63,10 @@ class HouseholdCompositionController extends AbstractController 'composition_id' => $composition_id, 'household_id' => $household_id, ])) - ->setMethod('DELETE') ->add('submit', SubmitType::class, ['label' => 'Delete']) ->getForm(); - if (Request::METHOD_DELETE === $request->getMethod()) { + if (Request::METHOD_POST === $request->getMethod()) { $form->handleRequest($request); if ($form->isValid()) { diff --git a/src/Bundle/ChillPersonBundle/Controller/PersonResourceController.php b/src/Bundle/ChillPersonBundle/Controller/PersonResourceController.php index 079830cf7..8332d468e 100644 --- a/src/Bundle/ChillPersonBundle/Controller/PersonResourceController.php +++ b/src/Bundle/ChillPersonBundle/Controller/PersonResourceController.php @@ -44,14 +44,13 @@ final class PersonResourceController extends AbstractController 'resource_id' => $resource_id, 'person_id' => $person_id, ])) - ->setMethod('DELETE') ->add('submit', SubmitType::class, ['label' => 'Delete']) ->getForm(); - if (Request::METHOD_DELETE === $request->getMethod()) { + if (Request::METHOD_POST === $request->getMethod()) { $form->handleRequest($request); - if ($form->isValid()) { + if ($form->isSubmitted() && $form->isValid()) { $this->em->remove($resource); $this->em->flush(); diff --git a/src/Bundle/ChillTaskBundle/Controller/SingleTaskController.php b/src/Bundle/ChillTaskBundle/Controller/SingleTaskController.php index 2c6234eb0..0c3b8a7ba 100644 --- a/src/Bundle/ChillTaskBundle/Controller/SingleTaskController.php +++ b/src/Bundle/ChillTaskBundle/Controller/SingleTaskController.php @@ -62,7 +62,7 @@ final class SingleTaskController extends AbstractController private readonly \Doctrine\Persistence\ManagerRegistry $managerRegistry, ) {} - #[Route(path: '/{_locale}/task/single-task/{id}/delete', name: 'chill_task_single_task_delete')] + #[Route(path: '/{_locale}/task/single-task/{id}/delete', name: 'chill_task_single_task_delete', methods: ['GET', 'POST', 'DELETE'])] public function deleteAction(Request $request, mixed $id) { $course = null; @@ -110,10 +110,9 @@ final class SingleTaskController extends AbstractController $form = $this->createDeleteForm($id); - if (Request::METHOD_DELETE === $request->getMethod()) { + if (Request::METHOD_POST === $request->getMethod()) { $form->handleRequest($request); - - if ($form->isValid()) { + if ($form->isSubmitted() && $form->isValid()) { $this->logger->notice('A task has been removed', [ 'by_user' => $this->getUser()->getUsername(), 'task_id' => $task->getId(), @@ -660,7 +659,6 @@ final class SingleTaskController extends AbstractController 'chill_task_single_task_delete', ['id' => $id] )) - ->setMethod('DELETE') ->add('submit', SubmitType::class, ['label' => 'Delete']) ->getForm(); } From 29f6a432885b5f60535b9dc7ffa94d4f37644355 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Tue, 16 Jul 2024 07:07:08 +0200 Subject: [PATCH 097/136] Fix translation in event bundle using new pluralization syntax --- .../views/Participation/_ignored_participations.html.twig | 2 +- .../ChillEventBundle/translations/messages+intl-icu.fr.yml | 6 ++++++ src/Bundle/ChillEventBundle/translations/messages.fr.yml | 1 - 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/Bundle/ChillEventBundle/Resources/views/Participation/_ignored_participations.html.twig b/src/Bundle/ChillEventBundle/Resources/views/Participation/_ignored_participations.html.twig index 9451f3c2b..f43c94f72 100644 --- a/src/Bundle/ChillEventBundle/Resources/views/Participation/_ignored_participations.html.twig +++ b/src/Bundle/ChillEventBundle/Resources/views/Participation/_ignored_participations.html.twig @@ -1,7 +1,7 @@ {% import '@ChillPerson/Person/macro.html.twig' as person_macro %} {% if ignored_participations|length > 0 %} -

          {% transchoice ignored_participations|length %}The following people have been ignored because they are already participating on the event{% endtranschoice %} :

          +

          {{ 'ignored_participations'|trans({'count': ignored_participations|length}) }}:

            {% for p in ignored_participations %}
          • {{ person_macro.render(p.person) }}
          • diff --git a/src/Bundle/ChillEventBundle/translations/messages+intl-icu.fr.yml b/src/Bundle/ChillEventBundle/translations/messages+intl-icu.fr.yml index 5c2a5b7c9..ed2568d06 100644 --- a/src/Bundle/ChillEventBundle/translations/messages+intl-icu.fr.yml +++ b/src/Bundle/ChillEventBundle/translations/messages+intl-icu.fr.yml @@ -19,3 +19,9 @@ events: one {et un autre participant} other {et # autres participants} } + +ignored_participations: >- + { count, plural, + one {La personne suivante a été ignorée parce qu''elle participe déjà à l''événement} + other {Les personnes suivantes ont été ignorées parce qu''elles participent déjà à l'événement} + } diff --git a/src/Bundle/ChillEventBundle/translations/messages.fr.yml b/src/Bundle/ChillEventBundle/translations/messages.fr.yml index bb9f8acd3..6046881ff 100644 --- a/src/Bundle/ChillEventBundle/translations/messages.fr.yml +++ b/src/Bundle/ChillEventBundle/translations/messages.fr.yml @@ -41,7 +41,6 @@ Back to the event: Retour à l'événement The participation was created: La participation a été créée The participation was updated: La participation a été mise à jour 'None of the requested people may participate the event: they are maybe already participating.': 'Aucune des personnes indiquées ne peut être ajoutée à l''événement: elles sont peut-être déjà inscrites comme participantes.' -'The following people have been ignored because they are already participating on the event': '{1} La personne suivante a été ignorée parce qu''elle participe déjà à l''événement | ]1,Inf] Les personnes suivantes ont été ignorées parce qu''elles participent déjà à l''événement' There are no participation to edit for this event: Il n'y a pas de participation pour cet événement The participations have been successfully updated.: Les participations ont été mises à jour. The participation has been sucessfully removed: La participation a été correctement supprimée. From dd7d126bec3428e44e2c9995e428106fca6775ff Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 17 Jul 2024 13:10:14 +0200 Subject: [PATCH 098/136] Fix edit request for event bundle --- .../Controller/EventController.php | 37 ++++++------------- .../ChillEventBundle/Form/EventType.php | 8 +++- 2 files changed, 17 insertions(+), 28 deletions(-) diff --git a/src/Bundle/ChillEventBundle/Controller/EventController.php b/src/Bundle/ChillEventBundle/Controller/EventController.php index 773593057..950606691 100644 --- a/src/Bundle/ChillEventBundle/Controller/EventController.php +++ b/src/Bundle/ChillEventBundle/Controller/EventController.php @@ -313,7 +313,7 @@ final class EventController extends AbstractController /** * Edits an existing Event entity. */ - #[\Symfony\Component\Routing\Annotation\Route(path: '/{_locale}/event/event/{event_id}/update', name: 'chill_event__event_update', methods: ['POST', 'PUT'])] + #[\Symfony\Component\Routing\Annotation\Route(path: '/{_locale}/event/event/{event_id}/update', name: 'chill_event__event_update', methods: ['GET', 'POST', 'PUT'])] public function updateAction(Request $request, $event_id): \Symfony\Component\HttpFoundation\RedirectResponse|Response { $em = $this->managerRegistry->getManager(); @@ -324,14 +324,20 @@ final class EventController extends AbstractController throw $this->createNotFoundException('Unable to find Event entity.'); } - $editForm = $this->createEditForm($entity); + $editForm = $this->createForm(EventType::class, $entity, [ + 'center' => $entity->getCenter(), + 'role' => EventVoter::UPDATE, + ]); + + $editForm->add('submit', SubmitType::class, ['label' => 'Update']); + $editForm->handleRequest($request); - if ($editForm->isValid()) { + if ($editForm->isSubmitted() && $editForm->isValid()) { + $em->persist($entity); $em->flush(); - $this->addFlash('success', $this->translator - ->trans('The event was updated')); + $this->addFlash('success', $this->translator->trans('The event was updated')); return $this->redirectToRoute('chill_event__event_show', ['event_id' => $event_id]); } @@ -602,25 +608,4 @@ final class EventController extends AbstractController ->add('submit', SubmitType::class, ['label' => 'Delete']) ->getForm(); } - - /** - * Creates a form to edit a Event entity. - * - * @return \Symfony\Component\Form\FormInterface - */ - private function createEditForm(Event $entity) - { - $form = $this->createForm(EventType::class, $entity, [ - 'action' => $this->generateUrl('chill_event__event_update', ['event_id' => $entity->getId()]), - 'method' => 'PUT', - 'center' => $entity->getCenter(), - 'role' => 'CHILL_EVENT_CREATE', - ]); - - $form->remove('center'); - - $form->add('submit', SubmitType::class, ['label' => 'Update']); - - return $form; - } } diff --git a/src/Bundle/ChillEventBundle/Form/EventType.php b/src/Bundle/ChillEventBundle/Form/EventType.php index 98cb5ea5e..c2dd6f0cf 100644 --- a/src/Bundle/ChillEventBundle/Form/EventType.php +++ b/src/Bundle/ChillEventBundle/Form/EventType.php @@ -13,6 +13,7 @@ namespace Chill\EventBundle\Form; use Chill\DocStoreBundle\Entity\StoredObject; use Chill\DocStoreBundle\Form\StoredObjectType; +use Chill\EventBundle\Entity\Event; use Chill\EventBundle\Form\Type\PickEventTypeType; use Chill\MainBundle\Entity\Center; use Chill\MainBundle\Form\Type\ChillCollectionType; @@ -23,6 +24,7 @@ use Chill\MainBundle\Form\Type\PickUserLocationType; use Chill\MainBundle\Form\Type\ScopePickerType; use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\Extension\Core\Type\MoneyType; +use Symfony\Component\Form\Extension\Core\Type\TextType; use Symfony\Component\Form\FormBuilderInterface; use Symfony\Component\OptionsResolver\OptionsResolver; @@ -31,7 +33,9 @@ class EventType extends AbstractType public function buildForm(FormBuilderInterface $builder, array $options) { $builder - ->add('name') + ->add('name', TextType::class, [ + 'required' => true + ]) ->add('date', ChillDateTimeType::class, [ 'required' => true, ]) @@ -75,7 +79,7 @@ class EventType extends AbstractType public function configureOptions(OptionsResolver $resolver) { $resolver->setDefaults([ - 'data_class' => \Chill\EventBundle\Entity\Event::class, + 'data_class' => Event::class, ]); $resolver ->setRequired(['center', 'role']) From a2310a662fc6778866d4c7ada923e7a9546f6c97 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 17 Jul 2024 13:11:09 +0200 Subject: [PATCH 099/136] Fix delete request for event status controller --- src/Bundle/ChillEventBundle/Controller/StatusController.php | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/Bundle/ChillEventBundle/Controller/StatusController.php b/src/Bundle/ChillEventBundle/Controller/StatusController.php index 286408b0b..3b302500d 100644 --- a/src/Bundle/ChillEventBundle/Controller/StatusController.php +++ b/src/Bundle/ChillEventBundle/Controller/StatusController.php @@ -201,13 +201,12 @@ class StatusController extends AbstractController /** * Creates a form to delete a Status entity by id. * - * @return \Symfony\Component\Form\Form The form + * @return \Symfony\Component\Form\FormInterface The form */ private function createDeleteForm(mixed $id) { return $this->createFormBuilder() ->setAction($this->generateUrl('chill_event_admin_status_delete', ['id' => $id])) - ->setMethod('DELETE') ->add('submit', SubmitType::class, ['label' => 'Delete']) ->getForm(); } From fb8a6d960e128d4d5054697f7b897644e6a019b6 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 17 Jul 2024 13:29:14 +0200 Subject: [PATCH 100/136] Remove duplicate edit method in events controller --- .../Controller/EventController.php | 24 +------------------ 1 file changed, 1 insertion(+), 23 deletions(-) diff --git a/src/Bundle/ChillEventBundle/Controller/EventController.php b/src/Bundle/ChillEventBundle/Controller/EventController.php index 950606691..dc7da134c 100644 --- a/src/Bundle/ChillEventBundle/Controller/EventController.php +++ b/src/Bundle/ChillEventBundle/Controller/EventController.php @@ -108,28 +108,6 @@ final class EventController extends AbstractController ]); } - /** - * Displays a form to edit an existing Event entity. - */ - #[\Symfony\Component\Routing\Annotation\Route(path: '/{_locale}/event/event/{event_id}/edit', name: 'chill_event__event_edit')] - public function editAction($event_id): Response - { - $em = $this->managerRegistry->getManager(); - - $entity = $em->getRepository(Event::class)->find($event_id); - - if (!$entity) { - throw $this->createNotFoundException('Unable to find Event entity.'); - } - - $editForm = $this->createEditForm($entity); - - return $this->render('@ChillEvent/Event/edit.html.twig', [ - 'entity' => $entity, - 'edit_form' => $editForm->createView(), - ]); - } - /** * List events subscriptions for a person. * @@ -313,7 +291,7 @@ final class EventController extends AbstractController /** * Edits an existing Event entity. */ - #[\Symfony\Component\Routing\Annotation\Route(path: '/{_locale}/event/event/{event_id}/update', name: 'chill_event__event_update', methods: ['GET', 'POST', 'PUT'])] + #[\Symfony\Component\Routing\Annotation\Route(path: '/{_locale}/event/event/{event_id}/edit', name: 'chill_event__event_edit', methods: ['GET', 'POST', 'PUT'])] public function updateAction(Request $request, $event_id): \Symfony\Component\HttpFoundation\RedirectResponse|Response { $em = $this->managerRegistry->getManager(); From 20af766cdf5475da7ae4bce6a91185bd8f6033f2 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 17 Jul 2024 15:38:55 +0200 Subject: [PATCH 101/136] Fix the query to return the count of events Left join was causing events to counted multiple times (once per participation). Using DISTINCT fixes this. --- src/Bundle/ChillEventBundle/Export/Export/CountEvents.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Bundle/ChillEventBundle/Export/Export/CountEvents.php b/src/Bundle/ChillEventBundle/Export/Export/CountEvents.php index 6ecfa3f43..7cb98b5a6 100644 --- a/src/Bundle/ChillEventBundle/Export/Export/CountEvents.php +++ b/src/Bundle/ChillEventBundle/Export/Export/CountEvents.php @@ -94,7 +94,7 @@ readonly class CountEvents implements ExportInterface, GroupedExportInterface ->leftJoin('event.participations', 'epart') ->leftJoin('epart.person', 'person'); - $qb->select('COUNT(event.id) as export_count_event'); + $qb->select('COUNT(DISTINCT event.id) as export_count_event'); if ($this->filterStatsByCenters) { $qb From 3fc3f32c5fb0d00bbd01f51864e679f3bb4e254c Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 17 Jul 2024 16:21:19 +0200 Subject: [PATCH 102/136] Pipeline fixes --- src/Bundle/ChillEventBundle/Form/EventType.php | 2 +- .../src/ApiHelper/PartenaireRomeAppellation.php | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Bundle/ChillEventBundle/Form/EventType.php b/src/Bundle/ChillEventBundle/Form/EventType.php index c2dd6f0cf..ebdf66010 100644 --- a/src/Bundle/ChillEventBundle/Form/EventType.php +++ b/src/Bundle/ChillEventBundle/Form/EventType.php @@ -34,7 +34,7 @@ class EventType extends AbstractType { $builder ->add('name', TextType::class, [ - 'required' => true + 'required' => true, ]) ->add('date', ChillDateTimeType::class, [ 'required' => true, diff --git a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php index 605bbf668..66a8ee05b 100644 --- a/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php +++ b/src/Bundle/ChillFranceTravailApiBundle/src/ApiHelper/PartenaireRomeAppellation.php @@ -91,7 +91,7 @@ class PartenaireRomeAppellation try { $response = $this->httpClient->request('GET', sprintf(self::BASE.'appellation/%s', $code), [ 'headers' => [ - 'Authorization' => 'Bearer ' . $bearer, + 'Authorization' => 'Bearer '.$bearer, 'Accept' => 'application/json', ], 'query' => [ @@ -101,9 +101,9 @@ class PartenaireRomeAppellation return $response->toArray(); } catch (HttpExceptionInterface $exception) { - if ($exception->getResponse()->getStatusCode() === 429) { + if (429 === $exception->getResponse()->getStatusCode()) { $retryAfter = $exception->getResponse()->getHeaders(false)['retry-after'][0] ?? 1; - sleep((int)$retryAfter); + sleep((int) $retryAfter); } else { throw $exception; } From c82991674e0452fb71a197a924ee63ff453eee0b Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Thu, 18 Jul 2024 09:49:05 +0200 Subject: [PATCH 103/136] Rector changes: repositories become final readonly classes --- .../Repository/ActivityTypeRepository.php | 4 +-- .../Repository/ChargeKindRepository.php | 4 +-- .../Repository/ResourceKindRepository.php | 4 +-- .../GeneratorDriver/RelatorioDriver.php | 8 ++--- .../DocGeneratorTemplateRepository.php | 6 ++-- .../Repository/AddressReferenceRepository.php | 6 ++-- .../Repository/AddressRepository.php | 4 +-- .../Repository/CenterRepository.php | 4 +-- .../Repository/CountryRepository.php | 4 +-- .../GeographicalUnitLayerLayerRepository.php | 4 +-- .../Repository/GeographicalUnitRepository.php | 4 +-- .../Repository/GroupCenterRepository.php | 4 +-- .../Repository/LanguageRepository.php | 4 +-- .../Repository/PermissionsGroupRepository.php | 4 +-- .../Repository/PostalCodeRepository.php | 6 ++-- .../Repository/RegroupmentRepository.php | 4 +-- .../Repository/RoleScopeRepository.php | 4 +-- .../Repository/ScopeRepository.php | 6 ++-- .../Templating/TranslatableStringHelper.php | 6 ++-- .../OriginAggregator.php | 6 ++-- .../AccompanyingPeriodWorkGoalRepository.php | 4 +-- .../AccompanyingPeriod/CommentRepository.php | 4 +-- .../AccompanyingPeriod/OriginRepository.php | 4 +-- .../AccompanyingPeriod/ResourceRepository.php | 4 +-- ...ompanyingPeriodParticipationRepository.php | 4 +-- .../AccompanyingPeriodRepository.php | 4 +-- .../HouseholdCompositionRepository.php | 4 +-- .../HouseholdCompositionTypeRepository.php | 4 +-- .../Household/HouseholdMembersRepository.php | 4 +-- .../Household/HouseholdRepository.php | 6 ++-- .../PersonHouseholdAddressRepository.php | 4 +-- .../Household/PositionRepository.php | 4 +-- .../Repository/PersonAltNameRepository.php | 4 +-- .../PersonNotDuplicateRepository.php | 4 +-- .../Repository/PersonResourceRepository.php | 4 +-- .../SocialWork/EvaluationRepository.php | 4 +-- .../Repository/SocialWork/GoalRepository.php | 4 +-- .../SocialWork/ResultRepository.php | 4 +-- .../SocialWork/SocialActionRepository.php | 4 +-- .../SocialWork/SocialIssueRepository.php | 4 +-- .../Service/DocGenerator/PersonContext.php | 30 +++++++++---------- .../src/Service/Wopi/ChillDocumentManager.php | 14 ++++----- 42 files changed, 111 insertions(+), 111 deletions(-) diff --git a/src/Bundle/ChillActivityBundle/Repository/ActivityTypeRepository.php b/src/Bundle/ChillActivityBundle/Repository/ActivityTypeRepository.php index 99adf4fe0..698c8b370 100644 --- a/src/Bundle/ChillActivityBundle/Repository/ActivityTypeRepository.php +++ b/src/Bundle/ChillActivityBundle/Repository/ActivityTypeRepository.php @@ -15,9 +15,9 @@ use Chill\ActivityBundle\Entity\ActivityType; use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\EntityRepository; -final class ActivityTypeRepository implements ActivityTypeRepositoryInterface +final readonly class ActivityTypeRepository implements ActivityTypeRepositoryInterface { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $em) { diff --git a/src/Bundle/ChillBudgetBundle/Repository/ChargeKindRepository.php b/src/Bundle/ChillBudgetBundle/Repository/ChargeKindRepository.php index a0c23a4ad..b2bb9e82e 100644 --- a/src/Bundle/ChillBudgetBundle/Repository/ChargeKindRepository.php +++ b/src/Bundle/ChillBudgetBundle/Repository/ChargeKindRepository.php @@ -15,9 +15,9 @@ use Chill\BudgetBundle\Entity\ChargeKind; use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\EntityRepository; -final class ChargeKindRepository implements ChargeKindRepositoryInterface +final readonly class ChargeKindRepository implements ChargeKindRepositoryInterface { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $entityManager) { diff --git a/src/Bundle/ChillBudgetBundle/Repository/ResourceKindRepository.php b/src/Bundle/ChillBudgetBundle/Repository/ResourceKindRepository.php index 723f26748..18051f120 100644 --- a/src/Bundle/ChillBudgetBundle/Repository/ResourceKindRepository.php +++ b/src/Bundle/ChillBudgetBundle/Repository/ResourceKindRepository.php @@ -15,9 +15,9 @@ use Chill\BudgetBundle\Entity\ResourceKind; use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\EntityRepository; -final class ResourceKindRepository implements ResourceKindRepositoryInterface +final readonly class ResourceKindRepository implements ResourceKindRepositoryInterface { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $entityManager) { diff --git a/src/Bundle/ChillDocGeneratorBundle/GeneratorDriver/RelatorioDriver.php b/src/Bundle/ChillDocGeneratorBundle/GeneratorDriver/RelatorioDriver.php index b46ee09b2..1ee3f0ba1 100644 --- a/src/Bundle/ChillDocGeneratorBundle/GeneratorDriver/RelatorioDriver.php +++ b/src/Bundle/ChillDocGeneratorBundle/GeneratorDriver/RelatorioDriver.php @@ -21,14 +21,14 @@ use Symfony\Contracts\HttpClient\Exception\DecodingExceptionInterface; use Symfony\Contracts\HttpClient\Exception\TransportExceptionInterface; use Symfony\Contracts\HttpClient\HttpClientInterface; -final class RelatorioDriver implements DriverInterface +final readonly class RelatorioDriver implements DriverInterface { - private readonly string $url; + private string $url; public function __construct( - private readonly HttpClientInterface $client, + private HttpClientInterface $client, ParameterBagInterface $parameterBag, - private readonly LoggerInterface $logger + private LoggerInterface $logger ) { $this->url = $parameterBag->get('chill_doc_generator')['driver']['relatorio']['url']; } diff --git a/src/Bundle/ChillDocGeneratorBundle/Repository/DocGeneratorTemplateRepository.php b/src/Bundle/ChillDocGeneratorBundle/Repository/DocGeneratorTemplateRepository.php index b5f409032..498daf7ba 100644 --- a/src/Bundle/ChillDocGeneratorBundle/Repository/DocGeneratorTemplateRepository.php +++ b/src/Bundle/ChillDocGeneratorBundle/Repository/DocGeneratorTemplateRepository.php @@ -16,11 +16,11 @@ use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\EntityRepository; use Symfony\Component\HttpFoundation\RequestStack; -final class DocGeneratorTemplateRepository implements DocGeneratorTemplateRepositoryInterface +final readonly class DocGeneratorTemplateRepository implements DocGeneratorTemplateRepositoryInterface { - private readonly EntityRepository $repository; + private EntityRepository $repository; - public function __construct(EntityManagerInterface $entityManager, private readonly RequestStack $requestStack) + public function __construct(EntityManagerInterface $entityManager, private RequestStack $requestStack) { $this->repository = $entityManager->getRepository(DocGeneratorTemplate::class); } diff --git a/src/Bundle/ChillMainBundle/Repository/AddressReferenceRepository.php b/src/Bundle/ChillMainBundle/Repository/AddressReferenceRepository.php index 86faf6ea1..3e8d060c3 100644 --- a/src/Bundle/ChillMainBundle/Repository/AddressReferenceRepository.php +++ b/src/Bundle/ChillMainBundle/Repository/AddressReferenceRepository.php @@ -20,11 +20,11 @@ use Doctrine\ORM\Query\ResultSetMapping; use Doctrine\ORM\Query\ResultSetMappingBuilder; use Doctrine\Persistence\ObjectRepository; -final class AddressReferenceRepository implements ObjectRepository +final readonly class AddressReferenceRepository implements ObjectRepository { - private readonly EntityManagerInterface $entityManager; + private EntityManagerInterface $entityManager; - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $entityManager) { diff --git a/src/Bundle/ChillMainBundle/Repository/AddressRepository.php b/src/Bundle/ChillMainBundle/Repository/AddressRepository.php index 074b1fc32..4dbd09cab 100644 --- a/src/Bundle/ChillMainBundle/Repository/AddressRepository.php +++ b/src/Bundle/ChillMainBundle/Repository/AddressRepository.php @@ -17,9 +17,9 @@ use Doctrine\ORM\EntityRepository; use Doctrine\ORM\QueryBuilder; use Doctrine\Persistence\ObjectRepository; -final class AddressRepository implements ObjectRepository +final readonly class AddressRepository implements ObjectRepository { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $entityManager) { diff --git a/src/Bundle/ChillMainBundle/Repository/CenterRepository.php b/src/Bundle/ChillMainBundle/Repository/CenterRepository.php index 0b507faa1..1bc5a7405 100644 --- a/src/Bundle/ChillMainBundle/Repository/CenterRepository.php +++ b/src/Bundle/ChillMainBundle/Repository/CenterRepository.php @@ -15,9 +15,9 @@ use Chill\MainBundle\Entity\Center; use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\EntityRepository; -final class CenterRepository implements CenterRepositoryInterface +final readonly class CenterRepository implements CenterRepositoryInterface { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $entityManager) { diff --git a/src/Bundle/ChillMainBundle/Repository/CountryRepository.php b/src/Bundle/ChillMainBundle/Repository/CountryRepository.php index 701019dba..ae318e35e 100644 --- a/src/Bundle/ChillMainBundle/Repository/CountryRepository.php +++ b/src/Bundle/ChillMainBundle/Repository/CountryRepository.php @@ -17,9 +17,9 @@ use Doctrine\ORM\EntityRepository; use Doctrine\ORM\QueryBuilder; use Doctrine\Persistence\ObjectRepository; -final class CountryRepository implements ObjectRepository +final readonly class CountryRepository implements ObjectRepository { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $entityManager) { diff --git a/src/Bundle/ChillMainBundle/Repository/GeographicalUnitLayerLayerRepository.php b/src/Bundle/ChillMainBundle/Repository/GeographicalUnitLayerLayerRepository.php index 11a03c209..1135b889d 100644 --- a/src/Bundle/ChillMainBundle/Repository/GeographicalUnitLayerLayerRepository.php +++ b/src/Bundle/ChillMainBundle/Repository/GeographicalUnitLayerLayerRepository.php @@ -15,9 +15,9 @@ use Chill\MainBundle\Entity\GeographicalUnitLayer; use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\EntityRepository; -final class GeographicalUnitLayerLayerRepository implements GeographicalUnitLayerRepositoryInterface +final readonly class GeographicalUnitLayerLayerRepository implements GeographicalUnitLayerRepositoryInterface { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $em) { diff --git a/src/Bundle/ChillMainBundle/Repository/GeographicalUnitRepository.php b/src/Bundle/ChillMainBundle/Repository/GeographicalUnitRepository.php index 608609a11..35ec31ff3 100644 --- a/src/Bundle/ChillMainBundle/Repository/GeographicalUnitRepository.php +++ b/src/Bundle/ChillMainBundle/Repository/GeographicalUnitRepository.php @@ -18,9 +18,9 @@ use Doctrine\ORM\EntityRepository; use Doctrine\ORM\Query\Expr\Join; use Doctrine\ORM\QueryBuilder; -final class GeographicalUnitRepository implements GeographicalUnitRepositoryInterface +final readonly class GeographicalUnitRepository implements GeographicalUnitRepositoryInterface { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $em) { diff --git a/src/Bundle/ChillMainBundle/Repository/GroupCenterRepository.php b/src/Bundle/ChillMainBundle/Repository/GroupCenterRepository.php index 2d9ad8c5a..d0f5d8561 100644 --- a/src/Bundle/ChillMainBundle/Repository/GroupCenterRepository.php +++ b/src/Bundle/ChillMainBundle/Repository/GroupCenterRepository.php @@ -16,9 +16,9 @@ use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\EntityRepository; use Doctrine\Persistence\ObjectRepository; -final class GroupCenterRepository implements ObjectRepository +final readonly class GroupCenterRepository implements ObjectRepository { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $entityManager) { diff --git a/src/Bundle/ChillMainBundle/Repository/LanguageRepository.php b/src/Bundle/ChillMainBundle/Repository/LanguageRepository.php index d8c5d54f8..28d21d2c1 100644 --- a/src/Bundle/ChillMainBundle/Repository/LanguageRepository.php +++ b/src/Bundle/ChillMainBundle/Repository/LanguageRepository.php @@ -15,9 +15,9 @@ use Chill\MainBundle\Entity\Language; use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\EntityRepository; -final class LanguageRepository implements LanguageRepositoryInterface +final readonly class LanguageRepository implements LanguageRepositoryInterface { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $entityManager) { diff --git a/src/Bundle/ChillMainBundle/Repository/PermissionsGroupRepository.php b/src/Bundle/ChillMainBundle/Repository/PermissionsGroupRepository.php index 910d924db..598894b61 100644 --- a/src/Bundle/ChillMainBundle/Repository/PermissionsGroupRepository.php +++ b/src/Bundle/ChillMainBundle/Repository/PermissionsGroupRepository.php @@ -16,9 +16,9 @@ use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\EntityRepository; use Doctrine\Persistence\ObjectRepository; -final class PermissionsGroupRepository implements ObjectRepository +final readonly class PermissionsGroupRepository implements ObjectRepository { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $entityManager) { diff --git a/src/Bundle/ChillMainBundle/Repository/PostalCodeRepository.php b/src/Bundle/ChillMainBundle/Repository/PostalCodeRepository.php index 0949f52ba..0779ea90a 100644 --- a/src/Bundle/ChillMainBundle/Repository/PostalCodeRepository.php +++ b/src/Bundle/ChillMainBundle/Repository/PostalCodeRepository.php @@ -19,11 +19,11 @@ use Doctrine\ORM\EntityRepository; use Doctrine\ORM\Query\ResultSetMapping; use Doctrine\ORM\Query\ResultSetMappingBuilder; -final class PostalCodeRepository implements PostalCodeRepositoryInterface +final readonly class PostalCodeRepository implements PostalCodeRepositoryInterface { - private readonly EntityManagerInterface $entityManager; + private EntityManagerInterface $entityManager; - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $entityManager) { diff --git a/src/Bundle/ChillMainBundle/Repository/RegroupmentRepository.php b/src/Bundle/ChillMainBundle/Repository/RegroupmentRepository.php index e18279944..793015f5b 100644 --- a/src/Bundle/ChillMainBundle/Repository/RegroupmentRepository.php +++ b/src/Bundle/ChillMainBundle/Repository/RegroupmentRepository.php @@ -18,9 +18,9 @@ use Doctrine\ORM\NonUniqueResultException; use Doctrine\ORM\NoResultException; use Doctrine\Persistence\ObjectRepository; -final class RegroupmentRepository implements ObjectRepository +final readonly class RegroupmentRepository implements ObjectRepository { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $entityManager) { diff --git a/src/Bundle/ChillMainBundle/Repository/RoleScopeRepository.php b/src/Bundle/ChillMainBundle/Repository/RoleScopeRepository.php index ddf52af5b..a00d2ce35 100644 --- a/src/Bundle/ChillMainBundle/Repository/RoleScopeRepository.php +++ b/src/Bundle/ChillMainBundle/Repository/RoleScopeRepository.php @@ -16,9 +16,9 @@ use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\EntityRepository; use Doctrine\Persistence\ObjectRepository; -final class RoleScopeRepository implements ObjectRepository +final readonly class RoleScopeRepository implements ObjectRepository { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $entityManager) { diff --git a/src/Bundle/ChillMainBundle/Repository/ScopeRepository.php b/src/Bundle/ChillMainBundle/Repository/ScopeRepository.php index aa3c78270..4f752bce0 100644 --- a/src/Bundle/ChillMainBundle/Repository/ScopeRepository.php +++ b/src/Bundle/ChillMainBundle/Repository/ScopeRepository.php @@ -17,11 +17,11 @@ use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\EntityRepository; use Doctrine\ORM\QueryBuilder; -final class ScopeRepository implements ScopeRepositoryInterface +final readonly class ScopeRepository implements ScopeRepositoryInterface { - private readonly EntityRepository $repository; + private EntityRepository $repository; - public function __construct(EntityManagerInterface $entityManager, private readonly TranslatableStringHelperInterface $translatableStringHelper) + public function __construct(EntityManagerInterface $entityManager, private TranslatableStringHelperInterface $translatableStringHelper) { $this->repository = $entityManager->getRepository(Scope::class); } diff --git a/src/Bundle/ChillMainBundle/Templating/TranslatableStringHelper.php b/src/Bundle/ChillMainBundle/Templating/TranslatableStringHelper.php index b5fedeec0..b7fc7a8cc 100644 --- a/src/Bundle/ChillMainBundle/Templating/TranslatableStringHelper.php +++ b/src/Bundle/ChillMainBundle/Templating/TranslatableStringHelper.php @@ -15,11 +15,11 @@ use Symfony\Component\DependencyInjection\ParameterBag\ParameterBagInterface; use Symfony\Component\HttpFoundation\RequestStack; use Symfony\Contracts\Translation\TranslatorInterface; -final class TranslatableStringHelper implements TranslatableStringHelperInterface +final readonly class TranslatableStringHelper implements TranslatableStringHelperInterface { - private readonly string $defaultLocale; + private string $defaultLocale; - public function __construct(private readonly RequestStack $requestStack, private readonly TranslatorInterface $translator, ParameterBagInterface $parameterBag) + public function __construct(private RequestStack $requestStack, private TranslatorInterface $translator, ParameterBagInterface $parameterBag) { $this->defaultLocale = $parameterBag->get('kernel.default_locale'); } diff --git a/src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/OriginAggregator.php b/src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/OriginAggregator.php index 6061f36ca..e15539fb1 100644 --- a/src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/OriginAggregator.php +++ b/src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/OriginAggregator.php @@ -20,13 +20,13 @@ use Doctrine\ORM\EntityRepository; use Doctrine\ORM\QueryBuilder; use Symfony\Component\Form\FormBuilderInterface; -final class OriginAggregator implements AggregatorInterface +final readonly class OriginAggregator implements AggregatorInterface { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct( EntityManagerInterface $em, - private readonly TranslatableStringHelper $translatableStringHelper + private TranslatableStringHelper $translatableStringHelper ) { $this->repository = $em->getRepository(Origin::class); } diff --git a/src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/AccompanyingPeriodWorkGoalRepository.php b/src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/AccompanyingPeriodWorkGoalRepository.php index 4e092beb0..7c24b8a61 100644 --- a/src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/AccompanyingPeriodWorkGoalRepository.php +++ b/src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/AccompanyingPeriodWorkGoalRepository.php @@ -21,9 +21,9 @@ use Doctrine\ORM\EntityRepository; * @method AccompanyingPeriodWorkGoal[] findAll() * @method AccompanyingPeriodWorkGoal[] findBy(array $criteria, array $orderBy = null, $limit = null, $offset = null) */ -final class AccompanyingPeriodWorkGoalRepository +final readonly class AccompanyingPeriodWorkGoalRepository { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $entityManager) { diff --git a/src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/CommentRepository.php b/src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/CommentRepository.php index 3759cf2cd..5ad717d0c 100644 --- a/src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/CommentRepository.php +++ b/src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/CommentRepository.php @@ -15,9 +15,9 @@ use Chill\PersonBundle\Entity\AccompanyingPeriod\Comment; use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\EntityRepository; -final class CommentRepository +final readonly class CommentRepository { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $entityManager) { diff --git a/src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/OriginRepository.php b/src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/OriginRepository.php index 1668b456e..2e50386c8 100644 --- a/src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/OriginRepository.php +++ b/src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/OriginRepository.php @@ -15,9 +15,9 @@ use Chill\PersonBundle\Entity\AccompanyingPeriod\Origin; use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\EntityRepository; -final class OriginRepository +final readonly class OriginRepository { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $entityManager) { diff --git a/src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/ResourceRepository.php b/src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/ResourceRepository.php index a5dbf4b69..66a2daea5 100644 --- a/src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/ResourceRepository.php +++ b/src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriod/ResourceRepository.php @@ -15,9 +15,9 @@ use Chill\PersonBundle\Entity\AccompanyingPeriod\Resource; use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\EntityRepository; -final class ResourceRepository +final readonly class ResourceRepository { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $entityManager) { diff --git a/src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriodParticipationRepository.php b/src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriodParticipationRepository.php index 616c56eb0..0a2d00bcd 100644 --- a/src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriodParticipationRepository.php +++ b/src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriodParticipationRepository.php @@ -15,9 +15,9 @@ use Chill\PersonBundle\Entity\AccompanyingPeriodParticipation; use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\EntityRepository; -final class AccompanyingPeriodParticipationRepository +final readonly class AccompanyingPeriodParticipationRepository { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $entityManager) { diff --git a/src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriodRepository.php b/src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriodRepository.php index 7b681a8f5..73f1beecb 100644 --- a/src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriodRepository.php +++ b/src/Bundle/ChillPersonBundle/Repository/AccompanyingPeriodRepository.php @@ -18,9 +18,9 @@ use Doctrine\ORM\EntityRepository; use Doctrine\ORM\QueryBuilder; use Doctrine\Persistence\ObjectRepository; -final class AccompanyingPeriodRepository implements ObjectRepository +final readonly class AccompanyingPeriodRepository implements ObjectRepository { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $entityManager) { diff --git a/src/Bundle/ChillPersonBundle/Repository/Household/HouseholdCompositionRepository.php b/src/Bundle/ChillPersonBundle/Repository/Household/HouseholdCompositionRepository.php index 5a0dee15d..1bd72fd35 100644 --- a/src/Bundle/ChillPersonBundle/Repository/Household/HouseholdCompositionRepository.php +++ b/src/Bundle/ChillPersonBundle/Repository/Household/HouseholdCompositionRepository.php @@ -16,9 +16,9 @@ use Chill\PersonBundle\Entity\Household\HouseholdComposition; use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\EntityRepository; -final class HouseholdCompositionRepository implements HouseholdCompositionRepositoryInterface +final readonly class HouseholdCompositionRepository implements HouseholdCompositionRepositoryInterface { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $entityManager) { diff --git a/src/Bundle/ChillPersonBundle/Repository/Household/HouseholdCompositionTypeRepository.php b/src/Bundle/ChillPersonBundle/Repository/Household/HouseholdCompositionTypeRepository.php index 2b748865b..666895696 100644 --- a/src/Bundle/ChillPersonBundle/Repository/Household/HouseholdCompositionTypeRepository.php +++ b/src/Bundle/ChillPersonBundle/Repository/Household/HouseholdCompositionTypeRepository.php @@ -15,9 +15,9 @@ use Chill\PersonBundle\Entity\Household\HouseholdCompositionType; use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\EntityRepository; -final class HouseholdCompositionTypeRepository implements HouseholdCompositionTypeRepositoryInterface +final readonly class HouseholdCompositionTypeRepository implements HouseholdCompositionTypeRepositoryInterface { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $entityManager) { diff --git a/src/Bundle/ChillPersonBundle/Repository/Household/HouseholdMembersRepository.php b/src/Bundle/ChillPersonBundle/Repository/Household/HouseholdMembersRepository.php index e76e88fc3..777b14cdd 100644 --- a/src/Bundle/ChillPersonBundle/Repository/Household/HouseholdMembersRepository.php +++ b/src/Bundle/ChillPersonBundle/Repository/Household/HouseholdMembersRepository.php @@ -15,9 +15,9 @@ use Chill\PersonBundle\Entity\Household\HouseholdMember; use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\EntityRepository; -final class HouseholdMembersRepository +final readonly class HouseholdMembersRepository { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $entityManager) { diff --git a/src/Bundle/ChillPersonBundle/Repository/Household/HouseholdRepository.php b/src/Bundle/ChillPersonBundle/Repository/Household/HouseholdRepository.php index 2904ffb61..271883080 100644 --- a/src/Bundle/ChillPersonBundle/Repository/Household/HouseholdRepository.php +++ b/src/Bundle/ChillPersonBundle/Repository/Household/HouseholdRepository.php @@ -18,7 +18,7 @@ use Doctrine\ORM\EntityRepository; use Doctrine\ORM\Query\ResultSetMappingBuilder; use Doctrine\Persistence\ObjectRepository; -final class HouseholdRepository implements ObjectRepository +final readonly class HouseholdRepository implements ObjectRepository { private const SQL_BY_ACCOMPANYING_PERIOD_PARTICIPATION = <<<'SQL' WITH participations AS ( @@ -40,9 +40,9 @@ final class HouseholdRepository implements ObjectRepository SELECT {select} FROM households {limits} SQL; - private readonly EntityManagerInterface $em; + private EntityManagerInterface $em; - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $entityManager) { diff --git a/src/Bundle/ChillPersonBundle/Repository/Household/PersonHouseholdAddressRepository.php b/src/Bundle/ChillPersonBundle/Repository/Household/PersonHouseholdAddressRepository.php index ebcfabe4f..f9132c2bd 100644 --- a/src/Bundle/ChillPersonBundle/Repository/Household/PersonHouseholdAddressRepository.php +++ b/src/Bundle/ChillPersonBundle/Repository/Household/PersonHouseholdAddressRepository.php @@ -16,9 +16,9 @@ use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\EntityRepository; use Doctrine\Persistence\ObjectRepository; -final class PersonHouseholdAddressRepository implements ObjectRepository +final readonly class PersonHouseholdAddressRepository implements ObjectRepository { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $em) { diff --git a/src/Bundle/ChillPersonBundle/Repository/Household/PositionRepository.php b/src/Bundle/ChillPersonBundle/Repository/Household/PositionRepository.php index 32ca5b8fa..585f2aedb 100644 --- a/src/Bundle/ChillPersonBundle/Repository/Household/PositionRepository.php +++ b/src/Bundle/ChillPersonBundle/Repository/Household/PositionRepository.php @@ -18,9 +18,9 @@ use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\EntityRepository; use Doctrine\Persistence\ObjectRepository; -final class PositionRepository implements ObjectRepository +final readonly class PositionRepository implements ObjectRepository { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $entityManager) { diff --git a/src/Bundle/ChillPersonBundle/Repository/PersonAltNameRepository.php b/src/Bundle/ChillPersonBundle/Repository/PersonAltNameRepository.php index 4a1ee1dd6..8a8bf0e7c 100644 --- a/src/Bundle/ChillPersonBundle/Repository/PersonAltNameRepository.php +++ b/src/Bundle/ChillPersonBundle/Repository/PersonAltNameRepository.php @@ -15,9 +15,9 @@ use Chill\PersonBundle\Entity\PersonAltName; use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\EntityRepository; -final class PersonAltNameRepository +final readonly class PersonAltNameRepository { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $entityManager) { diff --git a/src/Bundle/ChillPersonBundle/Repository/PersonNotDuplicateRepository.php b/src/Bundle/ChillPersonBundle/Repository/PersonNotDuplicateRepository.php index 6694f0e32..f1946bd37 100644 --- a/src/Bundle/ChillPersonBundle/Repository/PersonNotDuplicateRepository.php +++ b/src/Bundle/ChillPersonBundle/Repository/PersonNotDuplicateRepository.php @@ -16,9 +16,9 @@ use Chill\PersonBundle\Entity\PersonNotDuplicate; use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\EntityRepository; -final class PersonNotDuplicateRepository +final readonly class PersonNotDuplicateRepository { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $entityManager) { diff --git a/src/Bundle/ChillPersonBundle/Repository/PersonResourceRepository.php b/src/Bundle/ChillPersonBundle/Repository/PersonResourceRepository.php index b2bff2ce5..3caae8444 100644 --- a/src/Bundle/ChillPersonBundle/Repository/PersonResourceRepository.php +++ b/src/Bundle/ChillPersonBundle/Repository/PersonResourceRepository.php @@ -17,9 +17,9 @@ use Doctrine\ORM\EntityRepository; use Doctrine\ORM\QueryBuilder; use Doctrine\Persistence\ObjectRepository; -final class PersonResourceRepository implements ObjectRepository +final readonly class PersonResourceRepository implements ObjectRepository { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $entityManager) { diff --git a/src/Bundle/ChillPersonBundle/Repository/SocialWork/EvaluationRepository.php b/src/Bundle/ChillPersonBundle/Repository/SocialWork/EvaluationRepository.php index a7b739f7d..1c89a98f6 100644 --- a/src/Bundle/ChillPersonBundle/Repository/SocialWork/EvaluationRepository.php +++ b/src/Bundle/ChillPersonBundle/Repository/SocialWork/EvaluationRepository.php @@ -15,9 +15,9 @@ use Chill\PersonBundle\Entity\SocialWork\Evaluation; use Doctrine\ORM\EntityManagerInterface; use Doctrine\ORM\EntityRepository; -final class EvaluationRepository implements EvaluationRepositoryInterface +final readonly class EvaluationRepository implements EvaluationRepositoryInterface { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $entityManager) { diff --git a/src/Bundle/ChillPersonBundle/Repository/SocialWork/GoalRepository.php b/src/Bundle/ChillPersonBundle/Repository/SocialWork/GoalRepository.php index f99bd54a5..ec89c597d 100644 --- a/src/Bundle/ChillPersonBundle/Repository/SocialWork/GoalRepository.php +++ b/src/Bundle/ChillPersonBundle/Repository/SocialWork/GoalRepository.php @@ -18,9 +18,9 @@ use Doctrine\ORM\EntityRepository; use Doctrine\ORM\QueryBuilder; use Doctrine\Persistence\ObjectRepository; -final class GoalRepository implements ObjectRepository +final readonly class GoalRepository implements ObjectRepository { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $entityManager) { diff --git a/src/Bundle/ChillPersonBundle/Repository/SocialWork/ResultRepository.php b/src/Bundle/ChillPersonBundle/Repository/SocialWork/ResultRepository.php index 786c6635a..0d470d2d7 100644 --- a/src/Bundle/ChillPersonBundle/Repository/SocialWork/ResultRepository.php +++ b/src/Bundle/ChillPersonBundle/Repository/SocialWork/ResultRepository.php @@ -19,9 +19,9 @@ use Doctrine\ORM\EntityRepository; use Doctrine\ORM\QueryBuilder; use Doctrine\Persistence\ObjectRepository; -final class ResultRepository implements ObjectRepository +final readonly class ResultRepository implements ObjectRepository { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $entityManager) { diff --git a/src/Bundle/ChillPersonBundle/Repository/SocialWork/SocialActionRepository.php b/src/Bundle/ChillPersonBundle/Repository/SocialWork/SocialActionRepository.php index da6bfcc46..fe530e84b 100644 --- a/src/Bundle/ChillPersonBundle/Repository/SocialWork/SocialActionRepository.php +++ b/src/Bundle/ChillPersonBundle/Repository/SocialWork/SocialActionRepository.php @@ -17,9 +17,9 @@ use Doctrine\ORM\EntityRepository; use Doctrine\ORM\QueryBuilder; use Doctrine\Persistence\ObjectRepository; -final class SocialActionRepository implements ObjectRepository +final readonly class SocialActionRepository implements ObjectRepository { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $entityManager) { diff --git a/src/Bundle/ChillPersonBundle/Repository/SocialWork/SocialIssueRepository.php b/src/Bundle/ChillPersonBundle/Repository/SocialWork/SocialIssueRepository.php index 21f06afd1..c9bb3a189 100644 --- a/src/Bundle/ChillPersonBundle/Repository/SocialWork/SocialIssueRepository.php +++ b/src/Bundle/ChillPersonBundle/Repository/SocialWork/SocialIssueRepository.php @@ -17,9 +17,9 @@ use Doctrine\ORM\EntityRepository; use Doctrine\ORM\QueryBuilder; use Doctrine\Persistence\ObjectRepository; -final class SocialIssueRepository implements ObjectRepository +final readonly class SocialIssueRepository implements ObjectRepository { - private readonly EntityRepository $repository; + private EntityRepository $repository; public function __construct(EntityManagerInterface $entityManager) { diff --git a/src/Bundle/ChillPersonBundle/Service/DocGenerator/PersonContext.php b/src/Bundle/ChillPersonBundle/Service/DocGenerator/PersonContext.php index bf4b7da0d..890fa40ff 100644 --- a/src/Bundle/ChillPersonBundle/Service/DocGenerator/PersonContext.php +++ b/src/Bundle/ChillPersonBundle/Service/DocGenerator/PersonContext.php @@ -47,25 +47,25 @@ use Symfony\Contracts\Translation\TranslatorInterface; /** * @see PersonContextTest */ -final class PersonContext implements PersonContextInterface +final readonly class PersonContext implements PersonContextInterface { - private readonly bool $showScopes; + private bool $showScopes; public function __construct( - private readonly AuthorizationHelperInterface $authorizationHelper, - private readonly BaseContextData $baseContextData, - private readonly CenterResolverManagerInterface $centerResolverManager, - private readonly DocumentCategoryRepository $documentCategoryRepository, - private readonly EntityManagerInterface $em, - private readonly NormalizerInterface $normalizer, + private AuthorizationHelperInterface $authorizationHelper, + private BaseContextData $baseContextData, + private CenterResolverManagerInterface $centerResolverManager, + private DocumentCategoryRepository $documentCategoryRepository, + private EntityManagerInterface $em, + private NormalizerInterface $normalizer, ParameterBagInterface $parameterBag, - private readonly ScopeRepositoryInterface $scopeRepository, - private readonly Security $security, - private readonly TranslatorInterface $translator, - private readonly TranslatableStringHelperInterface $translatableStringHelper, - private readonly ThirdPartyRender $thirdPartyRender, - private readonly ThirdPartyRepository $thirdPartyRepository, - private readonly ResidentialAddressRepository $residentialAddressRepository + private ScopeRepositoryInterface $scopeRepository, + private Security $security, + private TranslatorInterface $translator, + private TranslatableStringHelperInterface $translatableStringHelper, + private ThirdPartyRender $thirdPartyRender, + private ThirdPartyRepository $thirdPartyRepository, + private ResidentialAddressRepository $residentialAddressRepository ) { $this->showScopes = $parameterBag->get('chill_main')['acl']['form_show_scopes']; } diff --git a/src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillDocumentManager.php b/src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillDocumentManager.php index f263afcc8..2b569014d 100644 --- a/src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillDocumentManager.php +++ b/src/Bundle/ChillWopiBundle/src/Service/Wopi/ChillDocumentManager.php @@ -27,18 +27,18 @@ use Symfony\Component\HttpFoundation\RequestStack; use Symfony\Component\Mime\MimeTypes; use Symfony\Component\Serializer\Normalizer\ObjectNormalizer; -final class ChillDocumentManager implements DocumentManagerInterface +final readonly class ChillDocumentManager implements DocumentManagerInterface { - private readonly RequestInterface $request; + private RequestInterface $request; public function __construct( - private readonly DocumentLockManagerInterface $documentLockManager, - private readonly EntityManagerInterface $entityManager, + private DocumentLockManagerInterface $documentLockManager, + private EntityManagerInterface $entityManager, HttpMessageFactoryInterface $httpMessageFactory, - private readonly Psr17Interface $psr17, + private Psr17Interface $psr17, RequestStack $requestStack, - private readonly StoredObjectManagerInterface $storedObjectManager, - private readonly StoredObjectRepository $storedObjectRepository + private StoredObjectManagerInterface $storedObjectManager, + private StoredObjectRepository $storedObjectRepository ) { $this->request = $httpMessageFactory->createRequest($requestStack->getCurrentRequest()); } From be19d09bad0f034cc122bce7c30883a36d86dd6d Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Tue, 23 Jul 2024 16:42:36 +0200 Subject: [PATCH 104/136] Fix typing error in ListActivityHelper: string expected got int --- .../ChillActivityBundle/Export/Export/ListActivityHelper.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Bundle/ChillActivityBundle/Export/Export/ListActivityHelper.php b/src/Bundle/ChillActivityBundle/Export/Export/ListActivityHelper.php index 75d2c3fd0..15137b013 100644 --- a/src/Bundle/ChillActivityBundle/Export/Export/ListActivityHelper.php +++ b/src/Bundle/ChillActivityBundle/Export/Export/ListActivityHelper.php @@ -152,7 +152,7 @@ class ListActivityHelper return ''; } - return $this->translator->trans($value); + return $this->translator->trans((string) $value); }, }; } From b42473b01deda59836f1d4c2d96a6eefd59f5414 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Tue, 23 Jul 2024 16:54:08 +0200 Subject: [PATCH 105/136] Upgrade bundles version with new features and fix --- .changes/unreleased/Feature-20231212-154841.yaml | 5 ----- .changes/unreleased/Feature-20240522-164933.yaml | 5 ----- .changes/unreleased/Feature-20240530-160003.yaml | 6 ------ .changes/unreleased/Feature-20240531-190242.yaml | 6 ------ .changes/unreleased/Fixed-20240410-103736.yaml | 6 ------ .changes/v2.23.0.md | 11 +++++++++++ CHANGELOG.md | 12 ++++++++++++ 7 files changed, 23 insertions(+), 28 deletions(-) delete mode 100644 .changes/unreleased/Feature-20231212-154841.yaml delete mode 100644 .changes/unreleased/Feature-20240522-164933.yaml delete mode 100644 .changes/unreleased/Feature-20240530-160003.yaml delete mode 100644 .changes/unreleased/Feature-20240531-190242.yaml delete mode 100644 .changes/unreleased/Fixed-20240410-103736.yaml create mode 100644 .changes/v2.23.0.md diff --git a/.changes/unreleased/Feature-20231212-154841.yaml b/.changes/unreleased/Feature-20231212-154841.yaml deleted file mode 100644 index 14e19345b..000000000 --- a/.changes/unreleased/Feature-20231212-154841.yaml +++ /dev/null @@ -1,5 +0,0 @@ -kind: Feature -body: '[DX] move async-upload-bundle features into chill-bundles' -time: 2023-12-12T15:48:41.954970271+01:00 -custom: - Issue: "221" diff --git a/.changes/unreleased/Feature-20240522-164933.yaml b/.changes/unreleased/Feature-20240522-164933.yaml deleted file mode 100644 index 947c6589f..000000000 --- a/.changes/unreleased/Feature-20240522-164933.yaml +++ /dev/null @@ -1,5 +0,0 @@ -kind: Feature -body: Add job bundle (module emploi) -time: 2024-05-22T16:49:33.730465146+02:00 -custom: - Issue: "" diff --git a/.changes/unreleased/Feature-20240530-160003.yaml b/.changes/unreleased/Feature-20240530-160003.yaml deleted file mode 100644 index 6b6baedc5..000000000 --- a/.changes/unreleased/Feature-20240530-160003.yaml +++ /dev/null @@ -1,6 +0,0 @@ -kind: Feature -body: | - Upgrade import of address list to the last version of compiled addresses of belgian-best-address -time: 2024-05-30T16:00:03.440767606+02:00 -custom: - Issue: "" diff --git a/.changes/unreleased/Feature-20240531-190242.yaml b/.changes/unreleased/Feature-20240531-190242.yaml deleted file mode 100644 index 083298a26..000000000 --- a/.changes/unreleased/Feature-20240531-190242.yaml +++ /dev/null @@ -1,6 +0,0 @@ -kind: Feature -body: | - Upgrade CKEditor and refactor configuration with use of typescript -time: 2024-05-31T19:02:42.776662753+02:00 -custom: - Issue: "" diff --git a/.changes/unreleased/Fixed-20240410-103736.yaml b/.changes/unreleased/Fixed-20240410-103736.yaml deleted file mode 100644 index 355d24b1e..000000000 --- a/.changes/unreleased/Fixed-20240410-103736.yaml +++ /dev/null @@ -1,6 +0,0 @@ -kind: Fixed -body: Fix resolving of centers for an household, which will fix in turn the access - control -time: 2024-04-10T10:37:36.462484988+02:00 -custom: - Issue: "" diff --git a/.changes/v2.23.0.md b/.changes/v2.23.0.md new file mode 100644 index 000000000..6b2aea37a --- /dev/null +++ b/.changes/v2.23.0.md @@ -0,0 +1,11 @@ +## v2.23.0 - 2024-07-23 +### Feature +* ([#221](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/221)) [DX] move async-upload-bundle features into chill-bundles +* Add job bundle (module emploi) +* Upgrade import of address list to the last version of compiled addresses of belgian-best-address + +* Upgrade CKEditor and refactor configuration with use of typescript + +### Fixed +* Fix resolving of centers for an household, which will fix in turn the access control +* Resolved type hinting error in activity list export diff --git a/CHANGELOG.md b/CHANGELOG.md index 1d0fd76e4..1cb810a1a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,18 @@ adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html), and is generated by [Changie](https://github.com/miniscruff/changie). +## v2.23.0 - 2024-07-23 +### Feature +* ([#221](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/221)) [DX] move async-upload-bundle features into chill-bundles +* Add job bundle (module emploi) +* Upgrade import of address list to the last version of compiled addresses of belgian-best-address + +* Upgrade CKEditor and refactor configuration with use of typescript + +### Fixed +* Fix resolving of centers for an household, which will fix in turn the access control +* Resolved type hinting error in activity list export + ## v2.22.2 - 2024-07-03 ### Fixed * Remove scope required for event participation stats From 5b0019cde766479c5ce7f6bdff9c036e429a5fae Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Thu, 25 Jul 2024 11:23:36 +0200 Subject: [PATCH 106/136] Fix query in filter: period having activity between dates filter Adding statement to ensure that subquery only considers records that are identical to the ones being processed in the main query. --- .../ACPFilters/PeriodHavingActivityBetweenDatesFilter.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/Bundle/ChillActivityBundle/Export/Filter/ACPFilters/PeriodHavingActivityBetweenDatesFilter.php b/src/Bundle/ChillActivityBundle/Export/Filter/ACPFilters/PeriodHavingActivityBetweenDatesFilter.php index 2d3282ad1..2b30a075c 100644 --- a/src/Bundle/ChillActivityBundle/Export/Filter/ACPFilters/PeriodHavingActivityBetweenDatesFilter.php +++ b/src/Bundle/ChillActivityBundle/Export/Filter/ACPFilters/PeriodHavingActivityBetweenDatesFilter.php @@ -73,13 +73,15 @@ final readonly class PeriodHavingActivityBetweenDatesFilter implements FilterInt $qb->andWhere( $qb->expr()->exists( - 'SELECT 1 FROM '.Activity::class." {$alias} WHERE {$alias}.date >= :{$from} AND {$alias}.date < :{$to} AND {$alias}.accompanyingPeriod = acp" + 'SELECT 1 FROM '.Activity::class." {$alias} WHERE {$alias}.date >= :{$from} AND {$alias}.date < :{$to} AND {$alias}.accompanyingPeriod = activity.accompanyingPeriod AND {$alias}.id = activity.id" ) ); $qb ->setParameter($from, $this->rollingDateConverter->convert($data['start_date'])) ->setParameter($to, $this->rollingDateConverter->convert($data['end_date'])); + + dump($qb->getQuery()->getResult()); } public function applyOn() From 81220b5b2218f7395857ee324695a5d19845edad Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Thu, 25 Jul 2024 11:30:33 +0200 Subject: [PATCH 107/136] Correct phpstan error: ParsingException is never thrown The typing of the exception had to be changed, because \Datetime throws an \Exception instead of a ParsingException. --- src/Bundle/ChillMainBundle/Search/AbstractSearch.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Bundle/ChillMainBundle/Search/AbstractSearch.php b/src/Bundle/ChillMainBundle/Search/AbstractSearch.php index a7cb88d55..c4e0fecd9 100644 --- a/src/Bundle/ChillMainBundle/Search/AbstractSearch.php +++ b/src/Bundle/ChillMainBundle/Search/AbstractSearch.php @@ -32,7 +32,7 @@ abstract class AbstractSearch implements SearchInterface { try { return new \DateTime($string); - } catch (ParsingException $ex) { + } catch (\Exception $ex) { $exception = new ParsingException('The date is ' .'not parsable', 0, $ex); From a46e987f81ea4cb4fa1a18e17521da8389c0f41a Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Thu, 25 Jul 2024 16:56:43 +0200 Subject: [PATCH 108/136] Upgrade version of chill-bundles to v2.23.1 --- .changes/v2.23.1.md | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 .changes/v2.23.1.md diff --git a/.changes/v2.23.1.md b/.changes/v2.23.1.md new file mode 100644 index 000000000..75e03cf61 --- /dev/null +++ b/.changes/v2.23.1.md @@ -0,0 +1,3 @@ +## v2.23.1 - 2024-07-25 +### Fixed +* Fix export activities linked to accompanying period between two dates From 5dfd8daf3ab741048b1e760d51242f6129a3ae74 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Tue, 30 Jul 2024 14:58:48 +0200 Subject: [PATCH 109/136] Remove dump causing export to fail --- .../ACPFilters/PeriodHavingActivityBetweenDatesFilter.php | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/Bundle/ChillActivityBundle/Export/Filter/ACPFilters/PeriodHavingActivityBetweenDatesFilter.php b/src/Bundle/ChillActivityBundle/Export/Filter/ACPFilters/PeriodHavingActivityBetweenDatesFilter.php index 2b30a075c..03cb00be1 100644 --- a/src/Bundle/ChillActivityBundle/Export/Filter/ACPFilters/PeriodHavingActivityBetweenDatesFilter.php +++ b/src/Bundle/ChillActivityBundle/Export/Filter/ACPFilters/PeriodHavingActivityBetweenDatesFilter.php @@ -80,8 +80,6 @@ final readonly class PeriodHavingActivityBetweenDatesFilter implements FilterInt $qb ->setParameter($from, $this->rollingDateConverter->convert($data['start_date'])) ->setParameter($to, $this->rollingDateConverter->convert($data['end_date'])); - - dump($qb->getQuery()->getResult()); } public function applyOn() From ee45ff61a6f6497fb8f50be02b7245603d1ef1fb Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 31 Jul 2024 14:55:35 +0200 Subject: [PATCH 110/136] Reorganize person resource code to create an abstract class --- .../Entity/Person/AbstractPersonResource.php | 190 ++++++++++++++++++ .../Entity/Person/PersonResource.php | 177 +--------------- 2 files changed, 191 insertions(+), 176 deletions(-) create mode 100644 src/Bundle/ChillPersonBundle/Entity/Person/AbstractPersonResource.php diff --git a/src/Bundle/ChillPersonBundle/Entity/Person/AbstractPersonResource.php b/src/Bundle/ChillPersonBundle/Entity/Person/AbstractPersonResource.php new file mode 100644 index 000000000..a13670b97 --- /dev/null +++ b/src/Bundle/ChillPersonBundle/Entity/Person/AbstractPersonResource.php @@ -0,0 +1,190 @@ +comment = new CommentEmbeddable(); + } + + public function getComment(): CommentEmbeddable + { + return $this->comment; + } + + public function getFreeText(): ?string + { + return $this->freeText; + } + + public function getKind(): ?PersonResourceKind + { + return $this->kind; + } + + public function getPerson(): ?Person + { + return $this->person; + } + + public function getPersonOwner(): ?Person + { + return $this->personOwner; + } + + /** + * @Groups({"read", "docgen:read"}) + */ + public function getResourceKind(): string + { + if ($this->getPerson() instanceof Person) { + return 'person'; + } + + if ($this->getThirdParty() instanceof ThirdParty) { + return 'thirdparty'; + } + + if (null !== $this->getFreeText()) { + return 'freetext'; + } + + return 'none'; + } + + public function getThirdParty(): ?ThirdParty + { + return $this->thirdParty; + } + + public function setComment(?CommentEmbeddable $comment): self + { + if (null === $comment) { + $this->comment->setComment(''); + + return $this; + } + + $this->comment = $comment; + + return $this; + } + + public function setFreeText(?string $freeText): self + { + $this->freeText = $freeText; + + if ('' !== $freeText && null !== $freeText) { + $this->setPerson(null); + $this->setThirdParty(null); + } + + if ('' === $freeText) { + $this->freeText = null; + } + + return $this; + } + + public function setKind(?PersonResourceKind $kind): self + { + $this->kind = $kind; + + return $this; + } + + public function setPerson(?Person $person): self + { + $this->person = $person; + + if (null !== $person) { + $this->setFreeText(''); + $this->setThirdParty(null); + } + + return $this; + } + + public function setPersonOwner(?Person $personOwner): self + { + $this->personOwner = $personOwner; + + return $this; + } + + public function setThirdParty(?ThirdParty $thirdParty): self + { + $this->thirdParty = $thirdParty; + + if (null !== $thirdParty) { + $this->setFreeText(''); + $this->setPerson(null); + } + + return $this; + } + + /** + * @Assert\Callback + */ + public function validate(ExecutionContextInterface $context, mixed $payload): void + { + if (null === $this->person && null === $this->thirdParty && (null === $this->freeText || '' === $this->freeText)) { + $context->buildViolation('You must associate at least one entity') + ->addViolation(); + } + + if (null !== $this->person && $this->person === $this->personOwner) { + $context->buildViolation('You cannot associate a resource with the same person') + ->addViolation(); + } + } + +} diff --git a/src/Bundle/ChillPersonBundle/Entity/Person/PersonResource.php b/src/Bundle/ChillPersonBundle/Entity/Person/PersonResource.php index dec0ea87a..0fac5689d 100644 --- a/src/Bundle/ChillPersonBundle/Entity/Person/PersonResource.php +++ b/src/Bundle/ChillPersonBundle/Entity/Person/PersonResource.php @@ -27,191 +27,16 @@ use Symfony\Component\Validator\Context\ExecutionContextInterface; #[Serializer\DiscriminatorMap(typeProperty: 'type', mapping: ['personResource' => PersonResource::class])] #[ORM\Entity] #[ORM\Table(name: 'chill_person_resource')] -class PersonResource implements TrackCreationInterface, TrackUpdateInterface +class PersonResource extends AbstractPersonResource implements TrackCreationInterface, TrackUpdateInterface { - use TrackCreationTrait; - - use TrackUpdateTrait; - - #[Groups(['read', 'docgen:read'])] - #[ORM\Embedded(class: CommentEmbeddable::class, columnPrefix: 'comment_')] - private CommentEmbeddable $comment; - - #[Groups(['read', 'docgen:read'])] - #[ORM\Column(type: \Doctrine\DBAL\Types\Types::TEXT, nullable: true)] - private ?string $freeText = null; - #[Groups(['read', 'docgen:read'])] #[ORM\Id] #[ORM\GeneratedValue] #[ORM\Column(type: \Doctrine\DBAL\Types\Types::INTEGER)] private ?int $id = null; - #[Groups(['read', 'docgen:read'])] - #[ORM\ManyToOne(targetEntity: PersonResourceKind::class, inversedBy: 'personResources')] - #[ORM\JoinColumn(nullable: true)] - private ?PersonResourceKind $kind = null; - - /** - * The person which host the owner of this resource. - */ - #[Groups(['read', 'docgen:read'])] - #[ORM\ManyToOne(targetEntity: Person::class)] - #[ORM\JoinColumn(nullable: true)] - private ?Person $person = null; - - /** - * The person linked with this resource. - */ - #[Groups(['read'])] - #[ORM\ManyToOne(targetEntity: Person::class, inversedBy: 'resources')] - #[ORM\JoinColumn(nullable: false)] - private ?Person $personOwner = null; - - #[Groups(['read', 'docgen:read'])] - #[ORM\ManyToOne(targetEntity: ThirdParty::class, inversedBy: 'personResources')] - #[ORM\JoinColumn(nullable: true)] - private ?ThirdParty $thirdParty = null; - - public function __construct() - { - $this->comment = new CommentEmbeddable(); - } - - public function getComment(): CommentEmbeddable - { - return $this->comment; - } - - public function getFreeText(): ?string - { - return $this->freeText; - } - - /** - * GETTERS. - */ public function getId(): ?int { return $this->id; } - - public function getKind(): ?PersonResourceKind - { - return $this->kind; - } - - public function getPerson(): ?Person - { - return $this->person; - } - - public function getPersonOwner(): ?Person - { - return $this->personOwner; - } - - #[Groups(['read', 'docgen:read'])] - public function getResourceKind(): string - { - if ($this->getPerson() instanceof Person) { - return 'person'; - } - - if ($this->getThirdParty() instanceof ThirdParty) { - return 'thirdparty'; - } - - if (null !== $this->getFreeText()) { - return 'freetext'; - } - - return 'none'; - } - - public function getThirdParty(): ?ThirdParty - { - return $this->thirdParty; - } - - public function setComment(?CommentEmbeddable $comment): self - { - if (null === $comment) { - $this->comment->setComment(''); - - return $this; - } - - $this->comment = $comment; - - return $this; - } - - public function setFreeText(?string $freeText): self - { - $this->freeText = $freeText; - - if ('' !== $freeText && null !== $freeText) { - $this->setPerson(null); - $this->setThirdParty(null); - } - - if ('' === $freeText) { - $this->freeText = null; - } - - return $this; - } - - public function setKind(?PersonResourceKind $kind): self - { - $this->kind = $kind; - - return $this; - } - - public function setPerson(?Person $person): self - { - $this->person = $person; - - if (null !== $person) { - $this->setFreeText(''); - $this->setThirdParty(null); - } - - return $this; - } - - public function setPersonOwner(?Person $personOwner): self - { - $this->personOwner = $personOwner; - - return $this; - } - - public function setThirdParty(?ThirdParty $thirdParty): self - { - $this->thirdParty = $thirdParty; - - if (null !== $thirdParty) { - $this->setFreeText(''); - $this->setPerson(null); - } - - return $this; - } - - #[Assert\Callback] - public function validate(ExecutionContextInterface $context, mixed $payload) - { - if (null === $this->person && null === $this->thirdParty && (null === $this->freeText || '' === $this->freeText)) { - $context->buildViolation('You must associate at least one entity') - ->addViolation(); - } - - if (null !== $this->person && $this->person === $this->personOwner) { - $context->buildViolation('You cannot associate a resource with the same person') - ->addViolation(); - } - } } From 2f9884072cc41cb868c8d33d92c37f3017a056b5 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 31 Jul 2024 15:12:36 +0200 Subject: [PATCH 111/136] Add missing use statement for Groups annotation --- .../ChillPersonBundle/Entity/Person/AbstractPersonResource.php | 1 + 1 file changed, 1 insertion(+) diff --git a/src/Bundle/ChillPersonBundle/Entity/Person/AbstractPersonResource.php b/src/Bundle/ChillPersonBundle/Entity/Person/AbstractPersonResource.php index a13670b97..c3c87dc97 100644 --- a/src/Bundle/ChillPersonBundle/Entity/Person/AbstractPersonResource.php +++ b/src/Bundle/ChillPersonBundle/Entity/Person/AbstractPersonResource.php @@ -12,6 +12,7 @@ use Chill\ThirdPartyBundle\Entity\ThirdParty; use Symfony\Component\Validator\Context\ExecutionContextInterface; use Doctrine\ORM\Mapping as ORM; use Symfony\Component\Serializer\Annotation as Serializer; +use Symfony\Component\Serializer\Annotation\Groups; use Symfony\Component\Validator\Constraints as Assert; #[ORM\MappedSuperclass] From 288a02f5b796a226f3949cdb84d3c751d867c647 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Mon, 5 Aug 2024 15:56:40 +0200 Subject: [PATCH 112/136] Undo wrong fix in export filter parcours having activity between dates Problem reported by users, wrong analysis and fix made. Behavior was in fact correct. --- .../ACPFilters/PeriodHavingActivityBetweenDatesFilter.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Bundle/ChillActivityBundle/Export/Filter/ACPFilters/PeriodHavingActivityBetweenDatesFilter.php b/src/Bundle/ChillActivityBundle/Export/Filter/ACPFilters/PeriodHavingActivityBetweenDatesFilter.php index 03cb00be1..1a006ba97 100644 --- a/src/Bundle/ChillActivityBundle/Export/Filter/ACPFilters/PeriodHavingActivityBetweenDatesFilter.php +++ b/src/Bundle/ChillActivityBundle/Export/Filter/ACPFilters/PeriodHavingActivityBetweenDatesFilter.php @@ -73,7 +73,7 @@ final readonly class PeriodHavingActivityBetweenDatesFilter implements FilterInt $qb->andWhere( $qb->expr()->exists( - 'SELECT 1 FROM '.Activity::class." {$alias} WHERE {$alias}.date >= :{$from} AND {$alias}.date < :{$to} AND {$alias}.accompanyingPeriod = activity.accompanyingPeriod AND {$alias}.id = activity.id" + 'SELECT 1 FROM '.Activity::class." {$alias} WHERE {$alias}.date >= :{$from} AND {$alias}.date < :{$to} AND {$alias}.accompanyingPeriod = activity.accompanyingPeriod" ) ); From 547a9d1369795e9983aac1065ef55a93c18868d0 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Thu, 8 Aug 2024 10:57:58 +0200 Subject: [PATCH 113/136] Downgrade bundles to v2.23.0 fix in v2.23.1 undone --- .changes/v2.23.1.md | 3 --- 1 file changed, 3 deletions(-) delete mode 100644 .changes/v2.23.1.md diff --git a/.changes/v2.23.1.md b/.changes/v2.23.1.md deleted file mode 100644 index 75e03cf61..000000000 --- a/.changes/v2.23.1.md +++ /dev/null @@ -1,3 +0,0 @@ -## v2.23.1 - 2024-07-25 -### Fixed -* Fix export activities linked to accompanying period between two dates From d52e54fd2af8c8b5859665480f29febe9e758f52 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 14 Aug 2024 13:38:58 +0200 Subject: [PATCH 114/136] Make loadDynamicPicker available within windows where dynamicPicker tags are added --- .../Resources/public/module/pick-entity/index.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/Bundle/ChillMainBundle/Resources/public/module/pick-entity/index.js b/src/Bundle/ChillMainBundle/Resources/public/module/pick-entity/index.js index 6b33c0f52..03220630f 100644 --- a/src/Bundle/ChillMainBundle/Resources/public/module/pick-entity/index.js +++ b/src/Bundle/ChillMainBundle/Resources/public/module/pick-entity/index.js @@ -159,3 +159,5 @@ document.addEventListener('DOMContentLoaded', function(e) { loadDynamicPicker(document) }) +window.loadDynamicPicker = loadDynamicPicker; + From 6445342136f3a0cfaf43ce14c6895572da7f4ed0 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 14 Aug 2024 14:23:03 +0200 Subject: [PATCH 115/136] Fix remove button not showing in CollectionType forms with allow_delete option --- .../ChillMainBundle/Resources/public/module/collection/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Bundle/ChillMainBundle/Resources/public/module/collection/index.ts b/src/Bundle/ChillMainBundle/Resources/public/module/collection/index.ts index de428335d..b48324786 100644 --- a/src/Bundle/ChillMainBundle/Resources/public/module/collection/index.ts +++ b/src/Bundle/ChillMainBundle/Resources/public/module/collection/index.ts @@ -60,7 +60,7 @@ export const handleAdd = (button: any): void => { entry.innerHTML = content; entry.classList.add('entry'); - if ("dataCollectionRegular" in collection.dataset) { + if ("collectionRegular" in collection.dataset) { initializeRemove(collection, entry); if (empty_explain !== null) { empty_explain.remove(); From c0c448fb390c665937f41342c56841cc74f544fb Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 14 Aug 2024 14:26:04 +0200 Subject: [PATCH 116/136] Remove dump from code --- .../ACPFilters/PeriodHavingActivityBetweenDatesFilter.php | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/Bundle/ChillActivityBundle/Export/Filter/ACPFilters/PeriodHavingActivityBetweenDatesFilter.php b/src/Bundle/ChillActivityBundle/Export/Filter/ACPFilters/PeriodHavingActivityBetweenDatesFilter.php index 2b30a075c..03cb00be1 100644 --- a/src/Bundle/ChillActivityBundle/Export/Filter/ACPFilters/PeriodHavingActivityBetweenDatesFilter.php +++ b/src/Bundle/ChillActivityBundle/Export/Filter/ACPFilters/PeriodHavingActivityBetweenDatesFilter.php @@ -80,8 +80,6 @@ final readonly class PeriodHavingActivityBetweenDatesFilter implements FilterInt $qb ->setParameter($from, $this->rollingDateConverter->convert($data['start_date'])) ->setParameter($to, $this->rollingDateConverter->convert($data['end_date'])); - - dump($qb->getQuery()->getResult()); } public function applyOn() From 85811cc6ae693264aa3095f0e971fa274aae0505 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 14 Aug 2024 14:45:59 +0200 Subject: [PATCH 117/136] Run php-cs-fixer and rector --- .../Entity/Person/AbstractPersonResource.php | 25 ++++++++++++------- .../Entity/Person/PersonResource.php | 7 ------ 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/src/Bundle/ChillPersonBundle/Entity/Person/AbstractPersonResource.php b/src/Bundle/ChillPersonBundle/Entity/Person/AbstractPersonResource.php index c3c87dc97..cfdf88555 100644 --- a/src/Bundle/ChillPersonBundle/Entity/Person/AbstractPersonResource.php +++ b/src/Bundle/ChillPersonBundle/Entity/Person/AbstractPersonResource.php @@ -1,5 +1,14 @@ addViolation(); } } - } diff --git a/src/Bundle/ChillPersonBundle/Entity/Person/PersonResource.php b/src/Bundle/ChillPersonBundle/Entity/Person/PersonResource.php index 0fac5689d..4c86f8c4c 100644 --- a/src/Bundle/ChillPersonBundle/Entity/Person/PersonResource.php +++ b/src/Bundle/ChillPersonBundle/Entity/Person/PersonResource.php @@ -12,17 +12,10 @@ declare(strict_types=1); namespace Chill\PersonBundle\Entity\Person; use Chill\MainBundle\Doctrine\Model\TrackCreationInterface; -use Chill\MainBundle\Doctrine\Model\TrackCreationTrait; use Chill\MainBundle\Doctrine\Model\TrackUpdateInterface; -use Chill\MainBundle\Doctrine\Model\TrackUpdateTrait; -use Chill\MainBundle\Entity\Embeddable\CommentEmbeddable; -use Chill\PersonBundle\Entity\Person; -use Chill\ThirdPartyBundle\Entity\ThirdParty; use Doctrine\ORM\Mapping as ORM; use Symfony\Component\Serializer\Annotation as Serializer; use Symfony\Component\Serializer\Annotation\Groups; -use Symfony\Component\Validator\Constraints as Assert; -use Symfony\Component\Validator\Context\ExecutionContextInterface; #[Serializer\DiscriminatorMap(typeProperty: 'type', mapping: ['personResource' => PersonResource::class])] #[ORM\Entity] From 305105faae70361ad31aee25118579d8a526dfe0 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 14 Aug 2024 15:27:00 +0200 Subject: [PATCH 118/136] Fix CalendarContextTest after faulty php cs fix --- .../Tests/Service/DocGenerator/CalendarContextTest.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Bundle/ChillCalendarBundle/Tests/Service/DocGenerator/CalendarContextTest.php b/src/Bundle/ChillCalendarBundle/Tests/Service/DocGenerator/CalendarContextTest.php index 4a4b4f7d4..c06872a66 100644 --- a/src/Bundle/ChillCalendarBundle/Tests/Service/DocGenerator/CalendarContextTest.php +++ b/src/Bundle/ChillCalendarBundle/Tests/Service/DocGenerator/CalendarContextTest.php @@ -47,7 +47,7 @@ final class CalendarContextTest extends TestCase { $expected = [ - 'track_datetime' => true, + 'trackDatetime' => true, 'askMainPerson' => true, 'mainPersonLabel' => 'docgen.calendar.Destinee', 'askThirdParty' => false, @@ -61,7 +61,7 @@ final class CalendarContextTest extends TestCase { $expected = [ - 'track_datetime' => true, + 'trackDatetime' => true, 'askMainPerson' => true, 'mainPersonLabel' => 'docgen.calendar.Destinee', 'askThirdParty' => false, From 6e2a08cae8943e959194bb059b49cb797df04cef Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 21 Aug 2024 10:22:13 +0200 Subject: [PATCH 119/136] Resolve multiple entries not being saved in collectiontype --- .../Resources/public/module/collection/index.ts | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/Bundle/ChillMainBundle/Resources/public/module/collection/index.ts b/src/Bundle/ChillMainBundle/Resources/public/module/collection/index.ts index b48324786..875e99fad 100644 --- a/src/Bundle/ChillMainBundle/Resources/public/module/collection/index.ts +++ b/src/Bundle/ChillMainBundle/Resources/public/module/collection/index.ts @@ -53,10 +53,13 @@ export const handleAdd = (button: any): void => { let empty_explain: HTMLLIElement | null = collection.querySelector('li[data-collection-empty-explain]'), entry = document.createElement('li'), - counter = collection.childNodes.length + 1, - content = prototype.replace(new RegExp('__name__', 'g'), counter.toString()), + counter = collection.querySelectorAll('li.entry').length, // Updated counter logic + content = prototype.replace(/__name__/g, counter.toString()), event = new CustomEvent('collection-add-entry', {detail: new CollectionEventPayload(collection, entry)}); + console.log(counter) + console.log(content) + entry.innerHTML = content; entry.classList.add('entry'); From 6362b98a009e9184ad648857c77c97f8a9f2eea8 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 21 Aug 2024 14:20:37 +0200 Subject: [PATCH 120/136] Specifiy https scheme for the connectAzureCheck controller method --- .../Controller/RemoteCalendarConnectAzureController.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Bundle/ChillCalendarBundle/Controller/RemoteCalendarConnectAzureController.php b/src/Bundle/ChillCalendarBundle/Controller/RemoteCalendarConnectAzureController.php index 8790617ed..392173ee6 100644 --- a/src/Bundle/ChillCalendarBundle/Controller/RemoteCalendarConnectAzureController.php +++ b/src/Bundle/ChillCalendarBundle/Controller/RemoteCalendarConnectAzureController.php @@ -42,7 +42,7 @@ class RemoteCalendarConnectAzureController ->redirect(['https://graph.microsoft.com/.default', 'offline_access'], []); } - #[Route(path: '/connect/azure/check', name: 'chill_calendar_remote_connect_azure_check')] + #[Route(path: '/connect/azure/check', name: 'chill_calendar_remote_connect_azure_check', schemes: 'https')] public function connectAzureCheck(Request $request): Response { /** @var Azure $client */ From 2bfb8fe387a2408a57f6cdb9f3f2f72e622d689a Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 21 Aug 2024 15:13:18 +0200 Subject: [PATCH 121/136] Fix delete action for accompanying periods, missed in previous correction --- .../Controller/AccompanyingCourseController.php | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseController.php b/src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseController.php index 1b2362533..754be808a 100644 --- a/src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseController.php +++ b/src/Bundle/ChillPersonBundle/Controller/AccompanyingCourseController.php @@ -109,11 +109,10 @@ final class AccompanyingCourseController extends \Symfony\Bundle\FrameworkBundle 'accompanying_period_id' => $accompanyingCourse->getId(), 'person_id' => $person_id, ])) - ->setMethod('DELETE') ->add('submit', SubmitType::class, ['label' => 'Delete']) ->getForm(); - if (Request::METHOD_DELETE === $request->getMethod()) { + if (Request::METHOD_POST === $request->getMethod()) { $form->handleRequest($request); if ($form->isValid()) { From 212230448b2b932c96cd3ab0095bbb38ed756692 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 21 Aug 2024 15:14:48 +0200 Subject: [PATCH 122/136] Add changie for fix of delete action accompanying periods --- .changes/unreleased/Fixed-20240821-151413.yaml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changes/unreleased/Fixed-20240821-151413.yaml diff --git a/.changes/unreleased/Fixed-20240821-151413.yaml b/.changes/unreleased/Fixed-20240821-151413.yaml new file mode 100644 index 000000000..c6f2a3395 --- /dev/null +++ b/.changes/unreleased/Fixed-20240821-151413.yaml @@ -0,0 +1,5 @@ +kind: Fixed +body: Fix delete action for accompanying periods in draft state +time: 2024-08-21T15:14:13.753383913+02:00 +custom: + Issue: "" From 8c0d2f58ba94ebb2e4916d4ea560b49589772f9c Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 21 Aug 2024 16:53:26 +0200 Subject: [PATCH 123/136] Add missing [ ] for schemes option --- .../Controller/RemoteCalendarConnectAzureController.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Bundle/ChillCalendarBundle/Controller/RemoteCalendarConnectAzureController.php b/src/Bundle/ChillCalendarBundle/Controller/RemoteCalendarConnectAzureController.php index 392173ee6..0a28150c4 100644 --- a/src/Bundle/ChillCalendarBundle/Controller/RemoteCalendarConnectAzureController.php +++ b/src/Bundle/ChillCalendarBundle/Controller/RemoteCalendarConnectAzureController.php @@ -42,7 +42,7 @@ class RemoteCalendarConnectAzureController ->redirect(['https://graph.microsoft.com/.default', 'offline_access'], []); } - #[Route(path: '/connect/azure/check', name: 'chill_calendar_remote_connect_azure_check', schemes: 'https')] + #[Route(path: '/connect/azure/check', name: 'chill_calendar_remote_connect_azure_check', schemes: ['https'])] public function connectAzureCheck(Request $request): Response { /** @var Azure $client */ From b689a51a480280f2828aa74f40959ccf72a6804b Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Wed, 21 Aug 2024 16:56:05 +0200 Subject: [PATCH 124/136] Changie added for fix connection to azure --- .changes/unreleased/Fixed-20240821-165537.yaml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changes/unreleased/Fixed-20240821-165537.yaml diff --git a/.changes/unreleased/Fixed-20240821-165537.yaml b/.changes/unreleased/Fixed-20240821-165537.yaml new file mode 100644 index 000000000..8778721b8 --- /dev/null +++ b/.changes/unreleased/Fixed-20240821-165537.yaml @@ -0,0 +1,5 @@ +kind: Fixed +body: Fix connection to azure when making an calendar event in chill +time: 2024-08-21T16:55:37.977150909+02:00 +custom: + Issue: "" From 58912f1d98aa35f21a4d78e85ac8c7c3cdddb995 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Thu, 22 Aug 2024 14:24:58 +0200 Subject: [PATCH 125/136] Add changie for fixes to CollectionType js --- .changes/unreleased/Fixed-20240822-142427.yaml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changes/unreleased/Fixed-20240822-142427.yaml diff --git a/.changes/unreleased/Fixed-20240822-142427.yaml b/.changes/unreleased/Fixed-20240822-142427.yaml new file mode 100644 index 000000000..720779fee --- /dev/null +++ b/.changes/unreleased/Fixed-20240822-142427.yaml @@ -0,0 +1,5 @@ +kind: Fixed +body: CollectionType js fixes for remove button and adding multiple entries +time: 2024-08-22T14:24:27.381070019+02:00 +custom: + Issue: "" From 50fb79ebbfa0e5530c7e02ff73ac26ec81ad42f2 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Mon, 26 Aug 2024 15:42:28 +0200 Subject: [PATCH 126/136] Remove enforcement of https scheme within controller method --- .../Controller/RemoteCalendarConnectAzureController.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Bundle/ChillCalendarBundle/Controller/RemoteCalendarConnectAzureController.php b/src/Bundle/ChillCalendarBundle/Controller/RemoteCalendarConnectAzureController.php index 0a28150c4..8790617ed 100644 --- a/src/Bundle/ChillCalendarBundle/Controller/RemoteCalendarConnectAzureController.php +++ b/src/Bundle/ChillCalendarBundle/Controller/RemoteCalendarConnectAzureController.php @@ -42,7 +42,7 @@ class RemoteCalendarConnectAzureController ->redirect(['https://graph.microsoft.com/.default', 'offline_access'], []); } - #[Route(path: '/connect/azure/check', name: 'chill_calendar_remote_connect_azure_check', schemes: ['https'])] + #[Route(path: '/connect/azure/check', name: 'chill_calendar_remote_connect_azure_check')] public function connectAzureCheck(Request $request): Response { /** @var Azure $client */ From 58bf722fae944c3c318da83bc67c5fed8b9fb74f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julien=20Fastr=C3=A9?= Date: Mon, 26 Aug 2024 14:21:43 +0000 Subject: [PATCH 127/136] remove the "v" prefix for file, to create release with tags starting with "v". --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index e355d95de..bb5c8dd5d 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -138,4 +138,4 @@ release: - echo "running release_job" release: tag_name: '$CI_COMMIT_TAG' - description: "./.changes/v$CI_COMMIT_TAG.md" + description: "./.changes/$CI_COMMIT_TAG.md" From d87f380f1650cafe3648b29a4746e1113cd8775c Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Mon, 26 Aug 2024 18:14:48 +0200 Subject: [PATCH 128/136] Update chill bundles to version 3.0.0 --- .changes/unreleased/Fixed-20240821-151413.yaml | 5 ----- .changes/unreleased/Fixed-20240821-165537.yaml | 5 ----- .changes/unreleased/Fixed-20240822-142427.yaml | 5 ----- .changes/v3.0.0.md | 5 +++++ CHANGELOG.md | 6 ++++++ 5 files changed, 11 insertions(+), 15 deletions(-) delete mode 100644 .changes/unreleased/Fixed-20240821-151413.yaml delete mode 100644 .changes/unreleased/Fixed-20240821-165537.yaml delete mode 100644 .changes/unreleased/Fixed-20240822-142427.yaml create mode 100644 .changes/v3.0.0.md diff --git a/.changes/unreleased/Fixed-20240821-151413.yaml b/.changes/unreleased/Fixed-20240821-151413.yaml deleted file mode 100644 index c6f2a3395..000000000 --- a/.changes/unreleased/Fixed-20240821-151413.yaml +++ /dev/null @@ -1,5 +0,0 @@ -kind: Fixed -body: Fix delete action for accompanying periods in draft state -time: 2024-08-21T15:14:13.753383913+02:00 -custom: - Issue: "" diff --git a/.changes/unreleased/Fixed-20240821-165537.yaml b/.changes/unreleased/Fixed-20240821-165537.yaml deleted file mode 100644 index 8778721b8..000000000 --- a/.changes/unreleased/Fixed-20240821-165537.yaml +++ /dev/null @@ -1,5 +0,0 @@ -kind: Fixed -body: Fix connection to azure when making an calendar event in chill -time: 2024-08-21T16:55:37.977150909+02:00 -custom: - Issue: "" diff --git a/.changes/unreleased/Fixed-20240822-142427.yaml b/.changes/unreleased/Fixed-20240822-142427.yaml deleted file mode 100644 index 720779fee..000000000 --- a/.changes/unreleased/Fixed-20240822-142427.yaml +++ /dev/null @@ -1,5 +0,0 @@ -kind: Fixed -body: CollectionType js fixes for remove button and adding multiple entries -time: 2024-08-22T14:24:27.381070019+02:00 -custom: - Issue: "" diff --git a/.changes/v3.0.0.md b/.changes/v3.0.0.md new file mode 100644 index 000000000..586e648da --- /dev/null +++ b/.changes/v3.0.0.md @@ -0,0 +1,5 @@ +## v3.0.0 - 2024-08-26 +### Fixed +* Fix delete action for accompanying periods in draft state +* Fix connection to azure when making an calendar event in chill +* CollectionType js fixes for remove button and adding multiple entries diff --git a/CHANGELOG.md b/CHANGELOG.md index 1cb810a1a..3aa0c490d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,12 @@ adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html), and is generated by [Changie](https://github.com/miniscruff/changie). +## v3.0.0 - 2024-08-26 +### Fixed +* Fix delete action for accompanying periods in draft state +* Fix connection to azure when making an calendar event in chill +* CollectionType js fixes for remove button and adding multiple entries + ## v2.23.0 - 2024-07-23 ### Feature * ([#221](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/221)) [DX] move async-upload-bundle features into chill-bundles From 85e2466611fc08bc180d995eed468daba4888378 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Tue, 27 Aug 2024 15:57:10 +0200 Subject: [PATCH 129/136] Cherry-pick phpstan fixes after rector changes --- .../ChillCalendarBundle/Entity/Calendar.php | 10 ++--- src/Bundle/ChillEventBundle/Entity/Event.php | 2 +- src/Bundle/ChillMainBundle/Entity/User.php | 14 +++---- .../Entity/Workflow/EntityWorkflow.php | 16 +++++--- .../Entity/AccompanyingPeriod.php | 38 +++++++++---------- .../Entity/Household/Household.php | 21 +++++----- .../ChillPersonBundle/Entity/Person.php | 32 ++++++++-------- 7 files changed, 69 insertions(+), 64 deletions(-) diff --git a/src/Bundle/ChillCalendarBundle/Entity/Calendar.php b/src/Bundle/ChillCalendarBundle/Entity/Calendar.php index 53949d1f0..294783704 100644 --- a/src/Bundle/ChillCalendarBundle/Entity/Calendar.php +++ b/src/Bundle/ChillCalendarBundle/Entity/Calendar.php @@ -103,7 +103,7 @@ class Calendar implements TrackCreationInterface, TrackUpdateInterface, HasCente private int $dateTimeVersion = 0; /** - * @var Collection + * @var Collection */ #[ORM\OneToMany(mappedBy: 'calendar', targetEntity: CalendarDoc::class, orphanRemoval: true)] private Collection $documents; @@ -120,12 +120,12 @@ class Calendar implements TrackCreationInterface, TrackUpdateInterface, HasCente private ?int $id = null; /** - * @var Collection&Selectable + * @var ArrayCollection */ #[Serializer\Groups(['read', 'docgen:read'])] #[ORM\OneToMany(mappedBy: 'calendar', targetEntity: Invite::class, cascade: ['persist', 'remove', 'merge', 'detach'], orphanRemoval: true)] #[ORM\JoinTable(name: 'chill_calendar.calendar_to_invites')] - private Collection&Selectable $invites; + private Collection $invites; #[Serializer\Groups(['read', 'docgen:read'])] #[Assert\NotNull(message: 'calendar.A location is required')] @@ -143,7 +143,7 @@ class Calendar implements TrackCreationInterface, TrackUpdateInterface, HasCente private ?Person $person = null; /** - * @var Collection + * @var Collection */ #[Serializer\Groups(['calendar:read', 'read', 'calendar:light', 'docgen:read'])] #[Assert\Count(min: 1, minMessage: 'calendar.At least {{ limit }} person is required.')] @@ -157,7 +157,7 @@ class Calendar implements TrackCreationInterface, TrackUpdateInterface, HasCente private PrivateCommentEmbeddable $privateComment; /** - * @var Collection + * @var Collection */ #[Serializer\Groups(['calendar:read', 'read', 'calendar:light', 'docgen:read'])] #[ORM\ManyToMany(targetEntity: ThirdParty::class)] diff --git a/src/Bundle/ChillEventBundle/Entity/Event.php b/src/Bundle/ChillEventBundle/Entity/Event.php index 4a3b4cd67..ef8e78065 100644 --- a/src/Bundle/ChillEventBundle/Entity/Event.php +++ b/src/Bundle/ChillEventBundle/Entity/Event.php @@ -192,7 +192,7 @@ class Event implements HasCenterInterface, HasScopeInterface, TrackCreationInter { $iterator = iterator_to_array($this->participations->getIterator()); - uasort($iterator, static fn ($first, $second) => strnatcasecmp((string) $first->getPerson()->getFirstName(), (string) $second->getPerson()->getFirstName())); + uasort($iterator, static fn ($first, $second) => strnatcasecmp($first->getPerson()->getFirstName(), $second->getPerson()->getFirstName())); return new \ArrayIterator($iterator); } diff --git a/src/Bundle/ChillMainBundle/Entity/User.php b/src/Bundle/ChillMainBundle/Entity/User.php index f2f299b7f..ce7a9935b 100644 --- a/src/Bundle/ChillMainBundle/Entity/User.php +++ b/src/Bundle/ChillMainBundle/Entity/User.php @@ -64,7 +64,7 @@ class User implements UserInterface, \Stringable, PasswordAuthenticatedUserInter private bool $enabled = true; /** - * @var Collection + * @var Collection */ #[ORM\ManyToMany(targetEntity: GroupCenter::class, inversedBy: 'users')] #[ORM\Cache(usage: 'NONSTRICT_READ_WRITE')] @@ -83,10 +83,10 @@ class User implements UserInterface, \Stringable, PasswordAuthenticatedUserInter private ?Location $mainLocation = null; /** - * @var Collection&Selectable + * @var ArrayCollection */ - #[ORM\OneToMany(targetEntity: UserScopeHistory::class, mappedBy: 'user', cascade: ['persist', 'remove'], orphanRemoval: true)] - private Collection&Selectable $scopeHistories; + #[ORM\OneToMany(mappedBy: 'user', targetEntity: UserScopeHistory::class, cascade: ['persist', 'remove'], orphanRemoval: true)] + private ArrayCollection $scopeHistories; #[ORM\Column(type: \Doctrine\DBAL\Types\Types::STRING, length: 255)] private string $password = ''; @@ -98,10 +98,10 @@ class User implements UserInterface, \Stringable, PasswordAuthenticatedUserInter private ?string $salt = null; /** - * @var Collection&Selectable + * @var ArrayCollection */ - #[ORM\OneToMany(targetEntity: UserJobHistory::class, mappedBy: 'user', cascade: ['persist', 'remove'], orphanRemoval: true)] - private Collection&Selectable $jobHistories; + #[ORM\OneToMany(mappedBy: 'user', targetEntity: UserJobHistory::class, cascade: ['persist', 'remove'], orphanRemoval: true)] + private ArrayCollection $jobHistories; #[ORM\Column(type: \Doctrine\DBAL\Types\Types::STRING, length: 80)] private string $username = ''; diff --git a/src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflow.php b/src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflow.php index 6df054b61..8661895d8 100644 --- a/src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflow.php +++ b/src/Bundle/ChillMainBundle/Entity/Workflow/EntityWorkflow.php @@ -21,6 +21,7 @@ use Doctrine\Common\Collections\ArrayCollection; use Doctrine\Common\Collections\Collection; use Doctrine\Common\Collections\Order; use Doctrine\ORM\Mapping as ORM; +use Exception; use Symfony\Component\Serializer\Annotation as Serializer; use Symfony\Component\Validator\Constraints as Assert; @@ -64,7 +65,7 @@ class EntityWorkflow implements TrackCreationInterface, TrackUpdateInterface public array $futureDestUsers = []; /** - * @var Collection + * @var Collection */ #[ORM\OneToMany(targetEntity: EntityWorkflowComment::class, mappedBy: 'entityWorkflow', orphanRemoval: true)] private Collection $comments; @@ -81,12 +82,12 @@ class EntityWorkflow implements TrackCreationInterface, TrackUpdateInterface private int $relatedEntityId; /** - * @var Collection + * @var ArrayCollection */ #[Assert\Valid(traverse: true)] - #[ORM\OneToMany(targetEntity: EntityWorkflowStep::class, mappedBy: 'entityWorkflow', orphanRemoval: true, cascade: ['persist'])] + #[ORM\OneToMany(mappedBy: 'entityWorkflow', targetEntity: EntityWorkflowStep::class, cascade: ['persist'], orphanRemoval: true)] #[ORM\OrderBy(['transitionAt' => \Doctrine\Common\Collections\Criteria::ASC, 'id' => 'ASC'])] - private Collection $steps; + private ArrayCollection $steps; /** * @var array|EntityWorkflowStep[]|null @@ -94,14 +95,14 @@ class EntityWorkflow implements TrackCreationInterface, TrackUpdateInterface private ?array $stepsChainedCache = null; /** - * @var Collection + * @var Collection */ #[ORM\ManyToMany(targetEntity: User::class)] #[ORM\JoinTable(name: 'chill_main_workflow_entity_subscriber_to_final')] private Collection $subscriberToFinal; /** - * @var Collection + * @var Collection */ #[ORM\ManyToMany(targetEntity: User::class)] #[ORM\JoinTable(name: 'chill_main_workflow_entity_subscriber_to_step')] @@ -276,6 +277,9 @@ class EntityWorkflow implements TrackCreationInterface, TrackUpdateInterface return $this->steps; } + /** + * @throws Exception + */ public function getStepsChained(): array { if (\is_array($this->stepsChainedCache)) { diff --git a/src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php b/src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php index 21cdaaf37..c9bf05fdb 100644 --- a/src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php +++ b/src/Bundle/ChillPersonBundle/Entity/AccompanyingPeriod.php @@ -135,14 +135,14 @@ class AccompanyingPeriod implements private ?Location $administrativeLocation = null; /** - * @var Collection&Selectable + * @var ArrayCollection */ - #[ORM\OneToMany(targetEntity: Calendar::class, mappedBy: 'accompanyingPeriod')] - private Collection&Selectable $calendars; + #[ORM\OneToMany(mappedBy: 'accompanyingPeriod', targetEntity: Calendar::class)] + private ArrayCollection $calendars; #[Groups(['read', 'write', 'docgen:read'])] #[Assert\NotBlank(groups: [AccompanyingPeriod::STEP_CLOSED])] - #[Assert\GreaterThanOrEqual(propertyPath: 'openingDate', groups: [AccompanyingPeriod::STEP_CLOSED], message: 'The closing date must be later than the date of creation')] + #[Assert\GreaterThanOrEqual(propertyPath: 'openingDate', message: 'The closing date must be later than the date of creation', groups: [AccompanyingPeriod::STEP_CLOSED])] #[ORM\Column(type: \Doctrine\DBAL\Types\Types::DATE_MUTABLE, nullable: true)] private ?\DateTime $closingDate = null; @@ -153,10 +153,10 @@ class AccompanyingPeriod implements private ?ClosingMotive $closingMotive = null; /** - * @var Collection + * @var Collection<(int|string), Comment> */ #[Assert\NotBlank(groups: [AccompanyingPeriod::STEP_DRAFT])] - #[ORM\OneToMany(targetEntity: Comment::class, mappedBy: 'accompanyingPeriod', cascade: ['persist', 'remove'], orphanRemoval: true)] + #[ORM\OneToMany(mappedBy: 'accompanyingPeriod', targetEntity: Comment::class, cascade: ['persist', 'remove'], orphanRemoval: true)] #[ORM\OrderBy(['createdAt' => Criteria::DESC, 'id' => 'DESC'])] private Collection $comments; @@ -194,9 +194,9 @@ class AccompanyingPeriod implements private ?UserJob $job = null; /** - * @var Collection + * @var Collection */ - #[ORM\OneToMany(targetEntity: AccompanyingPeriodLocationHistory::class, mappedBy: 'period', cascade: ['persist', 'remove'], orphanRemoval: true)] + #[ORM\OneToMany(mappedBy: 'period', targetEntity: AccompanyingPeriodLocationHistory::class, cascade: ['persist', 'remove'], orphanRemoval: true)] private Collection $locationHistories; #[Groups(['read', 'write', 'docgen:read'])] @@ -212,10 +212,10 @@ class AccompanyingPeriod implements private ?Origin $origin = null; /** - * @var Collection + * @var Collection */ #[Groups(['read', 'docgen:read'])] - #[ORM\OneToMany(targetEntity: AccompanyingPeriodParticipation::class, mappedBy: 'accompanyingPeriod', orphanRemoval: true, cascade: ['persist', 'refresh', 'remove', 'merge', 'detach'])] + #[ORM\OneToMany(mappedBy: 'accompanyingPeriod', targetEntity: AccompanyingPeriodParticipation::class, cascade: ['persist', 'refresh', 'remove', 'merge', 'detach'], orphanRemoval: true)] #[ParticipationOverlap(groups: [AccompanyingPeriod::STEP_DRAFT, AccompanyingPeriod::STEP_CONFIRMED])] private Collection $participations; @@ -246,7 +246,7 @@ class AccompanyingPeriod implements private ?ThirdParty $requestorThirdParty = null; /** - * @var Collection + * @var Collection */ #[Groups(['read', 'docgen:read'])] #[ORM\OneToMany(targetEntity: AccompanyingPeriod\Resource::class, mappedBy: 'accompanyingPeriod', cascade: ['persist', 'remove'], orphanRemoval: true)] @@ -254,7 +254,7 @@ class AccompanyingPeriod implements private Collection $resources; /** - * @var Collection + * @var Collection */ #[Groups(['read', 'docgen:read'])] #[Assert\Count(min: 1, groups: [AccompanyingPeriod::STEP_CONFIRMED], minMessage: 'A course must be associated to at least one scope')] @@ -263,7 +263,7 @@ class AccompanyingPeriod implements private Collection $scopes; /** - * @var Collection + * @var Collection */ #[Groups(['read', 'docgen:read'])] #[Assert\Count(min: 1, groups: [AccompanyingPeriod::STEP_CONFIRMED], minMessage: 'A course must contains at least one social issue')] @@ -279,9 +279,9 @@ class AccompanyingPeriod implements private ?string $step = self::STEP_DRAFT; /** - * @var Collection + * @var Collection */ - #[ORM\OneToMany(targetEntity: AccompanyingPeriodStepHistory::class, mappedBy: 'period', cascade: ['persist', 'remove'], orphanRemoval: true)] + #[ORM\OneToMany(mappedBy: 'period', targetEntity: AccompanyingPeriodStepHistory::class, cascade: ['persist', 'remove'], orphanRemoval: true)] private Collection $stepHistories; #[ORM\Column(type: \Doctrine\DBAL\Types\Types::DATETIME_MUTABLE, nullable: true, options: ['default' => null])] @@ -296,7 +296,7 @@ class AccompanyingPeriod implements private ?User $user = null; /** - * @var Collection + * @var Collection */ #[ORM\OneToMany(targetEntity: UserHistory::class, mappedBy: 'accompanyingPeriod', orphanRemoval: true, cascade: ['persist', 'remove'])] private Collection $userHistories; @@ -311,10 +311,10 @@ class AccompanyingPeriod implements private ?User $userPrevious = null; /** - * @var Collection + * @var Collection */ #[Assert\Valid(traverse: true)] - #[ORM\OneToMany(targetEntity: AccompanyingPeriodWork::class, mappedBy: 'accompanyingPeriod')] + #[ORM\OneToMany(mappedBy: 'accompanyingPeriod', targetEntity: AccompanyingPeriodWork::class)] private Collection $works; /** @@ -801,7 +801,7 @@ class AccompanyingPeriod implements /** * Get a list of all persons which are participating to this course. * - * @psalm-return Collection<(int|string), Person|null> + * @psalm-return Collection */ public function getPersons(): Collection { diff --git a/src/Bundle/ChillPersonBundle/Entity/Household/Household.php b/src/Bundle/ChillPersonBundle/Entity/Household/Household.php index dbc1769f5..719baddaf 100644 --- a/src/Bundle/ChillPersonBundle/Entity/Household/Household.php +++ b/src/Bundle/ChillPersonBundle/Entity/Household/Household.php @@ -21,6 +21,7 @@ use Doctrine\Common\Collections\Collection; use Doctrine\Common\Collections\Criteria; use Doctrine\Common\Collections\ReadableCollection; use Doctrine\Common\Collections\Selectable; +use Doctrine\DBAL\Types\Types; use Doctrine\ORM\Mapping as ORM; use Symfony\Component\Serializer\Annotation as Serializer; use Symfony\Component\Validator\Constraints as Assert; @@ -35,7 +36,7 @@ class Household implements HasCentersInterface /** * Addresses. * - * @var Collection
            + * @var Collection */ #[Serializer\Groups(['write'])] #[ORM\ManyToMany(targetEntity: Address::class, cascade: ['persist', 'remove', 'merge', 'detach'])] @@ -47,33 +48,33 @@ class Household implements HasCentersInterface private CommentEmbeddable $commentMembers; /** - * @var Collection&Selectable + * @var ArrayCollection */ - #[Assert\Valid(traverse: true, groups: ['household_composition'])] - #[ORM\OneToMany(targetEntity: HouseholdComposition::class, mappedBy: 'household', orphanRemoval: true, cascade: ['persist'])] + #[Assert\Valid(groups: ['household_composition'], traverse: true)] + #[ORM\OneToMany(mappedBy: 'household', targetEntity: HouseholdComposition::class, cascade: ['persist'], orphanRemoval: true)] #[ORM\OrderBy(['startDate' => Criteria::DESC])] - private Collection&Selectable $compositions; + private ArrayCollection $compositions; #[Serializer\Groups(['read', 'docgen:read'])] #[ORM\Id] #[ORM\GeneratedValue] - #[ORM\Column(type: \Doctrine\DBAL\Types\Types::INTEGER)] + #[ORM\Column(type: Types::INTEGER)] private ?int $id = null; /** - * @var Collection + * @var Collection */ #[Serializer\Groups(['read', 'docgen:read'])] - #[ORM\OneToMany(targetEntity: HouseholdMember::class, mappedBy: 'household')] + #[ORM\OneToMany(mappedBy: 'household', targetEntity: HouseholdMember::class)] private Collection $members; #[Serializer\Groups(['docgen:read'])] - #[ORM\Column(type: \Doctrine\DBAL\Types\Types::BOOLEAN, name: 'waiting_for_birth', options: ['default' => false])] + #[ORM\Column(name: 'waiting_for_birth', type: Types::BOOLEAN, options: ['default' => false])] #[Assert\Type('boolean', groups: ['household_metadata'])] private bool $waitingForBirth = false; #[Serializer\Groups(['docgen:read'])] - #[ORM\Column(type: \Doctrine\DBAL\Types\Types::DATE_IMMUTABLE, name: 'waiting_for_birth_date', nullable: true, options: ['default' => null])] + #[ORM\Column(type: Types::DATE_IMMUTABLE, name: 'waiting_for_birth_date', nullable: true, options: ['default' => null])] #[Assert\Expression('this.getWaitingForBirth() == false or value != null', message: 'The waiting for birth date must be set', groups: ['household_metadata'])] private ?\DateTimeImmutable $waitingForBirthDate = null; diff --git a/src/Bundle/ChillPersonBundle/Entity/Person.php b/src/Bundle/ChillPersonBundle/Entity/Person.php index ff9e799a3..5d4486179 100644 --- a/src/Bundle/ChillPersonBundle/Entity/Person.php +++ b/src/Bundle/ChillPersonBundle/Entity/Person.php @@ -86,7 +86,7 @@ class Person implements HasCenterInterface, TrackCreationInterface, TrackUpdateI /** * The person's accompanying periods (when the person was accompanied by the center). * - * @var Collection + * @var Collection */ #[ORM\OneToMany(targetEntity: AccompanyingPeriodParticipation::class, mappedBy: 'person', cascade: ['persist', 'remove', 'merge', 'detach'])] #[ORM\OrderBy(['startDate' => Criteria::DESC])] @@ -95,7 +95,7 @@ class Person implements HasCenterInterface, TrackCreationInterface, TrackUpdateI /** * The accompanying period requested by the Person. * - * @var Collection + * @var Collection */ #[ORM\OneToMany(targetEntity: AccompanyingPeriod::class, mappedBy: 'requestorPerson')] private Collection $accompanyingPeriodRequested; @@ -103,7 +103,7 @@ class Person implements HasCenterInterface, TrackCreationInterface, TrackUpdateI /** * Addresses. * - * @var Collection
            + * @var Collection */ #[ORM\ManyToMany(targetEntity: Address::class, cascade: ['persist', 'remove', 'merge', 'detach'])] #[ORM\JoinTable(name: 'chill_person_persons_to_addresses')] @@ -111,7 +111,7 @@ class Person implements HasCenterInterface, TrackCreationInterface, TrackUpdateI private Collection $addresses; /** - * @var Collection + * @var Collection */ #[ORM\OneToMany(targetEntity: PersonAltName::class, mappedBy: 'person', cascade: ['persist', 'remove', 'merge', 'detach'], orphanRemoval: true)] private Collection $altNames; @@ -124,13 +124,13 @@ class Person implements HasCenterInterface, TrackCreationInterface, TrackUpdateI private ?\DateTime $birthdate = null; /** - * @var Collection + * @var Collection */ #[ORM\OneToMany(targetEntity: Charge::class, mappedBy: 'person')] private Collection $budgetCharges; /** - * @var Collection + * @var Collection */ #[ORM\OneToMany(targetEntity: Resource::class, mappedBy: 'person')] private Collection $budgetResources; @@ -149,14 +149,14 @@ class Person implements HasCenterInterface, TrackCreationInterface, TrackUpdateI #[ORM\ManyToOne(targetEntity: Center::class)] private ?Center $center = null; - #[ORM\OneToOne(targetEntity: PersonCenterCurrent::class, mappedBy: 'person')] + #[ORM\OneToOne(mappedBy: 'person', targetEntity: PersonCenterCurrent::class)] private ?PersonCenterCurrent $centerCurrent = null; /** - * @var Collection + * @var ArrayCollection */ - #[ORM\OneToMany(targetEntity: PersonCenterHistory::class, mappedBy: 'person', cascade: ['persist', 'remove'])] - private Collection $centerHistory; + #[ORM\OneToMany(mappedBy: 'person', targetEntity: PersonCenterHistory::class, cascade: ['persist', 'remove'])] + private ArrayCollection $centerHistory; /** * Array where customfield's data are stored. @@ -256,13 +256,13 @@ class Person implements HasCenterInterface, TrackCreationInterface, TrackUpdateI /** * Read-only field, computed by the database. * - * @var Collection + * @var Collection */ #[ORM\OneToMany(targetEntity: PersonHouseholdAddress::class, mappedBy: 'person')] private Collection $householdAddresses; /** - * @var Collection + * @var Collection */ #[ORM\OneToMany(targetEntity: HouseholdMember::class, mappedBy: 'person')] private Collection $householdParticipations; @@ -330,14 +330,14 @@ class Person implements HasCenterInterface, TrackCreationInterface, TrackUpdateI private ?int $numberOfChildren = null; /** - * @var Collection + * @var Collection */ #[Assert\Valid(traverse: true)] #[ORM\OneToMany(targetEntity: PersonPhone::class, mappedBy: 'person', cascade: ['persist', 'remove', 'merge', 'detach'], orphanRemoval: true)] private Collection $otherPhoneNumbers; /** - * @var Collection + * @var Collection */ #[ORM\OneToMany(targetEntity: AccompanyingPeriod::class, mappedBy: 'personLocation')] private Collection $periodLocatedOn; @@ -361,7 +361,7 @@ class Person implements HasCenterInterface, TrackCreationInterface, TrackUpdateI #[ORM\Column(type: \Doctrine\DBAL\Types\Types::BOOLEAN)] private bool $proxyAccompanyingPeriodOpenState = false; // TO-DELETE ? /** - * @var Collection + * @var Collection */ #[ORM\OneToMany(targetEntity: PersonResource::class, mappedBy: 'personOwner')] private Collection $resources; @@ -1633,7 +1633,7 @@ class Person implements HasCenterInterface, TrackCreationInterface, TrackUpdateI } /** - * @param (\Doctrine\Common\Collections\Collection) $spokenLanguages + * @param (Collection) $spokenLanguages */ public function setSpokenLanguages(Collection $spokenLanguages): self { From ad47804c91e3e7a8a59d961b44afc2490ca57dc9 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Tue, 27 Aug 2024 16:20:30 +0200 Subject: [PATCH 130/136] Apply rector changes to Collection typing --- .../ChillActivityBundle/Entity/Activity.php | 14 +++++++------- .../Entity/ActivityReasonCategory.php | 4 ++-- .../src/Entity/AsideActivityCategory.php | 4 ++-- .../ChillCalendarBundle/Entity/Calendar.php | 2 +- .../Entity/CustomFieldLongChoice/Option.php | 4 ++-- .../Entity/CustomFieldsGroup.php | 4 ++-- src/Bundle/ChillEventBundle/Entity/Event.php | 6 +++--- .../ChillEventBundle/Entity/EventType.php | 6 +++--- src/Bundle/ChillMainBundle/Entity/Address.php | 2 +- src/Bundle/ChillMainBundle/Entity/Center.php | 6 +++--- .../Entity/GeographicalUnitLayer.php | 4 ++-- .../ChillMainBundle/Entity/GroupCenter.php | 2 +- .../ChillMainBundle/Entity/Notification.php | 8 ++++---- .../ChillMainBundle/Entity/PermissionsGroup.php | 6 +++--- .../ChillMainBundle/Entity/Regroupment.php | 2 +- src/Bundle/ChillMainBundle/Entity/RoleScope.php | 2 +- src/Bundle/ChillMainBundle/Entity/Scope.php | 4 ++-- .../Entity/Workflow/EntityWorkflow.php | 4 ++-- .../Entity/Workflow/EntityWorkflowStep.php | 6 +++--- .../AccompanyingPeriodWork.php | 14 +++++++------- .../AccompanyingPeriodWorkEvaluation.php | 4 ++-- .../AccompanyingPeriodWorkGoal.php | 2 +- .../Entity/AccompanyingPeriod/ClosingMotive.php | 4 ++-- .../Entity/SocialWork/Evaluation.php | 2 +- .../Entity/SocialWork/Goal.php | 4 ++-- .../Entity/SocialWork/Result.php | 8 ++++---- .../Entity/SocialWork/SocialAction.php | 10 +++++----- .../Entity/SocialWork/SocialIssue.php | 17 +++++++++-------- .../ChillTaskBundle/Entity/RecurringTask.php | 4 ++-- .../ChillTaskBundle/Entity/SingleTask.php | 4 ++-- .../ChillThirdPartyBundle/Entity/ThirdParty.php | 8 ++++---- 31 files changed, 86 insertions(+), 85 deletions(-) diff --git a/src/Bundle/ChillActivityBundle/Entity/Activity.php b/src/Bundle/ChillActivityBundle/Entity/Activity.php index 2e7bede57..9f557f9b5 100644 --- a/src/Bundle/ChillActivityBundle/Entity/Activity.php +++ b/src/Bundle/ChillActivityBundle/Entity/Activity.php @@ -80,7 +80,7 @@ class Activity implements AccompanyingPeriodLinkedWithSocialIssuesEntityInterfac private \DateTime $date; /** - * @var Collection + * @var Collection */ #[Assert\Valid(traverse: true)] #[ORM\ManyToMany(targetEntity: StoredObject::class, cascade: ['persist'])] @@ -107,7 +107,7 @@ class Activity implements AccompanyingPeriodLinkedWithSocialIssuesEntityInterfac private ?Person $person = null; /** - * @var Collection + * @var Collection */ #[Groups(['read', 'docgen:read'])] #[ORM\ManyToMany(targetEntity: Person::class)] @@ -117,7 +117,7 @@ class Activity implements AccompanyingPeriodLinkedWithSocialIssuesEntityInterfac private PrivateCommentEmbeddable $privateComment; /** - * @var Collection + * @var Collection */ #[Groups(['docgen:read'])] #[ORM\ManyToMany(targetEntity: ActivityReason::class)] @@ -132,7 +132,7 @@ class Activity implements AccompanyingPeriodLinkedWithSocialIssuesEntityInterfac private string $sentReceived = ''; /** - * @var Collection + * @var Collection */ #[Groups(['read', 'docgen:read'])] #[ORM\ManyToMany(targetEntity: SocialAction::class)] @@ -140,7 +140,7 @@ class Activity implements AccompanyingPeriodLinkedWithSocialIssuesEntityInterfac private Collection $socialActions; /** - * @var Collection + * @var Collection */ #[Groups(['read', 'docgen:read'])] #[ORM\ManyToMany(targetEntity: SocialIssue::class)] @@ -148,7 +148,7 @@ class Activity implements AccompanyingPeriodLinkedWithSocialIssuesEntityInterfac private Collection $socialIssues; /** - * @var Collection + * @var Collection */ #[Groups(['read', 'docgen:read'])] #[ORM\ManyToMany(targetEntity: ThirdParty::class)] @@ -162,7 +162,7 @@ class Activity implements AccompanyingPeriodLinkedWithSocialIssuesEntityInterfac private ?User $user = null; /** - * @var Collection + * @var Collection */ #[Groups(['read', 'docgen:read'])] #[ORM\ManyToMany(targetEntity: User::class)] diff --git a/src/Bundle/ChillActivityBundle/Entity/ActivityReasonCategory.php b/src/Bundle/ChillActivityBundle/Entity/ActivityReasonCategory.php index 9346d12a0..b31bb8731 100644 --- a/src/Bundle/ChillActivityBundle/Entity/ActivityReasonCategory.php +++ b/src/Bundle/ChillActivityBundle/Entity/ActivityReasonCategory.php @@ -40,9 +40,9 @@ class ActivityReasonCategory implements \Stringable /** * Array of ActivityReason. * - * @var Collection + * @var Collection */ - #[ORM\OneToMany(targetEntity: ActivityReason::class, mappedBy: 'category')] + #[ORM\OneToMany(mappedBy: 'category', targetEntity: ActivityReason::class)] private Collection $reasons; /** diff --git a/src/Bundle/ChillAsideActivityBundle/src/Entity/AsideActivityCategory.php b/src/Bundle/ChillAsideActivityBundle/src/Entity/AsideActivityCategory.php index 1758cdd3d..712039c5b 100644 --- a/src/Bundle/ChillAsideActivityBundle/src/Entity/AsideActivityCategory.php +++ b/src/Bundle/ChillAsideActivityBundle/src/Entity/AsideActivityCategory.php @@ -22,9 +22,9 @@ use Symfony\Component\Validator\Context\ExecutionContextInterface; class AsideActivityCategory { /** - * @var Collection + * @var Collection */ - #[ORM\OneToMany(targetEntity: AsideActivityCategory::class, mappedBy: 'parent')] + #[ORM\OneToMany(mappedBy: 'parent', targetEntity: AsideActivityCategory::class)] private Collection $children; #[ORM\Id] diff --git a/src/Bundle/ChillCalendarBundle/Entity/Calendar.php b/src/Bundle/ChillCalendarBundle/Entity/Calendar.php index 294783704..adee40de2 100644 --- a/src/Bundle/ChillCalendarBundle/Entity/Calendar.php +++ b/src/Bundle/ChillCalendarBundle/Entity/Calendar.php @@ -125,7 +125,7 @@ class Calendar implements TrackCreationInterface, TrackUpdateInterface, HasCente #[Serializer\Groups(['read', 'docgen:read'])] #[ORM\OneToMany(mappedBy: 'calendar', targetEntity: Invite::class, cascade: ['persist', 'remove', 'merge', 'detach'], orphanRemoval: true)] #[ORM\JoinTable(name: 'chill_calendar.calendar_to_invites')] - private Collection $invites; + private ArrayCollection $invites; #[Serializer\Groups(['read', 'docgen:read'])] #[Assert\NotNull(message: 'calendar.A location is required')] diff --git a/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldLongChoice/Option.php b/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldLongChoice/Option.php index f57c6f253..c8bdc6031 100644 --- a/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldLongChoice/Option.php +++ b/src/Bundle/ChillCustomFieldsBundle/Entity/CustomFieldLongChoice/Option.php @@ -23,9 +23,9 @@ class Option private bool $active = true; /** - * @var Collection