From 5a6deb28c48245b6437049ecbc365f619e5e0852 Mon Sep 17 00:00:00 2001 From: nayluge Date: Thu, 21 Nov 2019 14:06:00 +0100 Subject: [PATCH 1/2] feat(avent): add markdown support for 2019 articles --- composer.json | 5 + config/bundles.php | 1 + config/services.yaml | 4 + src/Controller/AventController.php | 116 +++++----- symfony.lock | 6 + .../day_01.html.twig} | 0 .../day_02.html.twig} | 0 .../day_03.html.twig} | 0 .../day_04.html.twig} | 0 .../day_05.html.twig} | 0 .../day_06.html.twig} | 0 .../day_07.html.twig} | 0 .../day_08.html.twig} | 0 .../day_09.html.twig} | 0 .../day_10.html.twig} | 0 .../day_11.html.twig} | 0 .../day_12.html.twig} | 0 .../day_13.html.twig} | 0 .../day_14.html.twig} | 0 .../day_15.html.twig} | 0 .../day_16.html.twig} | 0 .../day_17.html.twig} | 0 .../day_18.html.twig} | 0 .../day_19.html.twig} | 0 .../day_20.html.twig} | 0 .../day_21.html.twig} | 0 .../day_22.html.twig} | 0 .../day_23.html.twig} | 0 .../day_24.html.twig} | 0 .../day_01.html.twig} | 0 .../day_02.html.twig} | 0 .../day_03.html.twig} | 0 .../day_04.html.twig} | 0 .../day_05.html.twig} | 0 .../day_06.html.twig} | 0 .../day_07.html.twig} | 0 .../day_08.html.twig} | 0 .../day_09.html.twig} | 0 .../day_10.html.twig} | 0 .../day_11.html.twig} | 0 .../day_12.html.twig} | 0 .../day_13.html.twig} | 0 .../day_14.html.twig} | 0 .../day_15.html.twig} | 0 .../day_16.html.twig} | 0 .../day_17.html.twig} | 0 .../day_18.html.twig} | 4 +- .../day_19.html.twig} | 4 +- .../day_20.html.twig} | 10 +- .../day_21.html.twig} | 12 +- .../day_22.html.twig} | 8 +- .../day_23.html.twig} | 8 +- .../day_24.html.twig} | 2 +- templates/Avent/2019/day_01.html.twig | 203 ++++++++++++++++++ templates/Avent/day.html.twig | 21 +- templates/Avent/year_2013.atom.twig | 3 - templates/Avent/year_2013.html.twig | 3 - templates/Avent/year_2017.atom.twig | 3 - templates/Avent/year_2017.html.twig | 3 - 59 files changed, 312 insertions(+), 104 deletions(-) rename templates/Avent/{day_2013_01.html.twig => 2013/day_01.html.twig} (100%) rename templates/Avent/{day_2013_02.html.twig => 2013/day_02.html.twig} (100%) rename templates/Avent/{day_2013_03.html.twig => 2013/day_03.html.twig} (100%) rename templates/Avent/{day_2013_04.html.twig => 2013/day_04.html.twig} (100%) rename templates/Avent/{day_2013_05.html.twig => 2013/day_05.html.twig} (100%) rename templates/Avent/{day_2013_06.html.twig => 2013/day_06.html.twig} (100%) rename templates/Avent/{day_2013_07.html.twig => 2013/day_07.html.twig} (100%) rename templates/Avent/{day_2013_08.html.twig => 2013/day_08.html.twig} (100%) rename templates/Avent/{day_2013_09.html.twig => 2013/day_09.html.twig} (100%) rename templates/Avent/{day_2013_10.html.twig => 2013/day_10.html.twig} (100%) rename templates/Avent/{day_2013_11.html.twig => 2013/day_11.html.twig} (100%) rename templates/Avent/{day_2013_12.html.twig => 2013/day_12.html.twig} (100%) rename templates/Avent/{day_2013_13.html.twig => 2013/day_13.html.twig} (100%) rename templates/Avent/{day_2013_14.html.twig => 2013/day_14.html.twig} (100%) rename templates/Avent/{day_2013_15.html.twig => 2013/day_15.html.twig} (100%) rename templates/Avent/{day_2013_16.html.twig => 2013/day_16.html.twig} (100%) rename templates/Avent/{day_2013_17.html.twig => 2013/day_17.html.twig} (100%) rename templates/Avent/{day_2013_18.html.twig => 2013/day_18.html.twig} (100%) rename templates/Avent/{day_2013_19.html.twig => 2013/day_19.html.twig} (100%) rename templates/Avent/{day_2013_20.html.twig => 2013/day_20.html.twig} (100%) rename templates/Avent/{day_2013_21.html.twig => 2013/day_21.html.twig} (100%) rename templates/Avent/{day_2013_22.html.twig => 2013/day_22.html.twig} (100%) rename templates/Avent/{day_2013_23.html.twig => 2013/day_23.html.twig} (100%) rename templates/Avent/{day_2013_24.html.twig => 2013/day_24.html.twig} (100%) rename templates/Avent/{day_2017_01.html.twig => 2017/day_01.html.twig} (100%) rename templates/Avent/{day_2017_02.html.twig => 2017/day_02.html.twig} (100%) rename templates/Avent/{day_2017_03.html.twig => 2017/day_03.html.twig} (100%) rename templates/Avent/{day_2017_04.html.twig => 2017/day_04.html.twig} (100%) rename templates/Avent/{day_2017_05.html.twig => 2017/day_05.html.twig} (100%) rename templates/Avent/{day_2017_06.html.twig => 2017/day_06.html.twig} (100%) rename templates/Avent/{day_2017_07.html.twig => 2017/day_07.html.twig} (100%) rename templates/Avent/{day_2017_08.html.twig => 2017/day_08.html.twig} (100%) rename templates/Avent/{day_2017_09.html.twig => 2017/day_09.html.twig} (100%) rename templates/Avent/{day_2017_10.html.twig => 2017/day_10.html.twig} (100%) rename templates/Avent/{day_2017_11.html.twig => 2017/day_11.html.twig} (100%) rename templates/Avent/{day_2017_12.html.twig => 2017/day_12.html.twig} (100%) rename templates/Avent/{day_2017_13.html.twig => 2017/day_13.html.twig} (100%) rename templates/Avent/{day_2017_14.html.twig => 2017/day_14.html.twig} (100%) rename templates/Avent/{day_2017_15.html.twig => 2017/day_15.html.twig} (100%) rename templates/Avent/{day_2017_16.html.twig => 2017/day_16.html.twig} (100%) rename templates/Avent/{day_2017_17.html.twig => 2017/day_17.html.twig} (100%) rename templates/Avent/{day_2017_18.html.twig => 2017/day_18.html.twig} (98%) rename templates/Avent/{day_2017_19.html.twig => 2017/day_19.html.twig} (96%) rename templates/Avent/{day_2017_20.html.twig => 2017/day_20.html.twig} (98%) rename templates/Avent/{day_2017_21.html.twig => 2017/day_21.html.twig} (97%) rename templates/Avent/{day_2017_22.html.twig => 2017/day_22.html.twig} (99%) rename templates/Avent/{day_2017_23.html.twig => 2017/day_23.html.twig} (96%) rename templates/Avent/{day_2017_24.html.twig => 2017/day_24.html.twig} (99%) create mode 100644 templates/Avent/2019/day_01.html.twig delete mode 100644 templates/Avent/year_2013.atom.twig delete mode 100644 templates/Avent/year_2013.html.twig delete mode 100644 templates/Avent/year_2017.atom.twig delete mode 100644 templates/Avent/year_2017.html.twig diff --git a/composer.json b/composer.json index 35823b1b..175c3293 100644 --- a/composer.json +++ b/composer.json @@ -41,6 +41,11 @@ "symfony/web-link": "4.3.*", "symfony/webpack-encore-bundle": "^1.6", "symfony/yaml": "4.3.*", + "twig/extensions": "^1.5", + "php-http/guzzle6-adapter": "^2.0.1", + "php-http/httplug-bundle": "^1.16.0", + "twig/extra-bundle": "^2.12", + "twig/markdown-extra": "^2.12" "twig/extensions": "^1.5" }, "require-dev": { diff --git a/config/bundles.php b/config/bundles.php index 6a3efc96..ed579f10 100644 --- a/config/bundles.php +++ b/config/bundles.php @@ -26,5 +26,6 @@ Sonata\AdminBundle\SonataAdminBundle::class => ['all' => true], Sonata\DoctrineORMAdminBundle\SonataDoctrineORMAdminBundle::class => ['all' => true], HWI\Bundle\OAuthBundle\HWIOAuthBundle::class => ['all' => true], + Twig\Extra\TwigExtraBundle\TwigExtraBundle::class => ['all' => true], Http\HttplugBundle\HttplugBundle::class => ['all' => true], ]; diff --git a/config/services.yaml b/config/services.yaml index 01c082bc..399c56da 100644 --- a/config/services.yaml +++ b/config/services.yaml @@ -19,6 +19,10 @@ services: resource: '../src/Controller' tags: ['controller.service_arguments'] + App\Controller\AventController: + tags: ['controller.service_arguments'] + arguments: ['@twig', '%kernel.environment%'] + FPN\TagBundle\Entity\TagManager: alias: 'fpn_tag.tag_manager' diff --git a/src/Controller/AventController.php b/src/Controller/AventController.php index c944e4b7..cd9f9019 100644 --- a/src/Controller/AventController.php +++ b/src/Controller/AventController.php @@ -10,69 +10,77 @@ class AventController extends AbstractController { private $twig; + protected $futureEnabled; + protected $enabledYears = array('2013', '2017', '2019'); - public function __construct(Environment $twig) + public function __construct(Environment $twig, $env) { $this->twig = $twig; + if('prod' != $env) { + $this->futureEnabled = true; + } + else { + $this->futureEnabled = false; + } } - protected $futureEnabled = false; // useful for dev - protected $enabledYears = array('2013', '2017'); - protected $slugs = array( // Last articles top 2013 => array( - '24-avancee-symfony-2-5' => 'Avent/day_2013_24.html.twig', - '23-sensibilisation-ddd' => 'Avent/day_2013_23.html.twig', - '22-formulaires-Symfony2-et-data-binding' => 'Avent/day_2013_22.html.twig', - '21-rabbitmq-et-Symfony2-traitements-asynchrones' => 'Avent/day_2013_21.html.twig', - '20-elasticsearch-dans-votre-Symfony2' => 'Avent/day_2013_20.html.twig', - '19-bien-penser-ses-commandes-Symfony' => 'Avent/day_2013_19.html.twig', - '18-capifony-et-capistrano' => 'Avent/day_2013_18.html.twig', - '17-commencer-a-adopter-Devops-sur-ses-projets-Symfony' => 'Avent/day_2013_17.html.twig', - '16-symfony-et-angularjs-tips' => 'Avent/day_2013_16.html.twig', - '15-etendre-behat-pour-y-mettre-son-metier' => 'Avent/day_2013_15.html.twig', - '14-votre-application-est-lente-pensez-a-optimiser-doctrine' => 'Avent/day_2013_14.html.twig', - '13-jouons-a-cache-cache-avec-http' => 'Avent/day_2013_13.html.twig', - '12-et-si-on-mettait-un-peu-de-symfony-dans-javascript' => 'Avent/day_2013_12.html.twig', - '11-les-cms-autour-de-symfony2' => 'Avent/day_2013_11.html.twig', - '10-les-meta-donnees-doctrine' => 'Avent/day_2013_10.html.twig', - '09-symfony-1-5-notre-fork-de-symfony1' => 'Avent/day_2013_09.html.twig', - '08-utilisation-avancee-du-composant-sonfig-de-symfony2' => 'Avent/day_2013_08.html.twig', - '07-symfony-framework-MVC-javascript' => 'Avent/day_2013_07.html.twig', - '06-best-practices-pour-vos-apis-rest-http-avec-symfony2' => 'Avent/day_2013_06.html.twig', - '05-conteneur-de-services-creer-ses-propres-tags' => 'Avent/day_2013_05.html.twig', - '04-utilisez-apydatagridbundle-pour-des-listings-impeccables' => 'Avent/day_2013_04.html.twig', - '03-faites-le-plein-de-propel' => 'Avent/day_2013_03.html.twig', - '02-principes-stupid-solid-poo' => 'Avent/day_2013_02.html.twig', - '01-presentation-afsy' => 'Avent/day_2013_01.html.twig', + '24-avancee-symfony-2-5' => 'Avent/2013/day_24.html.twig', + '23-sensibilisation-ddd' => 'Avent/2013/day_23.html.twig', + '22-formulaires-Symfony2-et-data-binding' => 'Avent/2013/day_22.html.twig', + '21-rabbitmq-et-Symfony2-traitements-asynchrones' => 'Avent/2013/day_21.html.twig', + '20-elasticsearch-dans-votre-Symfony2' => 'Avent/2013/day_20.html.twig', + '19-bien-penser-ses-commandes-Symfony' => 'Avent/2013/day_19.html.twig', + '18-capifony-et-capistrano' => 'Avent/2013/day_18.html.twig', + '17-commencer-a-adopter-Devops-sur-ses-projets-Symfony' => 'Avent/2013/day_17.html.twig', + '16-symfony-et-angularjs-tips' => 'Avent/2013/day_16.html.twig', + '15-etendre-behat-pour-y-mettre-son-metier' => 'Avent/2013/day_15.html.twig', + '14-votre-application-est-lente-pensez-a-optimiser-doctrine' => 'Avent/2013/day_14.html.twig', + '13-jouons-a-cache-cache-avec-http' => 'Avent/2013/day_13.html.twig', + '12-et-si-on-mettait-un-peu-de-symfony-dans-javascript' => 'Avent/2013/day_12.html.twig', + '11-les-cms-autour-de-symfony2' => 'Avent/2013/day_11.html.twig', + '10-les-meta-donnees-doctrine' => 'Avent/2013/day_10.html.twig', + '09-symfony-1-5-notre-fork-de-symfony1' => 'Avent/2013/day_09.html.twig', + '08-utilisation-avancee-du-composant-sonfig-de-symfony2' => 'Avent/2013/day_08.html.twig', + '07-symfony-framework-MVC-javascript' => 'Avent/2013/day_07.html.twig', + '06-best-practices-pour-vos-apis-rest-http-avec-symfony2' => 'Avent/2013/day_06.html.twig', + '05-conteneur-de-services-creer-ses-propres-tags' => 'Avent/2013/day_05.html.twig', + '04-utilisez-apydatagridbundle-pour-des-listings-impeccables' => 'Avent/2013/day_04.html.twig', + '03-faites-le-plein-de-propel' => 'Avent/2013/day_03.html.twig', + '02-principes-stupid-solid-poo' => 'Avent/2013/day_02.html.twig', + '01-presentation-afsy' => 'Avent/2013/day_01.html.twig', ), 2017 => array( - '24-unpack-tes-packs' => 'Avent/day_2017_24.html.twig', - '23-comment-l-architecture-hexagonale-nous-a-facilite-la-vie' => 'Avent/day_2017_23.html.twig', - '22-log-me-tender' => 'Avent/day_2017_22.html.twig', - '21-symfony-et-websockets' => 'Avent/day_2017_21.html.twig', - '20-elasticsearch-6-et-symfony-4' => 'Avent/day_2017_20.html.twig', - '19-composant-workflow-par-l-exemple' => 'Avent/day_2017_19.html.twig', - '18-structurer-sa-demarche-de-test' => 'Avent/day_2017_18.html.twig', - '17-bien-demarrer-avec-symfony-et-react' => 'Avent/day_2017_17.html.twig', - '16-des-astuces-de-securite-avec-symfony' => 'Avent/day_2017_16.html.twig', - '15-comment-ne-pas-trop-exposer-symfony' => 'Avent/day_2017_15.html.twig', - '14-une-api-graphql-avec-symfony' => 'Avent/day_2017_14.html.twig', - '13-creer-une-application-cross-platform' => 'Avent/day_2017_13.html.twig', - '12-serverless-php-et-symfony' => 'Avent/day_2017_12.html.twig', - '11-non-a-la-doctrine-decouvrez-pomm-et-re-decouvrez-postgresql' => 'Avent/day_2017_11.html.twig', - '10-comment-mettre-les-mains-dans-un-projet-existant' => 'Avent/day_2017_10.html.twig', - '09-utilisation-de-twig-en-phase-de-prototypage' => 'Avent/day_2017_09.html.twig', - '08-symfony-flex-la-nouvelle-facon-de-developper-avec-symfony' => 'Avent/day_2017_08.html.twig', - '07-decoupler-form-et-votre-modele' => 'Avent/day_2017_07.html.twig', - '06-headless-is-more' => 'Avent/day_2017_06.html.twig', - '05-deboguer-php-avec-gdb' => 'Avent/day_2017_05.html.twig', - '04-tagger-son-application' => 'Avent/day_2017_04.html.twig', - '03-deployer-un-projet-symfony-flex-sur-heroku' => 'Avent/day_2017_03.html.twig', - '02-la-nouvelle-configuration-par-defaut-de-symfony4' => 'Avent/day_2017_02.html.twig', - '01-easyadminbundle-l-arriere-guichet-easy-peasy' => 'Avent/day_2017_01.html.twig', + '24-unpack-tes-packs' => 'Avent/2017/day_24.html.twig', + '23-comment-l-architecture-hexagonale-nous-a-facilite-la-vie' => 'Avent/2017/day_23.html.twig', + '22-log-me-tender' => 'Avent/2017/day_22.html.twig', + '21-symfony-et-websockets' => 'Avent/2017/day_21.html.twig', + '20-elasticsearch-6-et-symfony-4' => 'Avent/2017/day_20.html.twig', + '19-composant-workflow-par-l-exemple' => 'Avent/2017/day_19.html.twig', + '18-structurer-sa-demarche-de-test' => 'Avent/2017/day_18.html.twig', + '17-bien-demarrer-avec-symfony-et-react' => 'Avent/2017/day_17.html.twig', + '16-des-astuces-de-securite-avec-symfony' => 'Avent/2017/day_16.html.twig', + '15-comment-ne-pas-trop-exposer-symfony' => 'Avent/2017/day_15.html.twig', + '14-une-api-graphql-avec-symfony' => 'Avent/2017/day_14.html.twig', + '13-creer-une-application-cross-platform' => 'Avent/2017/day_13.html.twig', + '12-serverless-php-et-symfony' => 'Avent/2017/day_12.html.twig', + '11-non-a-la-doctrine-decouvrez-pomm-et-re-decouvrez-postgresql' => 'Avent/2017/day_11.html.twig', + '10-comment-mettre-les-mains-dans-un-projet-existant' => 'Avent/2017/day_10.html.twig', + '09-utilisation-de-twig-en-phase-de-prototypage' => 'Avent/2017/day_09.html.twig', + '08-symfony-flex-la-nouvelle-facon-de-developper-avec-symfony' => 'Avent/2017/day_08.html.twig', + '07-decoupler-form-et-votre-modele' => 'Avent/2017/day_07.html.twig', + '06-headless-is-more' => 'Avent/2017/day_06.html.twig', + '05-deboguer-php-avec-gdb' => 'Avent/2017/day_05.html.twig', + '04-tagger-son-application' => 'Avent/2017/day_04.html.twig', + '03-deployer-un-projet-symfony-flex-sur-heroku' => 'Avent/2017/day_03.html.twig', + '02-la-nouvelle-configuration-par-defaut-de-symfony4' => 'Avent/2017/day_02.html.twig', + '01-easyadminbundle-l-arriere-guichet-easy-peasy' => 'Avent/2017/day_01.html.twig', ), + 2019 => array( + '01-test' => 'Avent/2019/day_01.html.twig', + ) ); /** @@ -88,7 +96,7 @@ public function indexAction($year) return $this->redirectToRoute('avent', array('year' => current($years))); } - return $this->render('Avent/year_'.$year.'.html.twig', array( + return $this->render('Avent/year.html.twig', array( 'year' => $year, 'days' => $this->loadYearData($year), )); @@ -99,7 +107,7 @@ public function indexAction($year) */ public function feedAction($year) { - return $this->render('Avent/year_'.$year.'.atom.twig', array( + return $this->render('Avent/year.atom.twig', array( 'year' => $year, 'days' => $this->loadYearData($year), )); diff --git a/symfony.lock b/symfony.lock index f994952b..6e005b21 100644 --- a/symfony.lock +++ b/symfony.lock @@ -706,6 +706,12 @@ "config/packages/twig_extensions.yaml" ] }, + "twig/extra-bundle": { + "version": "3.x-dev" + }, + "twig/markdown-extra": { + "version": "3.x-dev" + }, "twig/twig": { "version": "v2.12.1" }, diff --git a/templates/Avent/day_2013_01.html.twig b/templates/Avent/2013/day_01.html.twig similarity index 100% rename from templates/Avent/day_2013_01.html.twig rename to templates/Avent/2013/day_01.html.twig diff --git a/templates/Avent/day_2013_02.html.twig b/templates/Avent/2013/day_02.html.twig similarity index 100% rename from templates/Avent/day_2013_02.html.twig rename to templates/Avent/2013/day_02.html.twig diff --git a/templates/Avent/day_2013_03.html.twig b/templates/Avent/2013/day_03.html.twig similarity index 100% rename from templates/Avent/day_2013_03.html.twig rename to templates/Avent/2013/day_03.html.twig diff --git a/templates/Avent/day_2013_04.html.twig b/templates/Avent/2013/day_04.html.twig similarity index 100% rename from templates/Avent/day_2013_04.html.twig rename to templates/Avent/2013/day_04.html.twig diff --git a/templates/Avent/day_2013_05.html.twig b/templates/Avent/2013/day_05.html.twig similarity index 100% rename from templates/Avent/day_2013_05.html.twig rename to templates/Avent/2013/day_05.html.twig diff --git a/templates/Avent/day_2013_06.html.twig b/templates/Avent/2013/day_06.html.twig similarity index 100% rename from templates/Avent/day_2013_06.html.twig rename to templates/Avent/2013/day_06.html.twig diff --git a/templates/Avent/day_2013_07.html.twig b/templates/Avent/2013/day_07.html.twig similarity index 100% rename from templates/Avent/day_2013_07.html.twig rename to templates/Avent/2013/day_07.html.twig diff --git a/templates/Avent/day_2013_08.html.twig b/templates/Avent/2013/day_08.html.twig similarity index 100% rename from templates/Avent/day_2013_08.html.twig rename to templates/Avent/2013/day_08.html.twig diff --git a/templates/Avent/day_2013_09.html.twig b/templates/Avent/2013/day_09.html.twig similarity index 100% rename from templates/Avent/day_2013_09.html.twig rename to templates/Avent/2013/day_09.html.twig diff --git a/templates/Avent/day_2013_10.html.twig b/templates/Avent/2013/day_10.html.twig similarity index 100% rename from templates/Avent/day_2013_10.html.twig rename to templates/Avent/2013/day_10.html.twig diff --git a/templates/Avent/day_2013_11.html.twig b/templates/Avent/2013/day_11.html.twig similarity index 100% rename from templates/Avent/day_2013_11.html.twig rename to templates/Avent/2013/day_11.html.twig diff --git a/templates/Avent/day_2013_12.html.twig b/templates/Avent/2013/day_12.html.twig similarity index 100% rename from templates/Avent/day_2013_12.html.twig rename to templates/Avent/2013/day_12.html.twig diff --git a/templates/Avent/day_2013_13.html.twig b/templates/Avent/2013/day_13.html.twig similarity index 100% rename from templates/Avent/day_2013_13.html.twig rename to templates/Avent/2013/day_13.html.twig diff --git a/templates/Avent/day_2013_14.html.twig b/templates/Avent/2013/day_14.html.twig similarity index 100% rename from templates/Avent/day_2013_14.html.twig rename to templates/Avent/2013/day_14.html.twig diff --git a/templates/Avent/day_2013_15.html.twig b/templates/Avent/2013/day_15.html.twig similarity index 100% rename from templates/Avent/day_2013_15.html.twig rename to templates/Avent/2013/day_15.html.twig diff --git a/templates/Avent/day_2013_16.html.twig b/templates/Avent/2013/day_16.html.twig similarity index 100% rename from templates/Avent/day_2013_16.html.twig rename to templates/Avent/2013/day_16.html.twig diff --git a/templates/Avent/day_2013_17.html.twig b/templates/Avent/2013/day_17.html.twig similarity index 100% rename from templates/Avent/day_2013_17.html.twig rename to templates/Avent/2013/day_17.html.twig diff --git a/templates/Avent/day_2013_18.html.twig b/templates/Avent/2013/day_18.html.twig similarity index 100% rename from templates/Avent/day_2013_18.html.twig rename to templates/Avent/2013/day_18.html.twig diff --git a/templates/Avent/day_2013_19.html.twig b/templates/Avent/2013/day_19.html.twig similarity index 100% rename from templates/Avent/day_2013_19.html.twig rename to templates/Avent/2013/day_19.html.twig diff --git a/templates/Avent/day_2013_20.html.twig b/templates/Avent/2013/day_20.html.twig similarity index 100% rename from templates/Avent/day_2013_20.html.twig rename to templates/Avent/2013/day_20.html.twig diff --git a/templates/Avent/day_2013_21.html.twig b/templates/Avent/2013/day_21.html.twig similarity index 100% rename from templates/Avent/day_2013_21.html.twig rename to templates/Avent/2013/day_21.html.twig diff --git a/templates/Avent/day_2013_22.html.twig b/templates/Avent/2013/day_22.html.twig similarity index 100% rename from templates/Avent/day_2013_22.html.twig rename to templates/Avent/2013/day_22.html.twig diff --git a/templates/Avent/day_2013_23.html.twig b/templates/Avent/2013/day_23.html.twig similarity index 100% rename from templates/Avent/day_2013_23.html.twig rename to templates/Avent/2013/day_23.html.twig diff --git a/templates/Avent/day_2013_24.html.twig b/templates/Avent/2013/day_24.html.twig similarity index 100% rename from templates/Avent/day_2013_24.html.twig rename to templates/Avent/2013/day_24.html.twig diff --git a/templates/Avent/day_2017_01.html.twig b/templates/Avent/2017/day_01.html.twig similarity index 100% rename from templates/Avent/day_2017_01.html.twig rename to templates/Avent/2017/day_01.html.twig diff --git a/templates/Avent/day_2017_02.html.twig b/templates/Avent/2017/day_02.html.twig similarity index 100% rename from templates/Avent/day_2017_02.html.twig rename to templates/Avent/2017/day_02.html.twig diff --git a/templates/Avent/day_2017_03.html.twig b/templates/Avent/2017/day_03.html.twig similarity index 100% rename from templates/Avent/day_2017_03.html.twig rename to templates/Avent/2017/day_03.html.twig diff --git a/templates/Avent/day_2017_04.html.twig b/templates/Avent/2017/day_04.html.twig similarity index 100% rename from templates/Avent/day_2017_04.html.twig rename to templates/Avent/2017/day_04.html.twig diff --git a/templates/Avent/day_2017_05.html.twig b/templates/Avent/2017/day_05.html.twig similarity index 100% rename from templates/Avent/day_2017_05.html.twig rename to templates/Avent/2017/day_05.html.twig diff --git a/templates/Avent/day_2017_06.html.twig b/templates/Avent/2017/day_06.html.twig similarity index 100% rename from templates/Avent/day_2017_06.html.twig rename to templates/Avent/2017/day_06.html.twig diff --git a/templates/Avent/day_2017_07.html.twig b/templates/Avent/2017/day_07.html.twig similarity index 100% rename from templates/Avent/day_2017_07.html.twig rename to templates/Avent/2017/day_07.html.twig diff --git a/templates/Avent/day_2017_08.html.twig b/templates/Avent/2017/day_08.html.twig similarity index 100% rename from templates/Avent/day_2017_08.html.twig rename to templates/Avent/2017/day_08.html.twig diff --git a/templates/Avent/day_2017_09.html.twig b/templates/Avent/2017/day_09.html.twig similarity index 100% rename from templates/Avent/day_2017_09.html.twig rename to templates/Avent/2017/day_09.html.twig diff --git a/templates/Avent/day_2017_10.html.twig b/templates/Avent/2017/day_10.html.twig similarity index 100% rename from templates/Avent/day_2017_10.html.twig rename to templates/Avent/2017/day_10.html.twig diff --git a/templates/Avent/day_2017_11.html.twig b/templates/Avent/2017/day_11.html.twig similarity index 100% rename from templates/Avent/day_2017_11.html.twig rename to templates/Avent/2017/day_11.html.twig diff --git a/templates/Avent/day_2017_12.html.twig b/templates/Avent/2017/day_12.html.twig similarity index 100% rename from templates/Avent/day_2017_12.html.twig rename to templates/Avent/2017/day_12.html.twig diff --git a/templates/Avent/day_2017_13.html.twig b/templates/Avent/2017/day_13.html.twig similarity index 100% rename from templates/Avent/day_2017_13.html.twig rename to templates/Avent/2017/day_13.html.twig diff --git a/templates/Avent/day_2017_14.html.twig b/templates/Avent/2017/day_14.html.twig similarity index 100% rename from templates/Avent/day_2017_14.html.twig rename to templates/Avent/2017/day_14.html.twig diff --git a/templates/Avent/day_2017_15.html.twig b/templates/Avent/2017/day_15.html.twig similarity index 100% rename from templates/Avent/day_2017_15.html.twig rename to templates/Avent/2017/day_15.html.twig diff --git a/templates/Avent/day_2017_16.html.twig b/templates/Avent/2017/day_16.html.twig similarity index 100% rename from templates/Avent/day_2017_16.html.twig rename to templates/Avent/2017/day_16.html.twig diff --git a/templates/Avent/day_2017_17.html.twig b/templates/Avent/2017/day_17.html.twig similarity index 100% rename from templates/Avent/day_2017_17.html.twig rename to templates/Avent/2017/day_17.html.twig diff --git a/templates/Avent/day_2017_18.html.twig b/templates/Avent/2017/day_18.html.twig similarity index 98% rename from templates/Avent/day_2017_18.html.twig rename to templates/Avent/2017/day_18.html.twig index 310daa48..9022f3c6 100644 --- a/templates/Avent/day_2017_18.html.twig +++ b/templates/Avent/2017/day_18.html.twig @@ -20,7 +20,7 @@

 Les différents types de tests

Il existe plusieurs types de tests automatisés.
On en représente à minima trois :

- +

L'idée est qu'un test système (ou test fonctionnel) coûte cher à développer et à maintenir.
Il a un vrai intérêt puisqu'il permet de valider que le code produit répond au besoin utilisateur, mais il sera également assez long à exécuter puisqu'il fait tourner l'application dans son intégralité, dépendances (base de données, service d'envoi de mail, api externes, etc) incluses. @@ -202,7 +202,7 @@ class Comment { {% endblock %} {% block article_avatar %} - Karim Ammor + Karim Ammor {% endblock %} {% block article_bio %} diff --git a/templates/Avent/day_2017_19.html.twig b/templates/Avent/2017/day_19.html.twig similarity index 96% rename from templates/Avent/day_2017_19.html.twig rename to templates/Avent/2017/day_19.html.twig index f1ae1617..12df1507 100644 --- a/templates/Avent/day_2017_19.html.twig +++ b/templates/Avent/2017/day_19.html.twig @@ -72,7 +72,7 @@

Ce qui génèrera l’image suivante :

- Workflow packet example + Workflow packet example

Doc ? Qui a dit doc ?

@@ -135,7 +135,7 @@ class PacketLostListener implements EventSubscriberInterface {% endblock %} {% block article_avatar %} - Cyril Souillard + Cyril Souillard {% endblock %} {% block article_bio %} diff --git a/templates/Avent/day_2017_20.html.twig b/templates/Avent/2017/day_20.html.twig similarity index 98% rename from templates/Avent/day_2017_20.html.twig rename to templates/Avent/2017/day_20.html.twig index 8e967d9c..38347e58 100644 --- a/templates/Avent/day_2017_20.html.twig +++ b/templates/Avent/2017/day_20.html.twig @@ -22,7 +22,7 @@ valider son implémentation dans une application Symfony 4.

- Symfony et Elasticsearch = Love

@@ -107,7 +107,7 @@ $ composer require maker $ composer require ruflin/elastica

- Démo de Symfony 4 + Démo de Symfony 4

Cette application expose une page de recherche fonctionnant avec une requête SQL @@ -408,7 +408,7 @@ class ElasticReindexCommand extends Command

$ ./bin/console elastic:reindex

Vous pouvez vous rendre dans Kibana et vérifier que tout est en ordre :

-

Kibana Dev Tools

+

Kibana Dev Tools

Nos documents Elasticsearch ressemblent à cela :

@@ -528,7 +528,7 @@ public function search(Request $request, Client $client): Response des repository Doctrine.

Et voilà notre recherche branchée sur Elasticsearch :

-

Démo recherche dans Symfony

+

Démo recherche dans Symfony

L'outillage et les améliorations nécessaires

Pour les besoins de l'article notre Indexer est volontairement simplifié ; mais dans le monde @@ -602,7 +602,7 @@ return $this->client->request('_aliases', Request::POST, $data); + Damien ALEXANDRE {% endblock %} {% block article_bio %} diff --git a/templates/Avent/day_2017_21.html.twig b/templates/Avent/2017/day_21.html.twig similarity index 97% rename from templates/Avent/day_2017_21.html.twig rename to templates/Avent/2017/day_21.html.twig index 30b841a2..27645fa1 100644 --- a/templates/Avent/day_2017_21.html.twig +++ b/templates/Avent/2017/day_21.html.twig @@ -331,7 +331,7 @@ $server = IoServer::factory(

Il ne nous reste plus qu’à consulter la page que nous venons de modifier pour voir le résultat suivant :

- Premiers tests + Premiers tests
Premiers tests
@@ -653,14 +653,14 @@ _textInput.onkeyup = function(e) {

- Demande de l'identité de l'utilisateur + Demande de l'identité de l'utilisateur
Demande de l'identité de l'utilisateur

Le navigateur nous demande bien notre identité au chargement de la page.

- Affichage du message au format JSON
Affichage du message au format JSON
@@ -672,7 +672,7 @@ _textInput.onkeyup = function(e) {

- Tests d'envoi de messages au au format JSON
Tests d'envoi de messages au au format JSON
@@ -687,7 +687,7 @@ _textInput.onkeyup = function(e) {

- Interface du chat pour le calendrier de l'avent
Interface du chat pour le calendrier de l'avent
@@ -700,7 +700,7 @@ _textInput.onkeyup = function(e) { {% endblock %} {% block article_avatar %} - Clément Delmas + Clément Delmas {% endblock %} {% block article_bio %} diff --git a/templates/Avent/day_2017_22.html.twig b/templates/Avent/2017/day_22.html.twig similarity index 99% rename from templates/Avent/day_2017_22.html.twig rename to templates/Avent/2017/day_22.html.twig index 6128afc1..ffefc7f5 100644 --- a/templates/Avent/day_2017_22.html.twig +++ b/templates/Avent/2017/day_22.html.twig @@ -34,7 +34,7 @@

Démarrage de la stack

Commencez par créer le fichier docker-compose qui va nous permettre de lancer la stack complète :

- +
touch docker-compose.yml

Le contenu de celui-ci doit ressembler à cela.

@@ -109,7 +109,7 @@ services: soft: -1 hard: -1 mem_limit: 1g - + graylog: image: graylog/graylog:2.3.2-1 environment: @@ -126,7 +126,7 @@ services: - 514:514/udp - 12201:12201 - 12201:12201/udp - +

Une fois fait, reste à démarrer l'ensemble de nos éléments :

docker-compose up -d
@@ -284,7 +284,7 @@ monolog: {% endblock %} {% block article_avatar %} - Matthieu Cramet + Matthieu Cramet {% endblock %} {% block article_bio %} diff --git a/templates/Avent/day_2017_23.html.twig b/templates/Avent/2017/day_23.html.twig similarity index 96% rename from templates/Avent/day_2017_23.html.twig rename to templates/Avent/2017/day_23.html.twig index b86d7ac2..e847a8d9 100644 --- a/templates/Avent/day_2017_23.html.twig +++ b/templates/Avent/2017/day_23.html.twig @@ -54,7 +54,7 @@

- Architecture hexagonale + Architecture hexagonale
(source : @@ -148,7 +148,7 @@

Pour les Repository (lecture des données)

- persister + persister
(source : schéma dessiné par @melicerte)
@@ -158,7 +158,7 @@

Pour les Persister (écriture des données)

- persister + persister
(source : schéma dessiné par @melicerte)
@@ -370,7 +370,7 @@ class Article implements Repository\Article {% endblock %} {% block article_avatar %} - Céline Morin + Céline Morin {% endblock %} {% block article_bio %} diff --git a/templates/Avent/day_2017_24.html.twig b/templates/Avent/2017/day_24.html.twig similarity index 99% rename from templates/Avent/day_2017_24.html.twig rename to templates/Avent/2017/day_24.html.twig index 9eee388d..a06be8ee 100644 --- a/templates/Avent/day_2017_24.html.twig +++ b/templates/Avent/2017/day_24.html.twig @@ -291,7 +291,7 @@ index 5238f98..b8c9794 100644 {% endblock %} {% block article_avatar %} - Fabien Potencier + Fabien Potencier {% endblock %} {% block article_bio %} diff --git a/templates/Avent/2019/day_01.html.twig b/templates/Avent/2019/day_01.html.twig new file mode 100644 index 00000000..efa89046 --- /dev/null +++ b/templates/Avent/2019/day_01.html.twig @@ -0,0 +1,203 @@ +{% extends 'Avent/day.html.twig' %} + +{% set year = 2019 %} + +{% block article_title "Jour 01 - test " %} + +{% block article_content_md %} + +--- +__Advertisement :)__ + +- __[pica](https://nodeca.github.io/pica/demo/)__ - high quality and fast image +resize in browser. +- __[babelfish](https://github.com/nodeca/babelfish/)__ - developer friendly +i18n with plurals support and easy syntax. + +You will like those projects! + +--- + +# h1 Heading 8-) +## h2 Heading +### h3 Heading +#### h4 Heading +##### h5 Heading +###### h6 Heading + + +## Horizontal Rules + +___ + +--- + +*** + + +## Typographic replacements + +Enable typographer option to see result. + +(c) (C) (r) (R) (tm) (TM) (p) (P) +- + +test.. test... test..... test?..... test!.... + +!!!!!! ???? ,, -- --- + +"Smartypants, double quotes" and 'single quotes' + + +## Emphasis + +**This is bold text** + +__This is bold text__ + +*This is italic text* + +_This is italic text_ + +~~Strikethrough~~ + + +## Blockquotes + + +> Blockquotes can also be nested... +>> ...by using additional greater-than signs right next to each other... +> > > ...or with spaces between arrows. + + +## Lists + +Unordered + ++ Create a list by starting a line with `+`, `-`, or `*` ++ Sub-lists are made by indenting 2 spaces: +- Marker character change forces new list start: +* Ac tristique libero volutpat at ++ Facilisis in pretium nisl aliquet +- Nulla volutpat aliquam velit ++ Very easy! + +Ordered + +1. Lorem ipsum dolor sit amet +2. Consectetur adipiscing elit +3. Integer molestie lorem at massa + + +1. You can use sequential numbers... +1. ...or keep all the numbers as `1.` + +Start numbering with offset: + +57. foo +1. bar + + +## Code + +Inline `code` + +Indented code + +// Some comments +line 1 of code +line 2 of code +line 3 of code + + +Block code "fences" + +``` +Sample text here... +``` + +Syntax highlighting + +``` js +var foo = function (bar) { +return bar++; +}; + +console.log(foo(5)); +``` + +## Tables + +| Option | Description | +| ------ | ----------- | +| data | path to data files to supply the data that will be passed into templates. | +| engine | engine to be used for processing templates. Handlebars is the default. | +| ext | extension to be used for dest files. | + +Right aligned columns + +| Option | Description | +| ------:| -----------:| +| data | path to data files to supply the data that will be passed into templates. | +| engine | engine to be used for processing templates. Handlebars is the default. | +| ext | extension to be used for dest files. | + + +## Links + +[link text](http://dev.nodeca.com) + +[link with title](http://nodeca.github.io/pica/demo/ "title text!") + +Autoconverted link https://github.com/nodeca/pica (enable linkify to see) + + +## Images + +![Minion](https://octodex.github.com/images/minion.png) +![Stormtroopocat](https://octodex.github.com/images/stormtroopocat.jpg "The Stormtroopocat") + +Like links, Images also have a footnote style syntax + +![Alt text][id] + +With a reference later in the document defining the URL location: + +[id]: https://octodex.github.com/images/dojocat.jpg "The Dojocat" + + +## Plugins + +The killer feature of `markdown-it` is very effective support of +[syntax plugins](https://www.npmjs.org/browse/keyword/markdown-it-plugin). + + +### [Emojies](https://github.com/markdown-it/markdown-it-emoji) + +> Classic markup: :wink: :crush: :cry: :tear: :laughing: :yum: +> +> Shortcuts (emoticons): :-) :-( 8-) ;) + +see [how to change output](https://github.com/markdown-it/markdown-it-emoji#change-output) with twemoji. + + +### [Subscript](https://github.com/markdown-it/markdown-it-sub) / [Superscript](https://github.com/markdown-it/markdown-it-sup) + +- 19^th^ +- H~2~O + + +{% endblock %} + +{% block article_avatar %} + Cyril Souillard +{% endblock %} + +{% block article_bio %} +

{% block article_author 'Cyril Souillard' %}

+

+ CTO chez MyLittleBox. +

+{% endblock %} diff --git a/templates/Avent/day.html.twig b/templates/Avent/day.html.twig index f27b7d7f..93ddac15 100644 --- a/templates/Avent/day.html.twig +++ b/templates/Avent/day.html.twig @@ -64,20 +64,13 @@
Commentaires - - {% block article_content %} -

bla bla

-

bla bla

-

bla bla

-

bla bla

-

bla bla

-

bla bla

-

bla bla

-

bla bla

-

bla bla

-

bla bla

-

bla bla

- {% endblock %} + {% if year < 2019 %} + {% block article_content %}{% endblock %} + {% else %} + {% apply markdown_to_html %} + {% block article_content_md %}{% endblock %} + {% endapply %} + {% endif %}

diff --git a/templates/Avent/year_2013.atom.twig b/templates/Avent/year_2013.atom.twig deleted file mode 100644 index b9e85000..00000000 --- a/templates/Avent/year_2013.atom.twig +++ /dev/null @@ -1,3 +0,0 @@ -{% extends 'Avent/year.atom.twig' %} - -{% set year = 2013 %} diff --git a/templates/Avent/year_2013.html.twig b/templates/Avent/year_2013.html.twig deleted file mode 100644 index d2ae8431..00000000 --- a/templates/Avent/year_2013.html.twig +++ /dev/null @@ -1,3 +0,0 @@ -{% extends 'Avent/year.html.twig' %} - -{% set year = 2013 %} diff --git a/templates/Avent/year_2017.atom.twig b/templates/Avent/year_2017.atom.twig deleted file mode 100644 index 6198f5e1..00000000 --- a/templates/Avent/year_2017.atom.twig +++ /dev/null @@ -1,3 +0,0 @@ -{% extends 'Avent/year.atom.twig' %} - -{% set year = 2017 %} diff --git a/templates/Avent/year_2017.html.twig b/templates/Avent/year_2017.html.twig deleted file mode 100644 index 9167b39f..00000000 --- a/templates/Avent/year_2017.html.twig +++ /dev/null @@ -1,3 +0,0 @@ -{% extends 'Avent/year.html.twig' %} - -{% set year = 2017 %} From c94ef2b1d7e9a9f60f0b4b0624b80d97e917b07e Mon Sep 17 00:00:00 2001 From: nayluge Date: Fri, 22 Nov 2019 11:39:25 +0100 Subject: [PATCH 2/2] feat(avent): add markdown lib to composer.json --- composer.json | 4 +- composer.lock | 213 +++++++++++++++++++++++++++++++++++++++++++------- symfony.lock | 3 + 3 files changed, 190 insertions(+), 30 deletions(-) diff --git a/composer.json b/composer.json index 175c3293..cbc3b261 100644 --- a/composer.json +++ b/composer.json @@ -9,6 +9,7 @@ "ext-iconv": "*", "ext-json": "*", "doctrine/doctrine-fixtures-bundle": "^3.2", + "erusev/parsedown": "^1.7", "doctrine/doctrine-migrations-bundle": "^2.1", "fpn/doctrine-extensions-taggable": "^0.9.0", "fpn/tag-bundle": "dev-patch-1", @@ -42,11 +43,8 @@ "symfony/webpack-encore-bundle": "^1.6", "symfony/yaml": "4.3.*", "twig/extensions": "^1.5", - "php-http/guzzle6-adapter": "^2.0.1", - "php-http/httplug-bundle": "^1.16.0", "twig/extra-bundle": "^2.12", "twig/markdown-extra": "^2.12" - "twig/extensions": "^1.5" }, "require-dev": { "symfony/debug-pack": "*", diff --git a/composer.lock b/composer.lock index 05226ccb..16efe8fe 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": "353ac761754190afbb83ef0c1aadfb8b", + "content-hash": "e35114d5e00ff79512f00af5fb132b47", "packages": [ { "name": "behat/transliterator", @@ -1490,6 +1490,52 @@ ], "time": "2019-08-13T17:33:27+00:00" }, + { + "name": "erusev/parsedown", + "version": "1.7.3", + "source": { + "type": "git", + "url": "https://github.com/erusev/parsedown.git", + "reference": "6d893938171a817f4e9bc9e86f2da1e370b7bcd7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/erusev/parsedown/zipball/6d893938171a817f4e9bc9e86f2da1e370b7bcd7", + "reference": "6d893938171a817f4e9bc9e86f2da1e370b7bcd7", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "php": ">=5.3.0" + }, + "require-dev": { + "phpunit/phpunit": "^4.8.35" + }, + "type": "library", + "autoload": { + "psr-0": { + "Parsedown": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Emanuil Rusev", + "email": "hello@erusev.com", + "homepage": "http://erusev.com" + } + ], + "description": "Parser for Markdown.", + "homepage": "http://parsedown.org", + "keywords": [ + "markdown", + "parser" + ], + "time": "2019-03-17T18:48:37+00:00" + }, { "name": "fig/link-util", "version": "1.0.0", @@ -2113,22 +2159,22 @@ }, { "name": "knplabs/knp-components", - "version": "v2.2.1", + "version": "v2.3.0", "source": { "type": "git", "url": "https://github.com/KnpLabs/knp-components.git", - "reference": "b0b7f22df0d5e2eb8be41451342f38c51d739124" + "reference": "d61c56ff4d427a14f0c308ee388fb75e94d01a7c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/KnpLabs/knp-components/zipball/b0b7f22df0d5e2eb8be41451342f38c51d739124", - "reference": "b0b7f22df0d5e2eb8be41451342f38c51d739124", + "url": "https://api.github.com/repos/KnpLabs/knp-components/zipball/d61c56ff4d427a14f0c308ee388fb75e94d01a7c", + "reference": "d61c56ff4d427a14f0c308ee388fb75e94d01a7c", "shasum": "" }, "require": { "php": "^7.2", - "symfony/event-dispatcher": "^3.4 || ^4.0", - "symfony/http-foundation": "^3.4 || ^4.0" + "symfony/event-dispatcher": "^3.4 || ^4.0 || ^5.0", + "symfony/http-foundation": "^3.4 || ^4.0 || ^5.0" }, "require-dev": { "doctrine/mongodb-odm": "^2.0", @@ -2137,8 +2183,8 @@ "jackalope/jackalope-doctrine-dbal": "^1.2", "phpunit/phpunit": "^8.0", "ruflin/elastica": "^1.0", - "symfony/http-kernel": "^3.4 || ^4.0", - "symfony/property-access": "^3.4 || ^4.0" + "symfony/http-kernel": "^3.4 || ^4.0 || ^5.0", + "symfony/property-access": "^3.4 || ^4.0 || ^5.0" }, "suggest": { "doctrine/common": "to allow usage pagination with Doctrine ArrayCollection", @@ -2153,7 +2199,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.2.0-dev" + "dev-master": "2.4.0-dev" } }, "autoload": { @@ -2184,7 +2230,7 @@ "pager", "paginator" ], - "time": "2019-11-11T16:37:31+00:00" + "time": "2019-11-25T10:00:08+00:00" }, { "name": "knplabs/knp-markdown-bundle", @@ -3982,23 +4028,22 @@ }, { "name": "sonata-project/block-bundle", - "version": "3.18.1", + "version": "3.18.2", "source": { "type": "git", "url": "https://github.com/sonata-project/SonataBlockBundle.git", - "reference": "7520297bf9663af9f3dc1ee0100390f9531eaf34" + "reference": "e169c14fff15da42b595d4eb0de078dc33072983" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sonata-project/SonataBlockBundle/zipball/7520297bf9663af9f3dc1ee0100390f9531eaf34", - "reference": "7520297bf9663af9f3dc1ee0100390f9531eaf34", + "url": "https://api.github.com/repos/sonata-project/SonataBlockBundle/zipball/e169c14fff15da42b595d4eb0de078dc33072983", + "reference": "e169c14fff15da42b595d4eb0de078dc33072983", "shasum": "" }, "require": { "doctrine/common": "^2.3", "php": "^7.1", "psr/cache": "^1.0", - "psr/cache-implementation": "*", "sonata-project/cache": "^1.0 || ^2.0", "sonata-project/core-bundle": "^3.15.1", "sonata-project/doctrine-extensions": "^1.1", @@ -4067,7 +4112,7 @@ "block", "sonata" ], - "time": "2019-09-19T20:35:31+00:00" + "time": "2019-11-24T13:05:23+00:00" }, { "name": "sonata-project/cache", @@ -8322,6 +8367,122 @@ ], "time": "2018-12-05T18:34:18+00:00" }, + { + "name": "twig/extra-bundle", + "version": "v2.12.2", + "source": { + "type": "git", + "url": "https://github.com/twigphp/twig-extra-bundle.git", + "reference": "331db0bf52680bf13f35c50b17330323fcca04d9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/twigphp/twig-extra-bundle/zipball/331db0bf52680bf13f35c50b17330323fcca04d9", + "reference": "331db0bf52680bf13f35c50b17330323fcca04d9", + "shasum": "" + }, + "require": { + "php": "^7.1.3", + "symfony/framework-bundle": "^4.3|^5.0", + "symfony/twig-bundle": "^4.3|^5.0", + "twig/twig": "^2.4|^3.0" + }, + "require-dev": { + "twig/cssinliner-extra": "^2.12|^3.0@dev", + "twig/html-extra": "^2.12@dev|^3.0@dev", + "twig/inky-extra": "^2.12@dev|^3.0@dev", + "twig/intl-extra": "^2.12@dev|^3.0@dev", + "twig/markdown-extra": "^2.12@dev|^3.0@dev" + }, + "type": "symfony-bundle", + "extra": { + "branch-alias": { + "dev-master": "2.12-dev" + } + }, + "autoload": { + "psr-4": { + "Twig\\Extra\\TwigExtraBundle\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com", + "homepage": "http://fabien.potencier.org", + "role": "Lead Developer" + } + ], + "description": "A Symfony bundle for extra Twig extensions", + "homepage": "https://twig.symfony.com", + "keywords": [ + "bundle", + "extra", + "twig" + ], + "time": "2019-10-17T07:27:12+00:00" + }, + { + "name": "twig/markdown-extra", + "version": "v2.12.2", + "source": { + "type": "git", + "url": "https://github.com/twigphp/markdown-extra.git", + "reference": "867439505c5c25245cf7cee6989d28d1cb12be43" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/twigphp/markdown-extra/zipball/867439505c5c25245cf7cee6989d28d1cb12be43", + "reference": "867439505c5c25245cf7cee6989d28d1cb12be43", + "shasum": "" + }, + "require": { + "php": "^7.1.3", + "twig/twig": "^2.4|^3.0" + }, + "require-dev": { + "erusev/parsedown": "^1.7", + "league/commonmark": "^1.0", + "league/html-to-markdown": "^4.8", + "michelf/php-markdown": "^1.8", + "symfony/phpunit-bridge": "^4.4@dev" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.12-dev" + } + }, + "autoload": { + "psr-4": { + "Twig\\Extra\\Markdown\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com", + "homepage": "http://fabien.potencier.org", + "role": "Lead Developer" + } + ], + "description": "A Twig extension for Markdown", + "homepage": "https://twig.symfony.com", + "keywords": [ + "html", + "markdown", + "twig" + ], + "time": "2019-10-17T07:27:07+00:00" + }, { "name": "twig/twig", "version": "v2.12.2", @@ -8391,31 +8552,29 @@ }, { "name": "webmozart/assert", - "version": "1.5.0", + "version": "1.6.0", "source": { "type": "git", "url": "https://github.com/webmozart/assert.git", - "reference": "88e6d84706d09a236046d686bbea96f07b3a34f4" + "reference": "573381c0a64f155a0d9a23f4b0c797194805b925" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/webmozart/assert/zipball/88e6d84706d09a236046d686bbea96f07b3a34f4", - "reference": "88e6d84706d09a236046d686bbea96f07b3a34f4", + "url": "https://api.github.com/repos/webmozart/assert/zipball/573381c0a64f155a0d9a23f4b0c797194805b925", + "reference": "573381c0a64f155a0d9a23f4b0c797194805b925", "shasum": "" }, "require": { "php": "^5.3.3 || ^7.0", "symfony/polyfill-ctype": "^1.8" }, + "conflict": { + "vimeo/psalm": "<3.6.0" + }, "require-dev": { "phpunit/phpunit": "^4.8.36 || ^7.5.13" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.3-dev" - } - }, "autoload": { "psr-4": { "Webmozart\\Assert\\": "src/" @@ -8437,7 +8596,7 @@ "check", "validate" ], - "time": "2019-08-24T08:43:50+00:00" + "time": "2019-11-24T13:36:37+00:00" }, { "name": "zendframework/zend-code", diff --git a/symfony.lock b/symfony.lock index 6e005b21..9b61a070 100644 --- a/symfony.lock +++ b/symfony.lock @@ -114,6 +114,9 @@ "egulias/email-validator": { "version": "2.1.11" }, + "erusev/parsedown": { + "version": "1.7.3" + }, "fig/link-util": { "version": "1.0.0" },