1 # Dev log configuration
 
   2 #TODO: set mail, calendar and facebook app id as env variables ???
 
   5         address: 'blog@rapsys.eu'
 
   9         link: 'https://rapsys.eu'
 
  10         long: 'All rights reserved'
 
  11         short: 'Copyright 2019-2023'
 
  13     donate: 'https://paypal.me/milongaraphael'
 
  15         #TODO: set this as env variables ???
 
  16         apps: [ 3728770287223690 ]
 
  20         ico: '@RapsysBlog/ico/icon.ico'
 
  23             256: '@RapsysBlog/png/icon.256.png'
 
  26             # Chrome for Android home screen icon
 
  27             196: '@RapsysBlog/png/icon.196.png'
 
  28             # Google Developer Web App Manifest Recommendation
 
  29             192: '@RapsysBlog/png/icon.192.png'
 
  30             # Chrome Web Store icon
 
  31             128: '@RapsysBlog/png/icon.128.png'
 
  34             32: '@RapsysBlog/png/icon.32.png'
 
  37             # XXX: old obsolete format: [57, 72, 76, 114, 120, 144]
 
  38             # XXX: see https://webhint.io/docs/user-guide/hints/hint-apple-touch-icons/
 
  39             # XXX: see https://developer.apple.com/library/archive/documentation/AppleApplications/Reference/SafariWebContent/ConfiguringWebApplications/ConfiguringWebApplications.html
 
  41             180: '@RapsysBlog/png/icon.180.png'
 
  42             # iPad Retina touch icon
 
  43             167: '@RapsysBlog/png/icon.167.png'
 
  45             152: '@RapsysBlog/png/icon.152.png'
 
  47             120: '@RapsysBlog/png/icon.120.png'
 
  50             # XXX: see https://docs.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/platform-apis/dn255024(v=vs.85)
 
  51             310: '@RapsysBlog/png/icon.310.png'
 
  52             150: '@RapsysBlog/png/icon.150.png'
 
  53             70: '@RapsysBlog/png/icon.70.png'
 
  54         svg: '@RapsysBlog/svg/icon.svg'
 
  59     locales: [ 'fr_fr', 'en_gb' ]
 
  61         alt: 'Rapsys'' dev log logo'
 
  62         png: '@RapsysBlog/png/logo.png'
 
  63         svg: '@RapsysBlog/svg/logo.svg'
 
  65     title: 'Rapsys'' dev log'
 
  67 #RapsysUser configuration
 
  71         group: 'Rapsys\BlogBundle\Entity\Group'
 
  72         civility: 'Rapsys\BlogBundle\Entity\Civility'
 
  73         user: 'Rapsys\BlogBundle\Entity\User'
 
  79         languages: '%rapsysblog.languages%'
 
  85             name: 'rapsysuser_register'
 
  86     #Translate replacement
 
  87     translate: [ 'title.page', 'title.section', 'title.site', 'password', 'copy.by', 'copy.long', 'copy.short', 'copy.title', 'logo.alt' ]
 
  89     contact: '%rapsysblog.contact%'
 
  92         copy: '%rapsysblog.copy%'
 
  93         icon: '%rapsysblog.icon%'
 
  94         logo: '%rapsysblog.logo%'
 
  95         root: '%rapsysblog.root%'
 
  98             site: '%rapsysblog.title%'
 
 107             edit: 'Rapsys\BlogBundle\Form\EditType'
 
 108             name: '@RapsysBlog/form/edit.html.twig'
 
 111                     page: 'Modify account'
 
 112                 password: 'Modify password'
 
 118             name: '@RapsysBlog/user/index.html.twig'
 
 127             name: '@RapsysBlog/form/login.html.twig'
 
 135             recover: 'recover_url'
 
 137             name: '@RapsysBlog/form/recover.html.twig'
 
 142             subject: 'Welcome back %%recipient_name%% to %%head.site%%'
 
 143             html: '@RapsysBlog/mail/recover.html.twig'
 
 144             text: '@RapsysBlog/mail/recover.text.twig'
 
 146     #Register replacement
 
 153             confirm: 'confirm_url'
 
 155             form: 'Rapsys\BlogBundle\Form\RegisterType'
 
 156             name: '@RapsysBlog/form/register.html.twig'
 
 161             subject: 'Welcome %%recipient_name%% to %%head.site%%'
 
 162             html: '@RapsysBlog/mail/register.html.twig'
 
 163             text: '@RapsysBlog/mail/register.text.twig'
 
 166 # Doctrine configuration
 
 171         default_table_options:
 
 173             collate: 'utf8mb4_unicode_ci'
 
 179         # Replace repository factory
 
 180         repository_factory: 'Rapsys\BlogBundle\Factory\RepositoryFactory'
 
 182         #Force resolution of UserBundle entities to BlogBundle one
 
 183         #XXX: without these lines, relations are lookup in parent namespace ignoring BlogBundle extension
 
 184         resolve_target_entities:
 
 185             Rapsys\UserBundle\Entity\Group: 'Rapsys\BlogBundle\Entity\Group'
 
 186             Rapsys\UserBundle\Entity\Civility: 'Rapsys\BlogBundle\Entity\Civility'
 
 187             Rapsys\UserBundle\Entity\User: 'Rapsys\BlogBundle\Entity\User'
 
 189 # Framework configuration
 
 191     default_locale: '%rapsysblog.locale%'
 
 192     disallow_search_engine_index: false
 
 193     #error_controller: 'Rapsys\BlogBundle\Controller\ErrorController::show'
 
 196             X-Originating-IP: '%env(REMOTE_ADDR)%'
 
 197     secret: '%env(APP_SECRET)%'
 
 198     csrf_protection: true
 
 202         storage_factory_id: 'session.storage.factory.native'
 
 203         cookie_secure: 'auto'
 
 204         cookie_samesite: 'lax'
 
 206         fallbacks: '%rapsysblog.locales%'
 
 208 # Security configuration
 
 210     # Set password hashers
 
 212         #XXX: comment this key in config/security.yaml to prevent users_in_memory induced failures
 
 213         #TODO: see https://symfony.com/doc/current/security/passwords.html (sodium ? + upgrade)
 
 214         Symfony\Component\Security\Core\User\PasswordAuthenticatedUserInterface:
 
 215         #Rapsys\BlogBundle\Entity\User:
 
 225                 class: 'Rapsys\BlogBundle\Entity\User'
 
 230         # Disables authentication for assets and the profiler, adapt it according to your needs
 
 232             pattern: '^/(_(profiler|wdt)|css|images|js)/'
 
 236             # Allow anonymous access
 
 240             # Activate database provider
 
 241             #XXX: comment this key in config/security.yaml to prevent users_in_memory induced failures
 
 244             # Activate user checker
 
 245             user_checker: 'security.user_checker'
 
 247             #XXX: https://symfony.com/doc/current/security.html#a-configuring-how-your-users-will-authenticate
 
 251             #XXX: https://symfony.com/doc/current/security/form_login_setup.html
 
 252             #TODO: https://symfony.com/doc/current/security/guard_authentication.html
 
 254                 # Redirect to referer if different from login route
 
 257                 login_path: 'rapsysuser_login'
 
 259                 check_path: 'rapsysuser_login'
 
 261                 username_parameter: 'login[mail]'
 
 263                 password_parameter: 'login[password]'
 
 264                 # Enable login csrf protection
 
 267                 csrf_parameter: 'login[_token]'
 
 269                 csrf_token_id: 'login'
 
 274                 path: 'rapsysuser_logout'
 
 275                 # Logout default target
 
 278             # Set custom access denied handler
 
 279             #access_denied_handler: Rapsys\BlogBundle\Handler\AccessDeniedHandler
 
 282             #XXX: see https://symfony.com/doc/current/security/remember_me.html
 
 285                 secret: '%kernel.secret%'
 
 287                 always_remember_me: true
 
 291         ROLE_USER: [ 'ROLE_GUEST' ]
 
 292         ROLE_ADMIN: [ 'ROLE_GUEST', 'ROLE_USER' ]
 
 294 #Service configuration
 
 296     #Register abstract controller
 
 297     Rapsys\BlogBundle\Controller\AbstractController:
 
 298         arguments: [ '@security.authorization_checker', '@service_container', '@rapsysuser.access_decision_manager', '@doctrine', '@rapsysblog.facebook_util', '@form.factory', '@rapsyspack.image_util', '@mailer.mailer', '@doctrine.orm.default_entity_manager', '@rapsyspack.path_package', '@router', '@rapsyspack.slugger_util', '@security.helper', '@request_stack', '@translator', '@twig' ]
 
 299         tags: [ 'controller.service_arguments' ]
 
 300     #Register article controller
 
 301     Rapsys\BlogBundle\Controller\ArticleController:
 
 302         arguments: [ '@security.authorization_checker', '@service_container', '@rapsysuser.access_decision_manager', '@doctrine', '@rapsysblog.facebook_util', '@form.factory', '@rapsyspack.image_util', '@mailer.mailer', '@doctrine.orm.default_entity_manager', '@rapsyspack.path_package', '@router', '@rapsyspack.slugger_util', '@security.helper', '@request_stack', '@translator', '@twig' ]
 
 303         tags: [ 'controller.service_arguments' ]
 
 304     #Register default controller
 
 305     Rapsys\BlogBundle\Controller\DefaultController:
 
 306         arguments: [ '@security.authorization_checker', '@service_container', '@rapsysuser.access_decision_manager', '@doctrine', '@rapsysblog.facebook_util', '@form.factory', '@rapsyspack.image_util', '@mailer.mailer', '@doctrine.orm.default_entity_manager', '@rapsyspack.path_package', '@router', '@rapsyspack.slugger_util', '@security.helper', '@request_stack', '@translator', '@twig' ]
 
 307         tags: [ 'controller.service_arguments' ]
 
 308     #Register keyword controller
 
 309     Rapsys\BlogBundle\Controller\KeywordController:
 
 310         arguments: [ '@security.authorization_checker', '@service_container', '@rapsysuser.access_decision_manager', '@doctrine', '@rapsysblog.facebook_util', '@form.factory', '@rapsyspack.image_util', '@mailer.mailer', '@doctrine.orm.default_entity_manager', '@rapsyspack.path_package', '@router', '@rapsyspack.slugger_util', '@security.helper', '@request_stack', '@translator', '@twig' ]
 
 311         tags: [ 'controller.service_arguments' ]
 
 312     #Register user controller
 
 313     Rapsys\BlogBundle\Controller\UserController:
 
 314         arguments: [ '@security.authorization_checker', '@service_container', '@rapsysuser.access_decision_manager', '@doctrine', '@rapsysblog.facebook_util', '@form.factory', '@rapsyspack.image_util', '@mailer.mailer', '@doctrine.orm.default_entity_manager', '@rapsyspack.path_package', '@router', '@rapsyspack.slugger_util', '@security.helper', '@request_stack', '@translator', '@twig' ]
 
 315         tags: [ 'controller.service_arguments' ]
 
 316     Rapsys\BlogBundle\Factory\RepositoryFactory:
 
 317         arguments: [ '@request_stack', '@router', '@rapsyspack.slugger_util', '@translator', '%rapsysblog.languages%', '%rapsysblog.locale%' ]
 
 318     #Register blog fixture
 
 319     Rapsys\BlogBundle\Fixture\BlogFixture:
 
 320         arguments: [ '@rapsyspack.slugger_util' ]
 
 321         tags: [ 'doctrine.fixture.orm' ]
 
 322     #Register form factory as public
 
 324         class: 'Symfony\Component\Form\FormFactory'
 
 325         arguments: [ '@form.registry' ]
 
 327     #Register facebook event subscriber
 
 328     Rapsys\PackBundle\Subscriber\FacebookSubscriber:
 
 329         arguments: [ '@router', '%rapsysblog.locales%' ]
 
 330         tags: [ 'kernel.event_subscriber' ]
 
 331     #Register facebook util service
 
 332     rapsysblog.facebook_util:
 
 333         class: 'Rapsys\PackBundle\Util\FacebookUtil'
 
 334         #TODO: create the facebook.png file and add the fonts
 
 335         #TODO: add a default font
 
 336         arguments: [ '@service_container', '@router', '@rapsyspack.slugger_util' ]
 
 337         #arguments: [ '@service_container', '@router',  '%kernel.project_dir%/var/cache', '%rapsyspack.path%', 'facebook', '%rapsysblog.path%/png/facebook.png', { irishgrover: '%rapsysblog.path%/ttf/irishgrover.v10.ttf', labelleaurore: '%rapsysblog.path%/ttf/labelleaurore.v10.ttf', dejavusans: '%rapsysblog.path%/ttf/dejavusans.2.37.ttf', droidsans: '%rapsysblog.path%/ttf/droidsans.regular.ttf' } ]
 
 339     #Register contact form type
 
 340     Rapsys\BlogBundle\Form\ContactType:
 
 341         arguments: [ '@rapsyspack.image_util', '@rapsyspack.slugger_util', '@translator', true ]
 
 342         tags: [ 'form.type' ]
 
 350     #XXX: enable forced regeneration of css and js at each page load
 
 352     #Fix form layout for css
 
 353     #XXX: @RapsysBlog is a shortcut to vendor/rapsys/blogbundle/templates directory here
 
 354     form_theme: [ '@RapsysBlog/form/form_div_layout.html.twig' ]
 
 357         #Required by email.image(site_logo) directive
 
 358         #XXX: Allow twig to resolve @RapsysBlog/png/logo.png in vendor/rapsys/blogbundle/public/png/logo.png
 
 359         '%kernel.project_dir%/vendor/rapsys/blogbundle/public': 'RapsysBlog'