Sha256: 2896595f8ea2ddb33e9bcb478f5f4fb12257f588b51216a184420b5e301c0b0a

Contents?: true

Size: 1.56 KB

Versions: 6

Compression:

Stored size: 1.56 KB

Contents

module Cms::Fortress::SprocketHelper
  include TinyMCE::Rails::Helper

  def tinymce_init
    path = File.join(Rails.root, 'config', 'tinymce.yml')
    if File.exist?(path)
      config = YAML.load_file(path)
    else
      config = {}
    end

    options = {
      menubar: "tools format view",
      toolbar1: "insertfile undo redo | styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | table | fullscreen code | image fmedia link",
      toolbar2: "",
      plugins: ["code", "fullscreen", "media", "link", "table"],
      language: "en"
    }.stringify_keys.merge(config)

  <<-EOF
  tinymce.init({
      #{configuration_from_options(options)},
      selector: 'textarea[data-cms-rich-text]',
      link_list: CmsFortress.media.othersUrl(),

      setup: function(ed) {

        ed.addButton('image', {
          title: 'Insert Image',
          onclick: function() {
            return CmsFortress.media.showImageDialog(ed);
          }
        });

        return ed.addButton('fmedia', {
          tooltip: 'Insert Video',
          icon: 'media',
          stateSelector: ['img[data-mce-object=video]', 'img[data-mce-object=iframe]'],
          onclick: function() {
            return CmsFortress.media.showVideoDialog(ed);
          }
        });

      }

    });
  EOF
  end

  private

  def configuration_from_options(options)
    options.map do |k, v|
      v.is_a?(Array) ? "#{k}: #{v}" : "#{k}: #{boolean_value(v)}"
    end.join(',')
  end

  def boolean_value(v)
    [true, false].include?(v) ? "#{v}" : "'#{v}'"
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
cms-fortress-1.3.5 app/helpers/cms/fortress/sprocket_helper.rb
cms-fortress-1.3.4 app/helpers/cms/fortress/sprocket_helper.rb
cms-fortress-1.3.3 app/helpers/cms/fortress/sprocket_helper.rb
cms-fortress-1.3.2 app/helpers/cms/fortress/sprocket_helper.rb
cms-fortress-1.3.1 app/helpers/cms/fortress/sprocket_helper.rb
cms-fortress-1.3.0 app/helpers/cms/fortress/sprocket_helper.rb