diff --git a/.gitlab/issue_templates/Bug.md b/.gitlab/issue_templates/Bug.md new file mode 100644 index 0000000..ff957c3 --- /dev/null +++ b/.gitlab/issue_templates/Bug.md @@ -0,0 +1,26 @@ +## Summary + +(Summarize the bug encountered concisely) + + +## Steps to reproduce + +(How one can reproduce the issue - include specific links when possible) + + + +## What is the current bug behavior? + +(What actually happens) + + +## What is the expected correct behavior? + +(What you should see instead) + + +## Relevant screenshots + + + +/label ~Bug diff --git a/.gitlab/issue_templates/Task.md b/.gitlab/issue_templates/Task.md new file mode 100644 index 0000000..53a0082 --- /dev/null +++ b/.gitlab/issue_templates/Task.md @@ -0,0 +1,10 @@ +## Background + + +## Work Required + +* [ ] + + + +/label ~Task diff --git a/.gitlab/issue_templates/User-story.md b/.gitlab/issue_templates/User-story.md new file mode 100644 index 0000000..9fbe6ef --- /dev/null +++ b/.gitlab/issue_templates/User-story.md @@ -0,0 +1,10 @@ +## Acceptance Criteria + +Given that I am [role], +when I [action], +then I [result]. + +## Work Required +* [ ] + +/label ~"User Story" diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..ba44b6d --- /dev/null +++ b/Makefile @@ -0,0 +1,45 @@ +# Identify tasks which do not have output files: +.PHONY: help synclivetotest syncdb syncfiles + +GREEN := $(shell tput -Txterm setaf 2) +WHITE := $(shell tput -Txterm setaf 7) +YELLOW := $(shell tput -Txterm setaf 3) +RESET := $(shell tput -Txterm sgr0) + +# Perl to convert target docs (following ##@). +# Example: +# mytarget: ##@group description +# Group items under @group in output, +# And show targetdescription +HELPME = \ + %help; \ + while(<>) { push @{$$help{$$2 // 'options'}}, [$$1, $$3] if /^([a-zA-Z\-]+)\s*:.*\#\#(?:@([a-zA-Z\-]+))?\s(.*)$$/ }; \ + for (sort keys %help) { \ + print "${WHITE}$$_:${RESET}\n"; \ + for (@{$$help{$$_}}) { \ + $$sep = " " x (20 - length $$_->[0]); \ + print " ${YELLOW}$$_->[0]${RESET}$$sep${GREEN}$$_->[1]${RESET}\n"; \ + }; \ + print "\n"; } + +# Should always be the first target (as this will run with just `make`): +help: ##@Targets Show this text (or just run make) + @perl -e '$(HELPME)' Makefile + +# Configure sync' +ALIAS_LIVE := @live.live +ALIAS_TEST := @test.dev +SRV := root@elizabeth.mayfirst.org +FILES_LIVE := /home/agaric_live/files/ +FILES_TEST := /home/agaric_test/files +ECHO := $(if $(TEST),@echo) +synclivetotest: syncfiles syncdb ##@Targets Sync live environment to test + +syncdb: + $(ECHO) drush -y $(ALIAS_TEST) sql-drop + $(ECHO) drush -y sql-sync $(ALIAS_LIVE) $(ALIAS_TEST) + +syncfiles: + $(ECHO) ssh -A $(SRV) rsync -rz --stats --exclude styles \ + --exclude css --exclude js $(FILES_LIVE) \ + --delete ${FILES_TEST} diff --git a/README.md b/README.md index 13bef42..1861e75 100644 --- a/README.md +++ b/README.md @@ -39,7 +39,8 @@ git pull git submodule update --recursive --remote vagrant ssh composer install -drush -y sql-dump > /tmp/paranoia.sql && drush sql-drop && drush -y sql-sync @live @self && drush -y updb +drush -y sql-dump > /tmp/paranoia.sql && drush -y sql-drop && drush -y sql-sync @live @self && drush -y updb +drush -y rsync @live:%files @self:%files drush cim -y ``` @@ -55,6 +56,12 @@ Set up [drutopia_host](https://gitlab.com/drutopia-platform/drutopia_host) and [ Then use [ahoy](https://github.com/ahoy-cli/ahoy/), from within the hosting_private directory. +Ensure all three related repositories are up-to-date with: + +``` +ahoy git-pull-all +``` + If Agaric's Drutopia PaaS base has changed (the composer.lock in this directory), produce and push a new build: ``` @@ -64,14 +71,26 @@ ahoy deploy-build agaric To deploy everything else (config, templates, styles): ``` -ahoy git-pull-all ahoy deploy-site agaric_live ``` -Then record the deployment by: -navigating to `/drutopia_host/build/artifacts` +Then record the deployment. This applies to both deploy-site and deploy-build record keeping: +Navigate to `/drutopia_host/build/artifacts` Add all new files generated with `git add . ` Commit the files with a message on what you deployed with 'git commit -m ' Push the changes to the repo with `git push` If you need to overwrite live configuration (only after confirming you've committed any parts you want to keep) you can use ahoy for that too with `deploy-site-force`. + +## Code Hightlight. + +The [prism.js](https://prismjs.com/) library was added in the site and can be used like this: + +``` +
+  
+    p { color: red }
+  
+
+``` +The suffix of the class needs to be changed depending of the language that is going to be highlighted eg: `language-php`, `language-js` etc. diff --git a/composer.json b/composer.json index 5a8af4f..152d09c 100644 --- a/composer.json +++ b/composer.json @@ -21,6 +21,7 @@ "drupal/core": "^8.6.2", "drupal/customerror": "1.x-dev", "drupal/diff": "^1.0@RC", + "drupal/dropdown_language": "^2.2", "drupal/drutopia_core": "1.x-dev", "drupal/google_analytics": "^2.3", "drupal/honeypot": "^1.29", @@ -31,6 +32,8 @@ "drupal/migrate_plus": "^4.0", "drupal/migrate_tools": "^4.0", "drupal/minimalhtml": "^1.0", + "drupal/paragraphs_features": "^1.4", + "drupal/preview_link": "^1.1", "drupal/redirect": "^1.2", "drupal/regionincontent": "1.x-dev", "drupal/search404": "^1.0", @@ -98,14 +101,11 @@ }, "drupal/honeypot": { "Accessibility Issue Triggered": "https://www.drupal.org/files/issues/2018-08-05/honeypot-aria-hidden-on-text-field-2944843-12.patch" - }, - "drupal/comment_notify": { - "Invalid placeholder (!types) in string": "https://www.drupal.org/files/issues/2019-01-16/2938134-4.patch", - "The unsubscribe option is not working": "https://www.drupal.org/files/issues/2019-01-17/3026687-2.patch" - } + } } }, "config": { - "sort-packages": true + "sort-packages": true, + "process-timeout": 600 } } diff --git a/composer.lock b/composer.lock index 21adf58..084ccd0 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "788dcf2c1028c477fe97c294b439dbba", + "content-hash": "577780153fce8a33a72ad2165283ce92", "packages": [ { "name": "asm89/stack-cors", @@ -2346,7 +2346,7 @@ }, "drupal": { "version": "8.x-1.25", - "datestamp": "1542915180", + "datestamp": "1542915384", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -2417,7 +2417,7 @@ }, "drupal": { "version": "8.x-1.25", - "datestamp": "1542915180", + "datestamp": "1542915384", "security-coverage": { "status": "covered", "message": "Covered by Drupal's security advisory policy" @@ -2953,7 +2953,7 @@ "source": { "type": "git", "url": "https://git.drupal.org/project/comment_notify", - "reference": "01751b118ce3765fe3af07a36ca8c6f6687c6534" + "reference": "96ecd28cd0f674291e93102661149520e7b45259" }, "require": { "drupal/core": "*", @@ -2965,16 +2965,12 @@ "dev-1.x": "1.x-dev" }, "drupal": { - "version": "8.x-1.0-beta2+7-dev", - "datestamp": "1544815219", + "version": "8.x-1.0-beta3+4-dev", + "datestamp": "1548372780", "security-coverage": { "status": "not-covered", "message": "Dev releases are not covered by Drupal security advisories." } - }, - "patches_applied": { - "Invalid placeholder (!types) in string": "https://www.drupal.org/files/issues/2019-01-16/2938134-4.patch", - "The unsubscribe option is not working": "https://www.drupal.org/files/issues/2019-01-17/3026687-2.patch" } }, "notification-url": "https://packages.drupal.org/8/downloads", @@ -2982,6 +2978,10 @@ "GPL-2.0-or-later" ], "authors": [ + { + "name": "gnuget", + "homepage": "https://www.drupal.org/user/992990" + }, { "name": "greggles", "homepage": "https://www.drupal.org/user/36762" @@ -2992,7 +2992,7 @@ "support": { "source": "http://cgit.drupalcode.org/comment_notify" }, - "time": "2018-12-28T18:11:39+00:00" + "time": "2019-01-25T14:32:11+00:00" }, { "name": "drupal/components", @@ -4076,7 +4076,7 @@ }, "drupal": { "version": "8.x-1.x-dev", - "datestamp": "1542572880", + "datestamp": "1542578580", "security-coverage": { "status": "not-covered", "message": "Dev releases are not covered by Drupal security advisories." @@ -4277,6 +4277,53 @@ "issues": "https://www.drupal.org/project/issues/diff" } }, + { + "name": "drupal/dropdown_language", + "version": "2.2.0", + "source": { + "type": "git", + "url": "https://git.drupal.org/project/dropdown_language", + "reference": "8.x-2.2" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/dropdown_language-8.x-2.2.zip", + "reference": "8.x-2.2", + "shasum": "78e9c73fe7414114eaf4884e23eac671c74e302f" + }, + "require": { + "drupal/core": "*" + }, + "type": "drupal-module", + "extra": { + "branch-alias": { + "dev-2.x": "2.x-dev" + }, + "drupal": { + "version": "8.x-2.2", + "datestamp": "1540134181", + "security-coverage": { + "status": "covered", + "message": "Covered by Drupal's security advisory policy" + } + } + }, + "notification-url": "https://packages.drupal.org/8/downloads", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "SKAUGHT", + "homepage": "https://www.drupal.org/user/297907" + } + ], + "description": "Provides a block with a Dropdown Language Switcher", + "homepage": "https://www.drupal.org/project/dropdown_language", + "support": { + "source": "http://cgit.drupalcode.org/dropdown_language" + } + }, { "name": "drupal/drutopia_action", "version": "1.0.0-beta1", @@ -6384,6 +6431,10 @@ "name": "jmiccolis", "homepage": "https://www.drupal.org/user/31731" }, + { + "name": "joseph.olstad", + "homepage": "https://www.drupal.org/user/1321830" + }, { "name": "mpotter", "homepage": "https://www.drupal.org/user/616192" @@ -6541,10 +6592,6 @@ "name": "golddragon007", "homepage": "https://www.drupal.org/user/2723471" }, - { - "name": "james.williams", - "homepage": "https://www.drupal.org/user/592268" - }, { "name": "lbesenyei", "homepage": "https://www.drupal.org/user/2626013" @@ -6601,6 +6648,10 @@ { "name": "kristiaanvandeneynde", "homepage": "https://www.drupal.org/user/1345130" + }, + { + "name": "ronaldtebrake", + "homepage": "https://www.drupal.org/user/2314038" } ], "description": "Enables Group functionality for the Node module", @@ -6704,6 +6755,10 @@ { "name": "kristiaanvandeneynde", "homepage": "https://www.drupal.org/user/1345130" + }, + { + "name": "ronaldtebrake", + "homepage": "https://www.drupal.org/user/2314038" } ], "description": "This module allows you to group users, content and other entities", @@ -7467,6 +7522,71 @@ "source": "http://cgit.drupalcode.org/paragraphs" } }, + { + "name": "drupal/paragraphs_features", + "version": "1.4.0", + "source": { + "type": "git", + "url": "https://git.drupal.org/project/paragraphs_features", + "reference": "8.x-1.4" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/paragraphs_features-8.x-1.4.zip", + "reference": "8.x-1.4", + "shasum": "1c875c35c3ef75d462385cbc451d9a2f768b016f" + }, + "require": { + "drupal/core": "^8.5", + "drupal/paragraphs": "^1.3" + }, + "type": "drupal-module", + "extra": { + "branch-alias": { + "dev-1.x": "1.x-dev" + }, + "drupal": { + "version": "8.x-1.4", + "datestamp": "1536759480", + "security-coverage": { + "status": "covered", + "message": "Covered by Drupal's security advisory policy" + } + } + }, + "notification-url": "https://packages.drupal.org/8/downloads", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "Mladen Todorovic", + "homepage": "https://www.drupal.org/user/2103716", + "email": "mladen.todorovic@burda.com" + }, + { + "name": "daniel.bosen", + "homepage": "https://www.drupal.org/user/404865" + }, + { + "name": "mtodor", + "homepage": "https://www.drupal.org/user/3453049" + }, + { + "name": "thunderbot", + "homepage": "https://www.drupal.org/user/3511180" + }, + { + "name": "volkerk", + "homepage": "https://www.drupal.org/user/57527" + } + ], + "description": "Paragraphs features for extending paragraphs widget functionality.", + "homepage": "https://www.drupal.org/project/paragraphs_features", + "support": { + "source": "http://cgit.drupalcode.org/paragraphs_features" + } + }, { "name": "drupal/paranoia", "version": "1.0.0-alpha1", @@ -7583,6 +7703,61 @@ "source": "http://cgit.drupalcode.org/pathauto" } }, + { + "name": "drupal/preview_link", + "version": "1.1.0", + "source": { + "type": "git", + "url": "https://git.drupal.org/project/preview_link", + "reference": "8.x-1.1" + }, + "dist": { + "type": "zip", + "url": "https://ftp.drupal.org/files/projects/preview_link-8.x-1.1.zip", + "reference": "8.x-1.1", + "shasum": "30e1fc8566a567ab82503256be7505c1c0cc17bc" + }, + "require": { + "drupal/core": "~8.0" + }, + "require-dev": { + "drupal/entity_reference_revisions": "*", + "drupal/paragraphs": "*" + }, + "type": "drupal-module", + "extra": { + "branch-alias": { + "dev-1.x": "1.x-dev" + }, + "drupal": { + "version": "8.x-1.1", + "datestamp": "1548270823", + "security-coverage": { + "status": "covered", + "message": "Covered by Drupal's security advisory policy" + } + } + }, + "notification-url": "https://packages.drupal.org/8/downloads", + "license": [ + "GPL-2.0-or-later" + ], + "authors": [ + { + "name": "benjy", + "homepage": "https://www.drupal.org/user/1852732" + }, + { + "name": "larowlan", + "homepage": "https://www.drupal.org/user/395439" + } + ], + "description": "Allows anyone to preview unpublished content with a unique link.", + "homepage": "https://www.drupal.org/project/preview_link", + "support": { + "source": "http://cgit.drupalcode.org/preview_link" + } + }, { "name": "drupal/redirect", "version": "1.3.0", @@ -9758,7 +9933,7 @@ { "name": "Luís Otávio Cobucci Oblonczyk", "email": "lcobucci@gmail.com", - "role": "developer" + "role": "Developer" } ], "description": "A simple library to work with JSON Web Token and JSON Web Signature", @@ -11520,7 +11695,7 @@ }, { "name": "Gert de Pagter", - "email": "BackEndTea@gmail.com" + "email": "backendtea@gmail.com" } ], "description": "Symfony polyfill for ctype functions", @@ -12758,16 +12933,16 @@ }, { "name": "zendframework/zendxml", - "version": "1.1.0", + "version": "1.2.0", "source": { "type": "git", "url": "https://github.com/zendframework/ZendXml.git", - "reference": "267db6a2c431a08a8f8ff0f1f4c302a5ba6f5b99" + "reference": "eceab37a591c9e140772a1470338258857339e00" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/zendframework/ZendXml/zipball/267db6a2c431a08a8f8ff0f1f4c302a5ba6f5b99", - "reference": "267db6a2c431a08a8f8ff0f1f4c302a5ba6f5b99", + "url": "https://api.github.com/repos/zendframework/ZendXml/zipball/eceab37a591c9e140772a1470338258857339e00", + "reference": "eceab37a591c9e140772a1470338258857339e00", "shasum": "" }, "require": { @@ -12780,8 +12955,8 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.1.x-dev", - "dev-develop": "1.2.x-dev" + "dev-master": "1.2.x-dev", + "dev-develop": "1.3.x-dev" } }, "autoload": { @@ -12800,7 +12975,7 @@ "xml", "zf" ], - "time": "2018-04-30T15:11:04+00:00" + "time": "2019-01-22T19:42:14+00:00" } ], "packages-dev": [], diff --git a/config/sync/block.block.languageswitcher.yml b/config/sync/block.block.languageswitcher.yml new file mode 100644 index 0000000..0826509 --- /dev/null +++ b/config/sync/block.block.languageswitcher.yml @@ -0,0 +1,27 @@ +uuid: cddd6272-7a22-4110-862c-338686afc1c1 +langcode: en +status: true +dependencies: + module: + - block_visibility_groups + - dropdown_language + theme: + - agarica +id: languageswitcher +theme: agarica +region: footer +weight: 0 +provider: null +plugin: 'dropdown_language:language_interface' +settings: + id: 'dropdown_language:language_interface' + label: 'Language:' + provider: dropdown_language + label_display: visible + labels: null +visibility: + condition_group: + id: condition_group + negate: false + block_visibility_group: '' + context_mapping: { } diff --git a/config/sync/config_snapshot.snapshot.config_sync.module.dropdown_language.yml b/config/sync/config_snapshot.snapshot.config_sync.module.dropdown_language.yml new file mode 100644 index 0000000..47f9bb1 --- /dev/null +++ b/config/sync/config_snapshot.snapshot.config_sync.module.dropdown_language.yml @@ -0,0 +1,19 @@ +uuid: 1a7bd96c-ab4a-4a86-a541-b9610491c292 +langcode: en +status: true +dependencies: + module: + - dropdown_language +id: config_sync.module.dropdown_language +snapshotSet: config_sync +extensionType: module +extensionName: dropdown_language +items: + - + collection: '' + name: dropdown_language.setting + data: + wrapper: true + display_language_id: 0 + filter_untranslated: 0 + always_show_block: 0 diff --git a/config/sync/config_snapshot.snapshot.config_sync.module.drutopia_creative_license.yml b/config/sync/config_snapshot.snapshot.config_sync.module.drutopia_creative_license.yml index 1b676b1..98c34ba 100644 --- a/config/sync/config_snapshot.snapshot.config_sync.module.drutopia_creative_license.yml +++ b/config/sync/config_snapshot.snapshot.config_sync.module.drutopia_creative_license.yml @@ -9,6 +9,225 @@ snapshotSet: config_sync extensionType: module extensionName: drutopia_creative_license items: + - + collection: '' + name: config_snapshot.snapshot.config_sync.module.drutopia_creative_license + data: + langcode: en + status: true + dependencies: + module: + - drutopia_creative_license + id: config_sync.module.drutopia_creative_license + snapshotSet: config_sync + extensionType: module + extensionName: drutopia_creative_license + items: + - + collection: '' + name: core.entity_view_display.taxonomy_term.license.default + data: + langcode: en + status: true + dependencies: + config: + - taxonomy.vocabulary.license + module: + - ds + - text + third_party_settings: + ds: + layout: + id: layout_onecol + library: layout_discovery/onecol + disable_css: false + entity_classes: all_classes + settings: { } + regions: + content: + - description + id: taxonomy_term.license.default + targetEntityType: taxonomy_term + bundle: license + mode: default + content: + description: + label: hidden + type: text_default + weight: 0 + region: content + settings: { } + third_party_settings: { } + hidden: { } + - + collection: '' + name: field.storage.node.field_license + data: + langcode: en + status: true + dependencies: + module: + - node + - taxonomy + id: node.field_license + field_name: field_license + entity_type: node + type: entity_reference + settings: + target_type: taxonomy_term + module: core + locked: false + cardinality: 1 + translatable: true + indexes: { } + persist_with_no_fields: false + custom_storage: false + - + collection: '' + name: taxonomy.vocabulary.license + data: + langcode: en + status: true + dependencies: { } + name: License + vid: license + description: '' + hierarchy: 0 + weight: 0 + - + collection: '' + name: core.base_field_override.taxonomy_term.license.changed + data: + langcode: en + status: true + dependencies: + config: + - taxonomy.vocabulary.license + id: taxonomy_term.license.changed + field_name: changed + entity_type: taxonomy_term + bundle: license + label: Changed + description: 'The time that the term was last edited.' + required: false + translatable: false + default_value: { } + default_value_callback: '' + settings: { } + field_type: changed + - + collection: '' + name: core.base_field_override.taxonomy_term.license.description + data: + langcode: en + status: true + dependencies: + config: + - taxonomy.vocabulary.license + module: + - text + id: taxonomy_term.license.description + field_name: description + entity_type: taxonomy_term + bundle: license + label: Description + description: '' + required: false + translatable: false + default_value: { } + default_value_callback: '' + settings: { } + field_type: text_long + - + collection: '' + name: core.base_field_override.taxonomy_term.license.metatag + data: + langcode: en + status: true + dependencies: + config: + - taxonomy.vocabulary.license + id: taxonomy_term.license.metatag + field_name: metatag + entity_type: taxonomy_term + bundle: license + label: Metatags + description: 'The meta tags for the entity.' + required: false + translatable: false + default_value: { } + default_value_callback: '' + settings: { } + field_type: map + - + collection: '' + name: core.base_field_override.taxonomy_term.license.name + data: + langcode: en + status: true + dependencies: + config: + - taxonomy.vocabulary.license + id: taxonomy_term.license.name + field_name: name + entity_type: taxonomy_term + bundle: license + label: Name + description: '' + required: true + translatable: false + default_value: { } + default_value_callback: '' + settings: { } + field_type: string + - + collection: '' + name: core.base_field_override.taxonomy_term.license.path + data: + langcode: en + status: true + dependencies: + config: + - taxonomy.vocabulary.license + module: + - path + id: taxonomy_term.license.path + field_name: path + entity_type: taxonomy_term + bundle: license + label: 'URL alias' + description: '' + required: false + translatable: false + default_value: { } + default_value_callback: '' + settings: { } + field_type: path + - + collection: '' + name: core.base_field_override.taxonomy_term.license.status + data: + langcode: en + status: true + dependencies: + config: + - taxonomy.vocabulary.license + id: taxonomy_term.license.status + field_name: status + entity_type: taxonomy_term + bundle: license + label: Published + description: '' + required: false + translatable: false + default_value: + - + value: 1 + default_value_callback: '' + settings: + on_label: 'On' + off_label: 'Off' + field_type: boolean - collection: '' name: core.entity_view_display.taxonomy_term.license.default diff --git a/config/sync/config_snapshot.snapshot.config_sync.module.paragraphs_features.yml b/config/sync/config_snapshot.snapshot.config_sync.module.paragraphs_features.yml new file mode 100644 index 0000000..9f212bb --- /dev/null +++ b/config/sync/config_snapshot.snapshot.config_sync.module.paragraphs_features.yml @@ -0,0 +1,16 @@ +uuid: 97234a14-9821-446a-9bdd-9f9cacaf4715 +langcode: en +status: true +dependencies: + module: + - paragraphs_features +id: config_sync.module.paragraphs_features +snapshotSet: config_sync +extensionType: module +extensionName: paragraphs_features +items: + - + collection: '' + name: paragraphs_features.settings + data: + dropdown_to_button: false diff --git a/config/sync/config_snapshot.snapshot.config_sync.module.preview_link.yml b/config/sync/config_snapshot.snapshot.config_sync.module.preview_link.yml new file mode 100644 index 0000000..9a1ae1d --- /dev/null +++ b/config/sync/config_snapshot.snapshot.config_sync.module.preview_link.yml @@ -0,0 +1,11 @@ +uuid: cc0e34a0-e6c4-4e64-b41c-b6d83736ce26 +langcode: en +status: true +dependencies: + module: + - preview_link +id: config_sync.module.preview_link +snapshotSet: config_sync +extensionType: module +extensionName: preview_link +items: { } diff --git a/config/sync/config_snapshot.snapshot.config_sync.module.syslog.yml b/config/sync/config_snapshot.snapshot.config_sync.module.syslog.yml new file mode 100644 index 0000000..3730950 --- /dev/null +++ b/config/sync/config_snapshot.snapshot.config_sync.module.syslog.yml @@ -0,0 +1,18 @@ +uuid: e88d65b8-4aec-4fbf-8548-9e8545efc31b +langcode: en +status: true +dependencies: + module: + - syslog +id: config_sync.module.syslog +snapshotSet: config_sync +extensionType: module +extensionName: syslog +items: + - + collection: '' + name: syslog.settings + data: + identity: drupal + facility: 8 + format: '!base_url|!timestamp|!type|!ip|!request_uri|!referer|!uid|!link|!message' diff --git a/config/sync/core.base_field_override.menu_link_content.menu_link_content.changed.yml b/config/sync/core.base_field_override.menu_link_content.menu_link_content.changed.yml index 1d69fd0..0325a94 100644 --- a/config/sync/core.base_field_override.menu_link_content.menu_link_content.changed.yml +++ b/config/sync/core.base_field_override.menu_link_content.menu_link_content.changed.yml @@ -11,7 +11,7 @@ bundle: menu_link_content label: Changed description: 'The time that the menu link was last edited.' required: false -translatable: false +translatable: true default_value: { } default_value_callback: '' settings: { } diff --git a/config/sync/core.base_field_override.menu_link_content.menu_link_content.description.yml b/config/sync/core.base_field_override.menu_link_content.menu_link_content.description.yml index c7372db..5c7a4b7 100644 --- a/config/sync/core.base_field_override.menu_link_content.menu_link_content.description.yml +++ b/config/sync/core.base_field_override.menu_link_content.menu_link_content.description.yml @@ -11,7 +11,7 @@ bundle: menu_link_content label: Description description: 'Shown when hovering over the menu link.' required: false -translatable: false +translatable: true default_value: { } default_value_callback: '' settings: { } diff --git a/config/sync/core.base_field_override.menu_link_content.menu_link_content.metatag.yml b/config/sync/core.base_field_override.menu_link_content.menu_link_content.metatag.yml index 3f94bba..4a46ec9 100644 --- a/config/sync/core.base_field_override.menu_link_content.menu_link_content.metatag.yml +++ b/config/sync/core.base_field_override.menu_link_content.menu_link_content.metatag.yml @@ -11,7 +11,7 @@ bundle: menu_link_content label: Metatags description: 'The meta tags for the entity.' required: false -translatable: false +translatable: true default_value: { } default_value_callback: '' settings: { } diff --git a/config/sync/core.base_field_override.menu_link_content.menu_link_content.title.yml b/config/sync/core.base_field_override.menu_link_content.menu_link_content.title.yml index 4f0a2c9..0dba987 100644 --- a/config/sync/core.base_field_override.menu_link_content.menu_link_content.title.yml +++ b/config/sync/core.base_field_override.menu_link_content.menu_link_content.title.yml @@ -11,7 +11,7 @@ bundle: menu_link_content label: 'Menu link title' description: 'The text to be used for this link in the menu.' required: true -translatable: false +translatable: true default_value: { } default_value_callback: '' settings: { } diff --git a/config/sync/core.entity_view_display.node.blog.rss_teaser.yml b/config/sync/core.entity_view_display.node.blog.rss_teaser.yml index 03ff167..be22897 100644 --- a/config/sync/core.entity_view_display.node.blog.rss_teaser.yml +++ b/config/sync/core.entity_view_display.node.blog.rss_teaser.yml @@ -16,7 +16,7 @@ dependencies: - node.type.blog module: - ds - - paragraphs + - entity_reference_revisions - user _core: default_config_hash: e8yvfhoZmb_vDdkLtsMVv8u8XKzSRihmLtMph3nm6rM @@ -24,26 +24,31 @@ id: node.blog.rss_teaser targetEntityType: node bundle: blog mode: rss_teaser -third_party_settings: { } content: - field_body_paragraph: - type: paragraph_summary + field_authors: + type: entity_reference_label weight: 0 region: content label: hidden - settings: { } + settings: + link: false third_party_settings: ds: ds_limit: '' - links: + field_body_paragraph: + type: entity_reference_revisions_entity_view weight: 1 region: content - settings: { } - third_party_settings: { } + label: hidden + settings: + view_mode: preview + link: '' + third_party_settings: + ds: + ds_limit: '' hidden: body: true comment: true - field_authors: true field_image: true field_meta_tags: true field_summary: true @@ -51,3 +56,5 @@ hidden: field_topics: true indieweb_bridgypublishtwitter: true indieweb_syndication: true + langcode: true + links: true diff --git a/config/sync/core.extension.yml b/config/sync/core.extension.yml index 25dd916..54b3abc 100644 --- a/config/sync/core.extension.yml +++ b/config/sync/core.extension.yml @@ -40,6 +40,7 @@ module: dblog: 0 default_content: 0 diff: 0 + dropdown_language: 0 drutopia_action: 0 drutopia_article: 0 drutopia_blog: 0 @@ -107,7 +108,9 @@ module: node: 0 options: 0 page_cache: 0 + paragraphs_features: 0 path: 0 + preview_link: 0 quickedit: 0 rdf: 0 redirect: 0 @@ -121,6 +124,7 @@ module: similarterms: 0 social_media_links: 0 statistics: 0 + syslog: 0 system: 0 taxonomy: 0 telephone: 0 diff --git a/config/sync/dropdown_language.setting.yml b/config/sync/dropdown_language.setting.yml new file mode 100644 index 0000000..dcc8658 --- /dev/null +++ b/config/sync/dropdown_language.setting.yml @@ -0,0 +1,6 @@ +wrapper: false +display_language_id: 2 +filter_untranslated: 0 +always_show_block: 0 +_core: + default_config_hash: xbqiqGnFfv7G00sewxA46T8PO-uo8uvWhDSIFyR1Fhk diff --git a/config/sync/image.style.small_landscape.yml b/config/sync/image.style.small_landscape.yml new file mode 100644 index 0000000..93b9742 --- /dev/null +++ b/config/sync/image.style.small_landscape.yml @@ -0,0 +1,14 @@ +uuid: ef082871-7e9a-4f4a-befa-094f4091d45f +langcode: en +status: true +dependencies: { } +name: small_landscape +label: 'Small landscape' +effects: + 87ff4c68-189e-4459-ad57-6834f8181d0a: + uuid: 87ff4c68-189e-4459-ad57-6834f8181d0a + id: image_resize + weight: 1 + data: + width: 88 + height: 31 diff --git a/config/sync/language.content_settings.menu_link_content.menu_link_content.yml b/config/sync/language.content_settings.menu_link_content.menu_link_content.yml index ce190e8..0cca9f8 100644 --- a/config/sync/language.content_settings.menu_link_content.menu_link_content.yml +++ b/config/sync/language.content_settings.menu_link_content.menu_link_content.yml @@ -7,11 +7,11 @@ dependencies: - menu_link_content third_party_settings: content_translation: - enabled: false + enabled: true bundle_settings: untranslatable_fields_hide: '0' id: menu_link_content.menu_link_content target_entity_type_id: menu_link_content target_bundle: menu_link_content default_langcode: site_default -language_alterable: false +language_alterable: true diff --git a/config/sync/language/es/block.block.bulma_main_menu.yml b/config/sync/language/es/block.block.bulma_main_menu.yml new file mode 100644 index 0000000..4d2bdfa --- /dev/null +++ b/config/sync/language/es/block.block.bulma_main_menu.yml @@ -0,0 +1,2 @@ +settings: + label: Navegación diff --git a/config/sync/language/es/block.block.octavia_main_menu.yml b/config/sync/language/es/block.block.octavia_main_menu.yml new file mode 100644 index 0000000..4d2bdfa --- /dev/null +++ b/config/sync/language/es/block.block.octavia_main_menu.yml @@ -0,0 +1,2 @@ +settings: + label: Navegación diff --git a/config/sync/language/es/core.entity_view_mode.paragraph.preview.yml b/config/sync/language/es/core.entity_view_mode.paragraph.preview.yml new file mode 100644 index 0000000..ded3edb --- /dev/null +++ b/config/sync/language/es/core.entity_view_mode.paragraph.preview.yml @@ -0,0 +1 @@ +label: 'Vista previa' diff --git a/config/sync/language/es/system.menu.main.yml b/config/sync/language/es/system.menu.main.yml new file mode 100644 index 0000000..1599e4f --- /dev/null +++ b/config/sync/language/es/system.menu.main.yml @@ -0,0 +1,2 @@ +label: Navegación +description: 'Sección de enlaces' diff --git a/config/sync/language/es/webform.settings.yml b/config/sync/language/es/webform.settings.yml new file mode 100644 index 0000000..fbac193 --- /dev/null +++ b/config/sync/language/es/webform.settings.yml @@ -0,0 +1,3 @@ +settings: + default_preview_next_button_label: 'Vista previa' + default_preview_label: 'Vista previa' diff --git a/config/sync/paragraphs_features.settings.yml b/config/sync/paragraphs_features.settings.yml new file mode 100644 index 0000000..bffe6e0 --- /dev/null +++ b/config/sync/paragraphs_features.settings.yml @@ -0,0 +1,3 @@ +dropdown_to_button: true +_core: + default_config_hash: lQErqdedK_5v01xVINKpMQnPQNpp4vS6oMsdNYbPfTI diff --git a/config/sync/syslog.settings.yml b/config/sync/syslog.settings.yml new file mode 100644 index 0000000..272f915 --- /dev/null +++ b/config/sync/syslog.settings.yml @@ -0,0 +1,5 @@ +identity: drupal +facility: 128 +format: '!base_url|!timestamp|!type|!ip|!request_uri|!referer|!uid|!link|!message' +_core: + default_config_hash: vdXLRPZRg35PBykBRRXr6RTql5EJR_fUi2kxyZ8c5m0 diff --git a/config/sync/views.view.taxonomy_term.yml b/config/sync/views.view.taxonomy_term.yml index a1182a1..cfde60e 100644 --- a/config/sync/views.view.taxonomy_term.yml +++ b/config/sync/views.view.taxonomy_term.yml @@ -142,46 +142,6 @@ display: reduce_duplicates: false plugin_id: taxonomy_index_tid filters: - langcode: - id: langcode - table: node_field_data - field: langcode - relationship: none - group_type: group - admin_label: '' - operator: in - value: - '***LANGUAGE_language_content***': '***LANGUAGE_language_content***' - group: 1 - exposed: false - expose: - operator_id: '' - label: '' - description: '' - use_operator: false - operator: '' - identifier: '' - required: false - remember: false - multiple: false - remember_roles: - authenticated: authenticated - reduce: false - is_grouped: false - group_info: - label: '' - description: '' - identifier: '' - optional: true - widget: select - multiple: false - remember: false - default_group: All - default_group_multiple: { } - group_items: { } - plugin_id: language - entity_type: node - entity_field: langcode status: id: status table: taxonomy_index @@ -677,6 +637,8 @@ display: defaults: fields: false relationships: false + filters: false + filter_groups: false relationships: nid: id: nid @@ -687,6 +649,47 @@ display: admin_label: node required: true plugin_id: standard + filters: + status: + id: status + table: taxonomy_index + field: status + relationship: none + group_type: group + admin_label: '' + operator: '=' + value: '1' + group: 1 + exposed: false + expose: + operator_id: '' + label: '' + description: '' + use_operator: false + operator: '' + identifier: '' + required: false + remember: false + multiple: false + remember_roles: + authenticated: authenticated + is_grouped: false + group_info: + label: '' + description: '' + identifier: '' + optional: true + widget: select + multiple: false + remember: false + default_group: All + default_group_multiple: { } + group_items: { } + plugin_id: boolean + filter_groups: + operator: AND + groups: + 1: AND cache_metadata: contexts: - 'languages:language_content' diff --git a/web/modules/custom/drutopia_creative_license/config/install/config_snapshot.snapshot.config_sync.module.drutopia_creative_license.yml b/web/modules/custom/drutopia_creative_license/config/install/config_snapshot.snapshot.config_sync.module.drutopia_creative_license.yml new file mode 100644 index 0000000..ce195e4 --- /dev/null +++ b/web/modules/custom/drutopia_creative_license/config/install/config_snapshot.snapshot.config_sync.module.drutopia_creative_license.yml @@ -0,0 +1,81 @@ +langcode: en +status: true +dependencies: + module: + - drutopia_creative_license +id: config_sync.module.drutopia_creative_license +snapshotSet: config_sync +extensionType: module +extensionName: drutopia_creative_license +items: + - + collection: '' + name: core.entity_view_display.taxonomy_term.license.default + data: + langcode: en + status: true + dependencies: + config: + - taxonomy.vocabulary.license + module: + - ds + - text + third_party_settings: + ds: + layout: + id: layout_onecol + library: layout_discovery/onecol + disable_css: false + entity_classes: all_classes + settings: { } + regions: + content: + - description + id: taxonomy_term.license.default + targetEntityType: taxonomy_term + bundle: license + mode: default + content: + description: + label: hidden + type: text_default + weight: 0 + region: content + settings: { } + third_party_settings: { } + hidden: { } + - + collection: '' + name: field.storage.node.field_license + data: + langcode: en + status: true + dependencies: + module: + - node + - taxonomy + id: node.field_license + field_name: field_license + entity_type: node + type: entity_reference + settings: + target_type: taxonomy_term + module: core + locked: false + cardinality: 1 + translatable: true + indexes: { } + persist_with_no_fields: false + custom_storage: false + - + collection: '' + name: taxonomy.vocabulary.license + data: + langcode: en + status: true + dependencies: { } + name: License + vid: license + description: '' + hierarchy: 0 + weight: 0 diff --git a/web/modules/custom/drutopia_creative_license/config/install/core.base_field_override.taxonomy_term.license.changed.yml b/web/modules/custom/drutopia_creative_license/config/install/core.base_field_override.taxonomy_term.license.changed.yml new file mode 100644 index 0000000..6546bf4 --- /dev/null +++ b/web/modules/custom/drutopia_creative_license/config/install/core.base_field_override.taxonomy_term.license.changed.yml @@ -0,0 +1,17 @@ +langcode: en +status: true +dependencies: + config: + - taxonomy.vocabulary.license +id: taxonomy_term.license.changed +field_name: changed +entity_type: taxonomy_term +bundle: license +label: Changed +description: 'The time that the term was last edited.' +required: false +translatable: false +default_value: { } +default_value_callback: '' +settings: { } +field_type: changed diff --git a/web/modules/custom/drutopia_creative_license/config/install/core.base_field_override.taxonomy_term.license.description.yml b/web/modules/custom/drutopia_creative_license/config/install/core.base_field_override.taxonomy_term.license.description.yml new file mode 100644 index 0000000..8b9cbed --- /dev/null +++ b/web/modules/custom/drutopia_creative_license/config/install/core.base_field_override.taxonomy_term.license.description.yml @@ -0,0 +1,19 @@ +langcode: en +status: true +dependencies: + config: + - taxonomy.vocabulary.license + module: + - text +id: taxonomy_term.license.description +field_name: description +entity_type: taxonomy_term +bundle: license +label: Description +description: '' +required: false +translatable: false +default_value: { } +default_value_callback: '' +settings: { } +field_type: text_long diff --git a/web/modules/custom/drutopia_creative_license/config/install/core.base_field_override.taxonomy_term.license.metatag.yml b/web/modules/custom/drutopia_creative_license/config/install/core.base_field_override.taxonomy_term.license.metatag.yml new file mode 100644 index 0000000..db528d1 --- /dev/null +++ b/web/modules/custom/drutopia_creative_license/config/install/core.base_field_override.taxonomy_term.license.metatag.yml @@ -0,0 +1,17 @@ +langcode: en +status: true +dependencies: + config: + - taxonomy.vocabulary.license +id: taxonomy_term.license.metatag +field_name: metatag +entity_type: taxonomy_term +bundle: license +label: Metatags +description: 'The meta tags for the entity.' +required: false +translatable: false +default_value: { } +default_value_callback: '' +settings: { } +field_type: map diff --git a/web/modules/custom/drutopia_creative_license/config/install/core.base_field_override.taxonomy_term.license.name.yml b/web/modules/custom/drutopia_creative_license/config/install/core.base_field_override.taxonomy_term.license.name.yml new file mode 100644 index 0000000..9cb9b59 --- /dev/null +++ b/web/modules/custom/drutopia_creative_license/config/install/core.base_field_override.taxonomy_term.license.name.yml @@ -0,0 +1,17 @@ +langcode: en +status: true +dependencies: + config: + - taxonomy.vocabulary.license +id: taxonomy_term.license.name +field_name: name +entity_type: taxonomy_term +bundle: license +label: Name +description: '' +required: true +translatable: false +default_value: { } +default_value_callback: '' +settings: { } +field_type: string diff --git a/web/modules/custom/drutopia_creative_license/config/install/core.base_field_override.taxonomy_term.license.path.yml b/web/modules/custom/drutopia_creative_license/config/install/core.base_field_override.taxonomy_term.license.path.yml new file mode 100644 index 0000000..91f2b4d --- /dev/null +++ b/web/modules/custom/drutopia_creative_license/config/install/core.base_field_override.taxonomy_term.license.path.yml @@ -0,0 +1,19 @@ +langcode: en +status: true +dependencies: + config: + - taxonomy.vocabulary.license + module: + - path +id: taxonomy_term.license.path +field_name: path +entity_type: taxonomy_term +bundle: license +label: 'URL alias' +description: '' +required: false +translatable: false +default_value: { } +default_value_callback: '' +settings: { } +field_type: path diff --git a/web/modules/custom/drutopia_creative_license/config/install/core.base_field_override.taxonomy_term.license.status.yml b/web/modules/custom/drutopia_creative_license/config/install/core.base_field_override.taxonomy_term.license.status.yml new file mode 100644 index 0000000..99aac81 --- /dev/null +++ b/web/modules/custom/drutopia_creative_license/config/install/core.base_field_override.taxonomy_term.license.status.yml @@ -0,0 +1,21 @@ +langcode: en +status: true +dependencies: + config: + - taxonomy.vocabulary.license +id: taxonomy_term.license.status +field_name: status +entity_type: taxonomy_term +bundle: license +label: Published +description: '' +required: false +translatable: false +default_value: + - + value: 1 +default_value_callback: '' +settings: + on_label: 'On' + off_label: 'Off' +field_type: boolean diff --git a/web/modules/custom/drutopia_creative_license/config/install/core.entity_form_display.taxonomy_term.license.default.yml b/web/modules/custom/drutopia_creative_license/config/install/core.entity_form_display.taxonomy_term.license.default.yml new file mode 100644 index 0000000..a653636 --- /dev/null +++ b/web/modules/custom/drutopia_creative_license/config/install/core.entity_form_display.taxonomy_term.license.default.yml @@ -0,0 +1,54 @@ +langcode: en +status: true +dependencies: + config: + - field.field.taxonomy_term.license.field_license_icon + - image.style.thumbnail + - taxonomy.vocabulary.license + module: + - image + - path + - text +id: taxonomy_term.license.default +targetEntityType: taxonomy_term +bundle: license +mode: default +content: + description: + type: text_textfield + weight: 0 + region: content + settings: + size: 60 + placeholder: '' + third_party_settings: { } + field_license_icon: + weight: 31 + settings: + progress_indicator: throbber + preview_image_style: thumbnail + third_party_settings: { } + type: image_image + region: content + langcode: + type: language_select + weight: 2 + region: content + settings: + include_locked: true + third_party_settings: { } + name: + type: string_textfield + weight: -5 + region: content + settings: + size: 60 + placeholder: '' + third_party_settings: { } + path: + type: path + weight: 30 + region: content + settings: { } + third_party_settings: { } +hidden: { } diff --git a/web/modules/custom/drutopia_creative_license/config/install/core.entity_view_display.taxonomy_term.license.default.yml b/web/modules/custom/drutopia_creative_license/config/install/core.entity_view_display.taxonomy_term.license.default.yml index c3bf350..fb6afca 100644 --- a/web/modules/custom/drutopia_creative_license/config/install/core.entity_view_display.taxonomy_term.license.default.yml +++ b/web/modules/custom/drutopia_creative_license/config/install/core.entity_view_display.taxonomy_term.license.default.yml @@ -2,9 +2,12 @@ langcode: en status: true dependencies: config: + - field.field.taxonomy_term.license.field_license_icon + - image.style.small_landscape - taxonomy.vocabulary.license module: - ds + - image - text third_party_settings: ds: @@ -16,6 +19,7 @@ third_party_settings: settings: { } regions: content: + - field_license_icon - description id: taxonomy_term.license.default targetEntityType: taxonomy_term @@ -25,8 +29,18 @@ content: description: label: hidden type: text_default - weight: 0 + weight: 1 region: content settings: { } third_party_settings: { } -hidden: { } + field_license_icon: + weight: 0 + label: visually_hidden + settings: + image_style: small_landscape + image_link: '' + third_party_settings: { } + type: image + region: content +hidden: + langcode: true diff --git a/web/modules/custom/drutopia_creative_license/config/install/core.entity_view_display.taxonomy_term.license.full.yml b/web/modules/custom/drutopia_creative_license/config/install/core.entity_view_display.taxonomy_term.license.full.yml new file mode 100644 index 0000000..3441dc2 --- /dev/null +++ b/web/modules/custom/drutopia_creative_license/config/install/core.entity_view_display.taxonomy_term.license.full.yml @@ -0,0 +1,47 @@ +langcode: en +status: true +dependencies: + config: + - core.entity_view_mode.taxonomy_term.full + - field.field.taxonomy_term.license.field_license_icon + - image.style.small_landscape + - taxonomy.vocabulary.license + module: + - ds + - image + - text +third_party_settings: + ds: + layout: + id: layout_onecol + library: layout_discovery/onecol + disable_css: false + entity_classes: all_classes + settings: { } + regions: + content: + - field_license_icon + - description +id: taxonomy_term.license.full +targetEntityType: taxonomy_term +bundle: license +mode: full +content: + description: + label: hidden + type: text_default + weight: 1 + region: content + settings: { } + third_party_settings: { } + field_license_icon: + weight: 0 + label: visually_hidden + settings: + image_style: small_landscape + image_link: '' + third_party_settings: { } + type: image + region: content +hidden: + langcode: true diff --git a/web/modules/custom/drutopia_creative_license/config/install/core.entity_view_display.taxonomy_term.license.teaser.yml b/web/modules/custom/drutopia_creative_license/config/install/core.entity_view_display.taxonomy_term.license.teaser.yml new file mode 100644 index 0000000..184e50b --- /dev/null +++ b/web/modules/custom/drutopia_creative_license/config/install/core.entity_view_display.taxonomy_term.license.teaser.yml @@ -0,0 +1,47 @@ +langcode: en +status: true +dependencies: + config: + - core.entity_view_mode.taxonomy_term.teaser + - field.field.taxonomy_term.license.field_license_icon + - image.style.small_landscape + - taxonomy.vocabulary.license + module: + - ds + - image + - text +third_party_settings: + ds: + layout: + id: layout_onecol + library: layout_discovery/onecol + disable_css: false + entity_classes: all_classes + settings: { } + regions: + content: + - field_license_icon + - description +id: taxonomy_term.license.teaser +targetEntityType: taxonomy_term +bundle: license +mode: teaser +content: + description: + label: hidden + type: text_default + weight: 1 + region: content + settings: { } + third_party_settings: { } + field_license_icon: + weight: 0 + label: visually_hidden + settings: + image_style: small_landscape + image_link: '' + third_party_settings: { } + type: image + region: content +hidden: + langcode: true diff --git a/web/modules/custom/drutopia_creative_license/config/install/field.field.taxonomy_term.license.field_license_icon.yml b/web/modules/custom/drutopia_creative_license/config/install/field.field.taxonomy_term.license.field_license_icon.yml new file mode 100644 index 0000000..77d8d51 --- /dev/null +++ b/web/modules/custom/drutopia_creative_license/config/install/field.field.taxonomy_term.license.field_license_icon.yml @@ -0,0 +1,37 @@ +langcode: en +status: true +dependencies: + config: + - field.storage.taxonomy_term.field_license_icon + - taxonomy.vocabulary.license + module: + - image +id: taxonomy_term.license.field_license_icon +field_name: field_license_icon +entity_type: taxonomy_term +bundle: license +label: Icon +description: '' +required: false +translatable: false +default_value: { } +default_value_callback: '' +settings: + file_directory: '[date:custom:Y]-[date:custom:m]' + file_extensions: 'png gif jpg jpeg' + max_filesize: '' + max_resolution: '' + min_resolution: '' + alt_field: true + alt_field_required: true + title_field: false + title_field_required: false + default_image: + uuid: '' + alt: '' + title: '' + width: null + height: null + handler: 'default:file' + handler_settings: { } +field_type: image diff --git a/web/modules/custom/drutopia_creative_license/drutopia_creative_license.info.yml b/web/modules/custom/drutopia_creative_license/drutopia_creative_license.info.yml index 5449718..bb4db06 100644 --- a/web/modules/custom/drutopia_creative_license/drutopia_creative_license.info.yml +++ b/web/modules/custom/drutopia_creative_license/drutopia_creative_license.info.yml @@ -4,9 +4,15 @@ core: 8.x package: Drutopia dependencies: - config_actions + - config_snapshot - drutopia_core + - drutopia_creative_license + - ds - field - field_group + - image - node + - path - taxonomy + - text version: 8.x-1.0-alpha1 diff --git a/web/themes/custom/agarica/agarica.theme b/web/themes/custom/agarica/agarica.theme index 7d67d6e..02904d3 100644 --- a/web/themes/custom/agarica/agarica.theme +++ b/web/themes/custom/agarica/agarica.theme @@ -1,25 +1,65 @@ isFrontPage() ? '' : ''; - $type = 'language_interface'; - $language_links = $languageManager->getLanguageSwitchLinks($type, Url::fromRoute($route_name)); - $variables['language'] = []; - foreach ($language_links->links as $langcode => $link) { - $language_links->links[$langcode]['attributes']['class'][] = 'navbar-item'; - $language_links->links[$langcode]['title'] = $langcode; - } - $variables['language'] = [ - '#theme' => 'links__language_block', - '#links' => $language_links->links, - '#set_active_class' => TRUE, - ]; - +function agarica_preprocess_region__footer(&$variables) { + $block = Block::load('languageswitcher'); + $block_content = \Drupal::entityTypeManager() + ->getViewBuilder('block') + ->view($block); + $variables['language_switcher'] = $block_content; + $variables['language_switcher_link'] = agarica_languague_switch_link(); +} + +/** + * Provides a link to switch to another language. + */ +function agarica_languague_switch_link() { + $derivative_id = 'language_interface'; + $route = \Drupal::getContainer()->get('path.matcher')->isFrontPage() ? '' : ''; + $current_language = \Drupal::languageManager()->getCurrentLanguage($derivative_id)->getId(); + $links = \Drupal::languageManager()->getLanguageSwitchLinks($derivative_id, Url::fromRoute($route))->links; + $links['en']['title'] = 'Browse this site in English'; + $links['es']['title'] = 'Consulta este sitio en Español'; + $lid = ($current_language == 'en') ? 'es' : 'en'; + // Remove current language from the links + unset($links[$current_language]); + + // Check if the current path display an entity. + $entity = FALSE; + foreach (\Drupal::routeMatch()->getParameters() as $param) { + if ($param instanceof EntityInterface) { + $entity[] = $param; + } + } + + // Remove links if the content hasnt' been translated yet. + if ($entity) { + $has_translation = (method_exists($entity[0], 'getTranslationStatus')) ? $entity[0]->getTranslationStatus($lid) : FALSE; + $this_translation = ($has_translation && method_exists($entity[0], 'getTranslation')) ? $entity[0]->getTranslation($lid) : FALSE; + $access_translation = ($this_translation && method_exists($this_translation, 'access') && $this_translation->access('view')) ? TRUE : FALSE; + if (!$this_translation || !$access_translation || $current_language == $lid) { + unset($links[$lid]); + } + } + + $links_render_array = []; + // Transform the links to arrays that can be renderer. + foreach ($links as $language => $link) { + $links_render_array[] = [ + '#type' => 'link', + '#url' => $link['url'], + '#title' => $link['title'], + '#options' => [ + 'language' => $link['language'], + ], + ]; + } + + return $links_render_array; } diff --git a/web/themes/custom/agarica/patternlibrary b/web/themes/custom/agarica/patternlibrary index bd9add6..610b794 160000 --- a/web/themes/custom/agarica/patternlibrary +++ b/web/themes/custom/agarica/patternlibrary @@ -1 +1 @@ -Subproject commit bd9add651fde3d6d6465fd823dbc3964d6daf397 +Subproject commit 610b7948b5dd68882381fe0338c9d1f8732dab53