diff --git a/app/assets/javascripts/discourse/lib/click-track.js.es6 b/app/assets/javascripts/discourse/lib/click-track.js.es6 index 5a5da15eb42..96ea6f2f9cf 100644 --- a/app/assets/javascripts/discourse/lib/click-track.js.es6 +++ b/app/assets/javascripts/discourse/lib/click-track.js.es6 @@ -83,15 +83,6 @@ export default { } } - // If they right clicked, change the destination href - if (e.which === 3) { - $link.attr( - "href", - Discourse.SiteSettings.track_external_right_clicks ? destUrl : href - ); - return true; - } - // if they want to open in a new tab, do an AJAX request if (tracking && wantsNewWindow(e)) { ajax("/clicks/track", { diff --git a/config/locales/server.en.yml b/config/locales/server.en.yml index 2780d6cf9cc..2677e0f1667 100644 --- a/config/locales/server.en.yml +++ b/config/locales/server.en.yml @@ -1227,7 +1227,6 @@ en: post_menu: "Determine which items appear on the post menu, and in what order. Example like|edit|flag|delete|share|bookmark|reply" post_menu_hidden_items: "The menu items to hide by default in the post menu unless an expansion ellipsis is clicked on." share_links: "Determine which items appear on the share dialog, and in what order." - track_external_right_clicks: "Track external links that are right clicked (eg: open in new tab) disabled by default because it rewrites URLs" site_contact_username: "A valid staff username to send all automated messages from. If left blank the default System account will be used." send_welcome_message: "Send all new users a welcome message with a quick start guide." send_tl1_welcome_message: "Send new trust level 1 users a welcome message." diff --git a/config/site_settings.yml b/config/site_settings.yml index 4571cf421cf..a6a2a263462 100644 --- a/config/site_settings.yml +++ b/config/site_settings.yml @@ -98,9 +98,6 @@ basic: default: 365 min: 7 max: 10000 - track_external_right_clicks: - client: true - default: false ga_universal_tracking_code: client: true default: '' diff --git a/db/migrate/20180729092926_remove_track_external_right_clicks.rb b/db/migrate/20180729092926_remove_track_external_right_clicks.rb new file mode 100644 index 00000000000..424804b477a --- /dev/null +++ b/db/migrate/20180729092926_remove_track_external_right_clicks.rb @@ -0,0 +1,9 @@ +class RemoveTrackExternalRightClicks < ActiveRecord::Migration[5.2] + def up + execute "DELETE FROM site_settings WHERE name = 'track_external_right_clicks'" + end + + def down + raise ActiveRecord::IrreversibleMigration + end +end diff --git a/test/javascripts/helpers/site-settings.js b/test/javascripts/helpers/site-settings.js index f84fd111e05..4c8775b5f04 100644 --- a/test/javascripts/helpers/site-settings.js +++ b/test/javascripts/helpers/site-settings.js @@ -7,7 +7,6 @@ Discourse.SiteSettingsOriginal = { "favicon_url":"//meta.discourse.org/uploads/default/2499/79d53726406d87af.ico", "allow_user_locale":false, "suggested_topics":7, - "track_external_right_clicks":false, "ga_universal_tracking_code":"", "ga_universal_domain_name":"auto", "top_menu":"latest|new|unread|categories|top", diff --git a/test/javascripts/lib/click-track-edit-history-test.js.es6 b/test/javascripts/lib/click-track-edit-history-test.js.es6 index 4f9c7d96021..9ad93bb66ac 100644 --- a/test/javascripts/lib/click-track-edit-history-test.js.es6 +++ b/test/javascripts/lib/click-track-edit-history-test.js.es6 @@ -103,41 +103,6 @@ asyncTestDiscourse("restores the href after a while", function(assert) { }, 75); }); -var trackRightClick = function(target) { - var clickEvent = generateClickEventOn(target); - clickEvent.which = 3; - return track(clickEvent); -}; - -QUnit.test("right clicks change the href", assert => { - assert.ok(trackRightClick("a")); - assert.equal( - fixture("a") - .first() - .prop("href"), - "http://www.google.com/" - ); -}); - -QUnit.test("right clicks are tracked", assert => { - Discourse.SiteSettings.track_external_right_clicks = true; - trackRightClick("a"); - assert.equal( - fixture("a") - .first() - .attr("href"), - "/clicks/track?url=http%3A%2F%2Fwww.google.com&post_id=42&topic_id=1337" - ); -}); - -QUnit.test("preventDefault is not called for right clicks", assert => { - var clickEvent = generateClickEventOn("a"); - clickEvent.which = 3; - sandbox.stub(clickEvent, "preventDefault"); - assert.ok(track(clickEvent)); - assert.ok(!clickEvent.preventDefault.calledOnce); -}); - var testOpenInANewTab = function(description, clickEventModifier) { test(description, function(assert) { var clickEvent = generateClickEventOn("a"); diff --git a/test/javascripts/lib/click-track-profile-page-test.js.es6 b/test/javascripts/lib/click-track-profile-page-test.js.es6 index fdf3162f13b..0b5eafe5eff 100644 --- a/test/javascripts/lib/click-track-profile-page-test.js.es6 +++ b/test/javascripts/lib/click-track-profile-page-test.js.es6 @@ -97,52 +97,6 @@ asyncTestDiscourse("restores the href after a while", function(assert) { }, 75); }); -var trackRightClick = function(target) { - var clickEvent = generateClickEventOn(target); - clickEvent.which = 3; - return track(clickEvent); -}; - -QUnit.test("right clicks change the href", assert => { - assert.ok(trackRightClick("a")); - assert.equal( - fixture("a") - .first() - .prop("href"), - "http://www.google.com/" - ); -}); - -QUnit.test("right clicks are tracked", assert => { - Discourse.SiteSettings.track_external_right_clicks = true; - trackRightClick("a"); - assert.equal( - fixture(".first a") - .first() - .attr("href"), - "/clicks/track?url=http%3A%2F%2Fwww.google.com&post_id=42&topic_id=1337" - ); -}); - -QUnit.test("right clicks are tracked for second excerpt", assert => { - Discourse.SiteSettings.track_external_right_clicks = true; - trackRightClick(".second a"); - assert.equal( - fixture(".second a") - .first() - .attr("href"), - "/clicks/track?url=http%3A%2F%2Fwww.google.com&post_id=24&topic_id=7331" - ); -}); - -QUnit.test("preventDefault is not called for right clicks", assert => { - var clickEvent = generateClickEventOn("a"); - clickEvent.which = 3; - sandbox.stub(clickEvent, "preventDefault"); - assert.ok(track(clickEvent)); - assert.ok(!clickEvent.preventDefault.calledOnce); -}); - var testOpenInANewTab = function(description, clickEventModifier) { test(description, function(assert) { var clickEvent = generateClickEventOn("a"); diff --git a/test/javascripts/lib/click-track-test.js.es6 b/test/javascripts/lib/click-track-test.js.es6 index 3933768c152..6b2149b9830 100644 --- a/test/javascripts/lib/click-track-test.js.es6 +++ b/test/javascripts/lib/click-track-test.js.es6 @@ -132,41 +132,6 @@ QUnit.test("updates badge counts correctly", function(assert) { badgeClickCount(assert, "with-badge", 2); }); -var trackRightClick = function() { - var clickEvent = generateClickEventOn("a"); - clickEvent.which = 3; - return track(clickEvent); -}; - -QUnit.test("right clicks change the href", function(assert) { - assert.ok(trackRightClick()); - assert.equal( - fixture("a") - .first() - .prop("href"), - "http://www.google.com/" - ); -}); - -QUnit.test("right clicks are tracked", function(assert) { - Discourse.SiteSettings.track_external_right_clicks = true; - trackRightClick(); - assert.equal( - fixture("a") - .first() - .attr("href"), - "/clicks/track?url=http%3A%2F%2Fwww.google.com&post_id=42&topic_id=1337" - ); -}); - -QUnit.test("preventDefault is not called for right clicks", function(assert) { - var clickEvent = generateClickEventOn("a"); - clickEvent.which = 3; - sandbox.stub(clickEvent, "preventDefault"); - assert.ok(track(clickEvent)); - assert.ok(!clickEvent.preventDefault.calledOnce); -}); - var testOpenInANewTab = function(description, clickEventModifier) { test(description, function(assert) { var clickEvent = generateClickEventOn("a");