From 460005c0b042f7b36ed79f92821bde26f5619156 Mon Sep 17 00:00:00 2001 From: thisfro Date: Thu, 17 Jun 2021 17:25:35 +0200 Subject: [PATCH 001/119] Start using translation --- .env | 8 +- .env.staging | 6 +- .gitignore | 2 + Dockerfile | 4 + composer.json | 25 +- composer.lock | 1076 +++++++++++++++++------------- config/packages/translation.yaml | 8 +- symfony.lock | 21 +- templates/app/index.html.twig | 5 +- 9 files changed, 666 insertions(+), 489 deletions(-) diff --git a/.env b/.env index 7da46f2..bc1a1ad 100644 --- a/.env +++ b/.env @@ -28,7 +28,11 @@ DATABASE_URL="postgresql://postgres:develop@localhost:5432/plantex?serverVersion ###< doctrine/doctrine-bundle ### ###> symfony/mailer ### -# MAILER_DSN=smtp://localhost +MAILER_DSN=smtp://localhost ###< symfony/mailer ### -DEFAULT_URI='http://localhost:8080/' \ No newline at end of file +DEFAULT_URI='http://localhost:8080/' + +###> symfony/loco-translation-provider ### +LOCO_DSN=loco://RCrByb141Z9P3QjMhWgHrqRrdxu9x-Rro@default +###< symfony/loco-translation-provider ### diff --git a/.env.staging b/.env.staging index e960f42..7ec485a 100644 --- a/.env.staging +++ b/.env.staging @@ -31,4 +31,8 @@ DATABASE_URL="postgresql://postgres:develop@localhost:5432/plantex?serverVersion MAILER_DSN=smtp://no-reply@xn--pflnz-ira.li:dxS5ooKMEzFEa3YgTvru@mail.infomaniak.com:587 ###< symfony/mailer ### -DEFAULT_URI="https://staging.this-server.pflaenz.li/" \ No newline at end of file +DEFAULT_URI="https://staging.this-server.pflaenz.li/" + +###> symfony/loco-translation-provider ### +LOCO_DSN=loco://RCrByb141Z9P3QjMhWgHrqRrdxu9x-Rro@default +###< symfony/loco-translation-provider ### \ No newline at end of file diff --git a/.gitignore b/.gitignore index 8b0d6b7..7375a1a 100644 --- a/.gitignore +++ b/.gitignore @@ -243,3 +243,5 @@ temp/ # .pnp.* # End of https://www.toptal.com/developers/gitignore/api/node,phpunit,symfony,composer,yarn + +translations \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index 6788887..e230343 100644 --- a/Dockerfile +++ b/Dockerfile @@ -25,6 +25,10 @@ RUN php ../composer.phar update RUN yarn install && \ yarn build +# Pull translation +RUN php bin/console translation:pull loco --locales=en +RUN php bin/console translation:pull loco --locales=de + RUN cp .env.staging .env # Run Migration and dev-webserver diff --git a/composer.json b/composer.json index 53a1d84..134b915 100644 --- a/composer.json +++ b/composer.json @@ -14,20 +14,21 @@ "easycorp/easyadmin-bundle": "^3", "mjaschen/phpgeo": "^3.2", "sensio/framework-extra-bundle": "^6.1", - "symfony/asset": "5.2.*", - "symfony/console": "5.2.*", - "symfony/dotenv": "5.2.*", + "symfony/asset": "5.3.*", + "symfony/console": "5.3.*", + "symfony/dotenv": "5.3.*", "symfony/flex": "^1.3.1", - "symfony/form": "5.2.*", - "symfony/framework-bundle": "5.2.*", - "symfony/mailer": "5.2.*", + "symfony/form": "5.3.*", + "symfony/framework-bundle": "5.3.*", + "symfony/loco-translation-provider": "5.3.*", + "symfony/mailer": "5.3.*", "symfony/monolog-bundle": "^3.7", - "symfony/proxy-manager-bridge": "5.2.*", - "symfony/security-bundle": "5.2.*", - "symfony/twig-bundle": "5.2.*", - "symfony/validator": "5.2.*", + "symfony/proxy-manager-bridge": "5.3.*", + "symfony/security-bundle": "5.3.*", + "symfony/twig-bundle": "5.3.*", + "symfony/validator": "5.3.*", "symfony/webpack-encore-bundle": "^1.11", - "symfony/yaml": "5.2.*", + "symfony/yaml": "5.3.*", "symfonycasts/reset-password-bundle": "^1.7", "symfonycasts/verify-email-bundle": "^1.4", "twig/extra-bundle": "^2.12|^3.0", @@ -74,7 +75,7 @@ "extra": { "symfony": { "allow-contrib": false, - "require": "5.2.*" + "require": "5.3.*" } }, "require-dev": { diff --git a/composer.lock b/composer.lock index a06744c..14b893a 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "87576858dc205e57e5b2a58d94317391", + "content-hash": "ce220d07a0b14ffb49f81679a87e2bbc", "packages": [ { "name": "composer/package-versions-deprecated", @@ -415,12 +415,12 @@ "source": { "type": "git", "url": "https://github.com/doctrine/dbal.git", - "reference": "2f286f4beaacf3ce57706ececa72622e196e2f5f" + "reference": "f1453c5c1bedc1d60baa6849fdce9b442c79811a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/dbal/zipball/2f286f4beaacf3ce57706ececa72622e196e2f5f", - "reference": "2f286f4beaacf3ce57706ececa72622e196e2f5f", + "url": "https://api.github.com/repos/doctrine/dbal/zipball/f1453c5c1bedc1d60baa6849fdce9b442c79811a", + "reference": "f1453c5c1bedc1d60baa6849fdce9b442c79811a", "shasum": "" }, "require": { @@ -515,7 +515,7 @@ "type": "tidelift" } ], - "time": "2021-06-05T17:48:35+00:00" + "time": "2021-06-16T21:54:12+00:00" }, { "name": "doctrine/deprecations", @@ -1200,16 +1200,16 @@ }, { "name": "doctrine/orm", - "version": "2.9.2", + "version": "2.9.3", "source": { "type": "git", "url": "https://github.com/doctrine/orm.git", - "reference": "75b4b88c5b7cebc24ed7251a20c2a5aa027300e1" + "reference": "82e77cf5089a1303733f75f0f0ed01be3ab9ec22" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/orm/zipball/75b4b88c5b7cebc24ed7251a20c2a5aa027300e1", - "reference": "75b4b88c5b7cebc24ed7251a20c2a5aa027300e1", + "url": "https://api.github.com/repos/doctrine/orm/zipball/82e77cf5089a1303733f75f0f0ed01be3ab9ec22", + "reference": "82e77cf5089a1303733f75f0f0ed01be3ab9ec22", "shasum": "" }, "require": { @@ -1286,9 +1286,9 @@ ], "support": { "issues": "https://github.com/doctrine/orm/issues", - "source": "https://github.com/doctrine/orm/tree/2.9.2" + "source": "https://github.com/doctrine/orm/tree/2.9.3" }, - "time": "2021-05-31T09:53:14+00:00" + "time": "2021-06-13T10:29:22+00:00" }, { "name": "doctrine/persistence", @@ -1681,28 +1681,24 @@ }, { "name": "laminas/laminas-code", - "version": "4.3.0", + "version": "4.4.0", "source": { "type": "git", "url": "https://github.com/laminas/laminas-code.git", - "reference": "1beb4447f9efd26041eba7eff50614e798c353fd" + "reference": "2b0bb59ade31a045fd3ff0097dc558bb896f6596" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-code/zipball/1beb4447f9efd26041eba7eff50614e798c353fd", - "reference": "1beb4447f9efd26041eba7eff50614e798c353fd", + "url": "https://api.github.com/repos/laminas/laminas-code/zipball/2b0bb59ade31a045fd3ff0097dc558bb896f6596", + "reference": "2b0bb59ade31a045fd3ff0097dc558bb896f6596", "shasum": "" }, "require": { - "laminas/laminas-eventmanager": "^3.3", "php": "^7.4 || ~8.0.0" }, "conflict": { "phpspec/prophecy": "<1.9.0" }, - "replace": { - "zendframework/zend-code": "self.version" - }, "require-dev": { "doctrine/annotations": "^1.10.4", "ext-phar": "*", @@ -1748,135 +1744,7 @@ "type": "community_bridge" } ], - "time": "2021-05-12T12:41:03+00:00" - }, - { - "name": "laminas/laminas-eventmanager", - "version": "3.3.1", - "source": { - "type": "git", - "url": "https://github.com/laminas/laminas-eventmanager.git", - "reference": "966c859b67867b179fde1eff0cd38df51472ce4a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-eventmanager/zipball/966c859b67867b179fde1eff0cd38df51472ce4a", - "reference": "966c859b67867b179fde1eff0cd38df51472ce4a", - "shasum": "" - }, - "require": { - "laminas/laminas-zendframework-bridge": "^1.0", - "php": "^7.3 || ^8.0" - }, - "replace": { - "zendframework/zend-eventmanager": "^3.2.1" - }, - "require-dev": { - "container-interop/container-interop": "^1.1", - "laminas/laminas-coding-standard": "~1.0.0", - "laminas/laminas-stdlib": "^2.7.3 || ^3.0", - "phpbench/phpbench": "^0.17.1", - "phpunit/phpunit": "^8.5.8" - }, - "suggest": { - "container-interop/container-interop": "^1.1, to use the lazy listeners feature", - "laminas/laminas-stdlib": "^2.7.3 || ^3.0, to use the FilterChain feature" - }, - "type": "library", - "autoload": { - "psr-4": { - "Laminas\\EventManager\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "description": "Trigger and listen to events within a PHP application", - "homepage": "https://laminas.dev", - "keywords": [ - "event", - "eventmanager", - "events", - "laminas" - ], - "support": { - "chat": "https://laminas.dev/chat", - "docs": "https://docs.laminas.dev/laminas-eventmanager/", - "forum": "https://discourse.laminas.dev", - "issues": "https://github.com/laminas/laminas-eventmanager/issues", - "rss": "https://github.com/laminas/laminas-eventmanager/releases.atom", - "source": "https://github.com/laminas/laminas-eventmanager" - }, - "funding": [ - { - "url": "https://funding.communitybridge.org/projects/laminas-project", - "type": "community_bridge" - } - ], - "time": "2021-03-08T15:24:29+00:00" - }, - { - "name": "laminas/laminas-zendframework-bridge", - "version": "1.2.0", - "source": { - "type": "git", - "url": "https://github.com/laminas/laminas-zendframework-bridge.git", - "reference": "6cccbddfcfc742eb02158d6137ca5687d92cee32" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-zendframework-bridge/zipball/6cccbddfcfc742eb02158d6137ca5687d92cee32", - "reference": "6cccbddfcfc742eb02158d6137ca5687d92cee32", - "shasum": "" - }, - "require": { - "php": "^7.3 || ^8.0" - }, - "require-dev": { - "phpunit/phpunit": "^5.7 || ^6.5 || ^7.5 || ^8.1 || ^9.3", - "psalm/plugin-phpunit": "^0.15.1", - "squizlabs/php_codesniffer": "^3.5", - "vimeo/psalm": "^4.6" - }, - "type": "library", - "extra": { - "laminas": { - "module": "Laminas\\ZendFrameworkBridge" - } - }, - "autoload": { - "files": [ - "src/autoload.php" - ], - "psr-4": { - "Laminas\\ZendFrameworkBridge\\": "src//" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "description": "Alias legacy ZF class names to Laminas Project equivalents.", - "keywords": [ - "ZendFramework", - "autoloading", - "laminas", - "zf" - ], - "support": { - "forum": "https://discourse.laminas.dev/", - "issues": "https://github.com/laminas/laminas-zendframework-bridge/issues", - "rss": "https://github.com/laminas/laminas-zendframework-bridge/releases.atom", - "source": "https://github.com/laminas/laminas-zendframework-bridge" - }, - "funding": [ - { - "url": "https://funding.communitybridge.org/projects/laminas-project", - "type": "community_bridge" - } - ], - "time": "2021-02-25T21:54:58+00:00" + "time": "2021-06-17T13:39:43+00:00" }, { "name": "mjaschen/phpgeo", @@ -2380,24 +2248,28 @@ }, { "name": "symfony/asset", - "version": "v5.2.10", + "version": "v5.3.2", "source": { "type": "git", "url": "https://github.com/symfony/asset.git", - "reference": "c65584ca108c9e51c80cc49ebdcb47dfd995431c" + "reference": "29a4d5e6e39ffe16cea394fd5041d7a638bd580d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/asset/zipball/c65584ca108c9e51c80cc49ebdcb47dfd995431c", - "reference": "c65584ca108c9e51c80cc49ebdcb47dfd995431c", + "url": "https://api.github.com/repos/symfony/asset/zipball/29a4d5e6e39ffe16cea394fd5041d7a638bd580d", + "reference": "29a4d5e6e39ffe16cea394fd5041d7a638bd580d", "shasum": "" }, "require": { - "php": ">=7.2.5" + "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1" + }, + "conflict": { + "symfony/http-foundation": "<5.3" }, "require-dev": { "symfony/http-client": "^4.4|^5.0", - "symfony/http-foundation": "^4.4|^5.0", + "symfony/http-foundation": "^5.3", "symfony/http-kernel": "^4.4|^5.0" }, "suggest": { @@ -2429,7 +2301,7 @@ "description": "Manages URL generation and versioning of web assets such as CSS stylesheets, JavaScript files and image files", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/asset/tree/v5.2.10" + "source": "https://github.com/symfony/asset/tree/v5.3.2" }, "funding": [ { @@ -2445,20 +2317,20 @@ "type": "tidelift" } ], - "time": "2021-05-26T17:40:38+00:00" + "time": "2021-06-06T08:05:27+00:00" }, { "name": "symfony/cache", - "version": "v5.2.10", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/symfony/cache.git", - "reference": "aaab9c4f6eccf20906c7675be3bf826e362676ce" + "reference": "44fd0f97d1fb198d344f22379dfc56af2221e608" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/cache/zipball/aaab9c4f6eccf20906c7675be3bf826e362676ce", - "reference": "aaab9c4f6eccf20906c7675be3bf826e362676ce", + "url": "https://api.github.com/repos/symfony/cache/zipball/44fd0f97d1fb198d344f22379dfc56af2221e608", + "reference": "44fd0f97d1fb198d344f22379dfc56af2221e608", "shasum": "" }, "require": { @@ -2466,6 +2338,7 @@ "psr/cache": "^1.0|^2.0", "psr/log": "^1.1", "symfony/cache-contracts": "^1.1.7|^2", + "symfony/deprecation-contracts": "^2.1", "symfony/polyfill-php80": "^1.15", "symfony/service-contracts": "^1.1|^2", "symfony/var-exporter": "^4.4|^5.0" @@ -2524,7 +2397,7 @@ "psr6" ], "support": { - "source": "https://github.com/symfony/cache/tree/v5.2.10" + "source": "https://github.com/symfony/cache/tree/v5.3.0" }, "funding": [ { @@ -2540,7 +2413,7 @@ "type": "tidelift" } ], - "time": "2021-05-26T17:40:38+00:00" + "time": "2021-05-26T17:43:10+00:00" }, { "name": "symfony/cache-contracts", @@ -2623,16 +2496,16 @@ }, { "name": "symfony/config", - "version": "v5.2.10", + "version": "v5.3.2", "source": { "type": "git", "url": "https://github.com/symfony/config.git", - "reference": "1156feb067e6962b3c4444d172fd0d4d8473cd5b" + "reference": "9c307728cfacbd50914f0db28aee1e0ecd82b99f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/config/zipball/1156feb067e6962b3c4444d172fd0d4d8473cd5b", - "reference": "1156feb067e6962b3c4444d172fd0d4d8473cd5b", + "url": "https://api.github.com/repos/symfony/config/zipball/9c307728cfacbd50914f0db28aee1e0ecd82b99f", + "reference": "9c307728cfacbd50914f0db28aee1e0ecd82b99f", "shasum": "" }, "require": { @@ -2682,7 +2555,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.10" + "source": "https://github.com/symfony/config/tree/v5.3.2" }, "funding": [ { @@ -2698,24 +2571,25 @@ "type": "tidelift" } ], - "time": "2021-05-26T12:52:38+00:00" + "time": "2021-06-12T10:15:17+00:00" }, { "name": "symfony/console", - "version": "v5.2.10", + "version": "v5.3.2", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "9e18ae5de0ca8c6d0a9784f5b4ae94fad5325040" + "reference": "649730483885ff2ca99ca0560ef0e5f6b03f2ac1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/9e18ae5de0ca8c6d0a9784f5b4ae94fad5325040", - "reference": "9e18ae5de0ca8c6d0a9784f5b4ae94fad5325040", + "url": "https://api.github.com/repos/symfony/console/zipball/649730483885ff2ca99ca0560ef0e5f6b03f2ac1", + "reference": "649730483885ff2ca99ca0560ef0e5f6b03f2ac1", "shasum": "" }, "require": { "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1", "symfony/polyfill-mbstring": "~1.0", "symfony/polyfill-php73": "^1.8", "symfony/polyfill-php80": "^1.15", @@ -2779,7 +2653,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v5.2.10" + "source": "https://github.com/symfony/console/tree/v5.3.2" }, "funding": [ { @@ -2795,31 +2669,32 @@ "type": "tidelift" } ], - "time": "2021-05-26T12:52:38+00:00" + "time": "2021-06-12T09:42:48+00:00" }, { "name": "symfony/dependency-injection", - "version": "v5.2.10", + "version": "v5.3.2", "source": { "type": "git", "url": "https://github.com/symfony/dependency-injection.git", - "reference": "22b1ed3e5d080d69ec913e04eac3699eafb6b5b4" + "reference": "ddbff73bc4fa3d5b415431d486770ab0e72f6516" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/22b1ed3e5d080d69ec913e04eac3699eafb6b5b4", - "reference": "22b1ed3e5d080d69ec913e04eac3699eafb6b5b4", + "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/ddbff73bc4fa3d5b415431d486770ab0e72f6516", + "reference": "ddbff73bc4fa3d5b415431d486770ab0e72f6516", "shasum": "" }, "require": { "php": ">=7.2.5", - "psr/container": "^1.0", + "psr/container": "^1.1.1", "symfony/deprecation-contracts": "^2.1", "symfony/polyfill-php80": "^1.15", "symfony/service-contracts": "^1.1.6|^2" }, "conflict": { - "symfony/config": "<5.1", + "ext-psr": "<1.1|>=2", + "symfony/config": "<5.3", "symfony/finder": "<4.4", "symfony/proxy-manager-bridge": "<4.4", "symfony/yaml": "<4.4" @@ -2829,7 +2704,7 @@ "symfony/service-implementation": "1.0|2.0" }, "require-dev": { - "symfony/config": "^5.1", + "symfony/config": "^5.3", "symfony/expression-language": "^4.4|^5.0", "symfony/yaml": "^4.4|^5.0" }, @@ -2866,7 +2741,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.10" + "source": "https://github.com/symfony/dependency-injection/tree/v5.3.2" }, "funding": [ { @@ -2882,7 +2757,7 @@ "type": "tidelift" } ], - "time": "2021-05-26T17:55:25+00:00" + "time": "2021-06-12T09:17:04+00:00" }, { "name": "symfony/deprecation-contracts", @@ -2953,16 +2828,16 @@ }, { "name": "symfony/doctrine-bridge", - "version": "v5.2.10", + "version": "v5.3.1", "source": { "type": "git", "url": "https://github.com/symfony/doctrine-bridge.git", - "reference": "8911230b0861da58c42158bc8ad640f4f6658efc" + "reference": "29516dcc8165bc7e2339182a9360ea7d3471fb03" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/doctrine-bridge/zipball/8911230b0861da58c42158bc8ad640f4f6658efc", - "reference": "8911230b0861da58c42158bc8ad640f4f6658efc", + "url": "https://api.github.com/repos/symfony/doctrine-bridge/zipball/29516dcc8165bc7e2339182a9360ea7d3471fb03", + "reference": "29516dcc8165bc7e2339182a9360ea7d3471fb03", "shasum": "" }, "require": { @@ -2984,7 +2859,7 @@ "symfony/messenger": "<4.4", "symfony/property-info": "<5", "symfony/security-bundle": "<5", - "symfony/security-core": "<5", + "symfony/security-core": "<5.3", "symfony/validator": "<5.2" }, "require-dev": { @@ -3005,7 +2880,7 @@ "symfony/property-access": "^4.4|^5.0", "symfony/property-info": "^5.0", "symfony/proxy-manager-bridge": "^4.4|^5.0", - "symfony/security-core": "^5.0", + "symfony/security-core": "^5.3", "symfony/stopwatch": "^4.4|^5.0", "symfony/translation": "^4.4|^5.0", "symfony/uid": "^5.1", @@ -3046,7 +2921,7 @@ "description": "Provides integration for Doctrine with various Symfony components", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/doctrine-bridge/tree/v5.2.10" + "source": "https://github.com/symfony/doctrine-bridge/tree/v5.3.1" }, "funding": [ { @@ -3062,11 +2937,11 @@ "type": "tidelift" } ], - "time": "2021-05-26T12:52:38+00:00" + "time": "2021-06-01T15:43:02+00:00" }, { "name": "symfony/dotenv", - "version": "v5.2.10", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/symfony/dotenv.git", @@ -3136,16 +3011,16 @@ }, { "name": "symfony/error-handler", - "version": "v5.2.10", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/symfony/error-handler.git", - "reference": "5f52636e5772b21ab80fe868b54b11c3177c55c6" + "reference": "0e6768b8c0dcef26df087df2bbbaa143867a59b2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/error-handler/zipball/5f52636e5772b21ab80fe868b54b11c3177c55c6", - "reference": "5f52636e5772b21ab80fe868b54b11c3177c55c6", + "url": "https://api.github.com/repos/symfony/error-handler/zipball/0e6768b8c0dcef26df087df2bbbaa143867a59b2", + "reference": "0e6768b8c0dcef26df087df2bbbaa143867a59b2", "shasum": "" }, "require": { @@ -3185,7 +3060,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.10" + "source": "https://github.com/symfony/error-handler/tree/v5.3.0" }, "funding": [ { @@ -3201,20 +3076,20 @@ "type": "tidelift" } ], - "time": "2021-05-26T17:33:56+00:00" + "time": "2021-05-26T17:43:10+00:00" }, { "name": "symfony/event-dispatcher", - "version": "v5.2.10", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "2ffa4bf7469317e23cc5e3f716db6071e6525f5a" + "reference": "67a5f354afa8e2f231081b3fa11a5912f933c3ce" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/2ffa4bf7469317e23cc5e3f716db6071e6525f5a", - "reference": "2ffa4bf7469317e23cc5e3f716db6071e6525f5a", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/67a5f354afa8e2f231081b3fa11a5912f933c3ce", + "reference": "67a5f354afa8e2f231081b3fa11a5912f933c3ce", "shasum": "" }, "require": { @@ -3270,7 +3145,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.10" + "source": "https://github.com/symfony/event-dispatcher/tree/v5.3.0" }, "funding": [ { @@ -3286,7 +3161,7 @@ "type": "tidelift" } ], - "time": "2021-05-26T17:40:38+00:00" + "time": "2021-05-26T17:43:10+00:00" }, { "name": "symfony/event-dispatcher-contracts", @@ -3369,16 +3244,16 @@ }, { "name": "symfony/filesystem", - "version": "v5.2.10", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "9aa15870b021a34de200a15cff38844db4a930fa" + "reference": "348116319d7fb7d1faa781d26a48922428013eb2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/9aa15870b021a34de200a15cff38844db4a930fa", - "reference": "9aa15870b021a34de200a15cff38844db4a930fa", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/348116319d7fb7d1faa781d26a48922428013eb2", + "reference": "348116319d7fb7d1faa781d26a48922428013eb2", "shasum": "" }, "require": { @@ -3411,7 +3286,7 @@ "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/filesystem/tree/v5.2.10" + "source": "https://github.com/symfony/filesystem/tree/v5.3.0" }, "funding": [ { @@ -3427,11 +3302,11 @@ "type": "tidelift" } ], - "time": "2021-05-26T17:33:56+00:00" + "time": "2021-05-26T17:43:10+00:00" }, { "name": "symfony/finder", - "version": "v5.2.10", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", @@ -3560,25 +3435,25 @@ }, { "name": "symfony/form", - "version": "v5.2.10", + "version": "v5.3.2", "source": { "type": "git", "url": "https://github.com/symfony/form.git", - "reference": "51f75b46f623cbf715ee9894657fe432455821c4" + "reference": "5179e4dacd4d0db7e20d00cb9c7b6b73344cdd51" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/form/zipball/51f75b46f623cbf715ee9894657fe432455821c4", - "reference": "51f75b46f623cbf715ee9894657fe432455821c4", + "url": "https://api.github.com/repos/symfony/form/zipball/5179e4dacd4d0db7e20d00cb9c7b6b73344cdd51", + "reference": "5179e4dacd4d0db7e20d00cb9c7b6b73344cdd51", "shasum": "" }, "require": { "php": ">=7.2.5", "symfony/deprecation-contracts": "^2.1", "symfony/event-dispatcher": "^4.4|^5.0", - "symfony/intl": "^4.4|^5.0", "symfony/options-resolver": "^5.1", "symfony/polyfill-ctype": "~1.8", + "symfony/polyfill-intl-icu": "^1.21", "symfony/polyfill-mbstring": "~1.0", "symfony/polyfill-php80": "^1.15", "symfony/property-access": "^5.0.8", @@ -3592,7 +3467,6 @@ "symfony/error-handler": "<4.4.5", "symfony/framework-bundle": "<4.4", "symfony/http-kernel": "<4.4", - "symfony/intl": "<4.4", "symfony/translation": "<4.4", "symfony/translation-contracts": "<1.1.7", "symfony/twig-bridge": "<4.4" @@ -3605,8 +3479,10 @@ "symfony/expression-language": "^4.4|^5.0", "symfony/http-foundation": "^4.4|^5.0", "symfony/http-kernel": "^4.4|^5.0", + "symfony/intl": "^4.4|^5.0", "symfony/security-csrf": "^4.4|^5.0", "symfony/translation": "^4.4|^5.0", + "symfony/uid": "^5.1", "symfony/validator": "^4.4.17|^5.1.9", "symfony/var-dumper": "^4.4|^5.0" }, @@ -3641,7 +3517,7 @@ "description": "Allows to easily create, process and reuse HTML forms", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/form/tree/v5.2.10" + "source": "https://github.com/symfony/form/tree/v5.3.2" }, "funding": [ { @@ -3657,45 +3533,45 @@ "type": "tidelift" } ], - "time": "2021-05-27T12:55:18+00:00" + "time": "2021-06-03T13:39:28+00:00" }, { "name": "symfony/framework-bundle", - "version": "v5.2.10", + "version": "v5.3.2", "source": { "type": "git", "url": "https://github.com/symfony/framework-bundle.git", - "reference": "0f47ae9a391efdec9632275c1cb506290600af11" + "reference": "120e80e882debd7e705d53a3b054e1a0fae91fbc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/0f47ae9a391efdec9632275c1cb506290600af11", - "reference": "0f47ae9a391efdec9632275c1cb506290600af11", + "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/120e80e882debd7e705d53a3b054e1a0fae91fbc", + "reference": "120e80e882debd7e705d53a3b054e1a0fae91fbc", "shasum": "" }, "require": { "ext-xml": "*", "php": ">=7.2.5", "symfony/cache": "^5.2", - "symfony/config": "~5.0.11|^5.1.3", - "symfony/dependency-injection": "^5.2", + "symfony/config": "^5.3", + "symfony/dependency-injection": "^5.3", "symfony/deprecation-contracts": "^2.1", "symfony/error-handler": "^4.4.1|^5.0.1", "symfony/event-dispatcher": "^5.1", "symfony/filesystem": "^4.4|^5.0", "symfony/finder": "^4.4|^5.0", - "symfony/http-foundation": "^5.2.1", - "symfony/http-kernel": "^5.2.1", + "symfony/http-foundation": "^5.3", + "symfony/http-kernel": "^5.3", "symfony/polyfill-mbstring": "~1.0", "symfony/polyfill-php80": "^1.15", - "symfony/routing": "^5.2" + "symfony/routing": "^5.3" }, "conflict": { "doctrine/persistence": "<1.3", "phpdocumentor/reflection-docblock": "<3.2.2", "phpdocumentor/type-resolver": "<1.4.0", "phpunit/phpunit": "<5.4.3", - "symfony/asset": "<5.1", + "symfony/asset": "<5.3", "symfony/browser-kit": "<4.4", "symfony/console": "<5.2.5", "symfony/dom-crawler": "<4.4", @@ -3706,11 +3582,13 @@ "symfony/mailer": "<5.2", "symfony/messenger": "<4.4", "symfony/mime": "<4.4", - "symfony/property-access": "<5.2", + "symfony/property-access": "<5.3", "symfony/property-info": "<4.4", + "symfony/security-core": "<5.3", + "symfony/security-csrf": "<5.3", "symfony/serializer": "<5.2", "symfony/stopwatch": "<4.4", - "symfony/translation": "<5.0", + "symfony/translation": "<5.3", "symfony/twig-bridge": "<4.4", "symfony/twig-bundle": "<4.4", "symfony/validator": "<5.2", @@ -3723,35 +3601,67 @@ "doctrine/persistence": "^1.3|^2.0", "paragonie/sodium_compat": "^1.8", "phpdocumentor/reflection-docblock": "^3.0|^4.0|^5.0", - "symfony/asset": "^5.1", + "symfony/allmysms-notifier": "^5.3", + "symfony/asset": "^5.3", "symfony/browser-kit": "^4.4|^5.0", + "symfony/clickatell-notifier": "^5.3", "symfony/console": "^5.2", "symfony/css-selector": "^4.4|^5.0", + "symfony/discord-notifier": "^5.3", "symfony/dom-crawler": "^4.4|^5.0", "symfony/dotenv": "^5.1", + "symfony/esendex-notifier": "^5.3", "symfony/expression-language": "^4.4|^5.0", + "symfony/fake-chat-notifier": "^5.3", + "symfony/fake-sms-notifier": "^5.3", + "symfony/firebase-notifier": "^5.3", "symfony/form": "^5.2", + "symfony/free-mobile-notifier": "^5.3", + "symfony/gatewayapi-notifier": "^5.3", + "symfony/gitter-notifier": "^5.3", + "symfony/google-chat-notifier": "^5.3", "symfony/http-client": "^4.4|^5.0", + "symfony/infobip-notifier": "^5.3", + "symfony/iqsms-notifier": "^5.3", + "symfony/light-sms-notifier": "^5.3", + "symfony/linked-in-notifier": "^5.3", "symfony/lock": "^4.4|^5.0", "symfony/mailer": "^5.2", + "symfony/mattermost-notifier": "^5.3", + "symfony/message-bird-notifier": "^5.3", "symfony/messenger": "^5.2", + "symfony/microsoft-teams-notifier": "^5.3", "symfony/mime": "^4.4|^5.0", + "symfony/mobyt-notifier": "^5.3", + "symfony/nexmo-notifier": "^5.3", + "symfony/notifier": "^5.3", + "symfony/octopush-notifier": "^5.3", + "symfony/ovh-cloud-notifier": "^5.3", + "symfony/phpunit-bridge": "^5.3", "symfony/polyfill-intl-icu": "~1.0", "symfony/process": "^4.4|^5.0", "symfony/property-info": "^4.4|^5.0", - "symfony/security-bundle": "^5.1", - "symfony/security-core": "^4.4|^5.2", - "symfony/security-csrf": "^4.4|^5.0", - "symfony/security-http": "^4.4|^5.0", + "symfony/rate-limiter": "^5.2", + "symfony/rocket-chat-notifier": "^5.3", + "symfony/security-bundle": "^5.3", + "symfony/sendinblue-notifier": "^5.3", "symfony/serializer": "^5.2", + "symfony/sinch-notifier": "^5.3", + "symfony/slack-notifier": "^5.3", + "symfony/sms-biuras-notifier": "^5.3", + "symfony/smsapi-notifier": "^5.3", + "symfony/spot-hit-notifier": "^5.3", "symfony/stopwatch": "^4.4|^5.0", "symfony/string": "^5.0", - "symfony/translation": "^5.0", + "symfony/telegram-notifier": "^5.3", + "symfony/translation": "^5.3", "symfony/twig-bundle": "^4.4|^5.0", + "symfony/twilio-notifier": "^5.3", "symfony/validator": "^5.2", "symfony/web-link": "^4.4|^5.0", "symfony/workflow": "^5.2", "symfony/yaml": "^4.4|^5.0", + "symfony/zulip-notifier": "^5.3", "twig/twig": "^2.10|^3.0" }, "suggest": { @@ -3790,7 +3700,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.10" + "source": "https://github.com/symfony/framework-bundle/tree/v5.3.2" }, "funding": [ { @@ -3806,7 +3716,94 @@ "type": "tidelift" } ], - "time": "2021-05-26T12:52:38+00:00" + "time": "2021-06-17T13:29:40+00:00" + }, + { + "name": "symfony/http-client", + "version": "v5.3.2", + "source": { + "type": "git", + "url": "https://github.com/symfony/http-client.git", + "reference": "d2464f48482223c7c6826cd8c6ed7929d1ce6093" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/http-client/zipball/d2464f48482223c7c6826cd8c6ed7929d1ce6093", + "reference": "d2464f48482223c7c6826cd8c6ed7929d1ce6093", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "psr/log": "^1.0", + "symfony/deprecation-contracts": "^2.1", + "symfony/http-client-contracts": "^2.4", + "symfony/polyfill-php73": "^1.11", + "symfony/polyfill-php80": "^1.15", + "symfony/service-contracts": "^1.0|^2" + }, + "provide": { + "php-http/async-client-implementation": "*", + "php-http/client-implementation": "*", + "psr/http-client-implementation": "1.0", + "symfony/http-client-implementation": "2.4" + }, + "require-dev": { + "amphp/amp": "^2.5", + "amphp/http-client": "^4.2.1", + "amphp/http-tunnel": "^1.0", + "amphp/socket": "^1.1", + "guzzlehttp/promises": "^1.4", + "nyholm/psr7": "^1.0", + "php-http/httplug": "^1.0|^2.0", + "psr/http-client": "^1.0", + "symfony/dependency-injection": "^4.4|^5.0", + "symfony/http-kernel": "^4.4.13|^5.1.5", + "symfony/process": "^4.4|^5.0", + "symfony/stopwatch": "^4.4|^5.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\HttpClient\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides powerful methods to fetch HTTP resources synchronously or asynchronously", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/http-client/tree/v5.3.2" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2021-06-12T10:15:17+00:00" }, { "name": "symfony/http-client-contracts", @@ -3888,16 +3885,16 @@ }, { "name": "symfony/http-foundation", - "version": "v5.2.10", + "version": "v5.3.2", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "a148e5d6e69562a9ec0ab3bcf35c02585114cbce" + "reference": "7b6dd714d95106b831aaa7f3c9c612ab886516bd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/a148e5d6e69562a9ec0ab3bcf35c02585114cbce", - "reference": "a148e5d6e69562a9ec0ab3bcf35c02585114cbce", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/7b6dd714d95106b831aaa7f3c9c612ab886516bd", + "reference": "7b6dd714d95106b831aaa7f3c9c612ab886516bd", "shasum": "" }, "require": { @@ -3941,7 +3938,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.10" + "source": "https://github.com/symfony/http-foundation/tree/v5.3.2" }, "funding": [ { @@ -3957,20 +3954,20 @@ "type": "tidelift" } ], - "time": "2021-05-26T12:52:38+00:00" + "time": "2021-06-12T10:15:17+00:00" }, { "name": "symfony/http-kernel", - "version": "v5.2.10", + "version": "v5.3.2", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "91aaf791281a3f3f801a9257b27be5f9dfdb3dcf" + "reference": "e7021165d9dbfb4051296b8de827e92c8a7b5c87" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/91aaf791281a3f3f801a9257b27be5f9dfdb3dcf", - "reference": "91aaf791281a3f3f801a9257b27be5f9dfdb3dcf", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/e7021165d9dbfb4051296b8de827e92c8a7b5c87", + "reference": "e7021165d9dbfb4051296b8de827e92c8a7b5c87", "shasum": "" }, "require": { @@ -3980,7 +3977,7 @@ "symfony/error-handler": "^4.4|^5.0", "symfony/event-dispatcher": "^5.0", "symfony/http-client-contracts": "^1.1|^2", - "symfony/http-foundation": "^4.4|^5.0", + "symfony/http-foundation": "^5.3", "symfony/polyfill-ctype": "^1.8", "symfony/polyfill-php73": "^1.9", "symfony/polyfill-php80": "^1.15" @@ -3990,7 +3987,7 @@ "symfony/cache": "<5.0", "symfony/config": "<5.0", "symfony/console": "<4.4", - "symfony/dependency-injection": "<5.1.8", + "symfony/dependency-injection": "<5.3", "symfony/doctrine-bridge": "<5.0", "symfony/form": "<5.0", "symfony/http-client": "<5.0", @@ -4010,7 +4007,7 @@ "symfony/config": "^5.0", "symfony/console": "^4.4|^5.0", "symfony/css-selector": "^4.4|^5.0", - "symfony/dependency-injection": "^5.1.8", + "symfony/dependency-injection": "^5.3", "symfony/dom-crawler": "^4.4|^5.0", "symfony/expression-language": "^4.4|^5.0", "symfony/finder": "^4.4|^5.0", @@ -4053,7 +4050,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.10" + "source": "https://github.com/symfony/http-kernel/tree/v5.3.2" }, "funding": [ { @@ -4069,33 +4066,30 @@ "type": "tidelift" } ], - "time": "2021-06-01T09:28:31+00:00" + "time": "2021-06-17T14:18:27+00:00" }, { "name": "symfony/intl", - "version": "v5.2.10", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/symfony/intl.git", - "reference": "cf40e74a9547e810747c584be216dd0c15632669" + "reference": "92a24a5fd1087511d29a5c7dd98d97c9e2208e75" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/intl/zipball/cf40e74a9547e810747c584be216dd0c15632669", - "reference": "cf40e74a9547e810747c584be216dd0c15632669", + "url": "https://api.github.com/repos/symfony/intl/zipball/92a24a5fd1087511d29a5c7dd98d97c9e2208e75", + "reference": "92a24a5fd1087511d29a5c7dd98d97c9e2208e75", "shasum": "" }, "require": { "php": ">=7.2.5", - "symfony/polyfill-intl-icu": "~1.0", + "symfony/deprecation-contracts": "^2.1", "symfony/polyfill-php80": "^1.15" }, "require-dev": { "symfony/filesystem": "^4.4|^5.0" }, - "suggest": { - "ext-intl": "to use the component with locales other than \"en\"" - }, "type": "library", "autoload": { "psr-4": { @@ -4104,6 +4098,9 @@ "classmap": [ "Resources/stubs" ], + "files": [ + "Resources/functions.php" + ], "exclude-from-classmap": [ "/Tests/" ] @@ -4141,7 +4138,7 @@ "localization" ], "support": { - "source": "https://github.com/symfony/intl/tree/v5.2.10" + "source": "https://github.com/symfony/intl/tree/v5.3.0" }, "funding": [ { @@ -4157,26 +4154,96 @@ "type": "tidelift" } ], - "time": "2021-05-27T06:39:54+00:00" + "time": "2021-05-27T12:28:50+00:00" }, { - "name": "symfony/mailer", - "version": "v5.2.10", + "name": "symfony/loco-translation-provider", + "version": "v5.3.0", "source": { "type": "git", - "url": "https://github.com/symfony/mailer.git", - "reference": "9b4d874082b337759ce7c4ef608ecf63982a4472" + "url": "https://github.com/symfony/loco-translation-provider.git", + "reference": "1fe8c1bcaa8c4352129c4e140436825351457734" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mailer/zipball/9b4d874082b337759ce7c4ef608ecf63982a4472", - "reference": "9b4d874082b337759ce7c4ef608ecf63982a4472", + "url": "https://api.github.com/repos/symfony/loco-translation-provider/zipball/1fe8c1bcaa8c4352129c4e140436825351457734", + "reference": "1fe8c1bcaa8c4352129c4e140436825351457734", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "symfony/config": "^5.3", + "symfony/http-client": "^5.3", + "symfony/translation": "^5.3" + }, + "type": "symfony-bridge", + "autoload": { + "psr-4": { + "Symfony\\Component\\Translation\\Bridge\\Loco\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Mathieu Santostefano", + "homepage": "https://github.com/welcomattic" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Loco Translation Provider Bridge", + "homepage": "https://symfony.com", + "keywords": [ + "loco", + "provider", + "translation" + ], + "support": { + "source": "https://github.com/symfony/loco-translation-provider/tree/v5.3.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2021-05-10T12:27:24+00:00" + }, + { + "name": "symfony/mailer", + "version": "v5.3.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/mailer.git", + "reference": "3b7f45a1f5488032da33c00f619909b4a6bf57d6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/mailer/zipball/3b7f45a1f5488032da33c00f619909b4a6bf57d6", + "reference": "3b7f45a1f5488032da33c00f619909b4a6bf57d6", "shasum": "" }, "require": { "egulias/email-validator": "^2.1.10|^3", "php": ">=7.2.5", "psr/log": "~1.0", + "symfony/deprecation-contracts": "^2.1", "symfony/event-dispatcher": "^4.4|^5.0", "symfony/mime": "^5.2.6", "symfony/polyfill-php80": "^1.15", @@ -4186,15 +4253,8 @@ "symfony/http-kernel": "<4.4" }, "require-dev": { - "symfony/amazon-mailer": "^4.4|^5.0", - "symfony/google-mailer": "^4.4|^5.0", "symfony/http-client-contracts": "^1.1|^2", - "symfony/mailchimp-mailer": "^4.4|^5.0", - "symfony/mailgun-mailer": "^4.4|^5.0", - "symfony/mailjet-mailer": "^4.4|^5.0", - "symfony/messenger": "^4.4|^5.0", - "symfony/postmark-mailer": "^4.4|^5.0", - "symfony/sendgrid-mailer": "^4.4|^5.0" + "symfony/messenger": "^4.4|^5.0" }, "type": "library", "autoload": { @@ -4222,7 +4282,7 @@ "description": "Helps sending emails", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/mailer/tree/v5.2.10" + "source": "https://github.com/symfony/mailer/tree/v5.3.0" }, "funding": [ { @@ -4238,20 +4298,20 @@ "type": "tidelift" } ], - "time": "2021-05-27T12:55:18+00:00" + "time": "2021-05-27T12:56:16+00:00" }, { "name": "symfony/mime", - "version": "v5.2.10", + "version": "v5.3.2", "source": { "type": "git", "url": "https://github.com/symfony/mime.git", - "reference": "0cb96ba3149255f5e5e257db9ea38ef86e154111" + "reference": "47dd7912152b82d0d4c8d9040dbc93d6232d472a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mime/zipball/0cb96ba3149255f5e5e257db9ea38ef86e154111", - "reference": "0cb96ba3149255f5e5e257db9ea38ef86e154111", + "url": "https://api.github.com/repos/symfony/mime/zipball/47dd7912152b82d0d4c8d9040dbc93d6232d472a", + "reference": "47dd7912152b82d0d4c8d9040dbc93d6232d472a", "shasum": "" }, "require": { @@ -4305,7 +4365,7 @@ "mime-type" ], "support": { - "source": "https://github.com/symfony/mime/tree/v5.2.10" + "source": "https://github.com/symfony/mime/tree/v5.3.2" }, "funding": [ { @@ -4321,37 +4381,38 @@ "type": "tidelift" } ], - "time": "2021-05-26T12:52:38+00:00" + "time": "2021-06-09T10:58:01+00:00" }, { "name": "symfony/monolog-bridge", - "version": "v5.2.10", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/symfony/monolog-bridge.git", - "reference": "065a6ce960e4beb31a30bdaeae6e6317ab4aa810" + "reference": "84841557874df015ef2843aa16ac63d09f97c7b9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/monolog-bridge/zipball/065a6ce960e4beb31a30bdaeae6e6317ab4aa810", - "reference": "065a6ce960e4beb31a30bdaeae6e6317ab4aa810", + "url": "https://api.github.com/repos/symfony/monolog-bridge/zipball/84841557874df015ef2843aa16ac63d09f97c7b9", + "reference": "84841557874df015ef2843aa16ac63d09f97c7b9", "shasum": "" }, "require": { "monolog/monolog": "^1.25.1|^2", "php": ">=7.2.5", "symfony/deprecation-contracts": "^2.1", - "symfony/http-kernel": "^4.4|^5.0", + "symfony/http-kernel": "^5.3", "symfony/service-contracts": "^1.1|^2" }, "conflict": { "symfony/console": "<4.4", - "symfony/http-foundation": "<4.4" + "symfony/http-foundation": "<5.3" }, "require-dev": { "symfony/console": "^4.4|^5.0", "symfony/http-client": "^4.4|^5.0", "symfony/mailer": "^4.4|^5.0", + "symfony/messenger": "^4.4|^5.0", "symfony/mime": "^4.4|^5.0", "symfony/security-core": "^4.4|^5.0", "symfony/var-dumper": "^4.4|^5.0" @@ -4387,7 +4448,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.10" + "source": "https://github.com/symfony/monolog-bridge/tree/v5.3.0" }, "funding": [ { @@ -4403,7 +4464,7 @@ "type": "tidelift" } ], - "time": "2021-05-26T12:52:38+00:00" + "time": "2021-05-26T17:43:10+00:00" }, { "name": "symfony/monolog-bundle", @@ -4488,16 +4549,16 @@ }, { "name": "symfony/options-resolver", - "version": "v5.2.10", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/symfony/options-resolver.git", - "reference": "ceab1c225d04aceac65dae76063a0a47bdf12285" + "reference": "162e886ca035869866d233a2bfef70cc28f9bbe5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/options-resolver/zipball/ceab1c225d04aceac65dae76063a0a47bdf12285", - "reference": "ceab1c225d04aceac65dae76063a0a47bdf12285", + "url": "https://api.github.com/repos/symfony/options-resolver/zipball/162e886ca035869866d233a2bfef70cc28f9bbe5", + "reference": "162e886ca035869866d233a2bfef70cc28f9bbe5", "shasum": "" }, "require": { @@ -4537,7 +4598,7 @@ "options" ], "support": { - "source": "https://github.com/symfony/options-resolver/tree/v5.2.10" + "source": "https://github.com/symfony/options-resolver/tree/v5.3.0" }, "funding": [ { @@ -4553,7 +4614,80 @@ "type": "tidelift" } ], - "time": "2021-05-26T12:52:38+00:00" + "time": "2021-05-26T17:43:10+00:00" + }, + { + "name": "symfony/password-hasher", + "version": "v5.3.2", + "source": { + "type": "git", + "url": "https://github.com/symfony/password-hasher.git", + "reference": "02320f981e26fdbeeaae575911e0afa7bdcae988" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/password-hasher/zipball/02320f981e26fdbeeaae575911e0afa7bdcae988", + "reference": "02320f981e26fdbeeaae575911e0afa7bdcae988", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "symfony/polyfill-php80": "^1.15" + }, + "conflict": { + "symfony/security-core": "<5.3" + }, + "require-dev": { + "symfony/console": "^5", + "symfony/security-core": "^5.3" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\PasswordHasher\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Robin Chalas", + "email": "robin.chalas@gmail.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides password hashing utilities", + "homepage": "https://symfony.com", + "keywords": [ + "hashing", + "password" + ], + "support": { + "source": "https://github.com/symfony/password-hasher/tree/v5.3.2" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2021-06-11T14:36:11+00:00" }, { "name": "symfony/polyfill-intl-grapheme", @@ -5296,16 +5430,16 @@ }, { "name": "symfony/property-access", - "version": "v5.2.10", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/symfony/property-access.git", - "reference": "ef56ae6b6c95749352cca75a0efe1b3544fa176a" + "reference": "8988399a556cffb0fba9bb3603f8d1ba4543eceb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/property-access/zipball/ef56ae6b6c95749352cca75a0efe1b3544fa176a", - "reference": "ef56ae6b6c95749352cca75a0efe1b3544fa176a", + "url": "https://api.github.com/repos/symfony/property-access/zipball/8988399a556cffb0fba9bb3603f8d1ba4543eceb", + "reference": "8988399a556cffb0fba9bb3603f8d1ba4543eceb", "shasum": "" }, "require": { @@ -5357,7 +5491,7 @@ "reflection" ], "support": { - "source": "https://github.com/symfony/property-access/tree/v5.2.10" + "source": "https://github.com/symfony/property-access/tree/v5.3.0" }, "funding": [ { @@ -5373,20 +5507,20 @@ "type": "tidelift" } ], - "time": "2021-05-26T17:40:38+00:00" + "time": "2021-05-26T17:43:10+00:00" }, { "name": "symfony/property-info", - "version": "v5.2.10", + "version": "v5.3.1", "source": { "type": "git", "url": "https://github.com/symfony/property-info.git", - "reference": "3e96404cea2f41ea65493da526245c2b4b5ebf4e" + "reference": "6f8bff281f215dbf41929c7ec6f8309cdc0912cf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/property-info/zipball/3e96404cea2f41ea65493da526245c2b4b5ebf4e", - "reference": "3e96404cea2f41ea65493da526245c2b4b5ebf4e", + "url": "https://api.github.com/repos/symfony/property-info/zipball/6f8bff281f215dbf41929c7ec6f8309cdc0912cf", + "reference": "6f8bff281f215dbf41929c7ec6f8309cdc0912cf", "shasum": "" }, "require": { @@ -5447,7 +5581,7 @@ "validator" ], "support": { - "source": "https://github.com/symfony/property-info/tree/v5.2.10" + "source": "https://github.com/symfony/property-info/tree/v5.3.1" }, "funding": [ { @@ -5463,11 +5597,11 @@ "type": "tidelift" } ], - "time": "2021-05-26T17:40:38+00:00" + "time": "2021-05-31T12:40:48+00:00" }, { "name": "symfony/proxy-manager-bridge", - "version": "v5.2.10", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/symfony/proxy-manager-bridge.git", @@ -5534,16 +5668,16 @@ }, { "name": "symfony/routing", - "version": "v5.2.10", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/symfony/routing.git", - "reference": "8bc1f4ac6a46f63eca345d90443a7e44908142ae" + "reference": "368e81376a8e049c37cb80ae87dbfbf411279199" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/routing/zipball/8bc1f4ac6a46f63eca345d90443a7e44908142ae", - "reference": "8bc1f4ac6a46f63eca345d90443a7e44908142ae", + "url": "https://api.github.com/repos/symfony/routing/zipball/368e81376a8e049c37cb80ae87dbfbf411279199", + "reference": "368e81376a8e049c37cb80ae87dbfbf411279199", "shasum": "" }, "require": { @@ -5552,14 +5686,15 @@ "symfony/polyfill-php80": "^1.15" }, "conflict": { - "symfony/config": "<5.0", + "doctrine/annotations": "<1.12", + "symfony/config": "<5.3", "symfony/dependency-injection": "<4.4", "symfony/yaml": "<4.4" }, "require-dev": { - "doctrine/annotations": "^1.10.4", + "doctrine/annotations": "^1.12", "psr/log": "~1.0", - "symfony/config": "^5.0", + "symfony/config": "^5.3", "symfony/dependency-injection": "^4.4|^5.0", "symfony/expression-language": "^4.4|^5.0", "symfony/http-foundation": "^4.4|^5.0", @@ -5603,7 +5738,7 @@ "url" ], "support": { - "source": "https://github.com/symfony/routing/tree/v5.2.10" + "source": "https://github.com/symfony/routing/tree/v5.3.0" }, "funding": [ { @@ -5619,42 +5754,43 @@ "type": "tidelift" } ], - "time": "2021-05-26T17:40:38+00:00" + "time": "2021-05-26T17:43:10+00:00" }, { "name": "symfony/security-bundle", - "version": "v5.2.10", + "version": "v5.3.2", "source": { "type": "git", "url": "https://github.com/symfony/security-bundle.git", - "reference": "642a43f0c93752df9bab473b14192053c137583b" + "reference": "971ff372d07aacc1c92d1efd0e80947f99323483" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/security-bundle/zipball/642a43f0c93752df9bab473b14192053c137583b", - "reference": "642a43f0c93752df9bab473b14192053c137583b", + "url": "https://api.github.com/repos/symfony/security-bundle/zipball/971ff372d07aacc1c92d1efd0e80947f99323483", + "reference": "971ff372d07aacc1c92d1efd0e80947f99323483", "shasum": "" }, "require": { "ext-xml": "*", "php": ">=7.2.5", "symfony/config": "^4.4|^5.0", - "symfony/dependency-injection": "^5.2", + "symfony/dependency-injection": "^5.3", "symfony/deprecation-contracts": "^2.1", "symfony/event-dispatcher": "^5.1", - "symfony/http-kernel": "^5.0", + "symfony/http-foundation": "^5.3", + "symfony/http-kernel": "^5.3", + "symfony/password-hasher": "^5.3", "symfony/polyfill-php80": "^1.15", - "symfony/security-core": "^5.2", + "symfony/security-core": "^5.3", "symfony/security-csrf": "^4.4|^5.0", - "symfony/security-guard": "^5.2", - "symfony/security-http": "^5.2" + "symfony/security-guard": "^5.3", + "symfony/security-http": "^5.3.2" }, "conflict": { "symfony/browser-kit": "<4.4", "symfony/console": "<4.4", "symfony/framework-bundle": "<4.4", - "symfony/ldap": "<4.4", - "symfony/security-http": "<5.2.8", + "symfony/ldap": "<5.1", "symfony/twig-bundle": "<4.4" }, "require-dev": { @@ -5666,7 +5802,8 @@ "symfony/dom-crawler": "^4.4|^5.0", "symfony/expression-language": "^4.4|^5.0", "symfony/form": "^4.4|^5.0", - "symfony/framework-bundle": "^5.2", + "symfony/framework-bundle": "^5.3", + "symfony/ldap": "^5.3", "symfony/process": "^4.4|^5.0", "symfony/rate-limiter": "^5.2", "symfony/serializer": "^4.4|^5.0", @@ -5703,7 +5840,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/v5.2.10" + "source": "https://github.com/symfony/security-bundle/tree/v5.3.2" }, "funding": [ { @@ -5719,41 +5856,45 @@ "type": "tidelift" } ], - "time": "2021-05-26T12:52:38+00:00" + "time": "2021-06-17T13:35:32+00:00" }, { "name": "symfony/security-core", - "version": "v5.2.10", + "version": "v5.3.2", "source": { "type": "git", "url": "https://github.com/symfony/security-core.git", - "reference": "94225470036d67ae8bb6a746809fe737aa7c0319" + "reference": "dc44d2a4275345621266356f6cb7ef6e0864c3fa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/security-core/zipball/94225470036d67ae8bb6a746809fe737aa7c0319", - "reference": "94225470036d67ae8bb6a746809fe737aa7c0319", + "url": "https://api.github.com/repos/symfony/security-core/zipball/dc44d2a4275345621266356f6cb7ef6e0864c3fa", + "reference": "dc44d2a4275345621266356f6cb7ef6e0864c3fa", "shasum": "" }, "require": { "php": ">=7.2.5", "symfony/deprecation-contracts": "^2.1", "symfony/event-dispatcher-contracts": "^1.1|^2", + "symfony/password-hasher": "^5.3", "symfony/polyfill-php80": "^1.15", "symfony/service-contracts": "^1.1.6|^2" }, "conflict": { "symfony/event-dispatcher": "<4.4", + "symfony/http-foundation": "<5.3", "symfony/ldap": "<4.4", "symfony/security-guard": "<4.4", "symfony/validator": "<5.2" }, "require-dev": { + "psr/cache": "^1.0|^2.0|^3.0", "psr/container": "^1.0|^2.0", "psr/log": "~1.0", + "symfony/cache": "^4.4|^5.0", "symfony/event-dispatcher": "^4.4|^5.0", "symfony/expression-language": "^4.4|^5.0", - "symfony/http-foundation": "^4.4|^5.0", + "symfony/http-foundation": "^5.3", "symfony/ldap": "^4.4|^5.0", "symfony/translation": "^4.4|^5.0", "symfony/validator": "^5.2" @@ -5792,7 +5933,7 @@ "description": "Symfony Security Component - Core Library", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/security-core/tree/v5.2.10" + "source": "https://github.com/symfony/security-core/tree/v5.3.2" }, "funding": [ { @@ -5808,20 +5949,20 @@ "type": "tidelift" } ], - "time": "2021-05-26T17:40:38+00:00" + "time": "2021-06-15T17:42:09+00:00" }, { "name": "symfony/security-csrf", - "version": "v5.2.10", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/symfony/security-csrf.git", - "reference": "89f7d0778d988579e16a173cbdd9656c1bfd8b79" + "reference": "c7b7006d3ed955da978a002d764cae388bed8d09" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/security-csrf/zipball/89f7d0778d988579e16a173cbdd9656c1bfd8b79", - "reference": "89f7d0778d988579e16a173cbdd9656c1bfd8b79", + "url": "https://api.github.com/repos/symfony/security-csrf/zipball/c7b7006d3ed955da978a002d764cae388bed8d09", + "reference": "c7b7006d3ed955da978a002d764cae388bed8d09", "shasum": "" }, "require": { @@ -5829,10 +5970,10 @@ "symfony/security-core": "^4.4|^5.0" }, "conflict": { - "symfony/http-foundation": "<4.4" + "symfony/http-foundation": "<5.3" }, "require-dev": { - "symfony/http-foundation": "^4.4|^5.0" + "symfony/http-foundation": "^5.3" }, "suggest": { "symfony/http-foundation": "For using the class SessionTokenStorage." @@ -5863,7 +6004,7 @@ "description": "Symfony Security Component - CSRF Library", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/security-csrf/tree/v5.2.10" + "source": "https://github.com/symfony/security-csrf/tree/v5.3.0" }, "funding": [ { @@ -5879,27 +6020,27 @@ "type": "tidelift" } ], - "time": "2021-05-26T12:52:38+00:00" + "time": "2021-05-26T17:43:10+00:00" }, { "name": "symfony/security-guard", - "version": "v5.2.10", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/symfony/security-guard.git", - "reference": "9fc67f0fd82b6f5334099d2ba1ecba048818c60f" + "reference": "07b97d3c8fa9b761ad3a52d659a47661b458c51b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/security-guard/zipball/9fc67f0fd82b6f5334099d2ba1ecba048818c60f", - "reference": "9fc67f0fd82b6f5334099d2ba1ecba048818c60f", + "url": "https://api.github.com/repos/symfony/security-guard/zipball/07b97d3c8fa9b761ad3a52d659a47661b458c51b", + "reference": "07b97d3c8fa9b761ad3a52d659a47661b458c51b", "shasum": "" }, "require": { "php": ">=7.2.5", "symfony/polyfill-php80": "^1.15", "symfony/security-core": "^5.0", - "symfony/security-http": "^4.4.1|^5.0.1" + "symfony/security-http": "^5.3" }, "require-dev": { "psr/log": "~1.0" @@ -5930,7 +6071,7 @@ "description": "Symfony Security Component - Guard", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/security-guard/tree/v5.2.10" + "source": "https://github.com/symfony/security-guard/tree/v5.3.0" }, "funding": [ { @@ -5946,34 +6087,35 @@ "type": "tidelift" } ], - "time": "2021-05-26T12:52:38+00:00" + "time": "2021-05-26T17:43:10+00:00" }, { "name": "symfony/security-http", - "version": "v5.2.10", + "version": "v5.3.2", "source": { "type": "git", "url": "https://github.com/symfony/security-http.git", - "reference": "dc61639e1320010bd14b0c1b355643da83fd5be6" + "reference": "6bf4c31219773a558b019ee12e54572174ff8129" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/security-http/zipball/dc61639e1320010bd14b0c1b355643da83fd5be6", - "reference": "dc61639e1320010bd14b0c1b355643da83fd5be6", + "url": "https://api.github.com/repos/symfony/security-http/zipball/6bf4c31219773a558b019ee12e54572174ff8129", + "reference": "6bf4c31219773a558b019ee12e54572174ff8129", "shasum": "" }, "require": { "php": ">=7.2.5", "symfony/deprecation-contracts": "^2.1", - "symfony/http-foundation": "^5.2", - "symfony/http-kernel": "^5.2", + "symfony/http-foundation": "^5.3", + "symfony/http-kernel": "^5.3", "symfony/polyfill-mbstring": "~1.0", "symfony/polyfill-php80": "^1.15", "symfony/property-access": "^4.4|^5.0", - "symfony/security-core": "^5.2" + "symfony/security-core": "^5.3" }, "conflict": { "symfony/event-dispatcher": "<4.3", + "symfony/security-bundle": "<5.3", "symfony/security-csrf": "<4.4" }, "require-dev": { @@ -6014,7 +6156,7 @@ "description": "Symfony Security Component - HTTP Integration", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/security-http/tree/v5.2.10" + "source": "https://github.com/symfony/security-http/tree/v5.3.2" }, "funding": [ { @@ -6030,7 +6172,7 @@ "type": "tidelift" } ], - "time": "2021-05-26T12:52:38+00:00" + "time": "2021-06-17T13:35:32+00:00" }, { "name": "symfony/service-contracts", @@ -6113,16 +6255,16 @@ }, { "name": "symfony/stopwatch", - "version": "v5.2.10", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/symfony/stopwatch.git", - "reference": "64f4ed9232ad5372df8a61b1311502202fb0a03c" + "reference": "313d02f59d6543311865007e5ff4ace05b35ee65" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/stopwatch/zipball/64f4ed9232ad5372df8a61b1311502202fb0a03c", - "reference": "64f4ed9232ad5372df8a61b1311502202fb0a03c", + "url": "https://api.github.com/repos/symfony/stopwatch/zipball/313d02f59d6543311865007e5ff4ace05b35ee65", + "reference": "313d02f59d6543311865007e5ff4ace05b35ee65", "shasum": "" }, "require": { @@ -6155,7 +6297,7 @@ "description": "Provides a way to profile code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/stopwatch/tree/v5.2.10" + "source": "https://github.com/symfony/stopwatch/tree/v5.3.0" }, "funding": [ { @@ -6171,20 +6313,20 @@ "type": "tidelift" } ], - "time": "2021-05-26T17:33:56+00:00" + "time": "2021-05-26T17:43:10+00:00" }, { "name": "symfony/string", - "version": "v5.2.10", + "version": "v5.3.2", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "abd6bb17be75ddb10b022f02820464b785882a7f" + "reference": "0732e97e41c0a590f77e231afc16a327375d50b0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/abd6bb17be75ddb10b022f02820464b785882a7f", - "reference": "abd6bb17be75ddb10b022f02820464b785882a7f", + "url": "https://api.github.com/repos/symfony/string/zipball/0732e97e41c0a590f77e231afc16a327375d50b0", + "reference": "0732e97e41c0a590f77e231afc16a327375d50b0", "shasum": "" }, "require": { @@ -6238,7 +6380,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v5.2.10" + "source": "https://github.com/symfony/string/tree/v5.3.2" }, "funding": [ { @@ -6254,24 +6396,25 @@ "type": "tidelift" } ], - "time": "2021-05-26T17:40:38+00:00" + "time": "2021-06-06T09:51:56+00:00" }, { "name": "symfony/translation", - "version": "v5.2.10", + "version": "v5.3.2", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "dc49cfb0d1d1bf6a9aaccccee570ef62e7b095c4" + "reference": "7e2603bcc598e14804c4d2359d8dc4ee3c40391b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/dc49cfb0d1d1bf6a9aaccccee570ef62e7b095c4", - "reference": "dc49cfb0d1d1bf6a9aaccccee570ef62e7b095c4", + "url": "https://api.github.com/repos/symfony/translation/zipball/7e2603bcc598e14804c4d2359d8dc4ee3c40391b", + "reference": "7e2603bcc598e14804c4d2359d8dc4ee3c40391b", "shasum": "" }, "require": { "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1", "symfony/polyfill-mbstring": "~1.0", "symfony/polyfill-php80": "^1.15", "symfony/translation-contracts": "^2.3" @@ -6294,6 +6437,7 @@ "symfony/finder": "^4.4|^5.0", "symfony/http-kernel": "^5.0", "symfony/intl": "^4.4|^5.0", + "symfony/polyfill-intl-icu": "^1.21", "symfony/service-contracts": "^1.1.2|^2", "symfony/yaml": "^4.4|^5.0" }, @@ -6331,7 +6475,7 @@ "description": "Provides tools to internationalize your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/translation/tree/v5.2.10" + "source": "https://github.com/symfony/translation/tree/v5.3.2" }, "funding": [ { @@ -6347,7 +6491,7 @@ "type": "tidelift" } ], - "time": "2021-05-26T17:40:38+00:00" + "time": "2021-06-06T09:51:56+00:00" }, { "name": "symfony/translation-contracts", @@ -6429,16 +6573,16 @@ }, { "name": "symfony/twig-bridge", - "version": "v5.2.10", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/symfony/twig-bridge.git", - "reference": "3590e0e352a038b23f65410f388ce1a800debc6c" + "reference": "cbd8f87a3d2445e566db3fe75e34a0bcad70c222" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/twig-bridge/zipball/3590e0e352a038b23f65410f388ce1a800debc6c", - "reference": "3590e0e352a038b23f65410f388ce1a800debc6c", + "url": "https://api.github.com/repos/symfony/twig-bridge/zipball/cbd8f87a3d2445e566db3fe75e34a0bcad70c222", + "reference": "cbd8f87a3d2445e566db3fe75e34a0bcad70c222", "shasum": "" }, "require": { @@ -6451,13 +6595,14 @@ "phpdocumentor/reflection-docblock": "<3.2.2", "phpdocumentor/type-resolver": "<1.4.0", "symfony/console": "<4.4", - "symfony/form": "<5.1", - "symfony/http-foundation": "<4.4", + "symfony/form": "<5.3", + "symfony/http-foundation": "<5.3", "symfony/http-kernel": "<4.4", "symfony/translation": "<5.2", "symfony/workflow": "<5.2" }, "require-dev": { + "doctrine/annotations": "^1.12", "egulias/email-validator": "^2.1.10|^3", "phpdocumentor/reflection-docblock": "^3.0|^4.0|^5.0", "symfony/asset": "^4.4|^5.0", @@ -6465,8 +6610,8 @@ "symfony/dependency-injection": "^4.4|^5.0", "symfony/expression-language": "^4.4|^5.0", "symfony/finder": "^4.4|^5.0", - "symfony/form": "^5.1.9", - "symfony/http-foundation": "^4.4|^5.0", + "symfony/form": "^5.3", + "symfony/http-foundation": "^5.3", "symfony/http-kernel": "^4.4|^5.0", "symfony/intl": "^4.4|^5.0", "symfony/mime": "^5.2", @@ -6529,7 +6674,7 @@ "description": "Provides integration for Twig with various Symfony components", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/twig-bridge/tree/v5.2.10" + "source": "https://github.com/symfony/twig-bridge/tree/v5.3.0" }, "funding": [ { @@ -6545,20 +6690,20 @@ "type": "tidelift" } ], - "time": "2021-05-26T12:52:38+00:00" + "time": "2021-05-26T17:43:10+00:00" }, { "name": "symfony/twig-bundle", - "version": "v5.2.10", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/symfony/twig-bundle.git", - "reference": "c078458e37a90b4ec8abb9f8fe6c3011d35e8039" + "reference": "d386aaa46d1afe5afb51b39675fc2ab206159206" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/twig-bundle/zipball/c078458e37a90b4ec8abb9f8fe6c3011d35e8039", - "reference": "c078458e37a90b4ec8abb9f8fe6c3011d35e8039", + "url": "https://api.github.com/repos/symfony/twig-bundle/zipball/d386aaa46d1afe5afb51b39675fc2ab206159206", + "reference": "d386aaa46d1afe5afb51b39675fc2ab206159206", "shasum": "" }, "require": { @@ -6567,11 +6712,11 @@ "symfony/http-foundation": "^4.4|^5.0", "symfony/http-kernel": "^5.0", "symfony/polyfill-ctype": "~1.8", - "symfony/twig-bridge": "^5.0", + "symfony/twig-bridge": "^5.3", "twig/twig": "^2.13|^3.0.4" }, "conflict": { - "symfony/dependency-injection": "<5.2", + "symfony/dependency-injection": "<5.3", "symfony/framework-bundle": "<5.0", "symfony/translation": "<5.0" }, @@ -6579,7 +6724,7 @@ "doctrine/annotations": "^1.10.4", "doctrine/cache": "^1.0|^2.0", "symfony/asset": "^4.4|^5.0", - "symfony/dependency-injection": "^5.2", + "symfony/dependency-injection": "^5.3", "symfony/expression-language": "^4.4|^5.0", "symfony/finder": "^4.4|^5.0", "symfony/form": "^4.4|^5.0", @@ -6616,7 +6761,7 @@ "description": "Provides a tight integration of Twig into the Symfony full-stack framework", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/twig-bundle/tree/v5.2.10" + "source": "https://github.com/symfony/twig-bundle/tree/v5.3.0" }, "funding": [ { @@ -6632,26 +6777,29 @@ "type": "tidelift" } ], - "time": "2021-05-26T12:52:38+00:00" + "time": "2021-05-26T17:43:10+00:00" }, { "name": "symfony/uid", - "version": "v5.2.10", + "version": "v5.3.2", "source": { "type": "git", "url": "https://github.com/symfony/uid.git", - "reference": "9e052369bf8292c0f536b457312c2d3cd8e0b850" + "reference": "7f7703a1d5e106b3619d556e8313a575a47ac3fa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/uid/zipball/9e052369bf8292c0f536b457312c2d3cd8e0b850", - "reference": "9e052369bf8292c0f536b457312c2d3cd8e0b850", + "url": "https://api.github.com/repos/symfony/uid/zipball/7f7703a1d5e106b3619d556e8313a575a47ac3fa", + "reference": "7f7703a1d5e106b3619d556e8313a575a47ac3fa", "shasum": "" }, "require": { "php": ">=7.2.5", "symfony/polyfill-uuid": "^1.15" }, + "require-dev": { + "symfony/console": "^4.4|^5.0" + }, "type": "library", "autoload": { "psr-4": { @@ -6686,7 +6834,7 @@ "uuid" ], "support": { - "source": "https://github.com/symfony/uid/tree/v5.2.10" + "source": "https://github.com/symfony/uid/tree/v5.3.2" }, "funding": [ { @@ -6702,20 +6850,20 @@ "type": "tidelift" } ], - "time": "2021-05-26T17:40:38+00:00" + "time": "2021-06-17T12:52:32+00:00" }, { "name": "symfony/validator", - "version": "v5.2.10", + "version": "v5.3.2", "source": { "type": "git", "url": "https://github.com/symfony/validator.git", - "reference": "8b882f5a50df87ee194ccd8d7e4ebf5cabebad5e" + "reference": "87621b2503601673b7e76aeffac3234ada8e1bf2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/validator/zipball/8b882f5a50df87ee194ccd8d7e4ebf5cabebad5e", - "reference": "8b882f5a50df87ee194ccd8d7e4ebf5cabebad5e", + "url": "https://api.github.com/repos/symfony/validator/zipball/87621b2503601673b7e76aeffac3234ada8e1bf2", + "reference": "87621b2503601673b7e76aeffac3234ada8e1bf2", "shasum": "" }, "require": { @@ -6734,6 +6882,7 @@ "symfony/expression-language": "<5.1", "symfony/http-kernel": "<4.4", "symfony/intl": "<4.4", + "symfony/property-info": "<5.3", "symfony/translation": "<4.4", "symfony/yaml": "<4.4" }, @@ -6753,7 +6902,7 @@ "symfony/intl": "^4.4|^5.0", "symfony/mime": "^4.4|^5.0", "symfony/property-access": "^4.4|^5.0", - "symfony/property-info": "^4.4|^5.0", + "symfony/property-info": "^5.3", "symfony/translation": "^4.4|^5.0", "symfony/yaml": "^4.4|^5.0" }, @@ -6795,7 +6944,7 @@ "description": "Provides tools to validate values", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/validator/tree/v5.2.10" + "source": "https://github.com/symfony/validator/tree/v5.3.2" }, "funding": [ { @@ -6811,20 +6960,20 @@ "type": "tidelift" } ], - "time": "2021-05-26T17:40:38+00:00" + "time": "2021-06-17T12:34:27+00:00" }, { "name": "symfony/var-dumper", - "version": "v5.2.10", + "version": "v5.3.2", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "85bc8988d49d3f3bbede1e937f758d5dcb9dd694" + "reference": "905a22c68b292ffb6f20d7636c36b220d1fba5ae" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/85bc8988d49d3f3bbede1e937f758d5dcb9dd694", - "reference": "85bc8988d49d3f3bbede1e937f758d5dcb9dd694", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/905a22c68b292ffb6f20d7636c36b220d1fba5ae", + "reference": "905a22c68b292ffb6f20d7636c36b220d1fba5ae", "shasum": "" }, "require": { @@ -6883,7 +7032,7 @@ "dump" ], "support": { - "source": "https://github.com/symfony/var-dumper/tree/v5.2.10" + "source": "https://github.com/symfony/var-dumper/tree/v5.3.2" }, "funding": [ { @@ -6899,20 +7048,20 @@ "type": "tidelift" } ], - "time": "2021-05-27T10:48:07+00:00" + "time": "2021-06-06T09:51:56+00:00" }, { "name": "symfony/var-exporter", - "version": "v5.2.10", + "version": "v5.3.2", "source": { "type": "git", "url": "https://github.com/symfony/var-exporter.git", - "reference": "7a7c9dd972541f78e7815c03c0bae9f81e0e9dbb" + "reference": "df663fb63bdcd7298373cbd431165ab031706cb2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-exporter/zipball/7a7c9dd972541f78e7815c03c0bae9f81e0e9dbb", - "reference": "7a7c9dd972541f78e7815c03c0bae9f81e0e9dbb", + "url": "https://api.github.com/repos/symfony/var-exporter/zipball/df663fb63bdcd7298373cbd431165ab031706cb2", + "reference": "df663fb63bdcd7298373cbd431165ab031706cb2", "shasum": "" }, "require": { @@ -6956,7 +7105,7 @@ "serialize" ], "support": { - "source": "https://github.com/symfony/var-exporter/tree/v5.3.0" + "source": "https://github.com/symfony/var-exporter/tree/v5.3.2" }, "funding": [ { @@ -6972,7 +7121,7 @@ "type": "tidelift" } ], - "time": "2021-05-26T17:40:38+00:00" + "time": "2021-06-09T10:57:10+00:00" }, { "name": "symfony/webpack-encore-bundle", @@ -7047,16 +7196,16 @@ }, { "name": "symfony/yaml", - "version": "v5.2.10", + "version": "v5.3.2", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "cd7930d6a7e0d8ceac299846235bc6e2e032c3a3" + "reference": "71719ab2409401711d619765aa255f9d352a59b2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/cd7930d6a7e0d8ceac299846235bc6e2e032c3a3", - "reference": "cd7930d6a7e0d8ceac299846235bc6e2e032c3a3", + "url": "https://api.github.com/repos/symfony/yaml/zipball/71719ab2409401711d619765aa255f9d352a59b2", + "reference": "71719ab2409401711d619765aa255f9d352a59b2", "shasum": "" }, "require": { @@ -7102,7 +7251,7 @@ "description": "Loads and dumps YAML files", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/yaml/tree/v5.2.10" + "source": "https://github.com/symfony/yaml/tree/v5.3.2" }, "funding": [ { @@ -7118,7 +7267,7 @@ "type": "tidelift" } ], - "time": "2021-05-26T17:40:38+00:00" + "time": "2021-06-06T09:51:56+00:00" }, { "name": "symfonycasts/reset-password-bundle", @@ -7448,16 +7597,16 @@ "packages-dev": [ { "name": "symfony/browser-kit", - "version": "v5.2.10", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/symfony/browser-kit.git", - "reference": "4fdcde557ae8f4f3666a9aad9dc076448e56a31a" + "reference": "379984e25eee9811b0a25a2105e1a2b3b8d9b734" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/browser-kit/zipball/4fdcde557ae8f4f3666a9aad9dc076448e56a31a", - "reference": "4fdcde557ae8f4f3666a9aad9dc076448e56a31a", + "url": "https://api.github.com/repos/symfony/browser-kit/zipball/379984e25eee9811b0a25a2105e1a2b3b8d9b734", + "reference": "379984e25eee9811b0a25a2105e1a2b3b8d9b734", "shasum": "" }, "require": { @@ -7499,7 +7648,7 @@ "description": "Simulates the behavior of a web browser, allowing you to make requests, click on links and submit forms programmatically", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/browser-kit/tree/v5.2.10" + "source": "https://github.com/symfony/browser-kit/tree/v5.3.0" }, "funding": [ { @@ -7515,11 +7664,11 @@ "type": "tidelift" } ], - "time": "2021-05-26T17:40:38+00:00" + "time": "2021-05-26T17:43:10+00:00" }, { "name": "symfony/css-selector", - "version": "v5.2.10", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/symfony/css-selector.git", @@ -7584,16 +7733,16 @@ }, { "name": "symfony/debug-bundle", - "version": "v5.2.4", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/symfony/debug-bundle.git", - "reference": "ec21bd26d24dab02ac40e4bec362b3f4032486e8" + "reference": "b73833ac97189fc809816dfbb02185a1a793b072" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/debug-bundle/zipball/ec21bd26d24dab02ac40e4bec362b3f4032486e8", - "reference": "ec21bd26d24dab02ac40e4bec362b3f4032486e8", + "url": "https://api.github.com/repos/symfony/debug-bundle/zipball/b73833ac97189fc809816dfbb02185a1a793b072", + "reference": "b73833ac97189fc809816dfbb02185a1a793b072", "shasum": "" }, "require": { @@ -7642,7 +7791,7 @@ "description": "Provides a tight integration of the Symfony Debug component into the Symfony full-stack framework", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/debug-bundle/tree/v5.2.4" + "source": "https://github.com/symfony/debug-bundle/tree/v5.3.0" }, "funding": [ { @@ -7658,24 +7807,25 @@ "type": "tidelift" } ], - "time": "2021-01-10T16:30:10+00:00" + "time": "2021-03-17T16:58:09+00:00" }, { "name": "symfony/dom-crawler", - "version": "v5.2.10", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/symfony/dom-crawler.git", - "reference": "6854b525d68ec7ddfe5f2d57521612f995257226" + "reference": "55fff62b19f413f897a752488ade1bc9c8a19cdd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/6854b525d68ec7ddfe5f2d57521612f995257226", - "reference": "6854b525d68ec7ddfe5f2d57521612f995257226", + "url": "https://api.github.com/repos/symfony/dom-crawler/zipball/55fff62b19f413f897a752488ade1bc9c8a19cdd", + "reference": "55fff62b19f413f897a752488ade1bc9c8a19cdd", "shasum": "" }, "require": { "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1", "symfony/polyfill-ctype": "~1.8", "symfony/polyfill-mbstring": "~1.0", "symfony/polyfill-php80": "^1.15" @@ -7716,7 +7866,7 @@ "description": "Eases DOM navigation for HTML and XML documents", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/dom-crawler/tree/v5.2.10" + "source": "https://github.com/symfony/dom-crawler/tree/v5.3.0" }, "funding": [ { @@ -7732,7 +7882,7 @@ "type": "tidelift" } ], - "time": "2021-05-26T12:52:38+00:00" + "time": "2021-05-26T17:43:10+00:00" }, { "name": "symfony/maker-bundle", @@ -7907,23 +8057,23 @@ }, { "name": "symfony/web-profiler-bundle", - "version": "v5.2.10", + "version": "v5.3.2", "source": { "type": "git", "url": "https://github.com/symfony/web-profiler-bundle.git", - "reference": "ecff474430abe9a01a88a94960bf380bdbfa58c5" + "reference": "8feb731cfc248cce5c0ac6eeba63ec4923c6a264" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/web-profiler-bundle/zipball/ecff474430abe9a01a88a94960bf380bdbfa58c5", - "reference": "ecff474430abe9a01a88a94960bf380bdbfa58c5", + "url": "https://api.github.com/repos/symfony/web-profiler-bundle/zipball/8feb731cfc248cce5c0ac6eeba63ec4923c6a264", + "reference": "8feb731cfc248cce5c0ac6eeba63ec4923c6a264", "shasum": "" }, "require": { "php": ">=7.2.5", "symfony/config": "^4.4|^5.0", - "symfony/framework-bundle": "^5.1", - "symfony/http-kernel": "^5.2", + "symfony/framework-bundle": "^5.3", + "symfony/http-kernel": "^5.3", "symfony/routing": "^4.4|^5.0", "symfony/twig-bundle": "^4.4|^5.0", "twig/twig": "^2.13|^3.0.4" @@ -7965,7 +8115,7 @@ "description": "Provides a development tool that gives detailed information about the execution of any request", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/web-profiler-bundle/tree/v5.2.10" + "source": "https://github.com/symfony/web-profiler-bundle/tree/v5.3.2" }, "funding": [ { @@ -7981,7 +8131,7 @@ "type": "tidelift" } ], - "time": "2021-05-26T17:33:56+00:00" + "time": "2021-06-07T14:51:59+00:00" } ], "aliases": [], @@ -7995,5 +8145,5 @@ "ext-iconv": "*" }, "platform-dev": [], - "plugin-api-version": "2.0.0" + "plugin-api-version": "2.1.0" } diff --git a/config/packages/translation.yaml b/config/packages/translation.yaml index 05a2b3d..9995e20 100644 --- a/config/packages/translation.yaml +++ b/config/packages/translation.yaml @@ -1,6 +1,8 @@ framework: default_locale: en translator: - default_path: '%kernel.project_dir%/translations' - fallbacks: - - en + providers: + loco: + dsn: '%env(LOCO_DSN)%' + domains: ['messages'] + locales: ['en', 'de'] diff --git a/symfony.lock b/symfony.lock index 28c4574..c598539 100644 --- a/symfony.lock +++ b/symfony.lock @@ -100,12 +100,6 @@ "laminas/laminas-code": { "version": "4.2.0" }, - "laminas/laminas-eventmanager": { - "version": "3.3.1" - }, - "laminas/laminas-zendframework-bridge": { - "version": "1.2.0" - }, "mjaschen/phpgeo": { "version": "3.2.1" }, @@ -249,6 +243,9 @@ "src/Kernel.php" ] }, + "symfony/http-client": { + "version": "v5.3.0" + }, "symfony/http-client-contracts": { "version": "v2.4.0" }, @@ -261,6 +258,15 @@ "symfony/intl": { "version": "v5.2.4" }, + "symfony/loco-translation-provider": { + "version": "5.3", + "recipe": { + "repo": "github.com/symfony/recipes", + "branch": "master", + "version": "5.3", + "ref": "c706da68af4ae956f45cffccf99a130e9484cb33" + } + }, "symfony/mailer": { "version": "4.3", "recipe": { @@ -309,6 +315,9 @@ "symfony/orm-pack": { "version": "v2.1.0" }, + "symfony/password-hasher": { + "version": "v5.3.0" + }, "symfony/phpunit-bridge": { "version": "5.1", "recipe": { diff --git a/templates/app/index.html.twig b/templates/app/index.html.twig index be7a482..4cedef6 100644 --- a/templates/app/index.html.twig +++ b/templates/app/index.html.twig @@ -3,9 +3,10 @@ {% block title %}Home{% endblock %} {% block body %} +
-

Welcome to Pflänz.li

-

This is a platform to trade plants. You can offer plants and setup a wishlist what you want to trade it for.

+

{% trans %} homepage.welcome {% endtrans %}

+

{% trans %} homepage.welcome.info {% endtrans %}


To offer your plants, please register first.

Register now From 01db6b0f60ff58996e711abccfb3dcd4d3f322da Mon Sep 17 00:00:00 2001 From: thisfro Date: Sat, 19 Jun 2021 12:33:11 +0200 Subject: [PATCH 002/119] Use API to pull from loco --- Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index e230343..a01adfa 100644 --- a/Dockerfile +++ b/Dockerfile @@ -26,8 +26,8 @@ RUN yarn install && \ yarn build # Pull translation -RUN php bin/console translation:pull loco --locales=en -RUN php bin/console translation:pull loco --locales=de +RUN curl https://localise.biz/api/export/locale/en.yml?key=RCrByb141Z9P3QjMhWgHrqRrdxu9x-Rro&format=symfony > translations/messages.en.yml +RUN curl https://localise.biz/api/export/locale/de.yml?key=RCrByb141Z9P3QjMhWgHrqRrdxu9x-Rro&format=symfony > translations/messages.de.yml RUN cp .env.staging .env From 929991dccaed11ed1fca950d49bc0c1f78171005 Mon Sep 17 00:00:00 2001 From: thisfro Date: Sat, 19 Jun 2021 12:42:40 +0200 Subject: [PATCH 003/119] Change translation key --- templates/app/index.html.twig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/templates/app/index.html.twig b/templates/app/index.html.twig index 4cedef6..42169e1 100644 --- a/templates/app/index.html.twig +++ b/templates/app/index.html.twig @@ -5,7 +5,7 @@ {% block body %}
-

{% trans %} homepage.welcome {% endtrans %}

+

{% trans %} homepage.welcome.header {% endtrans %}

{% trans %} homepage.welcome.info {% endtrans %}


To offer your plants, please register first.

From 6b98dd6055672527512fb9f90a0bad5593f43bb9 Mon Sep 17 00:00:00 2001 From: thisfro Date: Sat, 19 Jun 2021 12:43:34 +0200 Subject: [PATCH 004/119] Add quotes around curl argument --- Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index a01adfa..27c12ea 100644 --- a/Dockerfile +++ b/Dockerfile @@ -26,8 +26,8 @@ RUN yarn install && \ yarn build # Pull translation -RUN curl https://localise.biz/api/export/locale/en.yml?key=RCrByb141Z9P3QjMhWgHrqRrdxu9x-Rro&format=symfony > translations/messages.en.yml -RUN curl https://localise.biz/api/export/locale/de.yml?key=RCrByb141Z9P3QjMhWgHrqRrdxu9x-Rro&format=symfony > translations/messages.de.yml +RUN curl "https://localise.biz/api/export/locale/en.yml?key=RCrByb141Z9P3QjMhWgHrqRrdxu9x-Rro&format=symfony" > translations/messages.en.yml +RUN curl "https://localise.biz/api/export/locale/de.yml?key=RCrByb141Z9P3QjMhWgHrqRrdxu9x-Rro&format=symfony" > translations/messages.de.yml RUN cp .env.staging .env From 307e251388da6f0dab11eead5211ea28fc3891d1 Mon Sep 17 00:00:00 2001 From: Jannis Portmann Date: Sat, 12 Jun 2021 09:17:19 +0200 Subject: [PATCH 005/119] Use generic git icon in footer and set gitea link --- templates/base.html.twig | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/templates/base.html.twig b/templates/base.html.twig index 2276562..46efe4d 100644 --- a/templates/base.html.twig +++ b/templates/base.html.twig @@ -72,8 +72,8 @@
- - + +
From 1758011412b7fd45bf1c505a347a628c45b99eee Mon Sep 17 00:00:00 2001 From: thisfro Date: Sat, 10 Jul 2021 12:46:44 +0200 Subject: [PATCH 006/119] Rename function to camelCase --- src/Controller/OfferController.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Controller/OfferController.php b/src/Controller/OfferController.php index 3a30287..4d68277 100644 --- a/src/Controller/OfferController.php +++ b/src/Controller/OfferController.php @@ -75,7 +75,7 @@ class OfferController extends AbstractController } #[Route('/offer/{id}', name: 'show_offer')] - public function show_offer(Offering $offer, WishRepository $wishRepository, PlzToCoordinate $plzconverter, DistanceCalculator $distanceCalculator): Response + public function showOffer(Offering $offer, WishRepository $wishRepository, PlzToCoordinate $plzconverter, DistanceCalculator $distanceCalculator): Response { $distance = 0; $user = $this->getUser(); From 7f485cee91ee9d20688de466cb8c4c5bdac348ab Mon Sep 17 00:00:00 2001 From: thisfro Date: Wed, 14 Jul 2021 12:03:07 +0200 Subject: [PATCH 007/119] Set distance to null instead of 0 --- src/Controller/OfferController.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Controller/OfferController.php b/src/Controller/OfferController.php index 4d68277..deb8641 100644 --- a/src/Controller/OfferController.php +++ b/src/Controller/OfferController.php @@ -77,7 +77,7 @@ class OfferController extends AbstractController #[Route('/offer/{id}', name: 'show_offer')] public function showOffer(Offering $offer, WishRepository $wishRepository, PlzToCoordinate $plzconverter, DistanceCalculator $distanceCalculator): Response { - $distance = 0; + $distance = null; $user = $this->getUser(); $offerPlz = $offer->getZipCode(); From df57a6f303472e1b83ddcb74b3cef120efe00fa6 Mon Sep 17 00:00:00 2001 From: thisfro Date: Wed, 14 Jul 2021 13:47:42 +0200 Subject: [PATCH 008/119] Refactor uploded file handling --- composer.json | 1 + composer.lock | 16 ++++++------ src/Controller/OfferController.php | 34 +++++++----------------- src/Service/OfferPhotoHelper.php | 42 ++++++++++++++++++++++++++++++ 4 files changed, 60 insertions(+), 33 deletions(-) create mode 100644 src/Service/OfferPhotoHelper.php diff --git a/composer.json b/composer.json index 53a1d84..addd661 100644 --- a/composer.json +++ b/composer.json @@ -17,6 +17,7 @@ "symfony/asset": "5.2.*", "symfony/console": "5.2.*", "symfony/dotenv": "5.2.*", + "symfony/filesystem": "5.2.*", "symfony/flex": "^1.3.1", "symfony/form": "5.2.*", "symfony/framework-bundle": "5.2.*", diff --git a/composer.lock b/composer.lock index a06744c..837452f 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "87576858dc205e57e5b2a58d94317391", + "content-hash": "d1148d1eedb4a09cd4b48bb22d51d878", "packages": [ { "name": "composer/package-versions-deprecated", @@ -3369,16 +3369,16 @@ }, { "name": "symfony/filesystem", - "version": "v5.2.10", + "version": "v5.2.11", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "9aa15870b021a34de200a15cff38844db4a930fa" + "reference": "8318cbf1066f44aea550230d8e19ed4ddec3997b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/9aa15870b021a34de200a15cff38844db4a930fa", - "reference": "9aa15870b021a34de200a15cff38844db4a930fa", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/8318cbf1066f44aea550230d8e19ed4ddec3997b", + "reference": "8318cbf1066f44aea550230d8e19ed4ddec3997b", "shasum": "" }, "require": { @@ -3411,7 +3411,7 @@ "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/filesystem/tree/v5.2.10" + "source": "https://github.com/symfony/filesystem/tree/v5.2.11" }, "funding": [ { @@ -3427,7 +3427,7 @@ "type": "tidelift" } ], - "time": "2021-05-26T17:33:56+00:00" + "time": "2021-06-30T07:26:44+00:00" }, { "name": "symfony/finder", @@ -7995,5 +7995,5 @@ "ext-iconv": "*" }, "platform-dev": [], - "plugin-api-version": "2.0.0" + "plugin-api-version": "2.1.0" } diff --git a/src/Controller/OfferController.php b/src/Controller/OfferController.php index deb8641..345a13a 100644 --- a/src/Controller/OfferController.php +++ b/src/Controller/OfferController.php @@ -10,6 +10,7 @@ use App\Repository\WishRepository; use App\Service\PlzToCoordinate; use App\Service\DistanceCalculator; +use App\Service\OfferPhotoHelper; use Doctrine\ORM\EntityManagerInterface; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; @@ -37,7 +38,7 @@ class OfferController extends AbstractController } #[Route('/new', name: 'new_offer')] - public function newOffer(Request $request, string $photoDir): Response + public function newOffer(Request $request, string $photoDir, OfferPhotoHelper $offerPhotoHelper): Response { $offer = new Offering(); $form = $this->createForm(OfferingFormType::class, $offer); @@ -50,15 +51,7 @@ class OfferController extends AbstractController $offer->setCreatedAt(new \DateTime()); if ($photo = $form['photo']->getData()) { - $filename = uniqid().'.'.$photo->guessExtension(); - try { - $photo->move($photoDir, $filename); - } catch (FileException $e) { - // unable to upload the photo, give up - $this->addFlash("error", "There was an error uploading the photo: ".$e); - return $this->redirectToRoute('new_offer'); - } - $offer->setPhotoFilename($filename); + $offerPhotoHelper->uploadOfferPhoto($photoDir, $photo, $offer); } $this->entityManager->persist($offer); @@ -100,7 +93,7 @@ class OfferController extends AbstractController } #[Route('/offer/edit/{id}', name: 'edit_offer')] - public function editOffer(Offering $offer, OfferingRepository $offerRepository, Request $request, string $photoDir): Response + public function editOffer(Offering $offer, OfferingRepository $offerRepository, Request $request, string $photoDir, OfferPhotoHelper $offerPhotoHelper): Response { $form = $this->createForm(OfferingFormType::class, $offer); $user = $this->getUser(); @@ -113,15 +106,9 @@ class OfferController extends AbstractController $offer->setCreatedAt(new \DateTime()); if ($photo = $form['photo']->getData()) { - $filename = uniqid(random_bytes(6)).'.'.$photo->guessExtension(); - try { - $photo->move($photoDir, $filename); - } catch (FileException $e) { - // unable to upload the photo, give up - $this->addFlash("error", "There was an error uploading the photo: ".$e); - return $this->redirectToRoute('new_offer'); - } - $offer->setPhotoFilename($filename); + $oldFilename = $offer->getPhotoFilename(); + $offerPhotoHelper->uploadOfferPhoto($photoDir, $photo, $offer); + $offerPhotoHelper->deleteOfferPhoto($photoDir, $oldFilename); } $this->entityManager->persist($offer); @@ -139,16 +126,13 @@ class OfferController extends AbstractController } #[Route('/offer/delete/{id}', name: 'delete_offer')] - public function deleteOffer(Offering $offer, string $photoDir): Response + public function deleteOffer(Offering $offer, string $photoDir, OfferPhotoHelper $offerPhotoHelper): Response { $user = $this->getUser(); if ($offer->getByUser() === $user) { - if ($offer->getPhotoFilename()) - { - unlink($photoDir . '/' . $offer->getPhotoFilename()); - } + $offerPhotoHelper->deleteOfferPhoto($photoDir, $offer->getPhotoFilename()); $this->entityManager->remove($offer); $this->entityManager->flush(); $this->addFlash( diff --git a/src/Service/OfferPhotoHelper.php b/src/Service/OfferPhotoHelper.php new file mode 100644 index 0000000..9646288 --- /dev/null +++ b/src/Service/OfferPhotoHelper.php @@ -0,0 +1,42 @@ +filesystem = new Filesystem(); + } + + public function uploadOfferPhoto(string $photoDir, UploadedFile $photo, Offering $offer) + { + $filename = uniqid().'.'.$photo->guessExtension(); + try { + $photo->move($photoDir, $filename); + } catch (FileException $e) { + // unable to upload the photo, give up + $this->addFlash("error", "There was an error uploading the photo: ".$e); + return $this->redirectToRoute('new_offer'); + } + $offer->setPhotoFilename($filename); + } + + public function deleteOfferPhoto(string $photoDir, string $filename) + { + $file = $photoDir . '/' . $filename; + if($this->filesystem->exists($file)) { + $this->filesystem->remove($file); + } + + } +} \ No newline at end of file From 75ab34210f7628e15e2e47f8810d14f26bdc2011 Mon Sep 17 00:00:00 2001 From: thisfro Date: Thu, 15 Jul 2021 15:44:48 +0200 Subject: [PATCH 009/119] Update composer packages --- composer.lock | 576 +++++++++++++++++++------------------------------- 1 file changed, 223 insertions(+), 353 deletions(-) diff --git a/composer.lock b/composer.lock index 837452f..82855fd 100644 --- a/composer.lock +++ b/composer.lock @@ -153,24 +153,23 @@ }, { "name": "doctrine/cache", - "version": "2.0.3", + "version": "2.1.0", "source": { "type": "git", "url": "https://github.com/doctrine/cache.git", - "reference": "c9622c6820d3ede1e2315a6a377ea1076e421d88" + "reference": "ac77408b22cc6c4d0b4947d20a3889be3043566e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/cache/zipball/c9622c6820d3ede1e2315a6a377ea1076e421d88", - "reference": "c9622c6820d3ede1e2315a6a377ea1076e421d88", + "url": "https://api.github.com/repos/doctrine/cache/zipball/ac77408b22cc6c4d0b4947d20a3889be3043566e", + "reference": "ac77408b22cc6c4d0b4947d20a3889be3043566e", "shasum": "" }, "require": { "php": "~7.1 || ^8.0" }, "conflict": { - "doctrine/common": ">2.2,<2.4", - "psr/cache": ">=3" + "doctrine/common": ">2.2,<2.4" }, "require-dev": { "alcaeus/mongo-php-adapter": "^1.1", @@ -179,8 +178,9 @@ "mongodb/mongodb": "^1.1", "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0", "predis/predis": "~1.0", - "psr/cache": "^1.0 || ^2.0", - "symfony/cache": "^4.4 || ^5.2" + "psr/cache": "^1.0 || ^2.0 || ^3.0", + "symfony/cache": "^4.4 || ^5.2 || ^6.0@dev", + "symfony/var-exporter": "^4.4 || ^5.2 || ^6.0@dev" }, "suggest": { "alcaeus/mongo-php-adapter": "Required to use legacy MongoDB driver" @@ -232,7 +232,7 @@ ], "support": { "issues": "https://github.com/doctrine/cache/issues", - "source": "https://github.com/doctrine/cache/tree/2.0.3" + "source": "https://github.com/doctrine/cache/tree/2.1.0" }, "funding": [ { @@ -248,7 +248,7 @@ "type": "tidelift" } ], - "time": "2021-05-25T09:43:04+00:00" + "time": "2021-07-14T11:22:57+00:00" }, { "name": "doctrine/collections", @@ -411,16 +411,16 @@ }, { "name": "doctrine/dbal", - "version": "2.13.x-dev", + "version": "2.13.2", "source": { "type": "git", "url": "https://github.com/doctrine/dbal.git", - "reference": "2f286f4beaacf3ce57706ececa72622e196e2f5f" + "reference": "8dd39d2ead4409ce652fd4f02621060f009ea5e4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/dbal/zipball/2f286f4beaacf3ce57706ececa72622e196e2f5f", - "reference": "2f286f4beaacf3ce57706ececa72622e196e2f5f", + "url": "https://api.github.com/repos/doctrine/dbal/zipball/8dd39d2ead4409ce652fd4f02621060f009ea5e4", + "reference": "8dd39d2ead4409ce652fd4f02621060f009ea5e4", "shasum": "" }, "require": { @@ -434,7 +434,7 @@ "doctrine/coding-standard": "9.0.0", "jetbrains/phpstorm-stubs": "2020.2", "phpstan/phpstan": "0.12.81", - "phpunit/phpunit": "^7.5.20|^8.5|9.5.0", + "phpunit/phpunit": "^7.5.20|^8.5|9.5.5", "squizlabs/php_codesniffer": "3.6.0", "symfony/cache": "^4.4", "symfony/console": "^2.0.5|^3.0|^4.0|^5.0", @@ -499,7 +499,7 @@ ], "support": { "issues": "https://github.com/doctrine/dbal/issues", - "source": "https://github.com/doctrine/dbal/tree/2.13.x" + "source": "https://github.com/doctrine/dbal/tree/2.13.2" }, "funding": [ { @@ -515,7 +515,7 @@ "type": "tidelift" } ], - "time": "2021-06-05T17:48:35+00:00" + "time": "2021-06-18T21:48:39+00:00" }, { "name": "doctrine/deprecations", @@ -1096,21 +1096,22 @@ }, { "name": "doctrine/migrations", - "version": "3.1.3", + "version": "3.2.0", "source": { "type": "git", "url": "https://github.com/doctrine/migrations.git", - "reference": "8d0c58655cf9d76462d00ec5dd099737e513e86d" + "reference": "072c11c1dcfced4505e29a0487b06ea774c403f4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/migrations/zipball/8d0c58655cf9d76462d00ec5dd099737e513e86d", - "reference": "8d0c58655cf9d76462d00ec5dd099737e513e86d", + "url": "https://api.github.com/repos/doctrine/migrations/zipball/072c11c1dcfced4505e29a0487b06ea774c403f4", + "reference": "072c11c1dcfced4505e29a0487b06ea774c403f4", "shasum": "" }, "require": { "composer/package-versions-deprecated": "^1.8", "doctrine/dbal": "^2.11", + "doctrine/deprecations": "^0.5.3", "doctrine/event-manager": "^1.0", "friendsofphp/proxy-manager-lts": "^1.0", "php": "^7.2 || ^8.0", @@ -1131,6 +1132,7 @@ "phpstan/phpstan-strict-rules": "^0.12", "phpstan/phpstan-symfony": "^0.12", "phpunit/phpunit": "^8.5 || ^9.4", + "symfony/cache": "^5.3", "symfony/process": "^3.4 || ^4.0 || ^5.0", "symfony/yaml": "^3.4 || ^4.0 || ^5.0" }, @@ -1180,7 +1182,7 @@ ], "support": { "issues": "https://github.com/doctrine/migrations/issues", - "source": "https://github.com/doctrine/migrations/tree/3.1.3" + "source": "https://github.com/doctrine/migrations/tree/3.2.0" }, "funding": [ { @@ -1196,20 +1198,20 @@ "type": "tidelift" } ], - "time": "2021-06-10T19:24:33+00:00" + "time": "2021-07-05T07:06:31+00:00" }, { "name": "doctrine/orm", - "version": "2.9.2", + "version": "2.9.3", "source": { "type": "git", "url": "https://github.com/doctrine/orm.git", - "reference": "75b4b88c5b7cebc24ed7251a20c2a5aa027300e1" + "reference": "82e77cf5089a1303733f75f0f0ed01be3ab9ec22" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/orm/zipball/75b4b88c5b7cebc24ed7251a20c2a5aa027300e1", - "reference": "75b4b88c5b7cebc24ed7251a20c2a5aa027300e1", + "url": "https://api.github.com/repos/doctrine/orm/zipball/82e77cf5089a1303733f75f0f0ed01be3ab9ec22", + "reference": "82e77cf5089a1303733f75f0f0ed01be3ab9ec22", "shasum": "" }, "require": { @@ -1286,9 +1288,9 @@ ], "support": { "issues": "https://github.com/doctrine/orm/issues", - "source": "https://github.com/doctrine/orm/tree/2.9.2" + "source": "https://github.com/doctrine/orm/tree/2.9.3" }, - "time": "2021-05-31T09:53:14+00:00" + "time": "2021-06-13T10:29:22+00:00" }, { "name": "doctrine/persistence", @@ -1436,16 +1438,16 @@ }, { "name": "easycorp/easyadmin-bundle", - "version": "v3.3.2", + "version": "v3.4.2", "source": { "type": "git", "url": "https://github.com/EasyCorp/EasyAdminBundle.git", - "reference": "9672b09ce29c910fd74fe7769dd709c738ea43d4" + "reference": "19d977b7522759492bfc2c3c0c3fd24e125946a7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/EasyCorp/EasyAdminBundle/zipball/9672b09ce29c910fd74fe7769dd709c738ea43d4", - "reference": "9672b09ce29c910fd74fe7769dd709c738ea43d4", + "url": "https://api.github.com/repos/EasyCorp/EasyAdminBundle/zipball/19d977b7522759492bfc2c3c0c3fd24e125946a7", + "reference": "19d977b7522759492bfc2c3c0c3fd24e125946a7", "shasum": "" }, "require": { @@ -1519,7 +1521,7 @@ ], "support": { "issues": "https://github.com/EasyCorp/EasyAdminBundle/issues", - "source": "https://github.com/EasyCorp/EasyAdminBundle/tree/v3.3.2" + "source": "https://github.com/EasyCorp/EasyAdminBundle/tree/v3.4.2" }, "funding": [ { @@ -1527,7 +1529,7 @@ "type": "github" } ], - "time": "2021-05-26T18:53:27+00:00" + "time": "2021-07-06T18:33:30+00:00" }, { "name": "egulias/email-validator", @@ -1681,28 +1683,24 @@ }, { "name": "laminas/laminas-code", - "version": "4.3.0", + "version": "4.4.2", "source": { "type": "git", "url": "https://github.com/laminas/laminas-code.git", - "reference": "1beb4447f9efd26041eba7eff50614e798c353fd" + "reference": "54251ab2b16c41c6980387839496b235f5f6e10b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-code/zipball/1beb4447f9efd26041eba7eff50614e798c353fd", - "reference": "1beb4447f9efd26041eba7eff50614e798c353fd", + "url": "https://api.github.com/repos/laminas/laminas-code/zipball/54251ab2b16c41c6980387839496b235f5f6e10b", + "reference": "54251ab2b16c41c6980387839496b235f5f6e10b", "shasum": "" }, "require": { - "laminas/laminas-eventmanager": "^3.3", "php": "^7.4 || ~8.0.0" }, "conflict": { "phpspec/prophecy": "<1.9.0" }, - "replace": { - "zendframework/zend-code": "self.version" - }, "require-dev": { "doctrine/annotations": "^1.10.4", "ext-phar": "*", @@ -1748,135 +1746,7 @@ "type": "community_bridge" } ], - "time": "2021-05-12T12:41:03+00:00" - }, - { - "name": "laminas/laminas-eventmanager", - "version": "3.3.1", - "source": { - "type": "git", - "url": "https://github.com/laminas/laminas-eventmanager.git", - "reference": "966c859b67867b179fde1eff0cd38df51472ce4a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-eventmanager/zipball/966c859b67867b179fde1eff0cd38df51472ce4a", - "reference": "966c859b67867b179fde1eff0cd38df51472ce4a", - "shasum": "" - }, - "require": { - "laminas/laminas-zendframework-bridge": "^1.0", - "php": "^7.3 || ^8.0" - }, - "replace": { - "zendframework/zend-eventmanager": "^3.2.1" - }, - "require-dev": { - "container-interop/container-interop": "^1.1", - "laminas/laminas-coding-standard": "~1.0.0", - "laminas/laminas-stdlib": "^2.7.3 || ^3.0", - "phpbench/phpbench": "^0.17.1", - "phpunit/phpunit": "^8.5.8" - }, - "suggest": { - "container-interop/container-interop": "^1.1, to use the lazy listeners feature", - "laminas/laminas-stdlib": "^2.7.3 || ^3.0, to use the FilterChain feature" - }, - "type": "library", - "autoload": { - "psr-4": { - "Laminas\\EventManager\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "description": "Trigger and listen to events within a PHP application", - "homepage": "https://laminas.dev", - "keywords": [ - "event", - "eventmanager", - "events", - "laminas" - ], - "support": { - "chat": "https://laminas.dev/chat", - "docs": "https://docs.laminas.dev/laminas-eventmanager/", - "forum": "https://discourse.laminas.dev", - "issues": "https://github.com/laminas/laminas-eventmanager/issues", - "rss": "https://github.com/laminas/laminas-eventmanager/releases.atom", - "source": "https://github.com/laminas/laminas-eventmanager" - }, - "funding": [ - { - "url": "https://funding.communitybridge.org/projects/laminas-project", - "type": "community_bridge" - } - ], - "time": "2021-03-08T15:24:29+00:00" - }, - { - "name": "laminas/laminas-zendframework-bridge", - "version": "1.2.0", - "source": { - "type": "git", - "url": "https://github.com/laminas/laminas-zendframework-bridge.git", - "reference": "6cccbddfcfc742eb02158d6137ca5687d92cee32" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/laminas/laminas-zendframework-bridge/zipball/6cccbddfcfc742eb02158d6137ca5687d92cee32", - "reference": "6cccbddfcfc742eb02158d6137ca5687d92cee32", - "shasum": "" - }, - "require": { - "php": "^7.3 || ^8.0" - }, - "require-dev": { - "phpunit/phpunit": "^5.7 || ^6.5 || ^7.5 || ^8.1 || ^9.3", - "psalm/plugin-phpunit": "^0.15.1", - "squizlabs/php_codesniffer": "^3.5", - "vimeo/psalm": "^4.6" - }, - "type": "library", - "extra": { - "laminas": { - "module": "Laminas\\ZendFrameworkBridge" - } - }, - "autoload": { - "files": [ - "src/autoload.php" - ], - "psr-4": { - "Laminas\\ZendFrameworkBridge\\": "src//" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "description": "Alias legacy ZF class names to Laminas Project equivalents.", - "keywords": [ - "ZendFramework", - "autoloading", - "laminas", - "zf" - ], - "support": { - "forum": "https://discourse.laminas.dev/", - "issues": "https://github.com/laminas/laminas-zendframework-bridge/issues", - "rss": "https://github.com/laminas/laminas-zendframework-bridge/releases.atom", - "source": "https://github.com/laminas/laminas-zendframework-bridge" - }, - "funding": [ - { - "url": "https://funding.communitybridge.org/projects/laminas-project", - "type": "community_bridge" - } - ], - "time": "2021-02-25T21:54:58+00:00" + "time": "2021-07-09T11:58:40+00:00" }, { "name": "mjaschen/phpgeo", @@ -1953,16 +1823,16 @@ }, { "name": "monolog/monolog", - "version": "2.2.0", + "version": "2.3.1", "source": { "type": "git", "url": "https://github.com/Seldaek/monolog.git", - "reference": "1cb1cde8e8dd0f70cc0fe51354a59acad9302084" + "reference": "9738e495f288eec0b187e310b7cdbbb285777dbe" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Seldaek/monolog/zipball/1cb1cde8e8dd0f70cc0fe51354a59acad9302084", - "reference": "1cb1cde8e8dd0f70cc0fe51354a59acad9302084", + "url": "https://api.github.com/repos/Seldaek/monolog/zipball/9738e495f288eec0b187e310b7cdbbb285777dbe", + "reference": "9738e495f288eec0b187e310b7cdbbb285777dbe", "shasum": "" }, "require": { @@ -1981,7 +1851,7 @@ "php-amqplib/php-amqplib": "~2.4", "php-console/php-console": "^3.1.3", "phpspec/prophecy": "^1.6.1", - "phpstan/phpstan": "^0.12.59", + "phpstan/phpstan": "^0.12.91", "phpunit/phpunit": "^8.5", "predis/predis": "^1.1", "rollbar/rollbar": "^1.3", @@ -2033,7 +1903,7 @@ ], "support": { "issues": "https://github.com/Seldaek/monolog/issues", - "source": "https://github.com/Seldaek/monolog/tree/2.2.0" + "source": "https://github.com/Seldaek/monolog/tree/2.3.1" }, "funding": [ { @@ -2045,20 +1915,20 @@ "type": "tidelift" } ], - "time": "2020-12-14T13:15:25+00:00" + "time": "2021-07-14T11:56:39+00:00" }, { "name": "nikic/php-parser", - "version": "v4.10.5", + "version": "v4.11.0", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "4432ba399e47c66624bc73c8c0f811e5c109576f" + "reference": "fe14cf3672a149364fb66dfe11bf6549af899f94" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/4432ba399e47c66624bc73c8c0f811e5c109576f", - "reference": "4432ba399e47c66624bc73c8c0f811e5c109576f", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/fe14cf3672a149364fb66dfe11bf6549af899f94", + "reference": "fe14cf3672a149364fb66dfe11bf6549af899f94", "shasum": "" }, "require": { @@ -2099,9 +1969,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v4.10.5" + "source": "https://github.com/nikic/PHP-Parser/tree/v4.11.0" }, - "time": "2021-05-03T19:11:20+00:00" + "time": "2021-07-03T13:36:55+00:00" }, { "name": "psr/cache", @@ -2449,16 +2319,16 @@ }, { "name": "symfony/cache", - "version": "v5.2.10", + "version": "v5.2.11", "source": { "type": "git", "url": "https://github.com/symfony/cache.git", - "reference": "aaab9c4f6eccf20906c7675be3bf826e362676ce" + "reference": "d6901630424a0816185b587447b1adaab42d792a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/cache/zipball/aaab9c4f6eccf20906c7675be3bf826e362676ce", - "reference": "aaab9c4f6eccf20906c7675be3bf826e362676ce", + "url": "https://api.github.com/repos/symfony/cache/zipball/d6901630424a0816185b587447b1adaab42d792a", + "reference": "d6901630424a0816185b587447b1adaab42d792a", "shasum": "" }, "require": { @@ -2524,7 +2394,7 @@ "psr6" ], "support": { - "source": "https://github.com/symfony/cache/tree/v5.2.10" + "source": "https://github.com/symfony/cache/tree/v5.2.11" }, "funding": [ { @@ -2540,7 +2410,7 @@ "type": "tidelift" } ], - "time": "2021-05-26T17:40:38+00:00" + "time": "2021-06-24T08:07:28+00:00" }, { "name": "symfony/cache-contracts", @@ -2623,16 +2493,16 @@ }, { "name": "symfony/config", - "version": "v5.2.10", + "version": "v5.2.11", "source": { "type": "git", "url": "https://github.com/symfony/config.git", - "reference": "1156feb067e6962b3c4444d172fd0d4d8473cd5b" + "reference": "a74dae9127f5c4931d51ce3ad28ad1efba1faa61" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/config/zipball/1156feb067e6962b3c4444d172fd0d4d8473cd5b", - "reference": "1156feb067e6962b3c4444d172fd0d4d8473cd5b", + "url": "https://api.github.com/repos/symfony/config/zipball/a74dae9127f5c4931d51ce3ad28ad1efba1faa61", + "reference": "a74dae9127f5c4931d51ce3ad28ad1efba1faa61", "shasum": "" }, "require": { @@ -2682,7 +2552,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.10" + "source": "https://github.com/symfony/config/tree/v5.2.11" }, "funding": [ { @@ -2698,20 +2568,20 @@ "type": "tidelift" } ], - "time": "2021-05-26T12:52:38+00:00" + "time": "2021-06-24T08:07:28+00:00" }, { "name": "symfony/console", - "version": "v5.2.10", + "version": "v5.2.11", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "9e18ae5de0ca8c6d0a9784f5b4ae94fad5325040" + "reference": "2f93c8c64295e029b7ff4d68b9a59c5ad8b7e24a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/9e18ae5de0ca8c6d0a9784f5b4ae94fad5325040", - "reference": "9e18ae5de0ca8c6d0a9784f5b4ae94fad5325040", + "url": "https://api.github.com/repos/symfony/console/zipball/2f93c8c64295e029b7ff4d68b9a59c5ad8b7e24a", + "reference": "2f93c8c64295e029b7ff4d68b9a59c5ad8b7e24a", "shasum": "" }, "require": { @@ -2779,7 +2649,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v5.2.10" + "source": "https://github.com/symfony/console/tree/v5.2.11" }, "funding": [ { @@ -2795,20 +2665,20 @@ "type": "tidelift" } ], - "time": "2021-05-26T12:52:38+00:00" + "time": "2021-06-06T09:50:27+00:00" }, { "name": "symfony/dependency-injection", - "version": "v5.2.10", + "version": "v5.2.11", "source": { "type": "git", "url": "https://github.com/symfony/dependency-injection.git", - "reference": "22b1ed3e5d080d69ec913e04eac3699eafb6b5b4" + "reference": "14515135ca9308b706cb1adb8c6e21530ecca32f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/22b1ed3e5d080d69ec913e04eac3699eafb6b5b4", - "reference": "22b1ed3e5d080d69ec913e04eac3699eafb6b5b4", + "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/14515135ca9308b706cb1adb8c6e21530ecca32f", + "reference": "14515135ca9308b706cb1adb8c6e21530ecca32f", "shasum": "" }, "require": { @@ -2866,7 +2736,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.10" + "source": "https://github.com/symfony/dependency-injection/tree/v5.2.11" }, "funding": [ { @@ -2882,7 +2752,7 @@ "type": "tidelift" } ], - "time": "2021-05-26T17:55:25+00:00" + "time": "2021-06-24T08:08:29+00:00" }, { "name": "symfony/deprecation-contracts", @@ -3136,16 +3006,16 @@ }, { "name": "symfony/error-handler", - "version": "v5.2.10", + "version": "v5.2.11", "source": { "type": "git", "url": "https://github.com/symfony/error-handler.git", - "reference": "5f52636e5772b21ab80fe868b54b11c3177c55c6" + "reference": "b0c9b02427712fa2df1a34d2b19629dbc9fe278c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/error-handler/zipball/5f52636e5772b21ab80fe868b54b11c3177c55c6", - "reference": "5f52636e5772b21ab80fe868b54b11c3177c55c6", + "url": "https://api.github.com/repos/symfony/error-handler/zipball/b0c9b02427712fa2df1a34d2b19629dbc9fe278c", + "reference": "b0c9b02427712fa2df1a34d2b19629dbc9fe278c", "shasum": "" }, "require": { @@ -3185,7 +3055,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.10" + "source": "https://github.com/symfony/error-handler/tree/v5.2.11" }, "funding": [ { @@ -3201,7 +3071,7 @@ "type": "tidelift" } ], - "time": "2021-05-26T17:33:56+00:00" + "time": "2021-06-24T08:07:28+00:00" }, { "name": "symfony/event-dispatcher", @@ -3560,16 +3430,16 @@ }, { "name": "symfony/form", - "version": "v5.2.10", + "version": "v5.2.11", "source": { "type": "git", "url": "https://github.com/symfony/form.git", - "reference": "51f75b46f623cbf715ee9894657fe432455821c4" + "reference": "1bf57c6efc8350598bc4795ceb320448bf9dc043" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/form/zipball/51f75b46f623cbf715ee9894657fe432455821c4", - "reference": "51f75b46f623cbf715ee9894657fe432455821c4", + "url": "https://api.github.com/repos/symfony/form/zipball/1bf57c6efc8350598bc4795ceb320448bf9dc043", + "reference": "1bf57c6efc8350598bc4795ceb320448bf9dc043", "shasum": "" }, "require": { @@ -3641,7 +3511,7 @@ "description": "Allows to easily create, process and reuse HTML forms", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/form/tree/v5.2.10" + "source": "https://github.com/symfony/form/tree/v5.2.11" }, "funding": [ { @@ -3657,20 +3527,20 @@ "type": "tidelift" } ], - "time": "2021-05-27T12:55:18+00:00" + "time": "2021-06-27T12:33:44+00:00" }, { "name": "symfony/framework-bundle", - "version": "v5.2.10", + "version": "v5.2.11", "source": { "type": "git", "url": "https://github.com/symfony/framework-bundle.git", - "reference": "0f47ae9a391efdec9632275c1cb506290600af11" + "reference": "f41ba7944e3cf6c42bc5c629b8de88f33b66f199" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/0f47ae9a391efdec9632275c1cb506290600af11", - "reference": "0f47ae9a391efdec9632275c1cb506290600af11", + "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/f41ba7944e3cf6c42bc5c629b8de88f33b66f199", + "reference": "f41ba7944e3cf6c42bc5c629b8de88f33b66f199", "shasum": "" }, "require": { @@ -3790,7 +3660,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.10" + "source": "https://github.com/symfony/framework-bundle/tree/v5.2.11" }, "funding": [ { @@ -3806,7 +3676,7 @@ "type": "tidelift" } ], - "time": "2021-05-26T12:52:38+00:00" + "time": "2021-06-28T15:43:48+00:00" }, { "name": "symfony/http-client-contracts", @@ -3888,16 +3758,16 @@ }, { "name": "symfony/http-foundation", - "version": "v5.2.10", + "version": "v5.2.11", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "a148e5d6e69562a9ec0ab3bcf35c02585114cbce" + "reference": "af90d1a17f397262aeada10a90fe6ad3486289ab" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/a148e5d6e69562a9ec0ab3bcf35c02585114cbce", - "reference": "a148e5d6e69562a9ec0ab3bcf35c02585114cbce", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/af90d1a17f397262aeada10a90fe6ad3486289ab", + "reference": "af90d1a17f397262aeada10a90fe6ad3486289ab", "shasum": "" }, "require": { @@ -3941,7 +3811,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.10" + "source": "https://github.com/symfony/http-foundation/tree/v5.2.11" }, "funding": [ { @@ -3957,20 +3827,20 @@ "type": "tidelift" } ], - "time": "2021-05-26T12:52:38+00:00" + "time": "2021-06-27T09:16:08+00:00" }, { "name": "symfony/http-kernel", - "version": "v5.2.10", + "version": "v5.2.11", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "91aaf791281a3f3f801a9257b27be5f9dfdb3dcf" + "reference": "c141ca1c27800ef80ce5d7b8fe6409848d0b77b0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/91aaf791281a3f3f801a9257b27be5f9dfdb3dcf", - "reference": "91aaf791281a3f3f801a9257b27be5f9dfdb3dcf", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/c141ca1c27800ef80ce5d7b8fe6409848d0b77b0", + "reference": "c141ca1c27800ef80ce5d7b8fe6409848d0b77b0", "shasum": "" }, "require": { @@ -4053,7 +3923,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.10" + "source": "https://github.com/symfony/http-kernel/tree/v5.2.11" }, "funding": [ { @@ -4069,7 +3939,7 @@ "type": "tidelift" } ], - "time": "2021-06-01T09:28:31+00:00" + "time": "2021-06-30T08:23:28+00:00" }, { "name": "symfony/intl", @@ -4161,16 +4031,16 @@ }, { "name": "symfony/mailer", - "version": "v5.2.10", + "version": "v5.2.11", "source": { "type": "git", "url": "https://github.com/symfony/mailer.git", - "reference": "9b4d874082b337759ce7c4ef608ecf63982a4472" + "reference": "3f357d259cfb7928823f314766a44f4f9e49f682" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mailer/zipball/9b4d874082b337759ce7c4ef608ecf63982a4472", - "reference": "9b4d874082b337759ce7c4ef608ecf63982a4472", + "url": "https://api.github.com/repos/symfony/mailer/zipball/3f357d259cfb7928823f314766a44f4f9e49f682", + "reference": "3f357d259cfb7928823f314766a44f4f9e49f682", "shasum": "" }, "require": { @@ -4222,7 +4092,7 @@ "description": "Helps sending emails", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/mailer/tree/v5.2.10" + "source": "https://github.com/symfony/mailer/tree/v5.2.11" }, "funding": [ { @@ -4238,20 +4108,20 @@ "type": "tidelift" } ], - "time": "2021-05-27T12:55:18+00:00" + "time": "2021-06-24T08:07:28+00:00" }, { "name": "symfony/mime", - "version": "v5.2.10", + "version": "v5.2.11", "source": { "type": "git", "url": "https://github.com/symfony/mime.git", - "reference": "0cb96ba3149255f5e5e257db9ea38ef86e154111" + "reference": "c1299e8a2b3f9b22b621fa5f58bea72cd51d9a27" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mime/zipball/0cb96ba3149255f5e5e257db9ea38ef86e154111", - "reference": "0cb96ba3149255f5e5e257db9ea38ef86e154111", + "url": "https://api.github.com/repos/symfony/mime/zipball/c1299e8a2b3f9b22b621fa5f58bea72cd51d9a27", + "reference": "c1299e8a2b3f9b22b621fa5f58bea72cd51d9a27", "shasum": "" }, "require": { @@ -4305,7 +4175,7 @@ "mime-type" ], "support": { - "source": "https://github.com/symfony/mime/tree/v5.2.10" + "source": "https://github.com/symfony/mime/tree/v5.2.11" }, "funding": [ { @@ -4321,20 +4191,20 @@ "type": "tidelift" } ], - "time": "2021-05-26T12:52:38+00:00" + "time": "2021-06-09T10:57:10+00:00" }, { "name": "symfony/monolog-bridge", - "version": "v5.2.10", + "version": "v5.2.11", "source": { "type": "git", "url": "https://github.com/symfony/monolog-bridge.git", - "reference": "065a6ce960e4beb31a30bdaeae6e6317ab4aa810" + "reference": "d3c2c26edf34dc9ec1fa082b115f744715a02f7f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/monolog-bridge/zipball/065a6ce960e4beb31a30bdaeae6e6317ab4aa810", - "reference": "065a6ce960e4beb31a30bdaeae6e6317ab4aa810", + "url": "https://api.github.com/repos/symfony/monolog-bridge/zipball/d3c2c26edf34dc9ec1fa082b115f744715a02f7f", + "reference": "d3c2c26edf34dc9ec1fa082b115f744715a02f7f", "shasum": "" }, "require": { @@ -4387,7 +4257,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.10" + "source": "https://github.com/symfony/monolog-bridge/tree/v5.2.11" }, "funding": [ { @@ -4403,7 +4273,7 @@ "type": "tidelift" } ], - "time": "2021-05-26T12:52:38+00:00" + "time": "2021-06-24T08:07:28+00:00" }, { "name": "symfony/monolog-bundle", @@ -5623,16 +5493,16 @@ }, { "name": "symfony/security-bundle", - "version": "v5.2.10", + "version": "v5.2.11", "source": { "type": "git", "url": "https://github.com/symfony/security-bundle.git", - "reference": "642a43f0c93752df9bab473b14192053c137583b" + "reference": "60e0c8ccfed1a60897a0e42d8125b47c2b479360" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/security-bundle/zipball/642a43f0c93752df9bab473b14192053c137583b", - "reference": "642a43f0c93752df9bab473b14192053c137583b", + "url": "https://api.github.com/repos/symfony/security-bundle/zipball/60e0c8ccfed1a60897a0e42d8125b47c2b479360", + "reference": "60e0c8ccfed1a60897a0e42d8125b47c2b479360", "shasum": "" }, "require": { @@ -5703,7 +5573,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/v5.2.10" + "source": "https://github.com/symfony/security-bundle/tree/v5.2.11" }, "funding": [ { @@ -5719,20 +5589,20 @@ "type": "tidelift" } ], - "time": "2021-05-26T12:52:38+00:00" + "time": "2021-06-27T12:24:20+00:00" }, { "name": "symfony/security-core", - "version": "v5.2.10", + "version": "v5.2.11", "source": { "type": "git", "url": "https://github.com/symfony/security-core.git", - "reference": "94225470036d67ae8bb6a746809fe737aa7c0319" + "reference": "450fa2c025bf9ba14d4af7c461c5ffd7c4657078" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/security-core/zipball/94225470036d67ae8bb6a746809fe737aa7c0319", - "reference": "94225470036d67ae8bb6a746809fe737aa7c0319", + "url": "https://api.github.com/repos/symfony/security-core/zipball/450fa2c025bf9ba14d4af7c461c5ffd7c4657078", + "reference": "450fa2c025bf9ba14d4af7c461c5ffd7c4657078", "shasum": "" }, "require": { @@ -5792,7 +5662,7 @@ "description": "Symfony Security Component - Core Library", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/security-core/tree/v5.2.10" + "source": "https://github.com/symfony/security-core/tree/v5.2.11" }, "funding": [ { @@ -5808,7 +5678,7 @@ "type": "tidelift" } ], - "time": "2021-05-26T17:40:38+00:00" + "time": "2021-06-26T11:19:55+00:00" }, { "name": "symfony/security-csrf", @@ -6175,16 +6045,16 @@ }, { "name": "symfony/string", - "version": "v5.2.10", + "version": "v5.2.11", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "abd6bb17be75ddb10b022f02820464b785882a7f" + "reference": "ab6dc1c796bbceffbaf9ccbfb7a24feb641d6ee7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/abd6bb17be75ddb10b022f02820464b785882a7f", - "reference": "abd6bb17be75ddb10b022f02820464b785882a7f", + "url": "https://api.github.com/repos/symfony/string/zipball/ab6dc1c796bbceffbaf9ccbfb7a24feb641d6ee7", + "reference": "ab6dc1c796bbceffbaf9ccbfb7a24feb641d6ee7", "shasum": "" }, "require": { @@ -6238,7 +6108,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v5.2.10" + "source": "https://github.com/symfony/string/tree/v5.2.11" }, "funding": [ { @@ -6254,20 +6124,20 @@ "type": "tidelift" } ], - "time": "2021-05-26T17:40:38+00:00" + "time": "2021-06-27T11:43:47+00:00" }, { "name": "symfony/translation", - "version": "v5.2.10", + "version": "v5.2.11", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "dc49cfb0d1d1bf6a9aaccccee570ef62e7b095c4" + "reference": "ecf9ee05f5f099523cf60196c523de52aa8d45a0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/dc49cfb0d1d1bf6a9aaccccee570ef62e7b095c4", - "reference": "dc49cfb0d1d1bf6a9aaccccee570ef62e7b095c4", + "url": "https://api.github.com/repos/symfony/translation/zipball/ecf9ee05f5f099523cf60196c523de52aa8d45a0", + "reference": "ecf9ee05f5f099523cf60196c523de52aa8d45a0", "shasum": "" }, "require": { @@ -6331,7 +6201,7 @@ "description": "Provides tools to internationalize your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/translation/tree/v5.2.10" + "source": "https://github.com/symfony/translation/tree/v5.2.11" }, "funding": [ { @@ -6347,7 +6217,7 @@ "type": "tidelift" } ], - "time": "2021-05-26T17:40:38+00:00" + "time": "2021-06-06T09:50:27+00:00" }, { "name": "symfony/translation-contracts", @@ -6429,16 +6299,16 @@ }, { "name": "symfony/twig-bridge", - "version": "v5.2.10", + "version": "v5.2.11", "source": { "type": "git", "url": "https://github.com/symfony/twig-bridge.git", - "reference": "3590e0e352a038b23f65410f388ce1a800debc6c" + "reference": "209bdf8b1bbc9314ef41e7da10444b3022239929" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/twig-bridge/zipball/3590e0e352a038b23f65410f388ce1a800debc6c", - "reference": "3590e0e352a038b23f65410f388ce1a800debc6c", + "url": "https://api.github.com/repos/symfony/twig-bridge/zipball/209bdf8b1bbc9314ef41e7da10444b3022239929", + "reference": "209bdf8b1bbc9314ef41e7da10444b3022239929", "shasum": "" }, "require": { @@ -6529,7 +6399,7 @@ "description": "Provides integration for Twig with various Symfony components", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/twig-bridge/tree/v5.2.10" + "source": "https://github.com/symfony/twig-bridge/tree/v5.2.11" }, "funding": [ { @@ -6545,20 +6415,20 @@ "type": "tidelift" } ], - "time": "2021-05-26T12:52:38+00:00" + "time": "2021-06-23T09:41:51+00:00" }, { "name": "symfony/twig-bundle", - "version": "v5.2.10", + "version": "v5.2.11", "source": { "type": "git", "url": "https://github.com/symfony/twig-bundle.git", - "reference": "c078458e37a90b4ec8abb9f8fe6c3011d35e8039" + "reference": "c110dcdaf46d9f3620b54b5c6ae7dbf9a887b11f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/twig-bundle/zipball/c078458e37a90b4ec8abb9f8fe6c3011d35e8039", - "reference": "c078458e37a90b4ec8abb9f8fe6c3011d35e8039", + "url": "https://api.github.com/repos/symfony/twig-bundle/zipball/c110dcdaf46d9f3620b54b5c6ae7dbf9a887b11f", + "reference": "c110dcdaf46d9f3620b54b5c6ae7dbf9a887b11f", "shasum": "" }, "require": { @@ -6616,7 +6486,7 @@ "description": "Provides a tight integration of Twig into the Symfony full-stack framework", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/twig-bundle/tree/v5.2.10" + "source": "https://github.com/symfony/twig-bundle/tree/v5.2.11" }, "funding": [ { @@ -6632,20 +6502,20 @@ "type": "tidelift" } ], - "time": "2021-05-26T12:52:38+00:00" + "time": "2021-06-28T15:43:48+00:00" }, { "name": "symfony/uid", - "version": "v5.2.10", + "version": "v5.2.11", "source": { "type": "git", "url": "https://github.com/symfony/uid.git", - "reference": "9e052369bf8292c0f536b457312c2d3cd8e0b850" + "reference": "3604ffeb285e2ad213113aadc891338dfa7e9ff7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/uid/zipball/9e052369bf8292c0f536b457312c2d3cd8e0b850", - "reference": "9e052369bf8292c0f536b457312c2d3cd8e0b850", + "url": "https://api.github.com/repos/symfony/uid/zipball/3604ffeb285e2ad213113aadc891338dfa7e9ff7", + "reference": "3604ffeb285e2ad213113aadc891338dfa7e9ff7", "shasum": "" }, "require": { @@ -6686,7 +6556,7 @@ "uuid" ], "support": { - "source": "https://github.com/symfony/uid/tree/v5.2.10" + "source": "https://github.com/symfony/uid/tree/v5.2.11" }, "funding": [ { @@ -6702,20 +6572,20 @@ "type": "tidelift" } ], - "time": "2021-05-26T17:40:38+00:00" + "time": "2021-06-23T14:41:09+00:00" }, { "name": "symfony/validator", - "version": "v5.2.10", + "version": "v5.2.11", "source": { "type": "git", "url": "https://github.com/symfony/validator.git", - "reference": "8b882f5a50df87ee194ccd8d7e4ebf5cabebad5e" + "reference": "c1f3d32a171d2de56f4e77f202e6c51054f3a931" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/validator/zipball/8b882f5a50df87ee194ccd8d7e4ebf5cabebad5e", - "reference": "8b882f5a50df87ee194ccd8d7e4ebf5cabebad5e", + "url": "https://api.github.com/repos/symfony/validator/zipball/c1f3d32a171d2de56f4e77f202e6c51054f3a931", + "reference": "c1f3d32a171d2de56f4e77f202e6c51054f3a931", "shasum": "" }, "require": { @@ -6795,7 +6665,7 @@ "description": "Provides tools to validate values", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/validator/tree/v5.2.10" + "source": "https://github.com/symfony/validator/tree/v5.2.11" }, "funding": [ { @@ -6811,20 +6681,20 @@ "type": "tidelift" } ], - "time": "2021-05-26T17:40:38+00:00" + "time": "2021-06-30T07:26:44+00:00" }, { "name": "symfony/var-dumper", - "version": "v5.2.10", + "version": "v5.2.11", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "85bc8988d49d3f3bbede1e937f758d5dcb9dd694" + "reference": "ca2e8ba7fb9bb8c97cb7eca30a0455ff247f3088" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/85bc8988d49d3f3bbede1e937f758d5dcb9dd694", - "reference": "85bc8988d49d3f3bbede1e937f758d5dcb9dd694", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/ca2e8ba7fb9bb8c97cb7eca30a0455ff247f3088", + "reference": "ca2e8ba7fb9bb8c97cb7eca30a0455ff247f3088", "shasum": "" }, "require": { @@ -6883,7 +6753,7 @@ "dump" ], "support": { - "source": "https://github.com/symfony/var-dumper/tree/v5.2.10" + "source": "https://github.com/symfony/var-dumper/tree/v5.2.11" }, "funding": [ { @@ -6899,20 +6769,20 @@ "type": "tidelift" } ], - "time": "2021-05-27T10:48:07+00:00" + "time": "2021-06-24T08:07:28+00:00" }, { "name": "symfony/var-exporter", - "version": "v5.2.10", + "version": "v5.2.11", "source": { "type": "git", "url": "https://github.com/symfony/var-exporter.git", - "reference": "7a7c9dd972541f78e7815c03c0bae9f81e0e9dbb" + "reference": "903c2c0babd6267de5bcb2995e8fc1efb5f01f1f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-exporter/zipball/7a7c9dd972541f78e7815c03c0bae9f81e0e9dbb", - "reference": "7a7c9dd972541f78e7815c03c0bae9f81e0e9dbb", + "url": "https://api.github.com/repos/symfony/var-exporter/zipball/903c2c0babd6267de5bcb2995e8fc1efb5f01f1f", + "reference": "903c2c0babd6267de5bcb2995e8fc1efb5f01f1f", "shasum": "" }, "require": { @@ -6956,7 +6826,7 @@ "serialize" ], "support": { - "source": "https://github.com/symfony/var-exporter/tree/v5.3.0" + "source": "https://github.com/symfony/var-exporter/tree/v5.2.11" }, "funding": [ { @@ -6972,20 +6842,20 @@ "type": "tidelift" } ], - "time": "2021-05-26T17:40:38+00:00" + "time": "2021-06-27T09:16:08+00:00" }, { "name": "symfony/webpack-encore-bundle", - "version": "v1.11.2", + "version": "v1.12.0", "source": { "type": "git", "url": "https://github.com/symfony/webpack-encore-bundle.git", - "reference": "f282fb17ffa4839ba491eb7e3f5ffdd40c86f969" + "reference": "9943a59f8551b7a8181e19a2b4efa60e5907c667" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/webpack-encore-bundle/zipball/f282fb17ffa4839ba491eb7e3f5ffdd40c86f969", - "reference": "f282fb17ffa4839ba491eb7e3f5ffdd40c86f969", + "url": "https://api.github.com/repos/symfony/webpack-encore-bundle/zipball/9943a59f8551b7a8181e19a2b4efa60e5907c667", + "reference": "9943a59f8551b7a8181e19a2b4efa60e5907c667", "shasum": "" }, "require": { @@ -7027,7 +6897,7 @@ "description": "Integration with your Symfony app & Webpack Encore!", "support": { "issues": "https://github.com/symfony/webpack-encore-bundle/issues", - "source": "https://github.com/symfony/webpack-encore-bundle/tree/v1.11.2" + "source": "https://github.com/symfony/webpack-encore-bundle/tree/v1.12.0" }, "funding": [ { @@ -7043,20 +6913,20 @@ "type": "tidelift" } ], - "time": "2021-04-26T12:48:17+00:00" + "time": "2021-06-18T19:13:11+00:00" }, { "name": "symfony/yaml", - "version": "v5.2.10", + "version": "v5.2.11", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "cd7930d6a7e0d8ceac299846235bc6e2e032c3a3" + "reference": "9f8fa61787135607fcebf2e4bee50f3b713f0885" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/cd7930d6a7e0d8ceac299846235bc6e2e032c3a3", - "reference": "cd7930d6a7e0d8ceac299846235bc6e2e032c3a3", + "url": "https://api.github.com/repos/symfony/yaml/zipball/9f8fa61787135607fcebf2e4bee50f3b713f0885", + "reference": "9f8fa61787135607fcebf2e4bee50f3b713f0885", "shasum": "" }, "require": { @@ -7102,7 +6972,7 @@ "description": "Loads and dumps YAML files", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/yaml/tree/v5.2.10" + "source": "https://github.com/symfony/yaml/tree/v5.2.11" }, "funding": [ { @@ -7118,20 +6988,20 @@ "type": "tidelift" } ], - "time": "2021-05-26T17:40:38+00:00" + "time": "2021-06-24T08:07:28+00:00" }, { "name": "symfonycasts/reset-password-bundle", - "version": "v1.8.0", + "version": "v1.9.1", "source": { "type": "git", "url": "https://github.com/SymfonyCasts/reset-password-bundle.git", - "reference": "a41cceff06039e586619b1505af05f77b22b41b5" + "reference": "775e847613737f55cf06c6a7457f4bcf8ce258e5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/SymfonyCasts/reset-password-bundle/zipball/a41cceff06039e586619b1505af05f77b22b41b5", - "reference": "a41cceff06039e586619b1505af05f77b22b41b5", + "url": "https://api.github.com/repos/SymfonyCasts/reset-password-bundle/zipball/775e847613737f55cf06c6a7457f4bcf8ce258e5", + "reference": "775e847613737f55cf06c6a7457f4bcf8ce258e5", "shasum": "" }, "require": { @@ -7167,9 +7037,9 @@ "description": "Symfony bundle that adds password reset functionality.", "support": { "issues": "https://github.com/SymfonyCasts/reset-password-bundle/issues", - "source": "https://github.com/SymfonyCasts/reset-password-bundle/tree/v1.8.0" + "source": "https://github.com/SymfonyCasts/reset-password-bundle/tree/v1.9.1" }, - "time": "2021-05-05T18:21:50+00:00" + "time": "2021-07-12T18:59:28+00:00" }, { "name": "symfonycasts/verify-email-bundle", @@ -7736,16 +7606,16 @@ }, { "name": "symfony/maker-bundle", - "version": "v1.31.1", + "version": "v1.33.0", "source": { "type": "git", "url": "https://github.com/symfony/maker-bundle.git", - "reference": "4f57a44cef0b4555043160b8bf223fcde8a7a59a" + "reference": "f093d906c667cba7e3f74487d9e5e55aaf25a031" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/maker-bundle/zipball/4f57a44cef0b4555043160b8bf223fcde8a7a59a", - "reference": "4f57a44cef0b4555043160b8bf223fcde8a7a59a", + "url": "https://api.github.com/repos/symfony/maker-bundle/zipball/f093d906c667cba7e3f74487d9e5e55aaf25a031", + "reference": "f093d906c667cba7e3f74487d9e5e55aaf25a031", "shasum": "" }, "require": { @@ -7804,7 +7674,7 @@ ], "support": { "issues": "https://github.com/symfony/maker-bundle/issues", - "source": "https://github.com/symfony/maker-bundle/tree/v1.31.1" + "source": "https://github.com/symfony/maker-bundle/tree/v1.33.0" }, "funding": [ { @@ -7820,20 +7690,20 @@ "type": "tidelift" } ], - "time": "2021-05-12T14:01:20+00:00" + "time": "2021-07-01T00:28:30+00:00" }, { "name": "symfony/phpunit-bridge", - "version": "v5.3.0", + "version": "v5.3.3", "source": { "type": "git", "url": "https://github.com/symfony/phpunit-bridge.git", - "reference": "15cab721487b7bf43ad545a1e7d0095782e26f8c" + "reference": "d7d3193df3b198f287777b61ef06cd59fdb0516d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/phpunit-bridge/zipball/15cab721487b7bf43ad545a1e7d0095782e26f8c", - "reference": "15cab721487b7bf43ad545a1e7d0095782e26f8c", + "url": "https://api.github.com/repos/symfony/phpunit-bridge/zipball/d7d3193df3b198f287777b61ef06cd59fdb0516d", + "reference": "d7d3193df3b198f287777b61ef06cd59fdb0516d", "shasum": "" }, "require": { @@ -7887,7 +7757,7 @@ "description": "Provides utilities for PHPUnit, especially user deprecation notices management", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/phpunit-bridge/tree/v5.3.0" + "source": "https://github.com/symfony/phpunit-bridge/tree/v5.3.3" }, "funding": [ { @@ -7903,20 +7773,20 @@ "type": "tidelift" } ], - "time": "2021-05-26T17:57:12+00:00" + "time": "2021-06-22T16:07:00+00:00" }, { "name": "symfony/web-profiler-bundle", - "version": "v5.2.10", + "version": "v5.2.11", "source": { "type": "git", "url": "https://github.com/symfony/web-profiler-bundle.git", - "reference": "ecff474430abe9a01a88a94960bf380bdbfa58c5" + "reference": "c62eb4235af4ccb93972fdf4c118d8a9956d4548" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/web-profiler-bundle/zipball/ecff474430abe9a01a88a94960bf380bdbfa58c5", - "reference": "ecff474430abe9a01a88a94960bf380bdbfa58c5", + "url": "https://api.github.com/repos/symfony/web-profiler-bundle/zipball/c62eb4235af4ccb93972fdf4c118d8a9956d4548", + "reference": "c62eb4235af4ccb93972fdf4c118d8a9956d4548", "shasum": "" }, "require": { @@ -7965,7 +7835,7 @@ "description": "Provides a development tool that gives detailed information about the execution of any request", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/web-profiler-bundle/tree/v5.2.10" + "source": "https://github.com/symfony/web-profiler-bundle/tree/v5.2.11" }, "funding": [ { @@ -7981,7 +7851,7 @@ "type": "tidelift" } ], - "time": "2021-05-26T17:33:56+00:00" + "time": "2021-06-07T14:50:44+00:00" } ], "aliases": [], From 4656be5a32d84233b39d5cde7383286da47e258c Mon Sep 17 00:00:00 2001 From: thisfro Date: Thu, 15 Jul 2021 16:00:55 +0200 Subject: [PATCH 010/119] Use less amigous function name --- src/Service/PlzToCoordinate.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Service/PlzToCoordinate.php b/src/Service/PlzToCoordinate.php index 30601f1..a156fa0 100644 --- a/src/Service/PlzToCoordinate.php +++ b/src/Service/PlzToCoordinate.php @@ -6,7 +6,7 @@ use Location\Coordinate; class PlzToCoordinate { - public function getCoordinates(int $plz) + public function convertPlzToCoordinate(int $plz) { $content = file_get_contents("https://swisspost.opendatasoft.com/api/records/1.0/search/?dataset=plz_verzeichnis_v2&q=postleitzahl%3D" . $plz); $result = json_decode($content); From ddb815d1b46b4e0366bb55659597a5cad3bb94c0 Mon Sep 17 00:00:00 2001 From: thisfro Date: Fri, 16 Jul 2021 11:00:02 +0200 Subject: [PATCH 011/119] Save cooridnates as GeoJSON in database --- migrations/Version20210715135559.php | 33 +++++++++++++++++++++++++ migrations/Version20210715142350.php | 35 +++++++++++++++++++++++++++ migrations/Version20210715142732.php | 36 ++++++++++++++++++++++++++++ src/Controller/OfferController.php | 11 +++++++-- src/Entity/Offering.php | 17 +++++++++++++ 5 files changed, 130 insertions(+), 2 deletions(-) create mode 100644 migrations/Version20210715135559.php create mode 100644 migrations/Version20210715142350.php create mode 100644 migrations/Version20210715142732.php diff --git a/migrations/Version20210715135559.php b/migrations/Version20210715135559.php new file mode 100644 index 0000000..3ea2340 --- /dev/null +++ b/migrations/Version20210715135559.php @@ -0,0 +1,33 @@ +addSql('ALTER TABLE offering ADD coordinates TEXT DEFAULT NULL'); + $this->addSql('COMMENT ON COLUMN offering.coordinates IS \'(DC2Type:array)\''); + } + + public function down(Schema $schema): void + { + // this down() migration is auto-generated, please modify it to your needs + $this->addSql('CREATE SCHEMA public'); + $this->addSql('ALTER TABLE offering DROP coordinates'); + } +} diff --git a/migrations/Version20210715142350.php b/migrations/Version20210715142350.php new file mode 100644 index 0000000..ef51b4a --- /dev/null +++ b/migrations/Version20210715142350.php @@ -0,0 +1,35 @@ +addSql('ALTER TABLE offering ADD coordinate JSON DEFAULT NULL'); + $this->addSql('ALTER TABLE offering DROP coordinates'); + } + + public function down(Schema $schema): void + { + // this down() migration is auto-generated, please modify it to your needs + $this->addSql('CREATE SCHEMA public'); + $this->addSql('ALTER TABLE offering ADD coordinates TEXT DEFAULT NULL'); + $this->addSql('ALTER TABLE offering DROP coordinate'); + $this->addSql('COMMENT ON COLUMN offering.coordinates IS \'(DC2Type:array)\''); + } +} diff --git a/migrations/Version20210715142732.php b/migrations/Version20210715142732.php new file mode 100644 index 0000000..bb54fde --- /dev/null +++ b/migrations/Version20210715142732.php @@ -0,0 +1,36 @@ +addSql('ALTER TABLE offering ALTER coordinate TYPE TEXT'); + $this->addSql('ALTER TABLE offering ALTER coordinate DROP DEFAULT'); + $this->addSql('COMMENT ON COLUMN offering.coordinate IS \'(DC2Type:object)\''); + } + + public function down(Schema $schema): void + { + // this down() migration is auto-generated, please modify it to your needs + $this->addSql('CREATE SCHEMA public'); + $this->addSql('ALTER TABLE offering ALTER coordinate TYPE JSON'); + $this->addSql('ALTER TABLE offering ALTER coordinate DROP DEFAULT'); + $this->addSql('COMMENT ON COLUMN offering.coordinate IS NULL'); + } +} diff --git a/src/Controller/OfferController.php b/src/Controller/OfferController.php index 345a13a..1268d18 100644 --- a/src/Controller/OfferController.php +++ b/src/Controller/OfferController.php @@ -13,6 +13,8 @@ use App\Service\DistanceCalculator; use App\Service\OfferPhotoHelper; use Doctrine\ORM\EntityManagerInterface; +use Location\Coordinate; +use Location\Formatter\Coordinate\GeoJSON; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; @@ -38,7 +40,7 @@ class OfferController extends AbstractController } #[Route('/new', name: 'new_offer')] - public function newOffer(Request $request, string $photoDir, OfferPhotoHelper $offerPhotoHelper): Response + public function newOffer(Request $request, string $photoDir, OfferPhotoHelper $offerPhotoHelper, PlzToCoordinate $plzconverter): Response { $offer = new Offering(); $form = $this->createForm(OfferingFormType::class, $offer); @@ -50,6 +52,11 @@ class OfferController extends AbstractController $offer->setByUser($user); $offer->setCreatedAt(new \DateTime()); + if ($offerPlz = $form['zipCode']->getData()) { + $coordinate = $plzconverter->convertPlzToCoordinate($offerPlz); + $offer->setCoordinate($coordinate->format(new GeoJSON())); + } + if ($photo = $form['photo']->getData()) { $offerPhotoHelper->uploadOfferPhoto($photoDir, $photo, $offer); } @@ -81,7 +88,7 @@ class OfferController extends AbstractController if (isset($userPlz)) { - $distance = $distanceCalculator->calculateDistance($plzconverter->getCoordinates($offerPlz), $plzconverter->getCoordinates($userPlz)); + $distance = $distanceCalculator->calculateDistance($plzconverter->convertPlzToCoordinate($offerPlz), $plzconverter->convertPlzToCoordinate($userPlz)); } return $this->render('app/offer.html.twig', [ diff --git a/src/Entity/Offering.php b/src/Entity/Offering.php index 6f8ac66..62a9d96 100644 --- a/src/Entity/Offering.php +++ b/src/Entity/Offering.php @@ -51,6 +51,11 @@ class Offering */ private $description; + /** + * @ORM\Column(type="object", nullable=true) + */ + private $coordinate; + public function getId(): ?int { return $this->id; @@ -132,4 +137,16 @@ class Offering { return (string) $this-getTitle(); } + + public function getCoordinate() + { + return $this->coordinate; + } + + public function setCoordinate($coordinate): self + { + $this->coordinate = $coordinate; + + return $this; + } } From 5c25b036a4c19cdca6a1d2e969a5d0384af82cd3 Mon Sep 17 00:00:00 2001 From: Jannis Portmann Date: Fri, 23 Jul 2021 22:25:56 +0200 Subject: [PATCH 012/119] Revert "Save cooridnates as GeoJSON in database" This reverts commit ddb815d1b46b4e0366bb55659597a5cad3bb94c0. --- migrations/Version20210715135559.php | 33 ------------------------- migrations/Version20210715142350.php | 35 --------------------------- migrations/Version20210715142732.php | 36 ---------------------------- src/Controller/OfferController.php | 11 ++------- src/Entity/Offering.php | 17 ------------- 5 files changed, 2 insertions(+), 130 deletions(-) delete mode 100644 migrations/Version20210715135559.php delete mode 100644 migrations/Version20210715142350.php delete mode 100644 migrations/Version20210715142732.php diff --git a/migrations/Version20210715135559.php b/migrations/Version20210715135559.php deleted file mode 100644 index 3ea2340..0000000 --- a/migrations/Version20210715135559.php +++ /dev/null @@ -1,33 +0,0 @@ -addSql('ALTER TABLE offering ADD coordinates TEXT DEFAULT NULL'); - $this->addSql('COMMENT ON COLUMN offering.coordinates IS \'(DC2Type:array)\''); - } - - public function down(Schema $schema): void - { - // this down() migration is auto-generated, please modify it to your needs - $this->addSql('CREATE SCHEMA public'); - $this->addSql('ALTER TABLE offering DROP coordinates'); - } -} diff --git a/migrations/Version20210715142350.php b/migrations/Version20210715142350.php deleted file mode 100644 index ef51b4a..0000000 --- a/migrations/Version20210715142350.php +++ /dev/null @@ -1,35 +0,0 @@ -addSql('ALTER TABLE offering ADD coordinate JSON DEFAULT NULL'); - $this->addSql('ALTER TABLE offering DROP coordinates'); - } - - public function down(Schema $schema): void - { - // this down() migration is auto-generated, please modify it to your needs - $this->addSql('CREATE SCHEMA public'); - $this->addSql('ALTER TABLE offering ADD coordinates TEXT DEFAULT NULL'); - $this->addSql('ALTER TABLE offering DROP coordinate'); - $this->addSql('COMMENT ON COLUMN offering.coordinates IS \'(DC2Type:array)\''); - } -} diff --git a/migrations/Version20210715142732.php b/migrations/Version20210715142732.php deleted file mode 100644 index bb54fde..0000000 --- a/migrations/Version20210715142732.php +++ /dev/null @@ -1,36 +0,0 @@ -addSql('ALTER TABLE offering ALTER coordinate TYPE TEXT'); - $this->addSql('ALTER TABLE offering ALTER coordinate DROP DEFAULT'); - $this->addSql('COMMENT ON COLUMN offering.coordinate IS \'(DC2Type:object)\''); - } - - public function down(Schema $schema): void - { - // this down() migration is auto-generated, please modify it to your needs - $this->addSql('CREATE SCHEMA public'); - $this->addSql('ALTER TABLE offering ALTER coordinate TYPE JSON'); - $this->addSql('ALTER TABLE offering ALTER coordinate DROP DEFAULT'); - $this->addSql('COMMENT ON COLUMN offering.coordinate IS NULL'); - } -} diff --git a/src/Controller/OfferController.php b/src/Controller/OfferController.php index 1268d18..345a13a 100644 --- a/src/Controller/OfferController.php +++ b/src/Controller/OfferController.php @@ -13,8 +13,6 @@ use App\Service\DistanceCalculator; use App\Service\OfferPhotoHelper; use Doctrine\ORM\EntityManagerInterface; -use Location\Coordinate; -use Location\Formatter\Coordinate\GeoJSON; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; @@ -40,7 +38,7 @@ class OfferController extends AbstractController } #[Route('/new', name: 'new_offer')] - public function newOffer(Request $request, string $photoDir, OfferPhotoHelper $offerPhotoHelper, PlzToCoordinate $plzconverter): Response + public function newOffer(Request $request, string $photoDir, OfferPhotoHelper $offerPhotoHelper): Response { $offer = new Offering(); $form = $this->createForm(OfferingFormType::class, $offer); @@ -52,11 +50,6 @@ class OfferController extends AbstractController $offer->setByUser($user); $offer->setCreatedAt(new \DateTime()); - if ($offerPlz = $form['zipCode']->getData()) { - $coordinate = $plzconverter->convertPlzToCoordinate($offerPlz); - $offer->setCoordinate($coordinate->format(new GeoJSON())); - } - if ($photo = $form['photo']->getData()) { $offerPhotoHelper->uploadOfferPhoto($photoDir, $photo, $offer); } @@ -88,7 +81,7 @@ class OfferController extends AbstractController if (isset($userPlz)) { - $distance = $distanceCalculator->calculateDistance($plzconverter->convertPlzToCoordinate($offerPlz), $plzconverter->convertPlzToCoordinate($userPlz)); + $distance = $distanceCalculator->calculateDistance($plzconverter->getCoordinates($offerPlz), $plzconverter->getCoordinates($userPlz)); } return $this->render('app/offer.html.twig', [ diff --git a/src/Entity/Offering.php b/src/Entity/Offering.php index 62a9d96..6f8ac66 100644 --- a/src/Entity/Offering.php +++ b/src/Entity/Offering.php @@ -51,11 +51,6 @@ class Offering */ private $description; - /** - * @ORM\Column(type="object", nullable=true) - */ - private $coordinate; - public function getId(): ?int { return $this->id; @@ -137,16 +132,4 @@ class Offering { return (string) $this-getTitle(); } - - public function getCoordinate() - { - return $this->coordinate; - } - - public function setCoordinate($coordinate): self - { - $this->coordinate = $coordinate; - - return $this; - } } From dde15b83061dd86b36697f918ad56203edb5a0f6 Mon Sep 17 00:00:00 2001 From: Jannis Portmann Date: Fri, 3 Sep 2021 16:36:49 +0200 Subject: [PATCH 013/119] =?UTF-8?q?Prepend=20"Pfl=C3=A4nz.li=20-=20"=20to?= =?UTF-8?q?=20title?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- templates/base.html.twig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/templates/base.html.twig b/templates/base.html.twig index 46efe4d..5653b40 100644 --- a/templates/base.html.twig +++ b/templates/base.html.twig @@ -2,7 +2,7 @@ - {% block title %}Plant Exchange Home{% endblock %} + Pflänz.li - {% block title %}Plant Exchange Home{% endblock %} {% block stylesheets %} {{ encore_entry_link_tags('app') }} From 521217c00dcde211a1c783676db9ab26458509ab Mon Sep 17 00:00:00 2001 From: Jannis Portmann Date: Fri, 3 Sep 2021 16:37:34 +0200 Subject: [PATCH 014/119] Set title for offer view --- templates/app/offer.html.twig | 2 ++ 1 file changed, 2 insertions(+) diff --git a/templates/app/offer.html.twig b/templates/app/offer.html.twig index f74a1e9..f5cae81 100644 --- a/templates/app/offer.html.twig +++ b/templates/app/offer.html.twig @@ -1,5 +1,7 @@ {% extends 'base.html.twig' %} +{% block title %}Offer: {{ offer.title }}{% endblock %} + {% block body %} {% for message in app.flashes('error') %} {% endfor %} -

Filter

- {{ form_start(filter_form) }} -
-
- {{ form_row(filter_form.zipCode) }} -
-
- {{ form_row(filter_form.distance) }} -
-
- -
+
+ +
+ {{ form(filter_form) }}
- {{ form_end(filter_form) }} - +

Offers

{% if offers|length > 0 %} From 539b7edffeef8b37801599de5b2f5fbec864f4f4 Mon Sep 17 00:00:00 2001 From: thisfro Date: Mon, 17 Jan 2022 18:44:35 +0100 Subject: [PATCH 068/119] Fix typo --- src/Entity/Offering.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Entity/Offering.php b/src/Entity/Offering.php index 2179f13..8bf6c1c 100644 --- a/src/Entity/Offering.php +++ b/src/Entity/Offering.php @@ -141,7 +141,7 @@ class Offering public function __toString(): string { - return (string) $this-getTitle(); + return (string) $this->getTitle(); } public function getCoordinate(): ?Coordinate From d190971718afda425e94bc44963ea88580f295f8 Mon Sep 17 00:00:00 2001 From: thisfro Date: Mon, 17 Jan 2022 19:11:00 +0100 Subject: [PATCH 069/119] Don't use primary key for offers --- migrations/Version20220117175334.php | 32 ++++++++++++++++++++++++++++ src/Controller/OfferController.php | 7 +++--- src/Controller/TradeController.php | 2 +- src/Entity/Offering.php | 19 ++++++++++++++++- templates/app/offer.html.twig | 6 +++--- templates/offer/index.html.twig | 2 +- templates/user/offers.html.twig | 10 ++++----- templates/user/public.html.twig | 2 +- 8 files changed, 65 insertions(+), 15 deletions(-) create mode 100644 migrations/Version20220117175334.php diff --git a/migrations/Version20220117175334.php b/migrations/Version20220117175334.php new file mode 100644 index 0000000..abf636d --- /dev/null +++ b/migrations/Version20220117175334.php @@ -0,0 +1,32 @@ +addSql('ALTER TABLE offering ADD url_id VARCHAR(13) NOT NULL'); + + } + + public function down(Schema $schema): void + { + // this down() migration is auto-generated, please modify it to your needs + $this->addSql('ALTER TABLE offering DROP url_id'); + } +} diff --git a/src/Controller/OfferController.php b/src/Controller/OfferController.php index 9b2572e..3130dba 100644 --- a/src/Controller/OfferController.php +++ b/src/Controller/OfferController.php @@ -83,6 +83,7 @@ class OfferController extends AbstractController if ($form->isSubmitted() && $form->isValid()) { $offer->setByUser($user); $offer->setCreatedAt(new \DateTime()); + $offer->setUrlId(uniqid()); $coordinate = $plzconverter->convertPlzToCoordinate($form['zipCode']->getData()); if ($coordinate != null) { @@ -108,7 +109,7 @@ class OfferController extends AbstractController ]); } - #[Route('/offer/{id}', name: 'show_offer')] + #[Route('/offer/{urlId}', name: 'show_offer')] public function showOffer(Offering $offer, WishRepository $wishRepository, PlzToCoordinate $plzconverter, DistanceCalculator $distanceCalculator): Response { $distance = null; @@ -142,7 +143,7 @@ class OfferController extends AbstractController ]); } - #[Route('/offer/edit/{id}', name: 'edit_offer')] + #[Route('/offer/edit/{urlId}', name: 'edit_offer')] public function editOffer(Offering $offer, OfferingRepository $offerRepository, Request $request, string $photoDir, OfferPhotoHelper $offerPhotoHelper): Response { $form = $this->createForm(OfferingFormType::class, $offer); @@ -175,7 +176,7 @@ class OfferController extends AbstractController throw new HttpException(403, "No permission"); } - #[Route('/offer/delete/{id}', name: 'delete_offer')] + #[Route('/offer/delete/{urlId}', name: 'delete_offer')] public function deleteOffer(Offering $offer, string $photoDir, OfferPhotoHelper $offerPhotoHelper): Response { $user = $this->getUser(); diff --git a/src/Controller/TradeController.php b/src/Controller/TradeController.php index 83d88be..f8f7882 100644 --- a/src/Controller/TradeController.php +++ b/src/Controller/TradeController.php @@ -49,6 +49,6 @@ class TradeController extends AbstractController $this->addFlash('error','You can\'t trade with yourself!'); } - return $this->redirectToRoute('show_offer', ['id' => $offer->getId()]); + return $this->redirectToRoute('show_offer', ['urlId' => $offer->getId()]); } } diff --git a/src/Entity/Offering.php b/src/Entity/Offering.php index 8bf6c1c..eca0e07 100644 --- a/src/Entity/Offering.php +++ b/src/Entity/Offering.php @@ -62,6 +62,11 @@ class Offering */ private $lng; + /** + * @ORM\Column(type="string", length=13) + */ + private $urlId; + public function getId(): ?int { return $this->id; @@ -141,7 +146,7 @@ class Offering public function __toString(): string { - return (string) $this->getTitle(); + return (string) $this-getTitle(); } public function getCoordinate(): ?Coordinate @@ -158,4 +163,16 @@ class Offering return $this; } + + public function getUrlId(): ?string + { + return $this->urlId; + } + + public function setUrlId(string $urlId): self + { + $this->urlId = $urlId; + + return $this; + } } \ No newline at end of file diff --git a/templates/app/offer.html.twig b/templates/app/offer.html.twig index f5cae81..a07dda6 100644 --- a/templates/app/offer.html.twig +++ b/templates/app/offer.html.twig @@ -47,7 +47,7 @@
{% if offer.byUser == user %} - +
@@ -85,6 +85,6 @@ {% endif %}
- Offer trade + Offer trade {% endif %} {% endblock %} diff --git a/templates/offer/index.html.twig b/templates/offer/index.html.twig index 68476c0..d917e2f 100644 --- a/templates/offer/index.html.twig +++ b/templates/offer/index.html.twig @@ -30,7 +30,7 @@ {% for offer in offers %}
- + {% if offer.photoFilename %} {% else %} diff --git a/templates/user/offers.html.twig b/templates/user/offers.html.twig index 4981a6c..9afebb1 100644 --- a/templates/user/offers.html.twig +++ b/templates/user/offers.html.twig @@ -14,7 +14,7 @@ {% for offer in offers %} -