FIX: Look up a url without the query string if it couldn't be found with it.
This commit is contained in:
parent
26e75c5ceb
commit
06e9cbc6cb
|
@ -8,6 +8,12 @@ class ClicksController < ApplicationController
|
|||
if params[:topic_id].present? || params[:post_id].present?
|
||||
params.merge!({ user_id: current_user.id }) if current_user.present?
|
||||
@redirect_url = TopicLinkClick.create_from(params)
|
||||
|
||||
if @redirect_url.blank? && params[:url].index('?')
|
||||
# Check the url without query parameters
|
||||
params[:url].sub!(/\?.*$/, '')
|
||||
@redirect_url = TopicLinkClick.create_from(params)
|
||||
end
|
||||
end
|
||||
|
||||
# Sometimes we want to record a link without a 302. Since XHR has to load the redirected
|
||||
|
|
|
@ -28,7 +28,14 @@ describe ClicksController do
|
|||
xhr :get, :track, url: 'http://discourse.org', post_id: 123
|
||||
response.should_not be_redirect
|
||||
end
|
||||
end
|
||||
|
||||
context "with a query string" do
|
||||
it "tries again without the query if it fails" do
|
||||
TopicLinkClick.expects(:create_from).with(has_entries('url' => 'http://discourse.org/?hello=123')).returns(nil)
|
||||
TopicLinkClick.expects(:create_from).with(has_entries('url' => 'http://discourse.org/')).returns(nil)
|
||||
xhr :get, :track, url: 'http://discourse.org/?hello=123', post_id: 123
|
||||
end
|
||||
end
|
||||
|
||||
context 'with a post_id' do
|
||||
|
|
Loading…
Reference in New Issue