Issue #2231413 by blueminds, tim.plunkett: Link field does not accept a valid path alias.
parent
6f0f10b2aa
commit
1efd2ad05f
|
@ -207,6 +207,12 @@ class LinkWidget extends WidgetBase {
|
||||||
try {
|
try {
|
||||||
$parsed_url = UrlHelper::parse($value['url']);
|
$parsed_url = UrlHelper::parse($value['url']);
|
||||||
|
|
||||||
|
// If internal links are supported, look up whether the given value is
|
||||||
|
// a path alias and store the system path instead.
|
||||||
|
if ($this->supportsInternalLinks() && !UrlHelper::isExternal($value['url'])) {
|
||||||
|
$parsed_url['path'] = \Drupal::service('path.alias_manager.cached')->getSystemPath($parsed_url['path']);
|
||||||
|
}
|
||||||
|
|
||||||
$url = Url::createFromPath($parsed_url['path']);
|
$url = Url::createFromPath($parsed_url['path']);
|
||||||
$url->setOption('query', $parsed_url['query']);
|
$url->setOption('query', $parsed_url['query']);
|
||||||
$url->setOption('fragment', $parsed_url['fragment']);
|
$url->setOption('fragment', $parsed_url['fragment']);
|
||||||
|
|
|
@ -103,12 +103,15 @@ class LinkFieldTest extends WebTestBase {
|
||||||
$this->assertFieldByName("{$field_name}[0][url]", '', 'Link URL field is displayed');
|
$this->assertFieldByName("{$field_name}[0][url]", '', 'Link URL field is displayed');
|
||||||
$this->assertRaw('placeholder="http://example.com"');
|
$this->assertRaw('placeholder="http://example.com"');
|
||||||
|
|
||||||
|
// Create a path alias.
|
||||||
|
\Drupal::service('path.alias_storage')->save('admin', 'a/path/alias');
|
||||||
// Define some valid URLs.
|
// Define some valid URLs.
|
||||||
$valid_external_entries = array(
|
$valid_external_entries = array(
|
||||||
'http://www.example.com/',
|
'http://www.example.com/',
|
||||||
);
|
);
|
||||||
$valid_internal_entries = array(
|
$valid_internal_entries = array(
|
||||||
'entity_test/add',
|
'entity_test/add',
|
||||||
|
'a/path/alias',
|
||||||
);
|
);
|
||||||
|
|
||||||
// Define some invalid URLs.
|
// Define some invalid URLs.
|
||||||
|
|
Loading…
Reference in New Issue