0.27
Repository is archived
No release in over 3 years
Low commit activity in last 3 years
Atm supported: YUIRichEditor, WYMEditor, TinyMCE
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Runtime

>= 0.70.0
 Project Readme

⚠️ Deprecation notice ⚠️

Since Spree 4.3 this extension is deprecated and not needed. Spree 4.3 includes a TinyMCE-based WYSIWYG editor built-in.

Spree Editor

Build Status Code Climate

This extension provides an inline rich-text editor for Spree. It implements different types of editors:

Please note that this extension is just a simple integration of some pretty complex gems: ckeditor and tinymce-rails.

If you have issues, please check their issues trackers first.


  1. Add this extension to your Gemfile with this line:

Spree >= 3.1

gem 'spree_editor', github: 'spree-contrib/spree_editor'

Spree 3.0 and Spree 2.x

gem 'spree_editor', github: 'spree-contrib/spree_editor', branch: 'X-X-stable'

The branch option is important: it must match the version of Spree you're using. For example, use 3-0-stable if you're using Spree 3-0-stable or any 3.0.x version.

  1. Install the gem using Bundler:
bundle install
  1. Copy & run migrations
bundle exec rails g spree_editor:install
  1. If using CKEditor, and would like to enable file uploads run the ckeditor generator:
$ rails g ckeditor:install --orm=active_record --backend=paperclip && rake db:migrate
  1. In order to secure your file uploads to only be accessed by admins you will also need to configure config/initializers/ckeditor.rb:
config.authorize_with :cancan, Spree::Ability
  1. In order to precompile CKEditor's generated assets, you will need to add a line in config/initializers/assets.rb:
Rails.application.config.assets.precompile += %w( ckeditor/*)
  1. Restart your server

If your server was running, restart it so that it can find the assets properly.


Configuration

Preferences can be updated within the admin panel under "configuration" then "rich editor".

Or you may set them with an initializer within your application:

SpreeEditor::Config.tap do |config|
  config.ids = 'product_description page_body event_body'

  # change the editor to CKEditor
  config.current_editor = 'CKEditor'
end

The default preference is:

{
  enabled: true,
  current_editor: 'TinyMCE',
  ids: 'product_description page_body'
}

Language-Support

To obtain support for multiple languages with TinyMCE add tinymce-rails-langs to your Gemfile:

gem 'tinymce-rails-langs'

TinyMCE will not be loaded unless it finds a language package matching your Spree::Config.default_locale.


Contributing

See corresponding guidelines


Copyright (c) 2010-2015 divineforest and other contributors, released under the New BSD License