Skip to content
Snippets Groups Projects
Commit 018348aa authored by project update bot's avatar project update bot Committed by manish vaity
Browse files

Issue #3430542 by manishvaity, shashi_shekhar_18oct: Automated Drupal 11...

Issue #3430542 by manishvaity, shashi_shekhar_18oct: Automated Drupal 11 compatibility fixes for fieldblock
parent 15b91798
No related branches found
No related tags found
1 merge request!5Automated Project Update Bot fixes
Pipeline #379422 passed
# This file is a template, and might need editing before it works on your project.
# This is a sample GitLab CI/CD configuration file that should run without any modifications.
# It demonstrates a basic 3 stage CI/CD pipeline. Instead of real tests or scripts,
# it uses echo commands to simulate the pipeline execution.
#
# A pipeline is composed of independent jobs that run scripts, grouped into stages.
# Stages run in sequential order, but jobs within stages run in parallel.
#
# For more information, see: https://docs.gitlab.com/ee/ci/yaml/index.html#stages
#
# You can copy and paste this template into a new `.gitlab-ci.yml` file.
# You should not add this template to an existing `.gitlab-ci.yml` file by using the `include:` keyword.
#
# To contribute improvements to CI/CD templates, please follow the Development guide at:
# https://docs.gitlab.com/ee/development/cicd/templates.html
# This specific template is located at:
# https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Getting-Started.gitlab-ci.yml
stages: # List of stages for jobs, and their order of execution
- build
- test
- deploy
build-job: # This job runs in the build stage, which runs first.
stage: build
script:
- echo "Compiling the code..."
- echo "Compile complete."
unit-test-job: # This job runs in the test stage.
stage: test # It only starts when the job in the build stage completes successfully.
script:
- echo "Running unit tests... This will take about 60 seconds."
- sleep 60
- echo "Code coverage is 90%"
lint-test-job: # This job also runs in the test stage.
stage: test # It can run at the same time as unit-test-job (in parallel).
script:
- echo "Linting code... This will take about 10 seconds."
- sleep 10
- echo "No lint issues found."
deploy-job: # This job runs in the deploy stage.
stage: deploy # It only runs when *both* jobs in the test stage complete successfully.
environment: production
script:
- echo "Deploying application..."
- echo "Application successfully deployed."
name: Field as Block
description: 'Display fields of the current entity as blocks.'
type: module
core_version_requirement: ^8.7.7 || ^9 || ^10
core_version_requirement: ^9 || ^10 || ^11 || ^12
dependencies:
- drupal:block
configure: fieldblock.field_block_config_form
......@@ -8,10 +8,9 @@ use Drupal\Core\Entity\EntityTypeManagerInterface;
use Drupal\Core\Extension\ModuleHandlerInterface;
use Drupal\Core\Form\ConfigFormBase;
use Drupal\Core\Form\FormStateInterface;
use Drupal\Core\Config\ConfigFactoryInterface;
use Symfony\Component\DependencyInjection\ContainerInterface;
use Drupal\fieldblock\Controller\FieldBlockController;
use Drupal\fieldblock\BlockEntityStorage;
use Drupal\fieldblock\Controller\FieldBlockController;
use Symfony\Component\DependencyInjection\ContainerInterface;
/**
* Configuration for select Entity types and delete blocks of unused types.
......@@ -56,8 +55,6 @@ class FieldBlockConfigForm extends ConfigFormBase {
/**
* Constructs a \Drupal\fieldblock\Form\FieldBlockConfigForm object.
*
* @param \Drupal\Core\Config\ConfigFactoryInterface $config_factory
* The factory for configuration objects.
* @param \Drupal\Core\Entity\EntityTypeManagerInterface $entityTypeManager
* The entity type manager.
* @param \Drupal\fieldblock\BlockEntityStorage $storage
......@@ -67,8 +64,7 @@ class FieldBlockConfigForm extends ConfigFormBase {
* @param \Drupal\Core\Block\BlockManager $blockManager
* The block manager.
*/
public function __construct(ConfigFactoryInterface $config_factory, EntityTypeManagerInterface $entityTypeManager, BlockEntityStorage $storage, ModuleHandlerInterface $moduleHandler, BlockManager $blockManager) {
parent::__construct($config_factory);
public function __construct(EntityTypeManagerInterface $entityTypeManager, BlockEntityStorage $storage, ModuleHandlerInterface $moduleHandler, BlockManager $blockManager) {
$this->entityTypeManager = $entityTypeManager;
$this->storage = $storage;
$this->fieldblockController = new FieldBlockController();
......@@ -81,7 +77,6 @@ class FieldBlockConfigForm extends ConfigFormBase {
*/
public static function create(ContainerInterface $container) {
return new static(
$container->get('config.factory'),
$container->get('entity_type.manager'),
$container->get('fieldblock.block_storage'),
$container->get('module_handler'),
......
......@@ -15,8 +15,8 @@ use Drupal\Core\Field\FormatterInterface;
use Drupal\Core\Field\FormatterPluginManager;
use Drupal\Core\Form\FormHelper;
use Drupal\Core\Form\FormStateInterface;
use Drupal\Core\Language\LanguageManagerInterface;
use Drupal\Core\Form\SubformStateInterface;
use Drupal\Core\Language\LanguageManagerInterface;
use Drupal\Core\Plugin\ContainerFactoryPluginInterface;
use Drupal\Core\Routing\RouteMatchInterface;
use Drupal\Core\Session\AccountInterface;
......@@ -158,7 +158,7 @@ class FieldBlock extends BlockBase implements ContainerFactoryPluginInterface {
$options = $this->formatterPluginManager->getOptions($field_definition->getType());
foreach ($options as $id => $label) {
$definition = $this->formatterPluginManager->getDefinition($id, FALSE);
$formatter_plugin_class = isset($definition['class']) ? $definition['class'] : NULL;
$formatter_plugin_class = $definition['class'] ?? NULL;
$applicable = $formatter_plugin_class instanceof FormatterInterface && $formatter_plugin_class::isApplicable($field_definition);
if ($applicable) {
unset($options[$id]);
......@@ -338,8 +338,12 @@ class FieldBlock extends BlockBase implements ContainerFactoryPluginInterface {
public function blockSubmit($form, FormStateInterface $form_state) {
$this->configuration['label_from_field'] = $form_state->getValue('label_from_field');
$this->configuration['field_name'] = $form_state->getValue('field_name');
$this->configuration['formatter_id'] = $form_state->getValue(['formatter', 'id'], '');
$this->configuration['formatter_settings'] = $form_state->getValue(['formatter', 'settings'], []);
$this->configuration['formatter_id'] = $form_state->getValue(['formatter',
'id',
], '');
$this->configuration['formatter_settings'] = $form_state->getValue(['formatter',
'settings',
], []);
}
/**
......
......@@ -6,8 +6,8 @@ use Drupal\Component\Plugin\Derivative\DeriverBase;
use Drupal\Core\Entity\EntityTypeManagerInterface;
use Drupal\Core\Plugin\Discovery\ContainerDeriverInterface;
use Drupal\Core\StringTranslation\StringTranslationTrait;
use Symfony\Component\DependencyInjection\ContainerInterface;
use Drupal\fieldblock\Controller\FieldBlockController;
use Symfony\Component\DependencyInjection\ContainerInterface;
/**
* Provides block plugin definitions for fieldblock blocks.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment