diff --git a/assets/css/src/components/newsletterEditor/components/_sidebar.scss b/assets/css/src/components/newsletterEditor/components/_sidebar.scss index cfe6f379a6..2d72def838 100644 --- a/assets/css/src/components/newsletterEditor/components/_sidebar.scss +++ b/assets/css/src/components/newsletterEditor/components/_sidebar.scss @@ -157,11 +157,15 @@ $widget-icon-width: 30px; width: 100%; } +.mailpoet_browser_preview_link { + position: absolute; + top: -25px; +} + .mailpoet_browser_preview_toggle { flex: 0 1 auto; height: 30px; - padding: 10px 0; - position: absolute; + padding-bottom: 10px; text-align: center; top: -30px; width: 100%; @@ -180,7 +184,7 @@ $widget-icon-width: 30px; flex: 1 1 auto; flex-direction: column; height: 100%; - margin: 15px auto 0; + margin: auto; padding: 20px; transition: width .5s; } diff --git a/assets/js/src/newsletter_editor/components/sidebar.js b/assets/js/src/newsletter_editor/components/sidebar.js index 5d87c94bd2..65f0c1f319 100644 --- a/assets/js/src/newsletter_editor/components/sidebar.js +++ b/assets/js/src/newsletter_editor/components/sidebar.js @@ -280,6 +280,7 @@ Module.SidebarPreviewView = Marionette.View.extend({ this.previewView = new Module.NewsletterPreviewView({ previewType: window.localStorage.getItem(App.getConfig().get('newsletterPreview.previewTypeLocalStorageKey')), previewUrl: response.meta.preview_url, + publicPreviewUrl: response.meta.public_preview_url, }); this.previewView.render(); @@ -401,6 +402,7 @@ Module.NewsletterPreviewView = Marionette.View.extend({ initialize: function (options) { this.previewType = options.previewType; this.previewUrl = options.previewUrl; + this.publicPreviewUrl = options.publicPreviewUrl; this.width = '100%'; this.height = '100%'; // this.width = App.getConfig().get('newsletterPreview.width'); @@ -410,6 +412,7 @@ Module.NewsletterPreviewView = Marionette.View.extend({ return { previewType: this.previewType, previewUrl: this.previewUrl, + publicPreviewUrl: this.publicPreviewUrl, width: this.width, height: this.height, }; diff --git a/lib/API/JSON/v1/Newsletters.php b/lib/API/JSON/v1/Newsletters.php index 9cebbaa96f..b9b64d9193 100644 --- a/lib/API/JSON/v1/Newsletters.php +++ b/lib/API/JSON/v1/Newsletters.php @@ -446,14 +446,19 @@ class Newsletters extends APIEndpoint { $newsletter, $subscriber ); + $publicPreviewUrl = NewsletterUrl::getViewInBrowserUrl($newsletter); // strip protocol to avoid mix content error $previewUrl = preg_replace('{^https?:}i', '', $previewUrl); + $publicPreviewUrl = preg_replace('{^https?:}i', '', $publicPreviewUrl); $newsletter = Newsletter::findOne($newsletter->id); if(!$newsletter instanceof Newsletter) return $this->errorResponse(); return $this->successResponse( $newsletter->asArray(), - ['preview_url' => $previewUrl] + [ + 'preview_url' => $previewUrl, + 'public_preview_url' => $publicPreviewUrl, + ] ); } else { return $this->errorResponse([ diff --git a/views/newsletter/templates/components/newsletterPreview.hbs b/views/newsletter/templates/components/newsletterPreview.hbs index 9dbb7c9463..1bf6f4823a 100644 --- a/views/newsletter/templates/components/newsletterPreview.hbs +++ b/views/newsletter/templates/components/newsletterPreview.hbs @@ -1,3 +1,6 @@ +