taskrabbit 0.0.7 → 0.0.8
Sign up to get free protection for your applications and to get access to all the features.
- data/.env.example +15 -0
- data/.gitignore +1 -0
- data/.rvmrc +1 -1
- data/CHANGELOG.md +4 -0
- data/Gemfile +2 -0
- data/lib/taskrabbit.rb +1 -0
- data/lib/taskrabbit/api.rb +1 -0
- data/lib/taskrabbit/offer.rb +15 -0
- data/lib/taskrabbit/smash.rb +17 -2
- data/lib/taskrabbit/task.rb +11 -1
- data/lib/taskrabbit/version.rb +1 -1
- data/spec/spec_helper.rb +8 -4
- data/spec/support/cassettes/account/no_user.yml +2 -2
- data/spec/support/cassettes/account/properties.yml +46 -27
- data/spec/support/cassettes/account/tasks.yml +10 -10
- data/spec/support/cassettes/account/with_user.yml +5 -5
- data/spec/support/cassettes/cities/all.yml +2 -2
- data/spec/support/cassettes/cities/find.yml +2 -2
- data/spec/support/cassettes/cities/properties.yml +2 -2
- data/spec/support/cassettes/errors/404.yml +28 -356
- data/spec/support/cassettes/locations/properties.yml +8 -8
- data/spec/support/cassettes/tasks/all.yml +2 -2
- data/spec/support/cassettes/tasks/create/default.yml +3 -3
- data/spec/support/cassettes/tasks/create/using_account.yml +3 -3
- data/spec/support/cassettes/tasks/create/with_invalid_params.yml +3 -3
- data/spec/support/cassettes/tasks/create/with_location.yml +3 -3
- data/spec/support/cassettes/tasks/create/with_times.yml +45 -0
- data/spec/support/cassettes/tasks/create/without_credit_card.yml +2 -2
- data/spec/support/cassettes/tasks/create/without_user.yml +2 -2
- data/spec/support/cassettes/tasks/delete.yml +6 -6
- data/spec/support/cassettes/tasks/find.yml +41 -26
- data/spec/support/cassettes/tasks/properties.yml +41 -26
- data/spec/support/cassettes/tasks/save.yml +6 -6
- data/spec/support/cassettes/tasks/update.yml +6 -6
- data/spec/support/cassettes/tasks/with_offers_properties.yml +45 -0
- data/spec/support/cassettes/tasks/without_client.yml +27 -23
- data/spec/support/cassettes/users/find.yml +61 -23
- data/spec/support/cassettes/users/properties.yml +35 -27
- data/spec/support/cassettes/users/tasks/all.yml +42 -27
- data/spec/taskrabbit/account_spec.rb +10 -10
- data/spec/taskrabbit/api_spec.rb +1 -1
- data/spec/taskrabbit/city_spec.rb +3 -3
- data/spec/taskrabbit/location_spec.rb +1 -1
- data/spec/taskrabbit/offer_spec.rb +23 -0
- data/spec/taskrabbit/smash_spec.rb +19 -0
- data/spec/taskrabbit/task_spec.rb +36 -22
- data/spec/taskrabbit/user_spec.rb +10 -10
- metadata +11 -3
data/.env.example
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
# This is an example of .env file used for testing.
|
2
|
+
# If you want to contribute to the taskrabbit gem
|
3
|
+
# please set up an developer account on taskrabbitdev.com
|
4
|
+
# and create 2 users ( one with a stored card and another one without)
|
5
|
+
API_KEY="key"
|
6
|
+
API_SECRET="secret"
|
7
|
+
BASE_URI="https://taskrabbitdev.com"
|
8
|
+
|
9
|
+
USER_WITH_CARD="user_with_card_token"
|
10
|
+
USER_WITH_CARD_ID=21
|
11
|
+
USER_WITHOUT_CARD="user_without_card_token"
|
12
|
+
USER_WITHOUT_CARD_ID=23
|
13
|
+
|
14
|
+
# This Task would be the one fetched
|
15
|
+
TASK_ID=3212
|
data/.gitignore
CHANGED
data/.rvmrc
CHANGED
@@ -1 +1 @@
|
|
1
|
-
rvm use ruby-1.9.3-p194@taskrabbit_client
|
1
|
+
rvm use ruby-1.9.3-p194@taskrabbit_client --create
|
data/CHANGELOG.md
CHANGED
data/Gemfile
CHANGED
data/lib/taskrabbit.rb
CHANGED
data/lib/taskrabbit/api.rb
CHANGED
@@ -0,0 +1,15 @@
|
|
1
|
+
module Taskrabbit
|
2
|
+
class Offer < Smash
|
3
|
+
property :id
|
4
|
+
property :charge_price
|
5
|
+
property :comment
|
6
|
+
property :state
|
7
|
+
property :runner_id
|
8
|
+
|
9
|
+
class << self
|
10
|
+
def all(scope, options = {})
|
11
|
+
scope.request('get', scope.association_path(self), Api::collection_transformers[self], options)
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
data/lib/taskrabbit/smash.rb
CHANGED
@@ -14,6 +14,22 @@ module Taskrabbit
|
|
14
14
|
raise Taskrabbit::Error.new("Couldn't find #{self} without an ID") if id.nil?
|
15
15
|
new({:id => id}, api)
|
16
16
|
end
|
17
|
+
|
18
|
+
def filtered_options(options)
|
19
|
+
filtered_hash = {}
|
20
|
+
options.each_pair do |key, value|
|
21
|
+
filtered_hash[key] =
|
22
|
+
case value
|
23
|
+
when Time
|
24
|
+
value.to_i
|
25
|
+
when Hash
|
26
|
+
filtered_options(value)
|
27
|
+
else
|
28
|
+
value
|
29
|
+
end
|
30
|
+
end
|
31
|
+
filtered_hash
|
32
|
+
end
|
17
33
|
end
|
18
34
|
|
19
35
|
class Error < Taskrabbit::Error
|
@@ -46,7 +62,7 @@ module Taskrabbit
|
|
46
62
|
# reload the object after doing a query to the api
|
47
63
|
def reload(method, path, options = {})
|
48
64
|
self.loaded = true
|
49
|
-
response = request(method, path, self.class, options)
|
65
|
+
response = request(method, path, self.class, Smash::filtered_options(options))
|
50
66
|
self.merge!(response)
|
51
67
|
clear_errors
|
52
68
|
!redirect?
|
@@ -77,6 +93,5 @@ module Taskrabbit
|
|
77
93
|
def clear_errors
|
78
94
|
%w{error errors}.map { |k| self.delete(k) }
|
79
95
|
end
|
80
|
-
|
81
96
|
end
|
82
97
|
end
|
data/lib/taskrabbit/task.rb
CHANGED
@@ -23,13 +23,14 @@ module Taskrabbit
|
|
23
23
|
property :state_changed_at, :transformer => TIME_TRANSFORMER
|
24
24
|
property :assign_by_time, :transformer => TIME_TRANSFORMER
|
25
25
|
property :location_visits, :transformer => Api::collection_transformers[Location]
|
26
|
+
property :offers, :transformer => Api::collection_transformers[Offer]
|
26
27
|
property :other_locations_attributes
|
27
28
|
property :uploaded_photos_attributes
|
28
29
|
property :uploaded_sounds_attributes
|
29
30
|
|
30
31
|
class << self
|
31
32
|
def all(scope, options = {})
|
32
|
-
scope.request('get', scope.association_path(self), Api::collection_transformers[self], options)
|
33
|
+
scope.request('get', scope.association_path(self), Api::collection_transformers[self], options_with_class_includes(options))
|
33
34
|
end
|
34
35
|
|
35
36
|
def create(api, params)
|
@@ -37,6 +38,10 @@ module Taskrabbit
|
|
37
38
|
task.save
|
38
39
|
task
|
39
40
|
end
|
41
|
+
|
42
|
+
def options_with_class_includes(options = {})
|
43
|
+
options.merge(:extra_query => {:include => {:task => properties.to_a}})
|
44
|
+
end
|
40
45
|
end
|
41
46
|
|
42
47
|
def fetch
|
@@ -65,5 +70,10 @@ module Taskrabbit
|
|
65
70
|
def delete!
|
66
71
|
reload('delete', "tasks/#{id.to_s}")
|
67
72
|
end
|
73
|
+
|
74
|
+
def reload(method, path, options = {})
|
75
|
+
options = self.class.options_with_class_includes(options) if method.to_s == 'get'
|
76
|
+
super(method, path, options)
|
77
|
+
end
|
68
78
|
end
|
69
79
|
end
|
data/lib/taskrabbit/version.rb
CHANGED
data/spec/spec_helper.rb
CHANGED
@@ -10,16 +10,16 @@ Bundler.require :default, :test
|
|
10
10
|
|
11
11
|
CASSETTES_PATH = File.join(File.dirname(__FILE__), "support", "cassettes")
|
12
12
|
TR_USERS = {
|
13
|
-
:with_card => {:secret => '
|
14
|
-
:without_card => {:secret => '
|
13
|
+
:with_card => {:secret => ENV['USER_WITH_CARD'], :id => ENV['USER_WITH_CARD_ID'].to_i },
|
14
|
+
:without_card => {:secret => ENV['USER_WITHOUT_CARD'], :id => ENV['USER_WITHOUT_CARD_ID'].to_i },
|
15
15
|
}
|
16
16
|
|
17
17
|
module Taskrabbit
|
18
18
|
module Config
|
19
19
|
remove_const(:DEFAULT_BASE_URI)
|
20
20
|
remove_const(:DEFAULT_API_SECRET)
|
21
|
-
DEFAULT_BASE_URI = '
|
22
|
-
DEFAULT_API_SECRET = '
|
21
|
+
DEFAULT_BASE_URI = 'https://taskrabbitdev.com'
|
22
|
+
DEFAULT_API_SECRET = ENV['API_SECRET']
|
23
23
|
end
|
24
24
|
end
|
25
25
|
Taskrabbit.reset
|
@@ -29,5 +29,9 @@ end
|
|
29
29
|
|
30
30
|
VCR.config do |c|
|
31
31
|
c.cassette_library_dir = CASSETTES_PATH
|
32
|
+
c.filter_sensitive_data('<API_SECRET>') { ENV['API_SECRET'] }
|
33
|
+
c.filter_sensitive_data('<API_KEY>') { ENV['API_KEY'] }
|
34
|
+
c.filter_sensitive_data('<USER_WITH_CARD>') { ENV['USER_WITH_CARD'] }
|
35
|
+
c.filter_sensitive_data('<USER_WITHOUT_CARD>') { ENV['USER_WITHOUT_CARD'] }
|
32
36
|
c.stub_with :fakeweb
|
33
37
|
end
|
@@ -2,11 +2,11 @@
|
|
2
2
|
- !ruby/struct:VCR::HTTPInteraction
|
3
3
|
request: !ruby/struct:VCR::Request
|
4
4
|
method: :get
|
5
|
-
uri:
|
5
|
+
uri: https://taskrabbitdev.com/api/v1/account?
|
6
6
|
body:
|
7
7
|
headers:
|
8
8
|
x-client-application:
|
9
|
-
-
|
9
|
+
- <API_SECRET>
|
10
10
|
authorization:
|
11
11
|
- OAuth
|
12
12
|
response: !ruby/struct:VCR::Response
|
@@ -1,32 +1,51 @@
|
|
1
|
-
---
|
2
|
-
- !ruby/struct:VCR::HTTPInteraction
|
3
|
-
request: !ruby/struct:VCR::Request
|
1
|
+
---
|
2
|
+
- !ruby/struct:VCR::HTTPInteraction
|
3
|
+
request: !ruby/struct:VCR::Request
|
4
4
|
method: :get
|
5
|
-
uri:
|
5
|
+
uri: https://taskrabbitdev.com:443/api/v1/account?
|
6
6
|
body:
|
7
|
-
headers:
|
8
|
-
x-client-application:
|
9
|
-
-
|
10
|
-
authorization:
|
11
|
-
- OAuth
|
12
|
-
response: !ruby/struct:VCR::Response
|
13
|
-
status: !ruby/struct:VCR::ResponseStatus
|
7
|
+
headers:
|
8
|
+
x-client-application:
|
9
|
+
- <API_SECRET>
|
10
|
+
authorization:
|
11
|
+
- OAuth <USER_WITH_CARD>
|
12
|
+
response: !ruby/struct:VCR::Response
|
13
|
+
status: !ruby/struct:VCR::ResponseStatus
|
14
14
|
code: 200
|
15
15
|
message: OK
|
16
|
-
headers:
|
17
|
-
|
18
|
-
-
|
19
|
-
|
16
|
+
headers:
|
17
|
+
server:
|
18
|
+
- nginx/1.0.11
|
19
|
+
date:
|
20
|
+
- Wed, 12 Sep 2012 23:05:11 GMT
|
21
|
+
content-type:
|
20
22
|
- application/json; charset=utf-8
|
21
|
-
|
22
|
-
-
|
23
|
-
|
24
|
-
-
|
25
|
-
|
26
|
-
-
|
27
|
-
content-length:
|
28
|
-
-
|
29
|
-
|
30
|
-
-
|
31
|
-
|
32
|
-
|
23
|
+
status:
|
24
|
+
- 200 OK
|
25
|
+
set-cookie:
|
26
|
+
- current_geo=1053; path=/; expires=Tue, 13-Nov-2012 00:05:11 GMT
|
27
|
+
x-runtime:
|
28
|
+
- '0.276146'
|
29
|
+
content-length:
|
30
|
+
- '2486'
|
31
|
+
etag:
|
32
|
+
- ! '"a161b4e56960d3355460e1e8621d6892"'
|
33
|
+
x-ua-compatible:
|
34
|
+
- IE=Edge,chrome=1
|
35
|
+
cache-control:
|
36
|
+
- max-age=0, private, must-revalidate
|
37
|
+
body: ! '{"links":{"get":"/api/v1/users/40","avatar_url":"http://s-app1.taskrabbit.com/images/default_avatars/poster_thumb.png"},"tasks":{"links":{"first":"/api/v1/users/40/tasks?page=1","last":"/api/v1/users/40/tasks?page=1","get":"/api/v1/users/40/tasks"},"items":[{"links":{"put":"/api/v1/tasks/52","get":"/api/v1/tasks/52","html":"http://s-app1.taskrabbit.com/tasks/house-cleaning-7091","authenticated":"http://s-app1.taskrabbit.com/go/82d359e524666a2d8b96f6df1fbfcad4a720a0b4fed8c3f0985139a13a4d6433b65f7f05e80360af131d8f9638f8307e035b","delete":"/api/v1/tasks/52"},"private_runner":false,"charge_price":23,"runners":{"items":[]},"id":52,"cost_in_cents":0,"state_changed_at":1347490579,"named_price":23,"description":"I
|
38
|
+
need to clean my house","assignment_type":"auto","name":"House Cleaning","assign_by_time":1347577200,"city":{"lat":37.77493,"links":{"get":"/api/v1/cities/3"},"id":1053,"name":"SF
|
39
|
+
Bay Area","lng":-122.419416},"runner_fee":0,"complete_by_time":1347663600,"state_label":"posted","description_properties":[{"value":"I
|
40
|
+
need to clean my house","key":"description","title":"Description"},{"value":null,"key":"private_description","title":"Private
|
41
|
+
description"},{"value":"Regular Maintenance","key":"task_field_16","title":"Level
|
42
|
+
of cleaning"},{"value":"Multiple Rooms, 1 Bathroom","key":"task_field_17","title":"Size
|
43
|
+
of house"},{"value":"Cleaning supplies are already in the house","key":"task_field_18","title":"Do
|
44
|
+
you have all the necessary cleaning supplies at your house"},{"value":1347577200,"key":"assign_by_time","title":"If
|
45
|
+
unassigned, Task will expire on"},{"value":1347663600,"key":"complete_by_time","title":"Task
|
46
|
+
should be completed by"}],"state":"opened"}]},"first_name":"UserWith","friend_code_url":"http://taskrabbit.com/PAL/40","counts":{"posted_tasks":1,"active_tasks":1,"ongoing_tasks":1},"id":40,"short_name":"UserWith","locations":{"links":{"get":"/api/v1/users/40/locations"},"items":[{"lat":37.7867363,"zip":"94102","id":52,"partial":"Powell
|
47
|
+
Street, San Francisco, CA, San Francisco, CA 94102","complete":"213 Powell Street,
|
48
|
+
San Francisco, CA, San Francisco, CA 94102","name":"Home","city":"San Francisco","lng":-122.4080542,"approximate_radius":0,"address":"213
|
49
|
+
Powell Street, San Francisco, CA","state":"CA"}]},"display_name":"UserWith c.","last_name":"card","city":{"links":{"get":"/api/v1/cities/3"},"lat":37.77493,"id":1053,"lng":-122.419416,"name":"SF
|
50
|
+
Bay Area"},"zip_code":"12345","full_name":"UserWith card","email":"userwithcard@taskrabbit.com"}'
|
51
|
+
http_version: '1.1'
|
@@ -2,13 +2,13 @@
|
|
2
2
|
- !ruby/struct:VCR::HTTPInteraction
|
3
3
|
request: !ruby/struct:VCR::Request
|
4
4
|
method: :get
|
5
|
-
uri:
|
5
|
+
uri: https://taskrabbitdev.com/api/v1/account?
|
6
6
|
body:
|
7
7
|
headers:
|
8
|
-
x-client-application:
|
9
|
-
-
|
10
|
-
authorization:
|
11
|
-
- OAuth
|
8
|
+
x-client-application:
|
9
|
+
- <API_SECRET>
|
10
|
+
authorization:
|
11
|
+
- OAuth <USER_WITH_CARD>
|
12
12
|
response: !ruby/struct:VCR::Response
|
13
13
|
status: !ruby/struct:VCR::ResponseStatus
|
14
14
|
code: 200
|
@@ -33,13 +33,13 @@
|
|
33
33
|
- !ruby/struct:VCR::HTTPInteraction
|
34
34
|
request: !ruby/struct:VCR::Request
|
35
35
|
method: :get
|
36
|
-
uri:
|
36
|
+
uri: https://taskrabbitdev.com/api/v1/users/49720/tasks?include[task][]=errors&include[task][]=links&include[task][]=error&include[task][]=id&include[task][]=name&include[task][]=user&include[task][]=runner&include[task][]=runners&include[task][]=named_price&include[task][]=charge_price&include[task][]=cost_in_cents&include[task][]=number_runners_to_fill&include[task][]=state_label&include[task][]=city_id&include[task][]=city&include[task][]=description&include[task][]=private_description&include[task][]=private_runner&include[task][]=virtual&include[task][]=state&include[task][]=assignment_type&include[task][]=complete_by_time&include[task][]=state_changed_at&include[task][]=assign_by_time&include[task][]=location_visits&include[task][]=offers&include[task][]=other_locations_attributes&include[task][]=uploaded_photos_attributes&include[task][]=uploaded_sounds_attributes
|
37
37
|
body:
|
38
38
|
headers:
|
39
|
-
x-client-application:
|
40
|
-
-
|
41
|
-
authorization:
|
42
|
-
- OAuth
|
39
|
+
x-client-application:
|
40
|
+
- <API_SECRET>
|
41
|
+
authorization:
|
42
|
+
- OAuth <USER_WITH_CARD>
|
43
43
|
response: !ruby/struct:VCR::Response
|
44
44
|
status: !ruby/struct:VCR::ResponseStatus
|
45
45
|
code: 200
|
@@ -2,13 +2,13 @@
|
|
2
2
|
- !ruby/struct:VCR::HTTPInteraction
|
3
3
|
request: !ruby/struct:VCR::Request
|
4
4
|
method: :get
|
5
|
-
uri:
|
5
|
+
uri: https://taskrabbitdev.com/api/v1/account?
|
6
6
|
body:
|
7
7
|
headers:
|
8
|
-
x-client-application:
|
9
|
-
-
|
10
|
-
authorization:
|
11
|
-
- OAuth
|
8
|
+
x-client-application:
|
9
|
+
- <API_SECRET>
|
10
|
+
authorization:
|
11
|
+
- OAuth <USER_WITH_CARD>
|
12
12
|
response: !ruby/struct:VCR::Response
|
13
13
|
status: !ruby/struct:VCR::ResponseStatus
|
14
14
|
code: 200
|
@@ -2,11 +2,11 @@
|
|
2
2
|
- !ruby/struct:VCR::HTTPInteraction
|
3
3
|
request: !ruby/struct:VCR::Request
|
4
4
|
method: :get
|
5
|
-
uri:
|
5
|
+
uri: https://taskrabbitdev.com/api/v1/cities?
|
6
6
|
body:
|
7
7
|
headers:
|
8
8
|
x-client-application:
|
9
|
-
-
|
9
|
+
- <API_SECRET>
|
10
10
|
authorization:
|
11
11
|
- OAuth
|
12
12
|
response: !ruby/struct:VCR::Response
|
@@ -2,11 +2,11 @@
|
|
2
2
|
- !ruby/struct:VCR::HTTPInteraction
|
3
3
|
request: !ruby/struct:VCR::Request
|
4
4
|
method: :get
|
5
|
-
uri:
|
5
|
+
uri: https://taskrabbitdev.com/api/v1/cities/3?
|
6
6
|
body:
|
7
7
|
headers:
|
8
8
|
x-client-application:
|
9
|
-
-
|
9
|
+
- <API_SECRET>
|
10
10
|
authorization:
|
11
11
|
- OAuth
|
12
12
|
response: !ruby/struct:VCR::Response
|
@@ -2,11 +2,11 @@
|
|
2
2
|
- !ruby/struct:VCR::HTTPInteraction
|
3
3
|
request: !ruby/struct:VCR::Request
|
4
4
|
method: :get
|
5
|
-
uri:
|
5
|
+
uri: https://taskrabbitdev.com/api/v1/cities/3?
|
6
6
|
body:
|
7
7
|
headers:
|
8
8
|
x-client-application:
|
9
|
-
-
|
9
|
+
- <API_SECRET>
|
10
10
|
authorization:
|
11
11
|
- OAuth
|
12
12
|
response: !ruby/struct:VCR::Response
|
@@ -1,362 +1,34 @@
|
|
1
|
-
---
|
2
|
-
- !ruby/struct:VCR::HTTPInteraction
|
3
|
-
request: !ruby/struct:VCR::Request
|
1
|
+
---
|
2
|
+
- !ruby/struct:VCR::HTTPInteraction
|
3
|
+
request: !ruby/struct:VCR::Request
|
4
4
|
method: :get
|
5
|
-
uri:
|
5
|
+
uri: https://taskrabbitdev.com:443/api/v1/tasks/something-that-doesnot-exists?include[task][]=errors&include[task][]=links&include[task][]=error&include[task][]=id&include[task][]=name&include[task][]=user&include[task][]=runner&include[task][]=runners&include[task][]=named_price&include[task][]=charge_price&include[task][]=cost_in_cents&include[task][]=number_runners_to_fill&include[task][]=state_label&include[task][]=city_id&include[task][]=city&include[task][]=description&include[task][]=private_description&include[task][]=private_runner&include[task][]=virtual&include[task][]=state&include[task][]=assignment_type&include[task][]=complete_by_time&include[task][]=state_changed_at&include[task][]=assign_by_time&include[task][]=location_visits&include[task][]=offers&include[task][]=other_locations_attributes&include[task][]=uploaded_photos_attributes&include[task][]=uploaded_sounds_attributes
|
6
6
|
body:
|
7
|
-
headers:
|
8
|
-
x-client-application:
|
9
|
-
-
|
10
|
-
authorization:
|
7
|
+
headers:
|
8
|
+
x-client-application:
|
9
|
+
- <API_SECRET>
|
10
|
+
authorization:
|
11
11
|
- OAuth
|
12
|
-
response: !ruby/struct:VCR::Response
|
13
|
-
status: !ruby/struct:VCR::ResponseStatus
|
12
|
+
response: !ruby/struct:VCR::Response
|
13
|
+
status: !ruby/struct:VCR::ResponseStatus
|
14
14
|
code: 404
|
15
15
|
message: Not Found
|
16
|
-
headers:
|
17
|
-
|
18
|
-
-
|
19
|
-
|
20
|
-
-
|
21
|
-
|
22
|
-
-
|
23
|
-
|
24
|
-
-
|
25
|
-
|
16
|
+
headers:
|
17
|
+
server:
|
18
|
+
- nginx/1.0.11
|
19
|
+
date:
|
20
|
+
- Thu, 13 Sep 2012 00:54:53 GMT
|
21
|
+
content-type:
|
22
|
+
- application/json; charset=utf-8
|
23
|
+
status:
|
24
|
+
- 404 Not Found
|
25
|
+
x-runtime:
|
26
|
+
- '0.031340'
|
27
|
+
content-length:
|
28
|
+
- '53'
|
29
|
+
x-ua-compatible:
|
30
|
+
- IE=Edge,chrome=1
|
31
|
+
cache-control:
|
26
32
|
- no-cache
|
27
|
-
body:
|
28
|
-
|
29
|
-
<head>
|
30
|
-
<title>Action Controller: Exception caught</title>
|
31
|
-
<style>
|
32
|
-
body { background-color: #fff; color: #333; }
|
33
|
-
|
34
|
-
body, p, ol, ul, td {
|
35
|
-
font-family: verdana, arial, helvetica, sans-serif;
|
36
|
-
font-size: 13px;
|
37
|
-
line-height: 18px;
|
38
|
-
}
|
39
|
-
|
40
|
-
pre {
|
41
|
-
background-color: #eee;
|
42
|
-
padding: 10px;
|
43
|
-
font-size: 11px;
|
44
|
-
}
|
45
|
-
|
46
|
-
a { color: #000; }
|
47
|
-
a:visited { color: #666; }
|
48
|
-
a:hover { color: #fff; background-color:#000; }
|
49
|
-
</style>
|
50
|
-
</head>
|
51
|
-
<body>
|
52
|
-
|
53
|
-
<h1>
|
54
|
-
ActiveRecord::RecordNotFound
|
55
|
-
|
56
|
-
in Api/v1/tasksController#show
|
57
|
-
|
58
|
-
</h1>
|
59
|
-
<pre>ActiveRecord::RecordNotFound</pre>
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
<p><code>RAILS_ROOT: /Users/xlrj/Sites/taskrabbit</code></p>
|
64
|
-
|
65
|
-
<div id="traces">
|
66
|
-
|
67
|
-
|
68
|
-
<a href="#" onclick="document.getElementById('Framework-Trace').style.display='none';document.getElementById('Full-Trace').style.display='none';document.getElementById('Application-Trace').style.display='block';; return false;">Application Trace</a> |
|
69
|
-
|
70
|
-
|
71
|
-
<a href="#" onclick="document.getElementById('Application-Trace').style.display='none';document.getElementById('Full-Trace').style.display='none';document.getElementById('Framework-Trace').style.display='block';; return false;">Framework Trace</a> |
|
72
|
-
|
73
|
-
|
74
|
-
<a href="#" onclick="document.getElementById('Application-Trace').style.display='none';document.getElementById('Framework-Trace').style.display='none';document.getElementById('Full-Trace').style.display='block';; return false;">Full Trace</a>
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
<div id="Application-Trace" style="display: block;">
|
79
|
-
<pre><code>/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/friendly_id-2.2.7/lib/friendly_id/sluggable_class_methods.rb:30:in `find_one'
|
80
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activerecord-2.3.10/lib/active_record/base.rb:1603:in `find_from_ids'
|
81
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activerecord-2.3.10/lib/active_record/base.rb:620:in `find'
|
82
|
-
/Users/xlrj/Sites/taskrabbit/gems/declarative_authorization/lib/declarative_authorization/in_controller.rb:141:in `load_controller_object'
|
83
|
-
/Users/xlrj/Sites/taskrabbit/gems/declarative_authorization/lib/declarative_authorization/in_controller.rb:497:in `send'
|
84
|
-
/Users/xlrj/Sites/taskrabbit/gems/declarative_authorization/lib/declarative_authorization/in_controller.rb:497:in `filter_resource_access'
|
85
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/callbacks.rb:182:in `call'
|
86
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/callbacks.rb:182:in `evaluate_method'
|
87
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/callbacks.rb:166:in `call'
|
88
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:225:in `call'
|
89
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:629:in `run_before_filters'
|
90
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:615:in `call_filters'
|
91
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:638:in `run_before_filters'
|
92
|
-
/Users/xlrj/Sites/taskrabbit/app/controllers/rabbit/base_controller.rb:105:in `set_thread_variables'
|
93
|
-
/Users/xlrj/Sites/taskrabbit/app/controllers/rabbit/client_app_controller.rb:52:in `set_thread_variables'
|
94
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/callbacks.rb:178:in `send'
|
95
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/callbacks.rb:178:in `evaluate_method'
|
96
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:186:in `call'
|
97
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:635:in `run_before_filters'
|
98
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:615:in `call_filters'
|
99
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:638:in `run_before_filters'
|
100
|
-
/Users/xlrj/Sites/taskrabbit/lib/master_slave_hooks.rb:51:in `with_consistency_filter'
|
101
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/callbacks.rb:178:in `send'
|
102
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/callbacks.rb:178:in `evaluate_method'
|
103
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:186:in `call'
|
104
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:635:in `run_before_filters'
|
105
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:615:in `call_filters'
|
106
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:610:in `perform_action_without_benchmark'
|
107
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/benchmarking.rb:68:in `perform_action_without_rescue'
|
108
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/core_ext/benchmark.rb:17:in `ms'
|
109
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/core_ext/benchmark.rb:17:in `ms'
|
110
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/benchmarking.rb:68:in `perform_action_without_rescue'
|
111
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/rescue.rb:160:in `perform_action_without_flash'
|
112
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/flash.rb:151:in `perform_action'
|
113
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/base.rb:532:in `send'
|
114
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/base.rb:532:in `process_without_filters'
|
115
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:606:in `process_without_compass'
|
116
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/compass-0.11.5/lib/compass/app_integration/rails/actionpack2/action_controller.rb:7:in `process'
|
117
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/base.rb:391:in `process'
|
118
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/base.rb:386:in `call'
|
119
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/routing/route_set.rb:438:in `call'</code></pre>
|
120
|
-
</div>
|
121
|
-
|
122
|
-
<div id="Framework-Trace" style="display: none;">
|
123
|
-
<pre><code>/Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/benchmark.rb:308:in `realtime'
|
124
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/dispatcher.rb:87:in `dispatch'
|
125
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/dispatcher.rb:121:in `_call'
|
126
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/dispatcher.rb:130:in `build_middleware_stack'
|
127
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/dispatcher.rb:114:in `call'
|
128
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/dispatcher.rb:108:in `call'
|
129
|
-
/Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/httpserver.rb:104:in `service'
|
130
|
-
/Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/httpserver.rb:65:in `run'
|
131
|
-
/Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/server.rb:173:in `start_thread'
|
132
|
-
/Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/server.rb:162:in `start'
|
133
|
-
/Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/server.rb:162:in `start_thread'
|
134
|
-
/Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/server.rb:95:in `start'
|
135
|
-
/Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/server.rb:92:in `each'
|
136
|
-
/Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/server.rb:92:in `start'
|
137
|
-
/Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/server.rb:23:in `start'
|
138
|
-
/Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/server.rb:82:in `start'
|
139
|
-
script/server:3:in `require'
|
140
|
-
script/server:3</code></pre>
|
141
|
-
</div>
|
142
|
-
|
143
|
-
<div id="Full-Trace" style="display: none;">
|
144
|
-
<pre><code>/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/friendly_id-2.2.7/lib/friendly_id/sluggable_class_methods.rb:30:in `find_one'
|
145
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activerecord-2.3.10/lib/active_record/base.rb:1603:in `find_from_ids'
|
146
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activerecord-2.3.10/lib/active_record/base.rb:620:in `find'
|
147
|
-
/Users/xlrj/Sites/taskrabbit/gems/declarative_authorization/lib/declarative_authorization/in_controller.rb:141:in `load_controller_object'
|
148
|
-
/Users/xlrj/Sites/taskrabbit/gems/declarative_authorization/lib/declarative_authorization/in_controller.rb:497:in `send'
|
149
|
-
/Users/xlrj/Sites/taskrabbit/gems/declarative_authorization/lib/declarative_authorization/in_controller.rb:497:in `filter_resource_access'
|
150
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/callbacks.rb:182:in `call'
|
151
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/callbacks.rb:182:in `evaluate_method'
|
152
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/callbacks.rb:166:in `call'
|
153
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:225:in `call'
|
154
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:629:in `run_before_filters'
|
155
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:615:in `call_filters'
|
156
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:638:in `run_before_filters'
|
157
|
-
/Users/xlrj/Sites/taskrabbit/app/controllers/rabbit/base_controller.rb:105:in `set_thread_variables'
|
158
|
-
/Users/xlrj/Sites/taskrabbit/app/controllers/rabbit/client_app_controller.rb:52:in `set_thread_variables'
|
159
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/callbacks.rb:178:in `send'
|
160
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/callbacks.rb:178:in `evaluate_method'
|
161
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:186:in `call'
|
162
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:635:in `run_before_filters'
|
163
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:615:in `call_filters'
|
164
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:638:in `run_before_filters'
|
165
|
-
/Users/xlrj/Sites/taskrabbit/lib/master_slave_hooks.rb:51:in `with_consistency_filter'
|
166
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/callbacks.rb:178:in `send'
|
167
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/callbacks.rb:178:in `evaluate_method'
|
168
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:186:in `call'
|
169
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:635:in `run_before_filters'
|
170
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:615:in `call_filters'
|
171
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:610:in `perform_action_without_benchmark'
|
172
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/benchmarking.rb:68:in `perform_action_without_rescue'
|
173
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/core_ext/benchmark.rb:17:in `ms'
|
174
|
-
/Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/benchmark.rb:308:in `realtime'
|
175
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activesupport-2.3.10/lib/active_support/core_ext/benchmark.rb:17:in `ms'
|
176
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/benchmarking.rb:68:in `perform_action_without_rescue'
|
177
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/rescue.rb:160:in `perform_action_without_flash'
|
178
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/flash.rb:151:in `perform_action'
|
179
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/base.rb:532:in `send'
|
180
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/base.rb:532:in `process_without_filters'
|
181
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/filters.rb:606:in `process_without_compass'
|
182
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/compass-0.11.5/lib/compass/app_integration/rails/actionpack2/action_controller.rb:7:in `process'
|
183
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/base.rb:391:in `process'
|
184
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/base.rb:386:in `call'
|
185
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/routing/route_set.rb:438:in `call'
|
186
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/dispatcher.rb:87:in `dispatch'
|
187
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/dispatcher.rb:121:in `_call'
|
188
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/dispatcher.rb:130:in `build_middleware_stack'
|
189
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activerecord-2.3.10/lib/active_record/query_cache.rb:29:in `call'
|
190
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activerecord-2.3.10/lib/active_record/query_cache.rb:29:in `call'
|
191
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activerecord-2.3.10/lib/active_record/connection_adapters/abstract/query_cache.rb:34:in `cache'
|
192
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activerecord-2.3.10/lib/active_record/query_cache.rb:9:in `cache'
|
193
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activerecord-2.3.10/lib/active_record/query_cache.rb:28:in `call'
|
194
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/activerecord-2.3.10/lib/active_record/connection_adapters/abstract/connection_pool.rb:361:in `call'
|
195
|
-
/Users/xlrj/Sites/taskrabbit/gems/oa-core/lib/omniauth/strategy.rb:60:in `call!'
|
196
|
-
/Users/xlrj/Sites/taskrabbit/gems/oa-core/lib/omniauth/strategy.rb:22:in `call'
|
197
|
-
/Users/xlrj/Sites/taskrabbit/gems/oa-core/lib/omniauth/strategy.rb:60:in `call!'
|
198
|
-
/Users/xlrj/Sites/taskrabbit/gems/oa-core/lib/omniauth/strategy.rb:22:in `call'
|
199
|
-
/Users/xlrj/Sites/taskrabbit/gems/oa-core/lib/omniauth/strategy.rb:60:in `call!'
|
200
|
-
/Users/xlrj/Sites/taskrabbit/gems/oa-core/lib/omniauth/strategy.rb:22:in `call'
|
201
|
-
/Users/xlrj/Sites/taskrabbit/gems/oa-core/lib/omniauth/strategy.rb:60:in `call!'
|
202
|
-
/Users/xlrj/Sites/taskrabbit/gems/oa-core/lib/omniauth/strategy.rb:22:in `call'
|
203
|
-
/Users/xlrj/Sites/taskrabbit/gems/oa-core/lib/omniauth/strategy.rb:136:in `call_app!'
|
204
|
-
/Users/xlrj/Sites/taskrabbit/lib/omniauth/strategies/facebook_token.rb:21:in `call!'
|
205
|
-
/Users/xlrj/Sites/taskrabbit/gems/oa-core/lib/omniauth/strategy.rb:22:in `call'
|
206
|
-
/Users/xlrj/Sites/taskrabbit/gems/oa-core/lib/omniauth/strategy.rb:60:in `call!'
|
207
|
-
/Users/xlrj/Sites/taskrabbit/gems/oa-core/lib/omniauth/strategy.rb:22:in `call'
|
208
|
-
/Users/xlrj/Sites/taskrabbit/gems/oa-core/lib/omniauth/builder.rb:30:in `call'
|
209
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/sass-3.1.15/lib/sass/plugin/rack.rb:54:in `call'
|
210
|
-
/Users/xlrj/Sites/taskrabbit/lib/middleware/referral_filter.rb:33:in `call'
|
211
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/string_coercion.rb:25:in `call'
|
212
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/rack-1.1.0/lib/rack/head.rb:9:in `call'
|
213
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/rack-1.1.0/lib/rack/methodoverride.rb:24:in `call'
|
214
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/params_parser.rb:15:in `call'
|
215
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/session/cookie_store.rb:100:in `call'
|
216
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/hoptoad_notifier-2.2.2/lib/hoptoad_notifier/rack.rb:27:in `call'
|
217
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/failsafe.rb:26:in `call'
|
218
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/rack-1.1.0/lib/rack/lock.rb:11:in `call'
|
219
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/rack-1.1.0/lib/rack/lock.rb:11:in `synchronize'
|
220
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/rack-1.1.0/lib/rack/lock.rb:11:in `call'
|
221
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/dispatcher.rb:114:in `call'
|
222
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/reloader.rb:34:in `run'
|
223
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/actionpack-2.3.10/lib/action_controller/dispatcher.rb:108:in `call'
|
224
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/rails-2.3.10/lib/rails/rack/static.rb:31:in `call'
|
225
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/rack-1.1.0/lib/rack/urlmap.rb:47:in `call'
|
226
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/rack-1.1.0/lib/rack/urlmap.rb:41:in `each'
|
227
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/rack-1.1.0/lib/rack/urlmap.rb:41:in `call'
|
228
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/rails-2.3.10/lib/rails/rack/log_tailer.rb:17:in `call'
|
229
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/rack-1.1.0/lib/rack/content_length.rb:13:in `call'
|
230
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/rack-1.1.0/lib/rack/handler/webrick.rb:48:in `service'
|
231
|
-
/Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/httpserver.rb:104:in `service'
|
232
|
-
/Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/httpserver.rb:65:in `run'
|
233
|
-
/Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/server.rb:173:in `start_thread'
|
234
|
-
/Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/server.rb:162:in `start'
|
235
|
-
/Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/server.rb:162:in `start_thread'
|
236
|
-
/Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/server.rb:95:in `start'
|
237
|
-
/Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/server.rb:92:in `each'
|
238
|
-
/Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/server.rb:92:in `start'
|
239
|
-
/Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/server.rb:23:in `start'
|
240
|
-
/Users/xlrj/.rvm/rubies/ree-1.8.7-2011.03/lib/ruby/1.8/webrick/server.rb:82:in `start'
|
241
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/rack-1.1.0/lib/rack/handler/webrick.rb:14:in `run'
|
242
|
-
/Users/xlrj/.rvm/gems/ree-1.8.7-2011.03@taskrabbit/gems/rails-2.3.10/lib/commands/server.rb:111
|
243
|
-
script/server:3:in `require'
|
244
|
-
script/server:3</code></pre>
|
245
|
-
</div>
|
246
|
-
|
247
|
-
</div>
|
248
|
-
|
249
|
-
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
|
254
|
-
<h2 style="margin-top: 30px">Request</h2>
|
255
|
-
<p><b>Parameters</b>: <pre>{"format"=>:json,
|
256
|
-
"id"=>"something-that-doesnot-exists"}</pre></p>
|
257
|
-
|
258
|
-
<p><a href="#" onclick="document.getElementById('session_dump').style.display='block'; return false;">Show session dump</a></p>
|
259
|
-
<div id="session_dump" style="display:none"><pre class='debug_dump'>---
|
260
|
-
</pre></div>
|
261
|
-
|
262
|
-
|
263
|
-
<h2 style="margin-top: 30px">Response</h2>
|
264
|
-
<p><b>Headers</b>: <pre>{"Content-Type"=>"",
|
265
|
-
"Cache-Control"=>"no-cache"}</pre></p>
|
266
|
-
|
267
|
-
|
268
|
-
|
269
|
-
</body>
|
270
|
-
</html><script type="text/javascript">
|
271
|
-
var Hoptoad = {
|
272
|
-
host : "hoptoadapp.com",
|
273
|
-
api_key : "d05f933d72e9ce90a819ed66a3f3e5cd",
|
274
|
-
notice : {"error_class":"ActiveRecord::RecordNotFound","line_number":"30","action":"show","component":"api/v1/tasks","file":"[GEM_ROOT]/gems/friendly_id-2.2.7/lib/friendly_id/sluggable_class_methods.rb","environment_name":"production"},
|
275
|
-
message : 'This error exists in production!',
|
276
|
-
|
277
|
-
initialize: function() {
|
278
|
-
if (this.initialized) {
|
279
|
-
return;
|
280
|
-
} else {
|
281
|
-
this.initialized = true;
|
282
|
-
}
|
283
|
-
|
284
|
-
var data = [];
|
285
|
-
|
286
|
-
for (var key in this.notice) {
|
287
|
-
data[data.length] = 'notice[' + key + ']=' + this.notice[key];
|
288
|
-
}
|
289
|
-
|
290
|
-
data[data.length] = 'notice[api_key]=' + this.api_key;
|
291
|
-
data[data.length] = 'callback=Hoptoad.onSuccess';
|
292
|
-
data[data.length] = '_=' + (new Date()).getTime();
|
293
|
-
|
294
|
-
var head = document.getElementsByTagName('head')[0];
|
295
|
-
var done = false;
|
296
|
-
|
297
|
-
var
|
298
|
-
script = document.createElement('script');
|
299
|
-
script.src = 'http://' + this.host + '/notices_api/v1/notices/exist?' +
|
300
|
-
data.join('&');
|
301
|
-
script.type = 'text/javascript';
|
302
|
-
script.onload = script.onreadystatechange = function(){
|
303
|
-
if (!done && (!this.readyState ||
|
304
|
-
this.readyState == 'loaded' || this.readyState == 'complete')) {
|
305
|
-
|
306
|
-
done = true;
|
307
|
-
|
308
|
-
// Handle memory leak in IE. (via jQuery)
|
309
|
-
script.onload = script.onreadystatechange = null;
|
310
|
-
head.removeChild(script);
|
311
|
-
}
|
312
|
-
};
|
313
|
-
|
314
|
-
head.appendChild(script);
|
315
|
-
},
|
316
|
-
|
317
|
-
onSuccess: function(error) {
|
318
|
-
var body = document.getElementsByTagName('body')[0];
|
319
|
-
var text = document.createTextNode(this.message);
|
320
|
-
var element = document.createElement('a');
|
321
|
-
|
322
|
-
element.id = 'hoptoad';
|
323
|
-
element.href = 'http://' + error.subdomain + '.' + this.host +
|
324
|
-
'/projects/' + error.project_id + '/errors/' + error.id;
|
325
|
-
element.appendChild(text);
|
326
|
-
|
327
|
-
body.insertBefore(element, body.firstChild);
|
328
|
-
|
329
|
-
var h1 = document.getElementsByTagName('h1')[0];
|
330
|
-
var pre = document.getElementsByTagName('pre')[0];
|
331
|
-
var wrapper = document.createElement('div');
|
332
|
-
|
333
|
-
wrapper.id = 'wrapper';
|
334
|
-
wrapper.appendChild(h1);
|
335
|
-
wrapper.appendChild(pre);
|
336
|
-
|
337
|
-
body.insertBefore(wrapper, body.children[1]);
|
338
|
-
}
|
339
|
-
};
|
340
|
-
|
341
|
-
window.onload = function() {
|
342
|
-
Hoptoad.initialize.apply(Hoptoad);
|
343
|
-
};
|
344
|
-
</script>
|
345
|
-
|
346
|
-
<style type="text/css">
|
347
|
-
#hoptoad {
|
348
|
-
background: #FFF url(http://hoptoadapp.com/images/fell-off-the-toad.gif) no-repeat top right;
|
349
|
-
color: #F00;
|
350
|
-
padding: 45px 101px 45px 12px;
|
351
|
-
font-size: 14px;
|
352
|
-
font-weight: bold;
|
353
|
-
display: block;
|
354
|
-
float: right;
|
355
|
-
}
|
356
|
-
|
357
|
-
#wrapper {
|
358
|
-
padding-right: 360px;
|
359
|
-
}
|
360
|
-
</style>
|
361
|
-
|
362
|
-
http_version: "1.1"
|
33
|
+
body: ! '{"error":"The requested resource could not be found"}'
|
34
|
+
http_version: '1.1'
|