diff --git a/app/assets/images/centered_marianne.svg b/app/assets/images/centered_marianne.svg index 5e812262d..e3ee37875 100644 --- a/app/assets/images/centered_marianne.svg +++ b/app/assets/images/centered_marianne.svg @@ -1 +1,264 @@ - \ No newline at end of file + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/app/assets/images/centered_marianne.svg.old b/app/assets/images/centered_marianne.svg.old new file mode 100644 index 000000000..5e812262d --- /dev/null +++ b/app/assets/images/centered_marianne.svg.old @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/assets/images/dgnum.svg b/app/assets/images/dgnum.svg new file mode 100644 index 000000000..d55a032c2 --- /dev/null +++ b/app/assets/images/dgnum.svg @@ -0,0 +1,204 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/app/assets/images/header/logo-dn-wide.png b/app/assets/images/header/logo-dn-wide.png new file mode 100644 index 000000000..37e16e51c Binary files /dev/null and b/app/assets/images/header/logo-dn-wide.png differ diff --git a/app/assets/images/header/logo-ds-narrow.svg b/app/assets/images/header/logo-ds-narrow.svg index 437c271ee..e20eb1fd0 100644 --- a/app/assets/images/header/logo-ds-narrow.svg +++ b/app/assets/images/header/logo-ds-narrow.svg @@ -1 +1,334 @@ - \ No newline at end of file + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/app/assets/images/header/logo-ds-wide.png b/app/assets/images/header/logo-ds-wide.png index a0ac0f353..37e16e51c 100644 Binary files a/app/assets/images/header/logo-ds-wide.png and b/app/assets/images/header/logo-ds-wide.png differ diff --git a/app/assets/images/header/logo-ds-wide.png.old b/app/assets/images/header/logo-ds-wide.png.old new file mode 100644 index 000000000..a0ac0f353 Binary files /dev/null and b/app/assets/images/header/logo-ds-wide.png.old differ diff --git a/app/assets/images/header/logo-ds-wide.svg b/app/assets/images/header/logo-ds-wide.svg index 3fb67e18a..fe68f0999 100644 --- a/app/assets/images/header/logo-ds-wide.svg +++ b/app/assets/images/header/logo-ds-wide.svg @@ -1 +1,365 @@ - \ No newline at end of file + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/app/assets/images/header/logo-ds-wide.svg.old b/app/assets/images/header/logo-ds-wide.svg.old new file mode 100644 index 000000000..3fb67e18a --- /dev/null +++ b/app/assets/images/header/logo-ds-wide.svg.old @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/assets/images/header/logo-ds-wide_source.svg b/app/assets/images/header/logo-ds-wide_source.svg new file mode 100644 index 000000000..7cdf0acff --- /dev/null +++ b/app/assets/images/header/logo-ds-wide_source.svg @@ -0,0 +1,177 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + DGNUM + Délégation GénéraleNumérique + + démarches normaliennes + + diff --git a/app/assets/images/header/logo-ds.svg b/app/assets/images/header/logo-ds.svg index eda8aa5eb..42ae8f7f7 100644 --- a/app/assets/images/header/logo-ds.svg +++ b/app/assets/images/header/logo-ds.svg @@ -1 +1,359 @@ - \ No newline at end of file + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/app/assets/images/mailer/instructeur_mailer/logo-ds-wide.jpg b/app/assets/images/mailer/instructeur_mailer/logo-ds-wide.jpg new file mode 100644 index 000000000..cc3ba3e41 Binary files /dev/null and b/app/assets/images/mailer/instructeur_mailer/logo-ds-wide.jpg differ diff --git a/app/assets/images/mailer/instructeur_mailer/logo-ds-wide.png b/app/assets/images/mailer/instructeur_mailer/logo-ds-wide.png new file mode 100644 index 000000000..f9453b783 Binary files /dev/null and b/app/assets/images/mailer/instructeur_mailer/logo-ds-wide.png differ diff --git a/app/assets/images/mailer/instructeur_mailer/logo-ds-wide.svg b/app/assets/images/mailer/instructeur_mailer/logo-ds-wide.svg new file mode 100644 index 000000000..4a2ee0189 --- /dev/null +++ b/app/assets/images/mailer/instructeur_mailer/logo-ds-wide.svg @@ -0,0 +1,348 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + DGNUM + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/app/assets/images/mailer/instructeur_mailer/logo.png b/app/assets/images/mailer/instructeur_mailer/logo.png new file mode 100644 index 000000000..0774a7d6a Binary files /dev/null and b/app/assets/images/mailer/instructeur_mailer/logo.png differ diff --git a/app/assets/images/mailer/instructeur_mailer/logo.png.old b/app/assets/images/mailer/instructeur_mailer/logo.png.old new file mode 100644 index 000000000..34a48e8bc Binary files /dev/null and b/app/assets/images/mailer/instructeur_mailer/logo.png.old differ diff --git a/app/assets/images/marianne.png b/app/assets/images/marianne.png index a84a7bc79..468c2c294 100644 Binary files a/app/assets/images/marianne.png and b/app/assets/images/marianne.png differ diff --git a/app/assets/images/marianne.svg b/app/assets/images/marianne.svg index 9690583ea..3cb2174a5 100644 --- a/app/assets/images/marianne.svg +++ b/app/assets/images/marianne.svg @@ -1 +1,201 @@ - \ No newline at end of file + + diff --git a/app/assets/images/marianne.svg.old b/app/assets/images/marianne.svg.old new file mode 100644 index 000000000..9690583ea --- /dev/null +++ b/app/assets/images/marianne.svg.old @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/assets/images/republique-francaise-logo.svg b/app/assets/images/republique-francaise-logo.svg index 0f1cd3d4c..377882ec5 100644 --- a/app/assets/images/republique-francaise-logo.svg +++ b/app/assets/images/republique-francaise-logo.svg @@ -1 +1,203 @@ - \ No newline at end of file + + diff --git a/app/assets/images/republique-francaise-logo.svg.old b/app/assets/images/republique-francaise-logo.svg.old new file mode 100644 index 000000000..0f1cd3d4c --- /dev/null +++ b/app/assets/images/republique-francaise-logo.svg.old @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/components/dossiers/autosave_footer_component/autosave_footer_component.html.haml b/app/components/dossiers/autosave_footer_component/autosave_footer_component.html.haml index 28039d90c..3a244233a 100644 --- a/app/components/dossiers/autosave_footer_component/autosave_footer_component.html.haml +++ b/app/components/dossiers/autosave_footer_component/autosave_footer_component.html.haml @@ -7,8 +7,6 @@ = t('.en_construction.explanation') - else = t('.brouillon.explanation') - - if !annotation? - = link_to t('.more_information'), t("links.common.faq.autosave_url"), class: 'autosave-more-infos fr-link fr-link--sm', **external_link_attributes %p.autosave-status.succeeded.fr-mb-0 = dsfr_icon('fr-icon-checkbox-circle-fill fr-text-default--success autosave-icon') @@ -19,8 +17,6 @@ = t('.en_construction.confirmation') - else = t('.brouillon.confirmation') - - if !annotation? - = link_to t('.more_information'), t("links.common.faq.autosave_url"), class: 'autosave-more-infos fr-link fr-link--sm', **external_link_attributes %p.autosave-status.failed.fr-mb-0 %span.autosave-icon ⚠️ diff --git a/app/components/dossiers/export_dropdown_component/export_dropdown_component.en.yml b/app/components/dossiers/export_dropdown_component/export_dropdown_component.en.yml index d48aa0879..b0f1c0313 100644 --- a/app/components/dossiers/export_dropdown_component/export_dropdown_component.en.yml +++ b/app/components/dossiers/export_dropdown_component/export_dropdown_component.en.yml @@ -12,4 +12,4 @@ en: other: Download %{count} files macros_doc: title: "Macros documentation" - url: "https://doc.demarches-simplifiees.fr/pour-aller-plus-loin/exports-et-macros" + url: "https://docs.dgnum.eu/s/demarches-normaliennes/doc/exports-et-macros-sOxubsFKJd" diff --git a/app/components/dossiers/export_dropdown_component/export_dropdown_component.fr.yml b/app/components/dossiers/export_dropdown_component/export_dropdown_component.fr.yml index d5646ce34..8121125e3 100644 --- a/app/components/dossiers/export_dropdown_component/export_dropdown_component.fr.yml +++ b/app/components/dossiers/export_dropdown_component/export_dropdown_component.fr.yml @@ -12,4 +12,4 @@ fr: other: Télécharger %{count} dossiers macros_doc: title: "documentation sur les macros" - url: "https://doc.demarches-simplifiees.fr/pour-aller-plus-loin/exports-et-macros" + url: "https://docs.dgnum.eu/s/demarches-normaliennes/doc/exports-et-macros-sOxubsFKJd" diff --git a/app/views/layouts/_header.haml b/app/views/layouts/_header.haml index 7e3be7648..9e85f73d9 100644 --- a/app/views/layouts/_header.haml +++ b/app/views/layouts/_header.haml @@ -15,10 +15,8 @@ .fr-header__brand.fr-enlarge-link .fr-header__brand-top .fr-header__logo - %p.fr-logo{ lang: "fr" } - République - = succeed "Française" do - %br/ + %img{ :src => image_url("dgnum.svg"), alt: '', width: 105, height: 55.6, loading: 'lazy' } + .fr-header__navbar - if is_search_enabled %button.fr-btn--search.fr-btn{ "aria-controls" => "search-modal", "data-fr-opened" => "false", :title => t('views.users.dossiers.search.search_file') }= t('views.users.dossiers.search.search_file') @@ -39,7 +37,6 @@ - elsif (request.path != new_user_session_path && request.path !=agent_connect_path) - if request.path == new_user_registration_path %li.fr-hidden-sm.fr-unhidden-lg.fr-link--sm.fr-mb-2w.fr-mr-1v= t('views.shared.account.already_user_question') - %li= link_to 'Agent', agent_connect_path, class: "fr-btn fr-btn--tertiary fr-icon-government-fill fr-btn--icon-left" %li= link_to t('views.shared.account.signin'), new_user_session_path, class: "fr-btn fr-btn--tertiary fr-icon-account-circle-fill fr-btn--icon-left" %li diff --git a/app/views/layouts/application.html.haml b/app/views/layouts/application.html.haml index ca2847296..3d8921eba 100644 --- a/app/views/layouts/application.html.haml +++ b/app/views/layouts/application.html.haml @@ -9,6 +9,8 @@ %meta{ name: "format-detection", content: "telephone=no,date=no,address=no,email=no,url=no" } = csrf_meta_tags + %script{ defer: true, data: { domain: "demarches.dgnum.eu" }, src: "https://analytics.dgnum.eu/js/script.js" } + %title = content_for?(:title) ? "#{sanitize(yield(:title))} · #{Current.application_name}" : Current.application_name diff --git a/app/views/root/_footer.html.haml b/app/views/root/_footer.html.haml index 93957ae82..dba00b7d3 100644 --- a/app/views/root/_footer.html.haml +++ b/app/views/root/_footer.html.haml @@ -47,19 +47,13 @@ = link_to t("links.footer.security.label"), t("links.footer.security.url"), title: t("links.footer.security.title"), class: "fr-footer__top-link", rel: "noopener noreferrer", hreflang: "fr" .fr-container .fr-footer__body - .fr-footer__brand.fr-enlarge-link{ lang: "fr" } - %p.fr-logo - gouvernement - = link_to t("links.footer.dinum.url"), title: t("links.footer.dinum.title"), hreflang:'fr', class: "fr-footer__brand-link" do - = image_tag("footer/logo-dinum.svg", class: "fr-footer__logo logo-beta-gouv-fr", alt: t("links.footer.dinum.alt")) - .fr-footer__content - %p.fr-footer__content-desc - = t('links.footer.description_1') - = link_to(t('links.footer.link_1_label'), t('links.footer.link_1_url'), title: new_tab_suffix(t('links.footer.link_1_label')), hreflang:'fr', **external_link_attributes) + "." - %p.fr-footer__content-desc - = link_to t('links.footer.link_2_label'), t("links.footer.code.url"), title: new_tab_suffix(t('links.footer.link_2_label')), hreflang:'fr', **external_link_attributes - = t('links.footer.description_2') - = render partial: "shared/footer_content_list" + %p.fr-footer__content-desc + = t('links.footer.description_1') + = link_to(t('links.footer.link_1_label'), t('links.footer.link_1_url'), title: new_tab_suffix(t('links.footer.link_1_label')), hreflang:'fr', **external_link_attributes) + "." + %p.fr-footer__content-desc + = link_to t('links.footer.link_2_label'), t("links.footer.code.url"), title: new_tab_suffix(t('links.footer.link_2_label')), hreflang:'fr', **external_link_attributes + = t('links.footer.description_2') + = render partial: "shared/footer_content_list" .fr-footer__bottom = render partial: 'general_footer_row' diff --git a/app/views/root/administration.html.haml b/app/views/root/administration.html.haml index 2b7aac579..cf1687a5a 100644 --- a/app/views/root/administration.html.haml +++ b/app/views/root/administration.html.haml @@ -16,13 +16,6 @@ .fr-py-6w.fr-background-alt--blue-france .container .role-panel-wrapper.role-administrations-panel - .role-panel-70 - %h2 Est-ce fait pour mon administration ? - %p.fr-h5 Découvrez notre outil et posez nous vos questions lors de notre démonstration en ligne ou lisez notre documentation - - = link_to "Consulter notre vidéo de démonstration", DEMO_VIDEO_URL, class: "fr-btn fr-btn--lg fr-mr-1w fr-mb-2w", **external_link_attributes - = link_to "Documentation", DOC_URL, class: "fr-btn fr-btn--secondary fr-btn--lg", **external_link_attributes - .role-panel-30.role-more-info-image.fr-mt-2w %img.role-image{ :src => image_url("landing/roles/usagers.svg"), alt: "" } @@ -99,17 +92,3 @@ = render Dsfr::CardVerticalComponent.new(title: "Vous êtes prêt pour dématérialiser ?", desc: "Réduisez vos temps d’instruction de 50 %") do |c| - c.with_footer_button do = link_to("Créer votre compte administrateur", DEMANDE_INSCRIPTION_ADMIN_PAGE_URL, class: "fr-btn", **external_link_attributes) - - .fr-col-md-6.fr-col-12 - = render Dsfr::CardVerticalComponent.new(title: "Vous voulez en savoir plus ?", desc: "Participez à notre prochain Webinaire") do |c| - - c.with_footer_button do - = link_to("Inscription à notre prochain webinaire", INSCRIPTION_WEBINAIRE_URL, class: "fr-btn", **external_link_attributes) - - .fr-py-6w.fr-background-alt--blue-france - .container - .cta-panel-wrapper - %div - %h2 Une question, un problème ? - %p.fr-h5 Consultez notre FAQ - %div - = link_to "Voir la FAQ", t("links.common.faq.url"), class: "fr-btn fr-btn--lg", **external_link_attributes diff --git a/app/views/root/suivi.html.haml b/app/views/root/suivi.html.haml index 7ddcb9a7f..af08c0d0c 100644 --- a/app/views/root/suivi.html.haml +++ b/app/views/root/suivi.html.haml @@ -8,8 +8,6 @@ %p Ce site dépose un petit fichier texte (un « cookie ») sur votre ordinateur lorsque vous le consultez. Cela nous permet de mesurer le nombre de visites et de comprendre quelles sont les pages les plus consultées. - %iframe{ :src => MATOMO_IFRAME_URL } - %h2.fr-my-4w Ce site n’affiche pas de bannière de consentement aux cookies, pourquoi ? %p C’est vrai, vous n’avez pas eu à cliquer sur un bloc qui recouvre la moitié de la page pour dire que vous êtes d’accord avec le dépôt de cookies. @@ -18,7 +16,7 @@ Rien d’exceptionnel, pas de passe-droit. Nous respectons simplement la loi, qui dit que certains outils de suivi d’audience, correctement configurés pour respecter la vie privée, sont exemptés d’autorisation préalable. %br %br - Nous utilisons pour cela Matomo, un outil libre, paramétré pour être en conformité avec la recommandation « Cookies » de la CNIL. Cela signifie que votre adresse IP, par exemple, est anonymisée avant d’être enregistrée. Il est donc impossible d’associer vos visites sur ce site à votre personne. + Nous utilisons pour cela Plausible, un outil libre, paramétré pour être en conformité avec la recommandation « Cookies » de la CNIL. Cela signifie que votre adresse IP, par exemple, est anonymisée avant d’être enregistrée. Il est donc impossible d’associer vos visites sur ce site à votre personne. %h2.fr-my-4w Comment désactiver le suivi statistique sur mon navigateur ? %p diff --git a/app/views/shared/_footer_content_list.html.haml b/app/views/shared/_footer_content_list.html.haml index 95f1a2c50..6d92b9e57 100644 --- a/app/views/shared/_footer_content_list.html.haml +++ b/app/views/shared/_footer_content_list.html.haml @@ -1,9 +1,5 @@ %ul.fr-footer__content-list %li.fr-footer__content-item - = link_to t('users.procedure_footer.official_links.gouvernement.title'), t('users.procedure_footer.official_links.gouvernement.url'), title: new_tab_suffix(t('users.procedure_footer.official_links.gouvernement.title')), class: 'fr-footer__content-link', hreflang:'fr', **external_link_attributes + = link_to t('users.procedure_footer.official_links.dgnum.title'), t('users.procedure_footer.official_links.dgnum.url'), title: new_tab_suffix(t('users.procedure_footer.official_links.dgnum.title')), class: 'fr-footer__content-link', hreflang:'fr', **external_link_attributes %li.fr-footer__content-item - = link_to t('users.procedure_footer.official_links.service_public.title'), t('users.procedure_footer.official_links.service_public.url'), title: new_tab_suffix(t('users.procedure_footer.official_links.service_public.title')), class: 'fr-footer__content-link', hreflang:'fr', **external_link_attributes - %li.fr-footer__content-item - = link_to t('users.procedure_footer.official_links.legifrance.title'), t('users.procedure_footer.official_links.legifrance.url'), title: new_tab_suffix(t('users.procedure_footer.official_links.legifrance.title')), class: 'fr-footer__content-link', hreflang: 'fr', **external_link_attributes - %li.fr-footer__content-item - = link_to t('users.procedure_footer.official_links.data_gouv.title'), t('users.procedure_footer.official_links.data_gouv.url'), title: new_tab_suffix(t('users.procedure_footer.official_links.data_gouv.title')), class: 'fr-footer__content-link', hreflang:'fr', **external_link_attributes + = link_to t('users.procedure_footer.official_links.ens.title'), t('users.procedure_footer.official_links.ens.url'), title: new_tab_suffix(t('users.procedure_footer.official_links.ens.title')), class: 'fr-footer__content-link', hreflang:'fr', **external_link_attributes diff --git a/app/views/static_pages/accessibility_statement.html.haml b/app/views/static_pages/accessibility_statement.html.haml index 3f2666061..fbbc49360 100644 --- a/app/views/static_pages/accessibility_statement.html.haml +++ b/app/views/static_pages/accessibility_statement.html.haml @@ -121,23 +121,3 @@ = mail_to Current.contact_email %li = t('views.accessibility_statement.contact.infos.adress_html') - - %div - %h2 - = t('views.accessibility_statement.remedies.title') - %p.fr-mb-2w= t('views.accessibility_statement.remedies.line_one') - %h3 - = t('views.accessibility_statement.remedies.arcom_title') - %p.fr-mb-2w= t('views.accessibility_statement.remedies.arcom_content_html') - %h3 - = t('views.accessibility_statement.remedies.ddd_title') - %p.fr-mb-2w= t('views.accessibility_statement.remedies.ddd_intro') - %ul - %li - = link_to t("views.accessibility_statement.remedies.remedies_one.label"), t("views.accessibility_statement.remedies.remedies_one.url"), title: t("views.accessibility_statement.remedies.remedies_one.title"), target: "_blank", rel: "noopener noreferrer" - %br - = t('views.accessibility_statement.remedies.remedies_one.info') - %li - = link_to t("views.accessibility_statement.remedies.remedies_two.label"), t("views.accessibility_statement.remedies.remedies_two.url"), title: t("views.accessibility_statement.remedies.remedies_two.title"), target: "_blank", rel: "noopener noreferrer" - %li - = t('views.accessibility_statement.remedies.remedies_three_html') diff --git a/app/views/users/_procedure_footer.html.haml b/app/views/users/_procedure_footer.html.haml index c1aa47387..de55409d2 100644 --- a/app/views/users/_procedure_footer.html.haml +++ b/app/views/users/_procedure_footer.html.haml @@ -1,7 +1,6 @@ %footer.fr-footer.footer-procedure#footer{ role: "contentinfo" } .fr-footer__top.fr-mb-0 .fr-container - %h2.sr-only= t("links.footer.top_labels.hidden_title_procedure") .fr-grid-row.fr-grid-row--start.fr-grid-row--gutters .fr-col-12.fr-col-sm-4.fr-col-md-4 = render partial: 'shared/dossiers/update_contact_information', locals: { dossier: dossier, procedure: procedure } @@ -36,15 +35,6 @@ %h3.fr-footer__top-cat= I18n.t('users.procedure_footer.dematerialisation.header') .fr-download = link_to I18n.t('users.procedure_footer.dematerialisation.title_1'), commencer_dossier_vide_for_revision_path(procedure.active_revision), download: 'true', class: 'fr-download__link' - %h3.fr-footer__top-cat= I18n.t('users.procedure_footer.support.header') - %ul.fr-footer__top-list - %li - = link_to I18n.t('users.procedure_footer.support_links.france_service.title'), t("users.procedure_footer.support_links.france_service.url"), - title: new_tab_suffix(t("users.procedure_footer.support_links.france_service.title")), class: "fr-footer__link", **external_link_attributes - - %li - = link_to I18n.t('users.procedure_footer.support_links.carte_inclusion.title'), t("users.procedure_footer.support_links.carte_inclusion.url"), - title: new_tab_suffix(t("users.procedure_footer.support_links.carte_inclusion.title")), class: "fr-footer__link", **external_link_attributes .fr-footer__bottom.fr-mt-0 .fr-container diff --git a/config/initializers/content_security_policy.rb b/config/initializers/content_security_policy.rb index 4c841ec47..21a0a176c 100644 --- a/config/initializers/content_security_policy.rb +++ b/config/initializers/content_security_policy.rb @@ -9,24 +9,21 @@ Rails.application.config.content_security_policy do |policy| images_whitelist = ["*.openstreetmap.org", "*.cloud.ovh.net", "*"] images_whitelist << URI(DS_PROXY_URL).host if DS_PROXY_URL.present? - images_whitelist << URI(MATOMO_IFRAME_URL).host if MATOMO_IFRAME_URL.present? policy.img_src(:self, :data, :blob, *images_whitelist) # Javascript: allow us, SendInBlue and Matomo. # We need unsafe_inline because miniprofiler and us have some inline buttons :( - scripts_whitelist = ["*.crisp.chat", "crisp.chat", "cdn.jsdelivr.net", "maxcdn.bootstrapcdn.com", "code.jquery.com", "unpkg.com"] - scripts_whitelist << URI(MATOMO_IFRAME_URL).host if MATOMO_IFRAME_URL.present? + scripts_whitelist = ["*.crisp.chat", "crisp.chat", "cdn.jsdelivr.net", "maxcdn.bootstrapcdn.com", "code.jquery.com", "unpkg.com", "*.dgnum.eu"] policy.script_src(:self, :unsafe_eval, :unsafe_inline, :blob, *scripts_whitelist) # CSS: We have a lot of inline style, and some