mirror of
https://github.com/codeninjasllc/discourse.git
synced 2024-11-23 23:58:31 -05:00
FIX: Allow link redirects inside oneboxed posts
This commit is contained in:
parent
298b54c0e7
commit
769223014c
2 changed files with 7 additions and 4 deletions
|
@ -38,10 +38,9 @@ Discourse.ClickTrack = {
|
|||
userId = $link.data('user-id');
|
||||
|
||||
if (!userId) userId = $article.data('user-id');
|
||||
var ownLink = userId && (userId === Discourse.User.currentProp('id'));
|
||||
|
||||
// Build a Redirect URL
|
||||
var trackingUrl = Discourse.getURL("/clicks/track?url=" + encodeURIComponent(href));
|
||||
var ownLink = userId && (userId === Discourse.User.currentProp('id')),
|
||||
trackingUrl = Discourse.getURL("/clicks/track?url=" + encodeURIComponent(href));
|
||||
if (postId && (!$link.data('ignore-post-id'))) {
|
||||
trackingUrl += "&post_id=" + encodeURI(postId);
|
||||
}
|
||||
|
|
|
@ -22,7 +22,11 @@ class TopicLinkClick < ActiveRecord::Base
|
|||
# If no link is found, return the url for relative links
|
||||
unless link.present?
|
||||
return args[:url] if args[:url] =~ /^\//
|
||||
return nil
|
||||
|
||||
# If we have it somewhere else on the site, just allow the redirect. This is
|
||||
# likely due to a onebox of another topic.
|
||||
link = TopicLink.where(url: args[:url]).first
|
||||
return link.present? ? link.url : nil
|
||||
end
|
||||
|
||||
return args[:url] if (args[:user_id] && (link.user_id == args[:user_id]))
|
||||
|
|
Loading…
Reference in a new issue