Skip to content
Snippets Groups Projects
Commit 56a119fe authored by Martin Anderson-Clutz's avatar Martin Anderson-Clutz Committed by Jakob P
Browse files

Issue #3427196 by mandclu: Can't view videos, PDFs, or documents if the DAM...

Issue #3427196 by mandclu: Can't view videos, PDFs, or documents if the DAM domain and CDN subdomain differ
parent 43b16db9
No related branches found
No related tags found
No related merge requests found
...@@ -90,18 +90,23 @@ final class EmbedCodeFactory implements TrustedCallbackInterface { ...@@ -90,18 +90,23 @@ final class EmbedCodeFactory implements TrustedCallbackInterface {
$external_id = $source->getMetadata($media, 'external_id'); $external_id = $source->getMetadata($media, 'external_id');
} }
// Get the domain for the embed code.
$embeds = $source->getMetadata($media, 'embeds');
$original = parse_url($embeds['original']['url']);
$domain = "https://" . $original['host'];
switch ($source->getDerivativeId()) { switch ($source->getDerivativeId()) {
case 'documents': case 'documents':
case 'pdf': case 'pdf':
$embed = self::renderDocumentsPdfAsset(self::getCdnDomain(), $external_id, $format, $media->getName(), self::encodeFilename($media->getName())); $embed = self::renderDocumentsPdfAsset($domain, $external_id, $format, $media->getName(), self::encodeFilename($media->getName()));
break; break;
case 'video': case 'video':
$embed = self::renderVideoAsset(self::getCdnDomain(), $external_id, $format, $media->getName(), self::encodeFilename($media->getName())); $embed = self::renderVideoAsset($domain, $external_id, $format, $media->getName(), self::encodeFilename($media->getName()));
break; break;
case 'spinset': case 'spinset':
$embed = self::renderSpinsetAsset(self::getCdnDomain(), $external_id, $format, $media->getName(), self::encodeFilename($media->getName())); $embed = self::renderSpinsetAsset($domain, $external_id, $format, $media->getName(), self::encodeFilename($media->getName()));
break; break;
case 'image': case 'image':
...@@ -423,20 +428,6 @@ final class EmbedCodeFactory implements TrustedCallbackInterface { ...@@ -423,20 +428,6 @@ final class EmbedCodeFactory implements TrustedCallbackInterface {
return ['postRenderDamLink']; return ['postRenderDamLink'];
} }
/**
* Get Acquia CDN domain.
*/
private static function getCdnDomain() {
static $domain;
if ($domain === NULL) {
$acquia_dam_domain = \Drupal::configFactory()->get('acquia_dam.settings')->get('domain');
$subdomain = explode('.', $acquia_dam_domain)[0];
$domain = "https://{$subdomain}.widen.net";
}
return $domain;
}
/** /**
* Replaces certain characters in the filename so it matches the DAM ones. * Replaces certain characters in the filename so it matches the DAM ones.
* *
......
...@@ -451,31 +451,31 @@ class MediaLibraryIntegrationTest extends AcquiaDamWebDriverTestBase { ...@@ -451,31 +451,31 @@ class MediaLibraryIntegrationTest extends AcquiaDamWebDriverTestBase {
'0324b0b2-5293-4aa0-b0aa-c85b003395e2', '0324b0b2-5293-4aa0-b0aa-c85b003395e2',
'PDF', 'PDF',
'inline_view', 'inline_view',
'<iframe src="https://test.widen.net/content/8a1ouvfchk/pdf/Explorer-owners-manual.pdf" title="Document for Explorer owner\'s manual.pdf" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen=""></iframe>', '<iframe src="https://laser.widen.net/content/8a1ouvfchk/pdf/Explorer-owners-manual.pdf" title="Document for Explorer owner\'s manual.pdf" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen=""></iframe>',
]; ];
yield 'pdf: Text linked to viewer with Download' => [ yield 'pdf: Text linked to viewer with Download' => [
'0324b0b2-5293-4aa0-b0aa-c85b003395e2', '0324b0b2-5293-4aa0-b0aa-c85b003395e2',
'PDF', 'PDF',
'link_text_download', 'link_text_download',
'<a href="https://test.widen.net/view/pdf/8a1ouvfchk/Explorer-owners-manual.pdf?t.download=true" target="_blank">Explorer owner\'s manual.pdf</a>', '<a href="https://laser.widen.net/view/pdf/8a1ouvfchk/Explorer-owners-manual.pdf?t.download=true" target="_blank">Explorer owner\'s manual.pdf</a>',
]; ];
yield 'pdf: Thumbnail linked to viewer with download' => [ yield 'pdf: Thumbnail linked to viewer with download' => [
'0324b0b2-5293-4aa0-b0aa-c85b003395e2', '0324b0b2-5293-4aa0-b0aa-c85b003395e2',
'PDF', 'PDF',
'link_thumbnail_download', 'link_thumbnail_download',
'<a href="https://test.widen.net/view/pdf/8a1ouvfchk/Explorer-owners-manual.pdf?t.download=true" target="_blank"><img src="https://test.widen.net/content/8a1ouvfchk/jpeg/Explorer-owners-manual.jpg" width="300" height="300" alt="Explorer owner\'s manual.pdf preview" loading="lazy">', '<a href="https://laser.widen.net/view/pdf/8a1ouvfchk/Explorer-owners-manual.pdf?t.download=true" target="_blank"><img src="https://laser.widen.net/content/8a1ouvfchk/jpeg/Explorer-owners-manual.jpg" width="300" height="300" alt="Explorer owner\'s manual.pdf preview" loading="lazy">',
]; ];
yield 'video: Inline player with download' => [ yield 'video: Inline player with download' => [
'efb03f75-3c42-497b-baa9-5ec79d1f56af', 'efb03f75-3c42-497b-baa9-5ec79d1f56af',
'Video', 'Video',
'inline_view_download', 'inline_view_download',
'<div style="position:relative;width:100%;height:0;padding-bottom:56.25%;"> <iframe src="https://test.widen.net/view/video/mnmc58hipn/SD-Social-Promo.mp4?t.download=true" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen="" frameborder="0" allowtransparency="true" scrolling="no" style="position:absolute;top:0;left:0;width:100%;height:100%;"></iframe></div>', '<div style="position:relative;width:100%;height:0;padding-bottom:56.25%;"> <iframe src="https://laser.widen.net/view/video/mnmc58hipn/SD-Social-Promo.mp4?t.download=true" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen="" frameborder="0" allowtransparency="true" scrolling="no" style="position:absolute;top:0;left:0;width:100%;height:100%;"></iframe></div>',
]; ];
yield 'Spinset: Text linked to viewer without Download' => [ yield 'Spinset: Text linked to viewer without Download' => [
'eec6d92b-6452-4ab6-894a-b4d0826e65ba', 'eec6d92b-6452-4ab6-894a-b4d0826e65ba',
'Spinset', 'Spinset',
'link_text', 'link_text',
'<a href="https://test.widen.net/view/spinset/yjezd5iwh5/eudaimonia_spin.zip" target="_blank">eudaimonia_spin.zip</a>', '<a href="https://laser.widen.net/view/spinset/yjezd5iwh5/eudaimonia_spin.zip" target="_blank">eudaimonia_spin.zip</a>',
]; ];
yield 'Image: Original' => [ yield 'Image: Original' => [
'56ff14de-02cd-41b5-9a73-c917eab19abf', '56ff14de-02cd-41b5-9a73-c917eab19abf',
...@@ -487,7 +487,7 @@ class MediaLibraryIntegrationTest extends AcquiaDamWebDriverTestBase { ...@@ -487,7 +487,7 @@ class MediaLibraryIntegrationTest extends AcquiaDamWebDriverTestBase {
'abab96ac-c2ed-40b1-aaf7-56a52f898230', 'abab96ac-c2ed-40b1-aaf7-56a52f898230',
'Documents', 'Documents',
'link_text_download', 'link_text_download',
'<a href="https://test.widen.net/view/pdf/rfnwimkigc/Best-Practice---Content-Architecture---v2.1.pptx?t.download=true" target="_blank">Best Practice - Content Architecture - v2.1.pptx</a>', '<a href="https://laser.widen.net/view/pdf/rfnwimkigc/Best-Practice---Content-Architecture---v2.1.pptx?t.download=true" target="_blank">Best Practice - Content Architecture - v2.1.pptx</a>',
]; ];
} }
...@@ -771,17 +771,17 @@ class MediaLibraryIntegrationTest extends AcquiaDamWebDriverTestBase { ...@@ -771,17 +771,17 @@ class MediaLibraryIntegrationTest extends AcquiaDamWebDriverTestBase {
[ [
'PDF', 'PDF',
'0324b0b2-5293-4aa0-b0aa-c85b003395e2', '0324b0b2-5293-4aa0-b0aa-c85b003395e2',
'<a href="https://test.widen.net/view/pdf/8a1ouvfchk/Explorer-owners-manual.pdf?t.download=true" target="_blank"><img src="https://test.widen.net/content/8a1ouvfchk/jpeg/Explorer-owners-manual.jpg" width="300" height="300" alt="Explorer owner\'s manual.pdf preview" loading="lazy">', '<a href="https://laser.widen.net/view/pdf/8a1ouvfchk/Explorer-owners-manual.pdf?t.download=true" target="_blank"><img src="https://laser.widen.net/content/8a1ouvfchk/jpeg/Explorer-owners-manual.jpg" width="300" height="300" alt="Explorer owner\'s manual.pdf preview" loading="lazy">',
], ],
[ [
'Video', 'Video',
'efb03f75-3c42-497b-baa9-5ec79d1f56af', 'efb03f75-3c42-497b-baa9-5ec79d1f56af',
'<iframe src="https://test.widen.net/view/video/mnmc58hipn/SD-Social-Promo.mp4" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen="" frameborder="0" allowtransparency="true" scrolling="no" style="position:absolute;top:0;left:0;width:100%;height:100%;"></iframe>', '<iframe src="https://laser.widen.net/view/video/mnmc58hipn/SD-Social-Promo.mp4" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen="" frameborder="0" allowtransparency="true" scrolling="no" style="position:absolute;top:0;left:0;width:100%;height:100%;"></iframe>',
], ],
[ [
'Spinset', 'Spinset',
'eec6d92b-6452-4ab6-894a-b4d0826e65ba', 'eec6d92b-6452-4ab6-894a-b4d0826e65ba',
'<a href="https://test.widen.net/view/spinset/yjezd5iwh5/eudaimonia_spin.zip" target="_blank">eudaimonia_spin.zip</a>', '<a href="https://laser.widen.net/view/spinset/yjezd5iwh5/eudaimonia_spin.zip" target="_blank">eudaimonia_spin.zip</a>',
], ],
[ [
'Image', 'Image',
...@@ -791,7 +791,7 @@ class MediaLibraryIntegrationTest extends AcquiaDamWebDriverTestBase { ...@@ -791,7 +791,7 @@ class MediaLibraryIntegrationTest extends AcquiaDamWebDriverTestBase {
[ [
'Documents', 'Documents',
'abab96ac-c2ed-40b1-aaf7-56a52f898230', 'abab96ac-c2ed-40b1-aaf7-56a52f898230',
'<a href="https://test.widen.net/content/rfnwimkigc/original/Best-Practice---Content-Architecture---v2.1.pptx?download=true" target="_blank">Best Practice - Content Architecture - v2.1.pptx</a>', '<a href="https://laser.widen.net/content/rfnwimkigc/original/Best-Practice---Content-Architecture---v2.1.pptx?download=true" target="_blank">Best Practice - Content Architecture - v2.1.pptx</a>',
], ],
]; ];
} }
......
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