mobylette 1.6.0 → 2.0
Sign up to get free protection for your applications and to get access to all the features.
- data/README.rdoc +35 -22
- data/Rakefile +0 -19
- data/lib/mobylette.rb +1 -4
- data/lib/mobylette/helmet.rb +0 -2
- data/lib/mobylette/railtie.rb +0 -6
- data/lib/mobylette/respond_to_mobile_requests.rb +135 -0
- data/lib/mobylette/version.rb +1 -1
- data/spec/controllers/application_controller_spec.rb +37 -0
- data/spec/dummy/app/controllers/application_controller.rb +0 -1
- data/spec/dummy/log/development.log +116 -0
- data/spec/dummy/log/test.log +21 -585
- data/spec/dummy/tmp/cache/assets/C82/3E0/sprockets%2F48eb4ac616538f8f36870451073315da +14 -0
- data/spec/dummy/tmp/cache/assets/CE4/1C0/sprockets%2F18d93e1533d585b2f64ec90b33176ac9 +0 -0
- data/spec/dummy/tmp/cache/assets/CED/A70/sprockets%2F621683d8791730a9cc7ce45e17a7e46d +0 -0
- data/spec/dummy/tmp/cache/assets/CFC/200/sprockets%2F716f89d85d4855706b8a9abec1969c62 +16 -0
- data/spec/dummy/tmp/cache/assets/D32/A10/sprockets%2F13fe41fee1fe35b49d145bcc06610705 +0 -0
- data/spec/dummy/tmp/cache/assets/D54/ED0/sprockets%2F71c9fa01091d432b131da3bb73faf3d4 +16 -0
- data/spec/dummy/tmp/cache/assets/D84/210/sprockets%2Fabd0103ccec2b428ac62c94e4c40b384 +14 -0
- data/spec/dummy/tmp/cache/assets/E04/890/sprockets%2F2f5173deea6c795b8fdde723bb4b63af +0 -0
- data/spec/lib/respond_to_mobile_requests_spec.rb +253 -0
- data/spec/spec_helper.rb +3 -0
- metadata +45 -107
- data/lib/mobylette/controllers/helpers.rb +0 -53
- data/lib/mobylette/controllers/respond_to_mobile_requests.rb +0 -125
- data/lib/mobylette/helmet/faker.rb +0 -19
- data/lib/mobylette/helmet/helpers.rb +0 -36
- data/spec/controllers/actioncontroller_base_spec.rb +0 -24
- data/spec/controllers/default_fallback_controller_spec.rb +0 -37
- data/spec/controllers/desktop_only_controller_spec.rb +0 -18
- data/spec/controllers/force_fallback_controller_spec.rb +0 -46
- data/spec/controllers/home_controller_spec.rb +0 -145
- data/spec/controllers/no_fallback_controller_spec.rb +0 -58
- data/spec/controllers/skip_xhr_request_controller_spec.rb +0 -19
- data/spec/dummy/app/controllers/default_fallback_controller.rb +0 -13
- data/spec/dummy/app/controllers/desktop_only_controller.rb +0 -2
- data/spec/dummy/app/controllers/fallbacks_controller.rb +0 -7
- data/spec/dummy/app/controllers/force_fallback_controller.rb +0 -13
- data/spec/dummy/app/controllers/home_controller.rb +0 -20
- data/spec/dummy/app/controllers/no_fallback_controller.rb +0 -13
- data/spec/dummy/app/controllers/skip_xhr_request_controller.rb +0 -7
- data/spec/dummy/app/controllers/testing_controller.rb +0 -9
- data/spec/dummy/app/views/default_fallback/index.html.erb +0 -1
- data/spec/dummy/app/views/default_fallback/index.js.erb +0 -1
- data/spec/dummy/app/views/default_fallback/index.mobile.erb +0 -1
- data/spec/dummy/app/views/default_fallback/test.html.erb +0 -1
- data/spec/dummy/app/views/default_fallback/test.js.erb +0 -1
- data/spec/dummy/app/views/fallbacks/index.html.erb +0 -2
- data/spec/dummy/app/views/fallbacks/index.js.erb +0 -1
- data/spec/dummy/app/views/fallbacks/index.mobile.erb +0 -0
- data/spec/dummy/app/views/fallbacks/index.xml.erb +0 -0
- data/spec/dummy/app/views/fallbacks/no_mobile.html.erb +0 -0
- data/spec/dummy/app/views/force_fallback/index.html.erb +0 -1
- data/spec/dummy/app/views/force_fallback/index.js.erb +0 -1
- data/spec/dummy/app/views/force_fallback/index.mobile.erb +0 -1
- data/spec/dummy/app/views/force_fallback/test.html.erb +0 -1
- data/spec/dummy/app/views/force_fallback/test.js.erb +0 -1
- data/spec/dummy/app/views/home/desktop.html.erb +0 -3
- data/spec/dummy/app/views/home/index.html.erb +0 -9
- data/spec/dummy/app/views/home/index.js.erb +0 -1
- data/spec/dummy/app/views/home/index.mobile.erb +0 -9
- data/spec/dummy/app/views/home/mobile.mobile.erb +0 -3
- data/spec/dummy/app/views/home/no_mobile_view.html.erb +0 -3
- data/spec/dummy/app/views/ignore_mobile_path/index.mobile.erb +0 -1
- data/spec/dummy/app/views/no_fallback/index.html.erb +0 -1
- data/spec/dummy/app/views/no_fallback/index.js.erb +0 -1
- data/spec/dummy/app/views/no_fallback/index.mobile.erb +0 -1
- data/spec/dummy/app/views/no_fallback/test.html.erb +0 -1
- data/spec/dummy/app/views/no_fallback/test.js.erb +0 -1
- data/spec/dummy/app/views/skip_xhr_request/index.html.erb +0 -9
- data/spec/dummy/app/views/skip_xhr_request/index.js.erb +0 -1
- data/spec/dummy/app/views/skip_xhr_request/index.mobile.erb +0 -9
- data/spec/dummy/app/views/view_path/index.mobile.erb +0 -1
- data/spec/helpers/mobylette_helpers_spec.rb +0 -59
data/README.rdoc
CHANGED
@@ -1,7 +1,12 @@
|
|
1
1
|
http://tscolari.github.com/mobylette/mobylette_images/mobylette.jpg
|
2
2
|
|
3
|
+
Mobylette 2.0+ deprecated the respond_to_mobile_requests method.
|
4
|
+
Now you must use `include Mobylette::RespondToMobileRequests` instead.
|
5
|
+
to configure it, see the configuration.
|
6
|
+
Also stylesheet and javascript helpers were removed.
|
7
|
+
|
3
8
|
Mobylette 1.6+ only supports Ruby 1.9.2+
|
4
|
-
For Ruby 1.8.7 support, please use version
|
9
|
+
For Ruby 1.8.7 support, please use version < 1.6
|
5
10
|
|
6
11
|
= Mobylette http://travis-ci.org/tscolari/mobylette.png
|
7
12
|
|
@@ -24,7 +29,7 @@ Add the gem to your gemfile:
|
|
24
29
|
|
25
30
|
And add to your ApplicationController.rb (for enabling it to all your controllers) or to the controllers you want this functionality on:
|
26
31
|
|
27
|
-
|
32
|
+
include Mobyllete::RespondToMobileRequests
|
28
33
|
|
29
34
|
After that, you may start adding your .mobile. views.
|
30
35
|
|
@@ -42,30 +47,36 @@ There is a difference between is_mobile_view? and is_mobile_request?. You may ha
|
|
42
47
|
* is_mobile_request? -> Exclusively checks for the device from where the request were made
|
43
48
|
* is_mobile_view? -> Exclusively checks for the view format been rendered
|
44
49
|
|
45
|
-
|
46
|
-
|
47
|
-
This works like the stylesheet_link_tag helper, but when the request comes from a mobile device, it adds "_mobile" to the stylesheets before calling stylesheet_link_tag
|
50
|
+
== Configuration
|
48
51
|
|
49
|
-
|
52
|
+
You can set the configuration with the mobyllete_config method:
|
50
53
|
|
51
|
-
|
54
|
+
mobylette_config do |config|
|
55
|
+
config[:fall_back] = nil
|
56
|
+
config[:skip_xhr_requests] = false
|
57
|
+
end
|
52
58
|
|
53
59
|
== Fall Backs
|
54
60
|
|
55
|
-
By default, when the mobile format is not found, mobylette will fall back to the request original format. For example, if a
|
61
|
+
By default, when the mobile format is not found, mobylette will fall back to the request original format. For example, if a mobile device makes a request by html, and there is no mobile view, it will render the html. You may force it always to fall back to a especific format, by setting the :fall_back option on your controller:
|
56
62
|
|
57
|
-
|
63
|
+
mobylette_config do |config|
|
64
|
+
config[:fall_back] = :html
|
65
|
+
end
|
58
66
|
|
59
67
|
This would force all views (mobile) to fall back to the html views. You may also disable this behavior, and no fall back will ever occur:
|
60
68
|
|
61
|
-
|
62
|
-
|
69
|
+
mobylette_config do |config|
|
70
|
+
config[:fall_back] = false
|
71
|
+
end
|
63
72
|
|
64
73
|
== XHR Requests
|
65
74
|
|
66
|
-
By default the mobile device verification will skip XHR requests, and these will be served as if mobylette wasn't there. You can override this behavior by
|
75
|
+
By default the mobile device verification will skip XHR requests, and these will be served as if mobylette wasn't there. You can override this behavior by setting the :skip_xhr_requests option to false on your controller:
|
67
76
|
|
68
|
-
|
77
|
+
mobylette_config do |config|
|
78
|
+
config[:skip_xhr_requests] = false
|
79
|
+
end
|
69
80
|
|
70
81
|
You may need to use this if you are using JQuery mobile or something similar in your application.
|
71
82
|
|
@@ -73,7 +84,7 @@ You may need to use this if you are using JQuery mobile or something similar in
|
|
73
84
|
|
74
85
|
In the case you need to skip a mobile_request for been treated as mobile, you can pass the `skip_mobile=true` param to the url/request.
|
75
86
|
|
76
|
-
For example, you are using jquery_mobile and by that `:skip_xhr_requests
|
87
|
+
For example, you are using jquery_mobile and by that `:skip_xhr_requests = false`, but there is a special case where you need to process an Ajax, then you can use this param.
|
77
88
|
|
78
89
|
== Forcing/Ignoring Mobile Requests
|
79
90
|
|
@@ -104,28 +115,30 @@ For testing, include the Mobylette::Helmet module to your test/test_helpers.rb:
|
|
104
115
|
|
105
116
|
For RSpec: add to your spec/spec_helpers.rb or create a spec/support/mobylette.rb with the following:
|
106
117
|
|
107
|
-
require 'mobylette/helmet'
|
118
|
+
require 'mobylette/helmet'
|
108
119
|
RSpec.configure do |config|
|
109
120
|
config.include Mobylette::Helmet, :type => :controller
|
110
121
|
end
|
111
122
|
|
112
|
-
This will add
|
123
|
+
This will add 3 methods to your test scope:
|
113
124
|
|
114
|
-
force_mobile_request_agent
|
125
|
+
force_mobile_request_agent(agent = 'Android')
|
115
126
|
|
116
|
-
|
127
|
+
This will force a mobile user_agent, allowing you to test mobile requests.
|
117
128
|
|
118
129
|
reset_test_request_agent
|
119
130
|
|
120
|
-
|
131
|
+
This will reset your user_agent to the test default "Rails Testing". You don't need to call this everytime, all your requests by default are "Rails Testing" in your test env.
|
132
|
+
|
133
|
+
set_session_override(override_value)
|
134
|
+
|
135
|
+
This will force the session_override value in the users session. Values possible values are: :ignore_mobile and :force_mobile
|
121
136
|
|
122
137
|
Friendly note: on your tests, call these functions BEFORE you make the request, otherwise they are useless =p
|
123
138
|
|
124
139
|
== Contributions and Credits
|
125
140
|
|
126
|
-
|
127
|
-
|
128
|
-
Also, these pages were very usefull when creating the gem:
|
141
|
+
these pages were very usefull when creating this gem:
|
129
142
|
* http://stackoverflow.com/questions/5126085/ruby-on-rails-mobile-application
|
130
143
|
* http://www.arctickiwi.com/blog/mobile-enable-your-ruby-on-rails-site-for-small-screens
|
131
144
|
* http://metautonomo.us/2011/01/05/mobile-devices-and-rails-maintaining-your-sanity/
|
data/Rakefile
CHANGED
@@ -20,23 +20,4 @@ RDoc::Task.new(:rdoc) do |rdoc|
|
|
20
20
|
rdoc.rdoc_files.include('lib/**/*.rb')
|
21
21
|
end
|
22
22
|
|
23
|
-
|
24
|
-
|
25
23
|
Bundler::GemHelper.install_tasks
|
26
|
-
|
27
|
-
require 'rake/testtask'
|
28
|
-
|
29
|
-
Rake::TestTask.new(:test) do |t|
|
30
|
-
t.libs << 'lib'
|
31
|
-
t.libs << 'test'
|
32
|
-
t.pattern = 'test/**/*_test.rb'
|
33
|
-
t.verbose = false
|
34
|
-
end
|
35
|
-
|
36
|
-
require 'metric_fu'
|
37
|
-
MetricFu::Configuration.run do |config|
|
38
|
-
config.rcov[:test_files] = ['spec/**/*_spec.rb']
|
39
|
-
config.rcov[:rcov_opts] << "-Ispec" # Needed to find spec_helper
|
40
|
-
end
|
41
|
-
|
42
|
-
task :default => :test
|
data/lib/mobylette.rb
CHANGED
@@ -1,10 +1,7 @@
|
|
1
1
|
#
|
2
2
|
# Rails automatic mobile request support
|
3
3
|
module Mobylette
|
4
|
-
|
5
|
-
require "mobylette/controllers/respond_to_mobile_requests"
|
6
|
-
require "mobylette/controllers/helpers"
|
7
|
-
end
|
4
|
+
require "mobylette/respond_to_mobile_requests"
|
8
5
|
|
9
6
|
# TestHelpers
|
10
7
|
# require "mobylette/helmet"
|
data/lib/mobylette/helmet.rb
CHANGED
data/lib/mobylette/railtie.rb
CHANGED
@@ -4,11 +4,5 @@ module Mobylette
|
|
4
4
|
# Automatic inlcudes Mobylette::Controllers::RespondToMobileRequests to ActiveController::Base and
|
5
5
|
# load Mobylette::Controllers::Helpers as ActionController::Base helpers
|
6
6
|
class Railtie < ::Rails::Railtie
|
7
|
-
initializer :mobylette do
|
8
|
-
ActiveSupport.on_load(:action_controller) do
|
9
|
-
::ActionController::Base.send(:include, Mobylette::Controllers::RespondToMobileRequests)
|
10
|
-
::ActionController::Base.helper Mobylette::Controllers::Helpers
|
11
|
-
end
|
12
|
-
end
|
13
7
|
end
|
14
8
|
end
|
@@ -0,0 +1,135 @@
|
|
1
|
+
module Mobylette
|
2
|
+
# Mobylette::Controllers::RespondToMobileRequests includes the respond_to_mobile_requests
|
3
|
+
# to your ActionController::Base.
|
4
|
+
#
|
5
|
+
# The respond_to_mobile_requests method enables the controller mobile handling
|
6
|
+
module RespondToMobileRequests
|
7
|
+
extend ActiveSupport::Concern
|
8
|
+
|
9
|
+
included do
|
10
|
+
helper_method :is_mobile_request?
|
11
|
+
helper_method :is_mobile_view?
|
12
|
+
|
13
|
+
before_filter :handle_mobile
|
14
|
+
|
15
|
+
cattr_accessor :mobylette_options
|
16
|
+
@@mobylette_options = Hash.new
|
17
|
+
@@mobylette_options[:skip_xhr_requests] = true
|
18
|
+
@@mobylette_options[:fall_back] = nil
|
19
|
+
|
20
|
+
# List of mobile agents, from mobile_fu (https://github.com/brendanlim/mobile-fu)
|
21
|
+
#
|
22
|
+
MOBILE_USER_AGENTS = 'palm|blackberry|nokia|phone|midp|mobi|symbian|chtml|ericsson|minimo|' +
|
23
|
+
'audiovox|motorola|samsung|telit|upg1|windows ce|ucweb|astel|plucker|' +
|
24
|
+
'x320|x240|j2me|sgh|portable|sprint|docomo|kddi|softbank|android|mmp|' +
|
25
|
+
'pdxgw|netfront|xiino|vodafone|portalmmm|sagem|mot-|sie-|ipod|up\\.b|' +
|
26
|
+
'webos|amoi|novarra|cdm|alcatel|pocket|iphone|mobileexplorer|mobile'
|
27
|
+
end
|
28
|
+
|
29
|
+
module ClassMethods
|
30
|
+
# This method enables the controller do handle mobile requests
|
31
|
+
#
|
32
|
+
# You must add this to every controller you want to respond differently to mobile devices,
|
33
|
+
# or make it application wide calling it from the ApplicationController
|
34
|
+
#
|
35
|
+
# Possible options:
|
36
|
+
# * fall_back: :html
|
37
|
+
# You may pass a fall_back option to the method, it will force the render
|
38
|
+
# to look for that other format, in case there is not a .mobile file for the view.
|
39
|
+
# By default, it will fall back to the format of the original request.
|
40
|
+
# If you don't want fall back at all, pass fall_back: false
|
41
|
+
# * skip_xhr_requests: true/false
|
42
|
+
# By default this is set to true. When a xhr request enters in, it will skip the
|
43
|
+
# mobile verification. This will let your ajax calls to work as intended.
|
44
|
+
# You may disable this (actually you will have to) if you are using JQuery Mobile, or
|
45
|
+
# other js framework that uses ajax. To disable, set skip_xhr_requests: false
|
46
|
+
#
|
47
|
+
# Example Usage:
|
48
|
+
#
|
49
|
+
# class ApplicationController...
|
50
|
+
# include Mobylette::RespondToMobileRequests
|
51
|
+
# ...
|
52
|
+
# mobylette_config do |config|
|
53
|
+
# config[:fall_back] = :html
|
54
|
+
# config[:skip_xhr_requests] = false
|
55
|
+
# end
|
56
|
+
# ...
|
57
|
+
# end
|
58
|
+
#
|
59
|
+
def mobylette_config
|
60
|
+
yield(self.mobylette_options)
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
64
|
+
private
|
65
|
+
|
66
|
+
# :doc:
|
67
|
+
# Private: Tells if the request comes from a mobile user_agent or not
|
68
|
+
#
|
69
|
+
def is_mobile_request?
|
70
|
+
request.user_agent.to_s.downcase =~ /#{MOBILE_USER_AGENTS}/
|
71
|
+
end
|
72
|
+
|
73
|
+
# :doc:
|
74
|
+
# Private: Helper method that tells if the currently view is mobile or not
|
75
|
+
#
|
76
|
+
def is_mobile_view?
|
77
|
+
true if (params[:format] == "mobile") || (request.format.to_s == "mobile")
|
78
|
+
end
|
79
|
+
|
80
|
+
# Private: This is the method that tells if the request will be threated as mobile
|
81
|
+
# or not
|
82
|
+
#
|
83
|
+
def respond_as_mobile?
|
84
|
+
impediments = stop_processing_because_xhr? || stop_processing_because_param?
|
85
|
+
(not impediments) && (force_mobile_by_session? || is_mobile_request? || params[:format] == 'mobile')
|
86
|
+
end
|
87
|
+
|
88
|
+
# Private: Returns true if the visitor has the force_mobile set in it's session
|
89
|
+
#
|
90
|
+
def force_mobile_by_session?
|
91
|
+
session[:mobylette_override] == :force_mobile
|
92
|
+
end
|
93
|
+
|
94
|
+
# Private: Tells when mobylette should not interfere in the rendering
|
95
|
+
# process because the `skip_mobile` param is set to true
|
96
|
+
#
|
97
|
+
# Passing :skip_mobile = true to a request will not render it as a mobile
|
98
|
+
#
|
99
|
+
def stop_processing_because_param?
|
100
|
+
return true if params[:skip_mobile] == 'true'
|
101
|
+
false
|
102
|
+
end
|
103
|
+
|
104
|
+
# Private: Tells when mobylette should or not interfere in the rendering
|
105
|
+
# process because of a xhr request.
|
106
|
+
#
|
107
|
+
# if the request is not xhr this will aways return false
|
108
|
+
# this will only return true for xhr requests, when you explicit want to
|
109
|
+
# not skip_xhr_requests.
|
110
|
+
#
|
111
|
+
def stop_processing_because_xhr?
|
112
|
+
if request.xhr? && self.mobylette_options[:skip_xhr_requests]
|
113
|
+
true
|
114
|
+
else
|
115
|
+
false
|
116
|
+
end
|
117
|
+
end
|
118
|
+
|
119
|
+
# :doc:
|
120
|
+
# Private: Process the request as mobile
|
121
|
+
#
|
122
|
+
def handle_mobile
|
123
|
+
return if session[:mobylette_override] == :ignore_mobile
|
124
|
+
if respond_as_mobile?
|
125
|
+
|
126
|
+
original_format = request.format.to_sym
|
127
|
+
request.format = :mobile
|
128
|
+
if self.mobylette_options[:fall_back] != false
|
129
|
+
request.formats << Mime::Type.new(self.mobylette_options[:fall_back] || original_format)
|
130
|
+
end
|
131
|
+
end
|
132
|
+
end
|
133
|
+
|
134
|
+
end
|
135
|
+
end
|
data/lib/mobylette/version.rb
CHANGED
@@ -0,0 +1,37 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe ApplicationController do
|
4
|
+
|
5
|
+
describe 'Helmet' do
|
6
|
+
|
7
|
+
describe "#force_mobile_request_agent" do
|
8
|
+
it "should set request.user_agent to Android by default" do
|
9
|
+
force_mobile_request_agent
|
10
|
+
request.user_agent.should == 'Android'
|
11
|
+
end
|
12
|
+
|
13
|
+
it "should set request.user_agent to whatever the argument is" do
|
14
|
+
force_mobile_request_agent(:any_value)
|
15
|
+
request.user_agent.should == :any_value
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
describe "#reset_test_request_agent" do
|
20
|
+
it "should reset request.user_agent to rails default" do
|
21
|
+
force_mobile_request_agent(:something_else)
|
22
|
+
request.user_agent.should == :something_else
|
23
|
+
reset_test_request_agent
|
24
|
+
request.user_agent.should == 'Rails Testing'
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
describe "#set_session_override" do
|
29
|
+
it "should set the session[mobylette_override] to whatever value the argument is" do
|
30
|
+
set_session_override(:super_testing)
|
31
|
+
session[:mobylette_override].should == :super_testing
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
end
|
36
|
+
|
37
|
+
end
|
@@ -0,0 +1,116 @@
|
|
1
|
+
|
2
|
+
|
3
|
+
Started GET "/" for 127.0.0.1 at 2012-03-25 16:04:55 -0300
|
4
|
+
Processing by HomeController#index as HTML
|
5
|
+
Rendered home/index.html.erb within layouts/application (2.2ms)
|
6
|
+
Compiled application.css (0ms) (pid 45506)
|
7
|
+
Compiled application.js (0ms) (pid 45506)
|
8
|
+
Completed 200 OK in 25ms (Views: 24.5ms)
|
9
|
+
|
10
|
+
|
11
|
+
Started GET "/assets/application.css?body=1" for 127.0.0.1 at 2012-03-25 16:04:55 -0300
|
12
|
+
Served asset /application.css - 200 OK (5ms)
|
13
|
+
|
14
|
+
|
15
|
+
Started GET "/assets/application.js?body=1" for 127.0.0.1 at 2012-03-25 16:04:55 -0300
|
16
|
+
Served asset /application.js - 200 OK (3ms)
|
17
|
+
|
18
|
+
|
19
|
+
Started GET "/" for 192.168.0.5 at 2012-03-25 16:05:53 -0300
|
20
|
+
Processing by HomeController#index as HTML
|
21
|
+
Rendered home/index.mobile.erb within layouts/application (0.6ms)
|
22
|
+
Compiled application_mobile.css (0ms) (pid 45506)
|
23
|
+
Compiled application_mobile.js (0ms) (pid 45506)
|
24
|
+
Completed 200 OK in 30ms (Views: 29.3ms)
|
25
|
+
|
26
|
+
|
27
|
+
Started GET "/assets/application_mobile.css?body=1" for 192.168.0.5 at 2012-03-25 16:05:53 -0300
|
28
|
+
Served asset /application_mobile.css - 200 OK (5ms)
|
29
|
+
|
30
|
+
|
31
|
+
Started GET "/assets/application_mobile.js?body=1" for 192.168.0.5 at 2012-03-25 16:05:53 -0300
|
32
|
+
Served asset /application_mobile.js - 200 OK (2ms)
|
33
|
+
|
34
|
+
|
35
|
+
Started GET "/" for 127.0.0.1 at 2012-03-25 16:11:35 -0300
|
36
|
+
Processing by HomeController#index as HTML
|
37
|
+
Rendered home/index.html.erb within layouts/application (2.5ms)
|
38
|
+
Completed 200 OK in 34ms (Views: 33.9ms)
|
39
|
+
|
40
|
+
|
41
|
+
Started GET "/assets/application.css?body=1" for 127.0.0.1 at 2012-03-25 16:11:35 -0300
|
42
|
+
Served asset /application.css - 304 Not Modified (0ms)
|
43
|
+
|
44
|
+
|
45
|
+
Started GET "/assets/application.js?body=1" for 127.0.0.1 at 2012-03-25 16:11:35 -0300
|
46
|
+
Served asset /application.js - 304 Not Modified (0ms)
|
47
|
+
|
48
|
+
|
49
|
+
Started GET "/" for 192.168.0.5 at 2012-03-25 16:11:43 -0300
|
50
|
+
Processing by HomeController#index as HTML
|
51
|
+
Rendered home/index.mobile.erb within layouts/application (0.8ms)
|
52
|
+
Completed 200 OK in 8ms (Views: 8.1ms)
|
53
|
+
|
54
|
+
|
55
|
+
Started GET "/assets/application_mobile.css?body=1" for 192.168.0.5 at 2012-03-25 16:11:43 -0300
|
56
|
+
Served asset /application_mobile.css - 304 Not Modified (0ms)
|
57
|
+
|
58
|
+
|
59
|
+
Started GET "/assets/application_mobile.js?body=1" for 192.168.0.5 at 2012-03-25 16:11:43 -0300
|
60
|
+
Served asset /application_mobile.js - 304 Not Modified (0ms)
|
61
|
+
|
62
|
+
|
63
|
+
Started GET "/" for 127.0.0.1 at 2012-03-25 16:12:03 -0300
|
64
|
+
Processing by HomeController#index as HTML
|
65
|
+
Rendered home/index.html.erb within layouts/application (0.3ms)
|
66
|
+
Completed 200 OK in 26ms (Views: 25.6ms)
|
67
|
+
|
68
|
+
|
69
|
+
Started GET "/assets/application.css?body=1" for 127.0.0.1 at 2012-03-25 16:12:03 -0300
|
70
|
+
Served asset /application.css - 304 Not Modified (0ms)
|
71
|
+
|
72
|
+
|
73
|
+
Started GET "/assets/application.js?body=1" for 127.0.0.1 at 2012-03-25 16:12:03 -0300
|
74
|
+
Served asset /application.js - 304 Not Modified (0ms)
|
75
|
+
|
76
|
+
|
77
|
+
Started GET "/" for 127.0.0.1 at 2012-03-25 16:12:05 -0300
|
78
|
+
Processing by HomeController#index as HTML
|
79
|
+
Rendered home/index.html.erb within layouts/application (0.2ms)
|
80
|
+
Completed 200 OK in 4ms (Views: 3.7ms)
|
81
|
+
|
82
|
+
|
83
|
+
Started GET "/assets/application.css?body=1" for 127.0.0.1 at 2012-03-25 16:12:05 -0300
|
84
|
+
Served asset /application.css - 304 Not Modified (0ms)
|
85
|
+
|
86
|
+
|
87
|
+
Started GET "/assets/application.js?body=1" for 127.0.0.1 at 2012-03-25 16:12:05 -0300
|
88
|
+
Served asset /application.js - 304 Not Modified (0ms)
|
89
|
+
|
90
|
+
|
91
|
+
Started GET "/" for 127.0.0.1 at 2012-03-25 16:12:12 -0300
|
92
|
+
Processing by HomeController#index as HTML
|
93
|
+
Rendered home/index.html.erb within layouts/application (0.2ms)
|
94
|
+
Completed 200 OK in 4ms (Views: 3.6ms)
|
95
|
+
|
96
|
+
|
97
|
+
Started GET "/assets/application.css?body=1" for 127.0.0.1 at 2012-03-25 16:12:12 -0300
|
98
|
+
Served asset /application.css - 304 Not Modified (0ms)
|
99
|
+
|
100
|
+
|
101
|
+
Started GET "/assets/application.js?body=1" for 127.0.0.1 at 2012-03-25 16:12:12 -0300
|
102
|
+
Served asset /application.js - 304 Not Modified (0ms)
|
103
|
+
|
104
|
+
|
105
|
+
Started GET "/" for 192.168.0.5 at 2012-03-25 16:12:15 -0300
|
106
|
+
Processing by HomeController#index as HTML
|
107
|
+
Rendered home/index.mobile.erb within layouts/application (0.5ms)
|
108
|
+
Completed 200 OK in 4ms (Views: 3.7ms)
|
109
|
+
|
110
|
+
|
111
|
+
Started GET "/assets/application_mobile.css?body=1" for 192.168.0.5 at 2012-03-25 16:12:15 -0300
|
112
|
+
Served asset /application_mobile.css - 200 OK (1ms)
|
113
|
+
|
114
|
+
|
115
|
+
Started GET "/assets/application_mobile.js?body=1" for 192.168.0.5 at 2012-03-25 16:12:15 -0300
|
116
|
+
Served asset /application_mobile.js - 200 OK (0ms)
|