From 82643b488e78b8eb847703f35727bb2db12074f4 Mon Sep 17 00:00:00 2001 From: ramonjd Date: Wed, 4 Mar 2020 16:27:46 +1100 Subject: [PATCH 1/3] This is a test to see whether using the unmapped site urls for the preview window iframe urls will prevent reoccuring 404s. See: p58i-89x-p2 --- client/gutenberg/editor/calypsoify-iframe.tsx | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/client/gutenberg/editor/calypsoify-iframe.tsx b/client/gutenberg/editor/calypsoify-iframe.tsx index a384b9dece3ab6..e416d154e7913e 100644 --- a/client/gutenberg/editor/calypsoify-iframe.tsx +++ b/client/gutenberg/editor/calypsoify-iframe.tsx @@ -442,13 +442,20 @@ class CalypsoifyIframe extends Component< Props & ConnectedProps & ProtectedForm const { frameNonce } = this.props; const { previewUrl, editedPost } = message.data; - + const { host: unmappedSiteUrlHost } = url.parse( this.props.unmappedSiteUrl ); const parsedPreviewUrl = url.parse( previewUrl, true ); - if ( frameNonce ) { + + if ( frameNonce ) { parsedPreviewUrl.query[ 'frame-nonce' ] = frameNonce; } + parsedPreviewUrl.query.iframe = 'true'; delete parsedPreviewUrl.search; + + if ( unmappedSiteUrlHost ) { + parsedPreviewUrl.host = unmappedSiteUrlHost; + parsedPreviewUrl.hostname = unmappedSiteUrlHost; + } this.setState( { previewUrl: url.format( parsedPreviewUrl ), @@ -683,6 +690,7 @@ const mapStateToProps = ( partial.placeholder, 'wp_template_part' ), + unmappedSiteUrl: getSiteOption( state, siteId, 'unmapped_url' ), }; }; From 1923257b375f60f74cc74b91a93a59f6ad59f749 Mon Sep 17 00:00:00 2001 From: ramonjd Date: Thu, 5 Mar 2020 15:01:42 +1100 Subject: [PATCH 2/3] Because we can login to calypso.localhost:3000 using Safari (thanks to ITP) we could try to push this to horizon to test --- client/gutenberg/editor/calypsoify-iframe.tsx | 22 ++++++++++--------- config/development.json | 1 + config/wpcalypso.json | 1 + 3 files changed, 14 insertions(+), 10 deletions(-) diff --git a/client/gutenberg/editor/calypsoify-iframe.tsx b/client/gutenberg/editor/calypsoify-iframe.tsx index e416d154e7913e..0d2ac9cf62569f 100644 --- a/client/gutenberg/editor/calypsoify-iframe.tsx +++ b/client/gutenberg/editor/calypsoify-iframe.tsx @@ -440,22 +440,24 @@ class CalypsoifyIframe extends Component< Props & ConnectedProps & ProtectedForm previewPort.onmessage = ( message: MessageEvent ) => { previewPort.close(); - const { frameNonce } = this.props; + const { frameNonce, unmappedSiteUrl } = this.props; const { previewUrl, editedPost } = message.data; - const { host: unmappedSiteUrlHost } = url.parse( this.props.unmappedSiteUrl ); const parsedPreviewUrl = url.parse( previewUrl, true ); - if ( frameNonce ) { + if ( frameNonce ) { parsedPreviewUrl.query[ 'frame-nonce' ] = frameNonce; } - + parsedPreviewUrl.query.iframe = 'true'; delete parsedPreviewUrl.search; - - if ( unmappedSiteUrlHost ) { - parsedPreviewUrl.host = unmappedSiteUrlHost; - parsedPreviewUrl.hostname = unmappedSiteUrlHost; - } + + if ( config.isEnabled( 'post-editor/preview-with-unmapped-url' ) ) { + const { host: unmappedSiteUrlHost } = url.parse( unmappedSiteUrl ); + if ( unmappedSiteUrlHost ) { + parsedPreviewUrl.host = unmappedSiteUrlHost; + parsedPreviewUrl.hostname = unmappedSiteUrlHost; + } + } this.setState( { previewUrl: url.format( parsedPreviewUrl ), @@ -690,7 +692,7 @@ const mapStateToProps = ( partial.placeholder, 'wp_template_part' ), - unmappedSiteUrl: getSiteOption( state, siteId, 'unmapped_url' ), + unmappedSiteUrl: getSiteOption( state, siteId, 'unmapped_url' ), }; }; diff --git a/config/development.json b/config/development.json index 567f9c702e4c03..a8015d3199bf5d 100644 --- a/config/development.json +++ b/config/development.json @@ -127,6 +127,7 @@ "post-editor-github-link": false, "post-editor/html-toolbar": true, "post-editor/image-editor": true, + "post-editor/preview-with-unmapped-url": true, "posts/post-type-list/bulk-edit": false, "press-this": true, "privacy-policy": true, diff --git a/config/wpcalypso.json b/config/wpcalypso.json index 8b44f6c9036b15..a8fbc5053b77eb 100644 --- a/config/wpcalypso.json +++ b/config/wpcalypso.json @@ -104,6 +104,7 @@ "post-editor/html-toolbar": true, "post-editor/image-editor": true, "post-editor/preview-scroll-to-content": true, + "post-editor/preview-with-unmapped-url": true, "press-this": true, "privacy-policy": true, "publicize-preview": true, From c6b4588381c048d75f3f68f44b611a3787c06883 Mon Sep 17 00:00:00 2001 From: ramonjd Date: Fri, 20 Mar 2020 12:12:04 +1100 Subject: [PATCH 3/3] Removing the feature wrapper so we roll out to production --- client/gutenberg/editor/calypsoify-iframe.tsx | 10 ++++------ config/development.json | 1 - config/wpcalypso.json | 1 - 3 files changed, 4 insertions(+), 8 deletions(-) diff --git a/client/gutenberg/editor/calypsoify-iframe.tsx b/client/gutenberg/editor/calypsoify-iframe.tsx index 0d2ac9cf62569f..d96371a8455ec8 100644 --- a/client/gutenberg/editor/calypsoify-iframe.tsx +++ b/client/gutenberg/editor/calypsoify-iframe.tsx @@ -451,12 +451,10 @@ class CalypsoifyIframe extends Component< Props & ConnectedProps & ProtectedForm parsedPreviewUrl.query.iframe = 'true'; delete parsedPreviewUrl.search; - if ( config.isEnabled( 'post-editor/preview-with-unmapped-url' ) ) { - const { host: unmappedSiteUrlHost } = url.parse( unmappedSiteUrl ); - if ( unmappedSiteUrlHost ) { - parsedPreviewUrl.host = unmappedSiteUrlHost; - parsedPreviewUrl.hostname = unmappedSiteUrlHost; - } + const { host: unmappedSiteUrlHost } = url.parse( unmappedSiteUrl ); + if ( unmappedSiteUrlHost ) { + parsedPreviewUrl.host = unmappedSiteUrlHost; + parsedPreviewUrl.hostname = unmappedSiteUrlHost; } this.setState( { diff --git a/config/development.json b/config/development.json index a8015d3199bf5d..567f9c702e4c03 100644 --- a/config/development.json +++ b/config/development.json @@ -127,7 +127,6 @@ "post-editor-github-link": false, "post-editor/html-toolbar": true, "post-editor/image-editor": true, - "post-editor/preview-with-unmapped-url": true, "posts/post-type-list/bulk-edit": false, "press-this": true, "privacy-policy": true, diff --git a/config/wpcalypso.json b/config/wpcalypso.json index a8fbc5053b77eb..8b44f6c9036b15 100644 --- a/config/wpcalypso.json +++ b/config/wpcalypso.json @@ -104,7 +104,6 @@ "post-editor/html-toolbar": true, "post-editor/image-editor": true, "post-editor/preview-scroll-to-content": true, - "post-editor/preview-with-unmapped-url": true, "press-this": true, "privacy-policy": true, "publicize-preview": true,