Sha256: 2078307ab69fd62556937d58cce3cee4fc57c8e729b0ec53bcb7bd4e08379052

Contents?: true

Size: 1.41 KB

Versions: 18

Compression:

Stored size: 1.41 KB

Contents

# -*- coding: utf-8 -*-
module Jpmobile::Mobile
  module UnicodeEmoticon
    # Jpmobile::Rack::Filter を適用する
    def apply_filter?
      Jpmobile.config.smart_phone_emoticon_compatibility
    end

    # Jpmobile::Rack::ParamsFilter を適用する
    def apply_params_filter?
      Jpmobile.config.smart_phone_emoticon_compatibility
    end

    # 文字コード変換
    def to_internal(str)
      if unicode_emoticon?
        # Unicode絵文字を数値参照に変換
        str = Jpmobile::Emoticon.external_to_unicodecr_unicode60(Jpmobile::Util.utf8(str))
      else
        # SoftBank絵文字を数値参照に変換
        str = Jpmobile::Emoticon.external_to_unicodecr_softbank(Jpmobile::Util.utf8(str))
      end
      # 数値参照を UTF-8 に変換
      Jpmobile::Emoticon.unicodecr_to_utf8(str)
    end
    def to_external(str, content_type, charset)
      # UTF-8を数値参照に
      str = Jpmobile::Emoticon.utf8_to_unicodecr(str)
      if unicode_emoticon?
        str = Jpmobile::Emoticon.unicodecr_to_external(str, Jpmobile::Emoticon::CONVERSION_TABLE_TO_UNICODE_EMOTICON, false)
      else
        # 数値参照を絵文字コードに変換
        str = Jpmobile::Emoticon.unicodecr_to_external(str, Jpmobile::Emoticon::CONVERSION_TABLE_TO_SOFTBANK, false)
      end

      [str, charset]
    end

    def unicode_emoticon?
      @request.user_agent.match(/ OS (\d)_/) and $1.to_i >= 5
    end
  end
end

Version data entries

18 entries across 18 versions & 1 rubygems

Version Path
jpmobile-4.2.5 lib/jpmobile/mobile/unicode_emoticon.rb
jpmobile-4.2.4 lib/jpmobile/mobile/unicode_emoticon.rb
jpmobile-4.1.5 lib/jpmobile/mobile/unicode_emoticon.rb
jpmobile-4.2.3 lib/jpmobile/mobile/unicode_emoticon.rb
jpmobile-4.2.2 lib/jpmobile/mobile/unicode_emoticon.rb
jpmobile-4.2.1 lib/jpmobile/mobile/unicode_emoticon.rb
jpmobile-4.2.0 lib/jpmobile/mobile/unicode_emoticon.rb
jpmobile-3.0.9 lib/jpmobile/mobile/unicode_emoticon.rb
jpmobile-4.1.4 lib/jpmobile/mobile/unicode_emoticon.rb
jpmobile-4.0.1 lib/jpmobile/mobile/unicode_emoticon.rb
jpmobile-4.1.1 lib/jpmobile/mobile/unicode_emoticon.rb
jpmobile-4.1.0 lib/jpmobile/mobile/unicode_emoticon.rb
jpmobile-3.0.8 lib/jpmobile/mobile/unicode_emoticon.rb
jpmobile-4.1.0.rc1 lib/jpmobile/mobile/unicode_emoticon.rb
jpmobile-4.0.0 lib/jpmobile/mobile/unicode_emoticon.rb
jpmobile-3.0.7 lib/jpmobile/mobile/unicode_emoticon.rb
jpmobile-2.0.11 lib/jpmobile/mobile/unicode_emoticon.rb
jpmobile-1.0.12 lib/jpmobile/mobile/unicode_emoticon.rb