+ 'site' => [
+ 'donate' => 'https://paypal.me/milongaraphael',
+ 'icon' => [
+ 'ico' => '@RapsysAir/ico/icon.ico',
+ 'svg' => '@RapsysAir/svg/icon.svg'
+ ],
+ 'logo' => [
+ 'png' => '@RapsysAir/png/logo.png',
+ 'svg' => '@RapsysAir/svg/logo.svg'
+ ],
+ //The png icon array
+ //XXX: see https://www.emergeinteractive.com/insights/detail/the-essentials-of-favicons/
+ //XXX: see https://caniuse.com/#feat=link-icon-svg
+ 'png' => [
+ //Default
+ 256 => '@RapsysAir/png/icon.256.png',
+
+ //For google
+ //Chrome for Android home screen icon
+ 196 => '@RapsysAir/png/icon.196.png',
+ //Google Developer Web App Manifest Recommendation
+ 192 => '@RapsysAir/png/icon.192.png',
+ //Chrome Web Store icon
+ 128 => '@RapsysAir/png/icon.128.png',
+
+ //Fallback
+ 32 => '@RapsysAir/png/icon.32.png',
+
+ //For apple
+ //XXX: old obsolete format: [57, 72, 76, 114, 120, 144]
+ //XXX: see https://webhint.io/docs/user-guide/hints/hint-apple-touch-icons/
+ //XXX: see https://developer.apple.com/library/archive/documentation/AppleApplications/Reference/SafariWebContent/ConfiguringWebApplications/ConfiguringWebApplications.html
+ //iPhone Retina
+ 180 => '@RapsysAir/png/icon.180.png',
+ //iPad Retina touch icon
+ 167 => '@RapsysAir/png/icon.167.png',
+ //iPad touch icon
+ 152 => '@RapsysAir/png/icon.152.png',
+ //iOS7
+ 120 => '@RapsysAir/png/icon.120.png',
+
+ //For windows
+ //XXX: see https://docs.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/platform-apis/dn255024(v=vs.85)
+ 310 => '@RapsysAir/png/icon.310.png',
+ 150 => '@RapsysAir/png/icon.150.png',
+ 70 => '@RapsysAir/png/icon.70.png'
+ ],
+ 'title' => 'Libre Air',
+ 'url' => 'rapsys_air'
+ ],
+ 'calendar' => [
+ 'calendar' => '%env(string:RAPSYSAIR_CALENDAR)',
+ 'prefix' => '%env(string:RAPSYSAIR_PREFIX)',
+ 'project' => '%env(string:RAPSYSAIR_PROJECT)',
+ 'client' => '%env(string:GOOGLE_CLIENT_ID)',
+ 'secret' => '%env(string:GOOGLE_CLIENT_SECRET)'
+ ],
+ 'copy' => [
+ 'by' => 'Rapsys',
+ 'link' => 'https://rapsys.eu',
+ 'long' => 'All rights reserved',
+ 'short' => 'Copyright 2019-2021',
+ 'title' => 'Rapsys'
+ ],
+ 'contact' => [
+ 'title' => 'Libre Air',
+ 'mail' => 'contact@airlibre.eu'
+ ],
+ 'facebook' => [
+ 'apps' => [3728770287223690],
+ 'height' => 630,
+ 'width' => 1200
+ ],
+ 'locale' => '%kernel.default_locale%',
+ 'locales' => '%kernel.translator.fallbacks%',
+ //XXX: revert to underscore because of that shit:
+ //XXX: see https://symfony.com/doc/current/components/config/definition.html#normalization
+ //XXX: see https://github.com/symfony/symfony/issues/7405
+ 'languages' => '%rapsys_user.languages%',
+ 'path' => is_link(($prefix = is_dir('public') ? './public/' : './').($link = 'bundles/'.str_replace('_', '', $alias))) && is_dir(realpath($prefix.$link)) || is_dir($prefix.$link) ? $link : dirname(__DIR__).'/Resources/public'
+ #'public' => [
+ # //XXX: get path with bundles/<alias> or full path if not installed
+ # //XXX: current working directory may be project dir or public subdir depending on context
+ # 'path' => is_link(($prefix = is_dir('public') ? './public/' : './').($link = 'bundles/'.str_replace('_', '', $alias))) && is_dir(realpath($prefix.$link)) || is_dir($prefix.$link) ? $link : dirname(__DIR__).'/Resources/public',
+ # 'url' => '/bundles/'.str_replace('_', '', $alias)
+ #]