From badfd03e24290813c0f2cda2789b8f25ca13abf7 Mon Sep 17 00:00:00 2001 From: Artur Arseniev Date: Mon, 9 Oct 2017 21:54:35 +0200 Subject: [PATCH] Refactor OpenBlocks command --- src/block_manager/index.js | 2 +- src/commands/view/OpenBlocks.js | 27 +++++++++++---------------- 2 files changed, 12 insertions(+), 17 deletions(-) diff --git a/src/block_manager/index.js b/src/block_manager/index.js index d76804f3a..865383c3e 100644 --- a/src/block_manager/index.js +++ b/src/block_manager/index.js @@ -2,6 +2,7 @@ * * [add](#add) * * [get](#get) * * [getAll](#getall) + * * [getAllVisible](#getallvisible) * * [getCategories](#getcategories) * * [getContainer](#getcontainer) * * [render](#render) @@ -102,7 +103,6 @@ module.exports = () => { * from plugins */ onLoad() { - console.log('On load', c.blocks); this.getAll().reset(c.blocks); }, diff --git a/src/commands/view/OpenBlocks.js b/src/commands/view/OpenBlocks.js index 3c5c56dea..8abb5d871 100644 --- a/src/commands/view/OpenBlocks.js +++ b/src/commands/view/OpenBlocks.js @@ -1,29 +1,24 @@ -const $ = Backbone.$; - module.exports = { run(editor, sender) { - var config = editor.Config; - var pfx = config.stylePrefix; - var bm = editor.BlockManager; - var panelC; + const bm = editor.BlockManager; + const pn = editor.Panels; + if (!this.blocks) { - this.blocks = $('
').get(0); bm.render(); - this.blocks.appendChild(bm.getContainer()); - var panels = editor.Panels; - if(!panels.getPanel('views-container')) - panelC = panels.addPanel({id: 'views-container'}); - else - panelC = panels.getPanel('views-container'); - panelC.set('appendContent', this.blocks).trigger('change:appendContent'); + const id = 'views-container'; + const blocks = document.createElement('div'); + const panels = pn.getPanel(id) || pn.addPanel({id}); + blocks.appendChild(bm.getContainer()); + panels.set('appendContent', blocks).trigger('change:appendContent'); + this.blocks = blocks; } this.blocks.style.display = 'block'; }, stop() { - if(this.blocks) - this.blocks.style.display = 'none'; + const blocks = this.blocks; + blocks && (blocks.style.display = 'none'); } };