Sha256: 787ba6c8cba6826806c9375a4ac4f08edc34353bb33354c16509478e32b90a51
Contents?: true
Size: 1.47 KB
Versions: 1
Compression:
Stored size: 1.47 KB
Contents
require 'net/http' class TextFilter < ApplicationRecord serialize :filters, Array serialize :params, Hash def sanitize(*args, &blk) self.class.sanitize(*args, &blk) end def self.find_or_default(name) find_by(name: name) || find_by(name: 'none') end def self.filter_text(text, filters) map = TextFilterPlugin.filter_map filters.each do |filter| next if filter.nil? filter_class = map[filter.to_s] next unless filter_class text = filter_class.filtertext(text) end text end def filter_text(text) self.class.filter_text(text, [:macropre, markup, :macropost, filters].flatten) end def help filter_map = TextFilterPlugin.filter_map filter_types = TextFilterPlugin.available_filter_types help = [] help.push(filter_map[markup]) filter_types['macropre'].sort_by(&:short_name).each { |f| help.push f } filter_types['macropost'].sort_by(&:short_name).each { |f| help.push f } filters.each { |f| help.push(filter_map[f.to_s]) } help_text = help.map do |f| f.help_text.blank? ? '' : "<h3>#{f.display_name}</h3>\n#{BlueCloth.new(f.help_text).to_html}\n" end help_text.join("\n") end def commenthelp filter_map = TextFilterPlugin.filter_map help = [filter_map[markup]] filters.each { |f| help.push(filter_map[f.to_s]) } help_text = help.map do |f| f.help_text.blank? ? '' : "#{BlueCloth.new(f.help_text).to_html}\n" end.join("\n") help_text end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
publify_core-9.1.0 | app/models/text_filter.rb |