cleanprice
Loading...
Plugins for summernote
Поиск
Вопросы
Вход
Журнал
Пособия

Plugins for summernote

Plugins for summernote

Журнал
Пособия
Вход
Поиск
Вопросы
22.04.2021

Extends plugins for adding CKFinder 3 to Summernote WYSIWYG editor

Plugins for summernote

The example below shows the Summernote-ext-CKfinder plugin for integrating CKFinder into Summernote WYSIWYG editor. All you have to do is adding some additional configuration options to CKEditor and Summernote. Please, have a look at software documentation.

The plugin for the Summernote WYSIWYG editor.

  1. (function(factory) {
  2.   if (typeof define === 'function' && define.amd) {
  3.     // AMD. Register as an anonymous module.
  4.     define(['jquery'], factory);
  5.   } else if (typeof module === 'object' && module.exports) {
  6.     // Node/CommonJS
  7.     module.exports = factory(require('jquery'));
  8.   } else {
  9.     // Browser globals
  10.     factory(window.jQuery);
  11.   }
  12. }(function($) {
  13.   // Extends plugins for adding CKFinder 3.
  14.   //  - plugin is external module for customizing.
  15.   $.extend($.summernote.plugins, {
  16.     /**
  17.      * @param {Object} context - context object has status of editor.
  18.      */
  19.     'CKFinder': function(context) {
  20.       var self = this;
  21.  
  22.       // ui has renders to build ui elements.
  23.       //  - you can create a button with `ui.button`
  24.       var ui = $.summernote.ui;
  25.  
  26.       // add CKFinder button
  27.       context.memo('button.CKFinder', function() {
  28.         // create button
  29.         var button = ui.button({
  30.           contents: '  CKFinder',
  31.           tooltip: 'CKFinder',
  32.           click: function() {
  33.              CKFinder.modal( {
  34.         //   Full location of the plugins file.             
  35.         //   plugins: [
  36.         //  'https://example.com/ckfinder/plugins/StatusBarInfo/StatusBarInfo.js',
  37.         //  'https://example.com/ckfinder/plugins/ImageInfo/ImageInfo.js',
  38.         //  'https://example.com/ckfinder/plugins/CustomButton/CustomButton.js'
  39.         //  ],
  40.                  chooseFiles: true,
  41.                  //displayFoldersPanel: false,
  42.                  //startupPath: 'Images:/' + YourFolder + '/',
  43.                  //rememberLastFolder: false,
  44.                  onInit: function( finder ) {
  45.                      finder.on( 'files:choose', function( evt ) {
  46.                          var file = evt.data.files.first();
  47.                          var url = file.getUrl();
  48.                          //url = location.origin + url; // full url
  49.                          console.log(url);
  50.                          context.invoke('editor.insertImage', url);
  51.                      } );
  52.                          finder.on( 'file:choose:resizedImage', function( evt ) {
  53.                          var url_resizedUrl = evt.data.resizedUrl;  
  54.                          //url_resizedUrl = location.origin + url_resizedUrl; // full url   
  55.                          context.invoke('editor.insertImage', url_resizedUrl);
  56.                      } );
  57.                  }
  58.              } );
  59.           },
  60.         });
  61.  
  62.         // create jQuery object from button instance.
  63.         var $CKFinder = button.render();
  64.         return $CKFinder;
  65.       });
  66.     },
  67.   });
  68. }));

 

Installation

1. Download CKFinder for PHP.

Install, integrate, configure and develop CKFinder.

Вrowse through documentation.

All downloads are full versions with just a few features locked. Use your license key to unlock complete CKFinder functionality, with no need to download a separate package. Try it for a limited period of time and buy it when you are ready. CKFinder prepared easy licensing options for your development purposes.
View license options

2. Include JS

Include the following code after Summernote:

  • <script src="ckfinder.js"></script>
  • <script src="summernote-ext-ckfinder.js"></script>

3. Summernote options:

  • $('.summernote').summernote({
  •   height: 150,   //set editable area's height
  •     toolbar:[
  •         ['CKFinder', ['CKFinder']], // The Button
  •         ['style',['style']],
  •         ['font',['bold','italic','underline','clear']],
  •         ['fontname',['fontname']],
  •         ['color',['color']],
  •         ['para',['ul','ol','paragraph']],
  •         ['height',['height']],
  •         ['table',['table']],
  •         ['insert',['media','link','hr']],
  •         ['view',['fullscreen','codeview']],
  •         ['help',['help']]
  •     ],
  •   }
  • });

Tested v0.8.12 - v0.8.18

Summernote-ext-CKFinder provides configuration options that can be changed to customize the plugin.

In the example the commented out code options:

Plugins for CKFinder.

displayFoldersPanel - changes the folders display mode. When set to true, folders are displayed as a tree in the primary panel. When set to false, folders are displayed inline with files, there is no folders tree, and breadcrumbs are displayed.

startupPath - The resource type and name of the startup folder, separated with a colon. If defined, on startup CKFinder will open the given folder and will list its contents.

rememberLastFolder - whether CKFinder should remember the last used folder in the local storage and open it automatically next time.

Can be also set to an absolute URL (now relative).

Plugins for summernote

Plugins for summernote

summernote-ext-ckfinder.js distributed under the MIT license.

Поделиться
  1385
Комментарии
Plugins for summernote
1000
Комментирование доступно после авторизации на сайте
Регистрация
Войти с помощью:
Plugins for summernote Plugins for summernote Plugins for summernote Plugins for summernote Plugins for summernote
Опрос
 2026-03-26  дата публикации   49  проголосовали При какой сумме претензии вы готовы вложиться в экспертизу и суд для доказательства правоты и защиты репутации?
 
09.09
Приём без противоречий. Ищем нестандартные решения на Академии Cleanprice

В рамках осенней сессии Академии Cleanprice, которая состоится 1-2 октября 2026 в Москве, Марина Александровна Гейнц познакомит слушателей с ТРИЗ (теорией решения изобретательских задач) и предложит найти решение проблем приема изделий в обработку с использованием принципов ТРИЗ.

Plugins for summernote
09.09
Чем заменить перхлорэтилен: ученые испытали 16 более экологичных растворителей для чистки текстиля

В апреле 2026 года в журнале Scientific Reports опубликованы результаты исследования 16 потенциальных «зеленых» растворителей для очистки текстиля. При их отборе ученые учитывали происхождение сырья, токсикологические и экологические характеристики, воспламеняемость и растворяющую способность.

Plugins for summernote
03.09
Новинка для экспресс удаления масляных и жировых пятен!

DRY SPOT — профессиональный аэрозоль для быстрого локального удаления жировых и масляных пятен с текстиля без стирки!

Plugins for summernote
03.09
Вы тратите на ремонт старого оборудования больше, чем стоит новое

Компания «БИЗНЕС-МОНОЛИТ» предлагает решение — рассрочку на покупку нового оборудования. Это возможность обновить парк прачечной без единовременной крупной выплаты.

Plugins for summernote
31.08
Суд не признал договоры на стирку подтверждением работы прачечной самообслуживания: предприниматель вернет 500 тыс. рублей

Арбитражный суд Западно-Сибирского округа оставил в силе решение о взыскании с предпринимателя 500 тыс. рублей, полученных на приобретение франшизы прачечной самообслуживания BIG WASH в Салехарде. Суд пришел к выводу, что представленные договоры на оказание услуг по стирке белья не подтверждают работу именно прачечной самообслуживания.

Plugins for summernote
31.08
Немецкие химчистки, прачечные и текстильный сервис столкнулись с ростом затрат

По данным летнего опроса Немецкого союза химчисток и текстильного сервиса (DTV), предприятия сталкиваются с ростом затрат, кадровым дефицитом и все более сдержанно оценивают перспективы второй половины 2026 года.

Plugins for summernote
31.08
С 1 сентября идентификация администраторов доменов .RU, .РФ и .SU станет обязательной

С 1 сентября 2026 года в России вводится обязательная идентификация администраторов доменных имен через Единую систему идентификации и аутентификации (ЕСИА, портал «Госуслуги»). Новые требования распространяются на национальные домены .RU, .РФ и .SU.

Plugins for summernote
26.08
Деловая игра «Сервис без потерь» на CleanExpo Moscow 2026

Академия Cleanprice и МВК приглашают руководителей и специалистов химчисток и прачечных принять участие в деловой игре «Сервис без потерь». Ведущая и идейный вдохновитель игры – Марина Александровна Гейнц.

Plugins for summernote
24.08
Ольга Пшеничная на Академии расскажет о новом формате для расширения бизнеса

В рамках осенней сессии Академии Cleanprice выступит Ольга Александровна Пшеничная, сооснователь группы компаний Santas Professional. Мы знаем, что Ольге Александровне, с ее огромным багажом опыта, есть, что рассказать участникам Академии, и рады дать ей слово как спонсору мероприятия.

Plugins for summernote
24.08
Самоочищающаяся ткань вышла из лаборатории: в России технология проходит испытания на спецодежде

Разработанная учеными Санкт-Петербургского государственного университета промышленных технологий и дизайна технология самоочищающейся отделки текстиля перешла к практическим испытаниям. На предприятии «Чайковский текстиль» выпущена опытная партия ткани, из которой изготовлена специальная одежда. Сейчас она проходит опытную носку.

Plugins for summernote