Summernote

Development Status
Work In Progress
Active Installs
Maintainers
Descargar

Last updated: 2022-08-22

Works with CiviCRM 5.35 or higher.

summernote

This extension is utilizing Summernote which is a (relatively) new lightweight (js+css: ~100Kb) WYSIWYG editor library, available as a drop-in replacement for CKEDitor4/5 in CiviCRM.

The editor, along with the use of the powerful elFinder plugin gives an all around solution to the needs of a user.

The extension is licensed under AGPL-3.0.

Features

  • Lightweight (js+css: ~100kb)
  • Lite, Bootstrap4, Bootstrap5 modes included
  • Drop-in replacement for CKEditor4/5
  • Uses elFinder (via the elFinder plugin)
  • Customizable toolbar
  • i18n support (multilingual)
  • Removes the unnecessary and possibly layout breaking Crud that gets added by MSWord, Open Office, and Libre Office Documents (via the summernote-cleaner plugin)
  • (Optional) Load the WYSIWYG editor from its CDN source
  • (Optional) Load the development (uncompressed) or the production (compressed) version of the libraries

Requirements

  • PHP v7.2+
  • CiviCRM 5.35+

Getting Started

  • Install the extension as usual. Both libraries of summernote and elfinder are being shipped with the extension itself so you won't be needing to download anything extras.
  • Navigate to Administer / Customize Data and Screens / Display Preferences and on the field Wysiwig Editor, pickup Summernote .
  • Configure the toolbar and other options under Administer > Customize Data and Screens > Summernote

On the configuration page you can also decide if you want to use the development or the minified JS/CSS version of the libraries. Additionally, you can decide if you want to use the local Summernote libraries or load them from CDN instead.

Included plugins

The Summernote WYSIWYG editor extension comes with 3 plugins already activated by default:

  • elFinder - A worthy replacement of the outdated kcfinder to upload your files/images
  • specialchars - A plugin that adds a button in the toolbar and allows the end-user to insert special characters.
  • cleaner - removes the unnecessary and possibly layout breaking Crud that gets added by MSWord, Open Office, and Libre Office Documents when pasting content.

All the summernote plugins used are slightly modified to be able to work with the CiviCRM ecosystem. The modification involves adding a line of code on the button function.

You can compose a toolbar with pre-shipped buttons. The default selected buttons are indicated with two asterisks (**) at the end

  • Format Selector
    • style: format selected block**
  • Font Style
    • bold: toggle font weight**
    • underline: toggle underline**
    • italic: toggle italic**
    • strikethrough: toggle strikethrough
    • superscript: toggle superscript
    • subscript: toggle subscript
    • clear: clear font style**
  • Font Family
    • fontname: set font family
    • fontsize: set font size
  • Color
    • color: set foreground and background color**
    • forecolor: set foreground color
    • backcolor: set background color
  • Paragraph style
    • ol: toggle ordered list**
    • ul: toggle unordered list**
    • paragraph: dropdown for paragraph align
    • height: set line height
  • Table
    • table: insert a table**
  • Insert
    • picture: open image dialog (The uploaded image will be embedded inside the HTML code in base-64 format.)
    • picture (ElFinder) : Uses the elFinder plugin to upload a file/image on the server**
    • link: open link dialog**
    • video: open video dialog
    • hr: insert a horizontal rule
  • View
    • fullscreen: toggle fullscreen editing mode**
    • codeview: toggle wysiwyg and html editing mode**
    • undo: undo
    • redo: redo
    • help: open help dialog

Known Issues

Note: For those upgrading from versions earlier than 1.0.5: Please reset the toolbar configuration on the configuration page.

Always welcome on the issue queue

Credits

Many thanks to everyone involved on creating the ckeditor5 & ckeditor5-extras extensions. This extension's code relied heavily on the work done on both of them.

Disclaimer

This is still a work-in-progress extension.

Support and Maintenance

This extension is supported and maintained by:

iXiam Global Solutions

Distributed under the terms of the GNU Affero General public license (AGPL).

Screenshot (click to enlarge)