diff --git a/composer.lock b/composer.lock index b29cad0..203b1cf 100644 --- a/composer.lock +++ b/composer.lock @@ -8,16 +8,16 @@ "packages": [ { "name": "api-platform/core", - "version": "v3.2.7", + "version": "v3.2.10", "source": { "type": "git", "url": "https://github.com/api-platform/core.git", - "reference": "f297d2192652a3acd2a644707740de8cb5069221" + "reference": "05629a1229f705d1abf927d130ffd70b5dfe86bd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/api-platform/core/zipball/f297d2192652a3acd2a644707740de8cb5069221", - "reference": "f297d2192652a3acd2a644707740de8cb5069221", + "url": "https://api.github.com/repos/api-platform/core/zipball/05629a1229f705d1abf927d130ffd70b5dfe86bd", + "reference": "05629a1229f705d1abf927d130ffd70b5dfe86bd", "shasum": "" }, "require": { @@ -69,9 +69,11 @@ "phpstan/phpstan-doctrine": "^1.0", "phpstan/phpstan-phpunit": "^1.0", "phpstan/phpstan-symfony": "^1.0", + "phpunit/phpunit": "^9.5", "psr/log": "^1.0 || ^2.0 || ^3.0", "ramsey/uuid": "^3.9.7 || ^4.0", "ramsey/uuid-doctrine": "^1.4 || ^2.0", + "sebastian/comparator": "<5.0", "soyuka/contexts": "v3.3.9", "soyuka/stubs-mongodb": "^1.0", "symfony/asset": "^6.1 || ^7.0", @@ -165,22 +167,22 @@ ], "support": { "issues": "https://github.com/api-platform/core/issues", - "source": "https://github.com/api-platform/core/tree/v3.2.7" + "source": "https://github.com/api-platform/core/tree/v3.2.10" }, - "time": "2023-11-30T13:51:25+00:00" + "time": "2023-12-23T08:37:05+00:00" }, { "name": "async-aws/core", - "version": "1.20.0", + "version": "1.20.1", "source": { "type": "git", "url": "https://github.com/async-aws/core.git", - "reference": "e7a42c5cd0af44c4f3df0c4d228fe574c8ae4b68" + "reference": "7e079d52ac27b8c5a2036df8daea567c9728ee11" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/async-aws/core/zipball/e7a42c5cd0af44c4f3df0c4d228fe574c8ae4b68", - "reference": "e7a42c5cd0af44c4f3df0c4d228fe574c8ae4b68", + "url": "https://api.github.com/repos/async-aws/core/zipball/7e079d52ac27b8c5a2036df8daea567c9728ee11", + "reference": "7e079d52ac27b8c5a2036df8daea567c9728ee11", "shasum": "" }, "require": { @@ -223,7 +225,7 @@ "sts" ], "support": { - "source": "https://github.com/async-aws/core/tree/1.20.0" + "source": "https://github.com/async-aws/core/tree/1.20.1" }, "funding": [ { @@ -235,20 +237,20 @@ "type": "github" } ], - "time": "2023-08-07T20:00:50+00:00" + "time": "2023-12-13T20:52:19+00:00" }, { "name": "async-aws/ses", - "version": "1.6.0", + "version": "1.7.0", "source": { "type": "git", "url": "https://github.com/async-aws/ses.git", - "reference": "08986c131aa00321ff3c1fa3c0bccbeffa69a1da" + "reference": "3aed25813b21aeab96a60a658edf1e23531d2011" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/async-aws/ses/zipball/08986c131aa00321ff3c1fa3c0bccbeffa69a1da", - "reference": "08986c131aa00321ff3c1fa3c0bccbeffa69a1da", + "url": "https://api.github.com/repos/async-aws/ses/zipball/3aed25813b21aeab96a60a658edf1e23531d2011", + "reference": "3aed25813b21aeab96a60a658edf1e23531d2011", "shasum": "" }, "require": { @@ -259,7 +261,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.6-dev" + "dev-master": "1.7-dev" } }, "autoload": { @@ -280,7 +282,7 @@ "ses" ], "support": { - "source": "https://github.com/async-aws/ses/tree/1.6.0" + "source": "https://github.com/async-aws/ses/tree/1.7.0" }, "funding": [ { @@ -292,7 +294,7 @@ "type": "github" } ], - "time": "2023-08-07T20:00:50+00:00" + "time": "2023-12-13T20:52:19+00:00" }, { "name": "doctrine/cache", @@ -2644,16 +2646,16 @@ }, { "name": "symfony/amazon-mailer", - "version": "v6.4.0", + "version": "v6.4.2", "source": { "type": "git", "url": "https://github.com/symfony/amazon-mailer.git", - "reference": "c5984722a6ff9caba2d763edc0e32a9f55535ea6" + "reference": "d0cb11416067da8c499405ac20bad69dd24e568c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/amazon-mailer/zipball/c5984722a6ff9caba2d763edc0e32a9f55535ea6", - "reference": "c5984722a6ff9caba2d763edc0e32a9f55535ea6", + "url": "https://api.github.com/repos/symfony/amazon-mailer/zipball/d0cb11416067da8c499405ac20bad69dd24e568c", + "reference": "d0cb11416067da8c499405ac20bad69dd24e568c", "shasum": "" }, "require": { @@ -2690,7 +2692,7 @@ "description": "Symfony Amazon Mailer Bridge", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/amazon-mailer/tree/v6.4.0" + "source": "https://github.com/symfony/amazon-mailer/tree/v6.4.2" }, "funding": [ { @@ -2706,7 +2708,7 @@ "type": "tidelift" } ], - "time": "2023-05-23T16:34:37+00:00" + "time": "2023-12-10T16:15:48+00:00" }, { "name": "symfony/apache-pack", @@ -2805,16 +2807,16 @@ }, { "name": "symfony/cache", - "version": "v6.4.0", + "version": "v6.4.2", "source": { "type": "git", "url": "https://github.com/symfony/cache.git", - "reference": "ac2d25f97b17eec6e19760b6b9962a4f7c44356a" + "reference": "14a75869bbb41cb35bc5d9d322473928c6f3f978" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/cache/zipball/ac2d25f97b17eec6e19760b6b9962a4f7c44356a", - "reference": "ac2d25f97b17eec6e19760b6b9962a4f7c44356a", + "url": "https://api.github.com/repos/symfony/cache/zipball/14a75869bbb41cb35bc5d9d322473928c6f3f978", + "reference": "14a75869bbb41cb35bc5d9d322473928c6f3f978", "shasum": "" }, "require": { @@ -2881,7 +2883,7 @@ "psr6" ], "support": { - "source": "https://github.com/symfony/cache/tree/v6.4.0" + "source": "https://github.com/symfony/cache/tree/v6.4.2" }, "funding": [ { @@ -2897,7 +2899,7 @@ "type": "tidelift" } ], - "time": "2023-11-24T19:28:07+00:00" + "time": "2023-12-29T15:34:34+00:00" }, { "name": "symfony/cache-contracts", @@ -2977,16 +2979,16 @@ }, { "name": "symfony/clock", - "version": "v6.4.0", + "version": "v6.4.2", "source": { "type": "git", "url": "https://github.com/symfony/clock.git", - "reference": "48102bcc56b26d453c7f5e7f72829abc9df25a16" + "reference": "0639710e65f73cc504167958ea29be6de5c7177a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/clock/zipball/48102bcc56b26d453c7f5e7f72829abc9df25a16", - "reference": "48102bcc56b26d453c7f5e7f72829abc9df25a16", + "url": "https://api.github.com/repos/symfony/clock/zipball/0639710e65f73cc504167958ea29be6de5c7177a", + "reference": "0639710e65f73cc504167958ea29be6de5c7177a", "shasum": "" }, "require": { @@ -3031,7 +3033,7 @@ "time" ], "support": { - "source": "https://github.com/symfony/clock/tree/v6.4.0" + "source": "https://github.com/symfony/clock/tree/v6.4.2" }, "funding": [ { @@ -3047,7 +3049,7 @@ "type": "tidelift" } ], - "time": "2023-10-13T14:46:14+00:00" + "time": "2023-12-27T00:32:33+00:00" }, { "name": "symfony/config", @@ -3126,16 +3128,16 @@ }, { "name": "symfony/console", - "version": "v6.4.1", + "version": "v6.4.2", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "a550a7c99daeedef3f9d23fb82e3531525ff11fd" + "reference": "0254811a143e6bc6c8deea08b589a7e68a37f625" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/a550a7c99daeedef3f9d23fb82e3531525ff11fd", - "reference": "a550a7c99daeedef3f9d23fb82e3531525ff11fd", + "url": "https://api.github.com/repos/symfony/console/zipball/0254811a143e6bc6c8deea08b589a7e68a37f625", + "reference": "0254811a143e6bc6c8deea08b589a7e68a37f625", "shasum": "" }, "require": { @@ -3200,7 +3202,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v6.4.1" + "source": "https://github.com/symfony/console/tree/v6.4.2" }, "funding": [ { @@ -3216,20 +3218,20 @@ "type": "tidelift" } ], - "time": "2023-11-30T10:54:28+00:00" + "time": "2023-12-10T16:15:48+00:00" }, { "name": "symfony/dependency-injection", - "version": "v6.4.1", + "version": "v6.4.2", "source": { "type": "git", "url": "https://github.com/symfony/dependency-injection.git", - "reference": "f88ff6428afbeb17cc648c8003bd608534750baf" + "reference": "226ea431b1eda6f0d9f5a4b278757171960bb195" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/f88ff6428afbeb17cc648c8003bd608534750baf", - "reference": "f88ff6428afbeb17cc648c8003bd608534750baf", + "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/226ea431b1eda6f0d9f5a4b278757171960bb195", + "reference": "226ea431b1eda6f0d9f5a4b278757171960bb195", "shasum": "" }, "require": { @@ -3281,7 +3283,7 @@ "description": "Allows you to standardize and centralize the way objects are constructed in your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/dependency-injection/tree/v6.4.1" + "source": "https://github.com/symfony/dependency-injection/tree/v6.4.2" }, "funding": [ { @@ -3297,7 +3299,7 @@ "type": "tidelift" } ], - "time": "2023-12-01T14:56:37+00:00" + "time": "2023-12-28T19:16:56+00:00" }, { "name": "symfony/deprecation-contracts", @@ -3368,16 +3370,16 @@ }, { "name": "symfony/doctrine-bridge", - "version": "v6.4.0", + "version": "v6.4.2", "source": { "type": "git", "url": "https://github.com/symfony/doctrine-bridge.git", - "reference": "bd181daf2851821c3aef20b779d37002cfd2e833" + "reference": "da33f27c1dd9946afecfd1585b867551df71bf53" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/doctrine-bridge/zipball/bd181daf2851821c3aef20b779d37002cfd2e833", - "reference": "bd181daf2851821c3aef20b779d37002cfd2e833", + "url": "https://api.github.com/repos/symfony/doctrine-bridge/zipball/da33f27c1dd9946afecfd1585b867551df71bf53", + "reference": "da33f27c1dd9946afecfd1585b867551df71bf53", "shasum": "" }, "require": { @@ -3456,7 +3458,7 @@ "description": "Provides integration for Doctrine with various Symfony components", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/doctrine-bridge/tree/v6.4.0" + "source": "https://github.com/symfony/doctrine-bridge/tree/v6.4.2" }, "funding": [ { @@ -3472,20 +3474,20 @@ "type": "tidelift" } ], - "time": "2023-10-31T08:40:20+00:00" + "time": "2023-12-27T00:32:33+00:00" }, { "name": "symfony/doctrine-messenger", - "version": "v6.4.1", + "version": "v6.4.2", "source": { "type": "git", "url": "https://github.com/symfony/doctrine-messenger.git", - "reference": "7131e998fea2140a8f4203230d025696d2a07d3e" + "reference": "834dde6eb7692ffbba11c6cdf4f9c16df3e91475" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/doctrine-messenger/zipball/7131e998fea2140a8f4203230d025696d2a07d3e", - "reference": "7131e998fea2140a8f4203230d025696d2a07d3e", + "url": "https://api.github.com/repos/symfony/doctrine-messenger/zipball/834dde6eb7692ffbba11c6cdf4f9c16df3e91475", + "reference": "834dde6eb7692ffbba11c6cdf4f9c16df3e91475", "shasum": "" }, "require": { @@ -3528,7 +3530,7 @@ "description": "Symfony Doctrine Messenger Bridge", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/doctrine-messenger/tree/v6.4.1" + "source": "https://github.com/symfony/doctrine-messenger/tree/v6.4.2" }, "funding": [ { @@ -3544,20 +3546,20 @@ "type": "tidelift" } ], - "time": "2023-12-01T09:25:07+00:00" + "time": "2023-12-27T00:50:12+00:00" }, { "name": "symfony/dotenv", - "version": "v6.4.0", + "version": "v6.4.2", "source": { "type": "git", "url": "https://github.com/symfony/dotenv.git", - "reference": "d0d584a91422ddaa2c94317200d4c4e5b935555f" + "reference": "835f8d2d1022934ac038519de40b88158798c96f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dotenv/zipball/d0d584a91422ddaa2c94317200d4c4e5b935555f", - "reference": "d0d584a91422ddaa2c94317200d4c4e5b935555f", + "url": "https://api.github.com/repos/symfony/dotenv/zipball/835f8d2d1022934ac038519de40b88158798c96f", + "reference": "835f8d2d1022934ac038519de40b88158798c96f", "shasum": "" }, "require": { @@ -3602,7 +3604,7 @@ "environment" ], "support": { - "source": "https://github.com/symfony/dotenv/tree/v6.4.0" + "source": "https://github.com/symfony/dotenv/tree/v6.4.2" }, "funding": [ { @@ -3618,7 +3620,7 @@ "type": "tidelift" } ], - "time": "2023-10-26T18:19:48+00:00" + "time": "2023-12-28T19:16:56+00:00" }, { "name": "symfony/error-handler", @@ -3697,16 +3699,16 @@ }, { "name": "symfony/event-dispatcher", - "version": "v6.4.0", + "version": "v6.4.2", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "d76d2632cfc2206eecb5ad2b26cd5934082941b6" + "reference": "e95216850555cd55e71b857eb9d6c2674124603a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/d76d2632cfc2206eecb5ad2b26cd5934082941b6", - "reference": "d76d2632cfc2206eecb5ad2b26cd5934082941b6", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/e95216850555cd55e71b857eb9d6c2674124603a", + "reference": "e95216850555cd55e71b857eb9d6c2674124603a", "shasum": "" }, "require": { @@ -3757,7 +3759,7 @@ "description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/event-dispatcher/tree/v6.4.0" + "source": "https://github.com/symfony/event-dispatcher/tree/v6.4.2" }, "funding": [ { @@ -3773,7 +3775,7 @@ "type": "tidelift" } ], - "time": "2023-07-27T06:52:43+00:00" + "time": "2023-12-27T22:16:42+00:00" }, { "name": "symfony/event-dispatcher-contracts", @@ -3853,16 +3855,16 @@ }, { "name": "symfony/expression-language", - "version": "v6.4.0", + "version": "v6.4.2", "source": { "type": "git", "url": "https://github.com/symfony/expression-language.git", - "reference": "6c8b12f1e5ee5d91b812fb8628fca86e2fe5d152" + "reference": "7d63ccd5331d4164961776eced5524e891e30ad3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/expression-language/zipball/6c8b12f1e5ee5d91b812fb8628fca86e2fe5d152", - "reference": "6c8b12f1e5ee5d91b812fb8628fca86e2fe5d152", + "url": "https://api.github.com/repos/symfony/expression-language/zipball/7d63ccd5331d4164961776eced5524e891e30ad3", + "reference": "7d63ccd5331d4164961776eced5524e891e30ad3", "shasum": "" }, "require": { @@ -3897,7 +3899,7 @@ "description": "Provides an engine that can compile and evaluate expressions", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/expression-language/tree/v6.4.0" + "source": "https://github.com/symfony/expression-language/tree/v6.4.2" }, "funding": [ { @@ -3913,7 +3915,7 @@ "type": "tidelift" } ], - "time": "2023-07-27T06:52:43+00:00" + "time": "2023-12-10T16:15:48+00:00" }, { "name": "symfony/filesystem", @@ -4044,16 +4046,16 @@ }, { "name": "symfony/flex", - "version": "v2.4.2", + "version": "v2.4.3", "source": { "type": "git", "url": "https://github.com/symfony/flex.git", - "reference": "67ee785f1aedada76461de7a7ec10cd7f8ff8d36" + "reference": "6b44ac75c7f07f48159ec36c2d21ef8cf48a21b1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/flex/zipball/67ee785f1aedada76461de7a7ec10cd7f8ff8d36", - "reference": "67ee785f1aedada76461de7a7ec10cd7f8ff8d36", + "url": "https://api.github.com/repos/symfony/flex/zipball/6b44ac75c7f07f48159ec36c2d21ef8cf48a21b1", + "reference": "6b44ac75c7f07f48159ec36c2d21ef8cf48a21b1", "shasum": "" }, "require": { @@ -4089,7 +4091,7 @@ "description": "Composer plugin for Symfony", "support": { "issues": "https://github.com/symfony/flex/issues", - "source": "https://github.com/symfony/flex/tree/v2.4.2" + "source": "https://github.com/symfony/flex/tree/v2.4.3" }, "funding": [ { @@ -4105,7 +4107,7 @@ "type": "tidelift" } ], - "time": "2023-12-05T14:09:35+00:00" + "time": "2024-01-02T11:08:32+00:00" }, { "name": "symfony/form", @@ -4206,16 +4208,16 @@ }, { "name": "symfony/framework-bundle", - "version": "v6.4.1", + "version": "v6.4.2", "source": { "type": "git", "url": "https://github.com/symfony/framework-bundle.git", - "reference": "ac22d760bf9ff4440a1b6c7caef34d38b44290aa" + "reference": "c26a221e0462027d1f9d4a802ed63f8ab07a43d0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/ac22d760bf9ff4440a1b6c7caef34d38b44290aa", - "reference": "ac22d760bf9ff4440a1b6c7caef34d38b44290aa", + "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/c26a221e0462027d1f9d4a802ed63f8ab07a43d0", + "reference": "c26a221e0462027d1f9d4a802ed63f8ab07a43d0", "shasum": "" }, "require": { @@ -4243,7 +4245,7 @@ "symfony/asset": "<5.4", "symfony/asset-mapper": "<6.4", "symfony/clock": "<6.3", - "symfony/console": "<5.4", + "symfony/console": "<5.4|>=7.0", "symfony/dom-crawler": "<6.4", "symfony/dotenv": "<5.4", "symfony/form": "<5.4", @@ -4334,7 +4336,7 @@ "description": "Provides a tight integration between Symfony components and the Symfony full-stack framework", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/framework-bundle/tree/v6.4.1" + "source": "https://github.com/symfony/framework-bundle/tree/v6.4.2" }, "funding": [ { @@ -4350,20 +4352,20 @@ "type": "tidelift" } ], - "time": "2023-12-01T16:35:22+00:00" + "time": "2023-12-29T15:34:34+00:00" }, { "name": "symfony/http-client", - "version": "v6.4.0", + "version": "v6.4.2", "source": { "type": "git", "url": "https://github.com/symfony/http-client.git", - "reference": "5c584530b77aa10ae216989ffc48b4bedc9c0b29" + "reference": "fc0944665bd932cf32a7b8a1d009466afc16528f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-client/zipball/5c584530b77aa10ae216989ffc48b4bedc9c0b29", - "reference": "5c584530b77aa10ae216989ffc48b4bedc9c0b29", + "url": "https://api.github.com/repos/symfony/http-client/zipball/fc0944665bd932cf32a7b8a1d009466afc16528f", + "reference": "fc0944665bd932cf32a7b8a1d009466afc16528f", "shasum": "" }, "require": { @@ -4427,7 +4429,7 @@ "http" ], "support": { - "source": "https://github.com/symfony/http-client/tree/v6.4.0" + "source": "https://github.com/symfony/http-client/tree/v6.4.2" }, "funding": [ { @@ -4443,7 +4445,7 @@ "type": "tidelift" } ], - "time": "2023-11-28T20:55:58+00:00" + "time": "2023-12-02T12:49:56+00:00" }, { "name": "symfony/http-client-contracts", @@ -4525,16 +4527,16 @@ }, { "name": "symfony/http-foundation", - "version": "v6.4.0", + "version": "v6.4.2", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "44a6d39a9cc11e154547d882d5aac1e014440771" + "reference": "172d807f9ef3fc3fbed8377cc57c20d389269271" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/44a6d39a9cc11e154547d882d5aac1e014440771", - "reference": "44a6d39a9cc11e154547d882d5aac1e014440771", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/172d807f9ef3fc3fbed8377cc57c20d389269271", + "reference": "172d807f9ef3fc3fbed8377cc57c20d389269271", "shasum": "" }, "require": { @@ -4582,7 +4584,7 @@ "description": "Defines an object-oriented layer for the HTTP specification", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-foundation/tree/v6.4.0" + "source": "https://github.com/symfony/http-foundation/tree/v6.4.2" }, "funding": [ { @@ -4598,20 +4600,20 @@ "type": "tidelift" } ], - "time": "2023-11-20T16:41:16+00:00" + "time": "2023-12-27T22:16:42+00:00" }, { "name": "symfony/http-kernel", - "version": "v6.4.1", + "version": "v6.4.2", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "2953274c16a229b3933ef73a6898e18388e12e1b" + "reference": "13e8387320b5942d0dc408440c888e2d526efef4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/2953274c16a229b3933ef73a6898e18388e12e1b", - "reference": "2953274c16a229b3933ef73a6898e18388e12e1b", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/13e8387320b5942d0dc408440c888e2d526efef4", + "reference": "13e8387320b5942d0dc408440c888e2d526efef4", "shasum": "" }, "require": { @@ -4695,7 +4697,7 @@ "description": "Provides a structured process for converting a Request into a Response", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-kernel/tree/v6.4.1" + "source": "https://github.com/symfony/http-kernel/tree/v6.4.2" }, "funding": [ { @@ -4711,20 +4713,20 @@ "type": "tidelift" } ], - "time": "2023-12-01T17:02:02+00:00" + "time": "2023-12-30T15:31:44+00:00" }, { "name": "symfony/intl", - "version": "v6.4.0", + "version": "v6.4.2", "source": { "type": "git", "url": "https://github.com/symfony/intl.git", - "reference": "41d16f0294b9ca6e5540728580c65cfa3848fbf5" + "reference": "4f45148f7eb984ef12b1f7e123205ab904828839" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/intl/zipball/41d16f0294b9ca6e5540728580c65cfa3848fbf5", - "reference": "41d16f0294b9ca6e5540728580c65cfa3848fbf5", + "url": "https://api.github.com/repos/symfony/intl/zipball/4f45148f7eb984ef12b1f7e123205ab904828839", + "reference": "4f45148f7eb984ef12b1f7e123205ab904828839", "shasum": "" }, "require": { @@ -4777,7 +4779,7 @@ "localization" ], "support": { - "source": "https://github.com/symfony/intl/tree/v6.4.0" + "source": "https://github.com/symfony/intl/tree/v6.4.2" }, "funding": [ { @@ -4793,20 +4795,20 @@ "type": "tidelift" } ], - "time": "2023-10-28T23:12:08+00:00" + "time": "2023-12-26T18:38:00+00:00" }, { "name": "symfony/mailer", - "version": "v6.4.0", + "version": "v6.4.2", "source": { "type": "git", "url": "https://github.com/symfony/mailer.git", - "reference": "ca8dcf8892cdc5b4358ecf2528429bb5e706f7ba" + "reference": "6da89e5c9202f129717a770a03183fb140720168" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mailer/zipball/ca8dcf8892cdc5b4358ecf2528429bb5e706f7ba", - "reference": "ca8dcf8892cdc5b4358ecf2528429bb5e706f7ba", + "url": "https://api.github.com/repos/symfony/mailer/zipball/6da89e5c9202f129717a770a03183fb140720168", + "reference": "6da89e5c9202f129717a770a03183fb140720168", "shasum": "" }, "require": { @@ -4857,7 +4859,7 @@ "description": "Helps sending emails", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/mailer/tree/v6.4.0" + "source": "https://github.com/symfony/mailer/tree/v6.4.2" }, "funding": [ { @@ -4873,7 +4875,7 @@ "type": "tidelift" } ], - "time": "2023-11-12T18:02:22+00:00" + "time": "2023-12-19T09:12:31+00:00" }, { "name": "symfony/messenger", @@ -5927,16 +5929,16 @@ }, { "name": "symfony/process", - "version": "v6.4.0", + "version": "v6.4.2", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "191703b1566d97a5425dc969e4350d32b8ef17aa" + "reference": "c4b1ef0bc80533d87a2e969806172f1c2a980241" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/191703b1566d97a5425dc969e4350d32b8ef17aa", - "reference": "191703b1566d97a5425dc969e4350d32b8ef17aa", + "url": "https://api.github.com/repos/symfony/process/zipball/c4b1ef0bc80533d87a2e969806172f1c2a980241", + "reference": "c4b1ef0bc80533d87a2e969806172f1c2a980241", "shasum": "" }, "require": { @@ -5968,7 +5970,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v6.4.0" + "source": "https://github.com/symfony/process/tree/v6.4.2" }, "funding": [ { @@ -5984,7 +5986,7 @@ "type": "tidelift" } ], - "time": "2023-11-17T21:06:49+00:00" + "time": "2023-12-22T16:42:54+00:00" }, { "name": "symfony/property-access", @@ -6215,16 +6217,16 @@ }, { "name": "symfony/routing", - "version": "v6.4.1", + "version": "v6.4.2", "source": { "type": "git", "url": "https://github.com/symfony/routing.git", - "reference": "0c95c164fdba18b12523b75e64199ca3503e6d40" + "reference": "98eab13a07fddc85766f1756129c69f207ffbc21" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/routing/zipball/0c95c164fdba18b12523b75e64199ca3503e6d40", - "reference": "0c95c164fdba18b12523b75e64199ca3503e6d40", + "url": "https://api.github.com/repos/symfony/routing/zipball/98eab13a07fddc85766f1756129c69f207ffbc21", + "reference": "98eab13a07fddc85766f1756129c69f207ffbc21", "shasum": "" }, "require": { @@ -6278,7 +6280,7 @@ "url" ], "support": { - "source": "https://github.com/symfony/routing/tree/v6.4.1" + "source": "https://github.com/symfony/routing/tree/v6.4.2" }, "funding": [ { @@ -6294,7 +6296,7 @@ "type": "tidelift" } ], - "time": "2023-12-01T14:54:37+00:00" + "time": "2023-12-29T15:34:34+00:00" }, { "name": "symfony/runtime", @@ -6377,16 +6379,16 @@ }, { "name": "symfony/security-bundle", - "version": "v6.4.0", + "version": "v6.4.2", "source": { "type": "git", "url": "https://github.com/symfony/security-bundle.git", - "reference": "4fd31b7cb2a18f62c5a8588b82a44fd240b41a9e" + "reference": "97d4fb6dbee700937738036ec54b0fcb0641d7d6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/security-bundle/zipball/4fd31b7cb2a18f62c5a8588b82a44fd240b41a9e", - "reference": "4fd31b7cb2a18f62c5a8588b82a44fd240b41a9e", + "url": "https://api.github.com/repos/symfony/security-bundle/zipball/97d4fb6dbee700937738036ec54b0fcb0641d7d6", + "reference": "97d4fb6dbee700937738036ec54b0fcb0641d7d6", "shasum": "" }, "require": { @@ -6469,7 +6471,7 @@ "description": "Provides a tight integration of the Security component into the Symfony full-stack framework", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/security-bundle/tree/v6.4.0" + "source": "https://github.com/symfony/security-bundle/tree/v6.4.2" }, "funding": [ { @@ -6485,7 +6487,7 @@ "type": "tidelift" } ], - "time": "2023-10-31T14:46:20+00:00" + "time": "2023-12-24T09:11:31+00:00" }, { "name": "symfony/security-core", @@ -6730,16 +6732,16 @@ }, { "name": "symfony/serializer", - "version": "v6.4.1", + "version": "v6.4.2", "source": { "type": "git", "url": "https://github.com/symfony/serializer.git", - "reference": "7ead272e62c9567df619ef3c49809bf934ddbc1f" + "reference": "f87ea9d7bfd4cf2f7b72be554607e6c96e6664af" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/serializer/zipball/7ead272e62c9567df619ef3c49809bf934ddbc1f", - "reference": "7ead272e62c9567df619ef3c49809bf934ddbc1f", + "url": "https://api.github.com/repos/symfony/serializer/zipball/f87ea9d7bfd4cf2f7b72be554607e6c96e6664af", + "reference": "f87ea9d7bfd4cf2f7b72be554607e6c96e6664af", "shasum": "" }, "require": { @@ -6808,7 +6810,7 @@ "description": "Handles serializing and deserializing data structures, including object graphs, into array structures or other formats like XML and JSON.", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/serializer/tree/v6.4.1" + "source": "https://github.com/symfony/serializer/tree/v6.4.2" }, "funding": [ { @@ -6824,25 +6826,25 @@ "type": "tidelift" } ], - "time": "2023-12-01T14:54:37+00:00" + "time": "2023-12-29T15:34:34+00:00" }, { "name": "symfony/service-contracts", - "version": "v3.4.0", + "version": "v3.4.1", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "b3313c2dbffaf71c8de2934e2ea56ed2291a3838" + "reference": "fe07cbc8d837f60caf7018068e350cc5163681a0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/b3313c2dbffaf71c8de2934e2ea56ed2291a3838", - "reference": "b3313c2dbffaf71c8de2934e2ea56ed2291a3838", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/fe07cbc8d837f60caf7018068e350cc5163681a0", + "reference": "fe07cbc8d837f60caf7018068e350cc5163681a0", "shasum": "" }, "require": { "php": ">=8.1", - "psr/container": "^2.0" + "psr/container": "^1.1|^2.0" }, "conflict": { "ext-psr": "<1.1|>=2" @@ -6890,7 +6892,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/service-contracts/tree/v3.4.0" + "source": "https://github.com/symfony/service-contracts/tree/v3.4.1" }, "funding": [ { @@ -6906,7 +6908,7 @@ "type": "tidelift" } ], - "time": "2023-07-30T20:28:31+00:00" + "time": "2023-12-26T14:02:43+00:00" }, { "name": "symfony/stopwatch", @@ -6972,16 +6974,16 @@ }, { "name": "symfony/string", - "version": "v6.4.0", + "version": "v6.4.2", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "b45fcf399ea9c3af543a92edf7172ba21174d809" + "reference": "7cb80bc10bfcdf6b5492741c0b9357dac66940bc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/b45fcf399ea9c3af543a92edf7172ba21174d809", - "reference": "b45fcf399ea9c3af543a92edf7172ba21174d809", + "url": "https://api.github.com/repos/symfony/string/zipball/7cb80bc10bfcdf6b5492741c0b9357dac66940bc", + "reference": "7cb80bc10bfcdf6b5492741c0b9357dac66940bc", "shasum": "" }, "require": { @@ -7038,7 +7040,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v6.4.0" + "source": "https://github.com/symfony/string/tree/v6.4.2" }, "funding": [ { @@ -7054,20 +7056,20 @@ "type": "tidelift" } ], - "time": "2023-11-28T20:41:49+00:00" + "time": "2023-12-10T16:15:48+00:00" }, { "name": "symfony/translation", - "version": "v6.4.0", + "version": "v6.4.2", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "b1035dbc2a344b21f8fa8ac451c7ecec4ea45f37" + "reference": "a2ab2ec1a462e53016de8e8d5e8912bfd62ea681" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/b1035dbc2a344b21f8fa8ac451c7ecec4ea45f37", - "reference": "b1035dbc2a344b21f8fa8ac451c7ecec4ea45f37", + "url": "https://api.github.com/repos/symfony/translation/zipball/a2ab2ec1a462e53016de8e8d5e8912bfd62ea681", + "reference": "a2ab2ec1a462e53016de8e8d5e8912bfd62ea681", "shasum": "" }, "require": { @@ -7133,7 +7135,7 @@ "description": "Provides tools to internationalize your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/translation/tree/v6.4.0" + "source": "https://github.com/symfony/translation/tree/v6.4.2" }, "funding": [ { @@ -7149,20 +7151,20 @@ "type": "tidelift" } ], - "time": "2023-11-29T08:14:36+00:00" + "time": "2023-12-18T09:25:29+00:00" }, { "name": "symfony/translation-contracts", - "version": "v3.4.0", + "version": "v3.4.1", "source": { "type": "git", "url": "https://github.com/symfony/translation-contracts.git", - "reference": "dee0c6e5b4c07ce851b462530088e64b255ac9c5" + "reference": "06450585bf65e978026bda220cdebca3f867fde7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/dee0c6e5b4c07ce851b462530088e64b255ac9c5", - "reference": "dee0c6e5b4c07ce851b462530088e64b255ac9c5", + "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/06450585bf65e978026bda220cdebca3f867fde7", + "reference": "06450585bf65e978026bda220cdebca3f867fde7", "shasum": "" }, "require": { @@ -7211,7 +7213,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/translation-contracts/tree/v3.4.0" + "source": "https://github.com/symfony/translation-contracts/tree/v3.4.1" }, "funding": [ { @@ -7227,20 +7229,20 @@ "type": "tidelift" } ], - "time": "2023-07-25T15:08:44+00:00" + "time": "2023-12-26T14:02:43+00:00" }, { "name": "symfony/twig-bridge", - "version": "v6.4.0", + "version": "v6.4.2", "source": { "type": "git", "url": "https://github.com/symfony/twig-bridge.git", - "reference": "142bc3ad4a61d7eedf7cc21d8ef2bd8a8e7417bf" + "reference": "97af829e4733125ee70e806694d56165c60b4ee1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/twig-bridge/zipball/142bc3ad4a61d7eedf7cc21d8ef2bd8a8e7417bf", - "reference": "142bc3ad4a61d7eedf7cc21d8ef2bd8a8e7417bf", + "url": "https://api.github.com/repos/symfony/twig-bridge/zipball/97af829e4733125ee70e806694d56165c60b4ee1", + "reference": "97af829e4733125ee70e806694d56165c60b4ee1", "shasum": "" }, "require": { @@ -7320,7 +7322,7 @@ "description": "Provides integration for Twig with various Symfony components", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/twig-bridge/tree/v6.4.0" + "source": "https://github.com/symfony/twig-bridge/tree/v6.4.2" }, "funding": [ { @@ -7336,7 +7338,7 @@ "type": "tidelift" } ], - "time": "2023-11-25T08:25:13+00:00" + "time": "2023-12-15T12:36:48+00:00" }, { "name": "symfony/twig-bundle", @@ -7424,16 +7426,16 @@ }, { "name": "symfony/validator", - "version": "v6.4.0", + "version": "v6.4.2", "source": { "type": "git", "url": "https://github.com/symfony/validator.git", - "reference": "33e1f3bb76ef70e3170e12f878aefb9c69b0fc4c" + "reference": "15fe2c6ed815b06b6b8636d8ba3ef9807ee1a75c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/validator/zipball/33e1f3bb76ef70e3170e12f878aefb9c69b0fc4c", - "reference": "33e1f3bb76ef70e3170e12f878aefb9c69b0fc4c", + "url": "https://api.github.com/repos/symfony/validator/zipball/15fe2c6ed815b06b6b8636d8ba3ef9807ee1a75c", + "reference": "15fe2c6ed815b06b6b8636d8ba3ef9807ee1a75c", "shasum": "" }, "require": { @@ -7500,7 +7502,7 @@ "description": "Provides tools to validate values", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/validator/tree/v6.4.0" + "source": "https://github.com/symfony/validator/tree/v6.4.2" }, "funding": [ { @@ -7516,20 +7518,20 @@ "type": "tidelift" } ], - "time": "2023-11-29T07:47:42+00:00" + "time": "2023-12-29T16:34:12+00:00" }, { "name": "symfony/var-dumper", - "version": "v6.4.0", + "version": "v6.4.2", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "c40f7d17e91d8b407582ed51a2bbf83c52c367f6" + "reference": "68d6573ec98715ddcae5a0a85bee3c1c27a4c33f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/c40f7d17e91d8b407582ed51a2bbf83c52c367f6", - "reference": "c40f7d17e91d8b407582ed51a2bbf83c52c367f6", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/68d6573ec98715ddcae5a0a85bee3c1c27a4c33f", + "reference": "68d6573ec98715ddcae5a0a85bee3c1c27a4c33f", "shasum": "" }, "require": { @@ -7585,7 +7587,7 @@ "dump" ], "support": { - "source": "https://github.com/symfony/var-dumper/tree/v6.4.0" + "source": "https://github.com/symfony/var-dumper/tree/v6.4.2" }, "funding": [ { @@ -7601,20 +7603,20 @@ "type": "tidelift" } ], - "time": "2023-11-09T08:28:32+00:00" + "time": "2023-12-28T19:16:56+00:00" }, { "name": "symfony/var-exporter", - "version": "v6.4.1", + "version": "v6.4.2", "source": { "type": "git", "url": "https://github.com/symfony/var-exporter.git", - "reference": "2d08ca6b9cc704dce525615d1e6d1788734f36d9" + "reference": "5fe9a0021b8d35e67d914716ec8de50716a68e7e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-exporter/zipball/2d08ca6b9cc704dce525615d1e6d1788734f36d9", - "reference": "2d08ca6b9cc704dce525615d1e6d1788734f36d9", + "url": "https://api.github.com/repos/symfony/var-exporter/zipball/5fe9a0021b8d35e67d914716ec8de50716a68e7e", + "reference": "5fe9a0021b8d35e67d914716ec8de50716a68e7e", "shasum": "" }, "require": { @@ -7660,7 +7662,7 @@ "serialize" ], "support": { - "source": "https://github.com/symfony/var-exporter/tree/v6.4.1" + "source": "https://github.com/symfony/var-exporter/tree/v6.4.2" }, "funding": [ { @@ -7676,7 +7678,7 @@ "type": "tidelift" } ], - "time": "2023-11-30T10:32:10+00:00" + "time": "2023-12-27T08:18:35+00:00" }, { "name": "symfony/web-link", @@ -10610,16 +10612,16 @@ }, { "name": "symfony/phpunit-bridge", - "version": "v6.4.1", + "version": "v6.4.2", "source": { "type": "git", "url": "https://github.com/symfony/phpunit-bridge.git", - "reference": "cca5373a41d45edbeaf38b7b67f376da2205ff95" + "reference": "bd0455b7888e4adac29cf175d819c51f88fed942" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/phpunit-bridge/zipball/cca5373a41d45edbeaf38b7b67f376da2205ff95", - "reference": "cca5373a41d45edbeaf38b7b67f376da2205ff95", + "url": "https://api.github.com/repos/symfony/phpunit-bridge/zipball/bd0455b7888e4adac29cf175d819c51f88fed942", + "reference": "bd0455b7888e4adac29cf175d819c51f88fed942", "shasum": "" }, "require": { @@ -10671,7 +10673,7 @@ "description": "Provides utilities for PHPUnit, especially user deprecation notices management", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/phpunit-bridge/tree/v6.4.1" + "source": "https://github.com/symfony/phpunit-bridge/tree/v6.4.2" }, "funding": [ { @@ -10687,20 +10689,20 @@ "type": "tidelift" } ], - "time": "2023-12-01T09:25:07+00:00" + "time": "2023-12-19T09:12:31+00:00" }, { "name": "symfony/web-profiler-bundle", - "version": "v6.4.0", + "version": "v6.4.2", "source": { "type": "git", "url": "https://github.com/symfony/web-profiler-bundle.git", - "reference": "14752d3fb77c3c69b6cee7c03c06e2d6494a196b" + "reference": "38462d16856740ec0d1ba2cb902eebf09100dde2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/web-profiler-bundle/zipball/14752d3fb77c3c69b6cee7c03c06e2d6494a196b", - "reference": "14752d3fb77c3c69b6cee7c03c06e2d6494a196b", + "url": "https://api.github.com/repos/symfony/web-profiler-bundle/zipball/38462d16856740ec0d1ba2cb902eebf09100dde2", + "reference": "38462d16856740ec0d1ba2cb902eebf09100dde2", "shasum": "" }, "require": { @@ -10753,7 +10755,7 @@ "dev" ], "support": { - "source": "https://github.com/symfony/web-profiler-bundle/tree/v6.4.0" + "source": "https://github.com/symfony/web-profiler-bundle/tree/v6.4.2" }, "funding": [ { @@ -10769,7 +10771,7 @@ "type": "tidelift" } ], - "time": "2023-11-07T14:57:07+00:00" + "time": "2023-12-27T08:18:35+00:00" }, { "name": "theofidry/alice-data-fixtures", @@ -10931,5 +10933,5 @@ "ext-iconv": "*" }, "platform-dev": [], - "plugin-api-version": "2.3.0" + "plugin-api-version": "2.6.0" } diff --git a/docker/etc/nginx/custom/headers.conf b/docker/etc/nginx/custom/headers.conf index e1d4c39..1f61f28 100644 --- a/docker/etc/nginx/custom/headers.conf +++ b/docker/etc/nginx/custom/headers.conf @@ -1,5 +1,5 @@ # Add security headers. -add_header Content-Security-Policy "worker-src 'self' blob:; script-src https: bam.nr-data.net 'unsafe-inline'; img-src 'self' data: https:; font-src https: fonts.googleapis.com; connect-src https: bam.nr-data.net; report-uri /report-csp-violation; upgrade-insecure-requests"; +add_header Content-Security-Policy "worker-src 'self' blob:; script-src 'unsafe-inline'; img-src 'self' data: https:; font-src https: fonts.googleapis.com; report-uri /report-csp-violation; upgrade-insecure-requests"; add_header Referrer-Policy "strict-origin-when-cross-origin"; add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload; always;"; add_header X-Content-Options "nosniff"; diff --git a/src/Entity/KeyFigures.php b/src/Entity/KeyFigures.php index 3c56b2c..04ae14f 100644 --- a/src/Entity/KeyFigures.php +++ b/src/Entity/KeyFigures.php @@ -98,7 +98,31 @@ ], ), ), - // OCHA Presence years. + // OCHA Presences. + new GetCollection( + uriTemplate: '/key_figures/ocha-presences/{ocha_presence_id}', + uriVariables: [ + 'ocha_presence_id' => new Link( + fromClass: OchaPresence::class, + fromProperty: 'id' + ) + ], + output: SimpleStringObject::class, + provider: KeyFiguresOchaPresenceFiguresStateProvider::class, + openapi: new OpenApiOperation( + summary: 'Get a list OCHA presences key figures', + description: 'Get a list of OCHA presences key figures', + tags: [ + 'Key Figures', + ], + responses: [ + '200' => [ + 'description' => 'Array of OCHA presences key figures', + ], + ], + ), + ), + // OCHA Presence years. new GetCollection( uriTemplate: '/key_figures/ocha-presences/{ocha_presence_id}/years', uriVariables: [ diff --git a/src/Repository/KeyFiguresRepository.php b/src/Repository/KeyFiguresRepository.php index 8a59a57..5e5023a 100644 --- a/src/Repository/KeyFiguresRepository.php +++ b/src/Repository/KeyFiguresRepository.php @@ -180,14 +180,23 @@ public function getOchaPresenceFigures($provider, $ocha_presence_id, $year, $fig $qb->andWhere($qb->expr()->eq('opei.ochaPresence', ':ocha_presence_id')) ->setParameter(':ocha_presence_id', $ocha_presence_id); - $qb->andWhere($qb->expr()->eq('opei.year', ':year')) - ->setParameter(':year', $year); + if (is_array($year)) { + $qb->andWhere($qb->expr()->in('opei.year', ':year')) + ->setParameter(':year', $year); + } + else { + $qb->andWhere($qb->expr()->eq('opei.year', ':year')) + ->setParameter(':year', $year); + } if (!empty($figure_ids)) { $qb->andWhere($qb->expr()->in('kf.figureId', ':figure_ids')) ->setParameter(':figure_ids', $figure_ids); } + // Force sort by year descending. + $qb->orderBy('opei.year', 'DESC'); + return $qb->getQuery() ->getResult() ; diff --git a/src/State/KeyFigures/KeyFiguresOchaPresenceFiguresStateProvider.php b/src/State/KeyFigures/KeyFiguresOchaPresenceFiguresStateProvider.php index 84d1e2b..bb39f92 100644 --- a/src/State/KeyFigures/KeyFiguresOchaPresenceFiguresStateProvider.php +++ b/src/State/KeyFigures/KeyFiguresOchaPresenceFiguresStateProvider.php @@ -24,22 +24,30 @@ public function provide(Operation $operation, array $uriVariables = [], array $c { $this->checkProviderAccess($operation, $context); - $figure_ids = []; + // Year comes from URI or query parameter. + $year = $uriVariables['year'] ?? date('Y'); + $figure_ids = []; $uri = $context['uri'] ?? ''; + if (!empty($uri)) { $query = parse_url($uri, PHP_URL_QUERY); parse_str($query, $parsed); + if (isset($parsed['figure_id'])) { $figure_ids = $parsed['figure_id']; if (!is_array($figure_ids)) { $figure_ids = [$figure_ids]; } } + + if (isset($parsed['year'])) { + $year = $parsed['year']; + } } $provider = $this->getProvider($operation, $context); - return $this->repository->getOchaPresenceFigures($provider, $uriVariables['ocha_presence_id'], $uriVariables['year'], $figure_ids); + return $this->repository->getOchaPresenceFigures($provider, $uriVariables['ocha_presence_id'], $year, $figure_ids); } }