From 35df8470434eb6295e23538d714c472b14331f70 Mon Sep 17 00:00:00 2001 From: chris <kokosias@yahoo.gr> Date: Wed, 22 Mar 2017 15:56:22 +0200 Subject: [PATCH] add close only funcionality to modal --- app/components/SimpleEditor/Editor.js | 7 ++++++- .../elements/modal_warning/ModalWarning.js | 14 ++++++++++++-- .../elements/modal_warning/modalWarning.scss | 8 ++++++++ 3 files changed, 26 insertions(+), 3 deletions(-) diff --git a/app/components/SimpleEditor/Editor.js b/app/components/SimpleEditor/Editor.js index 72fc9d5..3220e58 100644 --- a/app/components/SimpleEditor/Editor.js +++ b/app/components/SimpleEditor/Editor.js @@ -30,7 +30,8 @@ class Editor extends ProseEditor { 'trackChangesUpdate': function () { this.updateTrackChange() }, 'trackChangesViewToggle': function () { this.trackChangesViewToggle() }, // 'changesNotSaved': function () { this.changesNotSaved() } - 'changesNotSaved': this.changesNotSaved + 'changesNotSaved': this.changesNotSaved, + 'closeModal': this.closeModal }) } @@ -231,6 +232,10 @@ class Editor extends ProseEditor { this.refs.contentPanel.scrollTo(nodeId) } + closeModal () { + this.extendState({ changesNotSaved: false }) + } + toggleCommentsArea (show) { var self = this diff --git a/app/components/SimpleEditor/elements/modal_warning/ModalWarning.js b/app/components/SimpleEditor/elements/modal_warning/ModalWarning.js index 8462b7e..c92e365 100644 --- a/app/components/SimpleEditor/elements/modal_warning/ModalWarning.js +++ b/app/components/SimpleEditor/elements/modal_warning/ModalWarning.js @@ -1,5 +1,5 @@ import { each } from 'lodash' -import { Modal } from 'substance' +import { Modal, FontAwesomeIcon as Icon } from 'substance' class ModalWarning extends Modal { constructor (props) { @@ -14,9 +14,14 @@ class ModalWarning extends Modal { let el = $$('div') .addClass('sc-modal') + const closeButton = $$(Icon, { icon: 'fa-close' }) + .addClass('sc-close-modal') + .on('click', this._closeModal) + const modalHeader = $$('div') .addClass('sc-modal-header') .append('Unsaved Content') + .append(closeButton) const modalMessage = $$('div') .addClass('sc-modal-body') @@ -58,14 +63,18 @@ class ModalWarning extends Modal { this.backButton = args.back } + _closeModal () { + this.send('closeModal') + } + _saveExitWriter () { - this.rerender() this.context.editor.editorSession.save() if (this.backButton) { setTimeout(() => { this.context.editor.props.history.go(-2) }, 200) } else { setTimeout(() => { this.context.editor.props.history.push(this.route) }, 200) } + this._closeModal() } // TODO: Hack Check why cannot rerender editor so can push to url @@ -82,6 +91,7 @@ class ModalWarning extends Modal { // TODO: Hack Check why cannot rerender editor so can push to url setTimeout(() => { this.context.editor.props.history.push(this.route) }, 200) } + this._closeModal() } } diff --git a/app/components/SimpleEditor/elements/modal_warning/modalWarning.scss b/app/components/SimpleEditor/elements/modal_warning/modalWarning.scss index 8652dae..0717389 100644 --- a/app/components/SimpleEditor/elements/modal_warning/modalWarning.scss +++ b/app/components/SimpleEditor/elements/modal_warning/modalWarning.scss @@ -25,6 +25,14 @@ $white: #fff; line-height: 32px; } + .sc-close-modal { + cursor: pointer; + float: right; + font-size: 16px; + font-weight: normal; + margin-top: 10px; + } + .sc-modal-body { padding: 20px 0; } -- GitLab