@chat21/chat21-web-widget 5.0.52 → 5.0.53-rc.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (137) hide show
  1. package/.github/workflows/docker-community-push-latest.yml +1 -0
  2. package/.github/workflows/docker-image-tag-community-tag-push.yml +1 -0
  3. package/CHANGELOG.md +16 -0
  4. package/Dockerfile +2 -2
  5. package/angular.json +4 -21
  6. package/deploy_amazon_beta.sh +1 -1
  7. package/deploy_amazon_prod.sh +1 -1
  8. package/package.json +17 -18
  9. package/src/app/app.component.scss +38 -10
  10. package/src/app/app.component.ts +2 -0
  11. package/src/app/app.module.ts +5 -3
  12. package/src/app/component/conversation-detail/conversation/conversation.component.html +13 -1
  13. package/src/app/component/conversation-detail/conversation/conversation.component.scss +19 -0
  14. package/src/app/component/conversation-detail/conversation/conversation.component.ts +50 -9
  15. package/src/app/component/conversation-detail/conversation-content/conversation-content.component.spec.ts +0 -2
  16. package/src/app/component/conversation-detail/conversation-content/conversation-content.component.ts +0 -10
  17. package/src/app/component/conversation-detail/conversation-footer/conversation-footer.component.ts +22 -0
  18. package/src/app/component/form/form-builder/form-builder.component.ts +1 -1
  19. package/src/app/component/form/inputs/form-checkbox/form-checkbox.component.ts +1 -1
  20. package/src/app/component/form/inputs/form-label/form-label.component.ts +1 -1
  21. package/src/app/component/form/inputs/form-text/form-text.component.ts +2 -2
  22. package/src/app/component/form/inputs/form-textarea/form-textarea.component.ts +2 -2
  23. package/src/app/component/form/prechat-form/prechat-form.component.ts +1 -1
  24. package/src/app/component/home/home.component.html +7 -15
  25. package/src/app/component/message/bubble-message/bubble-message.component.html +1 -4
  26. package/src/app/component/message/bubble-message/bubble-message.component.ts +1 -37
  27. package/src/app/component/message/image/image.component.ts +1 -9
  28. package/src/app/component/message/info-message/info-message.component.html +3 -3
  29. package/src/app/component/message/info-message/info-message.component.ts +0 -10
  30. package/src/app/directives/tooltip.directive.spec.ts +8 -0
  31. package/src/app/directives/tooltip.directive.ts +46 -0
  32. package/src/app/providers/global-settings.service.ts +2 -2
  33. package/src/app/utils/rules.ts +13 -0
  34. package/src/base_script.html +57 -0
  35. package/src/chat21-core/providers/abstract/archivedconversations-handler.service.ts +5 -5
  36. package/src/chat21-core/providers/abstract/conversation-handler.service.ts +6 -6
  37. package/src/chat21-core/providers/abstract/conversations-handler.service.ts +6 -6
  38. package/src/chat21-core/providers/abstract/groups-handler.service.ts +5 -5
  39. package/src/chat21-core/providers/abstract/logger.service.ts +1 -0
  40. package/src/chat21-core/providers/abstract/messagingAuth.service.ts +2 -2
  41. package/src/chat21-core/providers/abstract/presence.service.ts +2 -2
  42. package/src/chat21-core/providers/abstract/typing.service.ts +2 -2
  43. package/src/chat21-core/providers/abstract/upload.service.ts +1 -1
  44. package/src/chat21-core/providers/firebase/firebase-archivedconversations-handler.ts +1 -1
  45. package/src/chat21-core/providers/firebase/firebase-groups-handler.ts +1 -1
  46. package/src/chat21-core/providers/logger/customLogger.ts +4 -0
  47. package/src/chat21-core/providers/mqtt/mqtt-archivedconversations-handler.ts +1 -1
  48. package/src/chat21-core/providers/mqtt/mqtt-conversations-handler.ts +0 -1
  49. package/src/chat21-core/providers/mqtt/mqtt-groups-handler.ts +1 -1
  50. package/src/chat21-core/utils/constants.ts +3 -2
  51. package/src/chat21-core/utils/utils.ts +2 -0
  52. package/src/launch.js +4 -61
  53. package/src/polyfills.ts +0 -10
  54. package/src/test.ts +3 -1
  55. package/tsconfig.json +5 -3
  56. package/dist/3rdpartylicenses.txt +0 -942
  57. package/dist/assets/i18n/en.json +0 -94
  58. package/dist/assets/i18n/es.json +0 -90
  59. package/dist/assets/i18n/fr.json +0 -90
  60. package/dist/assets/i18n/it.json +0 -90
  61. package/dist/assets/images/avatar_bot_tiledesk.svg +0 -1
  62. package/dist/assets/images/chat_human_avatar.svg +0 -12
  63. package/dist/assets/images/f21ico-done.svg +0 -1
  64. package/dist/assets/images/f21ico-done_all.svg +0 -1
  65. package/dist/assets/images/f21ico-schedule.svg +0 -1
  66. package/dist/assets/images/file-alt-solid.png +0 -0
  67. package/dist/assets/images/light_avatar_placeholder.svg +0 -1
  68. package/dist/assets/images/tommy_bot_tiledesk.svg +0 -48
  69. package/dist/assets/images/website_mockup.jpg +0 -0
  70. package/dist/assets/js/chat21client.js +0 -1066
  71. package/dist/assets/js/mqtt/4.1.0/mqtt.min.js +0 -1
  72. package/dist/assets/js/mqtt/4.2.6/mqtt.min.js +0 -1
  73. package/dist/assets/js/mqtt/4.2.8/mqtt.min.js +0 -1
  74. package/dist/assets/sounds/Carme.mp3 +0 -0
  75. package/dist/assets/sounds/justsaying.mp3 +0 -0
  76. package/dist/assets/sounds/pling.mp3 +0 -0
  77. package/dist/assets/styles/tiledesk_v1.scss +0 -22
  78. package/dist/assets/twp/chatbot-panel.html +0 -424
  79. package/dist/assets/twp/index-dev.html +0 -2430
  80. package/dist/assets/twp/index.html +0 -603
  81. package/dist/assets/twp/tiledesk_widget_files/bootstrap.min.css +0 -5
  82. package/dist/assets/twp/tiledesk_widget_files/bootstrap.min.js +0 -7
  83. package/dist/assets/twp/tiledesk_widget_files/facebook.png +0 -0
  84. package/dist/assets/twp/tiledesk_widget_files/font-awesome.min.css +0 -4
  85. package/dist/assets/twp/tiledesk_widget_files/icon +0 -23
  86. package/dist/assets/twp/tiledesk_widget_files/jquery.min.js +0 -2
  87. package/dist/assets/twp/tiledesk_widget_files/linkedin.png +0 -0
  88. package/dist/assets/twp/tiledesk_widget_files/logo-black.png +0 -0
  89. package/dist/assets/twp/tiledesk_widget_files/logo-mobile.png +0 -0
  90. package/dist/assets/twp/tiledesk_widget_files/logo-short.png +0 -0
  91. package/dist/assets/twp/tiledesk_widget_files/logo.png +0 -0
  92. package/dist/assets/twp/tiledesk_widget_files/logo@2x-black.png +0 -0
  93. package/dist/assets/twp/tiledesk_widget_files/telegram.png +0 -0
  94. package/dist/assets/twp/tiledesk_widget_files/twitter.png +0 -0
  95. package/dist/assets/twp/tiledesk_widget_files/website-poly.min.css +0 -5623
  96. package/dist/assets/twp/tiledesk_widget_files/whatsapp.png +0 -0
  97. package/dist/environments/real_data/widget-config-docker.json +0 -28
  98. package/dist/environments/real_data/widget-config-firebase.json +0 -30
  99. package/dist/environments/real_data/widget-config-mqtt.json +0 -27
  100. package/dist/environments/real_data/widget-config-native-mqtt.json +0 -28
  101. package/dist/environments/real_data/widget-config-native-prod.json +0 -27
  102. package/dist/f21ico-done.svg +0 -1
  103. package/dist/f21ico-done_all.svg +0 -1
  104. package/dist/f21ico-schedule.svg +0 -1
  105. package/dist/favicon.ico +0 -0
  106. package/dist/iframe-style.css +0 -189
  107. package/dist/index.html +0 -16
  108. package/dist/launch.js +0 -428
  109. package/dist/main.js +0 -1
  110. package/dist/polyfills-es5.js +0 -1
  111. package/dist/polyfills.js +0 -1
  112. package/dist/runtime.js +0 -1
  113. package/dist/scripts.js +0 -1
  114. package/dist/styles.css +0 -1
  115. package/dist/styles.js +0 -1
  116. package/dist/test-auth-remote.html +0 -95
  117. package/dist/test-auth.html +0 -49
  118. package/dist/test-buttons.html +0 -147
  119. package/dist/test-custom-auth.html +0 -50
  120. package/dist/test-new.html +0 -231
  121. package/dist/test.html +0 -142
  122. package/dist/tiledesk.js +0 -72
  123. package/dist/vendor.js +0 -1
  124. package/dist/widget-config-template.json +0 -29
  125. package/dist/widget-config.json +0 -29
  126. package/e2e/protractor.conf.js +0 -32
  127. package/src/environments/environment.pre.ts +0 -42
  128. package/src/environments/environment.prod.ts +0 -40
  129. package/src/environments/environment.ts +0 -41
  130. package/src/environments/real_data/widget-config-docker.json +0 -28
  131. package/src/environments/real_data/widget-config-firebase.json +0 -30
  132. package/src/environments/real_data/widget-config-mqtt.json +0 -27
  133. package/src/environments/real_data/widget-config-native-mqtt.json +0 -28
  134. package/src/environments/real_data/widget-config-native-prod.json +0 -27
  135. package/src/test-auth-remote.html +0 -95
  136. package/src/test-auth.html +0 -49
  137. package/src/test-buttons.html +0 -147
@@ -1,2430 +0,0 @@
1
- <!DOCTYPE html>
2
-
3
- <html lang="en">
4
- <head>
5
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
6
- <meta charset="utf-8">
7
- <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
8
-
9
- <title>Widget test page </title>
10
- <style>
11
-
12
- @-moz-keyframes blink {0%{opacity:1;} 50%{opacity:0;} 100%{opacity:1;}} /* Firefox */
13
- @-webkit-keyframes blink {0%{opacity:1;} 50%{opacity:0;} 100%{opacity:1;}} /* Webkit */
14
- @-ms-keyframes blink {0%{opacity:1;} 50%{opacity:0;} 100%{opacity:1;}} /* IE */
15
- @keyframes blink {0%{opacity:1;} 50%{opacity:0;} 100%{opacity:1;}} /* Opera and prob css3 final iteration */
16
-
17
- #preloader {
18
- background: #fff;
19
- position: fixed;
20
- top: 0;
21
- left: 0;
22
- height: 100%;
23
- width: 100%;
24
- z-index: 999999;
25
- opacity: 1;
26
- filter: alpha(opacity=100);
27
- -webkit-transition: opacity 500ms ease;
28
- transition: opacity 500ms ease, display 500ms;
29
- }
30
-
31
- #preloader .logo {
32
- display: block;
33
- width: 109px;
34
- height: 39px;
35
- background-repeat: no-repeat;
36
- background-image: url(./tiledesk_widget_files/logo@2x-black.png);
37
- background-size: contain;
38
- position: absolute;
39
- top: 50%;
40
- left: 50%;
41
- margin: -20px 0 0 -55px;
42
- -moz-transition:all 1s ease-in-out;
43
- -webkit-transition:all 1s ease-in-out;
44
- -o-transition:all 1s ease-in-out;
45
- -ms-transition:all 1s ease-in-out;
46
- transition:all 1s ease-in-out;
47
- /* order: name, direction, duration, iteration-count, timing-function */
48
- -moz-animation:blink normal 2s infinite ease-in-out; /* Firefox */
49
- -webkit-animation:blink normal 2s infinite ease-in-out; /* Webkit */
50
- -ms-animation:blink normal 2s infinite ease-in-out; /* IE */
51
- animation:blink normal 2s infinite ease-in-out; /* Opera and prob css3 final iteration */
52
- }
53
-
54
- #deferred-styles {
55
- display: none;
56
- }
57
-
58
- body {
59
- background-color: #ffffff !important; /*#f4f5f5 !important;*/
60
- font-family: Roboto, "Helvetica Neue", sans-serif;
61
- font-weight: 300;
62
- overflow: hidden;
63
- }
64
-
65
- h1 {
66
- font-weight: 300;
67
- padding: 0;
68
- }
69
-
70
- #main h2 {
71
- margin-top: 25px;
72
- font-size: 14px;
73
- font-weight: 300;
74
- padding: 0;
75
- display: block; /* Fallback for non-webkit */
76
- display: -webkit-box;
77
- max-height: 258px; /* Fallback for non-webkit */
78
- line-height: 2.3;
79
- -webkit-line-clamp: 8;
80
- -webkit-box-orient: vertical;
81
- overflow: hidden;
82
- text-overflow: ellipsis;
83
- }
84
-
85
- html, body {
86
- height: 100%;
87
- }
88
-
89
- #wrapper {
90
- /* display: block!important; */
91
- min-height: 100%;
92
- margin-bottom: auto;
93
- }
94
-
95
- header#header {
96
- position: absolute;
97
- top: 0px;
98
- left: 0px;
99
- right: 0px;
100
- overflow: hidden;
101
- height: 80px;
102
- }
103
-
104
- #main {
105
- padding-bottom:100px;
106
- margin: 20px;
107
-
108
- position: absolute;
109
- overflow: auto;
110
- top: 80px;
111
- bottom: 100px;
112
- left: 0px;
113
- right: 0px;
114
- width: 100%;
115
- }
116
-
117
- .row {
118
- margin-left: 0 !important;
119
- margin-right: 0 !important;
120
- }
121
-
122
-
123
- .b_frame {
124
- -webkit-box-shadow: 0px 19px 147px -41px rgba(0,0,0,0.75);
125
- -moz-box-shadow: 0px 19px 147px -41px rgba(0,0,0,0.75);
126
- box-shadow: 0px 19px 147px -41px rgba(0,0,0,0.75);
127
- border: 0;
128
- width: 400px;
129
- height: 530px;
130
- display: block;
131
- margin: 0 auto;
132
- margin-bottom: 40px;
133
- }
134
- .col-md-6 {
135
- margin-top: 30px;
136
- padding: 0;
137
- }
138
-
139
- .col-md-7 {
140
- margin-top: 30px;
141
- padding: 0;
142
- }
143
-
144
-
145
- .b_integrations_agent_links {
146
- margin-top: 50px;
147
- }
148
- .b_integrations_agent_links a {
149
- color: black;
150
- margin-right: 30px;
151
- }
152
- .b_integrations_agent_links a i {
153
- color: gray;
154
- margin-right: 10px;
155
- width: 15px;
156
- height: 15px;
157
- display: inline-block;
158
- }
159
-
160
- #shareModal .modal-body {
161
- text-align: center;
162
- }
163
-
164
- .modal-content{
165
- width: 105%;
166
- }
167
-
168
- footer#footer {
169
- background-color: white;
170
- text-align: center;
171
-
172
- /* position: relative;
173
- margin-top: -100px; negative value of footer height */
174
- height: 80px;
175
- clear:both;
176
-
177
- position: absolute;
178
- bottom: 0px;
179
- width: 100%;
180
- }
181
-
182
- .b-agent-demo_powered_by a {
183
- display: inline-block;
184
- margin-top: 30px;
185
- margin-bottom: 30px;
186
- text-decoration: none;
187
- }
188
-
189
- .b-agent-demo_powered_by span {
190
- display: inline-block;
191
- color: #B7BBC4;
192
- text-transform: uppercase;
193
- line-height: 20px;
194
- }
195
- .b-agent-demo_powered_by img {
196
- display: inline-block;
197
- height: 24px;
198
- /* margin-left: 20px; */
199
- }
200
-
201
- input[type="radio"] {
202
- -webkit-appearance: none;
203
- -moz-appearance: none;
204
- appearance: none;
205
-
206
- border-radius: 50%;
207
- width: 16px;
208
- height: 16px;
209
-
210
- border: 2px solid #999;
211
- transition: 0.2s all linear;
212
- margin-right: 5px;
213
-
214
- position: relative;
215
- top: 4px;
216
- }
217
-
218
- input:checked {
219
- border: 6px solid black;
220
- }
221
-
222
- input[type=color] {
223
- width: 50px;
224
- overflow: hidden;
225
- border-top-right-radius: 0;
226
- border-bottom-right-radius: 0;
227
- padding: 0px
228
- }
229
-
230
- input[type=color]::-webkit-color-swatch {
231
- -webkit-appearance: none;
232
- border: none;
233
- padding: 0;
234
- }
235
-
236
- input[type=color]::-webkit-color-swatch-wrapper {
237
- -webkit-appearance: none;
238
- border: none;
239
- padding: 0;
240
- }
241
-
242
- input[type=color] > .form-group
243
-
244
- button:hover,button:focus {
245
- /* color: #999;
246
- background-color: darkgrey;
247
- border: 1px solid black; */
248
- outline: none !important;
249
- }
250
-
251
- button {
252
- padding: 5px 10px;
253
- border-radius: 0;
254
- border: 0;
255
- font-size: 14px;
256
- }
257
-
258
- div.row.section {
259
- box-shadow: 0.05rem 0.1rem 0.3rem -0.03rem rgb(0 0 0 / 45%);
260
- background: rgb(237, 237, 237);
261
- border-radius: 10px;
262
- padding: 15px;
263
- margin: 10px 0px;
264
- overflow-x: hidden;
265
- overflow-y: auto;
266
- }
267
- div.row.section > div.row {
268
- margin-bottom: 8px
269
- }
270
-
271
- div.section .btn {
272
- background: #efefef;
273
- border-radius: 15px;
274
- /* padding: 15px; */
275
- /* margin: 5px; */
276
- font-size: 11px;
277
- box-shadow: 0 5px 5px rgb(0 0 0 / 10%);
278
- cursor: pointer;
279
- transition: all 0.2s cubic-bezier(0.68, -0.55, 0.265, 1.55);
280
- }
281
-
282
- div.section .btn:hover{
283
- background: rgb(240,135,118);
284
- color: #ffffff;
285
- }
286
-
287
- div.row label{
288
- margin-left: 5px;
289
- font-size: 12px;
290
- }
291
- div.row button[type=submit]{
292
- margin-left: 15px;
293
- }
294
- .formElement {
295
- display: flex;
296
- align-items: center;
297
- height: 30px;
298
- }
299
-
300
- div.row > .shapeElement {
301
- display: flex;
302
- align-items: center;
303
- margin-bottom: 5px
304
- }
305
- div.row > .shapeElement > div.col-form-label {
306
- width: 100px;
307
- }
308
-
309
- div.row.testAllBtn {
310
- margin: 10px;
311
- text-align: right;
312
- }
313
-
314
- div.row.testAllBtn > .btn {
315
- background-color: rgb(61, 61, 61);
316
- color: rgb(255, 255, 255);
317
- width: 200px;
318
- }
319
-
320
- div.row.testAllBtn > .btn:hover {
321
- background: rgb(240,135,118);
322
- color: #ffffff;
323
- }
324
-
325
- div.method_container {
326
- margin-bottom: 20px;
327
- }
328
-
329
- div.method_container .btn {
330
- background: #ffffff;
331
- border-radius: 15px;
332
- /* padding: 15px; */
333
- margin: 5px;
334
- font-size: 12px;
335
- box-shadow: 0 5px 5px rgb(0 0 0 / 10%);
336
- cursor: pointer;
337
- transition: all 0.2s cubic-bezier(0.68, -0.55, 0.265, 1.55);
338
- }
339
-
340
- div.method_container .btn:hover{
341
- background: rgb(240,135,118);
342
- color: #ffffff;
343
- }
344
-
345
-
346
-
347
- </style>
348
-
349
- <!-- <script type="text/javascript">
350
-
351
- // redirect to mobile version
352
-
353
- /**
354
- * definitely not the best way to findout if there is a mobile browser
355
- * @returns {any}
356
- */
357
- function deviceOS() {
358
- var useragent = navigator.userAgent;
359
- if(useragent.match(/Android/i)) {
360
- return 'android';
361
- } else if(useragent.match(/webOS/i)) {
362
- return 'webos';
363
- } else if(useragent.match(/iPhone/i)) {
364
- return 'iphone';
365
- } else if(useragent.match(/iPod/i)) {
366
- return 'ipod';
367
- } else if(useragent.match(/iPad/i)) {
368
- return 'ipad';
369
- } else if(useragent.match(/Windows Phone/i)) {
370
- return 'windows phone';
371
- } else if(useragent.match(/SymbianOS/i)) {
372
- return 'symbian';
373
- } else if(useragent.match(/RIM/i) || useragent.match(/BB/i)) {
374
- return 'blackberry';
375
- } else {
376
- return false;
377
- }
378
- }
379
-
380
- if (deviceOS()) {
381
- var frameEl = document.getElementById('frame');
382
- location.href = "";
383
- }
384
- </script> -->
385
-
386
- <meta property="og:title" content="Widget test page">
387
- <meta property="og:description" content="">
388
- <meta property="og:locale" content="en">
389
- <meta property="og:image" content="">
390
-
391
- <link rel="icon" type="image/png" href="./tiledesk_widget_files/logo-short.png">
392
- <link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet">
393
- <script defer="" src="./tiledesk_widget_files/jquery.min.js"></script>
394
- <script defer="" src="./tiledesk_widget_files/bootstrap.min.js"></script>
395
-
396
- <script type="application/javascript">
397
- window.tiledeskSettings = {
398
- marginX: "100px",
399
- marginY: "50px",
400
- calloutTimer: 1,
401
- };
402
-
403
- (function(d, s, id) {
404
- var w=window; var d=document;
405
- var i=function() { //crea una function
406
- i.c(arguments);
407
- };
408
- i.q=[]; //q->queue
409
- i.c=function(args){ //c-> call
410
- i.q.push(args);
411
- };
412
- w.Tiledesk=i;
413
- var js, fjs = d.getElementsByTagName(s)[0];
414
- if (d.getElementById(id)) return;
415
- js = d.createElement(s);
416
- js.id = id; js.async = true; js.src = "../../launch.js";
417
- fjs.parentNode.insertBefore(js, fjs);
418
- }(document, 'script', 'tiledesk-jssdk'));
419
-
420
- window.Tiledesk('onLoadParams', function(event_data) {
421
- console.log("onLoadParams Tiledesk FN", event_data);
422
- window.tiledesk.open();
423
- if(document.getElementById('events')){
424
- document.getElementById('events').value += 'onLoadParams --> FIRED!' + '\n'
425
- document.getElementById('events').scrollTop = document.getElementById('events').scrollHeight
426
- }
427
-
428
- document.getElementById("project_id").innerHTML = '"' + tiledesk_projectid + '"';
429
- document.getElementById("project_name").innerHTML = project_name;
430
- });
431
-
432
- window.Tiledesk('onBeforeInit', function(event_data) {
433
- console.log("onBeforeInit Tiledesk FN", event_data);
434
-
435
- setTimeout(() => {
436
- if(event_data && event_data.detail && event_data.detail.appConfigs){
437
-
438
- var enbedJs = event_data.detail.appConfigs.enbedJs? event_data.detail.appConfigs.enbedJs : false;
439
- document.getElementById("enbed").style.display = enbedJs? "inline-block": "none";
440
- document.getElementById("base_url").innerHTML = enbedJs ? baseUrl + '/launch.js': null;
441
-
442
- baseUrlConsole = event_data.detail.appConfigs.dashboardUrl? event_data.detail.appConfigs.dashboardUrl : baseUrlConsole;
443
- }
444
-
445
- }, 1000);
446
-
447
- if(document.getElementById('events')){
448
- document.getElementById('events').value += 'onBeforeInit --> FIRED!' + '\n'
449
- document.getElementById('events').scrollTop = document.getElementById('events').scrollHeight
450
- }
451
- });
452
-
453
- window.Tiledesk('onInit', function(event_data) {
454
- console.log("onInit Tiledesk FN", event_data);
455
- setTimeout(() => {
456
- initLang();
457
- initDefaultSettings();
458
- document.getElementById("preloader").style.display = "none";
459
- document.getElementById('events').value += 'onInit --> FIRED!' + '\n'
460
- document.getElementById('events').scrollTop = document.getElementById('events').scrollHeight
461
- }, 1000);
462
- //open widget after 3s if is closed
463
- // setTimeout(() => {
464
- // if(event_data && event_data.detail && event_data.detail.global && !event_data.detail.global.isOpen){
465
- // window.Tiledesk('open')
466
- // }
467
- // }, 3000);
468
- });
469
-
470
- window.Tiledesk('onAuthStateChanged', function(event_data) {
471
- console.log("onAuthStateChanged Tiledesk FN", event_data);
472
- if(document.getElementById('events')){
473
- document.getElementById('events').value += 'onAuthStateChanged --> FIRED! ' + event_data.detail.event + '\n'
474
- document.getElementById('events').scrollTop = document.getElementById('events').scrollHeight
475
- }
476
- });
477
-
478
- window.Tiledesk('onNewConversationComponentInit', function(event_data) {
479
- console.log("onNewConversationComponentInit Tiledesk FN", event_data);
480
- if(document.getElementById('events')){
481
- document.getElementById('events').value += 'onNewConversationComponentInit --> FIRED! ' + '\n'
482
- document.getElementById('events').scrollTop = document.getElementById('events').scrollHeight
483
- }
484
- });
485
-
486
- window.Tiledesk('onBeforeMessageSend', function(event_data) {
487
- if(document.getElementById('events')){
488
- document.getElementById('events').value += 'onBeforeMessageSend --> FIRED!' + '\n'
489
- document.getElementById('events').scrollTop = document.getElementById('events').scrollHeight
490
- }
491
- });
492
-
493
- window.Tiledesk('onAfterMessageSend', function(event_data) {
494
- if(document.getElementById('events')){
495
- document.getElementById('events').value += 'onAfterMessageSend --> FIRED!' + '\n'
496
- document.getElementById('events').scrollTop = document.getElementById('events').scrollHeight
497
- }
498
- });
499
-
500
- window.Tiledesk('onMessageCreated', function(event_data) {
501
- if(document.getElementById('events')){
502
- document.getElementById('events').value += 'onMessageCreated --> FIRED!' + '\n'
503
- document.getElementById('events').scrollTop = document.getElementById('events').scrollHeight
504
- }
505
- });
506
-
507
- window.Tiledesk('onOpen', function(event_data) {
508
- if(document.getElementById('events')){
509
- document.getElementById('events').value += 'onOpen --> FIRED!' + '\n'
510
- document.getElementById('events').scrollTop = document.getElementById('events').scrollHeight
511
- }
512
- });
513
-
514
- window.Tiledesk('onClose', function(event_data) {
515
- if(document.getElementById('events')){
516
- document.getElementById('events').value += 'onClose --> FIRED!' + '\n'
517
- document.getElementById('events').scrollTop = document.getElementById('events').scrollHeight
518
- }
519
- });
520
-
521
- window.Tiledesk('onOpenEyeCatcher', function(event_data) {
522
- if(document.getElementById('events')){
523
- document.getElementById('events').value += 'onOpenEyeCatcher --> FIRED!' + '\n'
524
- document.getElementById('events').scrollTop = document.getElementById('events').scrollHeight
525
- }
526
- });
527
-
528
- window.Tiledesk('onClosedEyeCatcher', function(event_data) {
529
- if(document.getElementById('events')){
530
- document.getElementById('events').value += 'onClosedEyeCatcher --> FIRED!' + '\n'
531
- document.getElementById('events').scrollTop = document.getElementById('events').scrollHeight
532
- }
533
- });
534
-
535
- window.Tiledesk('onNewConversation', function(event_data) {
536
- if(document.getElementById('events')){
537
- document.getElementById('events').value += 'onNewConversation --> FIRED!' + '\n'
538
- document.getElementById('events').scrollTop = document.getElementById('events').scrollHeight
539
- }
540
- });
541
-
542
- window.Tiledesk('onConversationUpdated', function(event_data) {
543
- if(document.getElementById('events')){
544
- document.getElementById('events').value += 'onConversationUpdated --> FIRED!' + '\n'
545
- document.getElementById('events').scrollTop = document.getElementById('events').scrollHeight
546
- }
547
- });
548
-
549
- window.Tiledesk('onCloseMessagePreview', function(event_data) {
550
- if(document.getElementById('events')){
551
- document.getElementById('events').value += 'onCloseMessagePreview --> FIRED!' + '\n'
552
- document.getElementById('events').scrollTop = document.getElementById('events').scrollHeight
553
- }
554
- });
555
-
556
- window.Tiledesk('onBeforeDepartmentsFormRender', function(event_data) {
557
- if(document.getElementById('events')){
558
- document.getElementById('events').value += 'onBeforeDepartmentsFormRender --> FIRED!' + '\n'
559
- document.getElementById('events').scrollTop = document.getElementById('events').scrollHeight
560
- }
561
- });
562
-
563
- </script>
564
-
565
- <script type="application/javascript">
566
- var baseUrlConsole = "https://console.tiledesk.com/v2/dashboard/";
567
- var queryString = window.location.search;
568
- var urlParams = new URLSearchParams(queryString);
569
- var urlToConsole = urlParams.get('goToConsole');
570
-
571
- var textAreaEvents = document.getElementById('events')
572
- if(urlToConsole){
573
- baseUrlConsole = urlToConsole;
574
- }
575
-
576
- var currentUrl = window.location.href
577
- var baseUrl = window.location.origin
578
- function shareOnFacebook() {
579
- var fbShareUrl = "https://www.facebook.com/sharer.php?u=" + encodeURIComponent(currentUrl);
580
- window.open(
581
- fbShareUrl,
582
- '_blank'
583
- );
584
- }
585
-
586
- function shareOnTwitter() {
587
- var TwShareUrl = "https://twitter.com/share?url=" + encodeURIComponent(currentUrl);
588
- window.open(
589
- TwShareUrl,
590
- '_blank'
591
- );
592
- }
593
-
594
- function shareOnLinkedin() {
595
- var LinkedinShareUrl = "https://www.linkedin.com/shareArticle?mini=true&url=" + encodeURIComponent(currentUrl);
596
- window.open(
597
- LinkedinShareUrl,
598
- '_blank'
599
- );
600
- }
601
-
602
- function shareOnTelegram() {
603
- var TelegramShareUrl = "tg://msg_url?url=" + encodeURIComponent(currentUrl) ;
604
- // console.log('TelegramShareUrl ', TelegramShareUrl )
605
- window.open(
606
- TelegramShareUrl,
607
- '_blank'
608
- );
609
- }
610
-
611
- function shareOnWhatsapp() {
612
- var WhatsappShareUrl = "whatsapp://send?text=" + currentUrl;
613
- window.open(
614
- WhatsappShareUrl,
615
- '_blank'
616
- );
617
- }
618
-
619
- function goToConsole(){
620
- var url = new URL(currentUrl);
621
- var tiledesk_projectid = url.searchParams.get("tiledesk_projectid");
622
- var project_name = url.searchParams.get("project_name");
623
-
624
- var urlConsole = baseUrlConsole + "#/project/"+tiledesk_projectid+"/home";
625
- //var urlConsole = "dashboard/#/project/"+tiledesk_projectid+"/home";
626
- window.open(
627
- urlConsole,
628
- '_blank'
629
- );
630
- }
631
-
632
- function onClickTestButton(event){
633
- console.log('onClickTestButton: event-->',event)
634
- if(event ==='hide'){
635
- window.tiledesk.hide()
636
- }else{
637
- window.Tiledesk(event);
638
- }
639
- }
640
-
641
- function onClickSignInAnonymous(){
642
- console.log('onClickSignInAnonymous: event-->')
643
- window.Tiledesk('signInAnonymous')
644
- }
645
-
646
- function onClickCustomToken(){
647
- let jwt = document.getElementById('jwt').value
648
- console.log('onClickCustomToken: event-->',jwt)
649
- window.Tiledesk('signInWithCustomToken', jwt)
650
- }
651
-
652
- function onClickCustomPreChatForm(){
653
- let preChatForm = document.getElementById('preChatForm').value
654
- console.log('onClickCustomPreChatForm: event-->',preChatForm)
655
- if(preChatForm !== '' && isJsonString(preChatForm)=== true){
656
- document.getElementById('preChatForm').style.color= '#555'
657
- window.tiledeskSettings['preChatForm'] = true
658
- window.Tiledesk('setAttributeParameter',({key: 'userFullname', value: null}))
659
- window.Tiledesk('setAttributeParameter',({key: 'userEmail', value: null}))
660
- window.Tiledesk('setPreChatFormJson', JSON.parse(preChatForm))
661
- // window.Tiledesk('restart')
662
- }else{
663
- document.getElementById('preChatForm').style.color = 'red'
664
- }
665
-
666
- }
667
-
668
- function onClickGetPreChatForm(){
669
- let preChatFormTextArea = document.getElementById('preChatFormGet')
670
- let preChatFormJSON = window.Tiledesk('getPreChatFormJson')
671
- preChatFormTextArea.value = JSON.stringify(preChatFormJSON, null, 4)
672
- }
673
-
674
- // function onClickParameter(elementName){
675
- // console.log('onClickParameter: ',elementName)
676
- // const radios = document.getElementsByName(elementName)
677
- // let radioValue;
678
- // for (var i = 0, length = radios.length; i < length; i++) {
679
- // if (radios[i].checked) {
680
- // // do whatever you want with the checked radio
681
- // radioValue = radios[i].value;
682
- // console.log('valueeeee', elementName, radioValue)
683
- // window.tiledeskSettings[elementName] = radioValue
684
- // console.log('settingss', window.tiledeskSettings)
685
- // window.Tiledesk('restart')
686
- // // only one radio can be logically checked, don't check the rest
687
- // break;
688
- // }
689
- // }
690
- // }
691
- stringToBoolean = function(string){
692
- switch(string.toLowerCase().trim()){
693
- case "true": case "yes": case "1": return true;
694
- case "false": case "no": case "0": case null: return false;
695
- default: return string;
696
- }
697
- }
698
-
699
- isJsonString = function(str) {
700
- try {
701
- JSON.parse(str);
702
- } catch (e) {
703
- return false;
704
- }
705
- return true;
706
- }
707
-
708
- function onClickStartFromHome(){
709
- let status = document.querySelector('input[name="startFromHome"]:checked').value
710
- window.tiledeskSettings['startFromHome'] = stringToBoolean(status)
711
- console.log('onClickStartFromHome: status-->',window.tiledeskSettings)
712
- window.Tiledesk('restart')
713
- }
714
-
715
- function onClickOpen(){
716
- let status = document.querySelector('input[name="open"]:checked').value
717
- window.tiledeskSettings['open'] = stringToBoolean(status)
718
- console.log('onClickOpen: status-->',window.tiledeskSettings)
719
- window.Tiledesk('restart')
720
- }
721
-
722
- function onClickPreChatForm(){
723
- let status = document.querySelector('input[name="preChatForm"]:checked').value
724
- window.tiledeskSettings['preChatForm'] = stringToBoolean(status)
725
- console.log('onClickPreChatForm: status-->',window.tiledeskSettings)
726
- window.Tiledesk('restart')
727
- }
728
-
729
- function onClickAlign(){
730
- let status = document.querySelector('input[name="align"]:checked').value
731
- window.tiledeskSettings['align'] = status
732
- console.log('onClickAlign: status-->',window.tiledeskSettings)
733
- window.Tiledesk('restart')
734
- }
735
-
736
- function onClickCalloutTimer(){
737
- let status = document.querySelector('input[name="calloutTimer"]:checked');
738
- let value;
739
- status? value = status.value : '';
740
- if(!value){
741
- value = document.getElementById('calloutTimerText').value;
742
- }
743
- !value? value = -1 : '';
744
- window.tiledeskSettings['calloutTimer'] = +value
745
- console.log('onClickCalloutTimer: status-->',window.tiledeskSettings);
746
- window.Tiledesk('restart')
747
- }
748
-
749
- function onClickCalloutTitle(){
750
- let title = document.getElementById('calloutTitle').value
751
- window.tiledeskSettings['calloutTitle'] = title
752
- console.log('onClickCalloutTitle: status-->',window.tiledeskSettings);
753
- window.Tiledesk('restart')
754
- }
755
-
756
- function onClickCalloutMsg(){
757
- let msg = document.getElementById('calloutMsg').value
758
- window.tiledeskSettings['calloutMsg'] = msg
759
- console.log('onClickCalloutMsg: status-->',window.tiledeskSettings);
760
- window.Tiledesk('restart')
761
- }
762
-
763
- function onClickWelcomeTitle(){
764
- let title = document.getElementById('welcomeTitle').value
765
- window.tiledeskSettings['welcomeTitle'] = title
766
- console.log('onClickWelcomeTitle: status-->',window.tiledeskSettings);
767
- window.Tiledesk('restart')
768
- }
769
-
770
- function onClickWelcomeMsg(){
771
- let msg = document.getElementById('welcomeMsg').value
772
- window.tiledeskSettings['welcomeMsg'] = msg
773
- console.log('onClickWelcomeMsg: status-->',window.tiledeskSettings);
774
- window.Tiledesk('restart')
775
- }
776
-
777
- function onClickWidgetTitle(){
778
- let title = document.getElementById('widgetTitle').value
779
- window.tiledeskSettings['widgetTitle'] = title
780
- console.log('onClickWidgetTitle: status-->',window.tiledeskSettings);
781
- window.Tiledesk('restart')
782
- }
783
-
784
- function onClickLogoChat(){
785
- let url = document.getElementById('logoChat').value
786
- window.tiledeskSettings['logoChat'] = url
787
- console.log('onClickLogoChat: status-->',window.tiledeskSettings);
788
- window.Tiledesk('restart')
789
- }
790
-
791
- function onClickLang(){
792
- let lang = document.getElementById('lang').value
793
- // if lang is not pre-translated, use English
794
- const selectedLanguage = JSON.parse(lang)
795
- selectedLanguage.type === '--- Needs own translation ---'? lang = 'en': lang= selectedLanguage.code
796
- window.tiledeskSettings['lang'] = lang
797
- console.log('onClickLang: status-->',window.tiledeskSettings);
798
- window.Tiledesk('restart')
799
- }
800
-
801
- function onClickSingleConversation(){
802
- let status = document.querySelector('input[name="singleConversation"]:checked').value
803
- window.tiledeskSettings['singleConversation'] = stringToBoolean(status)
804
- console.log('onClickSingleConversation: status-->',window.tiledeskSettings);
805
- window.Tiledesk('restart')
806
- }
807
-
808
- function onClickRestartConversation(){
809
- let status = document.querySelector('input[name="restartConversation"]:checked').value
810
- window.tiledeskSettings['restart'] = stringToBoolean(status)
811
- console.log('onClickRestartConversation: status-->',window.tiledeskSettings);
812
- window.Tiledesk('restart')
813
- }
814
-
815
- function onClickHideSettings(){
816
- let status = document.querySelector('input[name="hideSettings"]:checked').value
817
- window.tiledeskSettings['hideSettings'] = stringToBoolean(status)
818
- console.log('onClickHideSettings: status-->',window.tiledeskSettings);
819
- window.Tiledesk('restart')
820
- }
821
-
822
- function onClickFullScreenMode(){
823
- let status = document.querySelector('input[name="fullscreenMode"]:checked').value
824
- window.tiledeskSettings['fullscreenMode'] = stringToBoolean(status)
825
- console.log('onClickFullScreenMode: status-->',window.tiledeskSettings);
826
- window.Tiledesk('restart')
827
- }
828
-
829
- function onClickThemeColor(){
830
- let color = document.getElementById('themeColor').value
831
- document.getElementById('themeColorText').value = color
832
- window.tiledeskSettings['themeColor'] = color
833
- console.log('onClickThemeColor: status-->',window.tiledeskSettings);
834
- window.Tiledesk('restart')
835
- }
836
-
837
- function onChangeThemeColor(){
838
- let color = document.getElementById('themeColor').value
839
- document.getElementById('themeColorText').value = color
840
- }
841
-
842
- function onChangeThemeColorText(){
843
- let color = document.getElementById('themeColorText').value
844
- document.getElementById('themeColor').value = color
845
- }
846
-
847
- function onClickThemeColorOpacity(){
848
- let text = document.getElementById('themeColorOpacity').value
849
- text === ""? text= 50 : text //set default value if user not write a value
850
- window.tiledeskSettings['themeColorOpacity'] = +text
851
- console.log('onClickThemeColorOpacity:', window.tiledeskSettings)
852
- window.Tiledesk('restart')
853
- }
854
-
855
- function onChangeThemeColorOpacity(){
856
- let value = document.getElementById('themeColorOpacity').value
857
- document.getElementById('themeColorOpacityText').innerText = value + ' %'
858
- }
859
-
860
- function onChangeThemeForegroundColor(){
861
- let color = document.getElementById('themeForegroundColor').value
862
- document.getElementById('themeForegroundColorText').value = color
863
- }
864
-
865
- function onChangeThemeForegroundColorText(){
866
- let color = document.getElementById('themeForegroundColorText').value
867
- document.getElementById('themeForegroundColor').value = color
868
- }
869
-
870
- function onClickThemeForegroundColor(){
871
- let color = document.getElementById('themeForegroundColor').value
872
- document.getElementById('themeForegroundColorText').value = color
873
- window.tiledeskSettings['themeForegroundColor'] = color
874
- console.log('onClickThemeForegroundColor:',window.tiledeskSettings);
875
- window.Tiledesk('restart')
876
- }
877
-
878
- function onChangeColor(parameter){
879
- let color = document.getElementById(parameter).value
880
- document.getElementById(parameter+'Text').value = color
881
- }
882
-
883
- function onChangeColorText(parameter){
884
- let color = document.getElementById(parameter+'Text').value
885
- document.getElementById(parameter).value = color
886
- }
887
-
888
- function onClickColor(parameter){
889
- let color = document.getElementById(parameter).value
890
- document.getElementById(parameter).value = color
891
- window.tiledeskSettings[parameter] = color
892
- console.log('onClickColor:',window.tiledeskSettings);
893
- window.Tiledesk('restart')
894
- }
895
-
896
- function onClickDepartmentId(){
897
- let text = document.getElementById('departmentID').value
898
- window.tiledeskSettings['departmentID'] = text
899
- console.log('onClickDepartmentId:',window.tiledeskSettings);
900
- window.Tiledesk('restart')
901
- }
902
-
903
- function onClickMarginX(){
904
- let text = document.getElementById('marginX').value
905
- text === ""? text= '100px': text
906
- window.tiledeskSettings['marginX'] = text
907
- console.log('onClickMarginX:',window.tiledeskSettings);
908
- window.Tiledesk('restart')
909
- }
910
-
911
- function onClickMarginY(){
912
- let text = document.getElementById('marginY').value
913
- text === ""? text= '50px' : text //set default value if user not write a value
914
- window.tiledeskSettings['marginY'] = text
915
- console.log('onClickMarginY:',window.tiledeskSettings);
916
- window.Tiledesk('restart')
917
- }
918
-
919
- function onClickAutoStart(){
920
- let status = document.querySelector('input[name="autoStart"]:checked').value
921
- window.tiledeskSettings['autoStart'] = stringToBoolean(status)
922
- console.log('onClickAutoStart:',window.tiledeskSettings);
923
- window.Tiledesk('restart')
924
- }
925
-
926
- function onClickStartHidden(){
927
- let status = document.querySelector('input[name="startHidden"]:checked').value
928
- window.tiledeskSettings['startHidden'] = stringToBoolean(status)
929
- console.log('onClickStartHidden:',window.tiledeskSettings);
930
- window.Tiledesk('restart')
931
- }
932
-
933
- function onClickPersistence(){
934
- let status = document.querySelector('input[name="persistence"]:checked').value
935
- window.tiledeskSettings['persistence'] = status
936
- console.log('onClickPersistence:',window.tiledeskSettings);
937
- window.Tiledesk('restart')
938
- }
939
-
940
- function onClickShowWaitTime(){
941
- let status = document.querySelector('input[name="showWaitTime"]:checked').value
942
- window.tiledeskSettings['showWaitTime'] = stringToBoolean(status)
943
- console.log('onClickShowWaitTime:', window.tiledeskSettings)
944
- window.Tiledesk('restart')
945
- }
946
-
947
- function onClickShowAvailableAgents(){
948
- let status = document.querySelector('input[name="showAvailableAgents"]:checked').value
949
- window.tiledeskSettings['showAvailableAgents'] = stringToBoolean(status)
950
- console.log('onClickShowAvailableAgents', window.tiledeskSettings)
951
- window.Tiledesk('restart')
952
- }
953
-
954
- function onClickShowAllConversations(){
955
- let status = document.querySelector('input[name="showAllConversations"]:checked').value
956
- window.tiledeskSettings['showAllConversations'] = stringToBoolean(status)
957
- console.log('onClickShowAllConversations:', window.tiledeskSettings)
958
- window.Tiledesk('restart')
959
- }
960
-
961
- function onClickLauncherWidth(){
962
- let text = document.getElementById('launcherWidth').value
963
- text === ""? text= 60 : text //set default value if user not write a value
964
- window.tiledeskSettings['launcherWidth'] = text + 'px'
965
- console.log('onClickLauncherWidth:', window.tiledeskSettings)
966
- window.Tiledesk('restart')
967
- }
968
-
969
- function onChangeLauncherWidth(){
970
- let value = document.getElementById('launcherWidth').value
971
- document.getElementById('launcherWidthText').innerText = value + ' px'
972
- }
973
-
974
- function onChangeLauncherHeight(){
975
- let value = document.getElementById('launcherHeight').value
976
- document.getElementById('launcherHeightText').innerText = value + ' px'
977
- }
978
-
979
- function onClickLauncherHeight(){
980
- let text = document.getElementById('launcherHeight').value
981
- text === ""? text= 60 : text //set default value if user not write a value
982
- window.tiledeskSettings['launcherHeight'] = text + 'px'
983
- console.log('onClickLauncherHeight', window.tiledeskSettings)
984
- window.Tiledesk('restart')
985
- }
986
-
987
- function onClickBaloonImage(){
988
- let url = document.getElementById('baloonImage').value
989
- window.tiledeskSettings['baloonImage'] = url
990
- console.log('onClickMarginY', window.tiledeskSettings)
991
- window.Tiledesk('restart')
992
- }
993
-
994
- function onClickBaloonShape(){
995
- let top = document.getElementById('top').value
996
- let bottom = document.getElementById('bottom').value
997
- let left = document.getElementById('left').value
998
- let right = document.getElementById('right').value
999
- let percentage = document.getElementById('percentage').value
1000
- let value = '50%'
1001
- if(top || bottom || left || right){
1002
- top? top : top='0px';
1003
- bottom? bottom : bottom='0px';
1004
- left? left : left='0px';
1005
- right? right : right='0px';
1006
- value = top+' ' + bottom+' '+left+' '+right
1007
- } else if (percentage){
1008
- value = percentage
1009
- }
1010
- window.tiledeskSettings['baloonShape'] = value
1011
- console.log('onClickBaloonShape', window.tiledeskSettings)
1012
- window.Tiledesk('restart')
1013
- }
1014
-
1015
- function onBallonShapeInput(){
1016
- const top = document.getElementById('top')
1017
- const bottom = document.getElementById('bottom')
1018
- const left = document.getElementById('left')
1019
- const right = document.getElementById('right')
1020
- const percentage = document.getElementById('percentage')
1021
- if(top.value || bottom.value || left.value || right.value){
1022
- percentage.disabled = true
1023
- } else if (percentage.value){
1024
- top.disabled = true
1025
- bottom.disabled = true
1026
- left.disabled = true
1027
- right.disabled = true
1028
- }else {
1029
- percentage.disabled = false
1030
- top.disabled = false
1031
- bottom.disabled = false
1032
- left.disabled = false
1033
- right.disabled = false
1034
- }
1035
- }
1036
-
1037
- function onClickDynamicWaitTimeReply(){
1038
- let status = document.querySelector('input[name="dynamicWaitTimeReply"]:checked').value
1039
- window.tiledeskSettings['dynamicWaitTimeReply'] = stringToBoolean(status)
1040
- console.log('onClickDynamicWaitTimeReply:', window.tiledeskSettings)
1041
- window.Tiledesk('restart')
1042
- }
1043
-
1044
- function onClickOpenExternalLinkButton(){
1045
- let status = document.querySelector('input[name="openExternalLinkButton"]:checked').value
1046
- window.tiledeskSettings['openExternalLinkButton'] = stringToBoolean(status)
1047
- console.log('onClickOpenExternalLinkButton:', window.tiledeskSettings)
1048
- window.Tiledesk('restart')
1049
- }
1050
-
1051
- function onClickIsLogEnabled(){
1052
- let status = document.querySelector('input[name="isLogEnabled"]:checked').value
1053
- window.tiledeskSettings['isLogEnabled'] = stringToBoolean(status)
1054
- console.log('onClickIsLogEnabled:', window.tiledeskSettings)
1055
- window.Tiledesk('restart')
1056
- }
1057
-
1058
- function onClickLogLevel(){
1059
- let status = document.getElementById('logLevel').value
1060
- window.tiledeskSettings['logLevel'] = status
1061
- console.log('onClickLogLevel:', window.tiledeskSettings)
1062
- window.Tiledesk('restart')
1063
- }
1064
-
1065
- function onClickNativeRating(){
1066
- let status = document.querySelector('input[name="nativeRating"]:checked').value
1067
- window.tiledeskSettings['nativeRating'] = stringToBoolean(status)
1068
- console.log('onClickNativeRating:', window.tiledeskSettings)
1069
- window.Tiledesk('restart')
1070
- }
1071
-
1072
- function onClickWhatsappNumber(){
1073
- let status = document.getElementById('whatsappNumber').value
1074
- window.tiledeskSettings['whatsappNumber'] = status
1075
- console.log('onClickWhatsappNumber:', window.tiledeskSettings)
1076
- window.Tiledesk('restart')
1077
- }
1078
-
1079
- function onClickMessangerPageTitle(){
1080
- let status = document.getElementById('messangerPageTitle').value
1081
- window.tiledeskSettings['messangerPageTitle'] = status
1082
- console.log('onClickMessangerPageTitle:', window.tiledeskSettings)
1083
- window.Tiledesk('restart')
1084
- }
1085
-
1086
- function onClickTelegramUsername(){
1087
- let status = document.getElementById('telegramUsername').value
1088
- window.tiledeskSettings['telegramUsername'] = status
1089
- console.log('onClickTelegramUsername:', window.tiledeskSettings)
1090
- window.Tiledesk('restart')
1091
- }
1092
-
1093
- function onClickHideHeaderCloseButton(){
1094
- let status = document.querySelector('input[name="hideHeaderCloseButton"]:checked').value
1095
- window.tiledeskSettings['hideHeaderCloseButton'] = stringToBoolean(status)
1096
- console.log('onClickHideHeaderCloseButton: status-->',window.tiledeskSettings);
1097
- window.Tiledesk('restart')
1098
- }
1099
-
1100
- function onClickHideHeaderConversationOptionsMenu(){
1101
- let status = document.querySelector('input[name="hideHeaderConversationOptionsMenu"]:checked').value
1102
- window.tiledeskSettings['hideHeaderConversationOptionsMenu'] = stringToBoolean(status)
1103
- console.log('onClickHideHeaderConversationOptionsMenu:', window.tiledeskSettings)
1104
- window.Tiledesk('restart')
1105
- }
1106
-
1107
- function onClickHideCloseConversationOptionMenu(){
1108
- let status = document.querySelector('input[name="hideCloseConversationOptionMenu"]:checked').value
1109
- window.tiledeskSettings['hideCloseConversationOptionMenu'] = stringToBoolean(status)
1110
- console.log('onClickHideCloseConversationOptionMenu:', window.tiledeskSettings)
1111
- window.Tiledesk('restart')
1112
- }
1113
-
1114
- function onClickHideRestartConversationOptionsMenu(){
1115
- let status = document.querySelector('input[name="hideRestartConversationOptionsMenu"]:checked').value
1116
- window.tiledeskSettings['hideRestartConversationOptionsMenu'] = stringToBoolean(status)
1117
- console.log('onClickHideRestartConversationOptionsMenu:', window.tiledeskSettings)
1118
- window.Tiledesk('restart')
1119
- }
1120
-
1121
- function onClickAllowTranscriptDownload(){
1122
- let status = document.querySelector('input[name="allowTranscriptDownload"]:checked').value
1123
- window.tiledeskSettings['allowTranscriptDownload'] = stringToBoolean(status)
1124
- console.log('onClickAllowTranscriptDownload:',window.tiledeskSettings);
1125
- window.Tiledesk('restart')
1126
- }
1127
-
1128
- function onClickAllowReopen(){
1129
- let status = document.querySelector('input[name="allowReopen"]:checked').value
1130
- window.tiledeskSettings['allowReopen'] = stringToBoolean(status)
1131
- console.log('onClickAllowReopen:',window.tiledeskSettings);
1132
- window.Tiledesk('restart')
1133
- }
1134
-
1135
- function onClickContinueConversationBeforeTime(){
1136
- let text = document.getElementById('continueConversationBeforeTime').value
1137
- window.tiledeskSettings['continueConversationBeforeTime'] = text
1138
- console.log('onClickContinueConversationBeforeTime:',window.tiledeskSettings);
1139
- window.Tiledesk('restart')
1140
- }
1141
-
1142
- function onClickRecipientId(){
1143
- let text = document.getElementById('recipientId').value
1144
- window.tiledeskSettings['recipientId'] = text
1145
- console.log('onClickRecipientId:',window.tiledeskSettings);
1146
- window.Tiledesk('restart')
1147
- }
1148
-
1149
- function onClickSoundEnabled(){
1150
- let status = document.querySelector('input[name="soundEnabled"]:checked').value
1151
- window.tiledeskSettings['soundEnabled'] = stringToBoolean(status)
1152
- console.log('onClickSoundEnabled:', window.tiledeskSettings)
1153
- window.Tiledesk('restart')
1154
- }
1155
-
1156
- function onClickTypingLocation(){
1157
- let status = document.querySelector('input[name="typingLocation"]:checked').value
1158
- window.tiledeskSettings['typingLocation'] = status
1159
- console.log('onClickTypingLocation:', window.tiledeskSettings)
1160
- window.Tiledesk('restart')
1161
- }
1162
-
1163
- function onClickCustomAttributes(){
1164
- let text = document.getElementById('customAttributes').value
1165
- window.tiledeskSettings['customAttributes'] = JSON.parse(text)
1166
- console.log('onClickCustomAttributes:',window.tiledeskSettings);
1167
- window.Tiledesk('restart')
1168
- }
1169
-
1170
- function onClickShowInfoMessage(){
1171
- let text = document.getElementById('showInfoMessage').value
1172
- window.tiledeskSettings['showInfoMessage'] = text
1173
- console.log('onClickShowInfoMessage:', window.tiledeskSettings)
1174
- window.Tiledesk('restart')
1175
- }
1176
-
1177
- function onClickParticipants(){
1178
- let text = document.getElementById('participants').value
1179
- window.tiledeskSettings['participants'] = text
1180
- console.log('onClickParticipants:', window.tiledeskSettings)
1181
- window.Tiledesk('restart')
1182
- }
1183
-
1184
- function onClickShowAttachmentButton(){
1185
- let status = document.querySelector('input[name="showAttachmentButton"]:checked').value
1186
- window.tiledeskSettings['showAttachmentButton'] = stringToBoolean(status)
1187
- console.log('onClickShowAttachmentButton:', window.tiledeskSettings)
1188
- window.Tiledesk('restart')
1189
- }
1190
-
1191
-
1192
-
1193
-
1194
-
1195
- function onClickFontSize(){
1196
- let text = document.getElementById('fontSize').value
1197
- text === ""? text= '1.4em': text
1198
- window.tiledeskSettings['fontSize'] = text
1199
- console.log('onClickFontSize:',window.tiledeskSettings);
1200
- window.Tiledesk('restart')
1201
- }
1202
-
1203
-
1204
- function onClickButtonFontSize(){
1205
- let text = document.getElementById('buttonFontSize').value
1206
- text === ""? text= '15px': text
1207
- window.tiledeskSettings['buttonFontSize'] = text
1208
- console.log('onClickButtonFontSize:',window.tiledeskSettings);
1209
- window.Tiledesk('restart')
1210
- }
1211
-
1212
-
1213
-
1214
-
1215
-
1216
-
1217
-
1218
-
1219
-
1220
-
1221
-
1222
-
1223
-
1224
-
1225
- function onClickTestAll(){
1226
- inputs = document.getElementsByTagName('input');
1227
- for (index = 0; index < inputs.length; ++index) {
1228
- // deal with inputs[index] element.
1229
- const elementType = inputs[index].type
1230
- const elementName = inputs[index].name
1231
- if(elementType === 'radio'){
1232
- let element = document.querySelector('input[name="'+elementName+ '"]:checked');
1233
- if (element){
1234
- window.tiledeskSettings[elementName] = stringToBoolean(element.value)
1235
- }
1236
- } else if(elementType === 'text'){
1237
- let element = document.getElementById(elementName)
1238
- if(element && element.value && elementName !== 'baloonShape'){
1239
- window.tiledeskSettings[elementName] = element.value
1240
- } else if (elementName === 'baloonShape') {
1241
- let top = document.getElementById('top').value
1242
- let bottom = document.getElementById('bottom').value
1243
- let left = document.getElementById('left').value
1244
- let right = document.getElementById('right').value
1245
- let percentage = document.getElementById('percentage').value
1246
- let value = '50%'
1247
- if(top || bottom || left || right){
1248
- top? top : top='0px';
1249
- bottom? bottom : bottom='0px';
1250
- left? left : left='0px';
1251
- right? right : right='0px';
1252
- value = top+' ' + bottom+' '+left+' '+right
1253
- } else if (percentage) {
1254
- value = percentage
1255
- }
1256
- window.tiledeskSettings[elementName] = value
1257
- }else if(elementName === 'calloutTimer'){
1258
- let element = document.getElementById('calloutTimerText')
1259
- window.tiledeskSettings[elementName] = element.value
1260
- }
1261
-
1262
- } else if (elementType === 'range'){
1263
- let element = document.getElementById(elementName)
1264
- window.tiledeskSettings[elementName] = element.value + 'px'
1265
- }
1266
- }
1267
- inputs = document.getElementsByClassName('select');
1268
- for(index = 0; index < inputs.length; ++index){
1269
- const elementName = inputs[index].name
1270
- const element = document.getElementById(elementName)
1271
- window.tiledeskSettings[elementName] = element.value
1272
- }
1273
- window.Tiledesk('restart')
1274
- }
1275
-
1276
- function onClickClearHistory(){
1277
- document.getElementById('events').value = ""
1278
- }
1279
-
1280
-
1281
-
1282
- var url = new URL(currentUrl);
1283
- var tiledesk_projectid = url.searchParams.get("tiledesk_projectid");
1284
- var project_name = url.searchParams.get("project_name");
1285
- var urlConsole = baseUrlConsole + "#/projects/"+tiledesk_projectid+"/home";
1286
- // console.log('tiledesk_projectid: ', tiledesk_projectid);
1287
- // console.log('project_name: ', project_name);
1288
-
1289
- // window.onload = function() {
1290
- // document.getElementById("project_id").innerHTML = '"' + tiledesk_projectid + '"';
1291
- // document.getElementById("project_name").innerHTML = project_name;
1292
- // }
1293
-
1294
-
1295
- function getQueryVariable(variable) {
1296
- var query = window.location.search.substring(1);
1297
- var vars = query.split("&");
1298
- for (var i=0;i<vars.length;i++) {
1299
- var pair = vars[i].split("=");
1300
- if(pair[0] == variable){return pair[1];}
1301
- }
1302
- return(false);
1303
- }
1304
-
1305
- function initLang(){
1306
- var languages = [
1307
- { code: 'ar', name: 'Arabic', type: '--- Pre-translated ---' },
1308
- { code: 'az', name: 'Azerbaijani', type: '--- Pre-translated ---' },
1309
- { code: 'en', name: 'English', type: '--- Pre-translated ---' },
1310
- { code: 'fr', name: 'French', type: '--- Pre-translated ---' },
1311
- { code: 'de', name: 'German', type: '--- Pre-translated ---' },
1312
- { code: 'it', name: 'Italian', type: '--- Pre-translated ---' },
1313
- { code: 'kk', name: 'Kazakh', type: '--- Pre-translated ---' },
1314
- { code: 'pt', name: 'Portuguese', type: '--- Pre-translated ---' },
1315
- { code: 'ru', name: 'Russian', type: '--- Pre-translated ---' },
1316
- { code: 'es', name: 'Spanish, Castilian', type: '--- Pre-translated ---' },
1317
- { code: 'sr', name: 'Serbian', type: '--- Pre-translated ---' },
1318
- { code: 'sv', name: 'Swedish', type: '--- Pre-translated ---' },
1319
- { code: 'tr', name: 'Turkish', type: '--- Pre-translated ---' },
1320
- { code: 'uk', name: 'Ukrainian', type: '--- Pre-translated ---' },
1321
- { code: 'uz', name: 'Uzbek', type: '--- Pre-translated ---' },
1322
- { code: 'ab', name: 'Abkhazian', type: '--- Needs own translation ---' },
1323
- { code: 'aa', name: 'Afar', type: '--- Needs own translation ---' },
1324
- { code: 'af', name: 'Afrikaans', type: '--- Needs own translation ---' },
1325
- { code: 'ak', name: 'Akan', type: '--- Needs own translation ---' },
1326
- { code: 'sq', name: 'Albanian', type: '--- Needs own translation ---' },
1327
- { code: 'am', name: 'Amharic', type: '--- Needs own translation ---' },
1328
- { code: 'an', name: 'Aragonese', type: '--- Needs own translation ---' },
1329
- { code: 'hy', name: 'Armenian', type: '--- Needs own translation ---' },
1330
- { code: 'as', name: 'Assamese', type: '--- Needs own translation ---' },
1331
- { code: 'av', name: 'Avaric', type: '--- Needs own translation ---' },
1332
- { code: 'ae', name: 'Avestan', type: '--- Needs own translation ---' },
1333
- { code: 'ay', name: 'Aymara', type: '--- Needs own translation ---' },
1334
- { code: 'bm', name: 'Bambara', type: '--- Needs own translation ---' },
1335
- { code: 'ba', name: 'Bashkir', type: '--- Needs own translation ---' },
1336
- { code: 'eu', name: 'Basque', type: '--- Needs own translation ---' },
1337
- { code: 'be', name: 'Belarusian', type: '--- Needs own translation ---' },
1338
- { code: 'bn', name: 'Bengali', type: '--- Needs own translation ---' },
1339
- { code: 'bh', name: 'Bihari languages', type: '--- Needs own translation ---' },
1340
- { code: 'bi', name: 'Bislama', type: '--- Needs own translation ---' },
1341
- { code: 'bs', name: 'Bosnian', type: '--- Needs own translation ---' },
1342
- { code: 'br', name: 'Breton', type: '--- Needs own translation ---' },
1343
- { code: 'bg', name: 'Bulgarian', type: '--- Needs own translation ---' },
1344
- { code: 'my', name: 'Burmese', type: '--- Needs own translation ---' },
1345
- { code: 'ca', name: 'Catalan, Valencian', type: '--- Needs own translation ---' },
1346
- { code: 'km', name: 'Central Khmer', type: '--- Needs own translation ---' },
1347
- { code: 'ch', name: 'Chamorro', type: '--- Needs own translation ---' },
1348
- { code: 'ce', name: 'Chechen', type: '--- Needs own translation ---' },
1349
- { code: 'ny', name: 'Chichewa, Chewa, Nyanja', type: '--- Needs own translation ---' },
1350
- { code: 'zh', name: 'Chinese', type: '--- Needs own translation ---' },
1351
- { code: 'cu', name: 'Church Slavonic, Old Bulgarian, Old Church Slavonic', type: '--- Needs own translation ---' },
1352
- { code: 'cv', name: 'Chuvash', type: '--- Needs own translation ---' },
1353
- { code: 'kw', name: 'Cornish', type: '--- Needs own translation ---' },
1354
- { code: 'co', name: 'Corsican', type: '--- Needs own translation ---' },
1355
- { code: 'cr', name: 'Cree', type: '--- Needs own translation ---' },
1356
- { code: 'hr', name: 'Croatian', type: '--- Needs own translation ---' },
1357
- { code: 'cs', name: 'Czech', type: '--- Needs own translation ---' },
1358
- { code: 'da', name: 'Danish', type: '--- Needs own translation ---' },
1359
- { code: 'dv', name: 'Divehi, Dhivehi, Maldivian', type: '--- Needs own translation ---' },
1360
- { code: 'nl', name: 'Dutch, Flemish', type: '--- Needs own translation ---' },
1361
- { code: 'dz', name: 'Dzongkha', type: '--- Needs own translation ---' },
1362
- { code: 'eo', name: 'Esperanto', type: '--- Needs own translation ---' },
1363
- { code: 'et', name: 'Estonian', type: '--- Needs own translation ---' },
1364
- { code: 'ee', name: 'Ewe', type: '--- Needs own translation ---' },
1365
- { code: 'fo', name: 'Faroese', type: '--- Needs own translation ---' },
1366
- { code: 'fj', name: 'Fijian', type: '--- Needs own translation ---' },
1367
- { code: 'fi', name: 'Finnish', type: '--- Needs own translation ---' },
1368
- { code: 'ff', name: 'Fulah', type: '--- Needs own translation ---' },
1369
- { code: 'gd', name: 'Gaelic, Scottish Gaelic', type: '--- Needs own translation ---' },
1370
- { code: 'gl', name: 'Galician', type: '--- Needs own translation ---' },
1371
- { code: 'lg', name: 'Ganda', type: '--- Needs own translation ---' },
1372
- { code: 'ka', name: 'Georgian', type: '--- Needs own translation ---' },
1373
- { code: 'ki', name: 'Gikuyu, Kikuyu', type: '--- Needs own translation ---' },
1374
- { code: 'el', name: 'Greek (Modern)', type: '--- Needs own translation ---' },
1375
- { code: 'kl', name: 'Greenlandic, Kalaallisut', type: '--- Needs own translation ---' },
1376
- { code: 'gn', name: 'Guarani', type: '--- Needs own translation ---' },
1377
- { code: 'gu', name: 'Gujarati', type: '--- Needs own translation ---' },
1378
- { code: 'ht', name: 'Haitian, Haitian Creole', type: '--- Needs own translation ---' },
1379
- { code: 'ha', name: 'Hausa', type: '--- Needs own translation ---' },
1380
- { code: 'he', name: 'Hebrew', type: '--- Needs own translation ---' },
1381
- { code: 'hz', name: 'Herero', type: '--- Needs own translation ---' },
1382
- { code: 'hi', name: 'Hindi', type: '--- Needs own translation ---' },
1383
- { code: 'ho', name: 'Hiri Motu', type: '--- Needs own translation ---' },
1384
- { code: 'hu', name: 'Hungarian', type: '--- Needs own translation ---' },
1385
- { code: 'is', name: 'Icelandic', type: '--- Needs own translation ---' },
1386
- { code: 'io', name: 'Ido', type: '--- Needs own translation ---' },
1387
- { code: 'ig', name: 'Igbo', type: '--- Needs own translation ---' },
1388
- { code: 'id', name: 'Indonesian', type: '--- Needs own translation ---' },
1389
- { code: 'ia', name: 'Interlingua (International Auxiliary Language Association)', type: '--- Needs own translation ---' },
1390
- { code: 'ie', name: 'Interlingue', type: '--- Needs own translation ---' },
1391
- { code: 'iu', name: 'Inuktitut', type: '--- Needs own translation ---' },
1392
- { code: 'ik', name: 'Inupiaq', type: '--- Needs own translation ---' },
1393
- { code: 'ga', name: 'Irish', type: '--- Needs own translation ---' },
1394
- { code: 'ja', name: 'Japanese', type: '--- Needs own translation ---' },
1395
- { code: 'jv', name: 'Javanese', type: '--- Needs own translation ---' },
1396
- { code: 'kn', name: 'Kannada', type: '--- Needs own translation ---' },
1397
- { code: 'kr', name: 'Kanuri', type: '--- Needs own translation ---' },
1398
- { code: 'ks', name: 'Kashmiri', type: '--- Needs own translation ---' },
1399
- { code: 'rw', name: 'Kinyarwanda', type: '--- Needs own translation ---' },
1400
- { code: 'kv', name: 'Komi', type: '--- Needs own translation ---' },
1401
- { code: 'kg', name: 'Kongo', type: '--- Needs own translation ---' },
1402
- { code: 'ko', name: 'Korean', type: '--- Needs own translation ---' },
1403
- { code: 'kj', name: 'Kwanyama, Kuanyama', type: '--- Needs own translation ---' },
1404
- { code: 'ku', name: 'Kurdish', type: '--- Needs own translation ---' },
1405
- { code: 'ky', name: 'Kyrgyz', type: '--- Needs own translation ---' },
1406
- { code: 'lo', name: 'Lao', type: '--- Needs own translation ---' },
1407
- { code: 'la', name: 'Latin', type: '--- Needs own translation ---' },
1408
- { code: 'lv', name: 'Latvian', type: '--- Needs own translation ---' },
1409
- { code: 'lb', name: 'Letzeburgesch, Luxembourgish', type: '--- Needs own translation ---' },
1410
- { code: 'li', name: 'Limburgish, Limburgan, Limburger', type: '--- Needs own translation ---' },
1411
- { code: 'ln', name: 'Lingala', type: '--- Needs own translation ---' },
1412
- { code: 'lt', name: 'Lithuanian', type: '--- Needs own translation ---' },
1413
- { code: 'lu', name: 'Luba-Katanga', type: '--- Needs own translation ---' },
1414
- { code: 'mk', name: 'Macedonian', type: '--- Needs own translation ---' },
1415
- { code: 'mg', name: 'Malagasy', type: '--- Needs own translation ---' },
1416
- { code: 'ms', name: 'Malay', type: '--- Needs own translation ---' },
1417
- { code: 'ml', name: 'Malayalam', type: '--- Needs own translation ---' },
1418
- { code: 'mt', name: 'Maltese', type: '--- Needs own translation ---' },
1419
- { code: 'gv', name: 'Manx', type: '--- Needs own translation ---' },
1420
- { code: 'mi', name: 'Maori', type: '--- Needs own translation ---' },
1421
- { code: 'mr', name: 'Marathi', type: '--- Needs own translation ---' },
1422
- { code: 'mh', name: 'Marshallese', type: '--- Needs own translation ---' },
1423
- { code: 'ro', name: 'Moldovan, Moldavian, Romanian', type: '--- Needs own translation ---' },
1424
- { code: 'mn', name: 'Mongolian', type: '--- Needs own translation ---' },
1425
- { code: 'na', name: 'Nauru', type: '--- Needs own translation ---' },
1426
- { code: 'nv', name: 'Navajo, Navaho', type: '--- Needs own translation ---' },
1427
- { code: 'nd', name: 'Northern Ndebele', type: '--- Needs own translation ---' },
1428
- { code: 'ng', name: 'Ndonga', type: '--- Needs own translation ---' },
1429
- { code: 'ne', name: 'Nepali', type: '--- Needs own translation ---' },
1430
- { code: 'se', name: 'Northern Sami', type: '--- Needs own translation ---' },
1431
- { code: 'no', name: 'Norwegian', type: '--- Needs own translation ---' },
1432
- { code: 'nb', name: 'Norwegian Bokmål', type: '--- Needs own translation ---' },
1433
- { code: 'nn', name: 'Norwegian Nynorsk', type: '--- Needs own translation ---' },
1434
- { code: 'ii', name: 'Nuosu, Sichuan Yi', type: '--- Needs own translation ---' },
1435
- { code: 'oc', name: 'Occitan (post 1500)', type: '--- Needs own translation ---' },
1436
- { code: 'oj', name: 'Ojibwa', type: '--- Needs own translation ---' },
1437
- { code: 'or', name: 'Oriya', type: '--- Needs own translation ---' },
1438
- { code: 'om', name: 'Oromo', type: '--- Needs own translation ---' },
1439
- { code: 'os', name: 'Ossetian, Ossetic', type: '--- Needs own translation ---' },
1440
- { code: 'pi', name: 'Pali', type: '--- Needs own translation ---' },
1441
- { code: 'pa', name: 'Panjabi, Punjabi', type: '--- Needs own translation ---' },
1442
- { code: 'ps', name: 'Pashto, Pushto', type: '--- Needs own translation ---' },
1443
- { code: 'fa', name: 'Persian', type: '--- Needs own translation ---' },
1444
- { code: 'pl', name: 'Polish', type: '--- Needs own translation ---' },
1445
- { code: 'qu', name: 'Quechua', type: '--- Needs own translation ---' },
1446
- { code: 'rm', name: 'Romansh', type: '--- Needs own translation ---' },
1447
- { code: 'rn', name: 'Rundi', type: '--- Needs own translation ---' },
1448
- { code: 'sm', name: 'Samoan', type: '--- Needs own translation ---' },
1449
- { code: 'sg', name: 'Sango', type: '--- Needs own translation ---' },
1450
- { code: 'sa', name: 'Sanskrit', type: '--- Needs own translation ---' },
1451
- { code: 'sc', name: 'Sardinian', type: '--- Needs own translation ---' },
1452
- { code: 'sn', name: 'Shona', type: '--- Needs own translation ---' },
1453
- { code: 'sd', name: 'Sindhi', type: '--- Needs own translation ---' },
1454
- { code: 'si', name: 'Sinhala, Sinhalese', type: '--- Needs own translation ---' },
1455
- { code: 'sk', name: 'Slovak', type: '--- Needs own translation ---' },
1456
- { code: 'sl', name: 'Slovenian', type: '--- Needs own translation ---' },
1457
- { code: 'so', name: 'Somali', type: '--- Needs own translation ---' },
1458
- { code: 'st', name: 'Sotho, Southern', type: '--- Needs own translation ---' },
1459
- { code: 'nr', name: 'South Ndebele', type: '--- Needs own translation ---' },
1460
- { code: 'su', name: 'Sundanese', type: '--- Needs own translation ---' },
1461
- { code: 'sw', name: 'Swahili', type: '--- Needs own translation ---' },
1462
- { code: 'ss', name: 'Swati', type: '--- Needs own translation ---' },
1463
- { code: 'tl', name: 'Tagalog', type: '--- Needs own translation ---' },
1464
- { code: 'ty', name: 'Tahitian', type: '--- Needs own translation ---' },
1465
- { code: 'tg', name: 'Tajik', type: '--- Needs own translation ---' },
1466
- { code: 'ta', name: 'Tamil', type: '--- Needs own translation ---' },
1467
- { code: 'tt', name: 'Tatar', type: '--- Needs own translation ---' },
1468
- { code: 'te', name: 'Telugu', type: '--- Needs own translation ---' },
1469
- { code: 'th', name: 'Thai', type: '--- Needs own translation ---' },
1470
- { code: 'bo', name: 'Tibetan', type: '--- Needs own translation ---' },
1471
- { code: 'ti', name: 'Tigrinya', type: '--- Needs own translation ---' },
1472
- { code: 'to', name: 'Tonga (Tonga Islands)', type: '--- Needs own translation ---' },
1473
- { code: 'ts', name: 'Tsonga', type: '--- Needs own translation ---' },
1474
- { code: 'tn', name: 'Tswana', type: '--- Needs own translation ---' },
1475
- { code: 'tk', name: 'Turkmen', type: '--- Needs own translation ---' },
1476
- { code: 'tw', name: 'Twi', type: '--- Needs own translation ---' },
1477
- { code: 'ug', name: 'Uighur, Uyghur', type: '--- Needs own translation ---' },
1478
- { code: 'ur', name: 'Urdu', type: '--- Needs own translation ---' },
1479
- { code: 've', name: 'Venda', type: '--- Needs own translation ---' },
1480
- { code: 'vi', name: 'Vietnamese', type: '--- Needs own translation ---' },
1481
- { code: 'vo', name: 'Volap_k', type: '--- Needs own translation ---' },
1482
- { code: 'wa', name: 'Walloon', type: '--- Needs own translation ---' },
1483
- { code: 'cy', name: 'Welsh', type: '--- Needs own translation ---' },
1484
- { code: 'fy', name: 'Western Frisian', type: '--- Needs own translation ---' },
1485
- { code: 'wo', name: 'Wolof', type: '--- Needs own translation ---' },
1486
- { code: 'xh', name: 'Xhosa', type: '--- Needs own translation ---' },
1487
- { code: 'yi', name: 'Yiddish', type: '--- Needs own translation ---' },
1488
- { code: 'yo', name: 'Yoruba', type: '--- Needs own translation ---' },
1489
- { code: 'za', name: 'Zhuang, Chuang', type: '--- Needs own translation ---' },
1490
- { code: 'zu', name: 'Zulu', type: '--- Needs own translation--'}
1491
- ]
1492
- let optionList = document.getElementById('lang')
1493
- languages.forEach(option => {
1494
- optionList.add(
1495
- new Option(option.name, JSON.stringify({code: option.code, type: option.type}), option.selected)
1496
- )
1497
- });
1498
- }
1499
-
1500
-
1501
- function initDefaultSettings(){
1502
- let defaultPreChatForm = [{name: "userFullname", type:"text", mandatory:true, label:{ en:"User fullname", it:"Nome utente"}},{name:"userEmail", type:"text", mandatory:true, regex:"/^(?=.{1,254}$)(?=.{1,64}@)[-!#$%&'*+/0-9=?A-Z^_`a-z{|}~]+(.[-!#$%&'*+/0-9=?A-Z^_`a-z{|}~]+)*@[A-Za-z0-9]([A-Za-z0-9-]{0,61}[A-Za-z0-9])?(.[A-Za-z0-9]([A-Za-z0-9-]{0,61}[A-Za-z0-9])?)+$/", label:{ en:"Email", it: "Indirizzo email"},"errorLabel":{ en:"Invalid email address", it:"Indirizzo email non valido"}}]
1503
- let preChatFormTextArea = document.getElementById('preChatForm')
1504
- preChatFormTextArea.value= JSON.stringify(defaultPreChatForm, null, 4)
1505
- }
1506
-
1507
- </script>
1508
-
1509
- </head>
1510
-
1511
- <body class="website white" >
1512
- <div id="preloader">
1513
- <div class="logo"></div>
1514
- </div>
1515
-
1516
- <div id="wrapper">
1517
- <header id="header">
1518
- <nav class="navbar navbar-inverse" role="navigation">
1519
- <div class="container">
1520
- <div class="navbar-header">
1521
-
1522
- <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
1523
- <span class="sr-only">Toggle navigation</span>
1524
- <span class="icon-bar"></span>
1525
- <span class="icon-bar"></span>
1526
- <span class="icon-bar"></span>
1527
- </button>
1528
- <a class="navbar-brand" href="https://console.tiledesk.com/"></a>
1529
- </div>
1530
-
1531
- <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
1532
- <ul class="nav navbar-nav">
1533
- <li><a href="https://developer.tiledesk.com/widget/web-sdk" target="_blank">WEB SDK &amp; Docs<span></span></a></li>
1534
- <li><a href="https://www.tiledesk.com/pricing-cloud/" target="_blank">Pricing<span></span></a></li>
1535
- <li><a href="https://www.tiledesk.com/blog/" target="_blank">Blog<span></span></a></li>
1536
- </ul>
1537
-
1538
- <ul class="nav navbar-nav navbar-right">
1539
- <li class="sign-up"><a onclick="goToConsole()" href="#">GO TO CONSOLE</a></li>
1540
- </ul>
1541
- </div>
1542
- </div>
1543
- </nav>
1544
- </header>
1545
-
1546
- <div id="main" class="container">
1547
- <div class="row">
1548
- <div class="col-md-7">
1549
- <h1 style="min-height: 39px;">TEST ACTIONS</h1>
1550
- <h3 id="project_name" style="min-height: 39px;"></h3>
1551
- <div class="row method_container">
1552
- <button class="btn btn-light" onclick="onClickTestButton('open')">Open <em class="fa-arrow-up fa"></em></button>
1553
- <button class="btn btn-light" onclick="onClickTestButton('close')">Close <em class="fa fa-arrow-down"></em></button>
1554
- <button class="btn btn-light" onclick="onClickTestButton('hide')">Hide</button>
1555
- <button class="btn btn-light" onclick="onClickTestButton('show')">Show</button>
1556
- <button class="btn btn-light" onclick="onClickTestButton('startConversation')">Start Conversation</button>
1557
- <button class="btn btn-light" onclick="onClickTestButton('dispose')">Dispose</button>
1558
- <button class="btn btn-light" onclick="onClickTestButton('showCallout')">Show callout</button>
1559
- <button class="btn btn-light" onclick="onClickTestButton('reInit')">ReInit</button>
1560
- <button class="btn btn-light" onclick="onClickTestButton('restart')">ReStart</button>
1561
- <button class="btn btn-light" onclick="onClickTestButton('logout')">LogOut</button>
1562
- </div>
1563
- <div class="row section">
1564
- <div><h3 style="line-height: 0.3;">MANAGE <em><strong>Authentication</strong></em></h3></div>
1565
-
1566
- <div>Insert a custon <em><strong>JWT Token</strong></em> here </div>
1567
- <div class="row" style="margin: 0">
1568
- <textarea class="form-control" id="jwt" placeholder="JWT ..." rows="4" cols="60"></textarea>
1569
- </div>
1570
- <div class="row" style="text-align: right; margin:5px 0px">
1571
- <button class="btn btn-light" onclick="onClickCustomToken()">Try authentication <i class="fa fa-sign-in" aria-hidden="true"></i></button>
1572
- </div>
1573
-
1574
- <div>Sign in with <em><strong>anonymous user </strong></em> here </div>
1575
- <div class="row" style="margin:5px 0px">
1576
- <button class="btn btn-light" onclick="onClickSignInAnonymous()">SingIn Anonymous <i class="fa fa-sign-in" aria-hidden="true"></i></button>
1577
- </div>
1578
-
1579
- </div>
1580
- <div class="row section">
1581
- <div><h3 style="line-height: 0.3;">MANAGE <em><strong>Pre-Chat Form</strong></em></h3></div>
1582
-
1583
- <div>Customize <em><strong>Pre-Chat Form JSON</strong></em> here </div>
1584
- <div class="row" style="margin: 0">
1585
- <textarea class="form-control" id="preChatForm" placeholder="Set preChatForm ..." rows="6" cols="60"></textarea>
1586
- </div>
1587
- <div class="row" style="text-align: right; margin:5px 0px">
1588
- <button class="btn btn-light" onclick="onClickCustomPreChatForm()">Test it! <i class="fa fa-sign-in" aria-hidden="true"></i></button>
1589
- </div>
1590
-
1591
- <div>Get <em><strong>Pre-Chat Form JSON</strong></em> value </div>
1592
- <div class="row" style="margin: 0">
1593
- <textarea class="form-control" id="preChatFormGet" placeholder="Get preChatForm JSON..." rows="6" cols="60"></textarea>
1594
- </div>
1595
- <div class="row" style="text-align: right; margin:5px 0px">
1596
- <button class="btn btn-light" onclick="onClickGetPreChatForm()">Get Form <i class="fa fa-sticky-note-o" aria-hidden="true"></i></button>
1597
- </div>
1598
-
1599
- </div>
1600
- <div class="row section c21-parameters">
1601
- <div><h3 style="line-height: 0.3;">MANAGE <em><strong>widget settings</strong></em></h3></div>
1602
- <div>Select an option for Tiledesk settings parameter</div>
1603
- <div class="row">
1604
- <div class="col-md-5 formElement"><span><em><strong>startFromHome</strong></em></span></div>
1605
- <div class="col-md-5">
1606
- <input class="form-check-input" type="radio" name="startFromHome" value="true" checked><label class="form-check-label" for="startFromHome">True</label>
1607
- <input class="form-check-input" type="radio" name="startFromHome" value="false"><label class="form-check-label" for="startFromHome">False</label>
1608
- </div>
1609
- <div class="col-md-2">
1610
- <button class="btn btn-light" onclick="onClickStartFromHome()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1611
- </div>
1612
- </div>
1613
- <div class="row">
1614
- <div class="col-md-5 formElement"><span><em><strong>open</strong></em></span></div>
1615
- <div class="col-md-5">
1616
- <input class="form-check-input" type="radio" name="open" value="true"><label class="form-check-label" for="open">True</label>
1617
- <input class="form-check-input" type="radio" name="open" value="false"checked><label class="form-check-label" for="open">False</label>
1618
- </div>
1619
- <div class="col-md-2">
1620
- <button class="btn btn-light" onclick="onClickOpen()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1621
- </div>
1622
- </div>
1623
- <div class="row">
1624
- <div class="col-md-5 formElement"><span><em><strong>prechatForm</strong></em></span></div>
1625
- <div class="col-md-5">
1626
- <input class="form-check-input" type="radio" name="preChatForm" value="true"><label class="form-check-label" for="preChatForm">True</label>
1627
- <input class="form-check-input" type="radio" name="preChatForm" value="false"checked><label class="form-check-label" for="preChatForm">False</label>
1628
- </div>
1629
- <div class="col-md-2">
1630
- <button class="btn btn-light" onclick="onClickPreChatForm()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1631
- </div>
1632
- </div>
1633
- <div class="row">
1634
- <div class="col-md-5 formElement"><span><em><strong>align</strong></em></span></div>
1635
- <div class="col-md-5">
1636
- <input class="form-check-input" type="radio" name="align" value="left"><label class="form-check-label" for="preChatForm">Left</label>
1637
- <input class="form-check-input" type="radio" name="align" value="right" checked><label class="form-check-label" for="preChatForm">Right</label>
1638
- </div>
1639
- <div class="col-md-2">
1640
- <button class="btn btn-light" onclick="onClickAlign()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1641
- </div>
1642
- </div>
1643
- <div class="row">
1644
- <div class="col-md-5 formElement"><span><em><strong>calloutTimer</strong></em></span></div>
1645
- <div class="col-md-5">
1646
- <input class="form-check-input" type="radio" name="calloutTimer" value="-1"><label class="form-check-label" for="preChatForm">-1(disabled)</label>
1647
- <input class="form-check-input" type="radio" name="calloutTimer" value="0"><label class="form-check-label" for="preChatForm">0(Immediatly)</label>
1648
- <div class="formElement" >
1649
- <div class="col-form-label" style="width: 90px">Time (s):</div>
1650
- <input class="form-control col-sm-2" type="text" id="calloutTimerText" name="calloutTimer" placeholder="Ex. 10">
1651
- </div>
1652
- </div>
1653
- <div class="col-md-2">
1654
- <button class="btn btn-light" onclick="onClickCalloutTimer()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1655
- </div>
1656
- </div>
1657
- <div class="row">
1658
- <div class="col-md-5 formElement"><span><em><strong>calloutTitle</strong></em></span></div>
1659
- <div class="col-md-5">
1660
- <input class="form-control" type="text" id="calloutTitle" name="calloutTitle">
1661
- </div>
1662
- <div class="col-md-2">
1663
- <button class="btn btn-light" onclick="onClickCalloutTitle()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1664
- </div>
1665
- </div>
1666
- <div class="row">
1667
- <div class="col-md-5 formElement"><span><em><strong>calloutMsg</strong></em></span></div>
1668
- <div class="col-md-5 ">
1669
- <input class="form-control" type="text" id="calloutMsg" name="calloutMsg">
1670
- </div>
1671
- <div class="col-md-2">
1672
- <button class="btn btn-light" onclick="onClickCalloutMsg()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1673
- </div>
1674
- </div>
1675
- <div class="row">
1676
- <div class="col-md-5 formElement"><span><em><strong>welcomeTitle</strong></em></span></div>
1677
- <div class="col-md-5">
1678
- <input class="form-control" type="text" id="welcomeTitle" name="welcomeTitle">
1679
- </div>
1680
- <div class="col-md-2">
1681
- <button class="btn btn-light" onclick="onClickWelcomeTitle()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1682
- </div>
1683
- </div>
1684
- <div class="row">
1685
- <div class="col-md-5 formElement"><span><em><strong>welcomeMsg</strong></em></span></div>
1686
- <div class="col-md-5">
1687
- <input class="form-control" type="text" id="welcomeMsg" name="welcomeMsg">
1688
- </div>
1689
- <div class="col-md-2">
1690
- <button class="btn btn-light" onclick="onClickWelcomeMsg()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1691
- </div>
1692
- </div>
1693
- <div class="row">
1694
- <div class="col-md-5 formElement"><span><em><strong>widgetTitle</strong></em></span></div>
1695
- <div class="col-md-5">
1696
- <input class="form-control" type="text" id="widgetTitle" name="widgetTitle">
1697
- </div>
1698
- <div class="col-md-2">
1699
- <button class="btn btn-light" onclick="onClickWidgetTitle()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1700
- </div>
1701
- </div>
1702
- <div class="row">
1703
- <div class="col-md-5 formElement"><span><em><strong>logoChat</strong></em></span></div>
1704
- <div class="col-md-5">
1705
- <input class="form-control" type="text" id="logoChat" name="logoChat">
1706
- </div>
1707
- <div class="col-md-2">
1708
- <button class="btn btn-light" onclick="onClickLogoChat()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1709
- </div>
1710
- </div>
1711
- <div class="row">
1712
- <div class="col-md-5 formElement"><span><em><strong>lang</strong></em></span></div>
1713
- <div class="col-md-5">
1714
- <select class="form-control select" id="lang" name="lang"></select>
1715
- </div>
1716
- <div class="col-md-2">
1717
- <button class="btn btn-light" onclick="onClickLang()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1718
- </div>
1719
- </div>
1720
- <div class="row">
1721
- <div class="col-md-5 formElement"><span><em><strong>singleConversation</strong></em></span></div>
1722
- <div class="col-md-5">
1723
- <input class="form-check-input" type="radio" name="singleConversation" value="true"><label>True</label>
1724
- <input class="form-check-input" type="radio" name="singleConversation" value="false" checked><label>False</label>
1725
- </div>
1726
- <div class="col-md-2">
1727
- <button class="btn btn-light" onclick="onClickSingleConversation()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1728
- </div>
1729
- </div>
1730
- <div class="row">
1731
- <div class="col-md-5 formElement"><span><em><strong>restartConversation</strong></em></span></div>
1732
- <div class="col-md-5">
1733
- <input class="form-check-input" type="radio" name="restartConversation" value="true"><label>True</label>
1734
- <input class="form-check-input" type="radio" name="restartConversation" value="false" checked><label>False</label>
1735
- </div>
1736
- <div class="col-md-2">
1737
- <button class="btn btn-light" onclick="onClickRestartConversation()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1738
- </div>
1739
- </div>
1740
-
1741
-
1742
- <div class="row">
1743
- <div class="col-md-5 formElement"><span><em><strong>hideSettings</strong></em></span></div>
1744
- <div class="col-md-5">
1745
- <input class="form-check-input" type="radio" name="hideSettings" value="true"><label>True</label>
1746
- <input class="form-check-input" type="radio" name="hideSettings" value="false" checked><label>False</label>
1747
- </div>
1748
- <div class="col-md-2">
1749
- <button class="btn btn-light" onclick="onClickHideSettings()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1750
- </div>
1751
- </div>
1752
-
1753
- <div class="row">
1754
- <div class="col-md-5 formElement"><span><em><strong>fullscreenMode</strong></em></span></div>
1755
- <div class="col-md-5">
1756
- <input class="form-check-input" type="radio" name="fullscreenMode" value="true"><label>True</label>
1757
- <input class="form-check-input" type="radio" name="fullscreenMode" value="false" checked ><label>False</label>
1758
- </div>
1759
- <div class="col-md-2">
1760
- <button class="btn btn-light" onclick="onClickFullScreenMode()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1761
- </div>
1762
- </div>
1763
- <div class="row">
1764
- <div class="col-md-5 formElement"><span><em><strong>themeColor</strong></em></span></div>
1765
- <div class="col-md-5 formElement">
1766
- <input class="form-control" type="color" id="themeColor" name="themeColor" value="#2a6ac1" oninput="onChangeThemeColor()">
1767
- <input class="form-control" type="text" id="themeColorText" name="themeColor" value="#2a6ac1" oninput="onChangeThemeColorText()">
1768
- </div>
1769
- <div class="col-md-2">
1770
- <button class="btn btn-light" onclick="onClickThemeColor()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1771
- </div>
1772
- </div>
1773
- <div class="row">
1774
- <div class="col-md-5 formElement"><span><em><strong>themeColorOpacity</strong></em></span></div>
1775
- <div class="col-md-5 formElement">
1776
- <input class="form-range" type="range" id="themeColorOpacity" name="themeColorOpacity" min="0" max="100" value="100" style="width: 80%;" oninput="onChangeThemeColorOpacity()"><label class="col-form-label" id="themeColorOpacityText">100 %</label>
1777
- </div>
1778
- <div class="col-md-2">
1779
- <button class="btn btn-light" onclick="onClickThemeColorOpacity()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1780
- </div>
1781
- </div>
1782
- <div class="row">
1783
- <div class="col-md-5 formElement"><span><em><strong>themeForegroundColor</strong></em></span></div>
1784
- <div class="col-md-5 formElement">
1785
- <input class="form-control" type="color" id="themeForegroundColor" name="themeForegroundColor" value="#000000" oninput="onChangeThemeForegroundColor()">
1786
- <input class="form-control" type="text" id="themeForegroundColorText" name="themeForegroundColor" value="#000000" oninput="onChangeThemeForegroundColorText()">
1787
- </div>
1788
- <div class="col-md-2">
1789
- <button class="btn btn-light" onclick="onClickThemeForegroundColor()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1790
- </div>
1791
- </div>
1792
- <div class="row">
1793
- <div class="col-md-5 formElement"><span><em><strong>departmentID</strong></em></span></div>
1794
- <div class="col-md-5">
1795
- <input class="form-control" type="text" id="departmentID" name="departmentID">
1796
- </div>
1797
- <div class="col-md-2">
1798
- <button class="btn btn-light" onclick="onClickDepartmentId()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1799
- </div>
1800
- </div>
1801
- <div class="row">
1802
- <div class="col-md-5 formElement"><span><em><strong>marginX</strong></em></span></div>
1803
- <div class="col-md-5 formElement">
1804
- <input class="form-control col-sm-2" type="text" id="marginX" name="marginX" placeholder="Ex. 100px, 1em">
1805
- </div>
1806
- <div class="col-md-2">
1807
- <button class="btn btn-light" onclick="onClickMarginX()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1808
- </div>
1809
- </div>
1810
- <div class="row">
1811
- <div class="col-md-5 formElement"><span><em><strong>marginY</strong></em></span></div>
1812
- <div class="col-md-5 formElement">
1813
- <input class="form-control col-sm-2" type="text" id="marginY" name="marginY" placeholder="Ex. 100px, 1em">
1814
- </div>
1815
- <div class="col-md-2 ">
1816
- <button class="btn btn-light" onclick="onClickMarginY()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1817
- </div>
1818
- </div>
1819
- <div class="row">
1820
- <div class="col-md-5 formElement"><span><em><strong>autoStart</strong></em></span></div>
1821
- <div class="col-md-5">
1822
- <input class="form-check-input" type="radio" name="autoStart" value="true" checked><label>True</label>
1823
- <input class="form-check-input" type="radio" name="autoStart" value="false"><label>False</label>
1824
- </div>
1825
- <div class="col-md-2">
1826
- <button class="btn btn-light" onclick="onClickAutoStart()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1827
- </div>
1828
- </div>
1829
- <div class="row">
1830
- <div class="col-md-5 formElement"><span><em><strong>startHidden</strong></em></span></div>
1831
- <div class="col-md-5">
1832
- <input class="form-check-input" type="radio" name="startHidden" value="true"><label>True</label>
1833
- <input class="form-check-input" type="radio" name="startHidden" value="false" checked><label >False</label>
1834
- </div>
1835
- <div class="col-md-2">
1836
- <button class="btn btn-light" onclick="onClickStartHidden()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1837
- </div>
1838
- </div>
1839
- <div class="row">
1840
- <div class="col-md-5 formElement"><span><em><strong>persistence</strong></em></span></div>
1841
- <div class="col-md-5">
1842
- <input class="form-check-input" type="radio" name="persistence" value="local" checked><label>Local</label>
1843
- <input class="form-check-input" type="radio" name="persistence" value="session"><label>Session</label>
1844
- </div>
1845
- <div class="col-md-2">
1846
- <button class="btn btn-light" onclick="onClickPersistence()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1847
- </div>
1848
- </div>
1849
- <div class="row">
1850
- <div class="col-md-5 formElement"><span><em><strong>showWaitTime</strong></em></span></div>
1851
- <div class="col-md-5">
1852
- <input class="form-check-input" type="radio" name="showWaitTime" value="true" checked><label>True</label>
1853
- <input class="form-check-input" type="radio" name="showWaitTime" value="false"><label>False</label>
1854
- </div>
1855
- <div class="col-md-2">
1856
- <button class="btn btn-light" onclick="onClickShowWaitTime()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1857
- </div>
1858
- </div>
1859
- <div class="row">
1860
- <div class="col-md-5 formElement"><span><em><strong>showAvailableAgents</strong></em></span></div>
1861
- <div class="col-md-5">
1862
- <input class="form-check-input" type="radio" name="showAvailableAgents" value="true" checked><label>True</label>
1863
- <input class="form-check-input" type="radio" name="showAvailableAgents" value="false"><label>False</label>
1864
- </div>
1865
- <div class="col-md-2">
1866
- <button class="btn btn-light" onclick="onClickShowAvailableAgents()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1867
- </div>
1868
- </div>
1869
- <div class="row">
1870
- <div class="col-md-5 formElement"><span><em><strong>showAllConversations</strong></em></span></div>
1871
- <div class="col-md-5">
1872
- <input class="form-check-input" type="radio" name="showAllConversations" value="true" checked><label>True</label>
1873
- <input class="form-check-input" type="radio" name="showAllConversations" value="false"><label>False</label>
1874
- </div>
1875
- <div class="col-md-2">
1876
- <button class="btn btn-light" onclick="onClickShowAllConversations()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1877
- </div>
1878
- </div>
1879
- <div class="row">
1880
- <div class="col-md-5 formElement"><span><em><strong>launcherWidth</strong></em></span></div>
1881
- <div class="col-md-5 formElement">
1882
- <input class="form-range" type="range" id="launcherWidth" name="launcherWidth" min="0" max="80" value="60" style="width: 80%;" oninput="onChangeLauncherWidth()"><label class="col-form-label" id=launcherWidthText>60 px</label>
1883
- </div>
1884
- <div class="col-md-2">
1885
- <button class="btn btn-light" onclick="onClickLauncherWidth()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1886
- </div>
1887
- </div>
1888
- <div class="row">
1889
- <div class="col-md-5 formElement"><span><em><strong>launcherHeight</strong></em></span></div>
1890
- <div class="col-md-5 formElement">
1891
- <input class="form-range" type="range" type="text" id="launcherHeight" name="launcherHeight" min="0" max="80" value="60" style="width: 80%;" oninput="onChangeLauncherHeight()"><label class="col-form-label" id=launcherHeightText>60 px</label>
1892
- </div>
1893
- <div class="col-md-2">
1894
- <button class="btn btn-light" onclick="onClickLauncherHeight()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1895
- </div>
1896
- </div>
1897
- <div class="row">
1898
- <div class="col-md-5 formElement"><span><em><strong>baloonImage</strong></em></span></div>
1899
- <div class="col-md-5">
1900
- <input class="form-control" type="text" id="baloonImage" name="baloonImage">
1901
- </div>
1902
- <div class="col-md-2">
1903
- <button class="btn btn-light" onclick="onClickBaloonImage()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1904
- </div>
1905
- </div>
1906
- <div class="row form-group">
1907
- <div class="col-md-5 formElement"><span><em><strong>baloonShape</strong></em></span></div>
1908
- <div class="col-md-5" >
1909
- <div class="row ">
1910
- <div class="col-md shapeElement">
1911
- <div class="col-form-label">Top:</div>
1912
- <input class="form-control col-sm-2" type="text" id="top" name="baloonShape" style="width: 150px" oninput="onBallonShapeInput()" placeholder="Ex. 12px, 0.12em">
1913
- </div>
1914
- </div>
1915
- <div class="row">
1916
- <div class="col-md shapeElement">
1917
- <div class="col-form-label">Bottom:</div>
1918
- <input class="form-control col-sm-2" type="text" id="bottom" name="baloonShape" style="width: 150px" oninput="onBallonShapeInput()" placeholder="Ex. 12px, 0.12em">
1919
- </div>
1920
- </div>
1921
- <div class="row">
1922
- <div class="col-md shapeElement">
1923
- <div class="col-form-label">Left:</div>
1924
- <input class="form-control col-sm-2" type="text" id="left" name="baloonShape" style="width: 150px" oninput="onBallonShapeInput()" placeholder="Ex. 12px, 0.12em">
1925
- </div>
1926
- </div>
1927
- <div class="row">
1928
- <div class="col-md shapeElement">
1929
- <div class="col-form-label">Right:</div>
1930
- <input class="form-control col-sm-2" type="text" id="right" name="baloonShape" style="width: 150px" oninput="onBallonShapeInput()" placeholder="Ex. 12px, 0.12em">
1931
- </div>
1932
- </div>
1933
- <div class="row">
1934
- <div class="col-md shapeElement">
1935
- <div class="col-form-label">Percentage:</div>
1936
- <input class="form-control col-sm-2" type="text" id="percentage" name="baloonShape" style="width: 150px" oninput="onBallonShapeInput()" placeholder="Ex. 50%">
1937
- </div>
1938
- </div>
1939
- </div>
1940
- <div class="col-md-2">
1941
- <button class="btn btn-light" onclick="onClickBaloonShape()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1942
- </div>
1943
- </div>
1944
- <div class="row">
1945
- <div class="col-md-5 formElement"><span><em><strong>dynamicWaitTimeReply</strong></em></span></div>
1946
- <div class="col-md-5">
1947
- <input class="form-check-input" type="radio" name="dynamicWaitTimeReply" value="true" checked><label>True</label>
1948
- <input class="form-check-input" type="radio" name="dynamicWaitTimeReply" value="false"><label>False</label>
1949
- </div>
1950
- <div class="col-md-2">
1951
- <button class="btn btn-light" onclick="onClickDynamicWaitTimeReply()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1952
- </div>
1953
- </div>
1954
- <div class="row">
1955
- <div class="col-md-5 formElement"><span><em><strong>openExternalLinkButton</strong></em></span></div>
1956
- <div class="col-md-5">
1957
- <input class="form-check-input" type="radio" name="openExternalLinkButton" value="true" checked><label>True</label>
1958
- <input class="form-check-input" type="radio" name="openExternalLinkButton" value="false"><label>False</label>
1959
- </div>
1960
- <div class="col-md-2">
1961
- <button class="btn btn-light" onclick="onClickOpenExternalLinkButton()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1962
- </div>
1963
- </div>
1964
- <div class="row">
1965
- <div class="col-md-5 formElement"><span><em><strong>isLogEnabled</strong></em></span></div>
1966
- <div class="col-md-5">
1967
- <input class="form-check-input" type="radio" name="isLogEnabled" value="true"><label>True</label>
1968
- <input class="form-check-input" type="radio" name="isLogEnabled" value="false" checked><label>False</label>
1969
- </div>
1970
- <div class="col-md-2">
1971
- <button class="btn btn-light" onclick="onClickIsLogEnabled()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1972
- </div>
1973
- </div>
1974
- <div class="row">
1975
- <div class="col-md-5 formElement"><span><em><strong>logLevel</strong></em></span></div>
1976
- <div class="col-md-5">
1977
- <select class="form-control select" id="logLevel" name="logLevel">
1978
- <option value="ERROR">Error</option>
1979
- <option value="WARN">Warn</option>
1980
- <option value=INFO>Info</option>
1981
- <option value="DEBUG">Debug</option>
1982
- </select>
1983
- </div>
1984
- <div class="col-md-2">
1985
- <button class="btn btn-light" onclick="onClickLogLevel()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1986
- </div>
1987
- </div>
1988
- <div class="row">
1989
- <div class="col-md-5 formElement"><span><em><strong>nativeRating</strong></em></span></div>
1990
- <div class="col-md-5">
1991
- <input class="form-check-input" type="radio" name="nativeRating" value="true" checked><label>True</label>
1992
- <input class="form-check-input" type="radio" name="nativeRating" value="false"><label>False</label>
1993
- </div>
1994
- <div class="col-md-2">
1995
- <button class="btn btn-light" onclick="onClickNativeRating()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
1996
- </div>
1997
- </div>
1998
-
1999
- <div class="row">
2000
- <h4 class="col-md-10 formElement">Manage SOCIAL CHANNELS <span style="font-size:12px"> (parameter accepted only in window.tiledeskSettings object)</span>
2001
- </h4>
2002
- </div>
2003
- <div class="row">
2004
- <div class="col-md-5 formElement"><span><em><strong>whatsappNumber</strong></em></span></div>
2005
- <div class="col-md-5">
2006
- <input class="form-control" type="text" id="whatsappNumber" name="whatsappNumber">
2007
- </div>
2008
- <div class="col-md-2">
2009
- <button class="btn btn-light" onclick="onClickWhatsappNumber()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
2010
- </div>
2011
- </div>
2012
- <div class="row">
2013
- <div class="col-md-5 formElement"><span><em><strong>messangerPageTitle</strong></em></span></div>
2014
- <div class="col-md-5">
2015
- <input class="form-control" type="text" id="messangerPageTitle" name="messangerPageTitle">
2016
- </div>
2017
- <div class="col-md-2">
2018
- <button class="btn btn-light" onclick="onClickMessangerPageTitle()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
2019
- </div>
2020
- </div>
2021
- <div class="row">
2022
- <div class="col-md-5 formElement"><span><em><strong>telegramUsername</strong></em></span></div>
2023
- <div class="col-md-5">
2024
- <input class="form-control" type="text" id="telegramUsername" name="telegramUsername">
2025
- </div>
2026
- <div class="col-md-2">
2027
- <button class="btn btn-light" onclick="onClickTelegramUsername()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
2028
- </div>
2029
- </div>
2030
-
2031
-
2032
-
2033
- <div class="row">
2034
- <h4 class="col-md-10 formElement" >Manage CONVERSATION DETAIL</h4>
2035
- </div>
2036
- <div class="row">
2037
- <div class="col-md-5 formElement"><span><em><strong>hideHeaderCloseButton</strong></em></span></div>
2038
- <div class="col-md-5">
2039
- <input class="form-check-input" type="radio" name="hideHeaderCloseButton" value="true"><label>True</label>
2040
- <input class="form-check-input" type="radio" name="hideHeaderCloseButton" value="false" checked><label>False</label>
2041
- </div>
2042
- <div class="col-md-2">
2043
- <button class="btn btn-light" onclick="onClickHideHeaderCloseButton()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
2044
- </div>
2045
- </div>
2046
- <div class="row">
2047
- <div class="col-md-5 formElement"><span><em><strong>hideHeaderConversationOptionsMenu</strong></em></span></div>
2048
- <div class="col-md-5">
2049
- <input class="form-check-input" type="radio" name="hideHeaderConversationOptionsMenu" value="true"><label>True</label>
2050
- <input class="form-check-input" type="radio" name="hideHeaderConversationOptionsMenu" value="false" checked><label>False</label>
2051
- </div>
2052
- <div class="col-md-2">
2053
- <button class="btn btn-light" onclick="onClickHideHeaderConversationOptionsMenu()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
2054
- </div>
2055
- </div>
2056
- <div class="row">
2057
- <div class="col-md-5 formElement"><span><em><strong>hideCloseConversationOptionMenu</strong></em></span></div>
2058
- <div class="col-md-5">
2059
- <input class="form-check-input" type="radio" name="hideCloseConversationOptionMenu" value="true"><label>True</label>
2060
- <input class="form-check-input" type="radio" name="hideCloseConversationOptionMenu" value="false" checked><label >False</label>
2061
- </div>
2062
- <div class="col-md-2">
2063
- <button class="btn btn-light" onclick="onClickHideCloseConversationOptionMenu()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
2064
- </div>
2065
- </div>
2066
- <div class="row">
2067
- <div class="col-md-5 formElement"><span><em><strong>hideRestartConversationOptionsMenu</strong></em></span></div>
2068
- <div class="col-md-5">
2069
- <input class="form-check-input" type="radio" name="hideRestartConversationOptionsMenu" value="true"><label>True</label>
2070
- <input class="form-check-input" type="radio" name="hideRestartConversationOptionsMenu" value="false" checked><label >False</label>
2071
- </div>
2072
- <div class="col-md-2">
2073
- <button class="btn btn-light" onclick="onClickHideRestartConversationOptionsMenu()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
2074
- </div>
2075
- </div>
2076
- <div class="row">
2077
- <div class="col-md-5 formElement"><span><em><strong>allowTranscriptDownload</strong></em></span></div>
2078
- <div class="col-md-5">
2079
- <input class="form-check-input" type="radio" name="allowTranscriptDownload" value="true"><label>True</label>
2080
- <input class="form-check-input" type="radio" name="allowTranscriptDownload" value="false" checked><label >False</label>
2081
- </div>
2082
- <div class="col-md-2">
2083
- <button class="btn btn-light" onclick="onClickAllowTranscriptDownload()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
2084
- </div>
2085
- </div>
2086
- <div class="row">
2087
- <div class="col-md-5 formElement"><span><em><strong>allowReopen</strong></em></span></div>
2088
- <div class="col-md-5">
2089
- <input class="form-check-input" type="radio" name="allowReopen" value="true"><label>True</label>
2090
- <input class="form-check-input" type="radio" name="allowReopen" value="false" checked><label >False</label>
2091
- </div>
2092
- <div class="col-md-2">
2093
- <button class="btn btn-light" onclick="onClickAllowReopen()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
2094
- </div>
2095
- </div>
2096
- <div class="row">
2097
- <div class="col-md-5 formElement"><span><em><strong>continueConversationBeforeTime</strong></em></span></div>
2098
- <div class="col-md-5 formElement">
2099
- <div class="col-form-label" style="width: 90px">Time (h):</div>
2100
- <input class="form-control" type="number" id="continueConversationBeforeTime" name="continueConversationBeforeTime" placeholder="(in hours)">
2101
- </div>
2102
- <div class="col-md-2">
2103
- <button class="btn btn-light" onclick="onClickContinueConversationBeforeTime()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
2104
- </div>
2105
- </div>
2106
- <div class="row">
2107
- <div class="col-md-5 formElement"><span><em><strong>recipientId</strong></em></span></div>
2108
- <div class="col-md-5">
2109
- <input class="form-control" type="text" id="recipientId" name="departmentID">
2110
- </div>
2111
- <div class="col-md-2">
2112
- <button class="btn btn-light" onclick="onClickRecipientId()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
2113
- </div>
2114
- </div>
2115
- <div class="row">
2116
- <div class="col-md-5 formElement"><span><em><strong>soundEnabled</strong></em></span></div>
2117
- <div class="col-md-5">
2118
- <input class="form-check-input" type="radio" name="soundEnabled" value="true" checked><label>True</label>
2119
- <input class="form-check-input" type="radio" name="soundEnabled" value="false"><label>False</label>
2120
- </div>
2121
- <div class="col-md-2">
2122
- <button class="btn btn-light" onclick="onClickSoundEnabled()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
2123
- </div>
2124
- </div>
2125
- <div class="row">
2126
- <div class="col-md-5 formElement"><span><em><strong>typingLocation</strong></em></span></div>
2127
- <div class="col-md-5">
2128
- <input class="form-check-input" type="radio" name="typingLocation" value="content" checked><label>content</label>
2129
- <input class="form-check-input" type="radio" name="typingLocation" value="header"><label>header</label>
2130
- </div>
2131
- <div class="col-md-2">
2132
- <button class="btn btn-light" onclick="onClickTypingLocation()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
2133
- </div>
2134
- </div>
2135
- <div class="row">
2136
- <div class="col-md-5 formElement"><span><em><strong>customAttributes</strong></em></span></div>
2137
- <div class="col-md-5">
2138
- <textarea class="form-control" id="customAttributes" placeholder="Set a key-value object.." rows="6" cols="30"></textarea>
2139
- </div>
2140
- <div class="col-md-2">
2141
- <button class="btn btn-light" onclick="onClickCustomAttributes()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
2142
- </div>
2143
- </div>
2144
- <div class="row">
2145
- <div class="col-md-5 formElement"><span><em><strong>showInfoMessage</strong></em></span></div>
2146
- <div class="col-md-5">
2147
- <textarea class="form-control" id="showInfoMessage" placeholder="Set a comma separated string..." rows="6" cols="30"></textarea>
2148
- </div>
2149
- <div class="col-md-2">
2150
- <button class="btn btn-light" onclick="onClickShowInfoMessage()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
2151
- </div>
2152
- </div>
2153
- <div class="row">
2154
- <div class="col-md-5 formElement"><span><em><strong>participants</strong></em></span></div>
2155
- <div class="col-md-5">
2156
- <textarea class="form-control" id="participants" placeholder="Set a comma separated string..." rows="6" cols="30"></textarea>
2157
- </div>
2158
- <div class="col-md-2">
2159
- <button class="btn btn-light" onclick="onClickParticipants()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
2160
- </div>
2161
- </div>
2162
- <div class="row">
2163
- <div class="col-md-5 formElement"><span><em><strong>showAttachmentButton</strong></em></span></div>
2164
- <div class="col-md-5">
2165
- <input class="form-check-input" type="radio" name="showAttachmentButton" value="true" checked><label>True</label>
2166
- <input class="form-check-input" type="radio" name="showAttachmentButton" value="false"><label>False</label>
2167
- </div>
2168
- <div class="col-md-2">
2169
- <button class="btn btn-light" onclick="onClickShowAttachmentButton()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
2170
- </div>
2171
- </div>
2172
-
2173
-
2174
- <div class="row">
2175
- <h4 class="col-md-10 formElement" >Manage BUBBLE MESSAGE STYLES</h4>
2176
- </div>
2177
- <div class="row">
2178
- <div class="col-md-5 formElement"><span><em><strong>bubbleSentBackground</strong></em></span></div>
2179
- <div class="col-md-5 formElement">
2180
- <input class="form-control" type="color" id="bubbleSentBackground" name="bubbleSentBackground" value="#2a6ac1" oninput="onChangeColor('bubbleSentBackground')">
2181
- <input class="form-control" type="text" id="bubbleSentBackgroundText" name="bubbleSentBackground" value="#2a6ac1" oninput="onChangeColorText('bubbleSentBackground')">
2182
- </div>
2183
- <div class="col-md-2">
2184
- <button class="btn btn-light" onclick="onClickColor('bubbleSentBackground')">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
2185
- </div>
2186
- </div>
2187
- <div class="row">
2188
- <div class="col-md-5 formElement"><span><em><strong>bubbleSentTextColor</strong></em></span></div>
2189
- <div class="col-md-5 formElement">
2190
- <input class="form-control" type="color" id="bubbleSentTextColor" name="bubbleSentTextColor" value="#ffffff" oninput="onChangeColor('bubbleSentTextColor')">
2191
- <input class="form-control" type="text" id="bubbleSentTextColorText" name="bubbleSentTextColor" value="#ffffff" oninput="onChangeColorText('bubbleSentTextColor')">
2192
- </div>
2193
- <div class="col-md-2">
2194
- <button class="btn btn-light" onclick="onClickColor('bubbleSentTextColor')">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
2195
- </div>
2196
- </div>
2197
- <div class="row">
2198
- <div class="col-md-5 formElement"><span><em><strong>bubbleReceivedBackground</strong></em></span></div>
2199
- <div class="col-md-5 formElement">
2200
- <input class="form-control" type="color" id="bubbleReceivedBackground" name="bubbleReceivedBackground" value="#f7f7f7" oninput="onChangeColor('bubbleReceivedBackground')">
2201
- <input class="form-control" type="text" id="bubbleReceivedBackgroundText" name="bubbleReceivedBackground" value="#f7f7f7" oninput="onChangeText('bubbleReceivedBackground')">
2202
- </div>
2203
- <div class="col-md-2">
2204
- <button class="btn btn-light" onclick="onClickColor('bubbleReceivedBackground')">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
2205
- </div>
2206
- </div>
2207
- <div class="row">
2208
- <div class="col-md-5 formElement"><span><em><strong>bubbleReceivedTextColor</strong></em></span></div>
2209
- <div class="col-md-5 formElement">
2210
- <input class="form-control" type="color" id="bubbleReceivedTextColor" name="bubbleReceivedTextColor" value="#1a1a1a" oninput="onChangeColor('bubbleReceivedTextColor')">
2211
- <input class="form-control" type="text" id="bubbleReceivedTextColorText" name="bubbleReceivedTextColor" value="#1a1a1a" oninput="onChangeColorText('bubbleReceivedTextColor')">
2212
- </div>
2213
- <div class="col-md-2">
2214
- <button class="btn btn-light" onclick="onClickColor('bubbleReceivedTextColor')">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
2215
- </div>
2216
- </div>
2217
- <div class="row">
2218
- <div class="col-md-5 formElement"><span><em><strong>fontSize</strong></em></span></div>
2219
- <div class="col-md-5 formElement">
2220
- <input class="form-control col-sm-2" type="text" id="fontSize" name="fontSize" placeholder="Ex. 22px, 1.4em">
2221
- </div>
2222
- <div class="col-md-2">
2223
- <button class="btn btn-light" onclick="onClickFontSize()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
2224
- </div>
2225
- </div>
2226
-
2227
-
2228
-
2229
- <div class="row">
2230
- <h4 class="col-md-10 formElement" >Manage BUTTON STYLES</h4>
2231
- </div>
2232
- <div class="row">
2233
- <div class="col-md-5 formElement"><span><em><strong>buttonBackgroundColor</strong></em></span></div>
2234
- <div class="col-md-5 formElement">
2235
- <input class="form-control" type="color" id="buttonBackgroundColor" name="buttonBackgroundColor" value="#ffffff" oninput="onChangeColor('buttonBackgroundColor')">
2236
- <input class="form-control" type="text" id="buttonBackgroundColorText" name="buttonBackgroundColor" value="#ffffff" oninput="onChangeColorText('buttonBackgroundColor')">
2237
- </div>
2238
- <div class="col-md-2">
2239
- <button class="btn btn-light" onclick="onClickColor('buttonBackgroundColor')">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
2240
- </div>
2241
- </div>
2242
- <div class="row">
2243
- <div class="col-md-5 formElement"><span><em><strong>buttonTextColor</strong></em></span></div>
2244
- <div class="col-md-5 formElement">
2245
- <input class="form-control" type="color" id="buttonTextColor" name="buttonTextColor" value="#2a6ac1" oninput="onChangeColor('buttonTextColor')">
2246
- <input class="form-control" type="text" id="buttonTextColorText" name="buttonTextColor" value="#2a6ac1" oninput="onChangeColorText('buttonTextColor')">
2247
- </div>
2248
- <div class="col-md-2">
2249
- <button class="btn btn-light" onclick="onClickColor('buttonTextColor')">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
2250
- </div>
2251
- </div>
2252
- <div class="row">
2253
- <div class="col-md-5 formElement"><span><em><strong>buttonHoverBackgroundColor</strong></em></span></div>
2254
- <div class="col-md-5 formElement">
2255
- <input class="form-control" type="color" id="buttonHoverBackgroundColor" name="buttonHoverBackgroundColor" value="#2a6ac1" oninput="onChangeColor('buttonHoverBackgroundColor')">
2256
- <input class="form-control" type="text" id="buttonHoverBackgroundColorText" name="buttonHoverBackgroundColor" value="#2a6ac1" oninput="onChangeText('buttonHoverBackgroundColor')">
2257
- </div>
2258
- <div class="col-md-2">
2259
- <button class="btn btn-light" onclick="onClickColor('buttonHoverBackgroundColor')">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
2260
- </div>
2261
- </div>
2262
- <div class="row">
2263
- <div class="col-md-5 formElement"><span><em><strong>buttonHoverTextColor</strong></em></span></div>
2264
- <div class="col-md-5 formElement">
2265
- <input class="form-control" type="color" id="buttonHoverTextColor" name="buttonHoverTextColor" value="#ffffff" oninput="onChangeColor('buttonHoverTextColor')">
2266
- <input class="form-control" type="text" id="buttonHoverTextColorText" name="buttonHoverTextColor" value="#ffffff" oninput="onChangeColorText('buttonHoverTextColor')">
2267
- </div>
2268
- <div class="col-md-2">
2269
- <button class="btn btn-light" onclick="onClickColor('buttonHoverTextColor')">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
2270
- </div>
2271
- </div>
2272
- <div class="row">
2273
- <div class="col-md-5 formElement"><span><em><strong>buttonFontSize</strong></em></span></div>
2274
- <div class="col-md-5 formElement">
2275
- <input class="form-control col-sm-2" type="text" id="buttonFontSize" name="buttonFontSize" placeholder="Ex. 15px, 1em">
2276
- </div>
2277
- <div class="col-md-2">
2278
- <button class="btn btn-light" onclick="onClickButtonFontSize()">Test this setting <i class="fa fa-magic" aria-hidden="true"></i></button>
2279
- </div>
2280
- </div>
2281
-
2282
- <div class="row testAllBtn">
2283
- <button class="btn btn-light" onclick="onClickTestAll()">TEST ALL</button>
2284
- </div>
2285
- </div>
2286
- <div class="row section">
2287
- <div><h3 style="line-height: 0.3;">WIDGET EVENTS <em><strong>history</strong></em></h3></div>
2288
- <div>
2289
- <textarea class="form-control" id="events" placeholder="Events history here" rows="4" cols="60"></textarea>
2290
- </div>
2291
- <div class="row" style="text-align: right; margin:5px 0px">
2292
- <button class="btn btn-light" onclick="onClickClearHistory()">Clear <i class="fa fa-trash" aria-hidden="true"></i></button>
2293
- </div>
2294
- </div>
2295
- </div>
2296
-
2297
- <div class="col-md-6"></div>
2298
- </div>
2299
-
2300
- <div class="row">
2301
- <div class="col-md-6">
2302
- <h1 id="project_name" style="min-height: 39px;"></h1>
2303
- <h2></h2>
2304
- <div class="b_integrations_agent_links">
2305
- <a href="" data-toggle="modal" data-target="#embedModal" id="enbed" style="display: none;"><i class="fa-code fa"></i>Embed</a>
2306
- <!-- <a href="mailto:?subject=Tiledesk%20widget%20test%20page"><i class="fa-envelope-o fa" target="_blank"></i>Email</a> -->
2307
- <a href="" data-toggle="modal" data-target="#shareModal"><i class="fa-reply fa"></i>Share</a>
2308
- </div>
2309
- </div>
2310
- <div class="col-md-6"></div>
2311
- </div>
2312
-
2313
-
2314
- <div class="modal fade" tabindex="-1" id="embedModal" role="dialog">
2315
- <div class="modal-dialog">
2316
- <div class="modal-content">
2317
- <div class="modal-header">
2318
- <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
2319
- <h4 class="modal-title">Use following code to integrate the widget into your site:</h4>
2320
- </div>
2321
- <div class="modal-body" style="font-family: monospace;font-size: 12px;">
2322
- <span style="margin-bottom: 0px; border:none !important">
2323
- &lt;script type=&quot;application/javascript&quot;&gt; <br>
2324
- &nbsp;&nbsp;&nbsp;&nbsp;window.tiledeskSettings = <br>
2325
- &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ <br>
2326
- &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;projectid: </span>
2327
- <span id="project_id"> </span>
2328
- <span style="border:none !important">
2329
- <br>
2330
- &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}; <br>
2331
- &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(function(d, s, id) { <br>
2332
- &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var w=window; var d=document; var i=function() { i.c(arguments); };<br>
2333
- &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i.q=[]; i.c=function(args){ i.q.push(args); }; w.Tiledesk=i;<br>
2334
- &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var js, fjs=d.getElementsByTagName(s)[0];<br>
2335
- &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (d.getElementById(id)) return;<br>
2336
- &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;js=d.createElement(s); js.id=id; js.async=true;<br>
2337
- &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;js.src="<span id="base_url"></span>";<br>
2338
- &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fjs.parentNode.insertBefore(js, fjs);<br>
2339
- &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}(document, &#39;script&#39;, &#39;tiledesk-jssdk&#39;));<br>
2340
- &lt;/script&gt;
2341
- </span>
2342
- <!-- <pre id="preid"> </pre> -->
2343
- </div>
2344
- </div>
2345
- </div>
2346
- </div>
2347
-
2348
- <div class="modal fade" tabindex="-1" id="shareModal" role="dialog" style="display: none;">
2349
- <div class="modal-dialog">
2350
- <div class="modal-content">
2351
- <div class="modal-header">
2352
- <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
2353
- <h4 class="modal-title">Share this page via social networks:</h4>
2354
- </div>
2355
- <div class="modal-body">
2356
-
2357
- <a onclick="shareOnFacebook()" style="cursor: pointer;text-decoration: none;">
2358
-
2359
- <img src="./tiledesk_widget_files/facebook.png" alt="Facebook">
2360
- </a>
2361
-
2362
- <!-- Twitter -->
2363
- <a onclick="shareOnTwitter()" style="cursor: pointer;text-decoration: none;">
2364
- <img src="./tiledesk_widget_files/twitter.png" alt="Twitter">
2365
- </a>
2366
-
2367
- <!-- LinkedIn -->
2368
- <a onclick="shareOnLinkedin()" style="cursor: pointer;text-decoration: none;">
2369
- <img src="./tiledesk_widget_files/linkedin.png" alt="LinkedIn">
2370
- </a>
2371
-
2372
- <!-- telegram -->
2373
- <a onclick="shareOnTelegram()" style="cursor: pointer;text-decoration: none;">
2374
- <img src="./tiledesk_widget_files/telegram.png" alt="Telegram">
2375
- </a>
2376
-
2377
- <!-- whatsapp -->
2378
- <!-- <a onclick="shareOnWhatsapp()" style="cursor: pointer">
2379
- <img src="./tiledesk_widget_files/whatsapp.png" alt="Whatsapp">
2380
- </a> -->
2381
-
2382
- </div>
2383
- </div>
2384
- </div>
2385
- </div>
2386
- </div>
2387
- </div>
2388
-
2389
- <footer id="footer">
2390
- <div class="b-agent-demo_powered_by">
2391
- <a href="https://console.tiledesk.com/" target="_blank" style="cursor: pointer;text-decoration: none;">
2392
- <span style="position: relative; top: 2px;">Powered by</span>
2393
- <img src="./tiledesk_widget_files/logo@2x-black.png">
2394
- </a>
2395
- </div>
2396
- </footer>
2397
-
2398
-
2399
- <!-- <script>
2400
- // non-blocking CSS delivery
2401
- var loadDeferredStyles = function() {
2402
- var addStylesNode = document.getElementById("deferred-styles");
2403
- console.log('addStylesNode ', addStylesNode)
2404
- var replacement = document.createElement("div");
2405
- replacement.innerHTML = addStylesNode.textContent;
2406
- document.body.appendChild(replacement);
2407
- addStylesNode.parentElement.removeChild(addStylesNode);
2408
- };
2409
- var raf = window.requestAnimationFrame || window.mozRequestAnimationFrame ||
2410
- window.webkitRequestAnimationFrame || window.msRequestAnimationFrame;
2411
- if (raf) {
2412
- raf(function() { window.setTimeout(loadDeferredStyles, 0); });
2413
- } else {
2414
- window.addEventListener('load', loadDeferredStyles);
2415
- }
2416
- </script> -->
2417
-
2418
- <!-- Google Analytics -->
2419
-
2420
-
2421
-
2422
-
2423
- <div>
2424
- <link href="./tiledesk_widget_files/bootstrap.min.css" rel="stylesheet" type="text/css">
2425
- <!-- <link href="./tiledesk_widget_files/font-awesome.min.css" rel="stylesheet" type="text/css"> -->
2426
- <link href="./tiledesk_widget_files/website-poly.min.css" rel="stylesheet" type="text/css">
2427
- <!-- <link href="./tiledesk_widget_files/css" rel="stylesheet" type="text/css"> -->
2428
- </div>
2429
- </body>
2430
- </html>