Skip to content

Commit 2b3ba76

Browse files
author
ted
committed
properly escape url entities passed into the url
1 parent fdc4dc8 commit 2b3ba76

File tree

1 file changed

+47
-45
lines changed

1 file changed

+47
-45
lines changed

lib/pardot/objects/prospects.rb

Lines changed: 47 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -1,109 +1,111 @@
1+
require 'cgi'
2+
13
module Pardot
24
module Objects
35
module Prospects
4-
6+
57
def prospects
68
@prospects ||= Prospects.new self
79
end
8-
10+
911
class Prospects
10-
12+
1113
def initialize client
1214
@client = client
1315
end
14-
16+
1517
def query search_criteria
1618
result = get "/do/query", search_criteria, "result"
1719
result["total_results"] = result["total_results"].to_i if result["total_results"]
1820
result
1921
end
20-
22+
2123
def assign_by_email email, params
22-
post "/do/assign/email/#{email}", params
24+
post "/do/assign/email/#{CGI.escape(email)}", params
2325
end
24-
26+
2527
def assign_by_id id, params
26-
post "/do/assign/id/#{id}", params
28+
post "/do/assign/id/#{CGI.escape(id)}", params
2729
end
28-
30+
2931
def assign_by_fid fid, params
30-
post "/do/assign/fid/#{fid}", params
32+
post "/do/assign/fid/#{CGI.escape(fid)}", params
3133
end
32-
34+
3335
def create email, params = {}
34-
post "/do/create/email/#{email}", params
36+
post "/do/create/email/#{CGI.escape(email)}", params
3537
end
36-
38+
3739
def delete_by_id id, params = {}
38-
post "/do/delete/id/#{id}", params
40+
post "/do/delete/id/#{CGI.escape(id)}", params
3941
end
40-
42+
4143
def delete_by_fid fid, params = {}
42-
post "/do/delete/fid/#{fid}", params
44+
post "/do/delete/fid/#{CGI.escape(fid)}", params
4345
end
44-
46+
4547
def read_by_email email, params = {}
46-
post "/do/read/email/#{email}", params
48+
post "/do/read/email/#{CGI.escape(email)}", params
4749
end
48-
50+
4951
def read_by_id id, params = {}
50-
post "/do/read/id/#{id}", params
52+
post "/do/read/id/#{CGI.escape(id)}", params
5153
end
52-
54+
5355
def read_by_fid fid, params = {}
54-
post "/do/read/fid/#{fid}", params
56+
post "/do/read/fid/#{CGI.escape(fid)}", params
5557
end
56-
58+
5759
def unassign_by_email email, params = {}
58-
post "/do/unassign/email/#{email}", params
60+
post "/do/unassign/email/#{CGI.escape(email)}", params
5961
end
60-
62+
6163
def unassign_by_id id, params = {}
62-
post "/do/unassign/id/#{id}", params
64+
post "/do/unassign/id/#{CGI.escape(id)}", params
6365
end
64-
66+
6567
def unassign_by_fid fid, params = {}
66-
post "/do/unassign/fid/#{fid}", params
68+
post "/do/unassign/fid/#{CGI.escape(fid)}", params
6769
end
68-
70+
6971
def update_by_email email, params = {}
70-
post "/do/update/email/#{email}", params
72+
post "/do/update/email/#{CGI.escape(email)}", params
7173
end
72-
74+
7375
def update_by_id id, params = {}
74-
post "/do/update/id/#{id}", params
76+
post "/do/update/id/#{CGI.escape(id)}", params
7577
end
76-
78+
7779
def update_by_fid fid, params = {}
78-
post "/do/update/fid/#{fid}", params
80+
post "/do/update/fid/#{CGI.escape(fid)}", params
7981
end
80-
82+
8183
def upsert_by_email email, params = {}
82-
post "/do/upsert/email/#{email}", params
84+
post "/do/upsert/email/#{CGI.escape(email)}", params
8385
end
84-
86+
8587
def upsert_by_id id, params = {}
86-
post "/do/upsert/id/#{id}", params
88+
post "/do/upsert/id/#{CGI.escape(id)}", params
8789
end
88-
90+
8991
def upsert_by_fid fid, params = {}
90-
post "/do/upsert/fid/#{fid}", params
92+
post "/do/upsert/fid/#{CGI.escape(fid)}", params
9193
end
92-
94+
9395
protected
94-
96+
9597
def get path, params = {}, result = "prospect"
9698
response = @client.get "prospect", path, params
9799
result ? response[result] : response
98100
end
99-
101+
100102
def post path, params = {}, result = "prospect"
101103
response = @client.post "prospect", path, params
102104
result ? response[result] : response
103105
end
104-
106+
105107
end
106-
108+
107109
end
108110
end
109111
end

0 commit comments

Comments
 (0)