Sha256: ae0d2176b379793fbe49596f559330026114ec6d6f10b699773208945049404b

Contents?: true

Size: 797 Bytes

Versions: 1

Compression:

Stored size: 797 Bytes

Contents

module RailsEmoji
  class << self

    def render(text, *args)
      options = args.extract_options!

      host = options[:host] || ""
      size = options[:size] || 20
      class_name = options[:class] || "emoji"

      # Replace
      text.gsub(/:([a-z0-9_\-\+]+):/) do |emoji|
        emoji_code = emoji
        emoji = emoji_code.gsub(":", "")

        if RailsEmoji::EMOJI.include?(emoji)
          %{<img src="#{ host }/assets/emojis/#{ emoji.gsub('+', 'plus') }.png" } +
            %{width="#{ size }" height="#{ size }" } +
            %{title="#{ emoji_code }" alt="#{ emoji_code }" class="#{ class_name }" />}
        else
          emoji_code
        end
      end
    end

  end
end

# extend to String class
class String

  def emoji_to_html
    RailsEmoji.render(self)
  end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rails_emoji-1.2 lib/rails_emoji/render.rb