diff --git a/composer.json b/composer.json index 7c6061a..8f2e491 100644 --- a/composer.json +++ b/composer.json @@ -2,7 +2,7 @@ "name": "stacha/back-end", "type": "project", "description": "Back-end for our applications.", - "version": "0.1.2", + "version": "0.2.0", "license": "MIT", "authors": [ { diff --git a/composer.lock b/composer.lock index 9fbc25f..8408960 100644 --- a/composer.lock +++ b/composer.lock @@ -1750,16 +1750,16 @@ }, { "name": "symfony/console", - "version": "v5.2.4", + "version": "v5.2.5", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "d6d0cc30d8c0fda4e7b213c20509b0159a8f4556" + "reference": "938ebbadae1b0a9c9d1ec313f87f9708609f1b79" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/d6d0cc30d8c0fda4e7b213c20509b0159a8f4556", - "reference": "d6d0cc30d8c0fda4e7b213c20509b0159a8f4556", + "url": "https://api.github.com/repos/symfony/console/zipball/938ebbadae1b0a9c9d1ec313f87f9708609f1b79", + "reference": "938ebbadae1b0a9c9d1ec313f87f9708609f1b79", "shasum": "" }, "require": { @@ -1827,7 +1827,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v5.2.4" + "source": "https://github.com/symfony/console/tree/v5.2.5" }, "funding": [ { @@ -1843,7 +1843,7 @@ "type": "tidelift" } ], - "time": "2021-02-23T10:08:49+00:00" + "time": "2021-03-06T13:42:15+00:00" }, { "name": "symfony/contracts", @@ -1946,16 +1946,16 @@ }, { "name": "symfony/filesystem", - "version": "v5.2.4", + "version": "v5.2.5", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "710d364200997a5afde34d9fe57bd52f3cc1e108" + "reference": "b84b3a9461a96e295e3c452caae277450f89fcbe" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/710d364200997a5afde34d9fe57bd52f3cc1e108", - "reference": "710d364200997a5afde34d9fe57bd52f3cc1e108", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/b84b3a9461a96e295e3c452caae277450f89fcbe", + "reference": "b84b3a9461a96e295e3c452caae277450f89fcbe", "shasum": "" }, "require": { @@ -1988,7 +1988,7 @@ "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/filesystem/tree/v5.2.4" + "source": "https://github.com/symfony/filesystem/tree/v5.2.5" }, "funding": [ { @@ -2004,7 +2004,7 @@ "type": "tidelift" } ], - "time": "2021-02-12T10:38:38+00:00" + "time": "2021-02-12T10:47:00+00:00" }, { "name": "symfony/polyfill-ctype", @@ -2494,16 +2494,16 @@ }, { "name": "symfony/stopwatch", - "version": "v5.2.4", + "version": "v5.2.5", "source": { "type": "git", "url": "https://github.com/symfony/stopwatch.git", - "reference": "b12274acfab9d9850c52583d136a24398cdf1a0c" + "reference": "f0302d2c69902b195f6bec61dc0bc52736c38b93" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/stopwatch/zipball/b12274acfab9d9850c52583d136a24398cdf1a0c", - "reference": "b12274acfab9d9850c52583d136a24398cdf1a0c", + "url": "https://api.github.com/repos/symfony/stopwatch/zipball/f0302d2c69902b195f6bec61dc0bc52736c38b93", + "reference": "f0302d2c69902b195f6bec61dc0bc52736c38b93", "shasum": "" }, "require": { @@ -2536,7 +2536,7 @@ "description": "Provides a way to profile code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/stopwatch/tree/v5.2.4" + "source": "https://github.com/symfony/stopwatch/tree/v5.2.5" }, "funding": [ { @@ -2552,7 +2552,7 @@ "type": "tidelift" } ], - "time": "2021-01-27T10:15:41+00:00" + "time": "2021-01-11T09:51:46+00:00" }, { "name": "symfony/string", @@ -5904,16 +5904,16 @@ }, { "name": "symfony/cache", - "version": "v5.2.4", + "version": "v5.2.5", "source": { "type": "git", "url": "https://github.com/symfony/cache.git", - "reference": "d15fb2576cdbe2c40d7c851e62f85b0faff3dd3d" + "reference": "1a42ca3a1d416070745d34626d6129973927cc5f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/cache/zipball/d15fb2576cdbe2c40d7c851e62f85b0faff3dd3d", - "reference": "d15fb2576cdbe2c40d7c851e62f85b0faff3dd3d", + "url": "https://api.github.com/repos/symfony/cache/zipball/1a42ca3a1d416070745d34626d6129973927cc5f", + "reference": "1a42ca3a1d416070745d34626d6129973927cc5f", "shasum": "" }, "require": { @@ -5979,7 +5979,7 @@ "psr6" ], "support": { - "source": "https://github.com/symfony/cache/tree/v5.2.4" + "source": "https://github.com/symfony/cache/tree/v5.2.5" }, "funding": [ { @@ -5995,20 +5995,20 @@ "type": "tidelift" } ], - "time": "2021-02-25T23:54:56+00:00" + "time": "2021-03-09T08:28:49+00:00" }, { "name": "symfony/config", - "version": "v5.2.4", + "version": "v5.2.5", "source": { "type": "git", "url": "https://github.com/symfony/config.git", - "reference": "212d54675bf203ff8aef7d8cee8eecfb72f4a263" + "reference": "2740b1695d3a9275a62f43fa01da1ac492c17930" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/config/zipball/212d54675bf203ff8aef7d8cee8eecfb72f4a263", - "reference": "212d54675bf203ff8aef7d8cee8eecfb72f4a263", + "url": "https://api.github.com/repos/symfony/config/zipball/2740b1695d3a9275a62f43fa01da1ac492c17930", + "reference": "2740b1695d3a9275a62f43fa01da1ac492c17930", "shasum": "" }, "require": { @@ -6057,7 +6057,7 @@ "description": "Helps you find, load, combine, autofill and validate configuration values of any kind", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/config/tree/v5.2.4" + "source": "https://github.com/symfony/config/tree/v5.2.5" }, "funding": [ { @@ -6073,20 +6073,20 @@ "type": "tidelift" } ], - "time": "2021-02-23T23:58:19+00:00" + "time": "2021-02-24T13:36:13+00:00" }, { "name": "symfony/dependency-injection", - "version": "v5.2.4", + "version": "v5.2.5", "source": { "type": "git", "url": "https://github.com/symfony/dependency-injection.git", - "reference": "f7d89110c55d88620dc811f342f94393b8a045d4" + "reference": "be0c7926f5729b15e4e79fd2bf917cac584b1970" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/f7d89110c55d88620dc811f342f94393b8a045d4", - "reference": "f7d89110c55d88620dc811f342f94393b8a045d4", + "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/be0c7926f5729b15e4e79fd2bf917cac584b1970", + "reference": "be0c7926f5729b15e4e79fd2bf917cac584b1970", "shasum": "" }, "require": { @@ -6144,7 +6144,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/v5.2.4" + "source": "https://github.com/symfony/dependency-injection/tree/v5.2.5" }, "funding": [ { @@ -6160,7 +6160,7 @@ "type": "tidelift" } ], - "time": "2021-03-04T15:41:09+00:00" + "time": "2021-03-05T20:13:41+00:00" }, { "name": "symfony/dom-crawler", @@ -6238,16 +6238,16 @@ }, { "name": "symfony/dotenv", - "version": "v5.2.4", + "version": "v5.2.5", "source": { "type": "git", "url": "https://github.com/symfony/dotenv.git", - "reference": "783f12027c6b40ab0e93d6136d9f642d1d67cd6b" + "reference": "f4f1b78f7b50aa7f1de3b038041063fbbab3218e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dotenv/zipball/783f12027c6b40ab0e93d6136d9f642d1d67cd6b", - "reference": "783f12027c6b40ab0e93d6136d9f642d1d67cd6b", + "url": "https://api.github.com/repos/symfony/dotenv/zipball/f4f1b78f7b50aa7f1de3b038041063fbbab3218e", + "reference": "f4f1b78f7b50aa7f1de3b038041063fbbab3218e", "shasum": "" }, "require": { @@ -6288,7 +6288,7 @@ "environment" ], "support": { - "source": "https://github.com/symfony/dotenv/tree/v5.2.4" + "source": "https://github.com/symfony/dotenv/tree/v5.2.5" }, "funding": [ { @@ -6304,20 +6304,20 @@ "type": "tidelift" } ], - "time": "2021-01-27T10:01:46+00:00" + "time": "2021-01-11T10:34:08+00:00" }, { "name": "symfony/error-handler", - "version": "v5.2.4", + "version": "v5.2.5", "source": { "type": "git", "url": "https://github.com/symfony/error-handler.git", - "reference": "b547d3babcab5c31e01de59ee33e9d9c1421d7d0" + "reference": "bc14c25d6a560562731e6167a694cdee4658fe45" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/error-handler/zipball/b547d3babcab5c31e01de59ee33e9d9c1421d7d0", - "reference": "b547d3babcab5c31e01de59ee33e9d9c1421d7d0", + "url": "https://api.github.com/repos/symfony/error-handler/zipball/bc14c25d6a560562731e6167a694cdee4658fe45", + "reference": "bc14c25d6a560562731e6167a694cdee4658fe45", "shasum": "" }, "require": { @@ -6357,7 +6357,7 @@ "description": "Provides tools to manage errors and ease debugging PHP code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/error-handler/tree/v5.2.4" + "source": "https://github.com/symfony/error-handler/tree/v5.2.5" }, "funding": [ { @@ -6373,20 +6373,20 @@ "type": "tidelift" } ], - "time": "2021-02-11T08:21:20+00:00" + "time": "2021-02-11T08:21:33+00:00" }, { "name": "symfony/event-dispatcher", - "version": "v5.2.4", + "version": "v5.2.5", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "d08d6ec121a425897951900ab692b612a61d6240" + "reference": "bcbfcf5fdfec7d4ae8133bfa76a756831b6f46c6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/d08d6ec121a425897951900ab692b612a61d6240", - "reference": "d08d6ec121a425897951900ab692b612a61d6240", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/bcbfcf5fdfec7d4ae8133bfa76a756831b6f46c6", + "reference": "bcbfcf5fdfec7d4ae8133bfa76a756831b6f46c6", "shasum": "" }, "require": { @@ -6442,7 +6442,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/v5.2.4" + "source": "https://github.com/symfony/event-dispatcher/tree/v5.2.5" }, "funding": [ { @@ -6458,11 +6458,11 @@ "type": "tidelift" } ], - "time": "2021-02-18T17:12:37+00:00" + "time": "2021-02-19T00:04:43+00:00" }, { "name": "symfony/expression-language", - "version": "v5.2.4", + "version": "v5.2.5", "source": { "type": "git", "url": "https://github.com/symfony/expression-language.git", @@ -6506,7 +6506,7 @@ "description": "Provides an engine that can compile and evaluate expressions", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/expression-language/tree/v5.2.4" + "source": "https://github.com/symfony/expression-language/tree/v5.2.5" }, "funding": [ { @@ -6655,16 +6655,16 @@ }, { "name": "symfony/framework-bundle", - "version": "v5.2.4", + "version": "v5.2.5", "source": { "type": "git", "url": "https://github.com/symfony/framework-bundle.git", - "reference": "6158eb79d62946c24d3f6959bf9b2073555e200e" + "reference": "4dae531503072a57cf26f7f4beb4c3ef8a061f8f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/6158eb79d62946c24d3f6959bf9b2073555e200e", - "reference": "6158eb79d62946c24d3f6959bf9b2073555e200e", + "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/4dae531503072a57cf26f7f4beb4c3ef8a061f8f", + "reference": "4dae531503072a57cf26f7f4beb4c3ef8a061f8f", "shasum": "" }, "require": { @@ -6691,7 +6691,7 @@ "phpunit/phpunit": "<5.4.3", "symfony/asset": "<5.1", "symfony/browser-kit": "<4.4", - "symfony/console": "<5.2", + "symfony/console": "<5.2.5", "symfony/dom-crawler": "<4.4", "symfony/dotenv": "<5.1", "symfony/form": "<5.2", @@ -6784,7 +6784,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/v5.2.4" + "source": "https://github.com/symfony/framework-bundle/tree/v5.2.5" }, "funding": [ { @@ -6800,20 +6800,20 @@ "type": "tidelift" } ], - "time": "2021-02-23T15:58:22+00:00" + "time": "2021-03-09T08:47:49+00:00" }, { "name": "symfony/http-foundation", - "version": "v5.2.4", + "version": "v5.2.5", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "54499baea7f7418bce7b5ec92770fd0799e8e9bf" + "reference": "30841d3da1c20642bc7caac6da8b49c742293588" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/54499baea7f7418bce7b5ec92770fd0799e8e9bf", - "reference": "54499baea7f7418bce7b5ec92770fd0799e8e9bf", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/30841d3da1c20642bc7caac6da8b49c742293588", + "reference": "30841d3da1c20642bc7caac6da8b49c742293588", "shasum": "" }, "require": { @@ -6857,7 +6857,7 @@ "description": "Defines an object-oriented layer for the HTTP specification", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-foundation/tree/v5.2.4" + "source": "https://github.com/symfony/http-foundation/tree/v5.2.5" }, "funding": [ { @@ -6873,20 +6873,20 @@ "type": "tidelift" } ], - "time": "2021-02-25T17:16:57+00:00" + "time": "2021-03-10T10:16:25+00:00" }, { "name": "symfony/http-kernel", - "version": "v5.2.4", + "version": "v5.2.5", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "c452dbe4f385f030c3957821bf921b13815d6140" + "reference": "b8c63ef63c2364e174c3b3e0ba0bf83455f97f73" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/c452dbe4f385f030c3957821bf921b13815d6140", - "reference": "c452dbe4f385f030c3957821bf921b13815d6140", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/b8c63ef63c2364e174c3b3e0ba0bf83455f97f73", + "reference": "b8c63ef63c2364e174c3b3e0ba0bf83455f97f73", "shasum": "" }, "require": { @@ -6969,7 +6969,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/v5.2.4" + "source": "https://github.com/symfony/http-kernel/tree/v5.2.5" }, "funding": [ { @@ -6985,20 +6985,20 @@ "type": "tidelift" } ], - "time": "2021-03-04T18:05:55+00:00" + "time": "2021-03-10T17:07:35+00:00" }, { "name": "symfony/monolog-bridge", - "version": "v5.2.4", + "version": "v5.2.5", "source": { "type": "git", "url": "https://github.com/symfony/monolog-bridge.git", - "reference": "aca99c4135001224b917eed17cc846e8c0ba981c" + "reference": "8a330ab86c4bdf3983b26abf64bf85574edf0d52" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/monolog-bridge/zipball/aca99c4135001224b917eed17cc846e8c0ba981c", - "reference": "aca99c4135001224b917eed17cc846e8c0ba981c", + "url": "https://api.github.com/repos/symfony/monolog-bridge/zipball/8a330ab86c4bdf3983b26abf64bf85574edf0d52", + "reference": "8a330ab86c4bdf3983b26abf64bf85574edf0d52", "shasum": "" }, "require": { @@ -7051,7 +7051,7 @@ "description": "Provides integration for Monolog with various Symfony components", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/monolog-bridge/tree/v5.2.4" + "source": "https://github.com/symfony/monolog-bridge/tree/v5.2.5" }, "funding": [ { @@ -7067,7 +7067,7 @@ "type": "tidelift" } ], - "time": "2021-01-27T11:24:50+00:00" + "time": "2021-03-06T07:59:01+00:00" }, { "name": "symfony/monolog-bundle", @@ -7152,7 +7152,7 @@ }, { "name": "symfony/options-resolver", - "version": "v5.2.4", + "version": "v5.2.5", "source": { "type": "git", "url": "https://github.com/symfony/options-resolver.git", @@ -7201,7 +7201,7 @@ "options" ], "support": { - "source": "https://github.com/symfony/options-resolver/tree/v5.2.4" + "source": "https://github.com/symfony/options-resolver/tree/v5.2.5" }, "funding": [ { @@ -7283,16 +7283,16 @@ }, { "name": "symfony/proxy-manager-bridge", - "version": "v5.2.4", + "version": "v5.2.5", "source": { "type": "git", "url": "https://github.com/symfony/proxy-manager-bridge.git", - "reference": "fd6bb40190b1719abbe831be09adf38e0744d5f5" + "reference": "63fe83e169cd3bd8f4e14772e38e2c66d92a28f2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/proxy-manager-bridge/zipball/fd6bb40190b1719abbe831be09adf38e0744d5f5", - "reference": "fd6bb40190b1719abbe831be09adf38e0744d5f5", + "url": "https://api.github.com/repos/symfony/proxy-manager-bridge/zipball/63fe83e169cd3bd8f4e14772e38e2c66d92a28f2", + "reference": "63fe83e169cd3bd8f4e14772e38e2c66d92a28f2", "shasum": "" }, "require": { @@ -7330,7 +7330,7 @@ "description": "Provides integration for ProxyManager with various Symfony components", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/proxy-manager-bridge/tree/v5.2.4" + "source": "https://github.com/symfony/proxy-manager-bridge/tree/v5.2.5" }, "funding": [ { @@ -7346,7 +7346,7 @@ "type": "tidelift" } ], - "time": "2021-01-27T10:01:46+00:00" + "time": "2021-01-11T09:50:50+00:00" }, { "name": "symfony/routing", @@ -7440,16 +7440,16 @@ }, { "name": "symfony/var-dumper", - "version": "v5.2.4", + "version": "v5.2.5", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "6a81fec0628c468cf6d5c87a4d003725e040e223" + "reference": "002ab5a36702adf0c9a11e6d8836623253e9045e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/6a81fec0628c468cf6d5c87a4d003725e040e223", - "reference": "6a81fec0628c468cf6d5c87a4d003725e040e223", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/002ab5a36702adf0c9a11e6d8836623253e9045e", + "reference": "002ab5a36702adf0c9a11e6d8836623253e9045e", "shasum": "" }, "require": { @@ -7508,7 +7508,7 @@ "dump" ], "support": { - "source": "https://github.com/symfony/var-dumper/tree/v5.2.4" + "source": "https://github.com/symfony/var-dumper/tree/v5.2.5" }, "funding": [ { @@ -7524,20 +7524,20 @@ "type": "tidelift" } ], - "time": "2021-02-18T23:11:19+00:00" + "time": "2021-03-06T07:59:01+00:00" }, { "name": "symfony/var-exporter", - "version": "v5.2.4", + "version": "v5.2.5", "source": { "type": "git", "url": "https://github.com/symfony/var-exporter.git", - "reference": "5aed4875ab514c8cb9b6ff4772baa25fa4c10307" + "reference": "af3af2bf0adabb3b1e4044ad2aa6ee7cc53e1872" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-exporter/zipball/5aed4875ab514c8cb9b6ff4772baa25fa4c10307", - "reference": "5aed4875ab514c8cb9b6ff4772baa25fa4c10307", + "url": "https://api.github.com/repos/symfony/var-exporter/zipball/af3af2bf0adabb3b1e4044ad2aa6ee7cc53e1872", + "reference": "af3af2bf0adabb3b1e4044ad2aa6ee7cc53e1872", "shasum": "" }, "require": { @@ -7581,7 +7581,7 @@ "serialize" ], "support": { - "source": "https://github.com/symfony/var-exporter/tree/v5.2.4" + "source": "https://github.com/symfony/var-exporter/tree/v5.2.5" }, "funding": [ { @@ -7597,20 +7597,20 @@ "type": "tidelift" } ], - "time": "2021-01-27T10:01:46+00:00" + "time": "2021-01-11T09:50:50+00:00" }, { "name": "symfony/yaml", - "version": "v5.2.4", + "version": "v5.2.5", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "7d6ae0cce3c33965af681a4355f1c4de326ed277" + "reference": "298a08ddda623485208506fcee08817807a251dd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/7d6ae0cce3c33965af681a4355f1c4de326ed277", - "reference": "7d6ae0cce3c33965af681a4355f1c4de326ed277", + "url": "https://api.github.com/repos/symfony/yaml/zipball/298a08ddda623485208506fcee08817807a251dd", + "reference": "298a08ddda623485208506fcee08817807a251dd", "shasum": "" }, "require": { @@ -7656,7 +7656,7 @@ "description": "Loads and dumps YAML files", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/yaml/tree/v5.2.4" + "source": "https://github.com/symfony/yaml/tree/v5.2.5" }, "funding": [ { @@ -7672,7 +7672,7 @@ "type": "tidelift" } ], - "time": "2021-02-22T15:48:39+00:00" + "time": "2021-03-06T07:59:01+00:00" }, { "name": "theseer/tokenizer", @@ -7726,16 +7726,16 @@ }, { "name": "twig/twig", - "version": "v2.14.3", + "version": "v2.14.4", "source": { "type": "git", "url": "https://github.com/twigphp/Twig.git", - "reference": "8bc568d460d88b25c00c046256ec14a787ea60d9" + "reference": "0b4ba691fb99ec7952d25deb36c0a83061b93bbf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/twigphp/Twig/zipball/8bc568d460d88b25c00c046256ec14a787ea60d9", - "reference": "8bc568d460d88b25c00c046256ec14a787ea60d9", + "url": "https://api.github.com/repos/twigphp/Twig/zipball/0b4ba691fb99ec7952d25deb36c0a83061b93bbf", + "reference": "0b4ba691fb99ec7952d25deb36c0a83061b93bbf", "shasum": "" }, "require": { @@ -7789,7 +7789,7 @@ ], "support": { "issues": "https://github.com/twigphp/Twig/issues", - "source": "https://github.com/twigphp/Twig/tree/v2.14.3" + "source": "https://github.com/twigphp/Twig/tree/v2.14.4" }, "funding": [ { @@ -7801,7 +7801,7 @@ "type": "tidelift" } ], - "time": "2021-01-05T15:34:33+00:00" + "time": "2021-03-10T10:05:55+00:00" }, { "name": "webmozart/assert", diff --git a/src/Controller/Menu.php b/src/Controller/Menu.php new file mode 100644 index 0000000..625cb5e --- /dev/null +++ b/src/Controller/Menu.php @@ -0,0 +1,47 @@ +register(RouteFactory::fromConstants(1, "GET", "@^(?[0-9]+)/menu/(?[0-9]+)$@", "getOneById", array("id"))); + } + + /** + * Gets one menu by ID + * + * @param int $id + * @return \App\Model\Entity\Menu + */ + public function getOneById(int $id): \App\Model\Entity\Menu + { + $menu = $this->entityManager->getRepository('App\Model\Entity\Menu')->findOneBy(array('id' => $id)); + + if ($menu instanceof \App\Model\Entity\Menu) { + $items = []; + foreach ($menu->getItems() as $item) { + array_push($items, array('title' => $item->getTitle(), 'target' => $item->getTarget(), "updated" => $menu->getUpdated(), 'created' => $menu->getCreated(), "state" => $menu->getState())); + } + + $this->view->render(["title" => $menu->getTitle(), "items" => $items, "updated" => $menu->getUpdated(), 'created' => $menu->getCreated(), "state" => $menu->getState()]); + + return $menu; + } else { + throw new Exception("Menu with ID:" . $id . " can not be founded!", 404); + } + } +} diff --git a/src/Lib/Util/Input.php b/src/Lib/Util/Input.php index 8d25d48..7acfa2d 100644 --- a/src/Lib/Util/Input.php +++ b/src/Lib/Util/Input.php @@ -17,19 +17,23 @@ class Input */ public static function toAscii(string $input): string { - $input = preg_replace('#[^\x09\x0A\x0D\x20-\x7E\xA0-\x{2FF}\x{370}-\x{10FFFF}]#u', '', $input) ?? ""; + $input = (string)preg_replace('#[^\x09\x0A\x0D\x20-\x7E\xA0-\x{2FF}\x{370}-\x{10FFFF}]#u', '', $input); $input = strtr($input, '`\'"^~', "\x01\x02\x03\x04\x05"); - $input = (string)iconv('UTF-8', 'ASCII//TRANSLIT', $input); - $input = strtr( - $input, - "\xa5\xa3\xbc\x8c\xa7\x8a\xaa\x8d\x8f\x8e\xaf\xb9\xb3\xbe\x9c\x9a\xba\x9d\x9f\x9e" - . "\xbf\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf\xd0\xd1\xd2\xd3" - . "\xd4\xd5\xd6\xd7\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7\xe8" - . "\xe9\xea\xeb\xec\xed\xee\xef\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf8\xf9\xfa\xfb\xfc\xfd\xfe\x96", - "ALLSSSSTZZZallssstzzzRAAAALCCCEEEEIIDDNNOOOOxRUUUUYTsraaaalccceeeeiiddnnooooruuuuyt-" - ); - $input = str_replace(array('`', "'", '"', '^', '~'), '', $input); - return (string)strtr($input, "\x01\x02\x03\x04\x05", '`\'"^~'); + if (ICONV_IMPL === 'glibc') { + $input = @iconv('UTF-8', 'WINDOWS-1250//TRANSLIT', $input); // intentionally @ + $input = strtr( + (string)$input, + "\xa5\xa3\xbc\x8c\xa7\x8a\xaa\x8d\x8f\x8e\xaf\xb9\xb3\xbe\x9c\x9a\xba\x9d\x9f\x9e" + . "\xbf\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf\xd0\xd1\xd2\xd3" + . "\xd4\xd5\xd6\xd7\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7\xe8" + . "\xe9\xea\xeb\xec\xed\xee\xef\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf8\xf9\xfa\xfb\xfc\xfd\xfe\x96", + "ALLSSSSTZZZallssstzzzRAAAALCCCEEEEIIDDNNOOOOxRUUUUYTsraaaalccceeeeiiddnnooooruuuuyt-" + ); + } else { + $input = @iconv('UTF-8', 'ASCII//TRANSLIT', $input); // intentionally @ + } + $input = str_replace(array('`', "'", '"', '^', '~'), '', (string)$input); + return strtr($input, "\x01\x02\x03\x04\x05", '`\'"^~'); } /** diff --git a/src/Model/Entity/Gallery.php b/src/Model/Entity/Gallery.php index b40f528..a9389dc 100644 --- a/src/Model/Entity/Gallery.php +++ b/src/Model/Entity/Gallery.php @@ -79,6 +79,7 @@ class Gallery * @param string $title * @param string $description * @param string $alias + * @param bool $state */ public function __construct(string $title = "", string $description = "", string $alias = "", bool $state = true) { diff --git a/src/Model/Entity/Menu.php b/src/Model/Entity/Menu.php new file mode 100644 index 0000000..ddd119b --- /dev/null +++ b/src/Model/Entity/Menu.php @@ -0,0 +1,173 @@ + + */ + protected $items; + + /** + * @ORM\Column(type="datetime", nullable=false) + * @ORM\Version + * @var DateTime + */ + protected $updated; + + /** + * @ORM\Column(type="datetime", nullable=false) + * @var DateTime + */ + protected $created; + + /** + * @ORM\Column(type="boolean") + * @var boolean + */ + protected $state; + + /** + * @param string $title + * @param bool $state + */ + public function __construct(string $title = "", bool $state = true) + { + $this->setTitle($title); + $this->setCreated(new DateTime("now")); + $this->setState($state); + } + + /** + * Sets title + * + * @param string $title + * @return self + */ + public function setTitle(string $title): self + { + $this->title = $title; + return $this; + } + + /** + * Sets updated date + * + * @return self + */ + public function setUpdated(): self + { + $this->updated = new DateTime("now"); + return $this; + } + + /** + * Sets created date + * + * @param DateTime $created + * @return self + */ + public function setCreated(DateTime $created): self + { + $this->created = $created; + return $this; + } + + /** + * Sets state + * + * @param boolean $state + * @return self + */ + public function setState(bool $state): self + { + $this->state = $state; + return $this; + } + + /** + * Return ID + * + * @return integer + */ + public function getId(): int + { + return $this->id; + } + + /** + * Returns title + * + * @return string + */ + public function getTitle(): string + { + return $this->title; + } + + /** + * Returns menu items associated to menu entity + * + * @return PersistentCollection + */ + public function getItems(): PersistentCollection + { + return $this->items; + } + + /** + * Returns updated date + * + * @return DateTime + */ + public function getUpdated(): DateTime + { + return $this->updated; + } + + /** + * Returns created date + * + * @return DateTime + */ + public function getCreated(): DateTime + { + return $this->created; + } + + /** + * Returns state + * + * @return boolean + */ + public function getState(): bool + { + return $this->state; + } +} diff --git a/src/Model/Entity/MenuItem.php b/src/Model/Entity/MenuItem.php new file mode 100644 index 0000000..a2331d2 --- /dev/null +++ b/src/Model/Entity/MenuItem.php @@ -0,0 +1,193 @@ +setTitle($title); + $this->setTarget($target); + $this->setCreated(new DateTime("now")); + $this->setState($state); + } + + /** + * Sets title + * + * @param string $title + * @return self + */ + public function setTitle(string $title): self + { + $this->title = $title; + return $this; + } + + /** + * Sets target + * + * @param string $target + * @return self + */ + public function setTarget(string $target): self + { + $this->target = $target; + return $this; + } + + /** + * Sets updated date + * + * @return self + */ + public function setUpdated(): self + { + $this->updated = new DateTime("now"); + return $this; + } + + /** + * Sets created date + * + * @param DateTime $created + * @return self + */ + public function setCreated(DateTime $created): self + { + $this->created = $created; + return $this; + } + + /** + * Sets state + * + * @param boolean $state + * @return self + */ + public function setState(bool $state): self + { + $this->state = $state; + return $this; + } + + /** + * Return ID + * + * @return integer + */ + public function getId(): int + { + return $this->id; + } + + /** + * Returns title + * + * @return string + */ + public function getTitle(): string + { + return $this->title; + } + + /** + * Returns target + * + * @return string + */ + public function getTarget(): string + { + return $this->target; + } + + /** + * Returns updated date + * + * @return DateTime + */ + public function getUpdated(): DateTime + { + return $this->updated; + } + + /** + * Returns created date + * + * @return DateTime + */ + public function getCreated(): DateTime + { + return $this->created; + } + + /** + * Returns state + * + * @return boolean + */ + public function getState(): bool + { + return $this->state; + } +} diff --git a/src/Model/Migrations/Version20210310182327.php b/src/Model/Migrations/Version20210310182327.php new file mode 100644 index 0000000..51a8617 --- /dev/null +++ b/src/Model/Migrations/Version20210310182327.php @@ -0,0 +1,35 @@ +addSql('CREATE TABLE menu (id INT AUTO_INCREMENT NOT NULL, title VARCHAR(512) NOT NULL, updated TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL, created DATETIME NOT NULL, state TINYINT(1) NOT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8 COLLATE `utf8_unicode_ci` ENGINE = InnoDB'); + $this->addSql('CREATE TABLE menu_item (id INT AUTO_INCREMENT NOT NULL, menu_id INT DEFAULT NULL, title VARCHAR(512) NOT NULL, target VARCHAR(512) NOT NULL, updated TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL, created DATETIME NOT NULL, state TINYINT(1) NOT NULL, INDEX IDX_D754D550CCD7E912 (menu_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8 COLLATE `utf8_unicode_ci` ENGINE = InnoDB'); + $this->addSql('ALTER TABLE menu_item ADD CONSTRAINT FK_D754D550CCD7E912 FOREIGN KEY (menu_id) REFERENCES menu (id)'); + } + + public function down(Schema $schema) : void + { + // this down() migration is auto-generated, please modify it to your needs + $this->addSql('ALTER TABLE menu_item DROP FOREIGN KEY FK_D754D550CCD7E912'); + $this->addSql('DROP TABLE menu'); + $this->addSql('DROP TABLE menu_item'); + } +} diff --git a/src/View/Json.php b/src/View/Json.php index b276787..918c0e7 100644 --- a/src/View/Json.php +++ b/src/View/Json.php @@ -12,7 +12,7 @@ class Json extends BaseView /** * Displays data in JSON format * - * @param array $data + * @param array $data * @return void */ public function render(array $data): void