From 4a84974ceb81aa0d5b63725c7105d0019e63e2d6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Jakes=CC=8C?= Date: Sat, 28 Jul 2018 18:33:02 +0200 Subject: [PATCH] Make save-as-template & export-as-template toggable identically to options There was no option how to close save-as-template and export-as-template windows. This makes them closable in the same way as dropdown options are. [MAILPOET-1448] --- .../src/newsletter_editor/components/save.js | 44 ++++++++++--------- 1 file changed, 24 insertions(+), 20 deletions(-) diff --git a/assets/js/src/newsletter_editor/components/save.js b/assets/js/src/newsletter_editor/components/save.js index 057a02b33e..1e9d7649e7 100644 --- a/assets/js/src/newsletter_editor/components/save.js +++ b/assets/js/src/newsletter_editor/components/save.js @@ -124,10 +124,10 @@ define([ 'click .mailpoet_save_show_options': 'toggleSaveOptions', 'click .mailpoet_save_next': 'next', /* Save as template */ - 'click .mailpoet_save_template': 'toggleSaveAsTemplate', + 'click .mailpoet_save_template': 'showSaveAsTemplate', 'click .mailpoet_save_as_template': 'saveAsTemplate', /* Export template */ - 'click .mailpoet_save_export': 'toggleExportTemplate', + 'click .mailpoet_save_export': 'showExportTemplate', 'click .mailpoet_export_template': 'exportTemplate' }, @@ -146,7 +146,7 @@ define([ this.validateNewsletter(App.toJSON()); }, save: function () { - this.hideOptionContents(); + this.hideSaveOptions(); App.getChannel().request('save'); }, beforeSave: function () { @@ -159,17 +159,27 @@ define([ this.$('.mailpoet_editor_last_saved').removeClass('mailpoet_hidden'); this.$('.mailpoet_autosaved_at').text(''); }, - toggleSaveOptions: function () { - this.$('.mailpoet_save_options').toggleClass('mailpoet_hidden'); - this.$('.mailpoet_save_show_options').toggleClass('mailpoet_save_show_options_active'); + showSaveOptions: function () { + this.$('.mailpoet_save_show_options').addClass('mailpoet_save_show_options_active'); + this.$('.mailpoet_save_options').removeClass('mailpoet_hidden'); + this.hideSaveAsTemplate(); + this.hideExportTemplate(); }, - toggleSaveAsTemplate: function () { - this.$('.mailpoet_save_as_template_container').toggleClass('mailpoet_hidden'); - this.toggleSaveOptions(); + hideSaveOptions: function () { + this.$('.mailpoet_save_show_options').removeClass('mailpoet_save_show_options_active'); + this.$('.mailpoet_save_options').addClass('mailpoet_hidden'); + this.hideSaveAsTemplate(); + this.hideExportTemplate(); + }, + toggleSaveOptions: function () { + if (this.$('.mailpoet_save_show_options').hasClass('mailpoet_save_show_options_active')) { + this.hideSaveOptions(); + } else { + this.showSaveOptions(); + } }, showSaveAsTemplate: function () { this.$('.mailpoet_save_as_template_container').removeClass('mailpoet_hidden'); - this.toggleSaveOptions(); }, hideSaveAsTemplate: function () { this.$('.mailpoet_save_as_template_container').addClass('mailpoet_hidden'); @@ -209,12 +219,11 @@ define([ } ); }); - this.hideOptionContents(); + this.hideSaveOptions(); } }, - toggleExportTemplate: function () { - this.$('.mailpoet_export_template_container').toggleClass('mailpoet_hidden'); - this.toggleSaveOptions(); + showExportTemplate: function () { + this.$('.mailpoet_export_template_container').removeClass('mailpoet_hidden'); }, hideExportTemplate: function () { this.$('.mailpoet_export_template_container').addClass('mailpoet_hidden'); @@ -238,13 +247,8 @@ define([ this.hideExportTemplate(); } }, - hideOptionContents: function () { - this.hideSaveAsTemplate(); - this.hideExportTemplate(); - this.$('.mailpoet_save_options').addClass('mailpoet_hidden'); - }, next: function () { - this.hideOptionContents(); + this.hideSaveOptions(); if (!this.$('.mailpoet_save_next').hasClass('button-disabled')) { Module._cancelAutosave(); Module.save().done(function () {