galakei 0.12.0 → 0.12.1

Sign up to get free protection for your applications and to get access to all the features.
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