diff --git a/composer.json b/composer.json index 3948aaaa1..764fb0f83 100644 --- a/composer.json +++ b/composer.json @@ -63,6 +63,11 @@ } } }, + "patches": { + "openeuropa/oe_bootstrap_theme" : { + "1.x latest": "https://github.com/openeuropa/oe_bootstrap_theme/compare/1.0.0-alpha7..1.x.diff" + } + }, "drupal-scaffold": { "locations": { "web-root": "./build" diff --git a/config/install/oe_whitelabel.settings.yml b/config/install/oe_whitelabel.settings.yml index 3e67e9cfb..1e7dc2224 100644 --- a/config/install/oe_whitelabel.settings.yml +++ b/config/install/oe_whitelabel.settings.yml @@ -1,2 +1,2 @@ -component_library: ec +component_library: neutral header_style: standard diff --git a/config/optional/block.block.oe_whitelabel_branding.yml b/config/optional/block.block.oe_whitelabel_branding.yml index 683229012..4964f51fa 100644 --- a/config/optional/block.block.oe_whitelabel_branding.yml +++ b/config/optional/block.block.oe_whitelabel_branding.yml @@ -7,7 +7,7 @@ dependencies: - oe_whitelabel id: oe_whitelabel_branding theme: oe_whitelabel -region: header_top +region: navbar_branding weight: -2 provider: null plugin: system_branding_block diff --git a/config/optional/block.block.oe_whitelabel_ec_logo.yml b/config/optional/block.block.oe_whitelabel_ec_logo.yml deleted file mode 100644 index 178dbbff9..000000000 --- a/config/optional/block.block.oe_whitelabel_ec_logo.yml +++ /dev/null @@ -1,19 +0,0 @@ -langcode: en -status: true -dependencies: - module: - - oe_whitelabel_helper - theme: - - oe_whitelabel -id: oe_whitelabel_ec_logo -theme: oe_whitelabel -region: navbar_branding -weight: 0 -provider: null -plugin: whitelabel_ec_logo_block -settings: - id: whitelabel_ec_logo_block - label: 'Corporate EC Logo Block' - provider: oe_whitelabel_helper - label_display: visible -visibility: { } diff --git a/config/optional/block.block.oe_whitelabel_main_navigation.yml b/config/optional/block.block.oe_whitelabel_main_navigation.yml new file mode 100755 index 000000000..9494eb72e --- /dev/null +++ b/config/optional/block.block.oe_whitelabel_main_navigation.yml @@ -0,0 +1,24 @@ +langcode: en +status: true +dependencies: + config: + - system.menu.main + module: + - system + theme: + - oe_whitelabel +id: oe_whitelabel_main_navigation +theme: oe_whitelabel +region: header_left +weight: 0 +provider: null +plugin: 'system_menu_block:main' +settings: + id: 'system_menu_block:main' + label: 'Main navigation' + label_display: '0' + provider: system + level: 1 + depth: 0 + expand_all_items: false +visibility: { } diff --git a/config/schema/oe_whitelabel.schema.yml b/config/schema/oe_whitelabel.schema.yml index 83bb65e3f..ccc5dd66a 100644 --- a/config/schema/oe_whitelabel.schema.yml +++ b/config/schema/oe_whitelabel.schema.yml @@ -4,7 +4,7 @@ oe_whitelabel.settings: mapping: component_library: type: string - label: 'BCL component library, either EC or EU' + label: 'BCL component library, either EC, EU or neutral' header_style: type: string label: 'Header style, either Blue header or Light header' diff --git a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--bg.svg b/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--bg.svg deleted file mode 100644 index a7971f45d..000000000 --- a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--bg.svg +++ /dev/null @@ -1,233 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--cs.svg b/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--cs.svg deleted file mode 100644 index 779794258..000000000 --- a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--cs.svg +++ /dev/null @@ -1,207 +0,0 @@ - - - - - - logo copy - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--da.svg b/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--da.svg deleted file mode 100644 index b23c67433..000000000 --- a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--da.svg +++ /dev/null @@ -1,235 +0,0 @@ - - - - - - logo copy - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--de.svg b/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--de.svg deleted file mode 100644 index 859087159..000000000 --- a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--de.svg +++ /dev/null @@ -1,243 +0,0 @@ - - - - - - - -logo copy -Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--el.svg b/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--el.svg deleted file mode 100644 index c30b29c87..000000000 --- a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--el.svg +++ /dev/null @@ -1,204 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--en.svg b/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--en.svg deleted file mode 100644 index f02468583..000000000 --- a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--en.svg +++ /dev/null @@ -1,233 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--es.svg b/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--es.svg deleted file mode 100644 index f544fa60f..000000000 --- a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--es.svg +++ /dev/null @@ -1,210 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--et.svg b/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--et.svg deleted file mode 100644 index 0030e99fd..000000000 --- a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--et.svg +++ /dev/null @@ -1,207 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--fi.svg b/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--fi.svg deleted file mode 100644 index 2181a7447..000000000 --- a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--fi.svg +++ /dev/null @@ -1,219 +0,0 @@ - - - - - - logo copy - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--fr.svg b/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--fr.svg deleted file mode 100644 index 0f8417284..000000000 --- a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--fr.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--ga.svg b/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--ga.svg deleted file mode 100644 index f8c570fb3..000000000 --- a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--ga.svg +++ /dev/null @@ -1,221 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--hr.svg b/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--hr.svg deleted file mode 100644 index abc243467..000000000 --- a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--hr.svg +++ /dev/null @@ -1,216 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--hu.svg b/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--hu.svg deleted file mode 100644 index acc19d9f4..000000000 --- a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--hu.svg +++ /dev/null @@ -1,218 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--it.svg b/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--it.svg deleted file mode 100644 index 0e2e69ef9..000000000 --- a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--it.svg +++ /dev/null @@ -1,241 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--lt.svg b/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--lt.svg deleted file mode 100644 index 25c8eaf86..000000000 --- a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--lt.svg +++ /dev/null @@ -1,203 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--lv.svg b/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--lv.svg deleted file mode 100644 index fb41dadf2..000000000 --- a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--lv.svg +++ /dev/null @@ -1,212 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--mt.svg b/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--mt.svg deleted file mode 100644 index e821cbd48..000000000 --- a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--mt.svg +++ /dev/null @@ -1,239 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--mute.svg b/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--mute.svg deleted file mode 100644 index 436b3a58a..000000000 --- a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--mute.svg +++ /dev/null @@ -1,52 +0,0 @@ - - - - Logos/EC_logo - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--nl.svg b/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--nl.svg deleted file mode 100644 index 57ae57c92..000000000 --- a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--nl.svg +++ /dev/null @@ -1,231 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--pl.svg b/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--pl.svg deleted file mode 100644 index d8f876581..000000000 --- a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--pl.svg +++ /dev/null @@ -1,225 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--pt-pt.svg b/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--pt-pt.svg deleted file mode 100644 index 0d828d29a..000000000 --- a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--pt-pt.svg +++ /dev/null @@ -1,228 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--ro.svg b/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--ro.svg deleted file mode 100644 index 4e4f24e33..000000000 --- a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--ro.svg +++ /dev/null @@ -1,225 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--sk.svg b/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--sk.svg deleted file mode 100644 index 8b5b0334e..000000000 --- a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--sk.svg +++ /dev/null @@ -1,217 +0,0 @@ - - - - - - logo copy - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--sl.svg b/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--sl.svg deleted file mode 100644 index 6307f92df..000000000 --- a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--sl.svg +++ /dev/null @@ -1,216 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--sv.svg b/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--sv.svg deleted file mode 100644 index 799c2e72f..000000000 --- a/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--sv.svg +++ /dev/null @@ -1,254 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--bg.svg b/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--bg.svg deleted file mode 100644 index 619f8d0fe..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--bg.svg +++ /dev/null @@ -1,34 +0,0 @@ - - - - EU/EU-emblem/standard-version/positive/BG - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--cs.svg b/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--cs.svg deleted file mode 100644 index 3ede3c3a8..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--cs.svg +++ /dev/null @@ -1,32 +0,0 @@ - - - - EU/EU-emblem/standard-version/positive/CS - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--da.svg b/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--da.svg deleted file mode 100644 index 0c3dbd1f9..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--da.svg +++ /dev/null @@ -1,38 +0,0 @@ - - - - EU/EU-emblem/standard-version/positive/DA - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--de.svg b/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--de.svg deleted file mode 100644 index 46fddcfd9..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--de.svg +++ /dev/null @@ -1,36 +0,0 @@ - - - - EU/EU-emblem/standard-version/positive/DE - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--el.svg b/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--el.svg deleted file mode 100644 index 4ed9635dd..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--el.svg +++ /dev/null @@ -1,34 +0,0 @@ - - - - EU/EU-emblem/standard-version/positive/EL - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--en.svg b/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--en.svg deleted file mode 100644 index 3b9c1d1af..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--en.svg +++ /dev/null @@ -1,33 +0,0 @@ - - - - EU/EU-emblem/standard-version/positive/EN - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--es.svg b/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--es.svg deleted file mode 100644 index 60d206eef..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--es.svg +++ /dev/null @@ -1,32 +0,0 @@ - - - - EU/EU-emblem/standard-version/positive/ES - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--et.svg b/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--et.svg deleted file mode 100644 index 712814956..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--et.svg +++ /dev/null @@ -1,31 +0,0 @@ - - - - EU/EU-emblem/standard-version/positive/ET - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--fi.svg b/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--fi.svg deleted file mode 100644 index 249df364f..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--fi.svg +++ /dev/null @@ -1,34 +0,0 @@ - - - - EU/EU-emblem/standard-version/positive/FI - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--fr.svg b/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--fr.svg deleted file mode 100644 index 75909bca6..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--fr.svg +++ /dev/null @@ -1,35 +0,0 @@ - - - - EU/EU-emblem/standard-version/positive/FR - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--ga.svg b/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--ga.svg deleted file mode 100644 index de8cd8d06..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--ga.svg +++ /dev/null @@ -1,36 +0,0 @@ - - - - EU/EU-emblem/standard-version/positive/GA - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--hr.svg b/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--hr.svg deleted file mode 100644 index 69a80dd81..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--hr.svg +++ /dev/null @@ -1,33 +0,0 @@ - - - - EU/EU-emblem/standard-version/positive/HR - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--hu.svg b/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--hu.svg deleted file mode 100644 index dec2a7871..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--hu.svg +++ /dev/null @@ -1,31 +0,0 @@ - - - - EU/EU-emblem/standard-version/positive/HU - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--it.svg b/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--it.svg deleted file mode 100644 index 0a91e2294..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--it.svg +++ /dev/null @@ -1,33 +0,0 @@ - - - - EU/EU-emblem/standard-version/positive/IT - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--lt.svg b/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--lt.svg deleted file mode 100644 index 3f1aa8b67..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--lt.svg +++ /dev/null @@ -1,34 +0,0 @@ - - - - EU/EU-emblem/standard-version/positive/LT - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--lv.svg b/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--lv.svg deleted file mode 100644 index c64bb91b3..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--lv.svg +++ /dev/null @@ -1,36 +0,0 @@ - - - - EU/EU-emblem/standard-version/positive/LV - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--mt.svg b/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--mt.svg deleted file mode 100644 index e462b95ff..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--mt.svg +++ /dev/null @@ -1,34 +0,0 @@ - - - - EU/EU-emblem/standard-version/positive/MT - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--nl.svg b/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--nl.svg deleted file mode 100644 index e5ecbc42a..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--nl.svg +++ /dev/null @@ -1,32 +0,0 @@ - - - - EU/EU-emblem/standard-version/positive/NL - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--pl.svg b/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--pl.svg deleted file mode 100644 index 86276bea4..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--pl.svg +++ /dev/null @@ -1,34 +0,0 @@ - - - - EU/EU-emblem/standard-version/positive/PL - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--pt-pt.svg b/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--pt-pt.svg deleted file mode 100644 index 311bb2ddf..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--pt-pt.svg +++ /dev/null @@ -1,33 +0,0 @@ - - - - EU/EU-emblem/standard-version/positive/PT - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--ro.svg b/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--ro.svg deleted file mode 100644 index 5a12294eb..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--ro.svg +++ /dev/null @@ -1,36 +0,0 @@ - - - - EU/EU-emblem/standard-version/positive/RO - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--sk.svg b/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--sk.svg deleted file mode 100644 index 54ee33444..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--sk.svg +++ /dev/null @@ -1,32 +0,0 @@ - - - - EU/EU-emblem/standard-version/positive/SK - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--sl.svg b/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--sl.svg deleted file mode 100644 index a85f0e833..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--sl.svg +++ /dev/null @@ -1,33 +0,0 @@ - - - - EU/EU-emblem/standard-version/positive/SL - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--sv.svg b/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--sv.svg deleted file mode 100644 index 19fcb6c18..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--sv.svg +++ /dev/null @@ -1,37 +0,0 @@ - - - - EU/EU-emblem/standard-version/positive/SV - Created with Sketch. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--bg.svg b/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--bg.svg deleted file mode 100644 index 334bfd567..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--bg.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--cs.svg b/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--cs.svg deleted file mode 100644 index 1cc7aba77..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--cs.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - EU/EU-emblem/condensed-version/positive/CS - Created with Sketch. - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--da.svg b/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--da.svg deleted file mode 100644 index 77394b79b..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--da.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - EU/EU-emblem/condensed-version/positive/DA - Created with Sketch. - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--de.svg b/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--de.svg deleted file mode 100644 index 3e363bbfd..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--de.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - EU/EU-emblem/condensed-version/positive/DE - Created with Sketch. - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--el.svg b/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--el.svg deleted file mode 100644 index 273a7b475..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--el.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - EU/EU-emblem/condensed-version/positive/EL - Created with Sketch. - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--en.svg b/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--en.svg deleted file mode 100644 index 9dee26b06..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--en.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - EU/EU-emblem/condensed-version/positive/EN - Created with Sketch. - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--es.svg b/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--es.svg deleted file mode 100644 index f8b98430c..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--es.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - EU/EU-emblem/condensed-version/positive/ES - Created with Sketch. - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--et.svg b/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--et.svg deleted file mode 100644 index 4c997650d..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--et.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - EU/EU-emblem/condensed-version/positive/ET - Created with Sketch. - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--fi.svg b/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--fi.svg deleted file mode 100644 index 45c751086..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--fi.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - EU/EU-emblem/condensed-version/positive/FI - Created with Sketch. - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--fr.svg b/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--fr.svg deleted file mode 100644 index 8ee2c4103..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--fr.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - EU/EU-emblem/condensed-version/positive/FR - Created with Sketch. - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--ga.svg b/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--ga.svg deleted file mode 100644 index 747e0992f..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--ga.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - EU/EU-emblem/condensed-version/positive/GA - Created with Sketch. - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--hr.svg b/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--hr.svg deleted file mode 100644 index 299ab8d73..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--hr.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - EU/EU-emblem/condensed-version/positive/HR - Created with Sketch. - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--hu.svg b/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--hu.svg deleted file mode 100644 index 5c9938321..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--hu.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - EU/EU-emblem/condensed-version/positive/HU - Created with Sketch. - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--it.svg b/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--it.svg deleted file mode 100644 index 5c3a2b786..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--it.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - EU/EU-emblem/condensed-version/positive/IT - Created with Sketch. - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--lt.svg b/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--lt.svg deleted file mode 100644 index 31c558e28..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--lt.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - EU/EU-emblem/condensed-version/positive/LT - Created with Sketch. - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--lv.svg b/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--lv.svg deleted file mode 100644 index d8238e8ef..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--lv.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - EU/EU-emblem/condensed-version/positive/LV - Created with Sketch. - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--mt.svg b/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--mt.svg deleted file mode 100644 index ee99a9005..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--mt.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - EU/EU-emblem/condensed-version/positive/MT - Created with Sketch. - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--nl.svg b/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--nl.svg deleted file mode 100644 index b109c8019..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--nl.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - EU/EU-emblem/condensed-version/positive/NL - Created with Sketch. - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--pl.svg b/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--pl.svg deleted file mode 100644 index 4489ee4f8..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--pl.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - EU/EU-emblem/condensed-version/positive/PL - Created with Sketch. - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--pt.svg b/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--pt.svg deleted file mode 100644 index acc3c672a..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--pt.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - EU/EU-emblem/condensed-version/positive/PT - Created with Sketch. - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--ro.svg b/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--ro.svg deleted file mode 100644 index 6f39e70a8..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--ro.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - EU/EU-emblem/condensed-version/positive/RO - Created with Sketch. - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--sk.svg b/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--sk.svg deleted file mode 100644 index d8ebcf89d..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--sk.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - EU/EU-emblem/condensed-version/positive/SK - Created with Sketch. - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--sl.svg b/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--sl.svg deleted file mode 100644 index 946ad7053..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--sl.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - EU/EU-emblem/condensed-version/positive/SL - Created with Sketch. - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--sv.svg b/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--sv.svg deleted file mode 100644 index 47ed38a2a..000000000 --- a/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--sv.svg +++ /dev/null @@ -1,20 +0,0 @@ - - - - EU/EU-emblem/condensed-version/positive/SV - Created with Sketch. - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/modules/oe_whitelabel_helper/src/EuropeanUnionLanguages.php b/modules/oe_whitelabel_helper/src/EuropeanUnionLanguages.php new file mode 100644 index 000000000..9ac60d585 --- /dev/null +++ b/modules/oe_whitelabel_helper/src/EuropeanUnionLanguages.php @@ -0,0 +1,120 @@ + ['Bulgarian', 'български', 'bg'], + 'cs' => ['Czech', 'čeština', 'cs'], + 'da' => ['Danish', 'dansk', 'da'], + 'de' => ['German', 'Deutsch', 'de'], + 'et' => ['Estonian', 'eesti', 'et'], + 'el' => ['Greek', 'ελληνικά', 'el'], + 'en' => ['English', 'English', 'en'], + 'es' => ['Spanish', 'español', 'es'], + 'fr' => ['French', 'français', 'fr'], + 'ga' => ['Irish', 'Gaeilge', 'ga'], + 'hr' => ['Croatian', 'hrvatski', 'hr'], + 'it' => ['Italian', 'italiano', 'it'], + 'lt' => ['Lithuanian', 'lietuvių', 'lt'], + 'lv' => ['Latvian', 'latviešu', 'lv'], + 'hu' => ['Hungarian', 'magyar', 'hu'], + 'mt' => ['Maltese', 'Malti', 'mt'], + 'nl' => ['Dutch', 'Nederlands', 'nl'], + 'pl' => ['Polish', 'polski', 'pl'], + 'pt-pt' => ['Portuguese', 'português', 'pt'], + 'ro' => ['Romanian', 'română', 'ro'], + 'sk' => ['Slovak', 'slovenčina', 'sk'], + 'sl' => ['Slovenian', 'slovenščina', 'sl'], + 'fi' => ['Finnish', 'suomi', 'fi'], + 'sv' => ['Swedish', 'svenska', 'sv'], + ]; + + /** + * Returns a list of language data. + * + * This is the data that is expected to be returned by the overridden language + * manager as supplied by the OpenEuropa Multilingual module. + * + * @return array + * An array with language codes as keys, and English and native language + * names as values. + */ + public static function getLanguageList(): array { + return self::$languages; + } + + /** + * Assert whether the given language is a European Union one. + * + * @param string $language_code + * The language code as defined by the W3C language tags document. + * + * @return bool + * Whereas the given language is a European Union one. + */ + public static function hasLanguage(string $language_code): bool { + return isset(self::$languages[$language_code]); + } + + /** + * Get the language name in English given its W3C code. + * + * @param string $language_code + * The language code as defined by the W3C language tags document. + * + * @return string + * The language name in English if any, an empty string otherwise. + */ + public static function getEnglishLanguageName(string $language_code): string { + return self::$languages[$language_code][0] ?? ''; + } + + /** + * Get the native language name given its W3C code. + * + * @param string $language_code + * The language code as defined by the W3C language tags document. + * + * @return string + * The native language name if any, an empty string otherwise. + */ + public static function getNativeLanguageName(string $language_code): string { + return self::$languages[$language_code][1] ?? ''; + } + + /** + * Get the internal language code given its W3C code. + * + * Internal language codes may differ from the standard ones. + * + * @param string $language_code + * The language code as defined by the W3C language tags document. + * + * @return string + * The internal language code if any, an empty string otherwise. + */ + public static function getInternalLanguageCode(string $language_code): string { + return self::$languages[$language_code][2] ?? ''; + } + +} diff --git a/modules/oe_whitelabel_helper/src/Plugin/Block/CorporateEcLogoBlock.php b/modules/oe_whitelabel_helper/src/Plugin/Block/CorporateEcLogoBlock.php deleted file mode 100644 index 0f1223e52..000000000 --- a/modules/oe_whitelabel_helper/src/Plugin/Block/CorporateEcLogoBlock.php +++ /dev/null @@ -1,112 +0,0 @@ -configFactory = $config_factory; - $this->languageManager = $language_manager; - } - - /** - * {@inheritdoc} - */ - public static function create(ContainerInterface $container, array $configuration, $plugin_id, $plugin_definition) { - return new static( - $configuration, - $plugin_id, - $plugin_definition, - $container->get('config.factory'), - $container->get('language_manager') - ); - } - - /** - * {@inheritdoc} - */ - public function build(): array { - $language = $this->languageManager->getCurrentLanguage()->getId(); - $cache = new CacheableMetadata(); - $cache->addCacheContexts(['languages:language_interface']); - - $logo_path = drupal_get_path('module', 'oe_whitelabel_helper') . '/images/logos/ec'; - $title = $this->configFactory->get('system.site')->get('name'); - - $image = [ - '#theme' => 'image', - '#uri' => $logo_path . '/logo-ec--' . $language . '.svg', - '#alt' => $title, - '#title' => $title, - '#attributes' => [ - 'class' => ['d-none', 'd-lg-block'], - ], - ]; - - $build = [ - '#type' => 'link', - '#url' => Url::fromUri('https://ec.europa.eu/info/index_' . $language, [ - 'attributes' => [ - 'class' => [ - 'navbar-brand', - ], - 'target' => '_blank', - ], - ]), - '#title' => $image, - ]; - - $cache->applyTo($build); - - return $build; - } - -} diff --git a/modules/oe_whitelabel_helper/src/Plugin/Block/CorporateEuLogoBlock.php b/modules/oe_whitelabel_helper/src/Plugin/Block/CorporateEuLogoBlock.php deleted file mode 100644 index 9caba366b..000000000 --- a/modules/oe_whitelabel_helper/src/Plugin/Block/CorporateEuLogoBlock.php +++ /dev/null @@ -1,123 +0,0 @@ -configFactory = $config_factory; - $this->languageManager = $language_manager; - } - - /** - * {@inheritdoc} - */ - public static function create(ContainerInterface $container, array $configuration, $plugin_id, $plugin_definition) { - return new static( - $configuration, - $plugin_id, - $plugin_definition, - $container->get('config.factory'), - $container->get('language_manager') - ); - } - - /** - * {@inheritdoc} - */ - public function build(): array { - $language = $this->languageManager->getCurrentLanguage()->getId(); - $cache = new CacheableMetadata(); - $cache->addCacheContexts(['languages:language_interface']); - - $logo_path = drupal_get_path('module', 'oe_whitelabel_helper') . '/images/logos/eu'; - $title = $this->configFactory->get('system.site')->get('name'); - - $image = [ - '#theme' => 'image', - '#uri' => $logo_path . '/logo-eu--' . $language . '.svg', - '#alt' => $title, - '#title' => $title, - '#attributes' => [ - 'class' => ['d-none', 'd-lg-block'], - ], - ]; - - $mobile_url = file_create_url($logo_path . '/mobile/logo-eu--' . $language . '.svg'); - - $inline_template = [ - '#type' => 'inline_template', - '#template' => '{{ image }}', - '#context' => [ - 'image' => $image, - 'mobile' => file_url_transform_relative($mobile_url), - ], - ]; - - $build = [ - '#type' => 'link', - '#url' => Url::fromUri('https://europa.eu/european-union/index_' . $language, [ - 'attributes' => [ - 'class' => [ - 'navbar-brand', - ], - 'target' => '_blank', - ], - ]), - '#title' => $inline_template, - ]; - - $cache->applyTo($build); - - return $build; - } - -} diff --git a/modules/oe_whitelabel_helper/src/TwigExtension/TwigExtension.php b/modules/oe_whitelabel_helper/src/TwigExtension/TwigExtension.php index d900fe6a2..16dd9244e 100644 --- a/modules/oe_whitelabel_helper/src/TwigExtension/TwigExtension.php +++ b/modules/oe_whitelabel_helper/src/TwigExtension/TwigExtension.php @@ -6,6 +6,7 @@ use Drupal\Core\Cache\CacheableDependencyInterface; use Drupal\Core\StringTranslation\PluralTranslatableMarkup; +use Drupal\oe_whitelabel_helper\EuropeanUnionLanguages; use Twig\Extension\AbstractExtension; use Twig\TwigFilter; use Twig\TwigFunction; @@ -35,6 +36,7 @@ public function __construct(CacheableDependencyInterface $plugin_manager_block) public function getFilters(): array { return [ new TwigFilter('bcl_timeago', [$this, 'bclTimeAgo']), + new TwigFilter('to_internal_language_id', [$this, 'toInternalLanguageId']), ]; } @@ -176,4 +178,21 @@ public function bclBlock(string $id, array $configuration = []): array { return $block_plugin->build(); } + /** + * Get an internal language ID given its code. + * + * @param string $language_code + * The language code as defined by the W3C language tags document. + * + * @return string + * The internal language ID, or the given language code if none found. + */ + public function toInternalLanguageId(string $language_code): string { + if (EuropeanUnionLanguages::hasLanguage($language_code)) { + return EuropeanUnionLanguages::getInternalLanguageCode($language_code); + } + + return $language_code; + } + } diff --git a/modules/oe_whitelabel_helper/tests/src/Kernel/CorporateLogoBlockTest.php b/modules/oe_whitelabel_helper/tests/src/Kernel/CorporateLogoBlockTest.php deleted file mode 100644 index ba32bb7d0..000000000 --- a/modules/oe_whitelabel_helper/tests/src/Kernel/CorporateLogoBlockTest.php +++ /dev/null @@ -1,157 +0,0 @@ -installConfig(['language']); - $this->installEntitySchema('configurable_language'); - - \Drupal::service('theme_installer')->install(['oe_whitelabel']); - - \Drupal::configFactory() - ->getEditable('system.theme') - ->set('default', 'oe_whitelabel') - ->save(); - $this->container->set('theme.registry', NULL); - } - - /** - * Tests the rendering of blocks. - * - * @param string $lang - * Language code. - * - * @dataProvider providerTestLogoBlockRendering - */ - public function testLogoBlockRendering(string $lang): void { - if ($lang !== 'en') { - $this->setLanguageByCode($lang); - } - // Assert EC logo. - $entity_type_manager = $this->container - ->get('entity_type.manager') - ->getStorage('block'); - $entity = $entity_type_manager->create([ - 'id' => 'eclogoblock', - 'theme' => 'oe_whitelabel', - 'plugin' => 'whitelabel_ec_logo_block', - 'settings' => [ - 'id' => 'whitelabel_ec_logo_block', - 'label' => 'Corporate Logo Block', - 'provider' => 'oe_whitelabel_helper', - 'label_display' => '0', - ], - ]); - $entity->save(); - $builder = \Drupal::entityTypeManager()->getViewBuilder('block'); - $build = $builder->view($entity, 'block'); - $render = $this->container->get('renderer')->renderRoot($build); - $crawler = new Crawler($render->__toString()); - - $logo = $crawler->filter('img'); - $this->assertCount(1, $logo); - $expected = "/themes/custom/oe_whitelabel/modules/oe_whitelabel_helper/images/logos/ec/logo-ec--{$lang}.svg"; - $this->assertSame($expected, $logo->attr('src')); - - // Assert EU logo. - $entity_type_manager = $this->container - ->get('entity_type.manager') - ->getStorage('block'); - $entity = $entity_type_manager->create([ - 'id' => 'eulogoblock', - 'theme' => 'oe_whitelabel', - 'plugin' => 'whitelabel_eu_logo_block', - 'settings' => [ - 'id' => 'whitelabel_logo_block', - 'label' => 'Corporate Logo Block', - 'provider' => 'whitelabel_eu_logo_block', - 'label_display' => '0', - ], - ]); - $entity->save(); - $builder = \Drupal::entityTypeManager()->getViewBuilder('block'); - $build = $builder->view($entity, 'block'); - $render = $this->container->get('renderer')->renderRoot($build); - $crawler = new Crawler($render->__toString()); - - $logo = $crawler->filter('img'); - $this->assertCount(1, $logo); - $expected = "/themes/custom/oe_whitelabel/modules/oe_whitelabel_helper/images/logos/eu/logo-eu--{$lang}.svg"; - $this->assertSame($expected, $logo->attr('src')); - $picture = $crawler->filter('picture'); - $this->assertCount(1, $picture); - $source = $crawler->filter('source'); - $expected = "/themes/custom/oe_whitelabel/modules/oe_whitelabel_helper/images/logos/eu/mobile/logo-eu--{$lang}.svg"; - $this->assertSame($expected, $source->attr('srcset')); - } - - /** - * Sets language from lang code. - * - * @param string $language_code - * The language code. - */ - protected function setLanguageByCode(string $language_code) :void { - $this->languages[$language_code] = ConfigurableLanguage::createFromLangcode($language_code); - $this->languages[$language_code]->save(); - $this->languageManager = $this->container->get('language_manager'); - $this->languageManager->reset(); - - \Drupal::service('language.default')->set($this->languages[$language_code]); - } - - /** - * Provides test data for ::providerTestLogoBlockRendering(). - * - * @return array[] - * Test data. - */ - public function providerTestLogoBlockRendering(): array { - return [ - 'default' => [ - 'en', - ], - 'german' => [ - 'de', - ], - ]; - } - -} diff --git a/oe_whitelabel.theme b/oe_whitelabel.theme index b42c7187f..9c95a19ff 100644 --- a/oe_whitelabel.theme +++ b/oe_whitelabel.theme @@ -8,6 +8,8 @@ declare(strict_types = 1); use Drupal\Core\Form\FormStateInterface; +use Drupal\Core\Url; +use Drupal\oe_whitelabel_helper\EuropeanUnionLanguages; /** * Implements hook__preprocess_links__language_block(). @@ -105,6 +107,7 @@ function oe_whitelabel_form_system_theme_settings_alter(&$form, FormStateInterfa '#type' => 'select', '#title' => t('Component library'), '#options' => [ + 'neutral' => t('Neutral'), 'ec' => t('European Commission'), 'eu' => t('European Union'), ], @@ -127,6 +130,60 @@ function oe_whitelabel_form_system_theme_settings_alter(&$form, FormStateInterfa * Implements hook_preprocess(). */ function oe_whitelabel_preprocess(&$variables) { - $variables['bcl_component_library'] = theme_get_setting('component_library') ?? 'eu'; + $variables['bcl_component_library'] = theme_get_setting('component_library') ?? 'neutral'; $variables['bcl_header_style'] = theme_get_setting('header_style') ?? 'standard'; + $variables['current_language_id'] = \Drupal::languageManager()->getCurrentLanguage()->getId(); + $variables['bcl_logo_path'] = base_path() . drupal_get_path('theme', 'oe_bootstrap_theme') . '/assets/logos/'; +} + +/** + * Implements hook_preprocess_page(). + */ +function oe_whitelabel_preprocess_page(&$variables) { + if ($variables['bcl_component_library'] === 'ec') { + $variables['logo_aria_label'] = t('Home') . ' - ' . t('European Commission'); + $variables['site_logo_alt'] = t('European Commission logo'); + $variables['site_logo_title'] = t('European Commission'); + $site_logo_href = 'https://ec.europa.eu/info'; + } + elseif ($variables['bcl_component_library'] === 'eu') { + $variables['logo_aria_label'] = t('Home - European Union'); + $variables['site_logo_alt'] = t('European Union flag'); + $variables['site_logo_title'] = t('European Union'); + $site_logo_href = 'https://european-union.europa.eu'; + } + else { + $site_config = \Drupal::config('system.site'); + $variables['site_name'] = $site_config->get('name'); + $variables['site_logo_url'] = file_url_transform_relative(file_create_url(theme_get_setting('logo.url'))); + $variables['logo_aria_label'] = t('Home'); + $variables['site_logo_alt'] = t('Home logo'); + $variables['site_logo_title'] = t('Home'); + $site_logo_href = Url::fromRoute('')->toString(); + } + + if ($variables['bcl_component_library'] === 'neutral') { + return; + } + // Provide correct icon for non-eu languages. + $language_code = \Drupal::languageManager()->getCurrentLanguage()->getId(); + if (!EuropeanUnionLanguages::hasLanguage($language_code)) { + if ($language_code === 'nb') { + // Set correct icon for Norwegian language. + $variables['current_language_id'] = 'no'; + } + else { + // Check whether BCL provides a logo for the language. + $bcl_logo = $variables['bcl_logo_path'] . '/' . $variables['bcl_component_library'] . '/'; + $bcl_logo .= 'logo-' . $variables['bcl_component_library'] . '--' . $language_code . '.svg'; + if (!file_exists($bcl_logo)) { + // Provide fallback "en" icon if language logo doesn't exist. + $variables['current_language_id'] = 'en'; + } + } + } + else { + $site_logo_href .= '/index_' . EuropeanUnionLanguages::getInternalLanguageCode($variables['current_language_id']); + } + $variables['site_logo_href'] = $site_logo_href; } diff --git a/templates/overrides/navigation/block--oe-authentication-login_block.html.twig b/templates/overrides/navigation/block--oe-authentication-login_block.html.twig index f32cf9838..8cd37ebe6 100644 --- a/templates/overrides/navigation/block--oe-authentication-login_block.html.twig +++ b/templates/overrides/navigation/block--oe-authentication-login_block.html.twig @@ -6,7 +6,6 @@ #} {% set extra_attributes = create_attribute() %} {% set extra_attributes = extra_attributes.addClass([ - 'nav-link', 'text-center' ]) %} @@ -15,7 +14,7 @@ {{ title }} {% endset %} - + diff --git a/templates/overrides/navigation/block--oe-whitelabel-language-switcher.html.twig b/templates/overrides/navigation/block--oe-whitelabel-language-switcher.html.twig new file mode 100644 index 000000000..9a3ac86db --- /dev/null +++ b/templates/overrides/navigation/block--oe-whitelabel-language-switcher.html.twig @@ -0,0 +1,5 @@ +{% block content %} + +{% endblock %} diff --git a/templates/overrides/navigation/block--system-branding-block.html.twig b/templates/overrides/navigation/block--system-branding-block.html.twig index e81f319c5..a3755bcbb 100644 --- a/templates/overrides/navigation/block--system-branding-block.html.twig +++ b/templates/overrides/navigation/block--system-branding-block.html.twig @@ -1,4 +1,3 @@ -{% extends "block.html.twig" %} {# /** * @file @@ -13,44 +12,29 @@ * - site_slogan: Slogan for site as defined in Site information settings. */ #} -{% - set logo_classes = [ - 'text-decoration-none', - 'site-logo', - ] -%} -{% - set name_classes = [ - 'text-decoration-none', - 'align-bottom', - bcl_header_style == 'light' ? 'text-dark': 'text-white', - ] -%} -{% - set img_classes = [ - 'd-none', - 'd-lg-inline-block', - ] -%} - -{% set site_logo_attr = create_attribute() %} -{% set site_logo_img_attr = create_attribute() %} -{% set site_name_attr = create_attribute() %} +{% set light = bcl_header_style == 'light' %} {% block content %} - {% if site_logo %} - - - - {% endif %} - {% if site_name %} -
- - {{ site_name }} - -
- {% endif %} - {% if site_slogan %} -
{{ site_slogan }}
- {% endif %} + {% apply spaceless %} + {# Project name. #} + {% if site_logo is not empty or site_name is not empty %} +
+
+ {% if site_logo is not empty and bcl_component_library != 'neutral' %} + + {% endif %} + {% if site_name is not empty %} + + {% endif %} +
+
+ {% endif %} + {% endapply %} {% endblock %} diff --git a/templates/overrides/navigation/block--whitelabel-ec-logo-block.html.twig b/templates/overrides/navigation/block--whitelabel-ec-logo-block.html.twig deleted file mode 100644 index cddd07099..000000000 --- a/templates/overrides/navigation/block--whitelabel-ec-logo-block.html.twig +++ /dev/null @@ -1 +0,0 @@ -{{ content }} diff --git a/templates/overrides/navigation/block--whitelabel-eu-logo-block.html.twig b/templates/overrides/navigation/block--whitelabel-eu-logo-block.html.twig deleted file mode 100644 index cddd07099..000000000 --- a/templates/overrides/navigation/block--whitelabel-eu-logo-block.html.twig +++ /dev/null @@ -1 +0,0 @@ -{{ content }} diff --git a/templates/overrides/navigation/links--language-block.html.twig b/templates/overrides/navigation/links--language-block.html.twig index c236d89e6..36534c688 100644 --- a/templates/overrides/navigation/links--language-block.html.twig +++ b/templates/overrides/navigation/links--language-block.html.twig @@ -22,7 +22,6 @@ {% set extra_attributes = extra_attributes.setAttribute('data-bs-target', '#' ~ _language.link.target) %} {% set extra_attributes = extra_attributes.addClass( [ - 'nav-link', 'text-center' ] ) %} @@ -31,7 +30,7 @@ {{ title }} {% endset %} - + {% include '@oe_whitelabel/patterns/modal/modal-language.html.twig' with _language.modal only %} diff --git a/templates/overrides/page/page.html.twig b/templates/overrides/page/page.html.twig index c54e90a08..2b680ffdb 100644 --- a/templates/overrides/page/page.html.twig +++ b/templates/overrides/page/page.html.twig @@ -47,29 +47,64 @@ * @ingroup themeable */ #} -{% - set grid_classes = [ - 'col-12', - page.sidebar_left ? 'col-lg-9', - ] -%} +{% set corporate_logos %} + {% set anchor_attributes = bcl_component_library == 'neutral' + ? create_attribute().addClass(['navbar-brand']) + : create_attribute().addClass(['navbar-brand']).setAttribute('target', '_blank') + %} + + {% if bcl_component_library == 'eu' %} + + + {{ site_logo_alt }} + + {% elseif bcl_component_library == 'ec' %} + {{ site_logo_alt }} + {% else %} + {{ site_logo_alt }} +
{{ site_name }}
+ {% endif %}
+{% endset %} +
- {{ pattern('header', { - variant: bcl_component_library, - navbar_branding: page.navbar_branding, - navbar_right: page.navbar_right, - header_top: page.header_top, - header_left: page.header_left, - header_right: page.header_right, - breadcrumbs: page.breadcrumbs - }) }} + {% block header %} +
+ {% block head %} + {{ pattern('navbar', { + navigation: corporate_logos, + right: page.navbar_right, + color_scheme: 'light', + background: false, + attributes: create_attribute().addClass(['w-100', 'shadow-sm']), + }) }} + {% endblock %} + {{ page.navbar_branding }} + + {# Navbar. #} + {% block navbar %} + {{ pattern('navbar', { + navigation: page.header_left, + right: page.header_right, + color_scheme: 'dark', + background: false, + expanded_breakpoint: 'lg', + attributes: create_attribute().addClass(['bcl-header__navbar']), + }) }} + {% endblock %} + {# Breadcrumbs. #} +
+ {% block breadcrumbs %} + {{ page.breadcrumbs }} + {% endblock %} +
+
+ {% endblock %}
- {% if page.header %} -
- {% else %} -
- {% endif %} +
{% if page.header %} {{ page.header }} diff --git a/templates/patterns/header/header.ui_patterns.yml b/templates/patterns/header/header.ui_patterns.yml deleted file mode 100644 index 00e2ab0f1..000000000 --- a/templates/patterns/header/header.ui_patterns.yml +++ /dev/null @@ -1,34 +0,0 @@ -header: - label: Header - description: A navigation section for the header - variants: - ec: - label: European Commission - eu: - label: European Union - fields: - navbar_branding: - type: array - label: "Brand title" - description: "Your company, product, or project name." - preview: - - type: html_tag - tag: span - value: "Brand" - navbar_right: - type: array - label: Text - description: "Vertically centered strings of text." - preview: "Navbar text with an inline element" - header_top: - type: array - label: 'Header Top' - header_left: - type: array - label: 'Header Left' - header_right: - type: array - label: 'Header Right' - breadcrumbs: - type: array - label: 'Breadcrumbs' diff --git a/templates/patterns/header/pattern-header--variant-ec.html.twig b/templates/patterns/header/pattern-header--variant-ec.html.twig deleted file mode 100644 index 1873aab3e..000000000 --- a/templates/patterns/header/pattern-header--variant-ec.html.twig +++ /dev/null @@ -1,11 +0,0 @@ -{# -/** - * @file - * Template override for pattern header variant EC. - */ -#} -{% extends "pattern-header.html.twig" %} -{% block header %} - {% set _header_attributes = create_attribute().addClass(['bcl-header--ec', 'bcl-header']) %} - {{ parent() }} -{% endblock %} diff --git a/templates/patterns/header/pattern-header--variant-eu.html.twig b/templates/patterns/header/pattern-header--variant-eu.html.twig deleted file mode 100644 index d39c1b062..000000000 --- a/templates/patterns/header/pattern-header--variant-eu.html.twig +++ /dev/null @@ -1,11 +0,0 @@ -{# -/** - * @file - * Template override for pattern header variant EU. - */ -#} -{% extends "pattern-header.html.twig" %} -{% block header %} - {% set _header_attributes = create_attribute().addClass(['bcl-header--eu', 'bcl-header']) %} - {{ parent() }} -{% endblock %} diff --git a/templates/patterns/header/pattern-header.html.twig b/templates/patterns/header/pattern-header.html.twig deleted file mode 100644 index 8562e3edf..000000000 --- a/templates/patterns/header/pattern-header.html.twig +++ /dev/null @@ -1,46 +0,0 @@ -{# -/** - * @file - * Template for header pattern. - */ -#} -{% set _nav_attributes = create_attribute().addClass([ - 'w-100', - 'shadow-sm', - 'navbar', - 'navbar-expand-lg', - 'navbar-light', -]) %} -{% set navbar_attributes = create_attribute().addClass(['bcl-header__navbar']) %} -{% set _header_attributes = create_attribute() %} -{% set _project_attributes = create_attribute().addClass([ - 'bcl-header__project', - bcl_header_style == 'light' ? bcl_header_style, -]) %} -{% block header %} -
-{% endblock %} - -
-
- {{ header_top }} -
-
- {{ pattern('navbar', { - navigation: header_left, - right: header_right, - color_scheme: 'dark', - background: false, - attributes: navbar_attributes, - }) }} -
- {{ breadcrumbs }} -
-
diff --git a/tests/src/Functional/CorporateHeaderLogosTest.php b/tests/src/Functional/CorporateHeaderLogosTest.php new file mode 100644 index 000000000..593aabc6d --- /dev/null +++ b/tests/src/Functional/CorporateHeaderLogosTest.php @@ -0,0 +1,93 @@ +install(['language']); + $language = ConfigurableLanguage::createFromLangcode('es'); + $language->save(); + + // Rebuild the ui_pattern definitions to collect the ones provided by + // oe_whitelabel itself. + \Drupal::service('plugin.manager.ui_patterns')->clearCachedDefinitions(); + } + + /** + * Tests the header logos. + */ + public function testCorporateHeaderLogos(): void { + // Create a user that has permission to administer theme settings. + $user = $this->drupalCreateUser(['administer themes']); + $this->drupalLogin($user); + + $this->drupalGet(''); + $page = $this->getSession()->getPage(); + $assert_session = $this->assertSession(); + + $assert_session->elementExists('css', 'header.bcl-header.bcl-header--neutral'); + $assert_session->elementExists('css', 'img[alt="Home logo"]'); + + // Select EU component library and save configuration. + $this->drupalGet('/admin/appearance/settings/oe_whitelabel'); + $page->selectFieldOption('Component library', 'European Union'); + $page->pressButton('Save configuration'); + + $this->drupalGet(''); + + $assert_session->elementExists('css', 'header.bcl-header.bcl-header--eu'); + $assert_session->elementExists('css', 'header > nav > div > div > a[href="https://european-union.europa.eu/index_en"]'); + $assert_session->elementExists('css', 'picture > source[srcset="/build/themes/contrib/oe_bootstrap_theme/assets/logos/eu/mobile/logo-eu--en.svg"]'); + $assert_session->elementExists('css', 'picture > img[src="/build/themes/contrib/oe_bootstrap_theme/assets/logos/eu/logo-eu--en.svg"]'); + + $this->drupalGet('es/'); + + $assert_session->elementExists('css', 'header.bcl-header.bcl-header--eu'); + $assert_session->elementExists('css', 'header > nav > div > div > a[href="https://european-union.europa.eu/index_es"]'); + $assert_session->elementExists('css', 'picture > source[srcset="/build/themes/contrib/oe_bootstrap_theme/assets/logos/eu/mobile/logo-eu--es.svg"]'); + $assert_session->elementExists('css', 'picture > img[src="/build/themes/contrib/oe_bootstrap_theme/assets/logos/eu/logo-eu--es.svg"]'); + + // Select EC component library and save configuration. + $this->drupalGet('/admin/appearance/settings/oe_whitelabel'); + $page->selectFieldOption('Component library', 'European Commission'); + $page->pressButton('Save configuration'); + + $this->drupalGet(''); + $assert_session->elementExists('css', 'header.bcl-header.bcl-header--ec'); + $assert_session->elementExists('css', 'header > nav > div > div > a[href="https://ec.europa.eu/info/index_en"]'); + $assert_session->elementExists('css', 'img[src="/build/themes/contrib/oe_bootstrap_theme/assets/logos/ec/logo-ec--en.svg"]'); + + $this->drupalGet('es/'); + $assert_session->elementExists('css', 'header.bcl-header.bcl-header--ec'); + $assert_session->elementExists('css', 'header > nav > div > div > a[href="https://ec.europa.eu/info/index_es"]'); + $assert_session->elementExists('css', 'img[src="/build/themes/contrib/oe_bootstrap_theme/assets/logos/ec/logo-ec--es.svg"]'); + } + +} diff --git a/tests/src/Kernel/MultilingualBlockTest.php b/tests/src/Kernel/MultilingualBlockTest.php index 3e56e41af..aa7053f84 100644 --- a/tests/src/Kernel/MultilingualBlockTest.php +++ b/tests/src/Kernel/MultilingualBlockTest.php @@ -82,9 +82,9 @@ public function testBlockRendering(): void { $render = $this->container->get('renderer')->renderRoot($build); $crawler = new Crawler($render->__toString()); - $block = $crawler->filter('li.language-switcher'); + $block = $crawler->filter('div.language-switcher'); $this->assertCount(1, $block); - $link = $crawler->filter('a.nav-link'); + $link = $crawler->filter('div.language-switcher > a'); $this->assertSame('English', trim($link->text())); $this->assertSame('http://localhost/en/%3Cnone%3E', $link->attr('href')); $title = $crawler->filter('h5#languageeModalLabel'); diff --git a/tests/src/Kernel/SiteBrandingBlockTest.php b/tests/src/Kernel/SiteBrandingBlockTest.php index 623d92a0f..aadf149de 100644 --- a/tests/src/Kernel/SiteBrandingBlockTest.php +++ b/tests/src/Kernel/SiteBrandingBlockTest.php @@ -29,7 +29,6 @@ protected function setUp(): void { parent::setUp(); \Drupal::service('theme_installer')->install(['oe_whitelabel']); - $this->container->set('theme.registry', NULL); $url = '/' . drupal_get_path('theme', 'oe_whitelabel') . '/logo.svg'; \Drupal::configFactory() @@ -53,39 +52,67 @@ protected function setUp(): void { * Tests the rendering of blocks. */ public function testBlockRendering(): void { + \Drupal::configFactory()->getEditable('oe_whitelabel.settings') + ->set('component_library', 'ec') + ->save(); + $entity_type_manager = $this->container ->get('entity_type.manager') ->getStorage('block'); - $entity = $entity_type_manager->create([ - 'id' => 'test_block', - 'theme' => 'oe_whitelabel', - 'plugin' => 'system_branding_block', - 'settings' => [ - 'id' => 'system_branding_block', - 'label' => 'Site branding', - 'provider' => 'system', - 'label_display' => '0', - 'use_site_logo' => TRUE, - 'use_site_name' => TRUE, - 'use_site_slogan' => FALSE, - ], - ]); - $entity->save(); + $entity = $entity_type_manager->load('oe_whitelabel_branding'); + + $builder = \Drupal::entityTypeManager()->getViewBuilder('block'); + $build = $builder->view($entity, 'block'); + $render = $this->container->get('renderer')->renderRoot($build); + $crawler = new Crawler((string) $render); + + $actual = $crawler->filter('.bcl-header__site-name.site-name'); + $this->assertCount(1, $actual); + $link = $actual->filter('.text-decoration-none.align-bottom'); + $this->assertCount(1, $link); + $actual = $crawler->filter('.site-logo.d-none.d-lg-inline-block'); + $this->assertCount(1, $actual); + $logo = $actual->filter('img'); + $this->assertCount(1, $logo); + $expected = '/themes/custom/oe_whitelabel/logo.svg'; + $this->assertSame($expected, $logo->attr('src')); + + \Drupal::configFactory()->getEditable('oe_whitelabel.settings') + ->set('component_library', 'eu') + ->set('header_style', 'light') + ->save(); + drupal_static_reset('theme_get_setting'); + $builder = \Drupal::entityTypeManager()->getViewBuilder('block'); $build = $builder->view($entity, 'block'); $render = $this->container->get('renderer')->renderRoot($build); - $crawler = new Crawler($render->__toString()); + $crawler = new Crawler((string) $render); - $actual = $crawler->filter('.site-name'); + $actual = $crawler->filter('.bcl-header__site-name.site-name'); $this->assertCount(1, $actual); - $link = $actual->filter('.text-white.text-decoration-none.align-bottom'); + $link = $actual->filter('.text-decoration-none.align-bottom'); $this->assertCount(1, $link); - $actual = $crawler->filter('.site-logo'); + $actual = $crawler->filter('.site-logo.d-none.d-lg-inline-block'); $this->assertCount(1, $actual); $logo = $actual->filter('img'); $this->assertCount(1, $logo); $expected = '/themes/custom/oe_whitelabel/logo.svg'; $this->assertSame($expected, $logo->attr('src')); + + \Drupal::configFactory()->getEditable('oe_whitelabel.settings') + ->set('component_library', 'neutral') + ->save(); + drupal_static_reset('theme_get_setting'); + + $builder = \Drupal::entityTypeManager()->getViewBuilder('block'); + $build = $builder->view($entity, 'block'); + $render = $this->container->get('renderer')->renderRoot($build); + $crawler = new Crawler((string) $render); + + $actual = $crawler->filter('.bcl-header__site-name.site-name.h5.d-inline-block.d-lg-none'); + $this->assertCount(1, $actual); + $link = $actual->filter('.text-decoration-none.align-bottom'); + $this->assertCount(1, $link); } }