Class: TinyMCE::Rails::Configuration
- Inherits:
-
Object
- Object
- TinyMCE::Rails::Configuration
- Defined in:
- lib/tinymce/rails/configuration.rb
Defined Under Namespace
Classes: Function
Instance Attribute Summary collapse
-
#options ⇒ Object
readonly
Returns the value of attribute options.
Class Method Summary collapse
- .assets ⇒ Object
-
.available_languages ⇒ Object
Searches asset paths for TinyMCE language files.
-
.default_language ⇒ Object
Default language falls back to English if current locale is not available.
- .defaults ⇒ Object
- .new_with_defaults(options = {}) ⇒ Object
Instance Method Summary collapse
-
#initialize(options) ⇒ Configuration
constructor
A new instance of Configuration.
- #merge(options) ⇒ Object
- #options_for_tinymce ⇒ Object
Constructor Details
#initialize(options) ⇒ Configuration
Returns a new instance of Configuration.
21 22 23 |
# File 'lib/tinymce/rails/configuration.rb', line 21 def initialize() @options = end |
Instance Attribute Details
#options ⇒ Object (readonly)
Returns the value of attribute options.
19 20 21 |
# File 'lib/tinymce/rails/configuration.rb', line 19 def @options end |
Class Method Details
.assets ⇒ Object
69 70 71 |
# File 'lib/tinymce/rails/configuration.rb', line 69 def self.assets Rails.application.assets end |
.available_languages ⇒ Object
Searches asset paths for TinyMCE language files.
59 60 61 62 63 64 65 66 67 |
# File 'lib/tinymce/rails/configuration.rb', line 59 def self.available_languages assets.paths.map { |path| files = assets.entries(File.join(path, "tinymce/langs")) files.map { |file| asset = assets.attributes_for(File.join(path, file)) asset.logical_path.sub(/\.js$/, "") } }.flatten.uniq end |
.default_language ⇒ Object
Default language falls back to English if current locale is not available.
54 55 56 |
# File 'lib/tinymce/rails/configuration.rb', line 54 def self.default_language available_languages.include?(I18n.locale.to_s) ? I18n.locale.to_s : "en" end |
.defaults ⇒ Object
11 12 13 14 15 16 17 |
# File 'lib/tinymce/rails/configuration.rb', line 11 def self.defaults { "mode" => "specific_textareas", "editor_selector" => "tinymce", "theme" => "advanced" } end |
.new_with_defaults(options = {}) ⇒ Object
25 26 27 28 29 |
# File 'lib/tinymce/rails/configuration.rb', line 25 def self.new_with_defaults(={}) config = new(defaults) config = config.merge() if config end |
Instance Method Details
#merge(options) ⇒ Object
49 50 51 |
# File 'lib/tinymce/rails/configuration.rb', line 49 def merge() self.class.new(self..merge()) end |
#options_for_tinymce ⇒ Object
31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
# File 'lib/tinymce/rails/configuration.rb', line 31 def result = {} .each do |key, value| if value.is_a?(Array) && value.all? { |v| v.is_a?(String) } result[key] = value.join(",") elsif value.to_s.starts_with?("function(") result[key] = Function.new(value) else result[key] = value end end result["language"] ||= self.class.default_language result end |