Issue #3208849 by yogeshmpawar, cilefen, phenaproxima, mohit_aghera, larowlan, danflanagan8: OEmbedWidget does not display the field's help text, only its own message
(cherry picked from commit 2c979f05ce
)
merge-requests/1414/head
parent
c1cc0d5c5d
commit
1a5cc0d9ab
|
@ -36,7 +36,7 @@ class OEmbedWidget extends StringTextfieldWidget {
|
|||
$source = $items->getEntity()->getSource();
|
||||
$message = $this->t('You can link to media from the following services: @providers', ['@providers' => implode(', ', $source->getProviders())]);
|
||||
|
||||
if (!empty($element['#value']['#description'])) {
|
||||
if (!empty($element['value']['#description'])) {
|
||||
$element['value']['#description'] = [
|
||||
'#theme' => 'item_list',
|
||||
'#items' => [$element['value']['#description'], $message],
|
||||
|
|
|
@ -0,0 +1,43 @@
|
|||
<?php
|
||||
|
||||
namespace Drupal\Tests\media\Functional\FieldWidget;
|
||||
|
||||
use Drupal\field\Entity\FieldConfig;
|
||||
use Drupal\Tests\media\Functional\MediaFunctionalTestBase;
|
||||
|
||||
/**
|
||||
* @covers \Drupal\media\Plugin\Field\FieldWidget\OEmbedWidget
|
||||
*
|
||||
* @group media
|
||||
*/
|
||||
class OEmbedFieldWidgetTest extends MediaFunctionalTestBase {
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
protected $defaultTheme = 'stark';
|
||||
|
||||
/**
|
||||
* Tests that the oEmbed field widget shows the configured help text.
|
||||
*/
|
||||
public function testFieldWidgetHelpText() {
|
||||
$account = $this->drupalCreateUser(['create media']);
|
||||
$this->drupalLogin($account);
|
||||
|
||||
$media_type = $this->createMediaType('oembed:video');
|
||||
$source_field = $media_type->getSource()
|
||||
->getSourceFieldDefinition($media_type)
|
||||
->getName();
|
||||
|
||||
/** @var \Drupal\field\Entity\FieldConfig $field */
|
||||
$field = FieldConfig::loadByName('media', $media_type->id(), $source_field);
|
||||
$field->setDescription('This is help text for oEmbed field.')
|
||||
->save();
|
||||
|
||||
$this->drupalGet('media/add/' . $media_type->id());
|
||||
$assert_session = $this->assertSession();
|
||||
$assert_session->pageTextContains('This is help text for oEmbed field.');
|
||||
$assert_session->pageTextContains('You can link to media from the following services: YouTube, Vimeo');
|
||||
}
|
||||
|
||||
}
|
Loading…
Reference in New Issue