galakei 0.12.0 → 0.12.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- galakei (0.11.3)
4
+ galakei (0.12.1)
5
5
  actionpack (>= 3.0.3)
6
6
  css_parser
7
7
  nokogiri
@@ -8,6 +8,7 @@ class Galakei::DocomoCss::InlineStylesheet
8
8
  doc = Nokogiri::HTML(controller.response.body)
9
9
  stylesheets = doc.xpath('//link[@rel="stylesheet"]')
10
10
  return if stylesheets.empty?
11
+ Galakei.logger.info("[galakei] DoCoMo browser 1.0 and external stylesheets detected, inlining CSS")
11
12
  stylesheets.each do |e|
12
13
  e.unlink
13
14
  stylesheet = Galakei::DocomoCss::Stylesheet.new(parser(e['href']))
@@ -22,9 +23,13 @@ class Galakei::DocomoCss::InlineStylesheet
22
23
  uri = URI.parse(href)
23
24
  if uri.host && uri.scheme && uri.port
24
25
  parser.load_uri!(uri)
25
- elsif /^\/assets\/(.+)/=~ href
26
+ elsif /^\/assets\/([^?]+)/=~ href
26
27
  asset = Rails.application.assets.find_asset($1)
27
- parser.add_block!(asset.to_s, {:media_types => :all, :base_dir => File.dirname(href)})
28
+ if asset
29
+ parser.add_block!(asset.to_s, {:media_types => :all, :base_dir => File.dirname(href)})
30
+ else
31
+ Galakei.logger.warn("[galakei] asset lookup for #{$1} failed, skipping")
32
+ end
28
33
  else
29
34
  parser.load_file!(path(href))
30
35
  end
@@ -13,6 +13,7 @@ class Galakei::Filter::ContentType < Galakei::Filter::Base
13
13
  end
14
14
 
15
15
  def filter
16
+ Galakei.logger.info("[galakei] DoCoMo browser 1.0 and HTML detected, changing content type to application/xhtml+xml")
16
17
  response.content_type = 'application/xhtml+xml'
17
18
  end
18
19
  end
@@ -6,7 +6,8 @@ class Galakei::Filter::Haml < Galakei::Filter::Base
6
6
  end
7
7
 
8
8
  def filter
9
- old_format = ::Haml::Template.options[:format]
9
+ old_format = ::Haml::Template.options[:format]
10
+ Galakei.logger.info("[galakei] galakei detected, switching HAML to use :xhtml")
10
11
  ::Haml::Template.options[:format] = :xhtml
11
12
  yield
12
13
  ensure
@@ -11,6 +11,7 @@ class Galakei::Filter::Recode < Galakei::Filter::Base
11
11
  end
12
12
 
13
13
  def filter
14
+ Galakei.logger.info("[galakei] AU handset over SSL detected, recoding everything to Shift_JIS")
14
15
  deep_apply(controller.params) do |param|
15
16
  NKF.nkf('-Sw', param)
16
17
  end
@@ -3,20 +3,20 @@ require "rack/request"
3
3
  module Galakei
4
4
  module Request
5
5
  def docomo?
6
- /^DoCoMo/ =~ user_agent
6
+ !! (/^DoCoMo/ =~ user_agent)
7
7
  end
8
8
 
9
9
  def au?
10
10
  # doesn't detect some 2G phones, but as they will be discontinued soon, doesn't really matter
11
- /KDDI/ =~ user_agent
11
+ !! (/KDDI/ =~ user_agent)
12
12
  end
13
13
 
14
14
  def softbank?
15
- /^(SoftBank|Vodafone)/ =~ user_agent
15
+ !! (/^(SoftBank|Vodafone)/ =~ user_agent)
16
16
  end
17
17
 
18
18
  def imode_browser_1_0?
19
- if /docomo(.*\((.*;)?c(\d+)\;)?/i =~ user_agent
19
+ if /^DoCoMo(.*\((.*;)?c(\d+)\;)?/ =~ user_agent
20
20
  $3.to_i < 500
21
21
  else
22
22
  false
@@ -1,3 +1,3 @@
1
1
  module Galakei
2
- VERSION = "0.12.0"
2
+ VERSION = "0.12.1"
3
3
  end
data/lib/galakei.rb CHANGED
@@ -23,4 +23,16 @@ if defined?(Rails)
23
23
  require 'galakei/railtie'
24
24
  require 'galakei/engine'
25
25
  require 'galakei/use_rack_request_to_extract_sid'
26
+
27
+ module Galakei
28
+ def self.logger
29
+ Rails.logger
30
+ end
31
+ end
32
+ else
33
+ module Galakei
34
+ def self.logger
35
+ @logger ||= Logger.new(STDERR)
36
+ end
37
+ end
26
38
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: galakei
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.12.0
4
+ version: 0.12.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -11,12 +11,12 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2011-10-04 00:00:00.000000000 +09:00
14
+ date: 2011-10-05 00:00:00.000000000 +09:00
15
15
  default_executable:
16
16
  dependencies:
17
17
  - !ruby/object:Gem::Dependency
18
18
  name: actionpack
19
- requirement: &17711400 !ruby/object:Gem::Requirement
19
+ requirement: &18595660 !ruby/object:Gem::Requirement
20
20
  none: false
21
21
  requirements:
22
22
  - - ! '>='
@@ -24,10 +24,10 @@ dependencies:
24
24
  version: 3.0.3
25
25
  type: :runtime
26
26
  prerelease: false
27
- version_requirements: *17711400
27
+ version_requirements: *18595660
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: rack
30
- requirement: &17710880 !ruby/object:Gem::Requirement
30
+ requirement: &18595000 !ruby/object:Gem::Requirement
31
31
  none: false
32
32
  requirements:
33
33
  - - ! '>='
@@ -35,10 +35,10 @@ dependencies:
35
35
  version: 1.2.1
36
36
  type: :runtime
37
37
  prerelease: false
38
- version_requirements: *17710880
38
+ version_requirements: *18595000
39
39
  - !ruby/object:Gem::Dependency
40
40
  name: css_parser
41
- requirement: &17710500 !ruby/object:Gem::Requirement
41
+ requirement: &18594460 !ruby/object:Gem::Requirement
42
42
  none: false
43
43
  requirements:
44
44
  - - ! '>='
@@ -46,10 +46,10 @@ dependencies:
46
46
  version: '0'
47
47
  type: :runtime
48
48
  prerelease: false
49
- version_requirements: *17710500
49
+ version_requirements: *18594460
50
50
  - !ruby/object:Gem::Dependency
51
51
  name: nokogiri
52
- requirement: &17710000 !ruby/object:Gem::Requirement
52
+ requirement: &18593840 !ruby/object:Gem::Requirement
53
53
  none: false
54
54
  requirements:
55
55
  - - ! '>='
@@ -57,10 +57,10 @@ dependencies:
57
57
  version: '0'
58
58
  type: :runtime
59
59
  prerelease: false
60
- version_requirements: *17710000
60
+ version_requirements: *18593840
61
61
  - !ruby/object:Gem::Dependency
62
62
  name: sanitize
63
- requirement: &17709560 !ruby/object:Gem::Requirement
63
+ requirement: &18567560 !ruby/object:Gem::Requirement
64
64
  none: false
65
65
  requirements:
66
66
  - - ! '>='
@@ -68,7 +68,7 @@ dependencies:
68
68
  version: '0'
69
69
  type: :runtime
70
70
  prerelease: false
71
- version_requirements: *17709560
71
+ version_requirements: *18567560
72
72
  description: Japanese feature phones (a.k.a., keitai, galakei) have a number of restrictions
73
73
  over normal web browsers. This library adds support for them
74
74
  email: info@mobalean.com