PHP Classes

File: dist/plugin/hello/summernote-ext-hello.js

Recommend this page to a friend!
  Classes of Abed Nego Ragil Putra   Giga CMS   dist/plugin/hello/summernote-ext-hello.js   Download  
File: dist/plugin/hello/summernote-ext-hello.js
Role: Auxiliary data
Content type: text/plain
Description: Auxiliary data
Class: Giga CMS
Multi-user content management system
Author: By
Last change:
Date: 7 years ago
Size: 2,548 bytes
 

Contents

Class file image Download
(function (factory) { /* global define */ if (typeof define === 'function' && define.amd) { // AMD. Register as an anonymous module. define(['jquery'], factory); } else if (typeof module === 'object' && module.exports) { // Node/CommonJS module.exports = factory(require('jquery')); } else { // Browser globals factory(window.jQuery); } }(function ($) { // Extends plugins for adding hello. // - plugin is external module for customizing. $.extend($.summernote.plugins, { /** * @param {Object} context - context object has status of editor. */ 'hello': function (context) { var self = this; // ui has renders to build ui elements. // - you can create a button with `ui.button` var ui = $.summernote.ui; // add hello button context.memo('button.hello', function () { // create button var button = ui.button({ contents: '<i class="fa fa-child"/> Hello', tooltip: 'hello', click: function () { self.$panel.show(); self.$panel.hide(500); // invoke insertText method with 'hello' on editor module. context.invoke('editor.insertText', 'hello'); } }); // create jQuery object from button instance. var $hello = button.render(); return $hello; }); // This events will be attached when editor is initialized. this.events = { // This will be called after modules are initialized. 'summernote.init': function (we, e) { console.log('summernote initialized', we, e); }, // This will be called when user releases a key on editable. 'summernote.keyup': function (we, e) { console.log('summernote keyup', we, e); } }; // This method will be called when editor is initialized by $('..').summernote(); // You can create elements for plugin this.initialize = function () { this.$panel = $('<div class="hello-panel"/>').css({ position: 'absolute', width: 100, height: 100, left: '50%', top: '50%', background: 'red' }).hide(); this.$panel.appendTo('body'); }; // This methods will be called when editor is destroyed by $('..').summernote('destroy'); // You should remove elements on `initialize`. this.destroy = function () { this.$panel.remove(); this.$panel = null; }; } }); }));