|
1 | 1 | (function(angular) {
|
2 | 2 |
|
3 |
| - angular.module('zendeskWidget', []) |
4 |
| - .run([ |
5 |
| - '$window', |
6 |
| - 'zendeskWidgetSettings', |
7 |
| - function($window, zendeskWidgetSettings) { |
8 |
| - if (!zendeskWidgetSettings.accountUrl) { |
9 |
| - throw new Error('Missing accountUrl. Please set in app config via ZendeskWidgetProvider'); |
10 |
| - } |
| 3 | + angular.module('zendeskWidget', []); |
| 4 | + |
| 5 | +})(angular); |
| 6 | + |
| 7 | +(function(angular) { |
| 8 | + |
| 9 | + angular.module('zendeskWidget') |
| 10 | + .run([ |
| 11 | + '$window', |
| 12 | + 'zendeskWidgetSettings', |
| 13 | + function($window, zendeskWidgetSettings) { |
| 14 | + if (!zendeskWidgetSettings.accountUrl) { |
| 15 | + throw new Error('Missing accountUrl. Please set in app config via ZendeskWidgetProvider'); |
| 16 | + } |
| 17 | + |
| 18 | + var window = $window; |
| 19 | + |
| 20 | + // Following is essentially a copy paste of JS portion of the Zendesk embed code |
| 21 | + // with our settings subbed in. For more info, see: |
| 22 | + // https://support.zendesk.com/hc/en-us/articles/203908456-Using-Web-Widget-to-embed-customer-service-in-your-website |
| 23 | + |
| 24 | + /*eslint-disable */ |
11 | 25 |
|
12 |
| - var window = $window; |
13 |
| - |
14 |
| - // Following is essentially a copy paste of JS portion of the Zendesk embed code |
15 |
| - // with our settings subbed in. For more info, see: |
16 |
| - // https://support.zendesk.com/hc/en-us/articles/203908456-Using-Web-Widget-to-embed-customer-service-in-your-website |
17 |
| - |
18 |
| - /*eslint-disable */ |
19 |
| - |
20 |
| - window.zEmbed || function(e, t) { |
21 |
| - var n, o, d, i, s, a = [], |
22 |
| - r = document.createElement("iframe"); |
23 |
| - window.zEmbed = function() { |
24 |
| - a.push(arguments) |
25 |
| - }, window.zE = window.zE || window.zEmbed, r.src = "javascript:false", r.title = "", r.role = "presentation", (r.frameElement || r).style.cssText = "display: none", d = document.getElementsByTagName("script"), d = d[d.length - 1], d.parentNode.insertBefore(r, d), i = r.contentWindow, s = i.document; |
26 |
| - try { |
27 |
| - o = s |
28 |
| - } catch (c) { |
29 |
| - n = document.domain, r.src = 'javascript:var d=document.open();d.domain="' + n + '";void(0);', o = s |
30 |
| - } |
31 |
| - o.open()._l = function() { |
32 |
| - var o = this.createElement("script"); |
33 |
| - n && (this.domain = n), o.id = "js-iframe-async", o.src = e, this.t = +new Date, this.zendeskHost = t, this.zEQueue = a, this.body.appendChild(o) |
34 |
| - }, o.write('<body onload="document._l();">'), o.close() |
35 |
| - }("https://assets.zendesk.com/embeddable_framework/main.js", zendeskWidgetSettings.accountUrl); |
36 |
| - |
37 |
| - /*eslint-enable */ |
38 |
| - |
39 |
| - $window.zE(function() { |
40 |
| - zendeskWidgetSettings.beforePageLoad($window.zE); |
41 |
| - }); |
42 |
| - } |
43 |
| - ]); |
| 26 | + window.zEmbed || function(e, t) { |
| 27 | + var n, o, d, i, s, a = [], |
| 28 | + r = document.createElement("iframe"); |
| 29 | + window.zEmbed = function() { |
| 30 | + a.push(arguments) |
| 31 | + }, window.zE = window.zE || window.zEmbed, r.src = "javascript:false", r.title = "", r.role = "presentation", (r.frameElement || r).style.cssText = "display: none", d = document.getElementsByTagName("script"), d = d[d.length - 1], d.parentNode.insertBefore(r, d), i = r.contentWindow, s = i.document; |
| 32 | + try { |
| 33 | + o = s |
| 34 | + } catch (c) { |
| 35 | + n = document.domain, r.src = 'javascript:var d=document.open();d.domain="' + n + '";void(0);', o = s |
| 36 | + } |
| 37 | + o.open()._l = function() { |
| 38 | + var o = this.createElement("script"); |
| 39 | + n && (this.domain = n), o.id = "js-iframe-async", o.src = e, this.t = +new Date, this.zendeskHost = t, this.zEQueue = a, this.body.appendChild(o) |
| 40 | + }, o.write('<body onload="document._l();">'), o.close() |
| 41 | + }("https://assets.zendesk.com/embeddable_framework/main.js", zendeskWidgetSettings.accountUrl); |
| 42 | + |
| 43 | + /*eslint-enable */ |
| 44 | + |
| 45 | + $window.zE(function() { |
| 46 | + zendeskWidgetSettings.beforePageLoad($window.zE); |
| 47 | + }); |
| 48 | + } |
| 49 | + ]); |
44 | 50 |
|
45 | 51 | })(angular);
|
46 | 52 |
|
|
59 | 65 | ];
|
60 | 66 |
|
61 | 67 | angular.module('zendeskWidget')
|
62 |
| - .value('zendeskWidgetSettings', settings) |
63 | 68 | .provider('ZendeskWidget', [function() {
|
64 | 69 | /**
|
65 | 70 | * Configure the widget
|
|
98 | 103 | }]);
|
99 | 104 |
|
100 | 105 | })(angular);
|
| 106 | + |
| 107 | +(function(angular) { |
| 108 | + |
| 109 | + var settings = { |
| 110 | + accountUrl: '', |
| 111 | + beforePageLoad: angular.noop |
| 112 | + }; |
| 113 | + |
| 114 | + angular.module('zendeskWidget') |
| 115 | + .value('zendeskWidgetSettings', settings); |
| 116 | + |
| 117 | +})(angular); |
0 commit comments