diff --git a/extensions/amp-3q-player/0.1/test/test-amp-3q-player.js b/extensions/amp-3q-player/0.1/test/test-amp-3q-player.js index 8f986d368c85..19b4dce85f6a 100644 --- a/extensions/amp-3q-player/0.1/test/test-amp-3q-player.js +++ b/extensions/amp-3q-player/0.1/test/test-amp-3q-player.js @@ -42,13 +42,12 @@ describes.realWin('amp-3q-player', { } doc.body.appendChild(player); return player.build().then(() => { - const layoutPromise = player.layoutCallback(); + player.layoutCallback(); const iframe = player.querySelector('iframe'); player.implementation_.sdnBridge_({ source: iframe.contentWindow, data: JSON.stringify({data: 'ready'}), }); - return layoutPromise; }).then(() => { return player; }); diff --git a/extensions/amp-brid-player/0.1/test/test-amp-brid-player.js b/extensions/amp-brid-player/0.1/test/test-amp-brid-player.js index 0146927f3f2c..d088d7ee239e 100644 --- a/extensions/amp-brid-player/0.1/test/test-amp-brid-player.js +++ b/extensions/amp-brid-player/0.1/test/test-amp-brid-player.js @@ -57,7 +57,7 @@ describes.realWin('amp-brid-player', { }); }); doc.body.appendChild(bc); - return bc.build().then(() => bc.layoutCallback()).then(() => bc); + return bc.build().then(() => { bc.layoutCallback(); }).then(() => bc); } it('renders', () => { diff --git a/extensions/amp-dailymotion/0.1/test/test-amp-dailymotion.js b/extensions/amp-dailymotion/0.1/test/test-amp-dailymotion.js index 4dbad3d14c67..0d8ef532c3b5 100644 --- a/extensions/amp-dailymotion/0.1/test/test-amp-dailymotion.js +++ b/extensions/amp-dailymotion/0.1/test/test-amp-dailymotion.js @@ -43,7 +43,7 @@ describes.realWin('amp-dailymotion', { } doc.body.appendChild(dailymotion); return dailymotion.build().then(() => { - return dailymotion.layoutCallback(); + dailymotion.layoutCallback(); }).then(() => dailymotion); } diff --git a/extensions/amp-nexxtv-player/0.1/test/test-amp-nexxtv-player.js b/extensions/amp-nexxtv-player/0.1/test/test-amp-nexxtv-player.js index a0b828dcb08c..7632068d1611 100644 --- a/extensions/amp-nexxtv-player/0.1/test/test-amp-nexxtv-player.js +++ b/extensions/amp-nexxtv-player/0.1/test/test-amp-nexxtv-player.js @@ -44,7 +44,7 @@ describes.realWin('amp-nexxtv-player', { // see yt test implementation doc.body.appendChild(nexxtv); return nexxtv.build().then(() => { - return nexxtv.layoutCallback(); + nexxtv.layoutCallback(); }).then(() => { const nexxTimerIframe = nexxtv.querySelector('iframe'); nexxtv.implementation_.handleNexxMessage_({ diff --git a/extensions/amp-reach-player/0.1/test/test-amp-reach-player.js b/extensions/amp-reach-player/0.1/test/test-amp-reach-player.js index 1d3aa88653ff..9f928b94ff08 100644 --- a/extensions/amp-reach-player/0.1/test/test-amp-reach-player.js +++ b/extensions/amp-reach-player/0.1/test/test-amp-reach-player.js @@ -40,7 +40,8 @@ describes.realWin('amp-reach-player', { reach.setAttribute('layout', 'responsive'); } doc.body.appendChild(reach); - return reach.build().then(() => reach.layoutCallback()).then(() => reach); + return reach.build().then(() => { reach.layoutCallback(); }) + .then(() => reach); } it('renders', () => { diff --git a/extensions/amp-springboard-player/0.1/amp-springboard-player.js b/extensions/amp-springboard-player/0.1/amp-springboard-player.js index 14af6fe3a705..8efb29be6af1 100644 --- a/extensions/amp-springboard-player/0.1/amp-springboard-player.js +++ b/extensions/amp-springboard-player/0.1/amp-springboard-player.js @@ -32,6 +32,12 @@ class AmpSpringboardPlayer extends AMP.BaseElement { /** @private {string} */ this.domain_ = ''; + /** @private {string} */ + this.siteId_ = ''; + + /** @private {string} */ + this.playerId_ = ''; + /** @private {?HTMLIFrameElement} */ this.iframe_ = null; } @@ -65,31 +71,31 @@ class AmpSpringboardPlayer extends AMP.BaseElement { this.element.getAttribute('data-domain'), 'The data-domain attribute is required for %s', this.element); - } - - /** @override */ - layoutCallback() { - const iframe = this.element.ownerDocument.createElement('iframe'); - const siteId = user().assert( + this.siteId_ = user().assert( this.element.getAttribute('data-site-id'), 'The data-site-id attribute is required for' + ' %s', this.element); - const playerId = user().assert( + this.playerId_ = user().assert( this.element.getAttribute('data-player-id'), 'The data-player-id attribute is required for' + ' %s', this.element); + } + + /** @override */ + layoutCallback() { + const iframe = this.element.ownerDocument.createElement('iframe'); const items = this.element.getAttribute('data-items') || '10'; iframe.setAttribute('frameborder', '0'); iframe.setAttribute('allowfullscreen', 'true'); - iframe.id = playerId + '_' + this.contentId_; + iframe.id = this.playerId_ + '_' + this.contentId_; iframe.src = 'https://cms.springboardplatform.com/embed_iframe/' + - encodeURIComponent(siteId) + '/' + + encodeURIComponent(this.siteId_) + '/' + encodeURIComponent(this.mode_) + '/' + encodeURIComponent(this.contentId_) + '/' + - encodeURIComponent(playerId) + '/' + + encodeURIComponent(this.playerId_) + '/' + encodeURIComponent(this.domain_) + '/' + encodeURIComponent(items); this.applyFillContent(iframe); diff --git a/extensions/amp-springboard-player/0.1/test/test-amp-springboard-player.js b/extensions/amp-springboard-player/0.1/test/test-amp-springboard-player.js index 2a3179dada4a..4a9a5f4b40c8 100644 --- a/extensions/amp-springboard-player/0.1/test/test-amp-springboard-player.js +++ b/extensions/amp-springboard-player/0.1/test/test-amp-springboard-player.js @@ -38,7 +38,7 @@ describes.realWin('amp-springboard-player', { sp.setAttribute('height', '270'); sp.setAttribute('layout', 'responsive'); doc.body.appendChild(sp); - return sp.build().then(() => sp.layoutCallback()).then(() => sp); + return sp.build().then(() => { sp.layoutCallback(); }).then(() => sp); } it('renders', () => {