Skip to content

Commit 6bc54ca

Browse files
Add support for Turbolinks 2.X
Intercom is not configured to work with Turbolinks. This commit forces Intercom to reload it's messenger when a new page loads via the following line of code: document.addEventListener('page:load', l, false) This was inspired by the following PR: intercom#215 I am testing this branch via Intercom's instructions: https://github.com/intercom/intercom-rails#running-testsspecs
1 parent f20c2dd commit 6bc54ca

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

lib/intercom-rails/script_tag.rb

+2-2
Original file line numberDiff line numberDiff line change
@@ -98,8 +98,8 @@ def find_lead_attributes
9898
def intercom_javascript
9999
intercom_settings_json = ActiveSupport::JSON.encode(intercom_settings).gsub('<', '\u003C')
100100

101-
str = "window.intercomSettings = #{intercom_settings_json};(function(){var w=window;var ic=w.Intercom;if(typeof ic===\"function\"){ic('reattach_activator');ic('update',intercomSettings);}else{var d=document;var i=function(){i.c(arguments)};i.q=[];i.c=function(args){i.q.push(args)};w.Intercom=i;function l(){var s=d.createElement('script');s.type='text/javascript';s.async=true;s.src='#{Config.library_url || "https://widget.intercom.io/widget/#{j app_id}"}';var x=d.getElementsByTagName('script')[0];x.parentNode.insertBefore(s,x);}if(w.attachEvent){w.attachEvent('onload',l);}else{w.addEventListener('load',l,false);}};})()"
102-
101+
str = "window.intercomSettings = #{intercom_settings_json};(function(){var w=window;var ic=w.Intercom;if(typeof ic===\"function\"){ic('reattach_activator');ic('update',intercomSettings);}else{var d=document;var i=function(){i.c(arguments)};i.q=[];i.c=function(args){i.q.push(args)};w.Intercom=i;function l(){var s=d.createElement('script');s.type='text/javascript';s.async=true;s.src='#{Config.library_url || "https://widget.intercom.io/widget/#{j app_id}"}';var x=d.getElementsByTagName('script')[0];x.parentNode.insertBefore(s,x);}if(w.attachEvent){w.attachEvent('onload',l);}else{w.addEventListener('load',l,false);document.addEventListener('page:load', l, false);}};})()"
102+
103103
str
104104
end
105105

0 commit comments

Comments
 (0)