Popups, Welcome Bar, Optins and Lead Generation Plugin – Icegram - Version 1.10.19

Version Description

Compatibility with Rainmaker

Download this release

Release Info

Developer Icegram
Plugin Icon 128x128 Popups, Welcome Bar, Optins and Lead Generation Plugin – Icegram
Version 1.10.19
Comparing to
See all releases

Code changes from version 1.10.18 to 1.10.19

Files changed (45) hide show
  1. assets/css/admin.css +1216 -0
  2. assets/css/chosen.min.css +3 -0
  3. assets/css/frontend.css +820 -0
  4. assets/css/jquery-ui.min.css +7 -0
  5. assets/css/magnific-popup.css +1 -0
  6. assets/js/admin.js +523 -0
  7. assets/js/ajax-chosen.jquery.min.js +2 -0
  8. assets/js/chosen.jquery.min.js +2 -0
  9. assets/js/gallery.js +2142 -0
  10. assets/js/icegram.js +878 -0
  11. assets/js/jquery.tipTip.min.js +20 -0
  12. assets/js/magnific-popup.js +3 -0
  13. assets/js/main.js +147 -0
  14. classes/class-icegram-message-admin.php +3 -0
  15. icegram.php +7 -4
  16. ig-connector.php +574 -0
  17. message-types/action-bar/main.js +102 -1
  18. message-types/action-bar/themes/air-mail.css +107 -0
  19. message-types/action-bar/themes/bold.css +81 -0
  20. message-types/action-bar/themes/default.css +473 -0
  21. message-types/action-bar/themes/hello.css +76 -0
  22. message-types/action-bar/themes/solid.css +54 -0
  23. message-types/messenger/main.js +44 -1
  24. message-types/messenger/themes/canvas.css +74 -0
  25. message-types/messenger/themes/clear.css +104 -0
  26. message-types/messenger/themes/default.css +196 -0
  27. message-types/messenger/themes/social.css +144 -0
  28. message-types/messenger/themes/talk.css +114 -0
  29. message-types/popup/main.js +92 -1
  30. message-types/popup/themes/air-mail.css +116 -0
  31. message-types/popup/themes/amaze.css +79 -0
  32. message-types/popup/themes/compel.css +94 -0
  33. message-types/popup/themes/convert.css +115 -0
  34. message-types/popup/themes/default.css +324 -0
  35. message-types/popup/themes/inspire.css +91 -0
  36. message-types/popup/themes/persuade.css +84 -0
  37. message-types/toast/main.js +66 -1
  38. message-types/toast/themes/announce.css +32 -0
  39. message-types/toast/themes/balance.css +20 -0
  40. message-types/toast/themes/burnt.css +80 -0
  41. message-types/toast/themes/clear.css +20 -0
  42. message-types/toast/themes/default.css +77 -0
  43. message-types/toast/themes/night-glow.css +26 -0
  44. message-types/toast/themes/stand-out.css +25 -0
  45. readme.txt +8 -2
assets/css/admin.css ADDED
@@ -0,0 +1,1216 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /*Hide the wordpress-post editor div*/
2
+ #postdivrich{
3
+ display: none;
4
+ }
5
+
6
+ #ig-admin-tabs .wp-picker-container{
7
+ display: inline-block;
8
+ }
9
+
10
+ .ig_preview_button{
11
+ display: none;
12
+ padding: 10px 10px 0;
13
+ /*text-align: right;*/
14
+ }
15
+
16
+ .campaign_preview {
17
+ /*float: right;*/
18
+ /*margin-right: 1em !important;*/
19
+ }
20
+ .campaign_target_rules_panel .options_group {
21
+ border-bottom: 1px dashed #D3D3D3;
22
+ }
23
+
24
+ .campaign_target_rules_panel .options_group:last-child {
25
+ border-bottom-style: none;
26
+ }
27
+
28
+ .campaign_target_rules_panel .options_group .form-field .options_header {
29
+ display: inline-block;
30
+ width: 30%;
31
+ vertical-align: top;
32
+ }
33
+
34
+ .campaign_target_rules_panel .options_group p label input[type=checkbox], .campaign_target_rules_panel .options_group p label input[type=radio] {
35
+ width: 0;
36
+ }
37
+
38
+ .campaign_target_rules_panel .options_group p label input[type=date] {
39
+ width: auto;
40
+ margin-left: 10px;
41
+ }
42
+
43
+ .user_roles p label input[type=checkbox], .user_roles p label input[type=radio] {
44
+ margin-left: 3px;
45
+ }
46
+
47
+ .campaign_target_rules_panel .options_group .form-field #icegram_messages {
48
+ width: 300px;
49
+ text-align: center;
50
+ }
51
+
52
+ .empty_campaign {
53
+ margin: 1em;
54
+ font-style: italic;
55
+ }
56
+
57
+ .handle em {
58
+ font-weight: normal;
59
+ font-size: 85%;
60
+ margin-left: 1em;
61
+ color: #777;
62
+ }
63
+
64
+ h3 .chosen-container {
65
+ font-weight: 500;
66
+ }
67
+
68
+ .thickbox_edit_message {
69
+ padding: 0 1em;
70
+ border-bottom: 1px solid #D3D3D3;
71
+ }
72
+
73
+ .messages-list-sortable {
74
+ margin-top: 30px;
75
+ }
76
+
77
+ .messages_list_table {
78
+ font-size: 1em;
79
+ width: 100%;
80
+ border-collapse: separate;
81
+ border-spacing: 3px;
82
+ }
83
+
84
+ th.message_header {
85
+ text-align: center !important;
86
+ }
87
+
88
+ .message_title {
89
+ text-align: left;
90
+ }
91
+
92
+ .message_headline {
93
+ text-align: left;
94
+ padding-left: 1.2em;
95
+ }
96
+
97
+ .message_seconds, .action_links {
98
+ width: 75px !important;
99
+ text-align: center;
100
+ }
101
+
102
+ .message_seconds input {
103
+ text-align: right;
104
+ }
105
+
106
+ .message-row .seconds-text {
107
+ width: 40px !important;
108
+ text-align: center;
109
+ }
110
+
111
+ .message-sort-placeholder {
112
+ background-color: #D3D3D3;
113
+ }
114
+
115
+ .device {
116
+ width: auto;
117
+ line-height: 5em;
118
+ vertical-align: baseline;
119
+ }
120
+
121
+ .device:after {
122
+ font-family: dashicons;
123
+ font-size: 3em;
124
+ }
125
+
126
+ .device input {
127
+ position: relative;
128
+ left: 2.5em;
129
+ top: 1.5em;
130
+ }
131
+
132
+ .admin_field_icon {
133
+ display: inline-block;
134
+ -webkit-font-smoothing: antialiased;
135
+ width: 18px;
136
+ height: 18px;
137
+ font: 400 18px/1 dashicons;
138
+ color: #888;
139
+ vertical-align: text-top;
140
+ margin: 0 2px;
141
+ }
142
+
143
+
144
+
145
+ .shortcode_description:before {
146
+ content: "\f348";
147
+ }
148
+
149
+ .shortcode_description.light{
150
+ content: "\f348";
151
+ color: #777;
152
+ }
153
+
154
+ .campaign_shortcode {
155
+ display: inline-block;
156
+ width: 45%;
157
+ color:#777;
158
+ }
159
+
160
+ .campaign_shortcode.light {
161
+ /*margin-left: 30%;*/
162
+ border: 1px dashed #CCC;
163
+ padding-left: 0.6%;
164
+ padding-right: 0.2%;
165
+ /* position: absolute; */
166
+ /*margin-top: 0.5em;*/
167
+ }
168
+
169
+ .campaign_shortcode.light code{
170
+ color: #777;
171
+
172
+ }
173
+
174
+ label[for=device_mobile] {
175
+ margin-left: -2em;
176
+ }
177
+
178
+ label[for=device_mobile]:after {
179
+ content: "\f470";
180
+ }
181
+
182
+ label[for=device_tablet]:after {
183
+ content: "\f471";
184
+ }
185
+
186
+ label[for=device_laptop]:after {
187
+ content: "\f472";
188
+ }
189
+
190
+ .date_picker:after {
191
+ font-family: dashicons;
192
+ content: "\f145";
193
+ position: relative;
194
+ top: 5px;
195
+ font: normal 20px/1 dashicons;
196
+ vertical-align: top;
197
+ }
198
+
199
+ .date_picker {
200
+ margin-left: 1em;
201
+ }
202
+
203
+ input[type=number]::-webkit-inner-spin-button, input[type=number]::-webkit-outer-spin-button {
204
+ -webkit-appearance: none;
205
+ appearance: none;
206
+ margin: 0;
207
+ }
208
+
209
+ .date-picker {
210
+ max-width: 15%;
211
+ }
212
+
213
+ .campaign_target_rules_panel .options_group .messages-list .form-field .message_header {
214
+ width: 75px !important;
215
+ text-align: right;
216
+ }
217
+
218
+ .disable {
219
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
220
+ filter: alpha(opacity=30);
221
+ opacity: 0.3;
222
+ }
223
+
224
+ .enable {
225
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
226
+ filter: alpha(opacity=100);
227
+ opacity: 1;
228
+ }
229
+
230
+ .message_edit:after {
231
+ content: "\f464";
232
+ }
233
+
234
+ .message_delete:after {
235
+ content: "\f158";
236
+ }
237
+
238
+ .actions:after {
239
+ font-family: dashicons;
240
+ font-size: 1.4em;
241
+ }
242
+
243
+ .actions {
244
+ text-decoration: none;
245
+ color: #444;
246
+ padding-right: 3px;
247
+ cursor: pointer;
248
+ }
249
+
250
+ .actions:hover {
251
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
252
+ filter: alpha(opacity=70);
253
+ opacity: 0.7;
254
+ }
255
+
256
+ .action_links {
257
+ vertical-align: middle;
258
+ }
259
+
260
+ .message_header_label {
261
+ color: #fff;
262
+ text-align: center;
263
+ font-size: 0.7em !important;
264
+ margin: 0 !important;
265
+ padding: 3px 5px;
266
+ cursor: auto;
267
+ text-transform: uppercase;
268
+ }
269
+ .message_header_label.ig_unknown{
270
+ color: #343232;
271
+ border: 1px solid #000;
272
+ }
273
+ .message_label {
274
+ float: left;
275
+ width: 25%;
276
+ padding: 0;
277
+ }
278
+
279
+ .message_field {
280
+ width: 65%;
281
+ display: inline-block;
282
+ }
283
+ .message_field.message_custom_css,
284
+ .message_field.message_custom_js{
285
+ font-family: Consolas, Monaco, monospace;
286
+ font-size: 12px;
287
+ }
288
+
289
+ .message_image_button .image-buttons-icon{
290
+ margin: 0 2px;
291
+ }
292
+ .message_image_button .image-buttons-icon:before {
293
+ content: "\f128";
294
+ }
295
+
296
+ .message_headline_button, .message_image_button {
297
+ vertical-align: top !important;
298
+ }
299
+ .message_headline_button .headline-buttons-icon {
300
+ margin: 2px;
301
+ }
302
+
303
+ .message_headline_button .headline-buttons-icon:before {
304
+ content: "\f130";
305
+ }
306
+
307
+ .help_tip:after {
308
+ content: "\f223";
309
+ }
310
+
311
+ .help_tip {
312
+ float: right;
313
+ margin: 4px 0;
314
+ cursor: help;
315
+ text-decoration: none;
316
+ }
317
+
318
+ .chosen-container {
319
+ width: 65% !important;
320
+ }
321
+
322
+ .message_row.position {
323
+ height: 110px;
324
+ }
325
+ .location-selector input[type=radio]:checked + label span {
326
+ background-color: #2ea2cc;
327
+ }
328
+
329
+ .location-selector {
330
+ width: 128px;
331
+ height: 115px;
332
+ position: absolute;
333
+ display: block;
334
+ margin-left: 24.3%;
335
+ background-image: url(../images/desktop.png);
336
+ background-position: 0 -19px;
337
+ }
338
+
339
+ .location-selector .location {
340
+ background-color: #ddd;
341
+ cursor: pointer;
342
+ position: absolute;
343
+ }
344
+
345
+ .location-selector .location:hover {
346
+ background-color: #ccc;
347
+ }
348
+
349
+ .location-selector .location.top, .location-selector .location.bottom, .location-selector .location.middle {
350
+ height: 14%;
351
+ width: 14%;
352
+ right: 42%;
353
+ }
354
+
355
+ .location-selector .location.top {
356
+ top: 13px;
357
+ }
358
+
359
+ .location-selector .location.middle {
360
+ top: 30%;
361
+ }
362
+
363
+ .location-selector .location.bottom {
364
+ bottom: 43px;
365
+ }
366
+
367
+ .location-selector .location.right, .location-selector .location.left {
368
+ height: 14%;
369
+ width: 14%;
370
+ margin-left: 0;
371
+ margin-right: 0;
372
+ }
373
+
374
+ .location-selector .location.right {
375
+ right: 15px;
376
+ }
377
+
378
+ .location-selector .location.left {
379
+ left: 15px;
380
+ }
381
+
382
+ .wp-editor-container {
383
+ margin-left: 25%;
384
+ }
385
+
386
+ .message-setting-fields #upload_image, .message-setting-fields #message_title {
387
+ width: 58%;
388
+ }
389
+
390
+ .wp-editor-container span .mceLayout {
391
+ width: 50%;
392
+ }
393
+
394
+ #ui-datepicker-div,
395
+ #wp-admin-bar-view,
396
+ #edit-slug-box,
397
+ .empty_campaign,
398
+ .location-selector input[type=radio] {
399
+ display: none;
400
+ }
401
+
402
+ #the-list .message_thumbnail img {
403
+ max-width: 200px;
404
+ max-height: 100px;
405
+ }
406
+
407
+ #icegram_messages + .chosen-container-single .chosen-search input[type=text] {
408
+ width: 100% !important;
409
+ }
410
+ .message_theme + .chosen-container.chosen-container .chosen-results {
411
+ max-height: 30em !important;
412
+ }
413
+
414
+ .message_theme + .chosen-container-single .chosen-single span {
415
+ background-repeat: no-repeat !important;
416
+ background-position: 100% 50% !important;
417
+ }
418
+
419
+ .message_theme + .chosen-container .chosen-results li {
420
+ margin: 0% 0% 2% 2%;
421
+ background-position: 0.5em 2em !important;
422
+ -webkit-background-size: 95% !important;
423
+ background-size: 95% !important;
424
+ border: 2px solid #EEE !important;
425
+ font-weight: 700 !important;
426
+ display: inline-block !important;
427
+ text-align: center !important;
428
+ background-repeat: no-repeat !important;
429
+ }
430
+
431
+ .message_theme + .chosen-container .chosen-results li.highlighted {
432
+ color: #000 !important;
433
+ border: 2px solid #2ea2cc !important;
434
+ background-color: #EAEFFF !important;
435
+ }
436
+
437
+ /************* jQuery TipTip ************/
438
+ #tiptip_holder {
439
+ display: none;
440
+ position: absolute;
441
+ top: 0;
442
+ left: 0;
443
+ z-index: 99999;
444
+ }
445
+ #tiptip_holder.tip_top {
446
+ padding-bottom: 5px;
447
+ }
448
+ #tiptip_holder.tip_top #tiptip_arrow_inner {
449
+ margin-top: -7px;
450
+ margin-left: -6px;
451
+ border-top-color: #464646;
452
+ }
453
+ #tiptip_holder.tip_bottom {
454
+ padding-top: 5px;
455
+ }
456
+ #tiptip_holder.tip_bottom #tiptip_arrow_inner {
457
+ margin-top: -5px;
458
+ margin-left: -6px;
459
+ border-bottom-color: #464646;
460
+ }
461
+ #tiptip_holder.tip_right {
462
+ padding-left: 5px;
463
+ }
464
+ #tiptip_holder.tip_right #tiptip_arrow_inner {
465
+ margin-top: -6px;
466
+ margin-left: -5px;
467
+ border-right-color: #464646;
468
+ }
469
+ #tiptip_holder.tip_left {
470
+ padding-right: 5px;
471
+ }
472
+ #tiptip_holder.tip_left #tiptip_arrow_inner {
473
+ margin-top: -6px;
474
+ margin-left: -7px;
475
+ border-left-color: #464646;
476
+ }
477
+ #tiptip_content, .chart-tooltip {
478
+ font-size: 11px;
479
+ color: #fff;
480
+ padding: .5em;
481
+ background: #464646;
482
+ -webkit-border-radius: 3px;
483
+ -moz-border-radius: 3px;
484
+ border-radius: 3px;
485
+ -webkit-box-shadow: 1px 1px 3px rgba(0, 0, 0, .1);
486
+ -moz-box-shadow: 1px 1px 3px rgba(0, 0, 0, .1);
487
+ box-shadow: 1px 1px 3px rgba(0, 0, 0, .1);
488
+ text-align: center;
489
+ max-width: 150px;
490
+ }
491
+ #tiptip_content code, .chart-tooltip code {
492
+ background: #888;
493
+ padding: 1px;
494
+ }
495
+ #tiptip_arrow, #tiptip_arrow_inner {
496
+ position: absolute;
497
+ border-color: transparent;
498
+ border-style: solid;
499
+ border-width: 6px;
500
+ height: 0;
501
+ width: 0;
502
+ }
503
+ /************* jQuery TipTip ************/
504
+ /**
505
+ Support
506
+ **/
507
+ table#icegram_post_query_table {
508
+ padding: 5px;
509
+ }
510
+ table#icegram_post_query_table tr td {
511
+ padding: 5px;
512
+ }
513
+ input.sm_text_field {
514
+ padding: 5px;
515
+ }
516
+ #icegram_post_query_table label {
517
+ font-weight: bold;
518
+ }
519
+
520
+ /**
521
+ CSS for landing page and Help and Support
522
+ **/
523
+ .icegram-dashicons:before {
524
+ font-family: dashicons;
525
+ position: relative;
526
+ font-family: dashicons;
527
+ font-style: normal;
528
+ vertical-align: middle;
529
+ font-size: 2em;
530
+ }
531
+
532
+ .about-wrap.icegram h2{
533
+ color: #3754a8;
534
+ }
535
+
536
+ .about-wrap.icegram h2{
537
+ padding-top: 19px;
538
+ font-weight: 600;
539
+ }
540
+
541
+ .icegram-dashicons-testimonial h4{
542
+ font-size: 1.5em;
543
+ }
544
+
545
+ .icegram-badge {
546
+ background: #3754a8 url(../images/icegram-logo-branding-64-white.png) no-repeat;
547
+ background-position: center 24px;
548
+ color: #FFF;
549
+ font-size: 12px;
550
+ text-align: center;
551
+ font-weight: 600;
552
+ margin: 5px 0 0;
553
+ padding-top: 120px;
554
+ height: 24px;
555
+ display: inline-block;
556
+ width: 150px;
557
+ text-rendering: optimizeLegibility;
558
+ -moz-box-shadow: 0 1px 3px rgba(0,0,0,0.2);
559
+ -webkit-box-shadow: 0 1px 3px rgba(0,0,0,0.2);
560
+ box-shadow: 0 1px 3px rgba(0,0,0,0.2);
561
+ }
562
+
563
+
564
+ .about-wrap .icegram-badge {
565
+ position: absolute;
566
+ top: 0;
567
+ right: 0;
568
+ }
569
+ .icegram-support{
570
+ font-size: 14px;
571
+ color: black;
572
+ margin: 15px 0 0;
573
+ height: 10px;
574
+ width: 180px;
575
+ text-align: center;
576
+ text-rendering: optimizeLegibility;
577
+ /*-webkit-box-shadow: 0 1px 3px rgba(0,0,0,0.2);*/
578
+ /*box-shadow: 0 1px 3px rgba(0,0,0,0.2);*/
579
+ position: absolute;
580
+ top: 0;
581
+ right: 0;
582
+ margin-top: 178px;
583
+ text-align: right;
584
+ }
585
+ .icegram-contact-us{
586
+ font-size: 20px;
587
+ line-height: 1.5em;
588
+ font-weight: 800;
589
+ /*margin-right: 18px;*/
590
+ margin-right: 20px;
591
+ }
592
+ .feature-section.col > div{
593
+ position: relative;
594
+ width: 29.95%;
595
+ margin-right: 4.999999999%;
596
+ float: left;
597
+ }
598
+ .about-wrap.icegram .feature-section{
599
+ display: block !important;
600
+ }
601
+ .about-wrap [class$=col] .last-feature{
602
+ margin-right: 0;
603
+ }
604
+ form[name="klawoo_subscribe"] {
605
+ margin-right: 150px;
606
+ }
607
+ form[name="klawoo_subscribe"] input[name="email"]{
608
+ width:20em;
609
+ }
610
+ .icegram-contact-us a{
611
+ color: #3754a8;
612
+ }
613
+
614
+
615
+
616
+ /* Addons Page*/
617
+ /*.ig_addons_wrap .addons {
618
+ overflow: hidden;
619
+ }
620
+ .ig_addons_wrap .addons li {
621
+ float: left;
622
+ margin: 0 2em 2em 0!important;
623
+ padding: 0;
624
+ vertical-align: top;
625
+ width: 300px;
626
+ }
627
+ .ig_addons_wrap .addons li a {
628
+ text-decoration: none;
629
+ color: inherit;
630
+ border: 1px solid #ddd;
631
+ display: block;
632
+ min-height: 220px;
633
+ overflow: hidden;
634
+ background: #f5f5f5;
635
+ -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .2), inset 0 -1px 0 rgba(0, 0, 0, .1);
636
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, .2), inset 0 -1px 0 rgba(0, 0, 0, .1);
637
+ }
638
+ .ig_addons_wrap .addons li a img {
639
+ max-width: 100px;
640
+ max-height: 100px;
641
+ margin-right: -15px;
642
+ margin-top: -30px;
643
+ float: right;
644
+ }
645
+ .ig_addons_wrap .addons li a h3 {
646
+ margin: 0!important;
647
+ padding: 20px!important;
648
+ background: #FFF;
649
+ height: 60px;
650
+ }
651
+ .ig_addons_wrap .addons li a p {
652
+ padding: 20px!important;
653
+ margin: 0!important;
654
+ border-top: 1px solid #f1f1f1;
655
+ }
656
+ .ig_addons_wrap .addons li a:focus, .ig_addons_wrap .addons li a:hover {
657
+ background-color: #fff;
658
+ }
659
+ .ig_addons_wrap .addons li .ig_addon_category {
660
+ margin-top: -3.5em;
661
+ float: right;
662
+ text-transform: capitalize;
663
+ font-style: normal;
664
+ margin-right: 1em;
665
+ font-size: 80%;
666
+ }
667
+ .ig_addons_wrap .addons li .ig_addon_category span {
668
+ margin-left: 1.2em;
669
+ padding: 2px 3px;
670
+ background-color: #DEDEDE;
671
+ -webkit-border-radius: .3em;
672
+ -moz-border-radius: .3em;
673
+ border-radius: .3em;
674
+ }
675
+ .ig_addons_wrap .addons li .ig_addon_category span.free {
676
+ background-color: #C3D3FF;
677
+ color: #3754a8;
678
+ }*/
679
+ .ig_addons_wrap .addons li.installed:before{
680
+ /*font-family: dashicons;
681
+ content: "\f147";
682
+ display: inline-block;
683
+ font-size: 3em;
684
+ vertical-align: middle;
685
+ color: #008000;
686
+ position: absolute;
687
+ margin: -2px -15px;*/
688
+ }
689
+ .ig_addons_wrap .addons .addon_btn{
690
+ /*margin-top: 25px;*/
691
+ }
692
+ .ig_addons_wrap .addons .pill{
693
+ /*font-size: 12px;
694
+ margin-top: 30px;
695
+ position: absolute;
696
+ padding: .15em .7em;
697
+ background-color: #aaa;
698
+ color: #FFF;
699
+ box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.2);*/
700
+ }
701
+ /*.ig_addons_special_message {
702
+ font-size: 60%;
703
+ line-height: 60%;
704
+ margin-left: 3em;
705
+ padding: 3px 10px;
706
+ background-color: #FCF0AD;
707
+ border: 1px solid #CCC;
708
+ }
709
+ */
710
+ .upgrade_page{
711
+ text-align: center;
712
+ }
713
+
714
+ .upgrade_page h1 {
715
+ font-size: 2.3em;
716
+ color: #333;
717
+ text-align: center;
718
+ padding: 1em;
719
+ font-weight: bold;
720
+ }
721
+
722
+ .upgrade_page table{
723
+ border-collapse: collapse;
724
+ border: 1px solid #d3d3d3;
725
+ font-size: 1.3em;
726
+ margin: 0 auto;
727
+ }
728
+ .upgrade_page tr{
729
+ padding: 0;
730
+ }
731
+ .upgrade_page th, .upgrade_page td{
732
+ border-right: 1px solid #d3d3d3;
733
+ line-height: 1.5;
734
+ vertical-align: top;
735
+ padding: .5em;
736
+ }
737
+ .upgrade_page th{
738
+ font-size: 1.2em;
739
+ padding-bottom: 0;
740
+ }
741
+ .upgrade_page td{
742
+ padding: .5em 1em .5em;
743
+ }
744
+ .feat_list{
745
+ text-align:left;
746
+ font-size: 1em;
747
+ }
748
+ .td_data{
749
+ padding-top: 1em;
750
+ }
751
+ .plan_title{
752
+ font-size: 1.4em;
753
+ display: block;
754
+ width: 100%;
755
+ margin-bottom: -.2em;
756
+ }
757
+ .plan_price{
758
+ color: #0e74b2;
759
+ font-size: 1.8em;
760
+ font-weight: normal;
761
+ /*font-family: "Arial, sans-serif;";*/
762
+
763
+ }
764
+ .sm_hr{
765
+ position: relative;
766
+ }
767
+ .sm_hr:before{
768
+ position: absolute;
769
+ content: '';
770
+ width: 80%;
771
+ left: 10%;
772
+ border-bottom: 1px dashed #d3d3d3;
773
+ }
774
+ .td_list_icon {
775
+ font-size: 1.2em;
776
+ color: #11772d;
777
+ margin-right: .3em;
778
+ }
779
+ /*.button.alt{
780
+ background-color: #00870c;
781
+ border-color: #00870c;
782
+ color: #ffffff;
783
+ font-size: 1.5em;
784
+ padding-top: 0.5em;
785
+ padding-bottom: 1.5em;
786
+ }
787
+ .button.alt:hover, input[type="button"].alt,
788
+ input[type="reset"].alt:hover,
789
+ input[type="submit"].alt:hover,
790
+ .button.alt:hover,
791
+ .added_to_cart.alt:hover,
792
+ .widget-area .widget a.button.alt:hover, .added_to_cart:hover, .widget a.button.checkout:hover {
793
+ background-color: #11772d;
794
+ border-color: #00870c;
795
+ color: #ffffff;
796
+ font-size: 1.5em;
797
+ padding-top: 0.5em;
798
+
799
+ }*/
800
+
801
+ .upgrade_page .button-primary{
802
+ text-shadow:none;
803
+ font-size: 1.15em !important;
804
+ line-height: 1em !important;
805
+ height: 2.5em !important;
806
+ padding: .75em 1.5em !important;
807
+ /*background: #038703 !important;
808
+ border-color: #038703 !important;*/
809
+ }
810
+
811
+ .upgrade_page .button-primary:focus,
812
+ .upgrade_page .button-primary:visited,
813
+ .upgrade_page .button-primary:hover,
814
+ .upgrade_page .button-primary:active{
815
+ /*color: #fff;*/
816
+ /*background: #038703 !important;*/
817
+ /*-webkit-box-shadow: inset 0 2px 0 #038703!important;*/
818
+ /*box-shadow: inset 0 2px 0 #038703!important;*/
819
+ }
820
+
821
+ /** Embed Form CSS - Start**/
822
+ #popup_container {
823
+ width: 550px;
824
+ background-color: #FFF;
825
+ margin: 0 auto;
826
+ padding: .5em 1em 1em 1em;
827
+ }
828
+ #popup_container input[value="ig_vertical"]{
829
+ margin-left: 3%;
830
+ }
831
+ #popup_container select{
832
+ width:30%;
833
+ }
834
+ #popup_container #embed_howto_link {
835
+ float: right;
836
+ font-size: .8em;
837
+ font-weight: normal;
838
+ }
839
+ /** Embed Form CSS - End**/
840
+
841
+
842
+ /** Fix to keep the message setting row indepenent of other themes **/
843
+ .campaign_target_rules_panel .messages_list_table p.inline{
844
+ display: block;
845
+ margin: 1em 0;
846
+ }
847
+
848
+ .campaign_target_rules_panel .form-field .delete-url:before{
849
+ font-family: dashicons;
850
+ content: "\f182";
851
+ cursor: pointer;
852
+ }
853
+ .campaign_target_rules_panel .form-field .url_input_field{
854
+ width:65% !important;
855
+ }
856
+
857
+
858
+ .campaign_target_rules_panel #valid-field{
859
+ margin-left: 92%;
860
+ }
861
+
862
+ .campaign_target_rules_panel #valid-field.error{
863
+ font-family: dashicons;
864
+ font-size: 1.5em;
865
+ color: #ff0000;
866
+ vertical-align: middle;
867
+ display: inline-block;
868
+ -webkit-font-smoothing: antialiased;
869
+ cursor: help;
870
+ }
871
+
872
+ .campaign_target_rules_panel #valid-field.error:after{
873
+ content: "\f223";
874
+ }
875
+
876
+ .campaign_target_rules_panel #add-url-icon:after{
877
+ font-family: dashicons;
878
+ content: "\f132";
879
+ vertical-align: middle;
880
+ }
881
+ .message_colors_options_container p{
882
+ margin-top: .3em !important;
883
+ margin-bottom: .3em !important;
884
+ }
885
+ .message_colors_options_container p span.message_label{
886
+ font-size:12px;
887
+ margin-top: 2px;
888
+ }
889
+
890
+ /* chosen fix: Start */
891
+ .message-setting-fields .chosen-container-single .chosen-single
892
+ {
893
+ z-index:initial!important;
894
+ }
895
+ .message-setting-fields .chosen-container-single.chosen-single div b {
896
+ background: url(../images/chosen-sprite.png)no-repeat 0 2px!important;
897
+ }
898
+ .ig_get_more,
899
+ .message_theme + .chosen-container .chosen-results li.ig_get_more ,.message_animation + .chosen-container .chosen-results li.ig_get_more{
900
+ height: 1.5em !important;
901
+ background: rgba(255, 231, 180, 0.47) !important;
902
+ border: 1px dashed rgb(180, 0, 0) !important;
903
+ line-height: 1.5em;
904
+ color: rgb(128, 0, 0)!important;
905
+ border-radius: 0.5em;
906
+ width: 92% !important;
907
+ }
908
+ .message_animation + .chosen-container .chosen-results li.ig_get_more{
909
+ height: 1em !important;
910
+ line-height: 1em;
911
+ margin-bottom: 0.1em;
912
+ text-align: center;
913
+ }
914
+ .message_theme + .chosen-container .chosen-results li.ig_get_more:after ,.message_animation + .chosen-container .chosen-results li.ig_get_more:after{
915
+ content: " \2192";
916
+ }
917
+ .message_theme + .chosen-container .chosen-results li.ig_get_more:focus,
918
+ .message_theme + .chosen-container .chosen-results li.ig_get_more:hover,
919
+ .message_animation + .chosen-container .chosen-results li.ig_get_more:focus,
920
+ .message_animation + .chosen-container .chosen-results li.ig_get_more:hover{
921
+ /*box-shadow: inset 0 0 1.5em rgba(0, 0, 0, 0.15);*/
922
+ box-shadow: inset 0 0 1.5em rgba(253, 214, 131, 0.62);
923
+ }
924
+ /* chosen fix : End */
925
+
926
+
927
+ /****************** Embed Form: Start *******************/
928
+
929
+ .message_form_options{
930
+ width: 75%;
931
+ margin-left: 25%;
932
+ }
933
+ .message_form_options label.message_label{
934
+ display: none;
935
+ }
936
+ .message_form_options textarea{
937
+ resize:none;
938
+ width: 86%;
939
+ }
940
+ .message_form_options p > input,
941
+ .message_form_options p > textarea,
942
+ .message_form_options p > div{
943
+ /*margin-left: 25%;*/
944
+ }
945
+ .message_form_options p > div.form_radio_group{
946
+ width: 86%;
947
+ }
948
+ .message_form_options span.message_label{
949
+ width: 100%;
950
+ /*padding-bottom: .3em;*/
951
+ }
952
+ .message_form_options .form_inline_shortcode{
953
+ margin-left: 0;
954
+ margin-top: 1em;
955
+ position: relative;
956
+ width: inherit;
957
+ }
958
+
959
+ .message_form_html_original{
960
+ font-family: Consolas,Monaco,monospace;
961
+ font-size: .8em;
962
+ }
963
+
964
+ .form_radio_group .location{
965
+ display: inline-block;
966
+ width: 97px;
967
+ height: 94px;
968
+ padding: 3px;
969
+ padding-bottom:0;
970
+ margin-right: .8em;
971
+ border: 1px solid transparent;
972
+ }
973
+ .form_radio_group .location label{
974
+ background: url(../images/from_layouts.png) no-repeat;
975
+ display: block;
976
+ width: 95px;
977
+ height: 100px;
978
+ border: 1px solid transparent;
979
+ }
980
+ .form_radio_group .location:hover{
981
+ border: 1px solid #2EA2CC;
982
+ }
983
+
984
+ #message_form_style + .chosen-container-single .chosen-single {
985
+ height: 6em !important;
986
+ }
987
+ #message_form_style + .chosen-container-single .chosen-single span {
988
+ background-size: 9em !important;
989
+ line-height: 6em !important;
990
+ background-repeat: no-repeat;
991
+ background-position: 100% 50% !important;
992
+ }
993
+ #message_form_style + .chosen-container .chosen-results li {
994
+ /*width: 92% !important;*/
995
+ width: 43% !important;
996
+ /*height: 80px !important;*/
997
+ height: 10em !important;
998
+ margin: 0% 0% 2% 2%;
999
+ /*background-position: 0.5em 2em !important;*/
1000
+ -webkit-background-size: 95% !important;
1001
+ background-size: 100% !important;
1002
+ border: 2px solid #EEE !important;
1003
+ font-weight: 700 !important;
1004
+ display: inline-block !important;
1005
+ text-align: center !important;
1006
+ background-repeat: no-repeat !important;
1007
+ background-position: 0% 100% !important;
1008
+ color: transparent;
1009
+ }
1010
+ #message_form_style + .chosen-container .chosen-results li.highlighted {
1011
+ color: transparent !important;
1012
+ border: 2px solid #2ea2cc !important;
1013
+ background-color: #EAEFFF !important;
1014
+ }
1015
+ .message_form_options .chosen-container{
1016
+ width: 86% !important;
1017
+ }
1018
+ #message_form_style + .chosen-container .chosen-results li:first-child {
1019
+ /*color: inherit;*/
1020
+ /*height: 1.5em !important;*/
1021
+ }
1022
+ /****************** Embed Form: End *******************/
1023
+
1024
+ /********** changes for about-icegram page ************/
1025
+ .feature-section.col.two-col > div{
1026
+ width: 45.95%;
1027
+ /*margin-right: 4.999999999%;*/
1028
+ }
1029
+ .feature-section.col img{
1030
+ width: 150px;
1031
+ border: none;
1032
+ }
1033
+ .feature-section.col p{
1034
+ margin-bottom: 1.5em;
1035
+ }
1036
+ .about-wrap.icegram{
1037
+ max-width: 100%;
1038
+ }
1039
+
1040
+ .about-wrap.icegram h2{
1041
+ margin-bottom: 0.5em;
1042
+ }
1043
+ .about-wrap .feature-section h4{
1044
+ margin-top: .4em;
1045
+ }
1046
+ .about-header .about-text{
1047
+ margin-top: 0;
1048
+ margin-bottom: 1.5em;
1049
+ }
1050
+ .changelog .about-text{
1051
+ margin-bottom: 0;
1052
+ margin-top: 1.5em;
1053
+ }
1054
+ .about-wrap .icegram-badge {
1055
+ /*top: 1em;*/
1056
+ right: 1.3em;
1057
+ color: #3754a8;
1058
+ background-color: transparent;
1059
+ padding-top: 100px;
1060
+ box-shadow: none;
1061
+ -webkit-box-shadow: none;
1062
+ background-image: url(../images/icegram-logo-branding-64.png);
1063
+ }
1064
+ .about-header .wrap{
1065
+ background-color: white;
1066
+ /*padding: .4em 1em;*/
1067
+ border-top: 1px dotted #ddd;
1068
+ /*margin: 0 0 20px 0;*/
1069
+ }
1070
+ .about-header .wrap table{
1071
+ margin-top: 0.5em;
1072
+ }
1073
+ .about-header th{
1074
+ font-size: 1.1em;
1075
+ color: inherit;
1076
+ width: 170px;
1077
+ }
1078
+ .about-header{
1079
+ background-color: #FFF;
1080
+ padding: 1em 1em 0.5em 1em;
1081
+ -webkit-box-shadow: 0 0 7px 0 rgba(0, 0, 0, .2);
1082
+ box-shadow: 0 0 7px 0 rgba(0, 0, 0, .2);
1083
+ }
1084
+ .icegram-support{
1085
+ padding-right: 1em;
1086
+ margin-top: 140px;
1087
+ }
1088
+ .icegram-actions a,
1089
+ .icegram-actions a:active{
1090
+ vertical-align: middle !important;
1091
+ font-size: 1.15em;
1092
+ color: #3754a8;
1093
+ }
1094
+ .icegram-actions .button-primary{
1095
+ text-shadow:none;
1096
+ font-size: 1.15em !important;
1097
+ line-height: 1em !important;
1098
+ height: 2.5em !important;
1099
+ padding: .75em 1.5em !important;
1100
+ background: #038703 !important;
1101
+ border-color: #038703 !important;
1102
+ }
1103
+
1104
+ .icegram-actions .button-primary:focus,
1105
+ .icegram-actions .button-primary:focus,
1106
+ .icegram-actions .button-primary:visited,
1107
+ .icegram-actions .button-primary:hover,
1108
+ .icegram-actions .button-primary:active{
1109
+ color: #fff;
1110
+ background: #038703 !important;
1111
+ -webkit-box-shadow: inset 0 2px 0 #038703!important;
1112
+ box-shadow: inset 0 2px 0 #038703!important;
1113
+ /*vertical-align: middle;*/
1114
+ }
1115
+ .icegram-dashicons:before {
1116
+ margin-right: .1em;
1117
+ }
1118
+
1119
+
1120
+ /***** Tabs custom css ******/
1121
+
1122
+ #ig-admin-tabs{
1123
+ padding-top: 0;
1124
+ }
1125
+
1126
+ #ig-admin-tabs a:focus{
1127
+ box-shadow: none;
1128
+ }
1129
+ .ig-admin-tabs-nav {
1130
+ padding: 0 15px 0 10px;
1131
+ margin: 0;
1132
+ }
1133
+
1134
+ .ig-admin-tabs-nav li {
1135
+ display: inline-block;
1136
+ list-style: none;
1137
+ border: 1px solid #aaa;
1138
+ padding: 0;
1139
+ margin: 0 4px -1px;
1140
+ background-color: #eee;
1141
+ }
1142
+
1143
+ #ig-admin-tabs .ig-admin-nav-last{
1144
+ background-color: #d6e3ef;
1145
+ }
1146
+
1147
+ #ig-admin-tabs .ig-admin-nav-last:hover{
1148
+ background-color: #c5daef;
1149
+ }
1150
+
1151
+ #ig-admin-tabs .ig-admin-nav-last.current,
1152
+ .ig-admin-tabs-nav li:hover,
1153
+ .ig-admin-tabs-nav li.current,
1154
+ .ig-admin-tabs-nav li.current:hover{
1155
+ background-color: #FFF;
1156
+ border: 1px solid #aaa;
1157
+ border-bottom: 1px solid #fff;
1158
+ color: #444;
1159
+ }
1160
+
1161
+ .ig-admin-tabs-nav li.current {
1162
+ border-bottom: 1px solid #fff;
1163
+ z-index: 5;
1164
+ color: #444;
1165
+ }
1166
+
1167
+ .ig-admin-tabs-nav li a {
1168
+ padding: 6px 10px;
1169
+ font-size: 14px;
1170
+ font-weight: normal;
1171
+ line-height: 30px;
1172
+ color: #333;
1173
+ text-decoration: none;
1174
+ /*float: none !important;*/
1175
+ }
1176
+
1177
+ .ig-admin-tabs-nav li.current a{
1178
+ text-decoration: none!important;
1179
+ font-weight: bold;
1180
+ }
1181
+
1182
+ .ig-admin-tabs-nav li a:hover {
1183
+ color: #333;
1184
+ }
1185
+
1186
+ #ig-admin-tabs .ig-admin-tab {
1187
+ background-color: #FFF;
1188
+ border: 1px solid #aaa;
1189
+ /*border-top: none;*/
1190
+ padding: 16px;
1191
+ display: none;
1192
+ }
1193
+
1194
+ /** tab CSS : ends **/
1195
+
1196
+ .message_label.sub_option_label{
1197
+ /*width: 6em;*/
1198
+ width: 10%;
1199
+ padding-top: .3em;
1200
+ }
1201
+ .message_label.sub_option_label + .message_field{
1202
+ width: 62%
1203
+ }
1204
+ .message_alt_cta_container{
1205
+ margin-bottom: 2em;
1206
+ }
1207
+ .message_row .ig_admin_hr{
1208
+ border-top: 1px dashed rgba(0,0,0,.2);
1209
+ width: 75%;
1210
+ display: block;
1211
+ margin: .5em 0;
1212
+ margin-left: 25%;
1213
+ }
1214
+ .message_row .option_title{
1215
+ text-decoration: underline;
1216
+ }
assets/css/chosen.min.css ADDED
@@ -0,0 +1,3 @@
 
 
 
1
+ /* Chosen v1.1.0 | (c) 2011-2013 by Harvest | MIT License, https://github.com/harvesthq/chosen/blob/master/LICENSE.md */
2
+
3
+ .chosen-container{position:relative;display:inline-block;vertical-align:middle;font-size:13px;zoom:1;*display:inline;-webkit-user-select:none;-moz-user-select:none;user-select:none}.chosen-container .chosen-drop{position:absolute;top:100%;left:-9999px;z-index:1010;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;width:100%;border:1px solid #aaa;border-top:0;background:#fff;box-shadow:0 4px 5px rgba(0,0,0,.15)}.chosen-container.chosen-with-drop .chosen-drop{left:0}.chosen-container a{cursor:pointer}.chosen-container-single .chosen-single{position:relative;display:block;overflow:hidden;padding:0 0 0 8px;height:23px;border:1px solid #aaa;border-radius:5px;background-color:#fff;background:-webkit-gradient(linear,50% 0,50% 100%,color-stop(20%,#fff),color-stop(50%,#f6f6f6),color-stop(52%,#eee),color-stop(100%,#f4f4f4));background:-webkit-linear-gradient(top,#fff 20%,#f6f6f6 50%,#eee 52%,#f4f4f4 100%);background:-moz-linear-gradient(top,#fff 20%,#f6f6f6 50%,#eee 52%,#f4f4f4 100%);background:-o-linear-gradient(top,#fff 20%,#f6f6f6 50%,#eee 52%,#f4f4f4 100%);background:linear-gradient(top,#fff 20%,#f6f6f6 50%,#eee 52%,#f4f4f4 100%);background-clip:padding-box;box-shadow:0 0 3px #fff inset,0 1px 1px rgba(0,0,0,.1);color:#444;text-decoration:none;white-space:nowrap;line-height:24px}.chosen-container-single .chosen-default{color:#999}.chosen-container-single .chosen-single span{display:block;overflow:hidden;margin-right:26px;text-overflow:ellipsis;white-space:nowrap}.chosen-container-single .chosen-single-with-deselect span{margin-right:38px}.chosen-container-single .chosen-single abbr{position:absolute;top:6px;right:26px;display:block;width:12px;height:12px;background:url(../images/chosen-sprite.png) -42px 1px no-repeat;font-size:1px}.chosen-container-single .chosen-single abbr:hover{background-position:-42px -10px}.chosen-container-single.chosen-disabled .chosen-single abbr:hover{background-position:-42px -10px}.chosen-container-single .chosen-single div{position:absolute;top:0;right:0;display:block;width:18px;height:100%}.chosen-container-single .chosen-single div b{display:block;width:100%;height:100%;background:url(../images/chosen-sprite.png) no-repeat 0 2px}.chosen-container-single .chosen-search{position:relative;z-index:1010;margin:0;padding:3px 4px;white-space:nowrap}.chosen-container-single .chosen-search input[type=text]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;margin:1px 0;padding:4px 20px 4px 5px;width:100%;height:auto;outline:0;border:1px solid #aaa;background:#fff url(../images/chosen-sprite.png) no-repeat 100% -20px;background:url(../images/chosen-sprite.png) no-repeat 100% -20px;font-size:1em;font-family:sans-serif;line-height:normal;border-radius:0}.chosen-container-single .chosen-drop{margin-top:-1px;border-radius:0 0 4px 4px;background-clip:padding-box}.chosen-container-single.chosen-container-single-nosearch .chosen-search{position:absolute;left:-9999px}.chosen-container .chosen-results{position:relative;overflow-x:hidden;overflow-y:auto;margin:0 4px 4px 0;padding:0 0 0 4px;max-height:240px;-webkit-overflow-scrolling:touch}.chosen-container .chosen-results li{display:none;margin:0;padding:5px 6px;list-style:none;line-height:15px;-webkit-touch-callout:none}.chosen-container .chosen-results li.active-result{display:list-item;cursor:pointer}.chosen-container .chosen-results li.disabled-result{display:list-item;color:#ccc;cursor:default}.chosen-container .chosen-results li.highlighted{background-color:#3875d7;background-image:-webkit-gradient(linear,50% 0,50% 100%,color-stop(20%,#3875d7),color-stop(90%,#2a62bc));background-image:-webkit-linear-gradient(#3875d7 20%,#2a62bc 90%);background-image:-moz-linear-gradient(#3875d7 20%,#2a62bc 90%);background-image:-o-linear-gradient(#3875d7 20%,#2a62bc 90%);background-image:linear-gradient(#3875d7 20%,#2a62bc 90%);color:#fff}.chosen-container .chosen-results li.no-results{display:list-item;background:#f4f4f4}.chosen-container .chosen-results li.group-result{display:list-item;font-weight:700;cursor:default}.chosen-container .chosen-results li.group-option{padding-left:15px}.chosen-container .chosen-results li em{font-style:normal;text-decoration:underline}.chosen-container-multi .chosen-choices{position:relative;overflow:hidden;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;margin:0;padding:0;width:100%;height:auto!important;height:1%;border:1px solid #aaa;background-color:#fff;background-image:-webkit-gradient(linear,50% 0,50% 100%,color-stop(1%,#eee),color-stop(15%,#fff));background-image:-webkit-linear-gradient(#eee 1%,#fff 15%);background-image:-moz-linear-gradient(#eee 1%,#fff 15%);background-image:-o-linear-gradient(#eee 1%,#fff 15%);background-image:linear-gradient(#eee 1%,#fff 15%);cursor:text}.chosen-container-multi .chosen-choices li{float:left;list-style:none}.chosen-container-multi .chosen-choices li.search-field{margin:0;padding:0;white-space:nowrap}.chosen-container-multi .chosen-choices li.search-field input[type=text]{margin:1px 0;padding:5px;height:15px;outline:0;border:0!important;background:transparent!important;box-shadow:none;color:#666;font-size:100%;font-family:sans-serif;line-height:normal;border-radius:0}.chosen-container-multi .chosen-choices li.search-field .default{color:#999}.chosen-container-multi .chosen-choices li.search-choice{position:relative;margin:3px 0 3px 5px;padding:3px 20px 3px 5px;border:1px solid #aaa;border-radius:3px;background-color:#e4e4e4;background-image:-webkit-gradient(linear,50% 0,50% 100%,color-stop(20%,#f4f4f4),color-stop(50%,#f0f0f0),color-stop(52%,#e8e8e8),color-stop(100%,#eee));background-image:-webkit-linear-gradient(#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-image:-moz-linear-gradient(#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-image:-o-linear-gradient(#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-image:linear-gradient(#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-clip:padding-box;box-shadow:0 0 2px #fff inset,0 1px 0 rgba(0,0,0,.05);color:#333;line-height:13px;cursor:default}.chosen-container-multi .chosen-choices li.search-choice .search-choice-close{position:absolute;top:4px;right:3px;display:block;width:12px;height:12px;background:url(../images/chosen-sprite.png) -42px 1px no-repeat;font-size:1px}.chosen-container-multi .chosen-choices li.search-choice .search-choice-close:hover{background-position:-42px -10px}.chosen-container-multi .chosen-choices li.search-choice-disabled{padding-right:5px;border:1px solid #ccc;background-color:#e4e4e4;background-image:-webkit-gradient(linear,50% 0,50% 100%,color-stop(20%,#f4f4f4),color-stop(50%,#f0f0f0),color-stop(52%,#e8e8e8),color-stop(100%,#eee));background-image:-webkit-linear-gradient(top,#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-image:-moz-linear-gradient(top,#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-image:-o-linear-gradient(top,#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-image:linear-gradient(top,#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);color:#666}.chosen-container-multi .chosen-choices li.search-choice-focus{background:#d4d4d4}.chosen-container-multi .chosen-choices li.search-choice-focus .search-choice-close{background-position:-42px -10px}.chosen-container-multi .chosen-results{margin:0;padding:0}.chosen-container-multi .chosen-drop .result-selected{display:list-item;color:#ccc;cursor:default}.chosen-container-active .chosen-single{border:1px solid #5897fb;box-shadow:0 0 5px rgba(0,0,0,.3)}.chosen-container-active.chosen-with-drop .chosen-single{border:1px solid #aaa;-moz-border-radius-bottomright:0;border-bottom-right-radius:0;-moz-border-radius-bottomleft:0;border-bottom-left-radius:0;background-image:-webkit-gradient(linear,50% 0,50% 100%,color-stop(20%,#eee),color-stop(80%,#fff));background-image:-webkit-linear-gradient(#eee 20%,#fff 80%);background-image:-moz-linear-gradient(#eee 20%,#fff 80%);background-image:-o-linear-gradient(#eee 20%,#fff 80%);background-image:linear-gradient(#eee 20%,#fff 80%);box-shadow:0 1px 0 #fff inset}.chosen-container-active.chosen-with-drop .chosen-single div{border-left:0;background:transparent}.chosen-container-active.chosen-with-drop .chosen-single div b{background-position:-18px 2px}.chosen-container-active .chosen-choices{border:1px solid #5897fb;box-shadow:0 0 5px rgba(0,0,0,.3)}.chosen-container-active .chosen-choices li.search-field input[type=text]{color:#111!important}.chosen-disabled{opacity:.5!important;cursor:default}.chosen-disabled .chosen-single{cursor:default}.chosen-disabled .chosen-choices .search-choice .search-choice-close{cursor:default}.chosen-rtl{text-align:right}.chosen-rtl .chosen-single{overflow:visible;padding:0 8px 0 0}.chosen-rtl .chosen-single span{margin-right:0;margin-left:26px;direction:rtl}.chosen-rtl .chosen-single-with-deselect span{margin-left:38px}.chosen-rtl .chosen-single div{right:auto;left:3px}.chosen-rtl .chosen-single abbr{right:auto;left:26px}.chosen-rtl .chosen-choices li{float:right}.chosen-rtl .chosen-choices li.search-field input[type=text]{direction:rtl}.chosen-rtl .chosen-choices li.search-choice{margin:3px 5px 3px 0;padding:3px 5px 3px 19px}.chosen-rtl .chosen-choices li.search-choice .search-choice-close{right:auto;left:4px}.chosen-rtl.chosen-container-single-nosearch .chosen-search,.chosen-rtl .chosen-drop{left:9999px}.chosen-rtl.chosen-container-single .chosen-results{margin:0 0 4px 4px;padding:0 4px 0 0}.chosen-rtl .chosen-results li.group-option{padding-right:15px;padding-left:0}.chosen-rtl.chosen-container-active.chosen-with-drop .chosen-single div{border-right:0}.chosen-rtl .chosen-search input[type=text]{padding:4px 5px 4px 20px;background:#fff url(../images/chosen-sprite.png) no-repeat -30px -20px;background:url(../images/chosen-sprite.png) no-repeat -30px -20px;direction:rtl}.chosen-rtl.chosen-container-single .chosen-single div b{background-position:6px 2px}.chosen-rtl.chosen-container-single.chosen-with-drop .chosen-single div b{background-position:-12px 2px}@media only screen and (-webkit-min-device-pixel-ratio:2),only screen and (min-resolution:144dpi){.chosen-rtl .chosen-search input[type=text],.chosen-container-single .chosen-single abbr,.chosen-container-single .chosen-single div b,.chosen-container-single .chosen-search input[type=text],.chosen-container-multi .chosen-choices .search-choice .search-choice-close,.chosen-container .chosen-results-scroll-down span,.chosen-container .chosen-results-scroll-up span{background-image:url(chosen-sprite@2x.png)!important;background-size:52px 37px!important;background-repeat:no-repeat!important}}
assets/css/frontend.css ADDED
@@ -0,0 +1,820 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* Powered By link */
2
+ .ig_powered_by, .ig_powered_by a, a.ig_powered_by {
3
+ color: #A8A8A8 !important;
4
+ text-decoration: none;
5
+ }
6
+ .ig_cta_overlay{width: 100%; height: 100%; top: 0; left: 0; background: #E6E6E6; z-index: 1000000; position: fixed; opacity: 0.5; } .ig_cta_spinner{background : url('../images/spinner-2x.gif') no-repeat no-repeat center; height: 100%; }
7
+
8
+ /* Make border none for all buttons under icegram, to have our style */
9
+ /*todo :test this and check with all wp themes and icegram themes*/
10
+ .icegram .ig_button,
11
+ .icegram input[type="submit"],
12
+ .icegram input[type="button"]{
13
+ border: none; /* Safari/Chrome, other WebKit */ /* Firefox, other Gecko */
14
+ box-sizing: border-box; /* Opera/IE 8+ */
15
+ box-shadow:none;
16
+ }
17
+ /** TODO : check the need of this while testing **/
18
+ /*
19
+ .icegram .ig_button:hover,
20
+ .icegram input[type="submit"]:hover,
21
+ .icegram input[type="button"]:hover,
22
+ .icegram .ig_button:active,
23
+ .icegram input[type="submit"]:active,
24
+ .icegram input[type="button"]:active{
25
+ border: none;
26
+ }
27
+ */
28
+
29
+ /*
30
+ Making p tag margin uniform to all icegram message type.
31
+ It can be override with default.css and theme.css if required
32
+ */
33
+ .ig_message p{
34
+ margin: 0;
35
+ padding: 0;
36
+ line-height: inherit;
37
+ font-size: inherit;
38
+ }
39
+
40
+ .ig_clear_fix:after {
41
+ content: ".";
42
+ display: block;
43
+ clear: both;
44
+ visibility: hidden;
45
+ line-height: 0;
46
+ height: 0;
47
+ }
48
+
49
+ .ig_form_response_text{
50
+ margin:.5em auto;
51
+ padding: .5em;
52
+ text-align:center;
53
+ }
54
+
55
+ /****************** Embed Form: Start *******************/
56
+
57
+ .ig_form_container{
58
+ display: none;
59
+ position: relative;
60
+ height: 100%;
61
+ z-index: 10;
62
+ padding: .7em 1em;
63
+ text-align: left;
64
+ line-height: 1; /* Safari/Chrome, other WebKit */ /* Firefox, other Gecko */
65
+ box-sizing: border-box; /* Opera/IE 8+ */
66
+ }
67
+
68
+ .ig_form_container form{
69
+ margin: 0;
70
+ padding: 0;
71
+ font-size: 100%;
72
+ }
73
+
74
+ .ig_form_container textarea,
75
+ .ig_form_container select{
76
+ height: 2.25em;
77
+ }
78
+ /*.ig_form_container textarea{
79
+ height: 4.25em;
80
+ }*/
81
+ .ig_form_container input[type=checkbox]{
82
+ height: 1.25em !important;
83
+ }
84
+
85
+ .ig_form_container .ig_form_header{
86
+ /*font-size: 1.5em;*/
87
+ width: 98%;
88
+ /*margin: 0 auto;*/
89
+ text-align: left;
90
+ }
91
+ .ig_form_container .ig_form_footer{
92
+ font-size: .8em;
93
+ /*margin: 0 auto;*/
94
+ width: 98%;
95
+ clear: both;
96
+ text-align: left;
97
+ }
98
+
99
+ .ig_form_container .ig_form_els{
100
+ margin:.3em 1% .3em 0;
101
+ }
102
+
103
+ .ig_form_left .ig_form_container.layout_left{
104
+ display: block;
105
+ padding: 1em .7em;
106
+ }
107
+
108
+ .ig_form_right .ig_form_container.layout_right{
109
+ display: block;
110
+ padding: 1em .7em;
111
+ float: left;
112
+ }
113
+
114
+ .ig_form_bottom .ig_form_container.layout_bottom{
115
+ display: block;
116
+ width: 100%;
117
+ height: auto;
118
+ }
119
+
120
+ .ig_form_inline .ig_form_container.layout_inline{
121
+ display: block;
122
+ width: 100%;
123
+ padding: .5em;
124
+ background-color: transparent !important;
125
+ color: inherit !important;
126
+ }
127
+ .ig_form_bottom .ig_form_container.layout_bottom .ig_embed_form_container,
128
+ .ig_form_inline .ig_form_container.layout_inline .ig_embed_form_container{
129
+ /*text-align: center;*/
130
+ }
131
+
132
+ .ig_form_left .ig_form_container.layout_left .ig_form_els,
133
+ .ig_form_right .ig_form_container.layout_right .ig_form_els{
134
+ margin: .5em auto;
135
+
136
+ }
137
+ .ig_form_bottom .ig_form_container.layout_bottom .ig_form_els{
138
+ display: inline-block;
139
+ float: left;
140
+ }
141
+
142
+ .ig_form_inline .ig_form_container.layout_inline .ig_form_els{
143
+ display: inline-block;
144
+ float: left;
145
+ }
146
+
147
+ .ig_form_bottom .ig_form_container.layout_bottom .ig_full .ig_form_els,
148
+ .ig_form_inline .ig_form_container.layout_inline .ig_full .ig_form_els{
149
+ width: 99%;
150
+ }
151
+
152
+ .ig_form_bottom .ig_form_container.layout_bottom .ig_half .ig_form_els,
153
+ .ig_form_inline .ig_form_container.layout_inline .ig_half .ig_form_els{
154
+ width: 49%;
155
+ }
156
+
157
+ .ig_form_bottom .ig_form_container.layout_bottom .ig_third .ig_form_els,
158
+ .ig_form_inline .ig_form_container.layout_inline .ig_third .ig_form_els{
159
+ width: 32%;
160
+ }
161
+
162
+ .ig_form_bottom .ig_form_container.layout_bottom .ig_quater .ig_form_els,
163
+ .ig_form_inline .ig_form_container.layout_inline .ig_quater .ig_form_els{
164
+ /*width: 22%;*/
165
+ width: 24%;
166
+ }
167
+
168
+ .ig_form_container .ig_form_els input{
169
+ height: 2.25em;
170
+ line-height: 2.2em;
171
+ }
172
+ .ig_form_container .ig_form_els input,
173
+ .ig_form_container .ig_form_els button,
174
+ .ig_form_container .ig_form_els label,
175
+ .ig_form_container .ig_form_els textarea,
176
+ .ig_form_container .ig_form_els select{
177
+ width: 99%;
178
+ font-size: 1em;
179
+ text-align: left;
180
+ display: block;
181
+ margin: 0 auto; /* Safari/Chrome, other WebKit */ /* Firefox, other Gecko */
182
+ box-sizing: border-box; /* Opera/IE 8+ */
183
+ }
184
+ .ig_form_container .ig_form_els .ig_button {
185
+ text-align: center;
186
+ }
187
+ .ig_form_container .ig_form_els textarea,
188
+ .ig_form_container .ig_form_els select{
189
+ padding-left: .5em;
190
+ }
191
+ .ig_form_container .ig_form_els textarea{
192
+ padding-top: .5em;
193
+ }
194
+
195
+ /*TODO : make it work for every message type.. every layout*/
196
+ .ig_form_container .ig_form_els.ig_form_el_radio {
197
+ height: 2.25em !important;
198
+ line-height: 2.2em;
199
+ }
200
+ .ig_form_container .ig_form_els.ig_form_el_radio input{
201
+ width: auto ! important;
202
+ display: inline;
203
+ margin: 0 .3em;
204
+ height: 1em !important;
205
+ }
206
+
207
+ .ig_form_bottom .ig_form_container.layout_bottom .ig_quater .ig_form_els.ig_form_el_radio,
208
+ .ig_form_inline .ig_form_container.layout_inline .ig_quater .ig_form_els.ig_form_el_radio{
209
+ display: inline;
210
+ }
211
+ .ig_form_bottom .ig_form_container.layout_bottom .ig_quater .ig_form_els.ig_form_el_radio label,
212
+ .ig_form_inline .ig_form_container.layout_inline .ig_quater .ig_form_els.ig_form_el_radio label{
213
+ width: auto;
214
+ display: inline;
215
+ }
216
+
217
+ .ig_form_left .ig_form_container.layout_left .ig_button_label,
218
+ .ig_form_right .ig_form_container.layout_right .ig_button_label{
219
+ display: none;
220
+ }
221
+
222
+ .ig_form_inline .ig_form_container.layout_inline .ig_button_label,
223
+ .ig_form_bottom .ig_form_container.layout_bottom .ig_button_label{
224
+ display: block;
225
+ visibility: hidden;
226
+ opacity: 0;
227
+ }
228
+
229
+ /* Form Button CSS */
230
+ .ig_form_inline .ig_form_container.layout_inline .ig_button,
231
+ .ig_form_inline .ig_form_container.layout_inline input[type="submit"],
232
+ .ig_form_inline .ig_form_container.layout_inline input[type="button"],
233
+ .ig_form_bottom .ig_form_container.layout_bottom .ig_button,
234
+ .ig_form_bottom .ig_form_container.layout_bottom input[type="submit"],
235
+ .ig_form_bottom .ig_form_container.layout_bottom input[type="button"],
236
+ .ig_form_left .ig_form_container.layout_left .ig_button,
237
+ .ig_form_left .ig_form_container.layout_left input[type="submit"],
238
+ .ig_form_left .ig_form_container.layout_left input[type="button"],
239
+ .ig_form_right .ig_form_container.layout_right .ig_button,
240
+ .ig_form_right .ig_form_container.layout_right input[type="submit"],
241
+ .ig_form_right .ig_form_container.layout_right input[type="button"] {
242
+ width: 99% ;
243
+ font-size: 1em;
244
+ float: none;
245
+ margin: 0 auto!important;
246
+ text-align: center;
247
+ display: block;
248
+ -ms-transform: inherit;
249
+ -webkit-transform: inherit;
250
+ transform: inherit;
251
+ opacity: 1;
252
+ }
253
+
254
+ /* End */
255
+
256
+
257
+ /****** Form Styles: Start ******/
258
+ .ig_form_container:before{
259
+ content: '';
260
+ padding: 0;
261
+ margin: 0;
262
+ position: absolute; /* Safari/Chrome, other WebKit */ /* Firefox, other Gecko */
263
+ box-sizing: content-box; /* Opera/IE 8+ */
264
+ }
265
+
266
+ /****** Form Style: Style 0 ******/
267
+
268
+ .ig_form_style_0 .ig_form_container:before{
269
+ display: none;
270
+ }
271
+
272
+ .ig_form_style_0 .ig_form_container .ig_form_els input{
273
+ height: 2.25em;
274
+ line-height: 2.2em;
275
+ padding: inherit;
276
+ padding-left: .5em;
277
+ }
278
+
279
+ .ig_form_style_0 .ig_form_container .ig_form_els .ig_button:hover,
280
+ .ig_form_style_0 .ig_form_container .ig_form_els .ig_button:focus,
281
+ .ig_form_style_0 .ig_form_container .ig_form_els .ig_button{
282
+ height: 2.25em;
283
+ line-height: 2.2em;
284
+ /*border: inherit; */
285
+ padding: inherit;
286
+ }
287
+
288
+ /****** Form Style: Style 1 ******/
289
+
290
+ .ig_form_style_1 .ig_form_container:before{
291
+ border-width: 0;
292
+ border-style: solid;
293
+ border-color: #000 !important;
294
+ opacity: .3;
295
+ top: 0;
296
+ }
297
+
298
+ .ig_form_left.ig_form_style_1 .ig_form_container:before{
299
+ right: 0;
300
+ height: inherit;
301
+ border-left-width: .22em;
302
+ }
303
+ .ig_form_right.ig_form_style_1 .ig_form_container:before{
304
+ left: 0;
305
+ height: inherit;
306
+ border-left-width: .22em;
307
+ }
308
+ .ig_form_bottom.ig_form_style_1 .ig_form_container:before{
309
+ left: 0;
310
+ width: 100%;
311
+ border-top-width: .22em;
312
+ }
313
+ .ig_form_inline.ig_form_style_1 .ig_form_container:before{
314
+ display: none;
315
+ }
316
+
317
+ .ig_form_style_5 .ig_form_container .ig_form_els input:not(.ig_button),
318
+ .ig_form_style_6 .ig_form_container .ig_form_els input:not(.ig_button),
319
+ .ig_form_style_1 .ig_form_container .ig_form_els input:not(.ig_button){
320
+ border: 1px solid #ccc;
321
+ }
322
+ .ig_form_style_5 .ig_form_container .ig_form_els input,
323
+ .ig_form_style_6 .ig_form_container .ig_form_els input,
324
+ .ig_form_style_1 .ig_form_container .ig_form_els input{
325
+ height: 2.25em;
326
+ line-height: 2.2em;
327
+ border-radius: .2em;
328
+ box-shadow: none;
329
+ padding: inherit;
330
+ padding-left: .5em;
331
+ }
332
+ .ig_form_style_5 .ig_form_container .ig_form_els input:focus:not(.ig_button),
333
+ .ig_form_style_5 .ig_form_container .ig_form_els input:hover:not(.ig_button),
334
+ .ig_form_style_6 .ig_form_container .ig_form_els input:focus:not(.ig_button),
335
+ .ig_form_style_6 .ig_form_container .ig_form_els input:hover:not(.ig_button),
336
+ .ig_form_style_1 .ig_form_container .ig_form_els input:focus:not(.ig_button),
337
+ .ig_form_style_1 .ig_form_container .ig_form_els input:hover:not(.ig_button){
338
+ border-color: #999;
339
+ }
340
+ .ig_form_style_5 .ig_form_container .ig_form_els input:focus,
341
+ .ig_form_style_5 .ig_form_container .ig_form_els input:hover,
342
+ .ig_form_style_6 .ig_form_container .ig_form_els input:focus,
343
+ .ig_form_style_6 .ig_form_container .ig_form_els input:hover,
344
+ .ig_form_style_1 .ig_form_container .ig_form_els input:focus,
345
+ .ig_form_style_1 .ig_form_container .ig_form_els input:hover{
346
+ height: 2.25em;
347
+ line-height: 2.2em;
348
+ padding: inherit;
349
+ padding-left: .5em;
350
+ }
351
+ .ig_form_style_5 .ig_form_container .ig_form_els .ig_button:hover,
352
+ .ig_form_style_5 .ig_form_container .ig_form_els .ig_button:focus,
353
+ .ig_form_style_5 .ig_form_container .ig_form_els .ig_button,
354
+ .ig_form_style_6 .ig_form_container .ig_form_els .ig_button:hover,
355
+ .ig_form_style_6 .ig_form_container .ig_form_els .ig_button:focus,
356
+ .ig_form_style_6 .ig_form_container .ig_form_els .ig_button,
357
+ .ig_form_style_1 .ig_form_container .ig_form_els .ig_button:hover,
358
+ .ig_form_style_1 .ig_form_container .ig_form_els .ig_button:focus,
359
+ .ig_form_style_1 .ig_form_container .ig_form_els .ig_button{
360
+ height: 2.25em;
361
+ line-height: 2.2em;
362
+ /*border: inherit; */
363
+ padding: inherit;
364
+ }
365
+
366
+ /****** Form Style: Style 2 ******/
367
+
368
+ .ig_form_bottom.ig_form_style_2 .ig_form_container.layout_bottom .ig_form_els,
369
+ .ig_form_inline.ig_form_style_2 .ig_form_container.layout_inline .ig_form_els{
370
+ margin-right: 0;
371
+ margin-left: 0;
372
+ }
373
+ .ig_form_bottom.ig_form_style_2 .ig_form_container.layout_bottom .ig_form_els .ig_button,
374
+ .ig_form_inline.ig_form_style_2 .ig_form_container.layout_inline .ig_form_els .ig_button,
375
+ .ig_form_left.ig_form_style_2 .ig_form_container.layout_left .ig_form_els .ig_button,
376
+ .ig_form_right.ig_form_style_2 .ig_form_container.layout_right .ig_form_els .ig_button{
377
+ padding: inherit;
378
+ }
379
+ .ig_form_left.ig_form_style_2 .ig_form_container.layout_left .ig_form_els input,
380
+ .ig_form_right.ig_form_style_2 .ig_form_container.layout_right .ig_form_els input{
381
+ padding-left: 1em;
382
+ }
383
+
384
+ .ig_form_left.ig_form_style_2 .ig_form_container.layout_left .ig_form_els .ig_button,
385
+ .ig_form_left.ig_form_style_2 .ig_form_container.layout_left .ig_form_els input,
386
+ .ig_form_right.ig_form_style_2 .ig_form_container.layout_right .ig_form_els .ig_button,
387
+ .ig_form_right.ig_form_style_2 .ig_form_container.layout_right .ig_form_els input{
388
+ height: 2.25em;
389
+ line-height: 2.2em;
390
+ border-radius: 2em;
391
+ }
392
+ .ig_form_left.ig_form_style_2 .ig_form_container.layout_left .ig_form_els label,
393
+ .ig_form_right.ig_form_style_2 .ig_form_container.layout_right .ig_form_els label{
394
+ padding-left: 1em;
395
+ }
396
+
397
+ .ig_form_bottom.ig_form_style_2 .ig_form_container.layout_bottom .ig_form_els .ig_button,
398
+ .ig_form_inline.ig_form_style_2 .ig_form_container.layout_inline .ig_form_els .ig_button,
399
+ .ig_form_bottom.ig_form_style_2 .ig_form_container.layout_bottom .ig_form_els input,
400
+ .ig_form_inline.ig_form_style_2 .ig_form_container.layout_inline .ig_form_els input{
401
+ height: 2.25em;
402
+ line-height: 2.2em;
403
+ width: 100%;
404
+ border-width: 2px;
405
+ border-right-width: 0;
406
+ }
407
+
408
+ .ig_form_bottom.ig_form_style_2 .ig_form_container.layout_bottom .ig_form_els.ig_form_els_first input,
409
+ .ig_form_inline.ig_form_style_2 .ig_form_container.layout_inline .ig_form_els.ig_form_els_first input{
410
+ border-radius: 2em 0 0 2em;
411
+ padding-left: 1em;
412
+ }
413
+
414
+ .ig_form_bottom.ig_form_style_2 .ig_form_container.layout_bottom .ig_form_els.ig_form_els_first label,
415
+ .ig_form_inline.ig_form_style_2 .ig_form_container.layout_inline .ig_form_els.ig_form_els_first label{
416
+ padding-left: 1em;
417
+ }
418
+
419
+ .ig_form_bottom.ig_form_style_2 .ig_form_container.layout_bottom .ig_form_els.ig_form_els_last input,
420
+ .ig_form_inline.ig_form_style_2 .ig_form_container.layout_inline .ig_form_els.ig_form_els_last input{
421
+ border-radius: 0 2em 2em 0;
422
+ }
423
+
424
+ /****** Form Style: Style 3 ******/
425
+
426
+ .ig_form_style_3 .ig_form_container .ig_form_els input:not(.ig_button){
427
+ border: 1px solid rgba(255,255,255,.3);
428
+ }
429
+ .ig_form_style_3 .ig_form_container .ig_form_els input{
430
+ height: 2.25em;
431
+ line-height: 2.2em;
432
+ box-shadow: none;
433
+ padding: inherit;
434
+ padding-left: .5em;
435
+ background-color: rgba(0, 0, 0, .3);
436
+ /*color: inherit;*/
437
+ }
438
+ .ig_form_style_3 .ig_form_container .ig_form_els input:focus:not(.ig_button),
439
+ .ig_form_style_3 .ig_form_container .ig_form_els input:hover:not(.ig_button){
440
+ border-color: rgba(255,255,255,.6);
441
+ }
442
+ .ig_form_style_3 .ig_form_container .ig_form_els input:focus,
443
+ .ig_form_style_3 .ig_form_container .ig_form_els input:hover{
444
+ height: 2.25em;
445
+ line-height: 2.2em;
446
+ padding: inherit;
447
+ padding-left: .5em;
448
+ }
449
+ .ig_form_style_3 .ig_form_container .ig_form_els .ig_button:hover,
450
+ .ig_form_style_3 .ig_form_container .ig_form_els .ig_button:focus,
451
+ .ig_form_style_3 .ig_form_container .ig_form_els .ig_button{
452
+ height: 2.25em;
453
+ line-height: 2.2em;
454
+ /*border: inherit; */
455
+ padding: inherit;
456
+ }
457
+ .ig_form_style_3 .ig_form_container .ig_form_els ::-webkit-input-placeholder { /* WebKit browsers */
458
+ color: rgba(255,255,255,.5);
459
+ }
460
+ .ig_form_style_3 .ig_form_container .ig_form_els :-moz-placeholder { /* Mozilla Firefox 4 to 18 */
461
+ color: rgba(255,255,255,.5);
462
+ opacity: 1;
463
+ }
464
+ .ig_form_style_3 .ig_form_container .ig_form_els ::-moz-placeholder { /* Mozilla Firefox 19+ */
465
+ color: rgba(255,255,255,.5);
466
+ opacity: 1;
467
+ }
468
+ .ig_form_style_3 .ig_form_container .ig_form_els :-ms-input-placeholder { /* Internet Explorer 10+ */
469
+ color: rgba(255,255,255,.5);
470
+ }
471
+
472
+ /****** Form Style: Style 4 ******/
473
+
474
+ .ig_form_bottom.ig_form_style_4 .ig_content{
475
+ margin-bottom: 1.3em;
476
+ }
477
+ .ig_form_style_4 .ig_form_container:before{
478
+ /*opacity: .4;*/
479
+ border-style: solid;
480
+ /*top: -1.2em;
481
+ left: -1.3em;
482
+ border-width: 1.3em;*/
483
+ top: -1em;
484
+ left: -1em;
485
+ width: 100%;
486
+ height: 100%;
487
+ border-width: 1em;
488
+ z-index: -1;
489
+ box-shadow: 0 0px 15px rgba(0,0,0,0.7);
490
+ }
491
+
492
+ .ig_form_bottom.ig_form_style_4 .ig_form_container:before{
493
+ /*top: 0;*/
494
+ /*border-bottom-width: 0;*/
495
+ }
496
+ .ig_form_right.ig_form_style_4 .ig_form_container:before{
497
+ left: inherit;
498
+ right: -1em;
499
+ }
500
+ .ig_form_inline.ig_form_style_4 .ig_form_container:before{
501
+ display: none;
502
+ }
503
+
504
+ .ig_form_style_4 .ig_form_container .ig_form_els input{
505
+ height: 2.25em;
506
+ line-height: 2.2em;
507
+ padding: inherit;
508
+ padding-left: .5em;
509
+ }
510
+
511
+ .ig_form_style_4 .ig_form_container .ig_form_els .ig_button:hover,
512
+ .ig_form_style_4 .ig_form_container .ig_form_els .ig_button:focus,
513
+ .ig_form_style_4 .ig_form_container .ig_form_els .ig_button{
514
+ height: 2.25em;
515
+ line-height: 2.2em;
516
+ /*border: inherit; */
517
+ padding: inherit;
518
+ }
519
+
520
+
521
+ /****** Form Style: Style 5 ******/
522
+
523
+ .ig_form_bottom.ig_form_style_5 .ig_form_container.layout_bottom .ig_form_els_first,
524
+ .ig_form_inline.ig_form_style_5 .ig_form_container.layout_inline .ig_form_els_first{
525
+ width: 68%;
526
+ }
527
+
528
+ .ig_form_bottom.ig_form_style_5 .ig_form_container.layout_bottom .ig_form_els_last,
529
+ .ig_form_inline.ig_form_style_5 .ig_form_container.layout_inline .ig_form_els_last{
530
+ width: 30%;
531
+ }
532
+
533
+ /****** Form Style: Style 6 ******/
534
+
535
+ .ig_form_style_6 .ig_form_container.layout_bottom .ig_full .ig_form_els,
536
+ .ig_form_style_6 .ig_form_container.layout_inline .ig_full .ig_form_els,
537
+ .ig_form_style_6 .ig_form_container.layout_bottom .ig_half .ig_form_els,
538
+ .ig_form_style_6 .ig_form_container.layout_inline .ig_half .ig_form_els,
539
+ .ig_form_style_6 .ig_form_container.layout_bottom .ig_third .ig_form_els,
540
+ .ig_form_style_6 .ig_form_container.layout_inline .ig_third .ig_form_els,
541
+ .ig_form_style_6 .ig_form_container.layout_bottom .ig_quater .ig_form_els,
542
+ .ig_form_style_6 .ig_form_container.layout_inline .ig_quater .ig_form_els{
543
+ width: 99%;
544
+ margin: .5em auto 0 auto;
545
+ }
546
+
547
+ /****** Form Styles: End ******/
548
+
549
+
550
+ /****************** Embed Form: End *******************/
551
+
552
+
553
+ /***************Animations: Start******************/
554
+ /*** Appear: Start ***/
555
+
556
+ .ig_anim_appear_in {
557
+ -webkit-animation: IgFadeIn 0.9s;
558
+ animation: IgFadeIn 0.9s;
559
+ visibility: visible;
560
+ }
561
+ @-webkit-keyframes IgFadeIn {
562
+ 0% {opacity: 0; }
563
+ 50% {opacity: 0.5; }
564
+ 100% {opacity: 1; }
565
+ }
566
+
567
+ @keyframes IgFadeIn {
568
+ 0% {opacity: 0; }
569
+ 50% {opacity: 0.5; }
570
+ 100% {opacity: 1; }
571
+ }
572
+ .ig_anim_appear_out {
573
+ -webkit-animation: IgFadeOut 0.9s;
574
+ animation: IgFadeOut 0.9s;
575
+ }
576
+
577
+ @-webkit-keyframes IgFadeOut {
578
+ 0% {opacity: 1; }
579
+ 99.5% {opacity: 0.5; }
580
+ 100% {opacity: 1; }
581
+ }
582
+
583
+ @keyframes IgFadeOut {
584
+ 0% {opacity: 1; }
585
+ 99.5% {opacity: 0.5; }
586
+ 100% {opacity: 1; }
587
+ }
588
+
589
+
590
+
591
+ /*** Appear: End***/
592
+
593
+ /*** Slide: Start ***/
594
+ /****-Slide Left: Start-***/
595
+ .ig_left.ig_anim_slide_in{
596
+ animation-name: IgSlideInLeft;
597
+ -moz-animation-name: IgSlideInLeft;
598
+ -webkit-animation-name: IgSlideInLeft;
599
+
600
+ animation-duration: 0.5s;
601
+ -moz-animation-duration: 0.5s;
602
+ -webkit-animation-duration: 0.5s;
603
+
604
+ animation-timing-function: ease;
605
+ -moz-animation-timing-function: ease;
606
+ -webkit-animation-timing-function: ease;
607
+ }
608
+ @-webkit-keyframes IgSlideInLeft {
609
+ 0% {-webkit-transform: translate3d(-100%, 0, 0);}
610
+ 100% {-webkit-transform: none;}
611
+ }
612
+
613
+ @keyframes IgSlideInLeft {
614
+ 0% {-webkit-transform: translate3d(-100%, 0, 0);transform: translate3d(-100%, 0, 0);}
615
+ 100% {-webkit-transform: none;transform: none;}
616
+ }
617
+ .ig_left.ig_anim_slide_out{
618
+ animation-name: IgFadeOutLeft;
619
+ -moz-animation-name: IgFadeOutLeft;
620
+ -webkit-animation-name: IgFadeOutLeft;
621
+
622
+ animation-duration: 0.9s;
623
+ -moz-animation-duration: 0.9s;
624
+ -webkit-animation-duration: 0.9s;
625
+
626
+ animation-timing-function: ease;
627
+ -moz-animation-timing-function: ease;
628
+ -webkit-animation-timing-function: ease;
629
+
630
+ -webkit-animation-fill-mode: forwards;
631
+ animation-fill-mode: forwards;
632
+ }
633
+
634
+ @-webkit-keyframes IgFadeOutLeft {
635
+ 0% {opacity: 1; -webkit-transform: translate3d( 0%, 0, 0);}
636
+ 99.5% {opacity: 0; -webkit-transform: translate3d(-100%, 0, 0);}
637
+ 100% {opacity: 1; -webkit-transform: translate3d(-100%, 0, 0);}
638
+ }
639
+
640
+ @keyframes IgFadeOutLeft {
641
+ 0% {opacity: 1; -webkit-transform: translate3d(0%, 0, 0); transform: translate3d(0%, 0, 0); }
642
+ 99.5% {opacity: 0; -webkit-transform: translate3d(-100%, 0, 0); transform: translate3d(-100%, 0, 0); }
643
+ 100% {opacity: 1; -webkit-transform: translate3d(-100%, 0, 0); transform: translate3d(-100%, 0, 0); }
644
+ }
645
+
646
+ /****-Slide Left: End-***/
647
+
648
+ /****-Slide Right: Start-***/
649
+ .ig_right.ig_anim_slide_in{
650
+ animation-name: IgSlideInRight;
651
+ -moz-animation-name: IgSlideInRight;
652
+ -webkit-animation-name: IgSlideInRight;
653
+
654
+ animation-duration: 0.5s;
655
+ -moz-animation-duration: 0.5s;
656
+ -webkit-animation-duration: 0.5s;
657
+
658
+ animation-timing-function: ease;
659
+ -moz-animation-timing-function: ease;
660
+ -webkit-animation-timing-function: ease;
661
+ }
662
+
663
+ @-webkit-keyframes IgSlideInRight {
664
+ 0% {-webkit-transform: translate3d(100%, 0, 0);}
665
+ 100% {-webkit-transform: none; }
666
+ }
667
+
668
+ @keyframes IgSlideInRight {
669
+ 0% { -webkit-transform: translate3d(100%, 0, 0); transform: translate3d(100%, 0, 0); }
670
+ 100% { -webkit-transform: none; transform: none; }
671
+ }
672
+
673
+ .ig_right.ig_anim_slide_out{
674
+ animation-name: IgFadeOutRight;
675
+ -moz-animation-name: IgFadeOutRight;
676
+ -webkit-animation-name: IgFadeOutRight;
677
+
678
+ animation-duration: 0.9s;
679
+ -moz-animation-duration: 0.9s;
680
+ -webkit-animation-duration: 0.9s;
681
+
682
+ animation-timing-function: ease;
683
+ -moz-animation-timing-function: ease;
684
+ -webkit-animation-timing-function: ease;
685
+
686
+ -webkit-animation-fill-mode: forwards;
687
+ animation-fill-mode: forwards;
688
+ }
689
+
690
+ @-webkit-keyframes IgFadeOutRight {
691
+ 0% {opacity: 1; -webkit-transform: translate3d(0%, 0, 0);}
692
+ 99.5% {opacity: 0; -webkit-transform: translate3d(100%, 0, 0);}
693
+ 100% {opacity: 1; -webkit-transform: translate3d(100%, 0, 0);}
694
+ }
695
+
696
+ @keyframes IgFadeOutRight {
697
+ 0% {opacity: 1; -webkit-transform: translate3d(0%, 0, 0); transform: translate3d(0%, 0, 0);}
698
+ 99.5% {opacity: 0; -webkit-transform: translate3d(100%, 0, 0); transform: translate3d(100%, 0, 0); }
699
+ 100% {opacity: 1; -webkit-transform: translate3d(100%, 0, 0); transform: translate3d(100%, 0, 0); }
700
+ }
701
+ /****-Slide Right: End-***/
702
+
703
+ /****-Slide Up : start***/
704
+ .ig_bottom.ig_anim_slide_in,
705
+ .ig_bottom .ig_anim_slide_in{
706
+ animation-name: IgSlideInUp;
707
+ -moz-animation-name: IgSlideInUp;
708
+ -webkit-animation-name: IgSlideInUp;
709
+
710
+ animation-duration: 0.5s;
711
+ -moz-animation-duration: 0.5s;
712
+ -webkit-animation-duration: 0.5s;
713
+
714
+ animation-timing-function: ease;
715
+ -moz-animation-timing-function: ease;
716
+ -webkit-animation-timing-function: ease;
717
+ }
718
+ @-webkit-keyframes IgSlideInUp {
719
+ 0% {-webkit-transform: translate3d(0, 100%, 0);}
720
+ 100% {-webkit-transform: none;}
721
+ }
722
+
723
+ @keyframes IgSlideInUp {
724
+ 0% {-webkit-transform: translate3d(0, 100%, 0);transform: translate3d(0, 100%, 0); }
725
+ 100% {-webkit-transform: none;transform: none; }
726
+ }
727
+
728
+ .ig_bottom.ig_anim_slide_out,
729
+ .ig_bottom .ig_anim_slide_out{
730
+ animation-name: IgFadeOutDown;
731
+ -moz-animation-name: IgFadeOutDown;
732
+ -webkit-animation-name: IgFadeOutDown;
733
+
734
+ animation-duration: 0.9s;
735
+ -moz-animation-duration: 0.9s;
736
+ -webkit-animation-duration: 0.9s;
737
+
738
+ animation-timing-function: ease;
739
+ -moz-animation-timing-function: ease;
740
+ -webkit-animation-timing-function: ease;
741
+
742
+ -webkit-animation-fill-mode: forwards;
743
+ animation-fill-mode: forwards;
744
+ }
745
+
746
+ @-webkit-keyframes IgFadeOutDown {
747
+ 0% {opacity: 1; -webkit-transform: translate3d(0, 0%, 0);}
748
+ 99.5% {opacity: 0; -webkit-transform: translate3d(0, 100%, 0);}
749
+ 100% {opacity: 1; -webkit-transform: translate3d(0, 100%, 0);}
750
+ }
751
+
752
+ @keyframes IgFadeOutDown {
753
+ 0% {opacity: 1; -webkit-transform: translate3d(0, 0%, 0); transform: translate3d(0, 0%, 0);}
754
+ 99.5% {opacity: 0; -webkit-transform: translate3d(0, 100%, 0); transform: translate3d(0, 100%, 0); }
755
+ 100% {opacity: 1; -webkit-transform: translate3d(0, 100%, 0); transform: translate3d(0, 100%, 0);}
756
+ }
757
+
758
+ /****-Slide Up: End-***/
759
+
760
+ /****-Slide Down: Start-***/
761
+ .ig_anim_slide_in,
762
+ .ig_top.ig_anim_slide_in,
763
+ .ig_top .ig_anim_slide_in{
764
+ animation-name: IgSlideInDown;
765
+ -moz-animation-name: IgSlideInDown;
766
+ -webkit-animation-name: IgSlideInDown;
767
+
768
+ animation-duration: 0.5s;
769
+ -moz-animation-duration: 0.5s;
770
+ -webkit-animation-duration: 0.5s;
771
+
772
+ animation-timing-function: ease;
773
+ -moz-animation-timing-function: ease;
774
+ -webkit-animation-timing-function: ease;
775
+ }
776
+ @-webkit-keyframes IgSlideInDown {
777
+ 0% {-webkit-transform: translate3d(0, -100%, 0);}
778
+ 100% {-webkit-transform: none; }
779
+ }
780
+
781
+ @keyframes IgSlideInDown {
782
+ 0% { -webkit-transform: translate3d(0, -100%, 0); transform: translate3d(0, -100%, 0); }
783
+ 100% {-webkit-transform: none;transform: none; }
784
+ }
785
+
786
+ .ig_anim_slide_out,
787
+ .ig_top.ig_anim_slide_out,
788
+ .ig_top .ig_anim_slide_out{
789
+ animation-name: IgFadeOutUp;
790
+ -moz-animation-name: IgFadeOutUp;
791
+ -webkit-animation-name: IgFadeOutUp;
792
+
793
+ animation-duration: 0.9s;
794
+ -moz-animation-duration: 0.9s;
795
+ -webkit-animation-duration: 0.9s;
796
+
797
+ animation-timing-function: ease;
798
+ -moz-animation-timing-function: ease;
799
+ -webkit-animation-timing-function: ease;
800
+
801
+ -webkit-animation-fill-mode: forwards;
802
+ animation-fill-mode: forwards;
803
+ }
804
+ @-webkit-keyframes IgFadeOutUp {
805
+ 0% {opacity: 1; -webkit-transform: translate3d(0, 0%, 0);}
806
+ 99.5% {opacity: 0; -webkit-transform: translate3d(0, -100%, 0);}
807
+ 100% {opacity: 1; -webkit-transform: translate3d(0, -100%, 0);}
808
+ }
809
+
810
+ @keyframes IgFadeOutUp {
811
+ 0% {opacity: 1; -webkit-transform: translate3d(0, 0%, 0); transform: translate3d(0, 0%, 0);}
812
+ 99.5% {opacity: 0; -webkit-transform: translate3d(0, -100%, 0); transform: translate3d(0, -100%, 0); }
813
+ 100% {opacity: 1; -webkit-transform: translate3d(0, -100%, 0); transform: translate3d(0, -100%, 0);}
814
+ }
815
+
816
+ /****-Slide Down: End***/
817
+
818
+ /*** Slide: End***/
819
+ /****************Animation: End******************/
820
+
assets/css/jquery-ui.min.css ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
1
+ /*! jQuery UI - v1.11.0 - 2014-07-18
2
+ * http://jqueryui.com
3
+ * Includes: core.css, draggable.css, resizable.css, selectable.css, sortable.css, accordion.css, autocomplete.css, button.css, datepicker.css, dialog.css, menu.css, progressbar.css, selectmenu.css, slider.css, spinner.css, tabs.css, tooltip.css, theme.css
4
+ * To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Verdana%2CArial%2Csans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=cccccc&bgTextureHeader=highlight_soft&bgImgOpacityHeader=75&borderColorHeader=aaaaaa&fcHeader=222222&iconColorHeader=222222&bgColorContent=ffffff&bgTextureContent=flat&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=222222&iconColorContent=222222&bgColorDefault=e6e6e6&bgTextureDefault=glass&bgImgOpacityDefault=75&borderColorDefault=d3d3d3&fcDefault=555555&iconColorDefault=888888&bgColorHover=dadada&bgTextureHover=glass&bgImgOpacityHover=75&borderColorHover=999999&fcHover=212121&iconColorHover=454545&bgColorActive=ffffff&bgTextureActive=glass&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=212121&iconColorActive=454545&bgColorHighlight=fbf9ee&bgTextureHighlight=glass&bgImgOpacityHighlight=55&borderColorHighlight=fcefa1&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=glass&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px
5
+ * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */
6
+
7
+ .ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-clearfix{min-height:0}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-draggable-handle{-ms-touch-action:none;touch-action:none}.ui-resizable{position:relative}.ui-resizable-handle{position:absolute;font-size:0.1px;display:block;-ms-touch-action:none;touch-action:none}.ui-resizable-disabled .ui-resizable-handle,.ui-resizable-autohide .ui-resizable-handle{display:none}.ui-resizable-n{cursor:n-resize;height:7px;width:100%;top:-5px;left:0}.ui-resizable-s{cursor:s-resize;height:7px;width:100%;bottom:-5px;left:0}.ui-resizable-e{cursor:e-resize;width:7px;right:-5px;top:0;height:100%}.ui-resizable-w{cursor:w-resize;width:7px;left:-5px;top:0;height:100%}.ui-resizable-se{cursor:se-resize;width:12px;height:12px;right:1px;bottom:1px}.ui-resizable-sw{cursor:sw-resize;width:9px;height:9px;left:-5px;bottom:-5px}.ui-resizable-nw{cursor:nw-resize;width:9px;height:9px;left:-5px;top:-5px}.ui-resizable-ne{cursor:ne-resize;width:9px;height:9px;right:-5px;top:-5px}.ui-selectable{-ms-touch-action:none;touch-action:none}.ui-selectable-helper{position:absolute;z-index:100;border:1px dotted black}.ui-sortable-handle{-ms-touch-action:none;touch-action:none}.ui-accordion .ui-accordion-header{display:block;cursor:pointer;position:relative;margin:2px 0 0 0;padding:.5em .5em .5em .7em;min-height:0;font-size:100%}.ui-accordion .ui-accordion-icons{padding-left:2.2em}.ui-accordion .ui-accordion-icons .ui-accordion-icons{padding-left:2.2em}.ui-accordion .ui-accordion-header .ui-accordion-header-icon{position:absolute;left:.5em;top:50%;margin-top:-8px}.ui-accordion .ui-accordion-content{padding:1em 2.2em;border-top:0;overflow:auto}.ui-autocomplete{position:absolute;top:0;left:0;cursor:default}.ui-button{display:inline-block;position:relative;padding:0;line-height:normal;margin-right:.1em;cursor:pointer;vertical-align:middle;text-align:center;overflow:visible}.ui-button,.ui-button:link,.ui-button:visited,.ui-button:hover,.ui-button:active{text-decoration:none}.ui-button-icon-only{width:2.2em}button.ui-button-icon-only{width:2.4em}.ui-button-icons-only{width:3.4em}button.ui-button-icons-only{width:3.7em}.ui-button .ui-button-text{display:block;line-height:normal}.ui-button-text-only .ui-button-text{padding:.4em 1em}.ui-button-icon-only .ui-button-text,.ui-button-icons-only .ui-button-text{padding:.4em;text-indent:-9999999px}.ui-button-text-icon-primary .ui-button-text,.ui-button-text-icons .ui-button-text{padding:.4em 1em .4em 2.1em}.ui-button-text-icon-secondary .ui-button-text,.ui-button-text-icons .ui-button-text{padding:.4em 2.1em .4em 1em}.ui-button-text-icons .ui-button-text{padding-left:2.1em;padding-right:2.1em}input.ui-button{padding:.4em 1em}.ui-button-icon-only .ui-icon,.ui-button-text-icon-primary .ui-icon,.ui-button-text-icon-secondary .ui-icon,.ui-button-text-icons .ui-icon,.ui-button-icons-only .ui-icon{position:absolute;top:50%;margin-top:-8px}.ui-button-icon-only .ui-icon{left:50%;margin-left:-8px}.ui-button-text-icon-primary .ui-button-icon-primary,.ui-button-text-icons .ui-button-icon-primary,.ui-button-icons-only .ui-button-icon-primary{left:.5em}.ui-button-text-icon-secondary .ui-button-icon-secondary,.ui-button-text-icons .ui-button-icon-secondary,.ui-button-icons-only .ui-button-icon-secondary{right:.5em}.ui-buttonset{margin-right:7px}.ui-buttonset .ui-button{margin-left:0;margin-right:-.3em}input.ui-button::-moz-focus-inner,button.ui-button::-moz-focus-inner{border:0;padding:0}.ui-datepicker{width:17em;padding:.2em .2em 0;display:none}.ui-datepicker .ui-datepicker-header{position:relative;padding:.2em 0}.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{position:absolute;top:2px;width:1.8em;height:1.8em}.ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-datepicker-next-hover{top:1px}.ui-datepicker .ui-datepicker-prev{left:2px}.ui-datepicker .ui-datepicker-next{right:2px}.ui-datepicker .ui-datepicker-prev-hover{left:1px}.ui-datepicker .ui-datepicker-next-hover{right:1px}.ui-datepicker .ui-datepicker-prev span,.ui-datepicker .ui-datepicker-next span{display:block;position:absolute;left:50%;margin-left:-8px;top:50%;margin-top:-8px}.ui-datepicker .ui-datepicker-title{margin:0 2.3em;line-height:1.8em;text-align:center}.ui-datepicker .ui-datepicker-title select{font-size:1em;margin:1px 0}.ui-datepicker select.ui-datepicker-month,.ui-datepicker select.ui-datepicker-year{width:49%}.ui-datepicker table{width:100%;font-size:.9em;border-collapse:collapse;margin:0 0 .4em}.ui-datepicker th{padding:.7em .3em;text-align:center;font-weight:bold;border:0}.ui-datepicker td{border:0;padding:1px}.ui-datepicker td span,.ui-datepicker td a{display:block;padding:.2em;text-align:right;text-decoration:none}.ui-datepicker .ui-datepicker-buttonpane{background-image:none;margin:.7em 0 0 0;padding:0 .2em;border-left:0;border-right:0;border-bottom:0}.ui-datepicker .ui-datepicker-buttonpane button{float:right;margin:.5em .2em .4em;cursor:pointer;padding:.2em .6em .3em .6em;width:auto;overflow:visible}.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current{float:left}.ui-datepicker.ui-datepicker-multi{width:auto}.ui-datepicker-multi .ui-datepicker-group{float:left}.ui-datepicker-multi .ui-datepicker-group table{width:95%;margin:0 auto .4em}.ui-datepicker-multi-2 .ui-datepicker-group{width:50%}.ui-datepicker-multi-3 .ui-datepicker-group{width:33.3%}.ui-datepicker-multi-4 .ui-datepicker-group{width:25%}.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header{border-left-width:0}.ui-datepicker-multi .ui-datepicker-buttonpane{clear:left}.ui-datepicker-row-break{clear:both;width:100%;font-size:0}.ui-datepicker-rtl{direction:rtl}.ui-datepicker-rtl .ui-datepicker-prev{right:2px;left:auto}.ui-datepicker-rtl .ui-datepicker-next{left:2px;right:auto}.ui-datepicker-rtl .ui-datepicker-prev:hover{right:1px;left:auto}.ui-datepicker-rtl .ui-datepicker-next:hover{left:1px;right:auto}.ui-datepicker-rtl .ui-datepicker-buttonpane{clear:right}.ui-datepicker-rtl .ui-datepicker-buttonpane button{float:left}.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,.ui-datepicker-rtl .ui-datepicker-group{float:right}.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header{border-right-width:0;border-left-width:1px}.ui-dialog{overflow:hidden;position:absolute;top:0;left:0;padding:.2em;outline:0}.ui-dialog .ui-dialog-titlebar{padding:.4em 1em;position:relative}.ui-dialog .ui-dialog-title{float:left;margin:.1em 0;white-space:nowrap;width:90%;overflow:hidden;text-overflow:ellipsis}.ui-dialog .ui-dialog-titlebar-close{position:absolute;right:.3em;top:50%;width:20px;margin:-10px 0 0 0;padding:1px;height:20px}.ui-dialog .ui-dialog-content{position:relative;border:0;padding:.5em 1em;background:none;overflow:auto}.ui-dialog .ui-dialog-buttonpane{text-align:left;border-width:1px 0 0 0;background-image:none;margin-top:.5em;padding:.3em 1em .5em .4em}.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset{float:right}.ui-dialog .ui-dialog-buttonpane button{margin:.5em .4em .5em 0;cursor:pointer}.ui-dialog .ui-resizable-se{width:12px;height:12px;right:-5px;bottom:-5px;background-position:16px 16px}.ui-draggable .ui-dialog-titlebar{cursor:move}.ui-menu{list-style:none;padding:0;margin:0;display:block;outline:none}.ui-menu .ui-menu{position:absolute}.ui-menu .ui-menu-item{position:relative;margin:0;padding:3px 1em 3px .4em;cursor:pointer;min-height:0;list-style-image:url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7")}.ui-menu .ui-menu-divider{margin:5px 0;height:0;font-size:0;line-height:0;border-width:1px 0 0 0}.ui-menu .ui-state-focus,.ui-menu .ui-state-active{margin:-1px}.ui-menu-icons{position:relative}.ui-menu-icons .ui-menu-item{padding-left:2em}.ui-menu .ui-icon{position:absolute;top:0;bottom:0;left:.2em;margin:auto 0}.ui-menu .ui-menu-icon{left:auto;right:0}.ui-progressbar{height:2em;text-align:left;overflow:hidden}.ui-progressbar .ui-progressbar-value{margin:-1px;height:100%}.ui-progressbar .ui-progressbar-overlay{background:url("../images/animated-overlay.gif");height:100%;filter:alpha(opacity=25);opacity:0.25}.ui-progressbar-indeterminate .ui-progressbar-value{background-image:none}.ui-selectmenu-menu{padding:0;margin:0;position:absolute;top:0;left:0;display:none}.ui-selectmenu-menu .ui-menu{overflow:auto;overflow-x:hidden;padding-bottom:1px}.ui-selectmenu-menu .ui-menu .ui-selectmenu-optgroup{font-size:1em;font-weight:bold;line-height:1.5;padding:2px 0.4em;margin:0.5em 0 0 0;height:auto;border:0}.ui-selectmenu-open{display:block}.ui-selectmenu-button{display:inline-block;overflow:hidden;position:relative;text-decoration:none;cursor:pointer}.ui-selectmenu-button span.ui-icon{right:0.5em;left:auto;margin-top:-8px;position:absolute;top:50%}.ui-selectmenu-button span.ui-selectmenu-text{text-align:left;padding:0.4em 2.1em 0.4em 1em;display:block;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-slider{position:relative;text-align:left}.ui-slider .ui-slider-handle{position:absolute;z-index:2;width:1.2em;height:1.2em;cursor:default;-ms-touch-action:none;touch-action:none}.ui-slider .ui-slider-range{position:absolute;z-index:1;font-size:.7em;display:block;border:0;background-position:0 0}.ui-slider.ui-state-disabled .ui-slider-handle,.ui-slider.ui-state-disabled .ui-slider-range{filter:inherit}.ui-slider-horizontal{height:.8em}.ui-slider-horizontal .ui-slider-handle{top:-.3em;margin-left:-.6em}.ui-slider-horizontal .ui-slider-range{top:0;height:100%}.ui-slider-horizontal .ui-slider-range-min{left:0}.ui-slider-horizontal .ui-slider-range-max{right:0}.ui-slider-vertical{width:.8em;height:100px}.ui-slider-vertical .ui-slider-handle{left:-.3em;margin-left:0;margin-bottom:-.6em}.ui-slider-vertical .ui-slider-range{left:0;width:100%}.ui-slider-vertical .ui-slider-range-min{bottom:0}.ui-slider-vertical .ui-slider-range-max{top:0}.ui-spinner{position:relative;display:inline-block;overflow:hidden;padding:0;vertical-align:middle}.ui-spinner-input{border:none;background:none;color:inherit;padding:0;margin:.2em 0;vertical-align:middle;margin-left:.4em;margin-right:22px}.ui-spinner-button{width:16px;height:50%;font-size:.5em;padding:0;margin:0;text-align:center;position:absolute;cursor:default;display:block;overflow:hidden;right:0}.ui-spinner a.ui-spinner-button{border-top:none;border-bottom:none;border-right:none}.ui-spinner .ui-icon{position:absolute;margin-top:-8px;top:50%;left:0}.ui-spinner-up{top:0}.ui-spinner-down{bottom:0}.ui-spinner .ui-icon-triangle-1-s{background-position:-65px -16px}.ui-tabs{position:relative;padding:.2em}.ui-tabs .ui-tabs-nav{margin:0;padding:.2em .2em 0}.ui-tabs .ui-tabs-nav li{list-style:none;float:left;position:relative;top:0;margin:1px .2em 0 0;border-bottom-width:0;padding:0;white-space:nowrap}.ui-tabs .ui-tabs-nav .ui-tabs-anchor{float:left;padding:.5em 1em;text-decoration:none}.ui-tabs .ui-tabs-nav li.ui-tabs-active{margin-bottom:-1px;padding-bottom:1px}.ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor,.ui-tabs .ui-tabs-nav li.ui-state-disabled .ui-tabs-anchor,.ui-tabs .ui-tabs-nav li.ui-tabs-loading .ui-tabs-anchor{cursor:text}.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor{cursor:pointer}.ui-tabs .ui-tabs-panel{display:block;border-width:0;padding:1em 1.4em;background:none}.ui-tooltip{padding:8px;position:absolute;z-index:9999;max-width:300px;-webkit-box-shadow:0 0 5px #aaa;box-shadow:0 0 5px #aaa}body .ui-tooltip{border-width:2px}.ui-widget{font-family:Verdana,Arial,sans-serif;font-size:1.1em}.ui-widget .ui-widget{font-size:1em}.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:Verdana,Arial,sans-serif;font-size:1em}.ui-widget-content{border:1px solid #aaa;background:#fff url("../images/ui-bg_flat_75_ffffff_40x100.png") 50% 50% repeat-x;color:#222}.ui-widget-content a{color:#222}.ui-widget-header{border:1px solid #aaa;background:#ccc url("../images/ui-bg_highlight-soft_75_cccccc_1x100.png") 50% 50% repeat-x;color:#222;font-weight:bold}.ui-widget-header a{color:#222}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default{border:1px solid #d3d3d3;background:#e6e6e6 url("../images/ui-bg_glass_75_e6e6e6_1x400.png") 50% 50% repeat-x;font-weight:normal;color:#555}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited{color:#555;text-decoration:none}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus{border:1px solid #999;background:#dadada url("../images/ui-bg_glass_75_dadada_1x400.png") 50% 50% repeat-x;font-weight:normal;color:#212121}.ui-state-hover a,.ui-state-hover a:hover,.ui-state-hover a:link,.ui-state-hover a:visited,.ui-state-focus a,.ui-state-focus a:hover,.ui-state-focus a:link,.ui-state-focus a:visited{color:#212121;text-decoration:none}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{border:1px solid #aaa;background:#fff url("../images/ui-bg_glass_65_ffffff_1x400.png") 50% 50% repeat-x;font-weight:normal;color:#212121}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#212121;text-decoration:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #fcefa1;background:#fbf9ee url("../images/ui-bg_glass_55_fbf9ee_1x400.png") 50% 50% repeat-x;color:#363636}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#363636}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #cd0a0a;background:#fef1ec url("../images/ui-bg_glass_95_fef1ec_1x400.png") 50% 50% repeat-x;color:#cd0a0a}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#cd0a0a}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#cd0a0a}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.ui-icon{width:16px;height:16px}.ui-icon,.ui-widget-content .ui-icon{background-image:url("../images/ui-icons_222222_256x240.png")}.ui-widget-header .ui-icon{background-image:url("../images/ui-icons_222222_256x240.png")}.ui-state-default .ui-icon{background-image:url("../images/ui-icons_888888_256x240.png")}.ui-state-hover .ui-icon,.ui-state-focus .ui-icon{background-image:url("../images/ui-icons_454545_256x240.png")}.ui-state-active .ui-icon{background-image:url("../images/ui-icons_454545_256x240.png")}.ui-state-highlight .ui-icon{background-image:url("../images/ui-icons_2e83ff_256x240.png")}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url("../images/ui-icons_cd0a0a_256x240.png")}.ui-icon-blank{background-position:16px 16px}.ui-icon-carat-1-n{background-position:0 0}.ui-icon-carat-1-ne{background-position:-16px 0}.ui-icon-carat-1-e{background-position:-32px 0}.ui-icon-carat-1-se{background-position:-48px 0}.ui-icon-carat-1-s{background-position:-64px 0}.ui-icon-carat-1-sw{background-position:-80px 0}.ui-icon-carat-1-w{background-position:-96px 0}.ui-icon-carat-1-nw{background-position:-112px 0}.ui-icon-carat-2-n-s{background-position:-128px 0}.ui-icon-carat-2-e-w{background-position:-144px 0}.ui-icon-triangle-1-n{background-position:0 -16px}.ui-icon-triangle-1-ne{background-position:-16px -16px}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-se{background-position:-48px -16px}.ui-icon-triangle-1-s{background-position:-64px -16px}.ui-icon-triangle-1-sw{background-position:-80px -16px}.ui-icon-triangle-1-w{background-position:-96px -16px}.ui-icon-triangle-1-nw{background-position:-112px -16px}.ui-icon-triangle-2-n-s{background-position:-128px -16px}.ui-icon-triangle-2-e-w{background-position:-144px -16px}.ui-icon-arrow-1-n{background-position:0 -32px}.ui-icon-arrow-1-ne{background-position:-16px -32px}.ui-icon-arrow-1-e{background-position:-32px -32px}.ui-icon-arrow-1-se{background-position:-48px -32px}.ui-icon-arrow-1-s{background-position:-64px -32px}.ui-icon-arrow-1-sw{background-position:-80px -32px}.ui-icon-arrow-1-w{background-position:-96px -32px}.ui-icon-arrow-1-nw{background-position:-112px -32px}.ui-icon-arrow-2-n-s{background-position:-128px -32px}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.ui-icon-arrow-2-e-w{background-position:-160px -32px}.ui-icon-arrow-2-se-nw{background-position:-176px -32px}.ui-icon-arrowstop-1-n{background-position:-192px -32px}.ui-icon-arrowstop-1-e{background-position:-208px -32px}.ui-icon-arrowstop-1-s{background-position:-224px -32px}.ui-icon-arrowstop-1-w{background-position:-240px -32px}.ui-icon-arrowthick-1-n{background-position:0 -48px}.ui-icon-arrowthick-1-ne{background-position:-16px -48px}.ui-icon-arrowthick-1-e{background-position:-32px -48px}.ui-icon-arrowthick-1-se{background-position:-48px -48px}.ui-icon-arrowthick-1-s{background-position:-64px -48px}.ui-icon-arrowthick-1-sw{background-position:-80px -48px}.ui-icon-arrowthick-1-w{background-position:-96px -48px}.ui-icon-arrowthick-1-nw{background-position:-112px -48px}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.ui-icon-arrowreturn-1-w{background-position:-64px -64px}.ui-icon-arrowreturn-1-n{background-position:-80px -64px}.ui-icon-arrowreturn-1-e{background-position:-96px -64px}.ui-icon-arrowreturn-1-s{background-position:-112px -64px}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.ui-icon-arrow-4{background-position:0 -80px}.ui-icon-arrow-4-diag{background-position:-16px -80px}.ui-icon-extlink{background-position:-32px -80px}.ui-icon-newwin{background-position:-48px -80px}.ui-icon-refresh{background-position:-64px -80px}.ui-icon-shuffle{background-position:-80px -80px}.ui-icon-transfer-e-w{background-position:-96px -80px}.ui-icon-transferthick-e-w{background-position:-112px -80px}.ui-icon-folder-collapsed{background-position:0 -96px}.ui-icon-folder-open{background-position:-16px -96px}.ui-icon-document{background-position:-32px -96px}.ui-icon-document-b{background-position:-48px -96px}.ui-icon-note{background-position:-64px -96px}.ui-icon-mail-closed{background-position:-80px -96px}.ui-icon-mail-open{background-position:-96px -96px}.ui-icon-suitcase{background-position:-112px -96px}.ui-icon-comment{background-position:-128px -96px}.ui-icon-person{background-position:-144px -96px}.ui-icon-print{background-position:-160px -96px}.ui-icon-trash{background-position:-176px -96px}.ui-icon-locked{background-position:-192px -96px}.ui-icon-unlocked{background-position:-208px -96px}.ui-icon-bookmark{background-position:-224px -96px}.ui-icon-tag{background-position:-240px -96px}.ui-icon-home{background-position:0 -112px}.ui-icon-flag{background-position:-16px -112px}.ui-icon-calendar{background-position:-32px -112px}.ui-icon-cart{background-position:-48px -112px}.ui-icon-pencil{background-position:-64px -112px}.ui-icon-clock{background-position:-80px -112px}.ui-icon-disk{background-position:-96px -112px}.ui-icon-calculator{background-position:-112px -112px}.ui-icon-zoomin{background-position:-128px -112px}.ui-icon-zoomout{background-position:-144px -112px}.ui-icon-search{background-position:-160px -112px}.ui-icon-wrench{background-position:-176px -112px}.ui-icon-gear{background-position:-192px -112px}.ui-icon-heart{background-position:-208px -112px}.ui-icon-star{background-position:-224px -112px}.ui-icon-link{background-position:-240px -112px}.ui-icon-cancel{background-position:0 -128px}.ui-icon-plus{background-position:-16px -128px}.ui-icon-plusthick{background-position:-32px -128px}.ui-icon-minus{background-position:-48px -128px}.ui-icon-minusthick{background-position:-64px -128px}.ui-icon-close{background-position:-80px -128px}.ui-icon-closethick{background-position:-96px -128px}.ui-icon-key{background-position:-112px -128px}.ui-icon-lightbulb{background-position:-128px -128px}.ui-icon-scissors{background-position:-144px -128px}.ui-icon-clipboard{background-position:-160px -128px}.ui-icon-copy{background-position:-176px -128px}.ui-icon-contact{background-position:-192px -128px}.ui-icon-image{background-position:-208px -128px}.ui-icon-video{background-position:-224px -128px}.ui-icon-script{background-position:-240px -128px}.ui-icon-alert{background-position:0 -144px}.ui-icon-info{background-position:-16px -144px}.ui-icon-notice{background-position:-32px -144px}.ui-icon-help{background-position:-48px -144px}.ui-icon-check{background-position:-64px -144px}.ui-icon-bullet{background-position:-80px -144px}.ui-icon-radio-on{background-position:-96px -144px}.ui-icon-radio-off{background-position:-112px -144px}.ui-icon-pin-w{background-position:-128px -144px}.ui-icon-pin-s{background-position:-144px -144px}.ui-icon-play{background-position:0 -160px}.ui-icon-pause{background-position:-16px -160px}.ui-icon-seek-next{background-position:-32px -160px}.ui-icon-seek-prev{background-position:-48px -160px}.ui-icon-seek-end{background-position:-64px -160px}.ui-icon-seek-start{background-position:-80px -160px}.ui-icon-seek-first{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{border-top-left-radius:4px}.ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{border-top-right-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{border-bottom-left-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{border-bottom-right-radius:4px}.ui-widget-overlay{background:#aaa url("../images/ui-bg_flat_0_aaaaaa_40x100.png") 50% 50% repeat-x;opacity:.3;filter:Alpha(Opacity=30)}.ui-widget-shadow{margin:-8px 0 0 -8px;padding:8px;background:#aaa url("../images/ui-bg_flat_0_aaaaaa_40x100.png") 50% 50% repeat-x;opacity:.3;filter:Alpha(Opacity=30);border-radius:8px}
assets/css/magnific-popup.css ADDED
@@ -0,0 +1 @@
 
1
+ .mfp-bg{top:0;left:0;width:100%;height:100%;z-index:1042;overflow:hidden;position:fixed;background:#0b0b0b;opacity:.8;filter:alpha(opacity=80)}.mfp-wrap{top:0;left:0;width:100%;height:100%;z-index:999999;position:fixed;outline:0!important;-webkit-backface-visibility:hidden}.mfp-container{text-align:center;position:absolute;width:100%;height:100%;left:0;top:0;padding:0 8px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.mfp-container:before{content:'';display:inline-block;height:100%;vertical-align:middle}.mfp-align-top .mfp-container:before{display:none}.mfp-content{position:relative;display:inline-block;vertical-align:middle;margin:0 auto;text-align:left;z-index:1045}.mfp-ajax-holder .mfp-content,.mfp-inline-holder .mfp-content{width:100%;cursor:auto}.mfp-ajax-cur{cursor:progress}.mfp-zoom-out-cur,.mfp-zoom-out-cur .mfp-image-holder .mfp-close{cursor:-moz-zoom-out;cursor:-webkit-zoom-out;cursor:zoom-out}.mfp-zoom{cursor:pointer;cursor:-webkit-zoom-in;cursor:-moz-zoom-in;cursor:zoom-in}.mfp-auto-cursor .mfp-content{cursor:auto}.mfp-arrow,.mfp-close,.mfp-counter,.mfp-preloader{-webkit-user-select:none;-moz-user-select:none;user-select:none}.mfp-loading.mfp-figure{display:none}.mfp-hide{display:none!important}.mfp-preloader{color:#CCC;position:absolute;top:50%;width:auto;text-align:center;margin-top:-.8em;left:8px;right:8px;z-index:1044}.mfp-preloader a{color:#CCC}.mfp-preloader a:hover{color:#FFF}.mfp-s-error .mfp-content,.mfp-s-ready .mfp-preloader{display:none}button.mfp-arrow,button.mfp-close{overflow:visible;cursor:pointer;background:0 0;border:0;-webkit-appearance:none;display:block;outline:0;padding:0;z-index:1046;-webkit-box-shadow:none;box-shadow:none}button::-moz-focus-inner{padding:0;border:0}.mfp-close{width:44px;height:44px;line-height:44px;position:absolute;right:0;top:0;text-decoration:none;text-align:center;opacity:.65;filter:alpha(opacity=65);padding:0 0 18px 10px;color:#FFF;font-style:normal;font-size:28px;font-family:Arial,Baskerville,monospace}.mfp-close:focus,.mfp-close:hover{opacity:1;filter:alpha(opacity=100)}.mfp-close:active{top:1px}.mfp-close-btn-in .mfp-close{color:#333}.mfp-iframe-holder .mfp-close,.mfp-image-holder .mfp-close{color:#FFF;right:-6px;text-align:right;padding-right:6px;width:100%}.mfp-counter{position:absolute;top:0;right:0;color:#CCC;font-size:12px;line-height:18px;white-space:nowrap}.mfp-arrow{position:absolute;opacity:.65;filter:alpha(opacity=65);margin:-55px 0 0;top:50%;padding:0;width:90px;height:110px;-webkit-tap-highlight-color:transparent}.mfp-arrow:active{margin-top:-54px}.mfp-arrow:focus,.mfp-arrow:hover{opacity:1;filter:alpha(opacity=100)}.mfp-arrow .mfp-a,.mfp-arrow .mfp-b,.mfp-arrow:after,.mfp-arrow:before{content:'';display:block;width:0;height:0;position:absolute;left:0;top:0;margin-top:35px;margin-left:35px;border:inset transparent}.mfp-arrow .mfp-a,.mfp-arrow:after{border-top-width:13px;border-bottom-width:13px;top:8px}.mfp-arrow .mfp-b,.mfp-arrow:before{border-top-width:21px;border-bottom-width:21px;opacity:.7}.mfp-arrow-left{left:0}.mfp-arrow-left .mfp-a,.mfp-arrow-left:after{border-right:17px solid #FFF;margin-left:31px}.mfp-arrow-left .mfp-b,.mfp-arrow-left:before{margin-left:25px;border-right:27px solid #3F3F3F}.mfp-arrow-right{right:0}.mfp-arrow-right .mfp-a,.mfp-arrow-right:after{border-left:17px solid #FFF;margin-left:39px}.mfp-arrow-right .mfp-b,.mfp-arrow-right:before{border-left:27px solid #3F3F3F}.mfp-iframe-holder{padding-top:40px;padding-bottom:40px}.mfp-iframe-holder .mfp-content{line-height:0;width:100%;max-width:900px}.mfp-iframe-holder .mfp-close{top:-40px}.mfp-iframe-scaler{width:100%;height:0;overflow:hidden;padding-top:56.25%}.mfp-iframe-scaler iframe{position:absolute;display:block;top:0;left:0;width:100%;height:100%;box-shadow:0 0 8px rgba(0,0,0,.6);background:#000}img.mfp-img{width:auto;max-width:100%;height:auto;display:block;line-height:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:40px 0;margin:0 auto}.mfp-figure{line-height:0}.mfp-figure:after{content:'';position:absolute;left:0;top:40px;bottom:40px;display:block;right:0;width:auto;height:auto;z-index:-1;box-shadow:0 0 8px rgba(0,0,0,.6);background:#444}.mfp-figure small{color:#BDBDBD;display:block;font-size:12px;line-height:14px}.mfp-figure figure{margin:0}.mfp-bottom-bar{margin-top:-36px;position:absolute;top:100%;left:0;width:100%;cursor:auto}.mfp-title{text-align:left;line-height:18px;color:#F3F3F3;word-wrap:break-word;padding-right:36px}.mfp-image-holder .mfp-content{max-width:100%}.mfp-gallery .mfp-image-holder .mfp-figure{cursor:pointer}@media screen and (max-width:800px) and (orientation:landscape),screen and (max-height:300px){.mfp-img-mobile .mfp-image-holder{padding-left:0;padding-right:0}.mfp-img-mobile img.mfp-img{padding:0}.mfp-img-mobile .mfp-figure:after{top:0;bottom:0}.mfp-img-mobile .mfp-figure small{display:inline;margin-left:5px}.mfp-img-mobile .mfp-bottom-bar{background:rgba(0,0,0,.6);bottom:0;margin:0;top:auto;padding:3px 5px;position:fixed;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.mfp-img-mobile .mfp-bottom-bar:empty{padding:0}.mfp-img-mobile .mfp-counter{right:5px;top:3px}.mfp-img-mobile .mfp-close{top:0;right:0;width:35px;height:35px;line-height:35px;background:rgba(0,0,0,.6);position:fixed;text-align:center;padding:0}}@media all and (max-width:900px){.mfp-arrow{-webkit-transform:scale(.75);transform:scale(.75)}.mfp-arrow-left{-webkit-transform-origin:0;transform-origin:0}.mfp-arrow-right{-webkit-transform-origin:100%;transform-origin:100%}.mfp-container{padding-left:6px;padding-right:6px}}.mfp-ie7 .mfp-img{padding:0}.mfp-ie7 .mfp-bottom-bar{width:600px;left:50%;margin-left:-300px;margin-top:5px;padding-bottom:5px}.mfp-ie7 .mfp-container{padding:0}.mfp-ie7 .mfp-content{padding-top:44px}.mfp-ie7 .mfp-close{top:0;right:0;padding-top:0}
assets/js/admin.js ADDED
@@ -0,0 +1,523 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ jQuery(function() {
2
+ var home_url = icegram_writepanel_params['home_url'];
3
+
4
+ function display_message_themes(this_data) {
5
+ var message_type = jQuery(this_data).find('.message_type').val();
6
+ jQuery(this_data).closest('.message-edit-row').prev()
7
+ .find('.message_header_label').text(message_type)
8
+ .removeClass().addClass('message_header_label ig_' + message_type);
9
+
10
+ var message_theme = jQuery(this_data).find('.message_row.ig_'+message_type).find('.message_theme').val();
11
+ var form_style = jQuery(this_data).find('.message_row.ig_'+message_type).find('#message_form_style').val();
12
+ var message_thumb = jQuery(this_data).find('#message_theme_ig_'+message_type).find('.'+message_theme).attr('style');
13
+ var form_thumb = jQuery(this_data).find('#message_form_style').find('.'+form_style).attr('style');
14
+ jQuery(this_data).find('.message_row, .location').hide();
15
+ jQuery(this_data).find('.ig_' + message_type).show();
16
+ jQuery(this_data).find('.message_row.ig_' + message_type).find('.message_theme').next().find('.chosen-single span').attr('style',message_thumb);
17
+ jQuery(this_data).find('.message_row.ig_' + message_type).find('#message_form_style').next().find('.chosen-single span').attr('style',form_thumb)
18
+ .text(function(){return jQuery(this).text().substr(0, jQuery(this).text().indexOf(' '))||jQuery(this).text() ; });
19
+ if( jQuery(this_data).find('.message_body').parent().css('display') !== 'block' ) {
20
+ jQuery(this_data).find('.message_body').parent().next('.wp-editor-wrap').hide();
21
+ } else {
22
+ jQuery(this_data).find('.message_body').parent().next('.wp-editor-wrap').show();
23
+ }
24
+
25
+ if(!jQuery(this_data).find('.message_form_layout:checked').is(':visible')){
26
+ jQuery(this_data).find('.message_form_layout:visible').first().prop('checked', true);
27
+ }
28
+ if(jQuery(this_data).find('.show_form_options').prop('checked') == true){
29
+ jQuery(this_data).find('.message_link').parent().hide();
30
+ }
31
+ jQuery('.message_form_layout').change();
32
+
33
+ }
34
+
35
+ function get_random_int(current, min, max) {
36
+ var random_int = Math.floor(Math.random() * (max - min + 1)) + min;
37
+ if ( random_int == current ) {
38
+ return get_random_int( random_int, min, max );
39
+ } else {
40
+ return random_int;
41
+ }
42
+ }
43
+ // Type box
44
+ // jQuery('.campaign_data').find('h3.handle').hide();
45
+ // jQuery('.target_rules_desc').appendTo('.campaign_target_rules h3.handle span');
46
+
47
+ jQuery(document).ready(function() {
48
+ var tabs = jQuery('#ig-admin-tabs');
49
+
50
+ // Show Main Tab, By default
51
+ tabs.find('.ig-admin-nav-main').addClass('current');
52
+ tabs.find('#ig-admin-tab-main').show();
53
+
54
+ // show gallery first:start
55
+ if(adminpage === "post-new-php"){
56
+ // jQuery('#poststuff').find('.ig-gallery-wrap').addClass('ig-gallery-position')
57
+
58
+ jQuery('#wpbody').on('click', '#ig-add-new-campaign', function(){
59
+ jQuery('#poststuff').css('position', 'static');
60
+ jQuery('#postbox-container-1 #side-sortables').removeClass('empty-container').addClass('gal-toggled');
61
+ jQuery('.gallery-heading, .ig-gallery-wrap').hide();
62
+ jQuery('.postbox-container').show()
63
+ jQuery('.wrap h1.wp-heading-inline').not('.gallery-heading').show();
64
+ jQuery('.ig-gallery-wrap').siblings().not('.gallery-heading').show()
65
+ jQuery('.postbox-container').siblings().show()
66
+ });
67
+ }
68
+ // show gallery first:end
69
+
70
+ jQuery('#ig-admin-tabs').on('click', '.ig-admin-tabs-nav li', function(event) {
71
+ event.preventDefault();
72
+ if(!jQuery(this).hasClass('ig-admin-nav-notab')){
73
+ tabs.find('.ig-admin-tabs-nav li').not(this).removeClass('current');
74
+ jQuery('.ig-admin-tab').fadeOut('fast');
75
+ jQuery(jQuery(this).addClass('current').find('a').attr('href')).fadeIn('fast');
76
+
77
+ if(jQuery(this).hasClass('new-variation')){
78
+ jQuery(this).removeClass('current');
79
+ jQuery('.ig-admin-nav-variations').addClass('current');
80
+ }
81
+ }
82
+ });
83
+
84
+
85
+ var original_send_to_editor = window.send_to_editor;
86
+
87
+ //Adding a preview button in side bar widget
88
+ var prvw_button = jQuery('.ig_preview_button');
89
+ jQuery('#submitdiv .submitbox #minor-publishing-actions').after(prvw_button)
90
+ prvw_button.fadeIn('fast');
91
+
92
+ // jQuery('#postdivrich').hide();
93
+ jQuery('.color-field').wpColorPicker().each(function(index){
94
+ var colorPicker_label = jQuery(this).data('color-label') || '';
95
+ if(colorPicker_label !== ''){
96
+ jQuery(this).closest('.wp-picker-container').find('a.wp-color-result').attr('title', colorPicker_label);
97
+ }
98
+ });
99
+
100
+ //hide Colors container
101
+ jQuery('.campaign_data, #message-settings').on('change', '.show_color_options', function() {
102
+ jQuery(this).closest('p').next('.message_colors_options_container').toggle(!this.checked);
103
+ }).change();
104
+
105
+ hide_empty_campaign_message();
106
+
107
+ jQuery('.message_edit:first').trigger('click');
108
+
109
+ this_data = jQuery('.message_type').closest('.message-setting-fields');
110
+ for (var i = 0; i < this_data.length; i++) {
111
+ display_message_themes(this_data[i]);
112
+ };
113
+
114
+ // jQuery('.campaign_data, #message-settings').on('change', '.message_type', function(e) {
115
+ // var t = jQuery(e.target).parents('.message-setting-fields');
116
+ // display_message_themes(t);
117
+ // });
118
+
119
+ jQuery('.campaign_data, #message-settings').on('change', '.message_theme', function(e) {
120
+ var t = jQuery(e.target).parents('.message-setting-fields');
121
+ var message_type = jQuery(t).find('.message_type').val();
122
+ var message_theme = jQuery(t).find('.message_row.ig_'+message_type).find('.message_theme').val();
123
+ var message_thumb = jQuery(t).find('#message_theme_ig_'+message_type).find('.'+message_theme).attr('style');
124
+ jQuery(t).find('.message_row.ig_'+message_type).find('.message_theme').next().find('.chosen-single span').attr('style',message_thumb);
125
+ });
126
+
127
+ //for rainmaker_form
128
+ jQuery('.campaign_data, #message-settings').on('change', '.rainmaker_form_list', function(e) {
129
+ if((jQuery(e.target).val() || 'null') !== 'null'){
130
+ jQuery(e.target).parent().siblings('.message_form_html_original').hide();
131
+ }
132
+ });
133
+
134
+ jQuery('.campaign_data, #message-settings').on('click', '.message_image_button', function(event) {
135
+ var that = this;
136
+ window.send_to_editor = function(html) {
137
+ imgurl = jQuery('img', html).attr('src');
138
+ jQuery(that).parent().find('#upload_image').val(imgurl);
139
+ tb_remove();
140
+ window.send_to_editor = original_send_to_editor;
141
+ };
142
+ return false;
143
+ });
144
+
145
+ jQuery('.campaign_data, #message-settings').on('click', '.message_headline_button', function() {
146
+ var headline_key = jQuery(this).prev().attr('data-headline');
147
+ var headline_max = icegram_writepanel_params.available_headlines.length;
148
+ var new_headline_key = get_random_int( headline_key, 0, headline_max );
149
+ var new_headline = icegram_writepanel_params.available_headlines[ new_headline_key ];
150
+ jQuery(this).prev().val( new_headline );
151
+ });
152
+
153
+ jQuery(".tips, .help_tip").tipTip({'attribute' : 'data-tip'});
154
+
155
+ jQuery('span.test_class').hover(function(){
156
+ jQuery(this).next().show();
157
+ }, function(){
158
+ jQuery(this).next().hide();
159
+ });
160
+
161
+ // Disable closing message list
162
+ jQuery('.campaign_data .handle, .campaign_data .handlediv').unbind('click');
163
+ jQuery('.campaign_data .handlediv').hide();
164
+ jQuery('#poststuff').on('click', '#publish', function(event){
165
+ if(jQuery('.campaign_data').find('.message_header_label.ig_unknown').length){
166
+ alert('Please select Message type');
167
+ event.preventDefault();
168
+ }
169
+ });
170
+
171
+ });
172
+
173
+ jQuery('.campaign_data, #message-settings').on('click','.message_delete', function() {
174
+ jQuery(this).parent().parent().next().remove();
175
+ jQuery(this).parent().parent().remove();
176
+ hide_empty_campaign_message();
177
+
178
+ });
179
+
180
+ jQuery('.campaign_data, #message-settings').on( 'click', '.message_edit', function() {
181
+ jQuery(this).parent().parent().next().toggle();
182
+ jQuery(this).parent().parent().find('.message-title-text, .message-title-input').toggle();
183
+ });
184
+
185
+ jQuery('.campaign_data, #message-settings').on( 'click', '.embed_form_code_toggle', function() {
186
+ jQuery(this).parent().parent().siblings('.message_form_html_original').toggle();
187
+ });
188
+
189
+ jQuery('.campaign_data, #message-settings').on( 'change', '.message-title-input',function() {
190
+ jQuery(this).prev().text(jQuery(this).val());
191
+ });
192
+
193
+ jQuery("select.ajax_chosen_select_messages").ajaxChosen({
194
+ type: 'GET',
195
+ url: icegram_writepanel_params.ajax_url,
196
+ dataType: 'json',
197
+ afterTypeDelay: 100,
198
+ data: {
199
+ action: 'icegram_json_search_messages',
200
+ security: icegram_writepanel_params.search_message_nonce
201
+ }
202
+ }, function(data) {
203
+ var terms = {};
204
+ jQuery.each(data, function(i, val) {
205
+ terms[i] = val;
206
+ });
207
+ return terms;
208
+ });
209
+
210
+ // Embed Form Controls and navigations
211
+ jQuery('.campaign_data, #message-settings').on('change', '.show_form_options', function(event) {
212
+ var parent_node = jQuery(this).closest('p');
213
+ jQuery(parent_node).siblings('.message_form_options').slideToggle(this.checked);
214
+ if(!this.checked){
215
+ jQuery(parent_node).siblings('p.cta-actions').find('select option').removeAttr('disabled');
216
+ // TODO :: Hiding position but not add shortcode in msg body
217
+ // var visiblePosition = jQuery(parent_node).siblings('.message_form_options').find('.form_radio_group span:visible');
218
+ // if(visiblePosition.length == 1){
219
+ // visiblePosition.hide();
220
+ // }
221
+ var msg_editor = jQuery(parent_node).siblings('.message_form_options').siblings('.wp-editor-wrap').find('.wp-editor-area');
222
+ var msg_editor_text = jQuery(msg_editor).val().trim().replace("[ig_form]", '');
223
+ jQuery(msg_editor).val(msg_editor_text);
224
+ jQuery(parent_node).closest('.thickbox_edit_message').find('.message_link').parent().show();
225
+ }else {
226
+ // jQuery(parent_node).parent().find('.message_link').parent().hide();
227
+ //thickbox_edit_message
228
+ jQuery(parent_node).closest('.thickbox_edit_message').find('.message_link').parent().hide();
229
+ jQuery(parent_node).siblings('p.cta-actions').find('select option').removeAttr('disabled');
230
+ jQuery(parent_node).siblings('p.cta-actions').find('select')
231
+ .find('option[value="url"], option[value="hide"], option[value="cta_another_message"]')
232
+ .attr("disabled", true)
233
+ .attr("selected", false)
234
+ .end()
235
+ .find('option[value="form"]')
236
+ .attr("selected", true)
237
+ .trigger('change');
238
+
239
+ jQuery(parent_node).siblings('.message_form_options').find('.message_form_layout').change();
240
+ // TODO:: test this. // msg_editor_text = msg_editor_text + "[ig_form]";
241
+ }
242
+ }).change();
243
+
244
+ jQuery('.campaign_data, #message-settings').on('change', '.message_form_style', function(e) {
245
+ var t = jQuery(e.target).parents('.message-setting-fields');
246
+ var form_style = jQuery(t).find('#message_form_style').val();
247
+ var form_style_thumb = jQuery(t).find('#message_form_style').find('.'+form_style).attr('style');
248
+ jQuery(t).find('.message_form_style').next().find('.chosen-single span').attr('style',form_style_thumb)
249
+ .text(function(){return jQuery(this).text().substr(0, jQuery(this).text().indexOf(' '))||jQuery(this).text() ; });
250
+
251
+ });
252
+ jQuery('.campaign_data, #message-settings').on('change', '.message_form_layout ' , function() {
253
+ if(jQuery(this).is(':visible')){
254
+ var that = this;
255
+ var msg_editor = jQuery(this).closest('.message_form_options')
256
+ .siblings('.wp-editor-wrap')
257
+ .find('.wp-editor-area');
258
+ var msg_editor_text = jQuery(msg_editor).val().trim();
259
+ jQuery(that).closest('.form_radio_group').siblings('.form_inline_shortcode').hide();
260
+ jQuery(that).closest('.form_radio_group').siblings('.message_form_color').show();
261
+ if(jQuery(that).is(':checked') && jQuery(that).closest('.message_form_options').prev('p.message_form_options_check').find('.show_form_options').is(':checked')){
262
+ if(jQuery(that).val() == 'inline'){
263
+ if(msg_editor_text.indexOf('[ig_form]') == -1){
264
+ msg_editor_text = msg_editor_text + "[ig_form]";
265
+ }
266
+ jQuery(that).closest('.form_radio_group').siblings('.message_form_color, .form_inline_shortcode').toggle();
267
+ }else if(jQuery(that).val() != 'inline'){
268
+ msg_editor_text = msg_editor_text.replace("[ig_form]", '');
269
+ }
270
+ }
271
+ jQuery(msg_editor).val(msg_editor_text);
272
+ }
273
+ });
274
+
275
+ jQuery('.campaign_data, #message-settings').on('blur', '.message_form_html_original' , function(event) {
276
+ //change the button colors and CTA options HERE.
277
+ var that = this;
278
+ var buttons = jQuery('<div/>').html(jQuery(that).val()).find('input[type=submit], button, input[type=button]').not('*:disabled');
279
+ // var parent_node = jQuery(that).closest('.message_form_options');
280
+ // jQuery(parent_node).parent().find('p.cta-actions select option').removeAttr('disabled');
281
+ // if(jQuery(that).val() != undefined && jQuery(that).val() != ''){
282
+ // jQuery(parent_node).parent().find('p.cta-actions select')
283
+ // .find('option[value="url"], option[value="hide"], option[value="cta_another_message"]')
284
+ // .attr("disabled", true)
285
+ // .attr("selected", false)
286
+ // .end()
287
+ // .find('option[value="form"]')
288
+ // .attr("selected", true)
289
+ // .trigger('change');
290
+ // }
291
+ if(buttons.length > 0){
292
+ var button = jQuery(buttons[buttons.length-1]);
293
+ var button_text = button.is('button') ? button.not('br, span, div').text() : button.val();
294
+ jQuery(that).closest('.message_form_options').siblings('p').find('#message_label').val(button_text.trim());
295
+ }
296
+ });
297
+ // Embed Form - end
298
+
299
+ // show/hide custom code insert boxes
300
+ jQuery('.campaign_data, #message-settings').on('change', '.show_custom_code_options' , function(event) {
301
+ var parent_node = jQuery(this).closest('p');
302
+ jQuery(parent_node).siblings('.message_custom_code_options').slideToggle(this.checked);
303
+ });
304
+
305
+ //var message_rows = jQuery(this).parent().siblings('.campaign_target_rules_panel').find('.message-row').length;
306
+ jQuery('.ajax_chosen_select_messages').chosen();
307
+ jQuery('.campaign_data, #message-settings').on('change', '.ajax_chosen_select_messages' , function() {
308
+ var params = {};
309
+ var selected_tab = jQuery('#ig-admin-tabs li.current').attr('variation_id');
310
+ if(typeof(selected_tab) !== 'undefined'){
311
+ jQuery.extend(params, {'selected_tab':selected_tab});
312
+ }
313
+ var newSettings = jQuery.extend( {}, tinyMCEPreInit.mceInit[ 'content' ] );
314
+
315
+ var newQTS = jQuery.extend( {}, tinyMCEPreInit.qtInit[ 'content' ] );
316
+ var parent_campaign_box = jQuery(this).parent().siblings('.campaign_target_rules_panel');
317
+ if(typeof(parent_campaign_box) !== 'undefined'){
318
+ params['parent_campaign_box'] = parent_campaign_box;
319
+ }
320
+ var message_rows = jQuery(parent_campaign_box).find('.message-row').length;
321
+ var message_id = jQuery(this).val();
322
+ if( message_id == '' ) {
323
+ jQuery(".ajax_chosen_select_messages").val('').trigger("chosen:updated");
324
+ return;
325
+ }
326
+
327
+ jQuery('.message-edit-row').hide();
328
+ jQuery('.message-title-text').show();
329
+ jQuery('.message-title-input').hide();
330
+ jQuery.ajax({
331
+ type: 'POST',
332
+ url: icegram_writepanel_params.ajax_url,
333
+ dataType: 'json',
334
+ data: {
335
+ action: 'get_message_action_row',
336
+ message_id: message_id,
337
+ row: message_rows
338
+ },
339
+ success: function(response) {
340
+ message_rows++;
341
+ //jQuery('.messages-list .messages_list_table tbody').append(response.main);
342
+ jQuery(parent_campaign_box).find('.messages-list .messages_list_table tbody').append(response.main);
343
+ jQuery('.color-field').wpColorPicker().each(function(index){
344
+ var colorPicker_label = jQuery(this).data('color-label') || '';
345
+ if(colorPicker_label !== ''){
346
+ jQuery(this).closest('.wp-picker-container').find('a.wp-color-result').attr('title', colorPicker_label);
347
+ }
348
+ });
349
+ //hide Colors container
350
+ jQuery('.campaign_data, #message-settings').on('change', '.show_color_options' , function() {
351
+ jQuery(this).closest('p').next('.message_colors_options_container').toggle(!this.checked);
352
+ }).change();
353
+
354
+ display_message_themes(jQuery('#'+response.id));
355
+ jQuery(".ajax_chosen_select_messages").val('').trigger("chosen:updated");
356
+ //add get more themes link
357
+ jQuery('.campaign_data, #message-settings').find('.message_theme').append('<option value="ig_get_more_theme" class="ig_get_more">Get more Themes</option>');
358
+ jQuery('.campaign_data, #message-settings').find('.message_animation').append('<option value="ig_get_more_animation" class="ig_get_more">Get more Animations</option>');
359
+ jQuery("select.icegram_chosen_page").chosen({
360
+ disable_search_threshold: 10
361
+ });
362
+ hide_empty_campaign_message();
363
+ jQuery('.message-setting-fields').trigger('change');
364
+ jQuery(".tips, .help_tip").tipTip({'attribute' : 'data-tip'});
365
+ // text editor issue fix
366
+ if ( typeof( tinyMCEPreInit.mceInit[ 'edit'+response.id ] ) === 'undefined' ) {
367
+ for ( _prop in newSettings ) {
368
+ if ( 'string' === typeof( newSettings[_prop] ) ) {
369
+ if(_prop !== 'content_css'){
370
+ newSettings[_prop] = newSettings[_prop].replace( new RegExp( 'content', 'g' ), 'edit'+response.id );
371
+ }
372
+ }
373
+ }
374
+ tinyMCEPreInit.mceInit[ 'edit'+response.id ] = newSettings;
375
+ }
376
+ if ( typeof( tinyMCEPreInit.qtInit[ 'edit'+response.id ] ) === 'undefined' ) {
377
+ for ( _prop in newQTS ) {
378
+ if ( 'string' === typeof( newQTS[_prop] ) ) {
379
+ if(_prop !== 'content_css'){
380
+ newQTS[_prop] = newQTS[_prop].replace( new RegExp( 'content', 'g' ), 'edit'+response.id );
381
+ }
382
+ }
383
+ }
384
+ tinyMCEPreInit.qtInit[ 'edit'+response.id ] = newQTS;
385
+ }
386
+ tinyMCE.init({ id : tinyMCEPreInit.mceInit[ 'edit'+response.id ]});
387
+ quicktags({id : 'edit'+response.id});
388
+ QTags._buttonsInit();
389
+ if(jQuery('#wp-edit'+response.id+'-wrap').hasClass('tmce-active')){
390
+ jQuery('#edit'+response.id+'-tmce').click();
391
+ }else{
392
+ jQuery('#edit'+response.id+'-html').click();
393
+ }
394
+ jQuery( window ).trigger( "icegram_message_added_ajax" ,[params]);
395
+ }
396
+ });
397
+ });
398
+ //add local url
399
+ jQuery('.campaign_target_rules').on('click', '#add_local_url_row' ,function(e) {
400
+ e.preventDefault();
401
+ var row = add_url_row();
402
+ if(jQuery('.local_url').find('.url_input_field').length){
403
+ jQuery(row).insertAfter(jQuery('.local_url').find('.url_input_field').last().parent('span'));
404
+ }else{
405
+ jQuery(row).insertBefore(jQuery('.local_url').find('#add_local_url_row_label'));
406
+
407
+ }
408
+
409
+ });
410
+ jQuery('.campaign_target_rules').on('click', '.delete-url',function(e) {
411
+ jQuery(this).parent().remove();
412
+ });
413
+
414
+ function add_url_row(){
415
+ var row = '<span><label class="options_header"><span id="valid-field"> </span></label> <input type="text" class="url_input_field" data-option="local_url" name="campaign_target_rules[local_urls][]" value="'+home_url+'*"/><span class="delete-url"></span></span>';
416
+ return row;
417
+ }
418
+ function hide_empty_campaign_message() {
419
+ if( jQuery('.message-row').length == 0 ) {
420
+ jQuery('.empty_campaign').show();
421
+ } else {
422
+ jQuery('.empty_campaign').hide();
423
+ }
424
+ }
425
+
426
+ // jQuery('select.ajax_chosen_select_messages').next('div').on('click', 'div.chosen-drop', function() {
427
+ // jQuery(this).closest('h3.handle').trigger('click');
428
+ // });
429
+
430
+ // jQuery('.campaign_data').on( 'click','.campaign_preview' ,function(event) {
431
+ // jQuery('#ig-admin-tabs').on( 'click', '.campaign_preview', function(event) {
432
+ jQuery(document).on( 'click', '.campaign_preview', function(event) {
433
+ // jQuery(this).closest('h3.handle').trigger('click');
434
+ // if( jQuery('.message-row').length == 0 )
435
+ // return;
436
+ // trigger event for saving visual content
437
+ tinyMCE.triggerSave();
438
+ params = jQuery("#post").serializeArray();
439
+ params.push( {name: 'action', value: 'save_campaign_preview' });
440
+
441
+ jQuery.ajax({
442
+ type: 'POST',
443
+ async: false,
444
+ url: icegram_writepanel_params.ajax_url,
445
+ data: params,
446
+ success: function(response) {
447
+ if (response != '') {
448
+ window.open(response, 'preview_window');
449
+ }
450
+ }
451
+ });
452
+ });
453
+ //add get more themes link
454
+ jQuery('.campaign_data, #message-settings').find('.message_theme').append('<option value="ig_get_more_theme" class="ig_get_more">Get more themes</option>');
455
+ jQuery('.campaign_data, #message-settings').find('.message_animation').append('<option value="ig_get_more_animation" class="ig_get_more">Get more Animations</option>');
456
+
457
+ jQuery('.campaign_data, #message-settings').on('change' ,'.message_theme, .message_animation' ,function(){
458
+ if(jQuery(this).val() == 'ig_get_more_theme'){
459
+ window.open('https://www.icegram.com/product-category/themes-addons/?utm_source=icegram&utm_medium=admin&utm_campaign=theme_packs');
460
+ }
461
+ if(jQuery(this).val() == 'ig_get_more_animation'){
462
+ window.open('https://www.icegram.com/addons/icegram-animation-pack/?utm_source=icegram&utm_medium=admin&utm_campaign=animation_pack');
463
+ }
464
+ });
465
+ jQuery("select.icegram_chosen_page").chosen({
466
+ disable_search_threshold: 10
467
+ });
468
+
469
+ jQuery('input#users_logged_in, input#users_all ,input#users_not_logged_in').on('change', function() {
470
+ if (jQuery(this).val() == 'logged_in') {
471
+ jQuery('select#users_roles').parent('p').show();
472
+ jQuery('#users_roles_chosen').find('input').trigger('click');
473
+ }else{
474
+ jQuery('select#users_roles').parent('p').hide();
475
+ }
476
+ });
477
+
478
+ jQuery('.schedule_rule').on('change', function() {
479
+ if (jQuery(this).attr('id') == "when_schedule") {
480
+ jQuery('#date_picker').show();
481
+ } else {
482
+ jQuery('#date_picker').hide();
483
+ }
484
+ });
485
+
486
+ jQuery('input#where_other_page').on('change', function() {
487
+ jQuery('select#where_page_id').parent('p').slideToggle();
488
+ if (jQuery(this).is(':checked')) {
489
+ jQuery('#where_page_id_chosen').find('input').trigger('click');
490
+ }
491
+ });
492
+ jQuery('input#where_sitewide').on('change', function() {
493
+ jQuery('select#exclude_page_id').parent('p').slideToggle();
494
+ });
495
+ jQuery('input#where_local_url').on('change', function() {
496
+ jQuery('.local_url').slideToggle();
497
+ });
498
+
499
+ jQuery('.date-picker').datepicker({
500
+ dateFormat: 'yy-mm-dd',
501
+ defaultDate: 0,
502
+ showOtherMonths: true,
503
+ selectOtherMonths: true,
504
+ changeMonth: true,
505
+ changeYear: true,
506
+ showButtonPanel: false,
507
+ beforeShow: function(input, inst) {
508
+ jQuery('#ui-datepicker-div').addClass('ig-date-picker');
509
+ }
510
+ });
511
+
512
+ jQuery('.campaign_target_rules').on('focusout', 'input.url_input_field', function() {
513
+ var url = this;
514
+ jQuery(url).parent().find('span#valid-field').removeClass('error');
515
+ if(jQuery(url).data("option") !== 'undefine' && jQuery(url).data("option") == 'local_url' && jQuery(url).val() != '*'){
516
+ var url_val = url.value;
517
+ if(url_val.indexOf(home_url) < 0){
518
+ jQuery(url).val(home_url + url_val);
519
+ return;
520
+ }
521
+ }
522
+ });
523
+ });
assets/js/ajax-chosen.jquery.min.js ADDED
@@ -0,0 +1,2 @@
 
 
1
+ // Generated by CoffeeScript 1.3.1
2
+ (function(e){return e.fn.ajaxChosen=function(t,n){var r,i,s,o;t==null&&(t={});n==null&&(n=function(){});i={minTermLength:3,afterTypeDelay:500,jsonTermKey:"term"};o=this;r=null;s=e.extend({},i,t);this.chosen();return this.each(function(){return e(this).next(".chosen-container").find(".search-field > input, .chosen-search > input").bind("keyup",function(){var t,i,u,a;a=e.trim(e(this).attr("value"));i=a.length<s.minTermLength?"Keep typing...":"Looking for '"+a+"'";o.next(".chosen-container").find(".no-results").text(i);if(a===e(this).data("prevVal"))return!1;e(this).data("prevVal",a);this.timer&&clearTimeout(this.timer);if(a.length<s.minTermLength)return!1;t=e(this);s.data==null&&(s.data={});s.data[s.jsonTermKey]=a;s.dataCallback!=null&&(s.data=s.dataCallback(s.data));u=s.success;s.success=function(r){var i,s;if(r==null)return;s=[];o.find("option").each(function(){return e(this).is(":selected")?s.push(e(this).val()+"-"+e(this).text()):e(this).remove()});i=n(r);e.each(i,function(t,n){if(e.inArray(t+"-"+n,s)===-1)return e("<option />").attr("value",t).html(n).appendTo(o)});o.trigger("chosen:updated");u!=null&&u(r);t.attr("value",a);return t.css("width","auto")};return this.timer=setTimeout(function(){r&&r.abort();return r=e.ajax(s)},s.afterTypeDelay)})})}})(jQuery);
assets/js/chosen.jquery.min.js ADDED
@@ -0,0 +1,2 @@
 
 
1
+ /* Chosen v1.1.0 | (c) 2011-2013 by Harvest | MIT License, https://github.com/harvesthq/chosen/blob/master/LICENSE.md */
2
+ !function(){var a,AbstractChosen,Chosen,SelectParser,b,c={}.hasOwnProperty,d=function(a,b){function d(){this.constructor=a}for(var e in b)c.call(b,e)&&(a[e]=b[e]);return d.prototype=b.prototype,a.prototype=new d,a.__super__=b.prototype,a};SelectParser=function(){function SelectParser(){this.options_index=0,this.parsed=[]}return SelectParser.prototype.add_node=function(a){return"OPTGROUP"===a.nodeName.toUpperCase()?this.add_group(a):this.add_option(a)},SelectParser.prototype.add_group=function(a){var b,c,d,e,f,g;for(b=this.parsed.length,this.parsed.push({array_index:b,group:!0,label:this.escapeExpression(a.label),children:0,disabled:a.disabled}),f=a.childNodes,g=[],d=0,e=f.length;e>d;d++)c=f[d],g.push(this.add_option(c,b,a.disabled));return g},SelectParser.prototype.add_option=function(a,b,c){return"OPTION"===a.nodeName.toUpperCase()?(""!==a.text?(null!=b&&(this.parsed[b].children+=1),this.parsed.push({array_index:this.parsed.length,options_index:this.options_index,value:a.value,text:a.text,html:a.innerHTML,selected:a.selected,disabled:c===!0?c:a.disabled,group_array_index:b,classes:a.className,style:a.style.cssText})):this.parsed.push({array_index:this.parsed.length,options_index:this.options_index,empty:!0}),this.options_index+=1):void 0},SelectParser.prototype.escapeExpression=function(a){var b,c;return null==a||a===!1?"":/[\&\<\>\"\'\`]/.test(a)?(b={"<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;"},c=/&(?!\w+;)|[\<\>\"\'\`]/g,a.replace(c,function(a){return b[a]||"&amp;"})):a},SelectParser}(),SelectParser.select_to_array=function(a){var b,c,d,e,f;for(c=new SelectParser,f=a.childNodes,d=0,e=f.length;e>d;d++)b=f[d],c.add_node(b);return c.parsed},AbstractChosen=function(){function AbstractChosen(a,b){this.form_field=a,this.options=null!=b?b:{},AbstractChosen.browser_is_supported()&&(this.is_multiple=this.form_field.multiple,this.set_default_text(),this.set_default_values(),this.setup(),this.set_up_html(),this.register_observers())}return AbstractChosen.prototype.set_default_values=function(){var a=this;return this.click_test_action=function(b){return a.test_active_click(b)},this.activate_action=function(b){return a.activate_field(b)},this.active_field=!1,this.mouse_on_container=!1,this.results_showing=!1,this.result_highlighted=null,this.allow_single_deselect=null!=this.options.allow_single_deselect&&null!=this.form_field.options[0]&&""===this.form_field.options[0].text?this.options.allow_single_deselect:!1,this.disable_search_threshold=this.options.disable_search_threshold||0,this.disable_search=this.options.disable_search||!1,this.enable_split_word_search=null!=this.options.enable_split_word_search?this.options.enable_split_word_search:!0,this.group_search=null!=this.options.group_search?this.options.group_search:!0,this.search_contains=this.options.search_contains||!1,this.single_backstroke_delete=null!=this.options.single_backstroke_delete?this.options.single_backstroke_delete:!0,this.max_selected_options=this.options.max_selected_options||1/0,this.inherit_select_classes=this.options.inherit_select_classes||!1,this.display_selected_options=null!=this.options.display_selected_options?this.options.display_selected_options:!0,this.display_disabled_options=null!=this.options.display_disabled_options?this.options.display_disabled_options:!0},AbstractChosen.prototype.set_default_text=function(){return this.default_text=this.form_field.getAttribute("data-placeholder")?this.form_field.getAttribute("data-placeholder"):this.is_multiple?this.options.placeholder_text_multiple||this.options.placeholder_text||AbstractChosen.default_multiple_text:this.options.placeholder_text_single||this.options.placeholder_text||AbstractChosen.default_single_text,this.results_none_found=this.form_field.getAttribute("data-no_results_text")||this.options.no_results_text||AbstractChosen.default_no_result_text},AbstractChosen.prototype.mouse_enter=function(){return this.mouse_on_container=!0},AbstractChosen.prototype.mouse_leave=function(){return this.mouse_on_container=!1},AbstractChosen.prototype.input_focus=function(){var a=this;if(this.is_multiple){if(!this.active_field)return setTimeout(function(){return a.container_mousedown()},50)}else if(!this.active_field)return this.activate_field()},AbstractChosen.prototype.input_blur=function(){var a=this;return this.mouse_on_container?void 0:(this.active_field=!1,setTimeout(function(){return a.blur_test()},100))},AbstractChosen.prototype.results_option_build=function(a){var b,c,d,e,f;for(b="",f=this.results_data,d=0,e=f.length;e>d;d++)c=f[d],b+=c.group?this.result_add_group(c):this.result_add_option(c),(null!=a?a.first:void 0)&&(c.selected&&this.is_multiple?this.choice_build(c):c.selected&&!this.is_multiple&&this.single_set_selected_text(c.text));return b},AbstractChosen.prototype.result_add_option=function(a){var b,c;return a.search_match?this.include_option_in_results(a)?(b=[],a.disabled||a.selected&&this.is_multiple||b.push("active-result"),!a.disabled||a.selected&&this.is_multiple||b.push("disabled-result"),a.selected&&b.push("result-selected"),null!=a.group_array_index&&b.push("group-option"),""!==a.classes&&b.push(a.classes),c=document.createElement("li"),c.className=b.join(" "),c.style.cssText=a.style,c.setAttribute("data-option-array-index",a.array_index),c.innerHTML=a.search_text,this.outerHTML(c)):"":""},AbstractChosen.prototype.result_add_group=function(a){var b;return a.search_match||a.group_match?a.active_options>0?(b=document.createElement("li"),b.className="group-result",b.innerHTML=a.search_text,this.outerHTML(b)):"":""},AbstractChosen.prototype.results_update_field=function(){return this.set_default_text(),this.is_multiple||this.results_reset_cleanup(),this.result_clear_highlight(),this.results_build(),this.results_showing?this.winnow_results():void 0},AbstractChosen.prototype.reset_single_select_options=function(){var a,b,c,d,e;for(d=this.results_data,e=[],b=0,c=d.length;c>b;b++)a=d[b],a.selected?e.push(a.selected=!1):e.push(void 0);return e},AbstractChosen.prototype.results_toggle=function(){return this.results_showing?this.results_hide():this.results_show()},AbstractChosen.prototype.results_search=function(){return this.results_showing?this.winnow_results():this.results_show()},AbstractChosen.prototype.winnow_results=function(){var a,b,c,d,e,f,g,h,i,j,k,l,m;for(this.no_results_clear(),e=0,g=this.get_search_text(),a=g.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),d=this.search_contains?"":"^",c=new RegExp(d+a,"i"),j=new RegExp(a,"i"),m=this.results_data,k=0,l=m.length;l>k;k++)b=m[k],b.search_match=!1,f=null,this.include_option_in_results(b)&&(b.group&&(b.group_match=!1,b.active_options=0),null!=b.group_array_index&&this.results_data[b.group_array_index]&&(f=this.results_data[b.group_array_index],0===f.active_options&&f.search_match&&(e+=1),f.active_options+=1),(!b.group||this.group_search)&&(b.search_text=b.group?b.label:b.html,b.search_match=this.search_string_match(b.search_text,c),b.search_match&&!b.group&&(e+=1),b.search_match?(g.length&&(h=b.search_text.search(j),i=b.search_text.substr(0,h+g.length)+"</em>"+b.search_text.substr(h+g.length),b.search_text=i.substr(0,h)+"<em>"+i.substr(h)),null!=f&&(f.group_match=!0)):null!=b.group_array_index&&this.results_data[b.group_array_index].search_match&&(b.search_match=!0)));return this.result_clear_highlight(),1>e&&g.length?(this.update_results_content(""),this.no_results(g)):(this.update_results_content(this.results_option_build()),this.winnow_results_set_highlight())},AbstractChosen.prototype.search_string_match=function(a,b){var c,d,e,f;if(b.test(a))return!0;if(this.enable_split_word_search&&(a.indexOf(" ")>=0||0===a.indexOf("["))&&(d=a.replace(/\[|\]/g,"").split(" "),d.length))for(e=0,f=d.length;f>e;e++)if(c=d[e],b.test(c))return!0},AbstractChosen.prototype.choices_count=function(){var a,b,c,d;if(null!=this.selected_option_count)return this.selected_option_count;for(this.selected_option_count=0,d=this.form_field.options,b=0,c=d.length;c>b;b++)a=d[b],a.selected&&(this.selected_option_count+=1);return this.selected_option_count},AbstractChosen.prototype.choices_click=function(a){return a.preventDefault(),this.results_showing||this.is_disabled?void 0:this.results_show()},AbstractChosen.prototype.keyup_checker=function(a){var b,c;switch(b=null!=(c=a.which)?c:a.keyCode,this.search_field_scale(),b){case 8:if(this.is_multiple&&this.backstroke_length<1&&this.choices_count()>0)return this.keydown_backstroke();if(!this.pending_backstroke)return this.result_clear_highlight(),this.results_search();break;case 13:if(a.preventDefault(),this.results_showing)return this.result_select(a);break;case 27:return this.results_showing&&this.results_hide(),!0;case 9:case 38:case 40:case 16:case 91:case 17:break;default:return this.results_search()}},AbstractChosen.prototype.clipboard_event_checker=function(){var a=this;return setTimeout(function(){return a.results_search()},50)},AbstractChosen.prototype.container_width=function(){return null!=this.options.width?this.options.width:""+this.form_field.offsetWidth+"px"},AbstractChosen.prototype.include_option_in_results=function(a){return this.is_multiple&&!this.display_selected_options&&a.selected?!1:!this.display_disabled_options&&a.disabled?!1:a.empty?!1:!0},AbstractChosen.prototype.search_results_touchstart=function(a){return this.touch_started=!0,this.search_results_mouseover(a)},AbstractChosen.prototype.search_results_touchmove=function(a){return this.touch_started=!1,this.search_results_mouseout(a)},AbstractChosen.prototype.search_results_touchend=function(a){return this.touch_started?this.search_results_mouseup(a):void 0},AbstractChosen.prototype.outerHTML=function(a){var b;return a.outerHTML?a.outerHTML:(b=document.createElement("div"),b.appendChild(a),b.innerHTML)},AbstractChosen.browser_is_supported=function(){return"Microsoft Internet Explorer"===window.navigator.appName?document.documentMode>=8:/iP(od|hone)/i.test(window.navigator.userAgent)?!1:/Android/i.test(window.navigator.userAgent)&&/Mobile/i.test(window.navigator.userAgent)?!1:!0},AbstractChosen.default_multiple_text="Select Some Options",AbstractChosen.default_single_text="Select an Option",AbstractChosen.default_no_result_text="No results match",AbstractChosen}(),a=jQuery,a.fn.extend({chosen:function(b){return AbstractChosen.browser_is_supported()?this.each(function(){var c,d;c=a(this),d=c.data("chosen"),"destroy"===b&&d?d.destroy():d||c.data("chosen",new Chosen(this,b))}):this}}),Chosen=function(c){function Chosen(){return b=Chosen.__super__.constructor.apply(this,arguments)}return d(Chosen,c),Chosen.prototype.setup=function(){return this.form_field_jq=a(this.form_field),this.current_selectedIndex=this.form_field.selectedIndex,this.is_rtl=this.form_field_jq.hasClass("chosen-rtl")},Chosen.prototype.set_up_html=function(){var b,c;return b=["chosen-container"],b.push("chosen-container-"+(this.is_multiple?"multi":"single")),this.inherit_select_classes&&this.form_field.className&&b.push(this.form_field.className),this.is_rtl&&b.push("chosen-rtl"),c={"class":b.join(" "),style:"width: "+this.container_width()+";",title:this.form_field.title},this.form_field.id.length&&(c.id=this.form_field.id.replace(/[^\w]/g,"_")+"_chosen"),this.container=a("<div />",c),this.is_multiple?this.container.html('<ul class="chosen-choices"><li class="search-field"><input type="text" value="'+this.default_text+'" class="default" autocomplete="off" style="width:25px;" /></li></ul><div class="chosen-drop"><ul class="chosen-results"></ul></div>'):this.container.html('<a class="chosen-single chosen-default" tabindex="-1"><span>'+this.default_text+'</span><div><b></b></div></a><div class="chosen-drop"><div class="chosen-search"><input type="text" autocomplete="off" /></div><ul class="chosen-results"></ul></div>'),this.form_field_jq.hide().after(this.container),this.dropdown=this.container.find("div.chosen-drop").first(),this.search_field=this.container.find("input").first(),this.search_results=this.container.find("ul.chosen-results").first(),this.search_field_scale(),this.search_no_results=this.container.find("li.no-results").first(),this.is_multiple?(this.search_choices=this.container.find("ul.chosen-choices").first(),this.search_container=this.container.find("li.search-field").first()):(this.search_container=this.container.find("div.chosen-search").first(),this.selected_item=this.container.find(".chosen-single").first()),this.results_build(),this.set_tab_index(),this.set_label_behavior(),this.form_field_jq.trigger("chosen:ready",{chosen:this})},Chosen.prototype.register_observers=function(){var a=this;return this.container.bind("mousedown.chosen",function(b){a.container_mousedown(b)}),this.container.bind("mouseup.chosen",function(b){a.container_mouseup(b)}),this.container.bind("mouseenter.chosen",function(b){a.mouse_enter(b)}),this.container.bind("mouseleave.chosen",function(b){a.mouse_leave(b)}),this.search_results.bind("mouseup.chosen",function(b){a.search_results_mouseup(b)}),this.search_results.bind("mouseover.chosen",function(b){a.search_results_mouseover(b)}),this.search_results.bind("mouseout.chosen",function(b){a.search_results_mouseout(b)}),this.search_results.bind("mousewheel.chosen DOMMouseScroll.chosen",function(b){a.search_results_mousewheel(b)}),this.search_results.bind("touchstart.chosen",function(b){a.search_results_touchstart(b)}),this.search_results.bind("touchmove.chosen",function(b){a.search_results_touchmove(b)}),this.search_results.bind("touchend.chosen",function(b){a.search_results_touchend(b)}),this.form_field_jq.bind("chosen:updated.chosen",function(b){a.results_update_field(b)}),this.form_field_jq.bind("chosen:activate.chosen",function(b){a.activate_field(b)}),this.form_field_jq.bind("chosen:open.chosen",function(b){a.container_mousedown(b)}),this.form_field_jq.bind("chosen:close.chosen",function(b){a.input_blur(b)}),this.search_field.bind("blur.chosen",function(b){a.input_blur(b)}),this.search_field.bind("keyup.chosen",function(b){a.keyup_checker(b)}),this.search_field.bind("keydown.chosen",function(b){a.keydown_checker(b)}),this.search_field.bind("focus.chosen",function(b){a.input_focus(b)}),this.search_field.bind("cut.chosen",function(b){a.clipboard_event_checker(b)}),this.search_field.bind("paste.chosen",function(b){a.clipboard_event_checker(b)}),this.is_multiple?this.search_choices.bind("click.chosen",function(b){a.choices_click(b)}):this.container.bind("click.chosen",function(a){a.preventDefault()})},Chosen.prototype.destroy=function(){return a(this.container[0].ownerDocument).unbind("click.chosen",this.click_test_action),this.search_field[0].tabIndex&&(this.form_field_jq[0].tabIndex=this.search_field[0].tabIndex),this.container.remove(),this.form_field_jq.removeData("chosen"),this.form_field_jq.show()},Chosen.prototype.search_field_disabled=function(){return this.is_disabled=this.form_field_jq[0].disabled,this.is_disabled?(this.container.addClass("chosen-disabled"),this.search_field[0].disabled=!0,this.is_multiple||this.selected_item.unbind("focus.chosen",this.activate_action),this.close_field()):(this.container.removeClass("chosen-disabled"),this.search_field[0].disabled=!1,this.is_multiple?void 0:this.selected_item.bind("focus.chosen",this.activate_action))},Chosen.prototype.container_mousedown=function(b){return this.is_disabled||(b&&"mousedown"===b.type&&!this.results_showing&&b.preventDefault(),null!=b&&a(b.target).hasClass("search-choice-close"))?void 0:(this.active_field?this.is_multiple||!b||a(b.target)[0]!==this.selected_item[0]&&!a(b.target).parents("a.chosen-single").length||(b.preventDefault(),this.results_toggle()):(this.is_multiple&&this.search_field.val(""),a(this.container[0].ownerDocument).bind("click.chosen",this.click_test_action),this.results_show()),this.activate_field())},Chosen.prototype.container_mouseup=function(a){return"ABBR"!==a.target.nodeName||this.is_disabled?void 0:this.results_reset(a)},Chosen.prototype.search_results_mousewheel=function(a){var b;return a.originalEvent&&(b=-a.originalEvent.wheelDelta||a.originalEvent.detail),null!=b?(a.preventDefault(),"DOMMouseScroll"===a.type&&(b=40*b),this.search_results.scrollTop(b+this.search_results.scrollTop())):void 0},Chosen.prototype.blur_test=function(){return!this.active_field&&this.container.hasClass("chosen-container-active")?this.close_field():void 0},Chosen.prototype.close_field=function(){return a(this.container[0].ownerDocument).unbind("click.chosen",this.click_test_action),this.active_field=!1,this.results_hide(),this.container.removeClass("chosen-container-active"),this.clear_backstroke(),this.show_search_field_default(),this.search_field_scale()},Chosen.prototype.activate_field=function(){return this.container.addClass("chosen-container-active"),this.active_field=!0,this.search_field.val(this.search_field.val()),this.search_field.focus()},Chosen.prototype.test_active_click=function(b){var c;return c=a(b.target).closest(".chosen-container"),c.length&&this.container[0]===c[0]?this.active_field=!0:this.close_field()},Chosen.prototype.results_build=function(){return this.parsing=!0,this.selected_option_count=null,this.results_data=SelectParser.select_to_array(this.form_field),this.is_multiple?this.search_choices.find("li.search-choice").remove():this.is_multiple||(this.single_set_selected_text(),this.disable_search||this.form_field.options.length<=this.disable_search_threshold?(this.search_field[0].readOnly=!0,this.container.addClass("chosen-container-single-nosearch")):(this.search_field[0].readOnly=!1,this.container.removeClass("chosen-container-single-nosearch"))),this.update_results_content(this.results_option_build({first:!0})),this.search_field_disabled(),this.show_search_field_default(),this.search_field_scale(),this.parsing=!1},Chosen.prototype.result_do_highlight=function(a){var b,c,d,e,f;if(a.length){if(this.result_clear_highlight(),this.result_highlight=a,this.result_highlight.addClass("highlighted"),d=parseInt(this.search_results.css("maxHeight"),10),f=this.search_results.scrollTop(),e=d+f,c=this.result_highlight.position().top+this.search_results.scrollTop(),b=c+this.result_highlight.outerHeight(),b>=e)return this.search_results.scrollTop(b-d>0?b-d:0);if(f>c)return this.search_results.scrollTop(c)}},Chosen.prototype.result_clear_highlight=function(){return this.result_highlight&&this.result_highlight.removeClass("highlighted"),this.result_highlight=null},Chosen.prototype.results_show=function(){return this.is_multiple&&this.max_selected_options<=this.choices_count()?(this.form_field_jq.trigger("chosen:maxselected",{chosen:this}),!1):(this.container.addClass("chosen-with-drop"),this.results_showing=!0,this.search_field.focus(),this.search_field.val(this.search_field.val()),this.winnow_results(),this.form_field_jq.trigger("chosen:showing_dropdown",{chosen:this}))},Chosen.prototype.update_results_content=function(a){return this.search_results.html(a)},Chosen.prototype.results_hide=function(){return this.results_showing&&(this.result_clear_highlight(),this.container.removeClass("chosen-with-drop"),this.form_field_jq.trigger("chosen:hiding_dropdown",{chosen:this})),this.results_showing=!1},Chosen.prototype.set_tab_index=function(){var a;return this.form_field.tabIndex?(a=this.form_field.tabIndex,this.form_field.tabIndex=-1,this.search_field[0].tabIndex=a):void 0},Chosen.prototype.set_label_behavior=function(){var b=this;return this.form_field_label=this.form_field_jq.parents("label"),!this.form_field_label.length&&this.form_field.id.length&&(this.form_field_label=a("label[for='"+this.form_field.id+"']")),this.form_field_label.length>0?this.form_field_label.bind("click.chosen",function(a){return b.is_multiple?b.container_mousedown(a):b.activate_field()}):void 0},Chosen.prototype.show_search_field_default=function(){return this.is_multiple&&this.choices_count()<1&&!this.active_field?(this.search_field.val(this.default_text),this.search_field.addClass("default")):(this.search_field.val(""),this.search_field.removeClass("default"))},Chosen.prototype.search_results_mouseup=function(b){var c;return c=a(b.target).hasClass("active-result")?a(b.target):a(b.target).parents(".active-result").first(),c.length?(this.result_highlight=c,this.result_select(b),this.search_field.focus()):void 0},Chosen.prototype.search_results_mouseover=function(b){var c;return c=a(b.target).hasClass("active-result")?a(b.target):a(b.target).parents(".active-result").first(),c?this.result_do_highlight(c):void 0},Chosen.prototype.search_results_mouseout=function(b){return a(b.target).hasClass("active-result")?this.result_clear_highlight():void 0},Chosen.prototype.choice_build=function(b){var c,d,e=this;return c=a("<li />",{"class":"search-choice"}).html("<span>"+b.html+"</span>"),b.disabled?c.addClass("search-choice-disabled"):(d=a("<a />",{"class":"search-choice-close","data-option-array-index":b.array_index}),d.bind("click.chosen",function(a){return e.choice_destroy_link_click(a)}),c.append(d)),this.search_container.before(c)},Chosen.prototype.choice_destroy_link_click=function(b){return b.preventDefault(),b.stopPropagation(),this.is_disabled?void 0:this.choice_destroy(a(b.target))},Chosen.prototype.choice_destroy=function(a){return this.result_deselect(a[0].getAttribute("data-option-array-index"))?(this.show_search_field_default(),this.is_multiple&&this.choices_count()>0&&this.search_field.val().length<1&&this.results_hide(),a.parents("li").first().remove(),this.search_field_scale()):void 0},Chosen.prototype.results_reset=function(){return this.reset_single_select_options(),this.form_field.options[0].selected=!0,this.single_set_selected_text(),this.show_search_field_default(),this.results_reset_cleanup(),this.form_field_jq.trigger("change"),this.active_field?this.results_hide():void 0},Chosen.prototype.results_reset_cleanup=function(){return this.current_selectedIndex=this.form_field.selectedIndex,this.selected_item.find("abbr").remove()},Chosen.prototype.result_select=function(a){var b,c;return this.result_highlight?(b=this.result_highlight,this.result_clear_highlight(),this.is_multiple&&this.max_selected_options<=this.choices_count()?(this.form_field_jq.trigger("chosen:maxselected",{chosen:this}),!1):(this.is_multiple?b.removeClass("active-result"):this.reset_single_select_options(),c=this.results_data[b[0].getAttribute("data-option-array-index")],c.selected=!0,this.form_field.options[c.options_index].selected=!0,this.selected_option_count=null,this.is_multiple?this.choice_build(c):this.single_set_selected_text(c.text),(a.metaKey||a.ctrlKey)&&this.is_multiple||this.results_hide(),this.search_field.val(""),(this.is_multiple||this.form_field.selectedIndex!==this.current_selectedIndex)&&this.form_field_jq.trigger("change",{selected:this.form_field.options[c.options_index].value}),this.current_selectedIndex=this.form_field.selectedIndex,this.search_field_scale())):void 0},Chosen.prototype.single_set_selected_text=function(a){return null==a&&(a=this.default_text),a===this.default_text?this.selected_item.addClass("chosen-default"):(this.single_deselect_control_build(),this.selected_item.removeClass("chosen-default")),this.selected_item.find("span").text(a)},Chosen.prototype.result_deselect=function(a){var b;return b=this.results_data[a],this.form_field.options[b.options_index].disabled?!1:(b.selected=!1,this.form_field.options[b.options_index].selected=!1,this.selected_option_count=null,this.result_clear_highlight(),this.results_showing&&this.winnow_results(),this.form_field_jq.trigger("change",{deselected:this.form_field.options[b.options_index].value}),this.search_field_scale(),!0)},Chosen.prototype.single_deselect_control_build=function(){return this.allow_single_deselect?(this.selected_item.find("abbr").length||this.selected_item.find("span").first().after('<abbr class="search-choice-close"></abbr>'),this.selected_item.addClass("chosen-single-with-deselect")):void 0},Chosen.prototype.get_search_text=function(){return this.search_field.val()===this.default_text?"":a("<div/>").text(a.trim(this.search_field.val())).html()},Chosen.prototype.winnow_results_set_highlight=function(){var a,b;return b=this.is_multiple?[]:this.search_results.find(".result-selected.active-result"),a=b.length?b.first():this.search_results.find(".active-result").first(),null!=a?this.result_do_highlight(a):void 0},Chosen.prototype.no_results=function(b){var c;return c=a('<li class="no-results">'+this.results_none_found+' "<span></span>"</li>'),c.find("span").first().html(b),this.search_results.append(c),this.form_field_jq.trigger("chosen:no_results",{chosen:this})},Chosen.prototype.no_results_clear=function(){return this.search_results.find(".no-results").remove()},Chosen.prototype.keydown_arrow=function(){var a;return this.results_showing&&this.result_highlight?(a=this.result_highlight.nextAll("li.active-result").first())?this.result_do_highlight(a):void 0:this.results_show()},Chosen.prototype.keyup_arrow=function(){var a;return this.results_showing||this.is_multiple?this.result_highlight?(a=this.result_highlight.prevAll("li.active-result"),a.length?this.result_do_highlight(a.first()):(this.choices_count()>0&&this.results_hide(),this.result_clear_highlight())):void 0:this.results_show()},Chosen.prototype.keydown_backstroke=function(){var a;return this.pending_backstroke?(this.choice_destroy(this.pending_backstroke.find("a").first()),this.clear_backstroke()):(a=this.search_container.siblings("li.search-choice").last(),a.length&&!a.hasClass("search-choice-disabled")?(this.pending_backstroke=a,this.single_backstroke_delete?this.keydown_backstroke():this.pending_backstroke.addClass("search-choice-focus")):void 0)},Chosen.prototype.clear_backstroke=function(){return this.pending_backstroke&&this.pending_backstroke.removeClass("search-choice-focus"),this.pending_backstroke=null},Chosen.prototype.keydown_checker=function(a){var b,c;switch(b=null!=(c=a.which)?c:a.keyCode,this.search_field_scale(),8!==b&&this.pending_backstroke&&this.clear_backstroke(),b){case 8:this.backstroke_length=this.search_field.val().length;break;case 9:this.results_showing&&!this.is_multiple&&this.result_select(a),this.mouse_on_container=!1;break;case 13:a.preventDefault();break;case 38:a.preventDefault(),this.keyup_arrow();break;case 40:a.preventDefault(),this.keydown_arrow()}},Chosen.prototype.search_field_scale=function(){var b,c,d,e,f,g,h,i,j;if(this.is_multiple){for(d=0,h=0,f="position:absolute; left: -1000px; top: -1000px; display:none;",g=["font-size","font-style","font-weight","font-family","line-height","text-transform","letter-spacing"],i=0,j=g.length;j>i;i++)e=g[i],f+=e+":"+this.search_field.css(e)+";";return b=a("<div />",{style:f}),b.text(this.search_field.val()),a("body").append(b),h=b.width()+25,b.remove(),c=this.container.outerWidth(),h>c-10&&(h=c-10),this.search_field.css({width:h+"px"})}},Chosen}(AbstractChosen)}.call(this);
assets/js/gallery.js ADDED
@@ -0,0 +1,2142 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* global _wpThemeSettings, confirm */
2
+ window.wp = window.wp || {};
3
+
4
+ ( function($) {
5
+
6
+ // Set up our namespace...
7
+ var themes, l10n;
8
+ themes = wp.themes = wp.themes || {};
9
+ // Store the theme data and settings for organized and quick access
10
+ // themes.data.settings, themes.data.themes, themes.data.l10n
11
+ themes.data = _wpThemeSettings;
12
+ l10n = themes.data.l10n;
13
+
14
+ // Shortcut for isInstall check
15
+ // themes.isInstall = !! themes.data.settings.isInstall;
16
+ themes.isInstall = themes.data.settings.isInstall;
17
+ // themes.url = 'https://www.icegram.com/gallery/wp-json/wp/v2/galleryitem';
18
+ // Setup app structure
19
+ _.extend( themes, { model: {}, view: {}, routes: {}, router: {}, template: wp.template });
20
+
21
+ themes.Model = Backbone.Model.extend({
22
+ // Adds attributes to the default data coming through the .org themes api
23
+ // Map `id` to `slug` for shared code
24
+ initialize: function() {
25
+ var description;
26
+ // If theme is already installed, set an attribute.
27
+ if ( _.indexOf( themes.data.installedThemes, this.get( 'slug' ) ) !== -1 ) {
28
+ this.set({ installed: true });
29
+ }
30
+ // Set the attributes
31
+ this.set({
32
+ // slug is for installation, id is for existing.
33
+ // id: this.get( 'slug' ) || this.get( 'id' )
34
+ id: this.get( 'id' )
35
+ });
36
+
37
+ // Map `section.description` to `description`
38
+ // as the API sometimes returns it differently
39
+ if ( this.has( 'sections' ) ) {
40
+ description = this.get( 'sections' ).description;
41
+ this.set({ description: description });
42
+ }
43
+ // added plan name and category name arrays..
44
+ if( this.has( 'plan' ) ) {
45
+ this.set({plan_name: planCodeMap(this.get( 'plan' ))});
46
+ }
47
+
48
+ }
49
+ });
50
+
51
+ // Main view controller for themes.php
52
+ // Unifies and renders all available views
53
+ themes.view.Appearance = wp.Backbone.View.extend({
54
+
55
+ el: '.wrap .theme-browser',
56
+ events: {
57
+ 'click .filter-links li > a': 'onSort'
58
+ },
59
+ window: $( window ),
60
+ // Pagination instance
61
+ page: 0,
62
+ activeClass: 'current',
63
+ // Sets up a throttler for binding to 'scroll'
64
+ initialize: function( options ) {
65
+ // Scroller checks how far the scroll position is
66
+ _.bindAll( this, 'scroller' );
67
+ this.SearchView = options.SearchView ? options.SearchView : themes.view.Search;
68
+
69
+ // Bind to the scroll event and throttle
70
+ // the results from this.scroller
71
+ this.window.bind( 'scroll', _.throttle( this.scroller, 300 ) );
72
+ },
73
+
74
+ // Main render control
75
+ render: function() {
76
+ // Setup the main theme view
77
+ // with the current theme collection
78
+
79
+ this.view = new themes.view.Themes({
80
+ collection: this.collection,
81
+ parent: this
82
+ });
83
+
84
+ // Render search form.
85
+ this.search();
86
+
87
+
88
+ // Render and append
89
+ this.view.render();
90
+ // this.$el.empty().append( this.view.el ).addClass( 'rendered' );
91
+ this.$el.append( this.view.el ).addClass( 'rendered' );
92
+ this.$el.append( '<br class="clear"/>' );
93
+ },
94
+ // Handles all the rendering of the public theme directory
95
+ browse: function( section ) {
96
+ // Create a new collection with the proper theme data
97
+ // for each section
98
+ if(this.collection.length <= 0){
99
+ this.collection.query( { browse: section } );
100
+ }
101
+ if(section == 'featured' || section == 'all'){
102
+ this.collection.query( { browse: section } );
103
+ }else{
104
+ var filtered;
105
+ filtered = this.collection.filter(function (item) {
106
+ var inverted = _.invert(item.attributes.tags) ;
107
+ if(inverted.hasOwnProperty(section)){
108
+ return true;
109
+ }
110
+ });
111
+
112
+ if(filtered){
113
+
114
+ this.collection.reset(filtered);
115
+ var count = this.collection.length;
116
+ }
117
+ }
118
+ this.collection.trigger( 'update' );
119
+ this.collection.trigger( 'query:success', count );
120
+ },
121
+
122
+ // Sorting navigation
123
+ onSort: function( event ) {
124
+ var $el = $( event.target ),
125
+ sort = $el.data( 'sort' );
126
+ event.preventDefault();
127
+
128
+ $( 'body' ).removeClass( 'filters-applied show-filters' );
129
+
130
+ // Bail if this is already active
131
+ if ( $el.hasClass( this.activeClass ) ) {
132
+ return;
133
+ }
134
+
135
+ this.collection.reset( themes.data.themes, { silent: true } );
136
+
137
+ this.sort( sort );
138
+
139
+ // Trigger a router.naviagte update
140
+ themes.router.navigate( themes.router.baseUrl( themes.router.browsePath + sort ) );
141
+ },
142
+
143
+ sort: function( sort ) {
144
+ this.clearSearch();
145
+
146
+ $( '.filter-links li > a, .theme-filter' ).removeClass( this.activeClass );
147
+ $( '[data-sort="' + sort + '"]' ).addClass( this.activeClass );
148
+
149
+ if ( 'favorites' === sort ) {
150
+ $ ( 'body' ).addClass( 'show-favorites-form' );
151
+ } else {
152
+ $ ( 'body' ).removeClass( 'show-favorites-form' );
153
+ }
154
+ // this.collection.reset( themes.data.themes, { silent: true } );
155
+ this.browse( sort );
156
+ },
157
+ clearSearch: function() {
158
+ $( '#wp-filter-search-input').val( '' );
159
+ },
160
+ // Defines search element container
161
+ searchContainer: $( '.search-form' ),
162
+
163
+ // Search input and view
164
+ // for current theme collection
165
+ search: function() {
166
+ var view,
167
+ self = this;
168
+ // Don't render the search if there is only one theme
169
+ if ( themes.data.themes.length === 1 ) {
170
+ return;
171
+ }
172
+
173
+ view = new this.SearchView({
174
+ collection: self.collection,
175
+ parent: this
176
+ });
177
+
178
+ // Render and append after screen title
179
+ view.render();
180
+ //
181
+ this.searchContainer
182
+ .append( $.parseHTML( '<label class="screen-reader-text" for="wp-filter-search-input">' + l10n.search + '</label>' ) )
183
+ .append( view.el );
184
+ },
185
+
186
+ // Checks when the user gets close to the bottom
187
+ // of the mage and triggers a theme:scroll event
188
+ scroller: function() {
189
+ var self = this,
190
+ bottom, threshold;
191
+ bottom = this.window.scrollTop() + self.window.height();
192
+ threshold = self.$el.offset().top + self.$el.outerHeight( false ) - self.window.height();
193
+ threshold = Math.round( threshold * 0.9 );
194
+
195
+ if ( bottom > threshold ) {
196
+ this.trigger( 'theme:scroll' );
197
+ }
198
+ }
199
+ });
200
+
201
+ // Set up the Collection for our theme data
202
+ // @has 'id' 'name' 'screenshot' 'author' 'authorURI' 'version' 'active' ...
203
+ themes.Collection = Backbone.Collection.extend({
204
+
205
+ model: themes.Model,
206
+
207
+ // Search terms
208
+ terms: '',
209
+
210
+ // Controls searching on the current theme collection
211
+ // and triggers an update event
212
+ doSearch: function( value ) {
213
+
214
+ // Don't do anything if we've already done this search
215
+ // Useful because the Search handler fires multiple times per keystroke
216
+ if ( this.terms === value ) {
217
+ return;
218
+ }
219
+
220
+ // Updates terms with the value passed
221
+ this.terms = value;
222
+
223
+ // If we have terms, run a search...
224
+ if ( this.terms.length > 0 ) {
225
+ this.search( this.terms );
226
+ }
227
+
228
+ // If search is blank, show all themes
229
+ // Useful for resetting the views when you clean the input
230
+ if ( this.terms === '' ) {
231
+
232
+ this.reset( themes.data.themes );
233
+ $( 'body' ).removeClass( 'no-results' );
234
+ }
235
+
236
+ // Trigger an 'update' event
237
+ this.trigger( 'update' );
238
+ },
239
+
240
+ // Performs a search within the collection
241
+ // @uses RegExp
242
+ search: function( term ) {
243
+
244
+ var match, results, haystack, name, description, author;
245
+
246
+ // Start with a full collection
247
+
248
+ this.reset( themes.data.themes, { silent: true } );
249
+
250
+ // Escape the term string for RegExp meta characters
251
+ term = term.replace( /[-\/\\^$*+?.()|[\]{}]/g, '\\$&' );
252
+
253
+ // Consider spaces as word delimiters and match the whole string
254
+ // so matching terms can be combined
255
+ term = term.replace( / /g, ')(?=.*' );
256
+ match = new RegExp( '^(?=.*' + term + ').+', 'i' );
257
+
258
+ // Find results
259
+ // _.filter and .test
260
+ results = this.filter( function( data ) {
261
+ name = data.get( 'name' ).replace( /(<([^>]+)>)/ig, '' );
262
+ description = data.get( 'description' ).replace( /(<([^>]+)>)/ig, '' );
263
+ author = data.get( 'author' ).replace( /(<([^>]+)>)/ig, '' );
264
+
265
+ haystack = _.union( name, data.get( 'id' ), description, author, data.get( 'tags' ) );
266
+
267
+ if ( match.test( data.get( 'author' ) ) && term.length > 2 ) {
268
+ data.set( 'displayAuthor', true );
269
+ }
270
+
271
+ return match.test( haystack );
272
+ });
273
+
274
+ if ( results.length === 0 ) {
275
+ this.trigger( 'query:empty' );
276
+ } else {
277
+ $( 'body' ).removeClass( 'no-results' );
278
+ }
279
+
280
+ this.reset( results );
281
+ },
282
+
283
+ // Paginates the collection with a helper method
284
+ // that slices the collection
285
+ paginate: function( instance ) {
286
+ var collection = this;
287
+ instance = instance || 0;
288
+
289
+ // Themes per instance are set at 20
290
+ collection = _( collection.rest( 20 * instance ) );
291
+ collection = _( collection.first( 20 ) );
292
+
293
+ return collection;
294
+ },
295
+
296
+ count: false,
297
+
298
+ // Handles requests for more themes
299
+ // and caches results
300
+ //
301
+ // When we are missing a cache object we fire an apiCall()
302
+ // which triggers events of `query:success` or `query:fail`
303
+ query: function( request ) {
304
+
305
+ /**
306
+ * @static
307
+ * @type Array
308
+ */
309
+ var queries = this.queries,
310
+ self = this,
311
+ query, isPaginated, count;
312
+
313
+ // Store current query request args
314
+ // for later use with the event `theme:end`
315
+ this.currentQuery.request = request;
316
+ // Search the query cache for matches.
317
+ query = _.find( queries, function( query ) {
318
+ return _.isEqual( query.request, request );
319
+ });
320
+ // If the request matches the stored currentQuery.request
321
+ // it means we have a paginated request.
322
+ isPaginated = _.has( request, 'page' );
323
+
324
+ // Reset the internal api page counter for non paginated queries.
325
+ if ( ! isPaginated ) {
326
+ this.currentQuery.page = 1;
327
+ }
328
+
329
+ // Otherwise, send a new API call and add it to the cache.
330
+ if ( ! query && ! isPaginated ) {
331
+ // query = this.apiCall( request ).done( function( data ) {
332
+ // Update the collection with the queried data.
333
+ if ( themes.data.themes ) {
334
+ data = themes.data.themes;
335
+ self.add( data);
336
+ if(typeof request.id !== 'undefined'){
337
+ data = self.get(request.id);
338
+ self.set(data);
339
+ }
340
+
341
+ // set all api data at one place
342
+ // themes.data.themes = themes.data.themes;
343
+ //sorting collection according to modified date
344
+ var s = _.sortBy(self.models, function(o){
345
+ return o.attributes.modified;
346
+ });
347
+
348
+ self.reset( s.reverse() );
349
+ count = data.length;
350
+
351
+ // Store the results and the query request
352
+ queries.push( { themes: data, request: request, total: count } );
353
+
354
+ }
355
+
356
+ // Trigger a collection refresh event
357
+ // and a `query:success` event with a `count` argument.
358
+ self.trigger( 'update' );
359
+ self.trigger( 'query:success', count );
360
+
361
+ if ( data.themes && data.themes.length === 0 ) {
362
+ self.trigger( 'query:empty' );
363
+ }
364
+
365
+
366
+ // }).fail( function() {
367
+ // self.trigger( 'query:fail' );
368
+ // });
369
+
370
+ } else {
371
+ // If it's a paginated request we need to fetch more themes...
372
+ if ( isPaginated ) {
373
+ return this.apiCall( request, isPaginated ).then( function(data ) {
374
+ // Add the new themes to the current collection
375
+ // @todo update counter
376
+ self.add( data.themes );
377
+ self.trigger( 'query:success' );
378
+
379
+ // We are done loading themes for now.
380
+ self.loadingThemes = false;
381
+
382
+ }).fail( function() {
383
+ self.trigger( 'query:fail' );
384
+ });
385
+ }
386
+
387
+ if ( query.themes.length === 0 ) {
388
+ self.trigger( 'query:empty' );
389
+ } else {
390
+ $( 'body' ).removeClass( 'no-results' );
391
+ }
392
+
393
+ // Only trigger an update event since we already have the themes
394
+ // on our cached object
395
+ if ( _.isNumber( query.total ) ) {
396
+ this.count = query.total;
397
+ }
398
+
399
+ this.reset( query.themes );
400
+ if ( ! query.total ) {
401
+ this.count = this.length;
402
+ }
403
+
404
+ this.trigger( 'update' );
405
+ this.trigger( 'query:success', this.count );
406
+ }
407
+ },
408
+
409
+ // Local cache array for API queries
410
+ queries: [],
411
+
412
+ // Keep track of current query so we can handle pagination
413
+ currentQuery: {
414
+ page: 1,
415
+ request: {}
416
+ },
417
+
418
+ // Static status controller for when we are loading themes.
419
+ loadingThemes: false
420
+ });
421
+
422
+ // This is the view that controls each theme item
423
+ // that will be displayed on the screen
424
+ themes.view.Theme = wp.Backbone.View.extend({
425
+
426
+ // Wrap theme data on a div.theme element
427
+ className: 'theme',
428
+
429
+ // Reflects which theme view we have
430
+ // 'grid' (default) or 'detail'
431
+ state: 'grid',
432
+
433
+ // The HTML template for each element to be rendered
434
+ html: themes.template( 'theme' ),
435
+
436
+ events: {
437
+ 'click': 'preview',
438
+ 'keydown': 'preview',
439
+ 'touchend': 'preview',
440
+ 'keyup': 'addFocus',
441
+ 'touchmove': 'preventExpand'
442
+ },
443
+
444
+ touchDrag: false,
445
+
446
+ render: function() {
447
+ var data = this.model.toJSON();
448
+ // Render themes using the html template
449
+
450
+ this.$el.html( this.html( data ) ).attr({
451
+ tabindex: 0,
452
+ 'data-rating': data.rating,
453
+ 'data-plan': data.plan,
454
+ 'plan-name': data.plan_name
455
+ });
456
+
457
+ if(data.custom_category && data.custom_category.length > 0) {
458
+ this.$el.html( this.html( data ) ).attr({
459
+ 'data-categories': data.custom_category.join(" ") ,
460
+ });
461
+ }
462
+
463
+ //Added classes(categories) to use in isotope..
464
+ this.$el.addClass( 'igg-card' );
465
+ this.$el.addClass( data.plan_name );
466
+
467
+ // Renders active theme styles
468
+ //this.activeTheme();
469
+
470
+ if ( this.model.get( 'displayAuthor' ) ) {
471
+ this.$el.addClass( 'display-author' );
472
+ }
473
+
474
+ if ( this.model.get( 'installed' ) ) {
475
+ this.$el.addClass( 'is-installed' );
476
+ }
477
+ },
478
+
479
+ // Adds a class to the currently active theme
480
+ // and to the overlay in detailed view mode
481
+ activeTheme: function() {
482
+ if ( this.model.get( 'active' ) ) {
483
+ this.$el.addClass( 'active' );
484
+ }
485
+ },
486
+
487
+ // Add class of focus to the theme we are focused on.
488
+ addFocus: function() {
489
+ var $themeToFocus = ( $( ':focus' ).hasClass( 'theme' ) ) ? $( ':focus' ) : $(':focus').parents('.theme');
490
+
491
+ $('.theme.focus').removeClass('focus');
492
+ $themeToFocus.addClass('focus');
493
+ },
494
+
495
+ // Single theme overlay screen
496
+ // It's shown when clicking a theme
497
+ expand: function( event ) {
498
+ var self = this;
499
+
500
+ event = event || window.event;
501
+
502
+ // 'enter' and 'space' keys expand the details view when a theme is :focused
503
+ if ( event.type === 'keydown' && ( event.which !== 13 && event.which !== 32 ) ) {
504
+ return;
505
+ }
506
+
507
+ // Bail if the user scrolled on a touch device
508
+ if ( this.touchDrag === true ) {
509
+ return this.touchDrag = false;
510
+ }
511
+
512
+ // Prevent the modal from showing when the user clicks
513
+ // one of the direct action buttons
514
+ if ( $( event.target ).is( '.theme-actions a' ) ) {
515
+ return;
516
+ }
517
+
518
+ // Set focused theme to current element
519
+ themes.focusedTheme = this.$el;
520
+
521
+ this.trigger( 'theme:expand', self.model.cid );
522
+ },
523
+ preventExpand: function() {
524
+ this.touchDrag = true;
525
+ },
526
+
527
+ preview: function( event ) {
528
+ var self = this,
529
+ current, preview;
530
+
531
+ event = event || window.event;
532
+
533
+ // Bail if the user scrolled on a touch device
534
+ if ( this.touchDrag === true ) {
535
+ return this.touchDrag = false;
536
+ }
537
+
538
+ // Allow direct link path to installing a theme.
539
+ if ( $( event.target ).hasClass( 'button-primary' ) ) {
540
+ return;
541
+ }
542
+
543
+ // 'enter' and 'space' keys expand the details view when a theme is :focused
544
+ if ( event.type === 'keydown' && ( event.which !== 13 && event.which !== 32 ) ) {
545
+ return;
546
+ }
547
+
548
+ // pressing enter while focused on the buttons shouldn't open the preview
549
+ if ( event.type === 'keydown' && event.which !== 13 && $( ':focus' ).hasClass( 'button' ) ) {
550
+ return;
551
+ }
552
+
553
+ event.preventDefault();
554
+
555
+ event = event || window.event;
556
+
557
+ // Set focus to current theme.
558
+ themes.focusedTheme = this.$el;
559
+
560
+ // Construct a new Preview view.
561
+ preview = new themes.view.Preview({
562
+ model: this.model
563
+ });
564
+ // Render the view and append it.
565
+ preview.render();
566
+ this.setNavButtonsState();
567
+
568
+ // Hide previous/next navigation if there is only one theme
569
+ if ( this.model.collection.length === 1 ) {
570
+ preview.$el.addClass( 'no-navigation' );
571
+ } else {
572
+ preview.$el.removeClass( 'no-navigation' );
573
+ }
574
+
575
+ // Append preview
576
+ $( 'div.wrap' ).append( preview.el );
577
+
578
+ // Listen to our preview object
579
+ // for `theme:next` and `theme:previous` events.
580
+ this.listenTo( preview, 'theme:next', function() {
581
+
582
+ // Keep local track of current theme model.
583
+ current = self.model;
584
+
585
+ // If we have ventured away from current model update the current model position.
586
+ if ( ! _.isUndefined( self.current ) ) {
587
+ current = self.current;
588
+ }
589
+
590
+ // Get next theme model.
591
+ self.current = self.model.collection.at( self.model.collection.indexOf( current ) + 1 );
592
+
593
+ // If we have no more themes, bail.
594
+ if ( _.isUndefined( self.current ) ) {
595
+ self.options.parent.parent.trigger( 'theme:end' );
596
+ return self.current = current;
597
+ }
598
+
599
+ preview.model = self.current;
600
+
601
+ // Render and append.
602
+ preview.render();
603
+ this.setNavButtonsState();
604
+ $( '.next-theme' ).focus();
605
+ })
606
+ .listenTo( preview, 'theme:previous', function() {
607
+
608
+ // Keep track of current theme model.
609
+ current = self.model;
610
+
611
+ // Bail early if we are at the beginning of the collection
612
+ if ( self.model.collection.indexOf( self.current ) === 0 ) {
613
+ return;
614
+ }
615
+
616
+ // If we have ventured away from current model update the current model position.
617
+ if ( ! _.isUndefined( self.current ) ) {
618
+ current = self.current;
619
+ }
620
+
621
+ // Get previous theme model.
622
+ self.current = self.model.collection.at( self.model.collection.indexOf( current ) - 1 );
623
+
624
+ // If we have no more themes, bail.
625
+ if ( _.isUndefined( self.current ) ) {
626
+ return;
627
+ }
628
+
629
+ preview.model = self.current;
630
+
631
+ // Render and append.
632
+ preview.render();
633
+ this.setNavButtonsState();
634
+ $( '.previous-theme' ).focus();
635
+ });
636
+
637
+ this.listenTo( preview, 'preview:close', function() {
638
+ self.current = self.model;
639
+
640
+ });
641
+ },
642
+
643
+ // Handles .disabled classes for previous/next buttons in theme installer preview
644
+ setNavButtonsState: function() {
645
+ var $themeInstaller = $( '.theme-install-overlay' ),
646
+ current = _.isUndefined( this.current ) ? this.model : this.current;
647
+
648
+ // Disable previous at the zero position
649
+ if ( 0 === this.model.collection.indexOf( current ) ) {
650
+ $themeInstaller.find( '.previous-theme' ).addClass( 'disabled' );
651
+ }
652
+
653
+ // Disable next if the next model is undefined
654
+ if ( _.isUndefined( this.model.collection.at( this.model.collection.indexOf( current ) + 1 ) ) ) {
655
+ $themeInstaller.find( '.next-theme' ).addClass( 'disabled' );
656
+ }
657
+ }
658
+ });
659
+
660
+ // Theme Details view
661
+ // Set ups a modal overlay with the expanded theme data
662
+ themes.view.Details = wp.Backbone.View.extend({
663
+
664
+ // Wrap theme data on a div.theme element
665
+ className: 'theme-overlay',
666
+
667
+ events: {
668
+ 'click': 'collapse',
669
+ 'click .delete-theme': 'deleteTheme',
670
+ 'click .left': 'previousTheme',
671
+ 'click .right': 'nextTheme'
672
+ },
673
+
674
+ // The HTML template for the theme overlay
675
+ html: themes.template( 'theme-single' ),
676
+
677
+ render: function() {
678
+ var data = this.model.toJSON();
679
+
680
+ this.$el.html( this.html( data ) );
681
+ // Renders active theme styles
682
+ this.activeTheme();
683
+ // Set up navigation events
684
+ this.navigation();
685
+ // Checks screenshot size
686
+ this.screenshotCheck( this.$el );
687
+ // Contain "tabbing" inside the overlay
688
+ this.containFocus( this.$el );
689
+ },
690
+
691
+ // Adds a class to the currently active theme
692
+ // and to the overlay in detailed view mode
693
+ activeTheme: function() {
694
+ // Check the model has the active property
695
+ this.$el.toggleClass( 'active', this.model.get( 'active' ) );
696
+ },
697
+
698
+ // Keeps :focus within the theme details elements
699
+ containFocus: function( $el ) {
700
+ var $target;
701
+
702
+ // Move focus to the primary action
703
+ _.delay( function() {
704
+ $( '.theme-wrap a.button-primary:visible' ).focus();
705
+ }, 500 );
706
+
707
+ $el.on( 'keydown.wp-themes', function( event ) {
708
+
709
+ // Tab key
710
+ if ( event.which === 9 ) {
711
+ $target = $( event.target );
712
+
713
+ // Keep focus within the overlay by making the last link on theme actions
714
+ // switch focus to button.left on tabbing and vice versa
715
+ if ( $target.is( 'button.left' ) && event.shiftKey ) {
716
+ $el.find( '.theme-actions a:last-child' ).focus();
717
+ event.preventDefault();
718
+ } else if ( $target.is( '.theme-actions a:last-child' ) ) {
719
+ $el.find( 'button.left' ).focus();
720
+ event.preventDefault();
721
+ }
722
+ }
723
+ });
724
+ },
725
+
726
+ // Single theme overlay screen
727
+ // It's shown when clicking a theme
728
+ collapse: function( event ) {
729
+ var self = this,
730
+ scroll;
731
+
732
+ event = event || window.event;
733
+
734
+ // Prevent collapsing detailed view when there is only one theme available
735
+ if ( themes.data.themes.length === 1 ) {
736
+ return;
737
+ }
738
+
739
+ // Detect if the click is inside the overlay
740
+ // and don't close it unless the target was
741
+ // the div.back button
742
+ if ( $( event.target ).is( '.theme-backdrop' ) || $( event.target ).is( '.close' ) || event.keyCode === 27 ) {
743
+
744
+ // Add a temporary closing class while overlay fades out
745
+ $( 'body' ).addClass( 'closing-overlay' );
746
+
747
+ // With a quick fade out animation
748
+ this.$el.fadeOut( 130, function() {
749
+ // Clicking outside the modal box closes the overlay
750
+ $( 'body' ).removeClass( 'closing-overlay' );
751
+ // Handle event cleanup
752
+ self.closeOverlay();
753
+
754
+ // Get scroll position to avoid jumping to the top
755
+ scroll = document.body.scrollTop;
756
+
757
+ // Clean the url structure
758
+ themes.router.navigate( themes.router.baseUrl( '' ) );
759
+
760
+ // Restore scroll position
761
+ document.body.scrollTop = scroll;
762
+
763
+ // Return focus to the theme div
764
+ if ( themes.focusedTheme ) {
765
+ themes.focusedTheme.focus();
766
+ }
767
+ });
768
+ }
769
+ },
770
+
771
+ // Handles .disabled classes for next/previous buttons
772
+ navigation: function() {
773
+
774
+ // Disable Left/Right when at the start or end of the collection
775
+ if ( this.model.cid === this.model.collection.at(0).cid ) {
776
+ this.$el.find( '.left' ).addClass( 'disabled' );
777
+ }
778
+ if ( this.model.cid === this.model.collection.at( this.model.collection.length - 1 ).cid ) {
779
+ this.$el.find( '.right' ).addClass( 'disabled' );
780
+ }
781
+ },
782
+
783
+ // Performs the actions to effectively close
784
+ // the theme details overlay
785
+ closeOverlay: function() {
786
+ $( 'body' ).removeClass( 'modal-open' );
787
+ this.remove();
788
+ this.unbind();
789
+ this.trigger( 'theme:collapse' );
790
+ },
791
+
792
+ // Confirmation dialog for deleting a theme
793
+ deleteTheme: function() {
794
+ return confirm( themes.data.settings.confirmDelete );
795
+ },
796
+
797
+ nextTheme: function() {
798
+ var self = this;
799
+ self.trigger( 'theme:next', self.model.cid );
800
+ return false;
801
+ },
802
+
803
+ previousTheme: function() {
804
+ var self = this;
805
+ self.trigger( 'theme:previous', self.model.cid );
806
+ return false;
807
+ },
808
+
809
+ // Checks if the theme screenshot is the old 300px width version
810
+ // and adds a corresponding class if it's true
811
+ screenshotCheck: function( el ) {
812
+ var screenshot, image;
813
+
814
+ screenshot = el.find( '.screenshot img' );
815
+ image = new Image();
816
+ image.src = screenshot.attr( 'src' );
817
+
818
+ // Width check
819
+ if ( image.width && image.width <= 300 ) {
820
+ el.addClass( 'small-screenshot' );
821
+ }
822
+ }
823
+ });
824
+
825
+ // Theme Preview view
826
+ // Set ups a modal overlay with the expanded theme data
827
+ themes.view.Preview = themes.view.Details.extend({
828
+
829
+ className: 'wp-full-overlay expanded',
830
+ el: '.theme-install-overlay',
831
+
832
+ events: {
833
+ 'click .close-full-overlay': 'close',
834
+ 'click .collapse-sidebar': 'collapse',
835
+ 'click .previous-theme': 'previousTheme',
836
+ 'click .next-theme': 'nextTheme',
837
+ 'keyup': 'keyEvent'
838
+ },
839
+
840
+ // The HTML template for the theme preview
841
+ html: themes.template( 'theme-preview' ),
842
+
843
+ render: function() {
844
+ var self = this,
845
+ data = this.model.toJSON();
846
+ this.$el.removeClass( 'iframe-ready' ).html( this.html( data ) );
847
+
848
+ themes.router.navigate( themes.router.baseUrl( themes.router.themePath + this.model.get( 'id' ) ), { replace: true } );
849
+
850
+ this.$el.fadeIn( 200, function() {
851
+ $( 'body' ).addClass( 'theme-installer-active full-overlay-active' );
852
+ $( '.close-full-overlay' ).focus();
853
+ });
854
+
855
+ this.$el.find( 'iframe' ).one( 'load', function() {
856
+ self.iframeLoaded();
857
+ });
858
+ if( data.plan <= themes.data.settings.ig_plan ){
859
+ this.$el.find('.theme-install').show();
860
+ }else{
861
+ this.$el.find('.ig-get-pro').show();
862
+ }
863
+ },
864
+
865
+ iframeLoaded: function() {
866
+ this.$el.addClass( 'iframe-ready' );
867
+ },
868
+
869
+ close: function() {
870
+ this.$el.fadeOut( 200, function() {
871
+ $( 'body' ).removeClass( 'theme-installer-active full-overlay-active' );
872
+
873
+ // Return focus to the theme div
874
+ if ( themes.focusedTheme ) {
875
+ themes.focusedTheme.focus();
876
+ }
877
+ }).removeClass( 'iframe-ready' );
878
+
879
+ themes.router.navigate( themes.router.baseUrl( '' ) );
880
+ this.trigger( 'preview:close' );
881
+ this.undelegateEvents();
882
+ this.unbind();
883
+ return false;
884
+ },
885
+
886
+ collapse: function( event ) {
887
+ var $button = $( event.currentTarget );
888
+ if ( 'true' === $button.attr( 'aria-expanded' ) ) {
889
+ $button.attr({ 'aria-expanded': 'false', 'aria-label': l10n.expandSidebar });
890
+ } else {
891
+ $button.attr({ 'aria-expanded': 'true', 'aria-label': l10n.collapseSidebar });
892
+ }
893
+
894
+ this.$el.toggleClass( 'collapsed' ).toggleClass( 'expanded' );
895
+ return false;
896
+ },
897
+
898
+ keyEvent: function( event ) {
899
+ // The escape key closes the preview
900
+ if ( event.keyCode === 27 ) {
901
+ this.undelegateEvents();
902
+ this.close();
903
+ }
904
+ // The right arrow key, next theme
905
+ if ( event.keyCode === 39 ) {
906
+ _.once( this.nextTheme() );
907
+ }
908
+
909
+ // The left arrow key, previous theme
910
+ if ( event.keyCode === 37 ) {
911
+ this.previousTheme();
912
+ }
913
+ }
914
+ });
915
+
916
+ // Controls the rendering of div.themes,
917
+ // a wrapper that will hold all the theme elements
918
+ themes.view.Themes = wp.Backbone.View.extend({
919
+
920
+ className: 'themes',
921
+ $overlay: $( 'div.theme-overlay' ),
922
+
923
+ // Number to keep track of scroll position
924
+ // while in theme-overlay mode
925
+ index: 0,
926
+
927
+ // The theme count element
928
+ count: $( '.wp-core-ui .theme-count' ),
929
+
930
+ // The live themes count
931
+ liveThemeCount: 0,
932
+
933
+ initialize: function( options ) {
934
+
935
+ var self = this;
936
+
937
+ // Set up parent
938
+ this.parent = options.parent;
939
+
940
+ // Set current view to [grid]
941
+ this.setView( 'grid' );
942
+
943
+ // Move the active theme to the beginning of the collection
944
+ self.currentTheme();
945
+
946
+ // When the collection is updated by user input...
947
+ this.listenTo( self.collection, 'update', function() {
948
+ self.parent.page = 0;
949
+ self.currentTheme();
950
+ self.render( this );
951
+ });
952
+
953
+ // Update theme count to full result set when available.
954
+ this.listenTo( self.collection, 'query:success', function( count ) {
955
+
956
+ if ( _.isNumber( count ) ) {
957
+ self.count.text( count );
958
+ self.announceSearchResults( count );
959
+ } else {
960
+ self.count.text( self.collection.length );
961
+ self.announceSearchResults( self.collection.length );
962
+ }
963
+ });
964
+
965
+ this.listenTo( self.collection, 'query:empty', function() {
966
+ $( 'body' ).addClass( 'no-results' );
967
+ });
968
+
969
+ this.listenTo( this.parent, 'theme:scroll', function() {
970
+ self.renderThemes( self.parent.page );
971
+ });
972
+
973
+ this.listenTo( this.parent, 'theme:close', function() {
974
+ if ( self.overlay ) {
975
+ self.overlay.closeOverlay();
976
+ }
977
+ } );
978
+
979
+ // Bind keyboard events.
980
+ $( 'body' ).on( 'keyup', function( event ) {
981
+ if ( ! self.overlay ) {
982
+ return;
983
+ }
984
+
985
+ // Pressing the right arrow key fires a theme:next event
986
+ if ( event.keyCode === 39 ) {
987
+ self.overlay.nextTheme();
988
+ }
989
+
990
+ // Pressing the left arrow key fires a theme:previous event
991
+ if ( event.keyCode === 37 ) {
992
+ self.overlay.previousTheme();
993
+ }
994
+
995
+ // Pressing the escape key fires a theme:collapse event
996
+ if ( event.keyCode === 27 ) {
997
+ self.overlay.collapse( event );
998
+ }
999
+ });
1000
+ },
1001
+
1002
+ // Manages rendering of theme pages
1003
+ // and keeping theme count in sync
1004
+ render: function() {
1005
+ // Clear the DOM, please
1006
+ this.$el.empty();
1007
+
1008
+ // If the user doesn't have switch capabilities
1009
+ // or there is only one theme in the collection
1010
+ // render the detailed view of the active theme
1011
+ if ( themes.data.themes.length === 1 ) {
1012
+
1013
+ // Constructs the view
1014
+ this.singleTheme = new themes.view.Details({
1015
+ model: this.collection.models[0]
1016
+ });
1017
+
1018
+ // Render and apply a 'single-theme' class to our container
1019
+ this.singleTheme.render();
1020
+ this.$el.addClass( 'single-theme' );
1021
+ this.$el.append( this.singleTheme.el );
1022
+ }
1023
+
1024
+ // Generate the themes
1025
+ // Using page instance
1026
+ // While checking the collection has items
1027
+ if ( this.options.collection.size() > 0 ) {
1028
+ this.renderThemes( this.parent.page );
1029
+ }
1030
+
1031
+ // Display a live theme count for the collection
1032
+ this.liveThemeCount = this.collection.count ? this.collection.count : this.collection.length;
1033
+ this.count.text( this.liveThemeCount );
1034
+
1035
+ this.announceSearchResults( this.liveThemeCount );
1036
+ },
1037
+
1038
+ // Iterates through each instance of the collection
1039
+ // and renders each theme module
1040
+ renderThemes: function( page ) {
1041
+ var self = this;
1042
+
1043
+ self.instance = self.collection.paginate( page );
1044
+
1045
+ // If we have no more themes bail
1046
+ if ( self.instance.size() === 0 ) {
1047
+ // Fire a no-more-themes event.
1048
+ this.parent.trigger( 'theme:end' );
1049
+ return;
1050
+ }
1051
+
1052
+ // Make sure the add-new stays at the end
1053
+ if ( ! themes.isInstall && page >= 1 ) {
1054
+ $( '.add-new-theme' ).remove();
1055
+ }
1056
+
1057
+ // Loop through the themes and setup each theme view
1058
+ self.instance.each( function( theme ) {
1059
+
1060
+ self.theme = new themes.view.Theme({
1061
+ model: theme,
1062
+ parent: self
1063
+ });
1064
+ // Render the views...
1065
+ self.theme.render();
1066
+ // and append them to div.themes
1067
+ self.$el.append( self.theme.el );
1068
+
1069
+ // Binds to theme:expand to show the modal box
1070
+ // with the theme details
1071
+ self.listenTo( self.theme, 'theme:expand', self.expand, self );
1072
+ });
1073
+
1074
+ // 'Add new theme' element shown at the end of the grid
1075
+ if ( ! themes.isInstall && themes.data.settings.canInstall ) {
1076
+ this.$el.append( '<div class="theme add-new-theme"><a href="' + themes.data.settings.installURI + '"><div class="theme-screenshot"><span></span></div><h2 class="theme-name">' + l10n.addNew + '</h2></a></div>' );
1077
+ }
1078
+
1079
+ this.parent.page++;
1080
+ },
1081
+
1082
+ // Grabs current theme and puts it at the beginning of the collection
1083
+ currentTheme: function() {
1084
+ var self = this,
1085
+ current;
1086
+
1087
+ current = self.collection.findWhere({ active: true });
1088
+
1089
+ // Move the active theme to the beginning of the collection
1090
+ if ( current ) {
1091
+ self.collection.remove( current );
1092
+ self.collection.add( current, { at:0 } );
1093
+ }
1094
+ },
1095
+
1096
+ // Sets current view
1097
+ setView: function( view ) {
1098
+ return view;
1099
+ },
1100
+
1101
+ // Renders the overlay with the ThemeDetails view
1102
+ // Uses the current model data
1103
+ expand: function( id ) {
1104
+ var self = this;
1105
+
1106
+ // Set the current theme model
1107
+ this.model = self.collection.get( id );
1108
+
1109
+ // Trigger a route update for the current model
1110
+ themes.router.navigate( themes.router.baseUrl( themes.router.themePath + this.model.id ) );
1111
+
1112
+ // Sets this.view to 'detail'
1113
+ this.setView( 'detail' );
1114
+ $( 'body' ).addClass( 'modal-open' );
1115
+
1116
+ // Set up the theme details view
1117
+ this.overlay = new themes.view.Details({
1118
+ model: self.model
1119
+ });
1120
+
1121
+ this.overlay.render();
1122
+ this.$overlay.html( this.overlay.el );
1123
+
1124
+ // Bind to theme:next and theme:previous
1125
+ // triggered by the arrow keys
1126
+ //
1127
+ // Keep track of the current model so we
1128
+ // can infer an index position
1129
+ this.listenTo( this.overlay, 'theme:next', function() {
1130
+ // Renders the next theme on the overlay
1131
+ self.next( [ self.model.cid ] );
1132
+
1133
+ })
1134
+ .listenTo( this.overlay, 'theme:previous', function() {
1135
+ // Renders the previous theme on the overlay
1136
+ self.previous( [ self.model.cid ] );
1137
+ });
1138
+ },
1139
+
1140
+ // This method renders the next theme on the overlay modal
1141
+ // based on the current position in the collection
1142
+ // @params [model cid]
1143
+ next: function( args ) {
1144
+ var self = this,
1145
+ model, nextModel;
1146
+
1147
+ // Get the current theme
1148
+ model = self.collection.get( args[0] );
1149
+ // Find the next model within the collection
1150
+ nextModel = self.collection.at( self.collection.indexOf( model ) + 1 );
1151
+
1152
+ // Sanity check which also serves as a boundary test
1153
+ if ( nextModel !== undefined ) {
1154
+
1155
+ // We have a new theme...
1156
+ // Close the overlay
1157
+ this.overlay.closeOverlay();
1158
+
1159
+ // Trigger a route update for the current model
1160
+ self.theme.trigger( 'theme:expand', nextModel.cid );
1161
+
1162
+ }
1163
+ },
1164
+
1165
+ // This method renders the previous theme on the overlay modal
1166
+ // based on the current position in the collection
1167
+ // @params [model cid]
1168
+ previous: function( args ) {
1169
+ var self = this,
1170
+ model, previousModel;
1171
+
1172
+ // Get the current theme
1173
+ model = self.collection.get( args[0] );
1174
+ // Find the previous model within the collection
1175
+ previousModel = self.collection.at( self.collection.indexOf( model ) - 1 );
1176
+
1177
+ if ( previousModel !== undefined ) {
1178
+
1179
+ // We have a new theme...
1180
+ // Close the overlay
1181
+ this.overlay.closeOverlay();
1182
+
1183
+ // Trigger a route update for the current model
1184
+ self.theme.trigger( 'theme:expand', previousModel.cid );
1185
+
1186
+ }
1187
+ },
1188
+
1189
+ // Dispatch audible search results feedback message
1190
+ announceSearchResults: function( count ) {
1191
+ if ( 0 === count ) {
1192
+ wp.a11y.speak( l10n.noThemesFound );
1193
+ } else {
1194
+ wp.a11y.speak( l10n.themesFound.replace( '%d', count ) );
1195
+ }
1196
+ }
1197
+ });
1198
+
1199
+ // Search input view controller.
1200
+ themes.view.Search = wp.Backbone.View.extend({
1201
+
1202
+ tagName: 'input',
1203
+ className: 'wp-filter-search',
1204
+ id: 'wp-filter-search-input',
1205
+ searching: false,
1206
+
1207
+ attributes: {
1208
+ placeholder: l10n.searchPlaceholder,
1209
+ type: 'search',
1210
+ 'aria-describedby': 'live-search-desc'
1211
+ },
1212
+
1213
+ events: {
1214
+ 'input': 'search',
1215
+ 'keyup': 'search',
1216
+ 'blur': 'pushState'
1217
+ },
1218
+
1219
+ initialize: function( options ) {
1220
+ this.parent = options.parent;
1221
+
1222
+ this.listenTo( this.parent, 'theme:close', function() {
1223
+ this.searching = false;
1224
+ } );
1225
+
1226
+ },
1227
+
1228
+ search: function( event ) {
1229
+ // Clear on escape.
1230
+ if ( event.type === 'keyup' && event.which === 27 ) {
1231
+ event.target.value = '';
1232
+ }
1233
+
1234
+ /**
1235
+ * Since doSearch is debounced, it will only run when user input comes to a rest
1236
+ */
1237
+ this.doSearch( event );
1238
+ },
1239
+
1240
+ // Runs a search on the theme collection.
1241
+ doSearch: _.debounce( function( event ) {
1242
+
1243
+ var options = {};
1244
+
1245
+ this.collection.doSearch( event.target.value );
1246
+
1247
+ // if search is initiated and key is not return
1248
+ if ( this.searching && event.which !== 13 ) {
1249
+ options.replace = true;
1250
+ } else {
1251
+ this.searching = true;
1252
+ }
1253
+
1254
+ // Update the URL hash
1255
+ if ( event.target.value ) {
1256
+ themes.router.navigate( themes.router.baseUrl( themes.router.searchPath + event.target.value ), options );
1257
+ } else {
1258
+ themes.router.navigate( themes.router.baseUrl( '' ) );
1259
+ }
1260
+ }, 500 ),
1261
+
1262
+ pushState: function( event ) {
1263
+ var url = themes.router.baseUrl( '' );
1264
+
1265
+ if ( event.target.value ) {
1266
+ url = themes.router.baseUrl( themes.router.searchPath + event.target.value );
1267
+ }
1268
+
1269
+ this.searching = false;
1270
+ themes.router.navigate( url );
1271
+
1272
+ }
1273
+ });
1274
+
1275
+ // Sets up the routes events for relevant url queries
1276
+ // Listens to [theme] and [search] params
1277
+ themes.Router = Backbone.Router.extend({
1278
+
1279
+ routes: {
1280
+ 'demos/?item=:id': 'preview',
1281
+ 'demos/?browse=:sort': 'sort',
1282
+ 'demos': 'sort',
1283
+ '&search=:query': 'search',
1284
+ },
1285
+
1286
+ baseUrl: function( url ) {
1287
+ // return 'theme-install.php' + url;
1288
+
1289
+ return 'demos' + url;
1290
+ },
1291
+
1292
+ themePath: '?item=',
1293
+ browsePath: '?browse=',
1294
+ searchPath: '?search=',
1295
+
1296
+ search: function( query ) {
1297
+ $( '.wp-filter-search' ).val( query );
1298
+ },
1299
+
1300
+ themes: function() {
1301
+ $( '.wp-filter-search' ).val( '' );
1302
+ },
1303
+
1304
+ navigate: function() {
1305
+ if ( Backbone.history._hasPushState ) {
1306
+ Backbone.Router.prototype.navigate.apply( this, arguments );
1307
+ }
1308
+ }
1309
+
1310
+ });
1311
+
1312
+ // Execute and setup the application
1313
+ themes.Run = {
1314
+ init: function() {
1315
+
1316
+ // Initializes the blog's theme library view
1317
+ // Create a new collection with data
1318
+ this.themes = new themes.Collection( themes.data.themes );
1319
+ var s = _.sortBy(this.themes.models, function(o){
1320
+ return o.attributes.modified;
1321
+ });
1322
+
1323
+ this.themes.reset( s.reverse() );
1324
+ // Set up the view
1325
+ this.view = new themes.view.Appearance({
1326
+ collection: this.themes
1327
+ });
1328
+
1329
+ this.render();
1330
+ },
1331
+
1332
+ render: function() {
1333
+
1334
+ // Render results
1335
+ this.view.render();
1336
+ this.routes();
1337
+
1338
+ Backbone.history.start({
1339
+ // root: '/demos',
1340
+ pushState: true,
1341
+ hashChange: false
1342
+ });
1343
+ },
1344
+
1345
+ routes: function() {
1346
+ var self = this;
1347
+ request = {};
1348
+ // Bind to our global thx object
1349
+ // so that the object is available to sub-views
1350
+ themes.router = new themes.Router();
1351
+
1352
+
1353
+ // Handles theme details route event
1354
+ // themes.router.on( 'route:preview', function( id ) {
1355
+
1356
+ // self.view.view.expand( id );
1357
+ // });
1358
+
1359
+
1360
+ themes.router.on( 'route:preview', function( id ) {
1361
+
1362
+ request.id = id;
1363
+ self.view.collection.query( request );
1364
+ self.view.collection.once( 'update', function() {
1365
+
1366
+ self.view.view.theme.preview();
1367
+ });
1368
+ });
1369
+
1370
+ themes.router.on( 'route:themes', function() {
1371
+ self.themes.doSearch( '' );
1372
+ self.view.trigger( 'theme:close' );
1373
+ });
1374
+
1375
+ // Handles search route event
1376
+ themes.router.on( 'route:search', function() {
1377
+ $( '.wp-filter-search' ).trigger( 'keyup' );
1378
+ });
1379
+
1380
+ this.extraRoutes();
1381
+ },
1382
+
1383
+ extraRoutes: function() {
1384
+ return false;
1385
+ }
1386
+ };
1387
+
1388
+ // Extend the main Search view
1389
+ themes.view.InstallerSearch = themes.view.Search.extend({
1390
+
1391
+ events: {
1392
+ 'input': 'search',
1393
+ 'keyup': 'search'
1394
+ },
1395
+
1396
+ // Handles Ajax request for searching through themes in public repo
1397
+ search: function( event ) {
1398
+
1399
+ // Tabbing or reverse tabbing into the search input shouldn't trigger a search
1400
+ if ( event.type === 'keyup' && ( event.which === 9 || event.which === 16 ) ) {
1401
+ return;
1402
+ }
1403
+ this.collection = this.options.parent.view.collection;
1404
+
1405
+ // this.original_collection = _.clone(this.collection);
1406
+
1407
+ // Clear on escape.
1408
+ if ( event.type === 'keyup' && event.which === 27 ) {
1409
+ event.target.value = '';
1410
+ }
1411
+ this.doSearch( event.target.value );
1412
+ },
1413
+
1414
+ doSearch: _.debounce( function( value ) {
1415
+ // var request = {};
1416
+ var match, results, haystack, name, description, type;
1417
+
1418
+
1419
+ $( '.filter-links li > a.current' ).removeClass( 'current' );
1420
+ $( 'body' ).removeClass( 'show-filters filters-applied show-favorites-form' );
1421
+
1422
+
1423
+ // Get the themes by sending Ajax POST request to api.wordpress.org/themes
1424
+ // or searching the local cache
1425
+ //
1426
+ // this.collection.search( request.search );
1427
+ //
1428
+
1429
+ // Start with a full collection
1430
+ if(!this.collection.filtered){
1431
+ // this.collection.query( { browse: 'all' } );
1432
+ this.collection.reset( themes.data.themes, { silent: true } );
1433
+ }
1434
+
1435
+ // Escape the term string for RegExp meta characters
1436
+ term = value.replace( /[-\/\\^$*+?.()|[\]{}]/g, '\\$&' );
1437
+ if(term !== ''){
1438
+ // Consider spaces as word delimiters and match the whole string
1439
+ // so matching terms can be combined
1440
+
1441
+ term = term.replace( / /g, ')(?=.*' );
1442
+ match = new RegExp( '^(?=.*' + term + ').+', 'i' );
1443
+ // Find results
1444
+ // _.filter and .test
1445
+ results = this.collection.filter( function( data ) {
1446
+
1447
+ name = data.get( 'description' );
1448
+ description = data.get( 'content' ).rendered.replace( /(<([^>]+)>)/ig, '' );
1449
+ description = description.replace( /\n/g, '' );
1450
+ type = data.get( 'message_type' );
1451
+ haystack = type + description + name ;
1452
+ return match.test( haystack );
1453
+ });
1454
+ if(results){
1455
+
1456
+ this.collection.reset( results );
1457
+ var count = this.collection.length;
1458
+ }
1459
+ }
1460
+
1461
+ if ( term === '' ) {
1462
+ this.collection.reset( themes.data.themes, { silent: true } );
1463
+ // this.collection.query( { browse: 'all' } );
1464
+ // $( 'body' ).removeClass( 'no-results' );
1465
+ }
1466
+ this.collection.trigger( 'update' );
1467
+ this.collection.trigger( 'query:success', count );
1468
+ // Set route
1469
+ themes.router.navigate( themes.router.baseUrl( themes.router.searchPath + value ), { replace: true } );
1470
+ }, 500 )
1471
+ });
1472
+
1473
+ themes.view.Installer = themes.view.Appearance.extend({
1474
+
1475
+ el: '.wrap',
1476
+
1477
+ // Register events for sorting and filters in theme-navigation
1478
+ events: {
1479
+ 'click .filter-links li > a': 'onSort',
1480
+ 'click .theme-filter': 'onFilter',
1481
+ 'click .drawer-toggle': 'moreFilters',
1482
+ 'click .filter-drawer .apply-filters': 'applyFilters',
1483
+ 'click .filter-group [type="checkbox"]': 'addFilter',
1484
+ 'click .filter-drawer .clear-filters': 'clearFilters',
1485
+ 'click .filtered-by': 'backToFilters',
1486
+ 'click .favorites-form-submit' : 'saveUsername',
1487
+ 'keyup #wporg-username-input': 'saveUsername',
1488
+ 'click .igg-sidebar .category-type': 'filter',
1489
+ 'click .igg-content .category-type':'filter'
1490
+ },
1491
+
1492
+ // Initial render method
1493
+ render: function() {
1494
+ var self = this;
1495
+ this.search();
1496
+ this.uploader();
1497
+
1498
+ this.collection = new themes.Collection();
1499
+ // Bump `collection.currentQuery.page` and request more themes if we hit the end of the page.
1500
+ this.listenTo( this, 'theme:end', function() {
1501
+
1502
+ // Make sure we are not already loading
1503
+ if ( self.collection.loadingThemes ) {
1504
+ return;
1505
+ }
1506
+
1507
+ // Set loadingThemes to true and bump page instance of currentQuery.
1508
+ self.collection.loadingThemes = true;
1509
+ self.collection.currentQuery.page++;
1510
+
1511
+ // Use currentQuery.page to build the themes request.
1512
+ _.extend( self.collection.currentQuery.request, { page: self.collection.currentQuery.page } );
1513
+ self.collection.query( self.collection.currentQuery.request );
1514
+ });
1515
+
1516
+ this.listenTo( this.collection, 'query:success', function() {
1517
+ $( 'body' ).removeClass( 'loading-content' );
1518
+ $( '.theme-browser' ).find( 'div.error' ).remove();
1519
+ });
1520
+
1521
+ this.listenTo( this.collection, 'query:fail', function() {
1522
+ $( 'body' ).removeClass( 'loading-content' );
1523
+ $( '.theme-browser' ).find( 'div.error' ).remove();
1524
+ $( '.theme-browser' ).find( 'div.themes' ).before( '<div class="error"><p>' + l10n.error + '</p></div>' );
1525
+ });
1526
+
1527
+ if ( this.view ) {
1528
+ this.view.remove();
1529
+ }
1530
+
1531
+ // Set ups the view and passes the section argument
1532
+ this.view = new themes.view.Themes({
1533
+ collection: this.collection,
1534
+ parent: this
1535
+ });
1536
+
1537
+ // Reset pagination every time the install view handler is run
1538
+ this.page = 0;
1539
+
1540
+ // Render and append
1541
+ this.$el.find( '.themes' ).remove();
1542
+ this.view.render();
1543
+ this.$el.find( '.theme-browser' ).append( this.view.el ).addClass( 'rendered' );
1544
+ },
1545
+
1546
+ // Handles all the rendering of the public theme directory
1547
+ browse: function( section ) {
1548
+ // Create a new collection with the proper theme data
1549
+ // for each section
1550
+ // commented for now
1551
+ // if(this.collection.length <= 0){
1552
+ // this.collection.query( { browse: section } );
1553
+ // }
1554
+ if(section == 'featured' || section == 'all'){
1555
+ this.collection.query( { browse: section } );
1556
+ }else{
1557
+ var filtered;
1558
+ filtered = this.collection.filter(function (item) {
1559
+ var inverted = _.invert(item.attributes.tags) ;
1560
+ if(inverted.hasOwnProperty(section)){
1561
+ return true;
1562
+ }
1563
+ });
1564
+
1565
+ if(filtered){
1566
+ this.collection.reset(filtered);
1567
+ var count = this.collection.length;
1568
+
1569
+ }
1570
+ }
1571
+ this.collection.trigger( 'update' );
1572
+ this.collection.trigger( 'query:success', count );
1573
+ },
1574
+
1575
+ // Sorting navigation
1576
+ onSort: function( event ) {
1577
+ var $el = $( event.target ),
1578
+ sort = $el.data( 'sort' );
1579
+ event.preventDefault();
1580
+
1581
+ $( 'body' ).removeClass( 'filters-applied show-filters' );
1582
+
1583
+ // Bail if this is already active
1584
+ if ( $el.hasClass( this.activeClass ) ) {
1585
+ return;
1586
+ }
1587
+
1588
+ this.collection.reset( themes.data.themes, { silent: true } );
1589
+
1590
+ this.sort( sort );
1591
+
1592
+ // Trigger a router.naviagte update
1593
+ themes.router.navigate( themes.router.baseUrl( themes.router.browsePath + sort ) );
1594
+ },
1595
+
1596
+ sort: function( sort ) {
1597
+ this.clearSearch();
1598
+
1599
+ $( '.filter-links li > a, .theme-filter' ).removeClass( this.activeClass );
1600
+ $( '[data-sort="' + sort + '"]' ).addClass( this.activeClass );
1601
+
1602
+ if ( 'favorites' === sort ) {
1603
+ $ ( 'body' ).addClass( 'show-favorites-form' );
1604
+ } else {
1605
+ $ ( 'body' ).removeClass( 'show-favorites-form' );
1606
+ }
1607
+ // this.collection.reset( themes.data.themes, { silent: true } );
1608
+ this.browse( sort );
1609
+ },
1610
+
1611
+ // Filters and Tags
1612
+ onFilter: function( event ) {
1613
+ var request,
1614
+ $el = $( event.target ),
1615
+ filter = $el.data( 'filter' );
1616
+
1617
+ // Bail if this is already active
1618
+ if ( $el.hasClass( this.activeClass ) ) {
1619
+ return;
1620
+ }
1621
+
1622
+ $( '.filter-links li > a, .theme-section' ).removeClass( this.activeClass );
1623
+ $el.addClass( this.activeClass );
1624
+
1625
+ if ( ! filter ) {
1626
+ return;
1627
+ }
1628
+
1629
+ // Construct the filter request
1630
+ // using the default values
1631
+ filter = _.union( filter, this.filtersChecked() );
1632
+ request = { tag: [ filter ] };
1633
+
1634
+ // Get the themes by sending Ajax POST request to api.wordpress.org/themes
1635
+ // or searching the local cache
1636
+ this.collection.query( request );
1637
+ },
1638
+
1639
+ // Clicking on a checkbox to add another filter to the request
1640
+ addFilter: function() {
1641
+ this.filtersChecked();
1642
+ },
1643
+
1644
+ // Applying filters triggers a tag request
1645
+ applyFilters: function( event ) {
1646
+ var name,
1647
+ tags = this.filtersChecked(),
1648
+ request = { tag: tags },
1649
+ filteringBy = $( '.filtered-by .tags' );
1650
+
1651
+ if ( event ) {
1652
+ event.preventDefault();
1653
+ }
1654
+
1655
+ $( 'body' ).addClass( 'filters-applied' );
1656
+ $( '.filter-links li > a.current' ).removeClass( 'current' );
1657
+ filteringBy.empty();
1658
+
1659
+ _.each( tags, function( tag ) {
1660
+ name = $( 'label[for="filter-id-' + tag + '"]' ).text();
1661
+ filteringBy.append( '<span class="tag">' + name + '</span>' );
1662
+ });
1663
+
1664
+ // Get the themes by sending Ajax POST request to api.wordpress.org/themes
1665
+ // or searching the local cache
1666
+
1667
+ this.collection.query( request );
1668
+ },
1669
+
1670
+ filter: function( event ) {
1671
+
1672
+ // this.collection.reset();
1673
+ var element = $(event.currentTarget);
1674
+
1675
+ // Getting category-type and type-value
1676
+ // Eg: category-type="plan" and plan="free"
1677
+ // Eg: category-type="msg-type" and msg-type="badge"
1678
+ var category = element.attr('category');
1679
+ var filterVal = element.attr(category);
1680
+
1681
+ // To show title and sub-title after filtering..
1682
+ // if(category !== 'all') {
1683
+ // var cat_title = element.parent().siblings('h2').html();
1684
+ // var sub_cat_title = element.html();
1685
+ // $('.category-title').html(cat_title);
1686
+ // $('.sub-category-title').html(sub_cat_title);
1687
+
1688
+ // $('.filter-header').show();
1689
+ // $('.igg-content .description').hide();
1690
+
1691
+ // } else {
1692
+ // $('.igg-content .description').show();
1693
+ // $('.filter-header').hide();
1694
+ // }
1695
+
1696
+ // var whereClause = '';
1697
+ var filteredResults;
1698
+ var template_count = 0;
1699
+ this.collection.reset( themes.data.themes, { silent: true } );
1700
+ if(category != 'reset'){
1701
+ // this.collection.query( { browse: 'all' } );
1702
+ filteredResults = this.collection.filter(function(model){
1703
+ // return (model.get('categories')).indexOf(Number(val)) > -1;
1704
+ var val = Number(filterVal);
1705
+ if( (model.get('custom_category')).indexOf(Number(val)) > -1 ){
1706
+ template_count++;
1707
+ return model ;
1708
+ }
1709
+ // return model.get('categories') == [2, 4];
1710
+
1711
+ // return _.contains(model.get('categories'), filter);
1712
+ });
1713
+ }
1714
+ //updated by sandhya
1715
+ // switch(category) {
1716
+
1717
+ // // Based on plan..
1718
+ // case 'plan':
1719
+ // /* Using where clause.. */
1720
+ // // switch(filter) { // plan-id
1721
+ // // case "0": // free
1722
+ // // whereClause = {plan: "0"};
1723
+ // // break;
1724
+ // // case "1": // plus
1725
+ // // whereClause = {plan: "1"};
1726
+ // // break;
1727
+ // // case "2": // pro
1728
+ // // whereClause = {plan: "2"};
1729
+ // // break;
1730
+ // // case "3": // max
1731
+ // // whereClause = {plan: "3"};
1732
+ // // break;
1733
+ // // default:
1734
+ // // break;
1735
+ // // }
1736
+
1737
+ // /* Using filters.. */
1738
+ // // this.collection.query( { browse: 'all' } );
1739
+ // filteredResults = this.collection.filter(function(model){
1740
+ // // return model.get('plan') == filterVal;
1741
+ // if(model.get('plan') == filterVal){
1742
+ // template_count++;
1743
+ // return model;
1744
+ // // return model.get('plan').indexOf(filter) > -1;
1745
+ // }
1746
+ // });
1747
+ // // this.collection.set(filteredResults);
1748
+
1749
+ // break;
1750
+
1751
+ // // Based on ..
1752
+ // case 'message-type':
1753
+ // /* Using where clause.. */
1754
+ // // switch(filter) { //category-id
1755
+ // // case 5: // action-bar
1756
+ // // whereClause = {categories: []};
1757
+ // // break;
1758
+ // // case 13: // badge
1759
+ // // whereClause = {categories: []};
1760
+ // // break;
1761
+ // // case 10: // inline
1762
+ // // whereClause = {categories: []};
1763
+ // // break;
1764
+ // // case 15: // interstitial
1765
+ // // whereClause = {categories: []};
1766
+ // // break;
1767
+ // // case 8: // messenger
1768
+ // // whereClause = {categories: []};
1769
+ // // break;
1770
+ // // case 7: // overlay
1771
+ // // whereClause = {categories: []};
1772
+ // // break;
1773
+ // // case 4: // popup
1774
+ // // whereClause = {categories: []};
1775
+ // // break;
1776
+ // // // case id: // ribbon
1777
+ // // // whereClause = {categories: []};
1778
+ // // // break;
1779
+ // // // case id: // sidebar
1780
+ // // // whereClause = {categories: []};
1781
+ // // // break;
1782
+ // // // case id: // sticky
1783
+ // // // whereClause = {categories: []};
1784
+ // // // break;
1785
+ // // // case id: // tab
1786
+ // // // whereClause = {categories: []};
1787
+ // // // break;
1788
+ // // default:
1789
+ // // break;
1790
+ // // }
1791
+
1792
+ // /* Using filters.. */
1793
+ // filteredResults = this.collection.filter(function(model){
1794
+ // // return (model.get('categories')).indexOf(Number(val)) > -1;
1795
+ // var val = Number(filterVal);
1796
+ // if( (model.get('custom_category')).indexOf(Number(val)) > -1 ){
1797
+ // template_count++;
1798
+ // return model ;
1799
+ // }
1800
+ // // return model.get('categories') == [2, 4];
1801
+
1802
+ // // return _.contains(model.get('categories'), filter);
1803
+ // });
1804
+ // break;
1805
+
1806
+ // case 'all':
1807
+
1808
+ // // Do nothing as we are already resetting the collection, before switching..
1809
+ // break;
1810
+ // }
1811
+
1812
+ if(template_count > 0) {
1813
+ var fil_head_meta = 'Please choose one from the below ' + template_count + ' templates';
1814
+ // $('.igg-sidebar .meta').html(fil_head_meta);
1815
+ }
1816
+
1817
+
1818
+ // this.browse('all');
1819
+ // this.collection.query( { browse: 'all' } );
1820
+
1821
+ // To filter models in a collection, use the where() method. It accepts a search criteria and returns an array of found models.
1822
+ // if(whereClause !== '') {
1823
+ // var result = this.collection.where(whereClause);
1824
+
1825
+
1826
+ // this.collection.reset(themes.data.themes, { silent: true });
1827
+ // this.model.clear().set(this.model.defaults);
1828
+ // this.collection.set(result1);
1829
+ // }
1830
+
1831
+ // trying filters..
1832
+ if(filteredResults !== undefined) {
1833
+ // var result1 = this.collection.filter(function(model){
1834
+ // return model.get('plan') == '3';
1835
+ // });
1836
+
1837
+ this.collection.reset(filteredResults);
1838
+ this.collection.filtered = true;
1839
+ delete filteredResults;
1840
+ }
1841
+ this.collection.trigger( 'update' );
1842
+ this.collection.trigger( 'query:success', template_count );
1843
+
1844
+ // Result is just an array of models, so let's create
1845
+ // new collection.
1846
+ // var resultCollection = new themes.Collection(result);
1847
+
1848
+ // resultCollection.pluck('plan');
1849
+ },
1850
+
1851
+ // Save the user's WordPress.org username and get his favorite themes.
1852
+ saveUsername: function ( event ) {
1853
+ var username = $( '#wporg-username-input' ).val(),
1854
+ request = { browse: 'favorites', user: username },
1855
+ that = this;
1856
+
1857
+ if ( event ) {
1858
+ event.preventDefault();
1859
+ }
1860
+
1861
+ // save username on enter
1862
+ if ( event.type === 'keyup' && event.which !== 13 ) {
1863
+ return;
1864
+ }
1865
+
1866
+ return wp.ajax.send( 'save-wporg-username', {
1867
+ data: {
1868
+ username: username
1869
+ },
1870
+ success: function () {
1871
+ // Get the themes by sending Ajax POST request to api.wordpress.org/themes
1872
+ // or searching the local cache
1873
+ that.collection.query( request );
1874
+ }
1875
+ } );
1876
+ },
1877
+
1878
+ // Get the checked filters
1879
+ // @return {array} of tags or false
1880
+ filtersChecked: function() {
1881
+ var items = $( '.filter-group' ).find( ':checkbox' ),
1882
+ tags = [];
1883
+
1884
+ _.each( items.filter( ':checked' ), function( item ) {
1885
+ tags.push( $( item ).prop( 'value' ) );
1886
+ });
1887
+
1888
+ // When no filters are checked, restore initial state and return
1889
+ if ( tags.length === 0 ) {
1890
+ $( '.filter-drawer .apply-filters' ).find( 'span' ).text( '' );
1891
+ $( '.filter-drawer .clear-filters' ).hide();
1892
+ $( 'body' ).removeClass( 'filters-applied' );
1893
+ return false;
1894
+ }
1895
+
1896
+ $( '.filter-drawer .apply-filters' ).find( 'span' ).text( tags.length );
1897
+ $( '.filter-drawer .clear-filters' ).css( 'display', 'inline-block' );
1898
+
1899
+ return tags;
1900
+ },
1901
+
1902
+ activeClass: 'current',
1903
+
1904
+ // Overwrite search container class to append search
1905
+ // in new location
1906
+ searchContainer: $( '.search-form' ),
1907
+
1908
+ uploader: function() {
1909
+ $( 'a.upload' ).on( 'click', function( event ) {
1910
+ event.preventDefault();
1911
+ $( 'body' ).addClass( 'show-upload-theme' );
1912
+ themes.router.navigate( themes.router.baseUrl( '?upload' ), { replace: true } );
1913
+ });
1914
+ $( 'a.browse-themes' ).on( 'click', function( event ) {
1915
+ event.preventDefault();
1916
+ $( 'body' ).removeClass( 'show-upload-theme' );
1917
+ themes.router.navigate( themes.router.baseUrl( '' ), { replace: true } );
1918
+ });
1919
+ },
1920
+
1921
+ // Toggle the full filters navigation
1922
+ moreFilters: function( event ) {
1923
+ event.preventDefault();
1924
+
1925
+ if ( $( 'body' ).hasClass( 'filters-applied' ) ) {
1926
+ return this.backToFilters();
1927
+ }
1928
+
1929
+ // If the filters section is opened and filters are checked
1930
+ // run the relevant query collapsing to filtered-by state
1931
+ if ( $( 'body' ).hasClass( 'show-filters' ) && this.filtersChecked() ) {
1932
+ return this.addFilter();
1933
+ }
1934
+
1935
+ this.clearSearch();
1936
+
1937
+ themes.router.navigate( themes.router.baseUrl( '' ) );
1938
+ $( 'body' ).toggleClass( 'show-filters' );
1939
+ },
1940
+
1941
+ // Clears all the checked filters
1942
+ // @uses filtersChecked()
1943
+ clearFilters: function( event ) {
1944
+ var items = $( '.filter-group' ).find( ':checkbox' ),
1945
+ self = this;
1946
+
1947
+ event.preventDefault();
1948
+
1949
+ _.each( items.filter( ':checked' ), function( item ) {
1950
+ $( item ).prop( 'checked', false );
1951
+ return self.filtersChecked();
1952
+ });
1953
+ },
1954
+
1955
+ backToFilters: function( event ) {
1956
+ if ( event ) {
1957
+ event.preventDefault();
1958
+ }
1959
+
1960
+ $( 'body' ).removeClass( 'filters-applied' );
1961
+ },
1962
+
1963
+ clearSearch: function() {
1964
+ $( '#wp-filter-search-input').val( '' );
1965
+ }
1966
+ });
1967
+
1968
+ themes.InstallerRouter = Backbone.Router.extend({
1969
+ routes: {
1970
+ 'edit.php?post_type=ig_campaign&page=icegram-gallery&item=:id': 'preview',
1971
+ 'edit.php?post_type=ig_campaign&page=icegram-gallery&browse=:sort': 'sort',
1972
+ 'edit.php?post_type=ig_campaign&page=icegram-gallery': 'sort',
1973
+ // 'post-new.php?post_type=ig_campaign&browse=:sort': 'sort',
1974
+ 'post-new.php?post_type=ig_campaign': 'sort',
1975
+ 'edit.php?post_type=ig_campaign&page=icegram-gallery&search=:query': 'search',
1976
+ },
1977
+
1978
+ baseUrl: function( url ) {
1979
+ // return 'theme-install.php' + url;
1980
+ return 'edit.php?post_type=ig_campaign&page=icegram-gallery' + url;
1981
+ },
1982
+
1983
+ themePath: '&item=',
1984
+ browsePath: '&browse=',
1985
+ searchPath: '&search=',
1986
+
1987
+ search: function( query ) {
1988
+ $( '.wp-filter-search' ).val( query );
1989
+ },
1990
+
1991
+ navigate: function() {
1992
+ if ( Backbone.history._hasPushState ) {
1993
+ Backbone.Router.prototype.navigate.apply( this, arguments );
1994
+ }
1995
+ }
1996
+ });
1997
+
1998
+ themes.RunInstaller = {
1999
+
2000
+ init: function() {
2001
+ // Set up the view
2002
+ // Passes the default 'section' as an option
2003
+ this.view = new themes.view.Installer({
2004
+ section: 'featured',
2005
+ SearchView: themes.view.InstallerSearch
2006
+ });
2007
+
2008
+ // Render results
2009
+ this.render();
2010
+
2011
+ },
2012
+
2013
+ render: function() {
2014
+
2015
+ // Render results
2016
+ this.view.render();
2017
+ this.routes();
2018
+
2019
+ Backbone.history.start({
2020
+ root: themes.data.settings.adminUrl,
2021
+ pushState: true,
2022
+ hashChange: false
2023
+ });
2024
+ },
2025
+
2026
+ routes: function() {
2027
+ var self = this,
2028
+ request = {};
2029
+
2030
+ // Bind to our global `wp.themes` object
2031
+ // so that the router is available to sub-views
2032
+ themes.router = new themes.InstallerRouter();
2033
+ // Handles `theme` route event
2034
+ // Queries the API for the passed theme slug
2035
+ themes.router.on( 'route:preview', function( id ) {
2036
+
2037
+ request.id = id;
2038
+ self.view.collection.query( request );
2039
+ self.view.collection.once( 'update', function() {
2040
+ self.view.view.theme.preview();
2041
+ });
2042
+ });
2043
+
2044
+ // Handles sorting / browsing routes
2045
+ // Also handles the root URL triggering a sort request
2046
+ // for `featured`, the default view
2047
+ themes.router.on( 'route:sort', function( sort ) {
2048
+ if ( ! sort ) {
2049
+ sort = 'featured';
2050
+ }
2051
+
2052
+ self.view.sort( sort );
2053
+ self.view.trigger( 'theme:close' );
2054
+ });
2055
+
2056
+ // Support the `upload` route by going straight to upload section
2057
+ themes.router.on( 'route:upload', function() {
2058
+ $( 'a.upload' ).trigger( 'click' );
2059
+ });
2060
+
2061
+ // The `search` route event. The router populates the input field.
2062
+ themes.router.on( 'route:search', function() {
2063
+ $( '.wp-filter-search' ).focus().trigger( 'keyup' );
2064
+ });
2065
+
2066
+ this.extraRoutes();
2067
+ },
2068
+
2069
+ extraRoutes: function() {
2070
+ return false;
2071
+ }
2072
+ };
2073
+ var planCodeMap = function(planCode) {
2074
+ var planName = '';
2075
+ switch(planCode) {
2076
+ case '0':
2077
+ planName = 'free'
2078
+ break;
2079
+
2080
+ case '1':
2081
+ planName = 'plus'
2082
+ break;
2083
+
2084
+ case '2':
2085
+ planName = 'pro'
2086
+ break;
2087
+
2088
+ case '3':
2089
+ planName = 'max'
2090
+ break;
2091
+
2092
+ default:
2093
+ break;
2094
+ }
2095
+
2096
+ return planName;
2097
+ }
2098
+
2099
+
2100
+
2101
+ // Ready...
2102
+ $( document ).ready(function() {
2103
+ if ( themes.isInstall ) {
2104
+ themes.RunInstaller.init();
2105
+ } else {
2106
+ themes.Run.init();
2107
+ }
2108
+
2109
+ $( '.broken-themes .delete-theme' ).on( 'click', function() {
2110
+ return confirm( _wpThemeSettings.settings.confirmDelete );
2111
+ });
2112
+ });
2113
+
2114
+ })( jQuery );
2115
+
2116
+ // Align theme browser thickbox
2117
+ var tb_position;
2118
+ jQuery(document).ready( function($) {
2119
+ tb_position = function() {
2120
+ var tbWindow = $('#TB_window'),
2121
+ width = $(window).width(),
2122
+ H = $(window).height(),
2123
+ W = ( 1040 < width ) ? 1040 : width,
2124
+ adminbar_height = 0;
2125
+
2126
+ if ( $('#wpadminbar').length ) {
2127
+ adminbar_height = parseInt( $('#wpadminbar').css('height'), 10 );
2128
+ }
2129
+
2130
+ if ( tbWindow.size() ) {
2131
+ tbWindow.width( W - 50 ).height( H - 45 - adminbar_height );
2132
+ $('#TB_iframeContent').width( W - 50 ).height( H - 75 - adminbar_height );
2133
+ tbWindow.css({'margin-left': '-' + parseInt( ( ( W - 50 ) / 2 ), 10 ) + 'px'});
2134
+ if ( typeof document.body.style.maxWidth !== 'undefined' ) {
2135
+ tbWindow.css({'top': 20 + adminbar_height + 'px', 'margin-top': '0'});
2136
+ }
2137
+ }
2138
+ };
2139
+
2140
+ $(window).resize(function(){ tb_position(); });
2141
+ });
2142
+
assets/js/icegram.js ADDED
@@ -0,0 +1,878 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ * Icegram JS class
3
+ * Initialize, run and manage all messages
4
+ * Public interface
5
+ **/
6
+ function Icegram() {
7
+ // var data, defaults, message_data, messages, map_id_to_index, map_type_to_index, timer, message_template_cache, mode;
8
+ // var tracking_data, powered_by;
9
+ }
10
+
11
+ Icegram.prototype.init = function ( data ) {
12
+ if (data == undefined) {
13
+ return;
14
+ }
15
+ // Pre-init - can allow others to modify message data
16
+ jQuery( window ).trigger( 'preinit.icegram', [ data ] );
17
+
18
+ this.data = data;
19
+ this.defaults = jQuery.extend( {}, data.defaults );
20
+ this.message_data = data.messages;
21
+ this.messages, this.tracking_data = [];
22
+ this.message_template_cache = {};
23
+ this.map_id_to_index = {};
24
+ this.map_type_to_index = {};
25
+ this.mode = (window.ig_mode == undefined) ? 'local' : window.ig_mode;
26
+ this.powered_by = { link: 'https://www.icegram.com/?utm_source=inapp&utm_campaign=poweredby&utm_medium=' };
27
+ //this.timer = setInterval( this.timer_tick, 1000 );
28
+
29
+ // Add powered by properties
30
+ this.powered_by.text = this.defaults.powered_by_text;
31
+ this.powered_by.logo = this.defaults.powered_by_logo;
32
+
33
+ // Add container div for Icegram
34
+ jQuery('body').append('<div id="icegram_messages_container"></div>');
35
+ // Loop over message data and create messages & maps
36
+ var i = 0;
37
+ this.messages = [];
38
+ var self = this;
39
+ if (this.message_data.length > 0) {
40
+ jQuery.each( this.message_data, function ( i, v ) {
41
+ try {
42
+ // dont check cookies in preview mode
43
+ if(window.location.href.indexOf("campaign_preview_id") == -1){
44
+ //check cookies in js
45
+ if(v['retargeting'] == 'yes' && jQuery.cookie('icegram_campaign_shown_'+v['campaign_id']) == 1){
46
+ return;
47
+ }
48
+ if(v['retargeting_clicked'] == 'yes' && jQuery.cookie('icegram_campaign_clicked_'+v['campaign_id']) == 1){
49
+ return;
50
+ }
51
+ }
52
+ //set delay time of mobile popup as -1
53
+ if(v['ig_mobile_popup'] !== 'undefined' && v['ig_mobile_popup'] == true){
54
+ v['delay_time'] = -1;
55
+ }
56
+ var m = null;
57
+ var classname_suffix = v['type'].split('-').join(' ').ucwords().split(' ').join('_');
58
+ if (typeof (window['Icegram_Message_Type_' + classname_suffix]) === 'function') {
59
+ m = new window['Icegram_Message_Type_' + classname_suffix]( v );
60
+ } else {
61
+ m = new Icegram_Message_Type( v );
62
+ }
63
+ self.messages.push( m );
64
+ self.map_id_to_index['_'+v['id'] ] = i;
65
+ self.map_type_to_index[ v['type'] ] = jQuery.isArray(self.map_type_to_index[ v['type'] ]) ? self.map_type_to_index[ v['type'] ] : new Array();
66
+ self.map_type_to_index[ v['type'] ].push(i);
67
+
68
+ } catch(err) {
69
+ console.log(err);
70
+ }
71
+ });
72
+ }
73
+
74
+ // Submit event data on unload and at every 5 seconds...
75
+ jQuery( window ).on('unload', function() {
76
+ if (typeof(window.icegram.submit_tracking_data) === 'function') {
77
+ window.icegram.submit_tracking_data( false );
78
+ }
79
+ } );
80
+ setInterval( function() {
81
+ if (typeof(window.icegram.submit_tracking_data) === 'function') {
82
+ window.icegram.submit_tracking_data( true );
83
+ } } , 5 * 1000 );
84
+
85
+
86
+ // Trigger event for others!
87
+ jQuery( window ).trigger( 'init.icegram', [ this ] );
88
+ };
89
+
90
+
91
+ Icegram.prototype.timer_tick = function ( ) {
92
+
93
+ };
94
+
95
+ // Message template cache - get / set
96
+ Icegram.prototype.get_template_fn = function ( type ) {
97
+ return this.message_template_cache[ type ];
98
+ };
99
+ Icegram.prototype.set_template_fn = function ( type, fn ) {
100
+ this.message_template_cache[ type ] = fn;
101
+ };
102
+
103
+ // Utility functions to get message instances
104
+ Icegram.prototype.get_message = function ( index ) {
105
+ if (this.messages.length > index) {
106
+ return this.messages[ index ];
107
+ }
108
+ return undefined;
109
+ };
110
+
111
+ Icegram.prototype.get_message_by_id = function ( id ) {
112
+ if ( this.map_id_to_index.hasOwnProperty( '_'+id )) {
113
+ var index = this.map_id_to_index[ '_'+id ];
114
+ return this.get_message( index );
115
+ }
116
+ return undefined;
117
+ };
118
+ Icegram.prototype.get_message_by_campaign_id = function ( ids ) {
119
+ ids = String(ids);
120
+ var campaign_messages = [];
121
+ var ig_messages = this.messages;
122
+ //spilt ids string
123
+ if(ids.indexOf(" ")){
124
+ ids = ids.split(" ");
125
+ }
126
+ jQuery.each(ids,function(i,id){
127
+ jQuery.each( ig_messages ,function(k,v){
128
+ if(id == v.data.campaign_id){
129
+ campaign_messages.push(v);
130
+ }
131
+ });
132
+ });
133
+ return campaign_messages;
134
+ };
135
+
136
+ Icegram.prototype.get_messages_by_type = function ( type ) {
137
+ if ( this.map_type_to_index.hasOwnProperty( type )) {
138
+ var indices = this.map_type_to_index[ type ];
139
+ var matches = [];
140
+ if (jQuery.isArray( indices )) {
141
+ var self = this;
142
+ jQuery.each( indices, function ( i, v ) {
143
+ matches.push( self.get_message( v ) );
144
+ } );
145
+ }
146
+ return matches;
147
+ }
148
+ return undefined;
149
+ };
150
+
151
+ //Get powered by link
152
+ Icegram.prototype.get_powered_by = function ( type ) {
153
+ var res = jQuery.extend( {}, this.powered_by );
154
+ res.link = res.link + (type || '');
155
+ return res;
156
+ }
157
+
158
+
159
+ //Event tracking
160
+ Icegram.prototype.track = function ( ev, params ) {
161
+ if (typeof(params) === 'object' && params.hasOwnProperty('message_id') && params.hasOwnProperty('campaign_id') && params.message_id.indexOf('_00') == -1 ) {
162
+ jQuery( window ).trigger( 'track.icegram', [ ev, params ] );
163
+ this.tracking_data.push( { 'type': ev, 'params': params} );
164
+ }
165
+ }
166
+ Icegram.prototype.submit_tracking_data = function ( async ) {
167
+ var protocol = window.location.protocol.split(':');
168
+ var a = protocol[0];
169
+ var protocol1 = this.data.ajax_url.split('://');
170
+ var b = protocol1[0];
171
+
172
+ if (this.tracking_data.length > 0 && window.location.href.indexOf("campaign_preview_id") == -1 && !this.is_bot()) {
173
+ var params = {
174
+ type: 'POST',
175
+ url: this.data.ajax_url,
176
+ async: (async || false),
177
+ data: {
178
+ action: 'icegram_event_track',
179
+ event_data: JSON.parse(JSON.stringify(this.tracking_data)),
180
+ ig_remote_url: (this.mode == 'remote') ? window.location.href : undefined,
181
+ },
182
+ success: function(data, status, xhr) {
183
+ },
184
+ error: function(data, status, xhr) {
185
+ }
186
+ };
187
+ if (this.mode == 'remote') {
188
+ params['xhrFields'] = { withCredentials: true };
189
+ params['crossDomain'] = true;
190
+ params['async'] = true;
191
+ } else {
192
+ if( a != b ){
193
+ params['xhrFields'] = { withCredentials: true };
194
+ jQuery.extend(params.data, {ig_local_url_cs: window.location.href });
195
+ }
196
+ }
197
+
198
+ jQuery.ajax(params);
199
+ this.tracking_data = [];
200
+ }
201
+ }
202
+
203
+ Icegram.prototype.is_bot = function ( ) {
204
+ var bot_list = /bot|spider|crawl|sucker|ia_archiver|alexa|spade|slurp|webbug|ZyBorg|Feedfetcher-Google|Mediapartners-Google|aolserver|seamonkey|binlar|casper|comodo|feedfinder|jakarta|java|larbin|libwww|pycurl|linkwalker|steeler|nutch|turnit|zmeu/i;
205
+ if ( bot_list.test( navigator.userAgent ) ){
206
+ return true;
207
+ } else {
208
+ return false;
209
+ }
210
+ }
211
+
212
+ // hide all messages
213
+ Icegram.prototype.hide_all_messages = function ( ) {
214
+ if (this.messages.length > 0) {
215
+ jQuery.each(this.messages , function( i, v ){
216
+ v.hide();
217
+ });
218
+ }
219
+ }
220
+
221
+ /**
222
+ * Icegram Message Type - Base class
223
+ **/
224
+ function Icegram_Message_Type( data ) {
225
+
226
+ var data, template, dom_id, el, type, root_container;
227
+
228
+ this.root_container = "#icegram_messages_container";
229
+ this.data = data;
230
+ this.type = data.type;
231
+ this.data.delay_time = parseInt(this.data.delay_time);
232
+ //add http:// to link
233
+ if (typeof(this.data.link) === 'string' && this.data.link != '' && !/^tel:/i.test(this.data.link)) {
234
+ if (!/^https?:\/\//i.test(this.data.link)) {
235
+ this.data.link = "http://" + this.data.link;
236
+ }
237
+ }
238
+ this.set_template( this.get_template_default() );
239
+
240
+ jQuery( window ).trigger( 'msg_preinit.icegram', [ this ] );
241
+ this.init();
242
+ }
243
+
244
+ Icegram_Message_Type.prototype.init = function ( ) {
245
+ // Render HTML
246
+ this.render();
247
+ // Add handlers
248
+ this.add_event_handlers();
249
+ };
250
+
251
+ Icegram_Message_Type.prototype.add_event_handlers = function ( ) {
252
+ this.el.on('click', {self: this}, this.on_click);
253
+ jQuery( window ).on('resize', {self: this}, this.on_resize);
254
+ }
255
+ // TODO:: add JS animation in this if necessary
256
+ Icegram_Message_Type.prototype.animations = {
257
+ };
258
+
259
+ Icegram_Message_Type.prototype.embed_form = function ( ) {
260
+ if(jQuery.inArray(this.data.type, ['toast', 'badge', 'ribbon', 'exit-redirect']) === -1 ){
261
+ var form_text = null;
262
+ var form_layout = this.data.form_layout;
263
+ var form_has_label = this.data.form_has_label;
264
+ var form_style = this.data.form_style || 'none';
265
+ var form_button_text = this.data.label || undefined;
266
+ form_style = form_style.toLowerCase().replace(' ', '_');
267
+
268
+ if(this.data.use_form != undefined && this.data.use_form == 'yes') {
269
+ form_text = this.data.form_html;
270
+ }
271
+
272
+ //Check for old form code in message_body
273
+ //If found, process that form
274
+ if(this.el.find('form.ig_embed_form').length > 0){
275
+ var form_old = this.el.find('form.ig_embed_form');
276
+ form_layout = 'inline';
277
+ // Change form layout handling for messagetype having bottom and inline options only
278
+ if(jQuery.inArray(this.data.type, ['messenger', 'tab', 'sidebar', 'interstitial', 'sticky']) === -1 ){
279
+ if(form_old.hasClass('ig_left') ){
280
+ form_layout = 'left';
281
+ }else if(form_old.hasClass('ig_right')){
282
+ form_layout = 'right';
283
+ }
284
+ }
285
+ if(form_layout == 'inline'){
286
+ this.el.find('form.ig_embed_form').replaceWith('<div class="ig_form_container layout_inline"></div>');
287
+ }
288
+ form_has_label = (form_old.find('.ig_form_el_group label').length > 0) ? 'yes' : undefined;
289
+ if(form_old.find('.ig_button').length == 0 && form_old.find('button[type=submit]').length == 0){
290
+ form_button_text = form_button_text || 'Submit';
291
+ form_old.append('<input class="ig_button" type="submit" value="' + form_button_text +'">');
292
+ }
293
+ form_text = jQuery('<div/>').append(form_old).html();
294
+ }
295
+ if(form_text == null) {
296
+ this.el.find('.ig_form_container').remove();
297
+ }else{
298
+ var form_code = window.icegram.formProcess(this, form_text);
299
+ // TODO :: test this properly
300
+ // if(form_code){
301
+ if(form_code && this.el.find('.ig_form_container form').length == 0){
302
+ var form_header = (this.data.form_header != undefined && this.data.form_header != '' ) ? ('<div class="ig_form_header">'+this.data.form_header+'</div>') : '';
303
+ var form_footer = (this.data.form_footer != undefined && this.data.form_footer != '' ) ? ('<div class="ig_form_footer">'+this.data.form_footer+'</div>') : '';
304
+ var form_original_data = jQuery('<div/>').html(form_text);
305
+ this.el.find('.ig_form_container')
306
+ .append(form_header)
307
+ .append(form_code)
308
+ .append(form_footer);
309
+
310
+ //Add rainmaker class, form_type class and append success msg to the processed form container
311
+ if(this.data.rainmaker_form_code && this.data.rainmaker_form_code != ''){
312
+ if(!this.data.cta || this.data.cta === 'form' || !this.data.show_response || !this.data.response_text || (this.data.response_text && this.data.response_text == '') ){
313
+ this.data.response_text = form_original_data.find('.rm_form_message').html() || '';
314
+ }
315
+ this.el.find('.ig_form_container')
316
+ .addClass(form_original_data.find('.rm_form_container').data('type'))
317
+ .data('form-id', form_original_data.find('.rm_form_container').data('form-id'))
318
+ .addClass('rainmaker_form')
319
+ var rm_script = form_original_data.find('#rm_script');
320
+ var rm_style = form_original_data.find('#rm_style');
321
+ this.el.find('.ig_form_container').prepend(rm_style).append(rm_script);
322
+
323
+ var rm_captch_div = form_original_data.find('.rm_captcha');
324
+ var rm_error_div = form_original_data.find('.rm_form_error_message');
325
+ // this.el.find('.ig_form_container').prepend(rm_style).append(rm_script).after(rm_captcha);
326
+
327
+ this.el.find('.ig_form_container form').prepend(rm_error_div).append(rm_captch_div);
328
+ }
329
+
330
+ if(form_has_label == undefined ){
331
+ this.el.find('.ig_el_label').not('span.ig_el_label').remove();
332
+ }else{
333
+ this.el.find('input, textarea').removeAttr('placeholder');
334
+ this.el.find('select option.ig_el_placeholder').remove();
335
+ }
336
+ if(this.el.find('.ig_form_container .ig_button').length > 0){
337
+ this.el.find('.ig_button').not('.ig_form_container .ig_button').hide();
338
+ form_button_text = (form_button_text || this.el.find('.ig_button').val()) || 'Submit'; //TODO :: test this
339
+ this.el.find('.ig_button').val(form_button_text);
340
+ }
341
+ this.el.addClass('ig_form_'+ form_layout);
342
+
343
+ var inline_style = '';
344
+ if(this.data.form_bg_color != undefined && this.data.form_bg_color != '') {
345
+ this.el.find('.ig_form_container').css('background-color', this.data.form_bg_color);
346
+ inline_style += '.ig_form_'+ form_layout + '.ig_form_' + form_style + ' .ig_form_container:before{ background-color:' + this.data.form_bg_color + '; border-color:' + this.data.form_bg_color + ';}';
347
+ }else{
348
+ inline_style += '.ig_form_'+ form_layout + '.ig_form_' + form_style + ' .ig_form_container:before{ display:none;}';
349
+ }
350
+ if(this.data.form_text_color != undefined && this.data.form_text_color != '') {
351
+ this.el.find('.ig_form_container').css('color', this.data.form_text_color);
352
+ }
353
+ this.el.addClass('ig_form_'+ form_style).find('.ig_form_container').prepend('<style type="text/css">'+ inline_style +'</style>');
354
+ // this.el.find('.ig_form_container.layout_' + form_layout + ' .ig_form_els')
355
+ // .first().addClass('ig_form_els_first').end()
356
+ // .last().addClass('ig_form_els_last');
357
+
358
+ jQuery.each( this.el.find('.ig_form_container') || [], function(i, el){
359
+ jQuery(el).find('.ig_form_els')
360
+ .first().addClass('ig_form_els_first').end()
361
+ .last().addClass('ig_form_els_last');
362
+ });
363
+ }
364
+ }
365
+
366
+ }
367
+
368
+ }
369
+
370
+
371
+ Icegram_Message_Type.prototype.render = function ( ) {
372
+
373
+ this.pre_render();
374
+
375
+ var html = this.render_template();
376
+
377
+ // Add html to DOM, Setup dom_id, el etc.
378
+ try {
379
+ jQuery(this.root_container).append(html);
380
+ } catch ( e ) {}
381
+
382
+ this.dom_id = 'icegram_message_'+this.data.id;
383
+ this.el = jQuery('#'+this.dom_id);
384
+ this.set_position();
385
+
386
+ var pb = window.icegram.get_powered_by( this.type );
387
+ if ( pb.hasOwnProperty('link') && pb.hasOwnProperty('text') && pb.text != '' ) {
388
+ this.add_powered_by( pb );
389
+ }
390
+
391
+ // Hide elements if insufficient data...
392
+ if(this.data.headline == undefined || this.data.headline == '') {
393
+ this.el.find('.ig_headline').hide();
394
+ }
395
+ if(this.data.icon == undefined || this.data.icon == '') {
396
+ this.el.addClass('ig_no_icon').find('.ig_icon').remove();
397
+ }
398
+ if(this.data.message == undefined || this.data.message == '') {
399
+ this.el.find('.ig_message').hide();
400
+ }
401
+ if(this.data.label == undefined || this.data.label == '') {
402
+ this.el.find('.ig_button').hide();
403
+ }
404
+
405
+ // Form Embed
406
+ this.embed_form();
407
+
408
+ // Apply colors, if theme defaults in not checked
409
+ if(this.data.use_theme_defaults == undefined || this.data.use_theme_defaults != 'yes'){
410
+ if (this.data.text_color != undefined && this.data.text_color != '') {
411
+ this.el.css('color', this.data.text_color);
412
+ this.el.find('.ig_container').css('color', this.data.text_color);
413
+ }
414
+ if (this.data.bg_color != undefined && this.data.bg_color != '') {
415
+ this.el.css('background-color', this.data.bg_color);
416
+ this.el.find('.ig_container').css('background-color', this.data.bg_color);
417
+ }
418
+
419
+ if (this.data.cta_bg_color != undefined && this.data.cta_bg_color != '') {
420
+ this.el.find('.ig_button, form input[type="submit"]').css('background-color', this.data.cta_bg_color);
421
+ var bgColorHSL = window.icegram.hexToHsl(this.data.cta_bg_color); // border color based on bg_color
422
+ this.el.find('.ig_button, form input[type="submit"]').css('border-color', "hsl(" + bgColorHSL.h + "," + (bgColorHSL.s-5) + "%," + (bgColorHSL.l-8) + "%)" );
423
+ }
424
+ if (this.data.cta_text_color != undefined && this.data.cta_text_color != '') {
425
+ this.el.find('.ig_button, form input[type="submit"]').css('color', this.data.cta_text_color);
426
+ }
427
+ }
428
+
429
+ // Add Custom CSS and js here.
430
+ if(this.data.use_custom_code){
431
+ if(this.data.custom_css){
432
+ // this.el.prepend('<style id="ig_custom_css_'+this.data.id+'" type="text/css">' + this.data.custom_css.replace(/#ig_this_message/g, '#'+this.dom_id).replace(/\.ig_this_message_root/g, '.ig_this_message_root_'+this.data.id) + '</style>');
433
+ this.el.prepend('<style id="ig_custom_css_'+this.data.id+'" type="text/css">' + this.data.custom_css.replace(/#ig_this_message/g, '#'+this.dom_id)+ '</style>');
434
+ }
435
+ //TODO:: Add provision to replace #ig_this_message with dom_id and/or message_id
436
+ // if(this.data.custom_js){
437
+ // jQuery('body').append(this.data.custom_js);
438
+ // }
439
+ }
440
+
441
+ // Hint clickability for buttons / ctas
442
+ if (typeof(this.data.link) === 'string' && this.data.link != '') {
443
+ this.el.parent().find('.ig_cta, .ig_button').css('cursor', 'pointer');
444
+ }
445
+
446
+ this.post_render();
447
+ // Hide the message by default
448
+ this.hide( {}, true );
449
+
450
+ // Set up message display trigger
451
+ this.set_up_show_trigger();
452
+ }
453
+
454
+ //form process on
455
+ Icegram.prototype.formProcess = function(self, form_text) {
456
+ var form_tags = jQuery('<div/>')
457
+ .html(form_text)
458
+ .find('input[name="fake_text"]').data('required_field', true).end() // Arforms
459
+ .find('input.rm_required_feild').data('required_field', true).end() // detect Rainmaker Forms honeypot fields here
460
+ .find('.gform_validation_container input').data('required_field', true).end() // detect Gravity Forms honeypot fields here
461
+ .find('.rm_captcha_input').data('keep_class', true).end() //
462
+ .find('.required_field').data('required_field', true).end() // detect Form Craft honeypot fields here
463
+ .find('input, label, select, textarea, button')// Get only these tags from the form
464
+ .not('.rm_captcha_input, .rm_captcha_verify')
465
+ .not('br');
466
+
467
+ if(form_tags.length > 0){
468
+ var form_container = jQuery('<div class="ig_embed_form_container ig_clear_fix"></div>');
469
+ var form_object = jQuery('<div/>')
470
+ .html(form_text)
471
+ .find('form')
472
+ .removeAttr('class')
473
+ .removeAttr('style')
474
+ .addClass('ig_clear_fix')
475
+ .empty();
476
+
477
+ var label_text = '.';
478
+ var el_count = 0;
479
+ jQuery.each(form_tags, function(i, form_el){
480
+ var el_obj = jQuery(form_el);
481
+ var el_group = jQuery('<div class="ig_form_els"></div>');
482
+ el_obj.removeAttr('style');
483
+ if(!el_obj.data('keep_class')){
484
+ el_obj.removeAttr('class');
485
+ }
486
+
487
+ // add all the cases for bot here
488
+ if( el_obj.attr('tabindex') == -1
489
+ || el_obj.is('*[name*="[abs]"]')
490
+ || el_obj.data('required_field')
491
+ || el_obj.attr('name') == 'data[email]'
492
+ || el_obj.attr('name') == '_mc4wp_required_but_not_really'){
493
+ el_obj.addClass('ig_form_required_field').removeData('required_field');
494
+ el_count--;
495
+ }
496
+
497
+ //hidden fields
498
+ if( el_obj.attr('type') == 'hidden' || el_obj.prop('disabled') === true){
499
+ el_obj.addClass('ig_form_hidden_field');
500
+ el_count--;
501
+ }
502
+
503
+ if(el_obj.is('label')){ // get the label if found.
504
+ label_text = el_obj.not('input, select, textarea, button, span, br').text().replace(/\s+/g, ' ') || '.';
505
+ }else if((el_obj.is('input') || el_obj.is('button') || el_obj.is('textarea') || el_obj.is('select')) && !el_obj.is('input[type=radio]') ) {
506
+ el_obj.removeAttr('id');
507
+
508
+ if(el_obj.is('button')){ // if button found convert it to input type="submit"
509
+ var button_text = el_obj.not('br, span, div').text().trim() || '';
510
+ el_obj.remove();
511
+ el_obj = jQuery('<input type="submit" value="' + button_text +'">');
512
+ }
513
+
514
+ if((el_obj.is('input[type=submit]') || el_obj.is('input[type=button]') ) && !el_obj.is('.ig_form_hidden_field, .ig_form_required_field')){ // TODO :: check do we need to handle input[type=button]
515
+ el_obj.addClass('ig_button');
516
+ }
517
+ //TODO :: temp additon Test it, in all cases
518
+ if(el_obj.is('input[type=text]') || el_obj.is('input[type=email]') ){
519
+ el_obj.attr('size', 25);
520
+ }
521
+ label_class = 'ig_el_label ig_button_label';
522
+ if(label_text != '.'){
523
+ label_class = 'ig_el_label';
524
+ if(el_obj.is('select')) {
525
+ jQuery('<option class="ig_el_placeholder">' + label_text + '</option>').prependTo(el_obj);
526
+ }else{
527
+ el_obj.attr('placeholder', label_text);
528
+ }
529
+ }
530
+ jQuery('<label class="'+label_class+ '">' + label_text + '</label>').appendTo(el_group);
531
+ label_text = '.';
532
+ el_group.append(el_obj);
533
+ form_container.append(el_group);
534
+
535
+ el_count++;
536
+ }else if(el_obj.is('input[type=radio]') ) {
537
+ label_class = 'ig_el_label ig_button_label';
538
+ if(label_text != '.'){
539
+ label_class = 'ig_el_label';
540
+ }
541
+ jQuery('<label><span class="'+label_class+'">' + label_text + '</span></label>').prepend(el_obj).appendTo(el_group);
542
+ label_text = '.';
543
+
544
+ el_group.addClass('ig_form_el_radio');
545
+ form_container.append(el_group);
546
+ el_count++;
547
+ }
548
+ }); // loop End
549
+
550
+ var elsClass = ['', 'ig_full', 'ig_half', 'ig_third', 'ig_quater'];
551
+ el_count = (el_count < 4 ) ? el_count : 4;
552
+
553
+ //Add bot field if not detected
554
+ if(form_container.find('.ig_form_required_field').length <= 0){
555
+ form_container.append('<div class="ig_form_els"><input class="ig_form_required_field" type="text" tabindex="-1" value="" /></div>');
556
+ }
557
+ form_container.addClass(elsClass[el_count])
558
+ .find('.ig_form_required_field').parent().removeClass('ig_form_els').css({'position':'absolute' , 'left': '-5000px'}).end().end()
559
+ .find('.ig_form_hidden_field').parent().removeClass('ig_form_els').css({'display':'none'});
560
+ form_object.append(form_container);
561
+
562
+ // TODO :: Qucik fix for Rainmaker form submission - success message
563
+ // return jQuery('<div/>').append(form_object).append(rm_message).html();
564
+ return jQuery('<div/>').append(form_object).html();
565
+ }
566
+ return null;
567
+ }
568
+
569
+
570
+ Icegram_Message_Type.prototype.render_template = function ( ) {
571
+ if ( typeof(window.icegram.get_template_fn( this.type ) ) !== 'function') {
572
+ // Adapted from John Resig's Simple JavaScript Templating
573
+ window.icegram.set_template_fn( this.type, new Function("obj",
574
+ "var p=[],print=function(){p.push.apply(p,arguments);};" +
575
+ "with(obj){p.push('" +
576
+ this.template
577
+ .replace(/[\r\t\n]/g, " ")
578
+ .split("{{").join("\t")
579
+ .replace(/((^|\}\})[^\t]*)'/g, "$1\r")
580
+ .replace(/\t=(.*?)\}\}/g, "',$1,'")
581
+ .split("\t").join("');")
582
+ .split("}}").join("p.push('")
583
+ .split("\r").join("\\'")
584
+ + "');}return p.join('');") );
585
+ }
586
+ return window.icegram.get_template_fn( this.type )( this.data );
587
+ };
588
+
589
+ Icegram_Message_Type.prototype.pre_render = function ( ) {
590
+ };
591
+
592
+ Icegram_Message_Type.prototype.post_render = function ( ) {
593
+ }
594
+
595
+ Icegram_Message_Type.prototype.set_up_show_trigger = function ( ) {
596
+ if (!isNaN(this.data.delay_time)) {
597
+ if( this.data.delay_time >= 0 ) {
598
+ var self = this;
599
+ this.timer = setTimeout( function() { self.show(); } , this.data.delay_time * 1000 );
600
+ }
601
+ } else {
602
+ this.show();
603
+ }
604
+ };
605
+
606
+ Icegram_Message_Type.prototype.set_template = function ( str ) {
607
+ this.template = str;
608
+ };
609
+
610
+ Icegram_Message_Type.prototype.get_template_default = function () {
611
+ return '<div id="icegram_message_{{=id}}" class="icegram">' +
612
+ '<div class="ig_headline">{{=headline}}</div>' +
613
+ '</div>';
614
+ };
615
+
616
+ Icegram_Message_Type.prototype.show = function ( options, silent ) {
617
+ if ( !this.is_visible() ) {
618
+ this.animate('in');
619
+ this.pre_show();
620
+ this.el.show( options );
621
+ this.el.addClass('ig_show').removeClass('ig_hide');
622
+ silent !== true && this.track( 'shown' );
623
+ this.post_show();
624
+ }
625
+ var self = this;
626
+ window.icegram.adjustFormContainerHeight(self);
627
+ };
628
+
629
+ Icegram_Message_Type.prototype.hide = function ( options, silent ) {
630
+ if ( this.is_visible() ) {
631
+ var self = this;
632
+ this.animate('out');
633
+ this.pre_hide();
634
+ setTimeout(function(){
635
+ if(!self.el.hasClass('ig_no_hide')){
636
+ self.el.hide( options );
637
+ }
638
+ self.el.addClass('ig_hide').removeClass('ig_show');
639
+ },500);
640
+ silent !== true && this.track( 'closed' );
641
+ this.post_hide();
642
+ }
643
+ };
644
+
645
+ Icegram_Message_Type.prototype.set_position = function ( ) {
646
+ };
647
+
648
+ Icegram_Message_Type.prototype.add_powered_by = function ( pb ) {
649
+ };
650
+
651
+ Icegram_Message_Type.prototype.pre_show = function ( ) {
652
+ };
653
+
654
+ Icegram_Message_Type.prototype.post_show = function ( ) {
655
+ };
656
+
657
+ Icegram_Message_Type.prototype.pre_hide = function ( ) {
658
+ };
659
+
660
+ Icegram_Message_Type.prototype.post_hide = function ( ) {
661
+ };
662
+
663
+ // Event tracking wrapper
664
+ Icegram_Message_Type.prototype.track = function ( e, params ) {
665
+ if (typeof( window.icegram.track ) === 'function' ) {
666
+ params = params || {};
667
+ jQuery.extend( params, {message_id: this.data.id, campaign_id: this.data.campaign_id, expiry_time:this.data.expiry_time, expiry_time_clicked:this.data.expiry_time_clicked} );
668
+ window.icegram.track( e, params);
669
+ }
670
+ };
671
+
672
+ Icegram_Message_Type.prototype.is_visible = function ( ) {
673
+ return this.el.hasClass('ig_show');
674
+ };
675
+
676
+ // Click and other event handlers
677
+ Icegram_Message_Type.prototype.toggle = function ( options ) {
678
+ if ( this.is_visible() ) {
679
+ this.hide( options );
680
+ } else {
681
+ this.show( options );
682
+ };
683
+ };
684
+
685
+ Icegram_Message_Type.prototype.on_click = function ( e ) {
686
+
687
+ e.data = e.data || { self: this };
688
+ // Clicked on close button
689
+ if (jQuery(e.target).filter('.ig_close').length
690
+ || jQuery(e.target).parents('.ig_close').length ) {
691
+ e.data.self.hide();
692
+ return;
693
+ }
694
+ var form = jQuery(e.target).closest('.icegram').find('form:visible').first();
695
+ // Clicking on ig_button or any other link with a class ig_cta will trigger cta click
696
+ if((jQuery(e.target).filter('.ig_button, .ig_cta, :submit').length
697
+ || jQuery(e.target).parents('button[type=submit]').length
698
+ || jQuery(e.target).filter('.es_submit_button').length // Email subscriber form in messagebody-cta compatiblity
699
+ || (jQuery(e.target).parents('.ig_button, .ig_cta').length && !(form.find('.ig_button, input[type=button], input[type=submit], button[type=submit]' ).length > 0) ))
700
+ && jQuery(e.target).not('.donot-track').length){
701
+ e.data.self.on_cta_click( e );
702
+ }
703
+ };
704
+
705
+ Icegram_Message_Type.prototype.on_resize = function ( e ) {
706
+ };
707
+
708
+ Icegram_Message_Type.prototype.on_cta_click = function ( e ) {
709
+ e.data = e.data || { self: this };
710
+ var form = jQuery(e.target).closest('.icegram').find('form:visible').first();
711
+ console.log(form, 'form');
712
+ if(jQuery(form).length && jQuery(form).find('.ig_form_required_field').length
713
+ && jQuery(form).find('.ig_form_required_field').val() !== ''){
714
+ e.preventDefault();
715
+ e.data.self.hide();
716
+ return;
717
+ }
718
+ // Do not track clicks, if form submission has failed because of honeypot
719
+ e.data.self.track( 'clicked' );
720
+
721
+ if(jQuery(form).length){
722
+ jQuery(form).submit(function(e){
723
+ console.log('in form submit');
724
+ if( jQuery(form).hasClass('ig_form_init_done')){
725
+ e.preventDefault();
726
+ }
727
+ });
728
+ }else if (typeof(e.data.self.data.link) === 'string' && e.data.self.data.link != '') {
729
+ window.location.href = e.data.self.data.link;
730
+ e.data.self.hide();
731
+ }else if(e.data.self.data.hide !== false){
732
+ e.data.self.hide();
733
+ }
734
+
735
+ };
736
+
737
+ Icegram_Message_Type.prototype.animate = function ( mode ) {
738
+ if (typeof(this.data.animation) !== 'undefined') {
739
+ var fn = this.data.animation;
740
+ var self = this;
741
+ if (mode == 'in') {
742
+ if(typeof(this.animations[fn+'_in']) === 'function'){
743
+ this.animations[fn+'_in'](self);
744
+ } else if (!this.el.hasClass('ig_anim_'+fn+'_in') ) {
745
+ this.el.removeClass('ig_anim_'+fn+'_out');
746
+ setTimeout(function(){
747
+ self.el.addClass('ig_anim_'+fn+'_in');
748
+ } ,1);
749
+ }
750
+ }else if (mode == 'out') {
751
+ if(typeof(this.animations[fn+'_out']) === 'function'){
752
+ this.animations[fn+'_out'](self);
753
+ } else {
754
+ this.el.removeClass('ig_anim_'+fn+'_in');
755
+ setTimeout(function(){
756
+ self.el.addClass('ig_anim_'+fn+'_out');
757
+ } ,1);
758
+
759
+ }
760
+ }
761
+ }
762
+ }
763
+
764
+ /**
765
+ * Utilities
766
+ */
767
+ String.prototype.ucwords = function() {
768
+ return this.toLowerCase().replace(/\b[a-z]/g, function(letter) {
769
+ return letter.toUpperCase();
770
+ });
771
+ }
772
+ // Adjustment of Form container height.
773
+ Icegram.prototype.adjustFormContainerHeight = function(that) {
774
+ var form_layout = '';
775
+ if(that.el.hasClass('ig_form_left') || that.el.hasClass('ig_form_right')){
776
+ form_layout = that.el.hasClass('ig_form_left') ? 'left' : 'right';
777
+ var height = ( that.el.find('.ig_data').outerHeight() > that.el.find('.ig_form_container.layout_' + form_layout ).outerHeight())
778
+ ? that.el.find('.ig_data').outerHeight()
779
+ : that.el.find('.ig_form_container.layout_' + form_layout ).outerHeight();
780
+ that.el.find('.ig_form_container').outerHeight(height);
781
+ }
782
+
783
+ // if(that.el.hasClass('ig_form_bottom') || that.el.hasClass('ig_form_inline')){
784
+ // form_layout = that.el.hasClass('ig_form_bottom') ? 'bottom' : 'inline';
785
+ // var height = ( that.el.find('.ig_form_container.layout_' + form_layout +' .ig_button').innerHeight() > that.el.find('.ig_form_container input').first().outerHeight())
786
+ // ? that.el.find('.ig_form_container.layout_' + form_layout +' .ig_button').innerHeight()
787
+ // : that.el.find('.ig_form_container input').first().outerHeight();
788
+ // that.el.find('.ig_form_container input, .ig_form_container select, .ig_form_container textarea')
789
+ // .not('.ig_form_container.layout_' + form_layout +' .ig_button, .ig_form_el_radio input').outerHeight(height);
790
+ // }
791
+ }
792
+ //Color conversion Functions.
793
+ Icegram.prototype.hexToRgb = function(hex) {
794
+ var result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex);
795
+ return result ? {
796
+ r: parseInt(result[1], 16),
797
+ g: parseInt(result[2], 16),
798
+ b: parseInt(result[3], 16)
799
+ } : null;
800
+ }
801
+ Icegram.prototype.rgbToHsl = function(r, g, b) {
802
+ r /= 255, g /= 255, b /= 255;
803
+ var max = Math.max(r, g, b), min = Math.min(r, g, b);
804
+
805
+ var h, s, l = (max + min) / 2;
806
+ if(max == min){
807
+ h = s = 0; // achromatic
808
+ }else{
809
+ var d = max - min;
810
+ s = l > 0.5 ? d / (2 - max - min) : d / (max + min);
811
+ switch(max){
812
+ case r: h = (g - b) / d; break;
813
+ case g: h = (b - r) / d + 2; break;
814
+ case b: h = (r - g) / d + 4; break;
815
+ }
816
+ l = Math.floor(l * 100);
817
+ s = Math.floor(s * 100);
818
+ h = Math.floor(h * 60);
819
+ if(h<0){
820
+ h += 360;
821
+ }
822
+ }
823
+ return {h: h, s: s, l: l};
824
+ }
825
+
826
+ Icegram.prototype.hexToHsl = function (hex) {
827
+ var rgb = window.icegram.hexToRgb(hex);
828
+ return window.icegram.rgbToHsl(rgb.r, rgb.g, rgb.b);
829
+ }
830
+
831
+ if (typeof Object.create != 'function') {
832
+ (function () {
833
+ var F = function () {};
834
+ Object.create = function (o) {
835
+ if (arguments.length > 1) {
836
+ throw Error('Second argument not supported');
837
+ }
838
+ if (o === null) {
839
+ throw Error('Cannot set a null [[Prototype]]');
840
+ }
841
+ if (typeof o != 'object') {
842
+ throw TypeError('Argument must be an object');
843
+ }
844
+ F.prototype = o;
845
+ return new F();
846
+ };
847
+ })();
848
+ }
849
+
850
+ //ES - success event handler
851
+ var es_responseHandler = function (e) {
852
+
853
+ if( typeof icegram !== 'undefined'){
854
+ var msg_id = ((jQuery(e.target).closest('[id^=icegram_message_]') || {}).attr('id') || '').split('_').pop() || 0 ;
855
+ var msg = icegram.get_message_by_id(msg_id) || undefined;
856
+ if(typeof msg !== 'undefined'){
857
+ jQuery(e.target).find('.es_msg_ig').remove();
858
+ if(msg.data.cta === 'form_via_ajax' && e.detail.es_response === 'success'){
859
+ if(msg.data.response_text === ''){
860
+ msg.data.response_text = e.detail.msg;
861
+ }
862
+ msg.el.trigger('form_success.ig_cta', [msg]);
863
+ }else{
864
+ //append message after form if error message]
865
+ if(typeof msg.data.use_form !== 'undefined'){
866
+ jQuery(e.target).append('<div class="es_msg es_msg_ig">'+ (e.detail.msg) +'</div>');
867
+ }
868
+ }
869
+ }
870
+ }
871
+ }; //success.es
872
+
873
+ document.addEventListener("es_response", es_responseHandler, false);
874
+
875
+ // jQuery Cookies
876
+ if(typeof(jQuery.cookie) !== undefined){
877
+ (function(e){if(typeof define==="function"&&define.amd){define(["jquery"],e)}else if(typeof exports==="object"){e(require("jquery"))}else{e(jQuery)}})(function(e){function n(e){return u.raw?e:encodeURIComponent(e)}function r(e){return u.raw?e:decodeURIComponent(e)}function i(e){return n(u.json?JSON.stringify(e):String(e))}function s(e){if(e.indexOf('"')===0){e=e.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,"\\")}try{e=decodeURIComponent(e.replace(t," "));return u.json?JSON.parse(e):e}catch(n){}}function o(t,n){var r=u.raw?t:s(t);return e.isFunction(n)?n(r):r}var t=/\+/g;var u=e.cookie=function(t,s,a){if(s!==undefined&&!e.isFunction(s)){a=e.extend({},u.defaults,a);if(typeof a.expires==="number"){var f=a.expires,l=a.expires=new Date;l.setTime(+l+f*864e5)}return document.cookie=[n(t),"=",i(s),a.expires?"; expires="+a.expires.toUTCString():"",a.path?"; path="+a.path:"",a.domain?"; domain="+a.domain:"",a.secure?"; secure":""].join("")}var c=t?undefined:{};var h=document.cookie?document.cookie.split("; "):[];for(var p=0,d=h.length;p<d;p++){var v=h[p].split("=");var m=r(v.shift());var g=v.join("=");if(t&&t===m){c=o(g,s);break}if(!t&&(g=o(g))!==undefined){c[m]=g}}return c};u.defaults={};e.removeCookie=function(t,n){if(e.cookie(t)===undefined){return false}e.cookie(t,"",e.extend({},n,{expires:-1}));return!e.cookie(t)}});
878
+ }
assets/js/jquery.tipTip.min.js ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /*
2
+ * TipTip
3
+ * Copyright 2010 Drew Wilson
4
+ * www.drewwilson.com
5
+ * code.drewwilson.com/entry/tiptip-jquery-plugin
6
+ *
7
+ * Version 1.3 - Updated: Mar. 23, 2010
8
+ *
9
+ * This Plug-In will create a custom tooltip to replace the default
10
+ * browser tooltip. It is extremely lightweight and very smart in
11
+ * that it detects the edges of the browser window and will make sure
12
+ * the tooltip stays within the current window size. As a result the
13
+ * tooltip will adjust itself to be displayed above, below, to the left
14
+ * or to the right depending on what is necessary to stay within the
15
+ * browser window. It is completely customizable as well via CSS.
16
+ *
17
+ * This TipTip jQuery plug-in is dual licensed under the MIT and GPL licenses:
18
+ * http://www.opensource.org/licenses/mit-license.php
19
+ * http://www.gnu.org/licenses/gpl.html
20
+ */(function(e){e.fn.tipTip=function(t){var n={activation:"hover",keepAlive:!1,maxWidth:"200px",edgeOffset:3,defaultPosition:"bottom",delay:400,fadeIn:200,fadeOut:200,attribute:"title",content:!1,enter:function(){},exit:function(){}},r=e.extend(n,t);if(e("#tiptip_holder").length<=0){var i=e('<div id="tiptip_holder" style="max-width:'+r.maxWidth+';"></div>'),s=e('<div id="tiptip_content"></div>'),o=e('<div id="tiptip_arrow"></div>');e("body").append(i.html(s).prepend(o.html('<div id="tiptip_arrow_inner"></div>')))}else var i=e("#tiptip_holder"),s=e("#tiptip_content"),o=e("#tiptip_arrow");return this.each(function(){var t=e(this);if(r.content)var n=r.content;else var n=t.attr(r.attribute);if(n!=""){r.content||t.removeAttr(r.attribute);var u=!1;if(r.activation=="hover"){t.hover(function(){a()},function(){r.keepAlive||f()});r.keepAlive&&i.hover(function(){},function(){f()})}else if(r.activation=="focus")t.focus(function(){a()}).blur(function(){f()});else if(r.activation=="click"){t.click(function(){a();return!1}).hover(function(){},function(){r.keepAlive||f()});r.keepAlive&&i.hover(function(){},function(){f()})}function a(){r.enter.call(this);s.html(n);i.hide().removeAttr("class").css("margin","0");o.removeAttr("style");var a=parseInt(t.offset().top),f=parseInt(t.offset().left),l=parseInt(t.outerWidth()),c=parseInt(t.outerHeight()),h=i.outerWidth(),p=i.outerHeight(),d=Math.round((l-h)/2),v=Math.round((c-p)/2),m=Math.round(f+d),g=Math.round(a+c+r.edgeOffset),y="",b="",w=Math.round(h-12)/2;r.defaultPosition=="bottom"?y="_bottom":r.defaultPosition=="top"?y="_top":r.defaultPosition=="left"?y="_left":r.defaultPosition=="right"&&(y="_right");var E=d+f<parseInt(e(window).scrollLeft()),S=h+f>parseInt(e(window).width());if(E&&d<0||y=="_right"&&!S||y=="_left"&&f<h+r.edgeOffset+5){y="_right";b=Math.round(p-13)/2;w=-12;m=Math.round(f+l+r.edgeOffset);g=Math.round(a+v)}else if(S&&d<0||y=="_left"&&!E){y="_left";b=Math.round(p-13)/2;w=Math.round(h);m=Math.round(f-(h+r.edgeOffset+5));g=Math.round(a+v)}var x=a+c+r.edgeOffset+p+8>parseInt(e(window).height()+e(window).scrollTop()),T=a+c-(r.edgeOffset+p+8)<0;if(x||y=="_bottom"&&x||y=="_top"&&!T){y=="_top"||y=="_bottom"?y="_top":y+="_top";b=p;g=Math.round(a-(p+5+r.edgeOffset))}else if(T|(y=="_top"&&T)||y=="_bottom"&&!x){y=="_top"||y=="_bottom"?y="_bottom":y+="_bottom";b=-12;g=Math.round(a+c+r.edgeOffset)}if(y=="_right_top"||y=="_left_top")g+=5;else if(y=="_right_bottom"||y=="_left_bottom")g-=5;if(y=="_left_top"||y=="_left_bottom")m+=5;o.css({"margin-left":w+"px","margin-top":b+"px"});i.css({"margin-left":m+"px","margin-top":g+"px"}).attr("class","tip"+y);u&&clearTimeout(u);u=setTimeout(function(){i.stop(!0,!0).fadeIn(r.fadeIn)},r.delay)}function f(){r.exit.call(this);u&&clearTimeout(u);i.fadeOut(r.fadeOut)}}})}})(jQuery);
assets/js/magnific-popup.js ADDED
@@ -0,0 +1,3 @@
 
 
 
1
+ // Magnific Popup v1.0.0 by Dmitry Semenov
2
+ // http://bit.ly/magnific-popup#build=inline+image+retina
3
+ (function(a){typeof define=="function"&&define.amd?define(["jquery"],a):typeof exports=="object"?a(require("jquery")):a(window.jQuery||window.Zepto)})(function(a){var b="Close",c="BeforeClose",d="AfterClose",e="BeforeAppend",f="MarkupParse",g="Open",h="Change",i="mfp",j="."+i,k="mfp-ready",l="mfp-removing",m="mfp-prevent-close",n,o=function(){},p=!!window.jQuery,q,r=a(window),s,t,u,v,w=function(a,b){n.ev.on(i+a+j,b)},x=function(b,c,d,e){var f=document.createElement("div");return f.className="mfp-"+b,d&&(f.innerHTML=d),e?c&&c.appendChild(f):(f=a(f),c&&f.appendTo(c)),f},y=function(b,c){n.ev.triggerHandler(i+b,c),n.st.callbacks&&(b=b.charAt(0).toLowerCase()+b.slice(1),n.st.callbacks[b]&&n.st.callbacks[b].apply(n,a.isArray(c)?c:[c]))},z=function(b){if(b!==v||!n.currTemplate.closeBtn)n.currTemplate.closeBtn=a(n.st.closeMarkup.replace("%title%",n.st.tClose)),v=b;return n.currTemplate.closeBtn},A=function(){a.magnificPopup.instance||(n=new o,n.init(),a.magnificPopup.instance=n)},B=function(){var a=document.createElement("p").style,b=["ms","O","Moz","Webkit"];if(a.transition!==undefined)return!0;while(b.length)if(b.pop()+"Transition"in a)return!0;return!1};o.prototype={constructor:o,init:function(){var b=navigator.appVersion;n.isIE7=b.indexOf("MSIE 7.")!==-1,n.isIE8=b.indexOf("MSIE 8.")!==-1,n.isLowIE=n.isIE7||n.isIE8,n.isAndroid=/android/gi.test(b),n.isIOS=/iphone|ipad|ipod/gi.test(b),n.supportsTransition=B(),n.probablyMobile=n.isAndroid||n.isIOS||/(Opera Mini)|Kindle|webOS|BlackBerry|(Opera Mobi)|(Windows Phone)|IEMobile/i.test(navigator.userAgent),s=a(document),n.popupsCache={}},open:function(b){var c;if(b.isObj===!1){n.items=b.items.toArray(),n.index=0;var d=b.items,e;for(c=0;c<d.length;c++){e=d[c],e.parsed&&(e=e.el[0]);if(e===b.el[0]){n.index=c;break}}}else n.items=a.isArray(b.items)?b.items:[b.items],n.index=b.index||0;if(n.isOpen){n.updateItemHTML();return}n.types=[],u="",b.mainEl&&b.mainEl.length?n.ev=b.mainEl.eq(0):n.ev=s,b.key?(n.popupsCache[b.key]||(n.popupsCache[b.key]={}),n.currTemplate=n.popupsCache[b.key]):n.currTemplate={},n.st=a.extend(!0,{},a.magnificPopup.defaults,b),n.fixedContentPos=n.st.fixedContentPos==="auto"?!n.probablyMobile:n.st.fixedContentPos,n.st.modal&&(n.st.closeOnContentClick=!1,n.st.closeOnBgClick=!1,n.st.showCloseBtn=!1,n.st.enableEscapeKey=!1),n.bgOverlay||(n.bgOverlay=x("bg").on("click"+j,function(){n.close()}),n.wrap=x("wrap").attr("tabindex",-1).on("click"+j,function(a){n._checkIfClose(a.target)&&n.close()}),n.container=x("container",n.wrap)),n.contentContainer=x("content"),n.st.preloader&&(n.preloader=x("preloader",n.container,n.st.tLoading));var h=a.magnificPopup.modules;for(c=0;c<h.length;c++){var i=h[c];i=i.charAt(0).toUpperCase()+i.slice(1),n["init"+i].call(n)}y("BeforeOpen"),n.st.showCloseBtn&&(n.st.closeBtnInside?(w(f,function(a,b,c,d){c.close_replaceWith=z(d.type)}),u+=" mfp-close-btn-in"):n.wrap.append(z())),n.st.alignTop&&(u+=" mfp-align-top"),n.fixedContentPos?n.wrap.css({overflow:n.st.overflowY,overflowX:"hidden",overflowY:n.st.overflowY}):n.wrap.css({top:r.scrollTop(),position:"absolute"}),(n.st.fixedBgPos===!1||n.st.fixedBgPos==="auto"&&!n.fixedContentPos)&&n.bgOverlay.css({height:s.height(),position:"absolute"}),n.st.enableEscapeKey&&s.on("keyup"+j,function(a){a.keyCode===27&&n.close()}),r.on("resize"+j,function(){n.updateSize()}),n.st.closeOnContentClick||(u+=" mfp-auto-cursor"),u&&n.wrap.addClass(u);var l=n.wH=r.height(),m={};if(n.fixedContentPos&&n._hasScrollBar(l)){var o=n._getScrollbarSize();o&&(m.marginRight=o)}n.fixedContentPos&&(n.isIE7?a("body, html").css("overflow","hidden"):m.overflow="hidden");var p=n.st.mainClass;return n.isIE7&&(p+=" mfp-ie7"),p&&n._addClassToMFP(p),n.updateItemHTML(),y("BuildControls"),a("html").css(m),n.bgOverlay.add(n.wrap).prependTo(n.st.prependTo||a(document.body)),n._lastFocusedEl=document.activeElement,setTimeout(function(){n.content?(n._addClassToMFP(k),n._setFocus()):n.bgOverlay.addClass(k),s.on("focusin"+j,n._onFocusIn)},16),n.isOpen=!0,n.updateSize(l),y(g),b},close:function(){if(!n.isOpen)return;y(c),n.isOpen=!1,n.st.removalDelay&&!n.isLowIE&&n.supportsTransition?(n._addClassToMFP(l),setTimeout(function(){n._close()},n.st.removalDelay)):n._close()},_close:function(){y(b);var c=l+" "+k+" ";n.bgOverlay.detach(),n.wrap.detach(),n.container.empty(),n.st.mainClass&&(c+=n.st.mainClass+" "),n._removeClassFromMFP(c);if(n.fixedContentPos){var e={marginRight:""};n.isIE7?a("body, html").css("overflow",""):e.overflow="",a("html").css(e)}s.off("keyup"+j+" focusin"+j),n.ev.off(j),n.wrap.attr("class","mfp-wrap").removeAttr("style"),n.bgOverlay.attr("class","mfp-bg"),n.container.attr("class","mfp-container"),n.st.showCloseBtn&&(!n.st.closeBtnInside||n.currTemplate[n.currItem.type]===!0)&&n.currTemplate.closeBtn&&n.currTemplate.closeBtn.detach(),n._lastFocusedEl&&a(n._lastFocusedEl).focus(),n.currItem=null,n.content=null,n.currTemplate=null,n.prevHeight=0,y(d)},updateSize:function(a){if(n.isIOS){var b=document.documentElement.clientWidth/window.innerWidth,c=window.innerHeight*b;n.wrap.css("height",c),n.wH=c}else n.wH=a||r.height();n.fixedContentPos||n.wrap.css("height",n.wH),y("Resize")},updateItemHTML:function(){var b=n.items[n.index];n.contentContainer.detach(),n.content&&n.content.detach(),b.parsed||(b=n.parseEl(n.index));var c=b.type;y("BeforeChange",[n.currItem?n.currItem.type:"",c]),n.currItem=b;if(!n.currTemplate[c]){var d=n.st[c]?n.st[c].markup:!1;y("FirstMarkupParse",d),d?n.currTemplate[c]=a(d):n.currTemplate[c]=!0}t&&t!==b.type&&n.container.removeClass("mfp-"+t+"-holder");var e=n["get"+c.charAt(0).toUpperCase()+c.slice(1)](b,n.currTemplate[c]);n.appendContent(e,c),b.preloaded=!0,y(h,b),t=b.type,n.container.prepend(n.contentContainer),y("AfterChange")},appendContent:function(a,b){n.content=a,a?n.st.showCloseBtn&&n.st.closeBtnInside&&n.currTemplate[b]===!0?n.content.find(".mfp-close").length||n.content.append(z()):n.content=a:n.content="",y(e),n.container.addClass("mfp-"+b+"-holder"),n.contentContainer.append(n.content)},parseEl:function(b){var c=n.items[b],d;c.tagName?c={el:a(c)}:(d=c.type,c={data:c,src:c.src});if(c.el){var e=n.types;for(var f=0;f<e.length;f++)if(c.el.hasClass("mfp-"+e[f])){d=e[f];break}c.src=c.el.attr("data-mfp-src"),c.src||(c.src=c.el.attr("href"))}return c.type=d||n.st.type||"inline",c.index=b,c.parsed=!0,n.items[b]=c,y("ElementParse",c),n.items[b]},addGroup:function(a,b){var c=function(c){c.mfpEl=this,n._openClick(c,a,b)};b||(b={});var d="click.magnificPopup";b.mainEl=a,b.items?(b.isObj=!0,a.off(d).on(d,c)):(b.isObj=!1,b.delegate?a.off(d).on(d,b.delegate,c):(b.items=a,a.off(d).on(d,c)))},_openClick:function(b,c,d){var e=d.midClick!==undefined?d.midClick:a.magnificPopup.defaults.midClick;if(!e&&(b.which===2||b.ctrlKey||b.metaKey))return;var f=d.disableOn!==undefined?d.disableOn:a.magnificPopup.defaults.disableOn;if(f)if(a.isFunction(f)){if(!f.call(n))return!0}else if(r.width()<f)return!0;b.type&&(b.preventDefault(),n.isOpen&&b.stopPropagation()),d.el=a(b.mfpEl),d.delegate&&(d.items=c.find(d.delegate)),n.open(d)},updateStatus:function(a,b){if(n.preloader){q!==a&&n.container.removeClass("mfp-s-"+q),!b&&a==="loading"&&(b=n.st.tLoading);var c={status:a,text:b};y("UpdateStatus",c),a=c.status,b=c.text,n.preloader.html(b),n.preloader.find("a").on("click",function(a){a.stopImmediatePropagation()}),n.container.addClass("mfp-s-"+a),q=a}},_checkIfClose:function(b){if(a(b).hasClass(m))return;var c=n.st.closeOnContentClick,d=n.st.closeOnBgClick;if(c&&d)return!0;if(!n.content||a(b).hasClass("mfp-close")||n.preloader&&b===n.preloader[0])return!0;if(b!==n.content[0]&&!a.contains(n.content[0],b)){if(d&&a.contains(document,b))return!0}else if(c)return!0;return!1},_addClassToMFP:function(a){n.bgOverlay.addClass(a),n.wrap.addClass(a)},_removeClassFromMFP:function(a){this.bgOverlay.removeClass(a),n.wrap.removeClass(a)},_hasScrollBar:function(a){return(n.isIE7?s.height():document.body.scrollHeight)>(a||r.height())},_setFocus:function(){(n.st.focus?n.content.find(n.st.focus).eq(0):n.wrap).focus()},_onFocusIn:function(b){if(b.target!==n.wrap[0]&&!a.contains(n.wrap[0],b.target))return n._setFocus(),!1},_parseMarkup:function(b,c,d){var e;d.data&&(c=a.extend(d.data,c)),y(f,[b,c,d]),a.each(c,function(a,c){if(c===undefined||c===!1)return!0;e=a.split("_");if(e.length>1){var d=b.find(j+"-"+e[0]);if(d.length>0){var f=e[1];f==="replaceWith"?d[0]!==c[0]&&d.replaceWith(c):f==="img"?d.is("img")?d.attr("src",c):d.replaceWith('<img src="'+c+'" class="'+d.attr("class")+'" />'):d.attr(e[1],c)}}else b.find(j+"-"+a).html(c)})},_getScrollbarSize:function(){if(n.scrollbarSize===undefined){var a=document.createElement("div");a.style.cssText="width: 99px; height: 99px; overflow: scroll; position: absolute; top: -9999px;",document.body.appendChild(a),n.scrollbarSize=a.offsetWidth-a.clientWidth,document.body.removeChild(a)}return n.scrollbarSize}},a.magnificPopup={instance:null,proto:o.prototype,modules:[],open:function(b,c){return A(),b?b=a.extend(!0,{},b):b={},b.isObj=!0,b.index=c||0,this.instance.open(b)},close:function(){return a.magnificPopup.instance&&a.magnificPopup.instance.close()},registerModule:function(b,c){c.options&&(a.magnificPopup.defaults[b]=c.options),a.extend(this.proto,c.proto),this.modules.push(b)},defaults:{disableOn:0,key:null,midClick:!1,mainClass:"",preloader:!0,focus:"",closeOnContentClick:!1,closeOnBgClick:!0,closeBtnInside:!0,showCloseBtn:!0,enableEscapeKey:!0,modal:!1,alignTop:!1,removalDelay:0,prependTo:null,fixedContentPos:"auto",fixedBgPos:"auto",overflowY:"auto",closeMarkup:'<button title="%title%" type="button" class="mfp-close">&times;</button>',tClose:"Close (Esc)",tLoading:"Loading..."}},a.fn.magnificPopup=function(b){A();var c=a(this);if(typeof b=="string")if(b==="open"){var d,e=p?c.data("magnificPopup"):c[0].magnificPopup,f=parseInt(arguments[1],10)||0;e.items?d=e.items[f]:(d=c,e.delegate&&(d=d.find(e.delegate)),d=d.eq(f)),n._openClick({mfpEl:d},c,e)}else n.isOpen&&n[b].apply(n,Array.prototype.slice.call(arguments,1));else b=a.extend(!0,{},b),p?c.data("magnificPopup",b):c[0].magnificPopup=b,n.addGroup(c,b);return c};var C="inline",D,E,F,G=function(){F&&(E.after(F.addClass(D)).detach(),F=null)};a.magnificPopup.registerModule(C,{options:{hiddenClass:"hide",markup:"",tNotFound:"Content not found"},proto:{initInline:function(){n.types.push(C),w(b+"."+C,function(){G()})},getInline:function(b,c){G();if(b.src){var d=n.st.inline,e=a(b.src);if(e.length){var f=e[0].parentNode;f&&f.tagName&&(E||(D=d.hiddenClass,E=x(D),D="mfp-"+D),F=e.after(E).detach().removeClass(D)),n.updateStatus("ready")}else n.updateStatus("error",d.tNotFound),e=a("<div>");return b.inlineElement=e,e}return n.updateStatus("ready"),n._parseMarkup(c,{},b),c}}});var H,I=function(b){if(b.data&&b.data.title!==undefined)return b.data.title;var c=n.st.image.titleSrc;if(c){if(a.isFunction(c))return c.call(n,b);if(b.el)return b.el.attr(c)||""}return""};a.magnificPopup.registerModule("image",{options:{markup:'<div class="mfp-figure"><div class="mfp-close"></div><figure><div class="mfp-img"></div><figcaption><div class="mfp-bottom-bar"><div class="mfp-title"></div><div class="mfp-counter"></div></div></figcaption></figure></div>',cursor:"mfp-zoom-out-cur",titleSrc:"title",verticalFit:!0,tError:'<a href="%url%">The image</a> could not be loaded.'},proto:{initImage:function(){var c=n.st.image,d=".image";n.types.push("image"),w(g+d,function(){n.currItem.type==="image"&&c.cursor&&a(document.body).addClass(c.cursor)}),w(b+d,function(){c.cursor&&a(document.body).removeClass(c.cursor),r.off("resize"+j)}),w("Resize"+d,n.resizeImage),n.isLowIE&&w("AfterChange",n.resizeImage)},resizeImage:function(){var a=n.currItem;if(!a||!a.img)return;if(n.st.image.verticalFit){var b=0;n.isLowIE&&(b=parseInt(a.img.css("padding-top"),10)+parseInt(a.img.css("padding-bottom"),10)),a.img.css("max-height",n.wH-b)}},_onImageHasSize:function(a){a.img&&(a.hasSize=!0,H&&clearInterval(H),a.isCheckingImgSize=!1,y("ImageHasSize",a),a.imgHidden&&(n.content&&n.content.removeClass("mfp-loading"),a.imgHidden=!1))},findImageSize:function(a){var b=0,c=a.img[0],d=function(e){H&&clearInterval(H),H=setInterval(function(){if(c.naturalWidth>0){n._onImageHasSize(a);return}b>200&&clearInterval(H),b++,b===3?d(10):b===40?d(50):b===100&&d(500)},e)};d(1)},getImage:function(b,c){var d=0,e=function(){b&&(b.img[0].complete?(b.img.off(".mfploader"),b===n.currItem&&(n._onImageHasSize(b),n.updateStatus("ready")),b.hasSize=!0,b.loaded=!0,y("ImageLoadComplete")):(d++,d<200?setTimeout(e,100):f()))},f=function(){b&&(b.img.off(".mfploader"),b===n.currItem&&(n._onImageHasSize(b),n.updateStatus("error",g.tError.replace("%url%",b.src))),b.hasSize=!0,b.loaded=!0,b.loadError=!0)},g=n.st.image,h=c.find(".mfp-img");if(h.length){var i=document.createElement("img");i.className="mfp-img",b.el&&b.el.find("img").length&&(i.alt=b.el.find("img").attr("alt")),b.img=a(i).on("load.mfploader",e).on("error.mfploader",f),i.src=b.src,h.is("img")&&(b.img=b.img.clone()),i=b.img[0],i.naturalWidth>0?b.hasSize=!0:i.width||(b.hasSize=!1)}return n._parseMarkup(c,{title:I(b),img_replaceWith:b.img},b),n.resizeImage(),b.hasSize?(H&&clearInterval(H),b.loadError?(c.addClass("mfp-loading"),n.updateStatus("error",g.tError.replace("%url%",b.src))):(c.removeClass("mfp-loading"),n.updateStatus("ready")),c):(n.updateStatus("loading"),b.loading=!0,b.hasSize||(b.imgHidden=!0,c.addClass("mfp-loading"),n.findImageSize(b)),c)}}});var J,K=function(){return J===undefined&&(J=document.createElement("p").style.MozTransform!==undefined),J};a.magnificPopup.registerModule("zoom",{options:{enabled:!1,easing:"ease-in-out",duration:300,opener:function(a){return a.is("img")?a:a.find("img")}},proto:{initZoom:function(){var a=n.st.zoom,d=".zoom",e;if(!a.enabled||!n.supportsTransition)return;var f=a.duration,g=function(b){var c=b.clone().removeAttr("style").removeAttr("class").addClass("mfp-animated-image"),d="all "+a.duration/1e3+"s "+a.easing,e={position:"fixed",zIndex:9999,left:0,top:0,"-webkit-backface-visibility":"hidden"},f="transition";return e["-webkit-"+f]=e["-moz-"+f]=e["-o-"+f]=e[f]=d,c.css(e),c},h=function(){n.content.css("visibility","visible")},i,j;w("BuildControls"+d,function(){if(n._allowZoom()){clearTimeout(i),n.content.css("visibility","hidden"),e=n._getItemToZoom();if(!e){h();return}j=g(e),j.css(n._getOffset()),n.wrap.append(j),i=setTimeout(function(){j.css(n._getOffset(!0)),i=setTimeout(function(){h(),setTimeout(function(){j.remove(),e=j=null,y("ZoomAnimationEnded")},16)},f)},16)}}),w(c+d,function(){if(n._allowZoom()){clearTimeout(i),n.st.removalDelay=f;if(!e){e=n._getItemToZoom();if(!e)return;j=g(e)}j.css(n._getOffset(!0)),n.wrap.append(j),n.content.css("visibility","hidden"),setTimeout(function(){j.css(n._getOffset())},16)}}),w(b+d,function(){n._allowZoom()&&(h(),j&&j.remove(),e=null)})},_allowZoom:function(){return n.currItem.type==="image"},_getItemToZoom:function(){return n.currItem.hasSize?n.currItem.img:!1},_getOffset:function(b){var c;b?c=n.currItem.img:c=n.st.zoom.opener(n.currItem.el||n.currItem);var d=c.offset(),e=parseInt(c.css("padding-top"),10),f=parseInt(c.css("padding-bottom"),10);d.top-=a(window).scrollTop()-e;var g={width:c.width(),height:(p?c.innerHeight():c[0].offsetHeight)-f-e};return K()?g["-moz-transform"]=g.transform="translate("+d.left+"px,"+d.top+"px)":(g.left=d.left,g.top=d.top),g}}});var L="retina";a.magnificPopup.registerModule(L,{options:{replaceSrc:function(a){return a.src.replace(/\.\w+$/,function(a){return"@2x"+a})},ratio:1},proto:{initRetina:function(){if(window.devicePixelRatio>1){var a=n.st.retina,b=a.ratio;b=isNaN(b)?b():b,b>1&&(w("ImageHasSize."+L,function(a,c){c.img.css({"max-width":c.img[0].naturalWidth/b,width:"100%"})}),w("ElementParse."+L,function(c,d){d.src=a.replaceSrc(d,b)}))}}}}),A()})
assets/js/main.js ADDED
@@ -0,0 +1,147 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ try {
2
+ // load icegram scripts and css
3
+ function load_scripts_and_css(icegram_data){
4
+ var pending_scripts = {};
5
+ // Collect all CSS/JS in pending list
6
+ jQuery.each(icegram_data['css'], function(i, v){
7
+ pending_scripts['ig_css_'+i] = 1;
8
+ });
9
+ jQuery.each(icegram_data['scripts'], function(i, v){
10
+ pending_scripts['ig_script_'+i] = 1;
11
+ });
12
+
13
+
14
+ var boot_check = function ( e ) {
15
+ var id = e.target.id || '';
16
+
17
+ if (id != '' && pending_scripts.hasOwnProperty(id)) {
18
+ delete pending_scripts[id];
19
+ }
20
+ if (jQuery.isEmptyObject(pending_scripts)) {
21
+
22
+ jQuery( window ).trigger( 'scripts_loaded.icegram' );
23
+ jQuery( function () {
24
+ console.log('in loading')
25
+ window.icegram = new Icegram();
26
+ window.icegram.init( icegram_data );
27
+ jQuery('body').addClass('ig_'+icegram_pre_data.post_obj['device']);
28
+ icegram_timing['end'] = Date.now();
29
+
30
+ });
31
+
32
+ }
33
+ };
34
+
35
+ jQuery.each(icegram_data['css'], function(i, v) {
36
+ jQuery('<link>').attr('type', 'text/css')
37
+ .attr('rel', 'stylesheet')
38
+ .attr('id', 'ig_css_'+i)
39
+ .attr('media', 'all')
40
+ .appendTo('head')
41
+ .on( 'load', boot_check )
42
+ .attr('href', v);
43
+ });
44
+
45
+ var ig_main_js = icegram_data['scripts'].shift();
46
+ jQuery('<script>').attr('type', 'text/javascript')
47
+ .attr('id', 'ig_script_0')
48
+ .appendTo('body')
49
+ .on( 'load', function( e ) {
50
+ boot_check( e );
51
+ jQuery.each(icegram_data['scripts'] , function(i, v) {
52
+ jQuery('<script>').attr('type', 'text/javascript')
53
+ .attr('id', 'ig_script_'+(i+1))
54
+ .appendTo('body')
55
+ .on( 'load', boot_check )
56
+ .attr('src', v);
57
+ });
58
+ } )
59
+ .attr('src', ig_main_js);
60
+ }
61
+ var icegram_data;
62
+ var icegram_timing = {};
63
+ icegram_pre_data.post_obj['referral_url'] = window.location.href;
64
+ icegram_timing['start'] = Date.now();
65
+
66
+ if(icegram_pre_data.post_obj['cache_compatibility'] === 'yes'){
67
+ jQuery.ajax({
68
+ url: icegram_pre_data.ajax_url,
69
+ type: "POST",
70
+ async: true,
71
+ cache: false,
72
+ data : icegram_pre_data.post_obj,
73
+ dataType : "json",
74
+ success:function(res) {
75
+ if(res){
76
+ icegram_data = res;
77
+ load_scripts_and_css(icegram_data);
78
+ }else{
79
+ //remove empty inline div
80
+ jQuery('.ig_inline_container:empty').remove();
81
+ }
82
+ },
83
+ error:function(res) {
84
+ }
85
+ });
86
+
87
+ // Add CSS and Js files not loaded during message process
88
+ // TODO :: Test for inline style and scripts, do the needful
89
+ jQuery( window ).on( "init.icegram", function(e, ig) {
90
+ if(typeof ig !== 'undefined' && typeof ig.messages !== 'undefined' ){
91
+ jQuery.each(ig.messages, function(i, msg){
92
+ if(msg.data.assets){
93
+ jQuery.each(msg.data.assets.styles || [], function(id, style){
94
+ var src = jQuery('<div/>').html(style).find('link').attr('href');
95
+ if(src && jQuery('link[href="'+src+'"]').length == 0){
96
+ jQuery('body').append(style);
97
+ }
98
+ });
99
+ jQuery.each(msg.data.assets.scripts || [], function(id, script){
100
+ var src = jQuery('<div/>').html('<script ' + script).find('script').attr('src');
101
+ if(src && jQuery('script[src="'+src+'"]').length == 0){
102
+ jQuery('body').append('<script ' + script);
103
+ }
104
+ });
105
+ }
106
+ });
107
+ }
108
+
109
+ });
110
+
111
+ }else{
112
+ if(typeof(icegram_data) !== 'undefined'){
113
+ console.log('here in IG');
114
+ load_scripts_and_css(icegram_data);
115
+ }
116
+ }
117
+
118
+ jQuery( window ).on( "init.icegram", function(e, ig) {
119
+ if(typeof ig !== 'undefined' && typeof ig.messages !== 'undefined' ){
120
+ jQuery.each(ig.messages, function(i, msg){
121
+ if(msg.data.use_custom_code =='yes' && typeof(msg.data.custom_js) !== 'undefined'){
122
+ jQuery('body').append(msg.data.custom_js);
123
+ }
124
+ });
125
+ }
126
+
127
+ if(jQuery('body').find('.trigger_onclick').length){
128
+ jQuery.each(jQuery('body').find('.trigger_onclick'), function(i,t){
129
+ var onclick = '';
130
+ var campaigns = jQuery(t).data('campaigns');
131
+ var msgs = ig.get_message_by_campaign_id(campaigns);
132
+ jQuery.each(msgs,function(i,msg){
133
+ var msg_id = parseInt(msg.data.id);
134
+ onclick += 'icegram.get_message_by_id('+msg_id+').show();'
135
+ });
136
+ if(jQuery(t).children().length){
137
+ jQuery(t).children().attr('onclick',onclick);
138
+ }else{
139
+ jQuery(t).attr('onclick',onclick);
140
+ }
141
+ });
142
+ }
143
+ });
144
+
145
+ } catch(err) {
146
+ console.log(err);
147
+ }
classes/class-icegram-message-admin.php CHANGED
@@ -262,6 +262,9 @@ if ( !class_exists( 'Icegram_Message_Admin' ) ) {
262
  </p>';
263
  echo $color_field_html;
264
  $active_plugins = get_option( 'active_plugins', array() );
 
 
 
265
 
266
  ?>
267
 
262
  </p>';
263
  echo $color_field_html;
264
  $active_plugins = get_option( 'active_plugins', array() );
265
+ if (is_multisite()) {
266
+ $active_plugins = array_merge($active_plugins, get_site_option('active_sitewide_plugins', array()));
267
+ }
268
 
269
  ?>
270
 
icegram.php CHANGED
@@ -3,7 +3,7 @@
3
  * Plugin Name: Icegram - Popups, Optins, CTAs & lot more...
4
  * Plugin URI: https://www.icegram.com/
5
  * Description: All in one solution to inspire, convert and engage your audiences. Action bars, Popup windows, Messengers, Toast notifications and more. Awesome themes and powerful rules.
6
- * Version: 1.10.18
7
  * Author: icegram
8
  * Author URI: https://www.icegram.com/
9
  * Copyright (c) 2014-16 Icegram
@@ -33,7 +33,7 @@ class Icegram {
33
  public static $current_page_id;
34
 
35
  function __construct() {
36
- $this->version = "1.10.18";
37
  $this->shortcode_instances = array();
38
  $this->mode = 'local';
39
  $this->plugin_url = untrailingslashit( plugins_url( '/', __FILE__ ) );
@@ -184,9 +184,12 @@ class Icegram {
184
  <input class="regular-text ltr" type="text" name="email" id="email" placeholder="Email"/>
185
  <input type="hidden" name="list" value="7I763v6Ldrs3YhJeee5EOgFA"/>
186
  <input type="submit" name="submit" id="submit" class="button button-primary" value="Subscribe">
187
- <br/>
188
- <div id="klawoo_response"></div>
 
 
189
  </form>
 
190
  </td>
191
  </tr>
192
  </table>
3
  * Plugin Name: Icegram - Popups, Optins, CTAs & lot more...
4
  * Plugin URI: https://www.icegram.com/
5
  * Description: All in one solution to inspire, convert and engage your audiences. Action bars, Popup windows, Messengers, Toast notifications and more. Awesome themes and powerful rules.
6
+ * Version: 1.10.19
7
  * Author: icegram
8
  * Author URI: https://www.icegram.com/
9
  * Copyright (c) 2014-16 Icegram
33
  public static $current_page_id;
34
 
35
  function __construct() {
36
+ $this->version = "1.10.19";
37
  $this->shortcode_instances = array();
38
  $this->mode = 'local';
39
  $this->plugin_url = untrailingslashit( plugins_url( '/', __FILE__ ) );
184
  <input class="regular-text ltr" type="text" name="email" id="email" placeholder="Email"/>
185
  <input type="hidden" name="list" value="7I763v6Ldrs3YhJeee5EOgFA"/>
186
  <input type="submit" name="submit" id="submit" class="button button-primary" value="Subscribe">
187
+ <br><br>
188
+ <input type="checkbox" name="es-gdpr-agree" id ="es-gdpr-agree" value="1" required="required">
189
+ <label for="es-gdpr-agree"><?php echo sprintf(__( 'I have read and agreed to our %s.', 'icegram' ), '<a href="https://www.icegram.com/privacy-policy/" target="_blank">' . __( 'Privacy Policy', 'icegram' ) . '</a>' ); ?></label>
190
+ <br>
191
  </form>
192
+ <div id="klawoo_response"></div>
193
  </td>
194
  </tr>
195
  </table>
ig-connector.php ADDED
@@ -0,0 +1,574 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ class Icegram_Connector_v_0_1 {
4
+
5
+ var $base_name;
6
+ var $check_update_timeout;
7
+ var $last_checked;
8
+ var $plugin_data;
9
+ var $sku;
10
+ var $installed_version;
11
+ var $live_version;
12
+ var $slug;
13
+ var $name;
14
+ var $documentation_link;
15
+ var $prefix;
16
+ var $text_domain;
17
+
18
+ function __construct( $file, $sku='', $prefix, $plugin_name, $text_domain, $documentation_link ){
19
+ if (! function_exists( 'get_plugin_data' )) {
20
+ require_once ABSPATH . 'wp-admin/includes/plugin.php';
21
+ }
22
+ $this->plugin_data = get_plugin_data( $file );
23
+ $this->base_name = plugin_basename( $file );
24
+ $this->slug = dirname( $this->base_name );
25
+ $this->name = $plugin_name;
26
+ $this->sku = $sku;
27
+ $this->documentation_link = $documentation_link;
28
+ $this->prefix = $prefix;
29
+ $this->text_domain = $text_domain;
30
+ // $this->client_id = 'pclmX42WIYvaBOeUzuExHsCf0iHh2HKEA3wff0KZ';
31
+ $this->client_id = 'KoP4P8aRMuMVoiqGxO904Dcx3BzBDXRnmHrbPC2C';
32
+ // $this->client_secret = 'dVUzMUJKYBdi7AVrr4gV6duN12lR17ztOA98HkIS';
33
+ $this->client_secret = '6Pxv8XbGMlGQYTo1uYD8VvwhcYs1BvEHlbdt9o9V';
34
+ // IG storeconnector
35
+ add_action( 'admin_notices', array( $this, 'connect_icegram_notification' ) );
36
+ add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_scripts_styles' ) );
37
+ add_action( 'wp_ajax_'.$this->prefix.'_get_authorization_code', array( $this, 'get_authorization_code' ) );
38
+ add_action( 'wp_ajax_'.$this->prefix.'_disconnect_icegram', array( $this, 'disconnect_icegram' ) );
39
+ add_action( 'admin_footer', array( $this, 'add_plugin_style_script' ) );
40
+ if ( has_action( 'wp_ajax_get_icegram_updates', array( $this, 'get_icegram_updates' ) ) === false ) {
41
+ add_action( 'wp_ajax_get_icegram_updates', array( $this, 'get_icegram_updates' ) );
42
+ }
43
+
44
+ }
45
+
46
+ // IG storeconnector
47
+ function enqueue_scripts_styles() {
48
+ if ( ! wp_script_is( 'jquery' ) ) {
49
+ wp_enqueue_script( 'jquery' );
50
+ }
51
+
52
+ add_thickbox();
53
+ }
54
+
55
+ function connect_icegram_notification() {
56
+ if ( did_action( 'connect_icegram_org_notification' ) > 0 ) {
57
+ return;
58
+ }
59
+
60
+
61
+ global $wpdb, $pagenow;
62
+
63
+ $ig_is_page_for_notifications = apply_filters( 'ig_is_page_for_notifications', false, $this );
64
+
65
+ if ( $ig_is_page_for_notifications || $pagenow == 'plugins.php' ) {
66
+
67
+
68
+ ?>
69
+ <script type="text/javascript">
70
+ jQuery(function(){
71
+ jQuery(window).on('load', function(){
72
+ var has_class = jQuery('body').hasClass('plugins-php');
73
+ if ( ! has_class ) {
74
+ jQuery('body').addClass('plugins-php');
75
+ }
76
+ });
77
+ });
78
+ </script>
79
+ <?php
80
+
81
+ $license_key = $wpdb->get_var( "SELECT option_value FROM {$wpdb->options} WHERE option_name LIKE '%_license_key%' AND option_value != '' LIMIT 1" );
82
+ $access_token = get_option( '_icegram_connector_access_token' );
83
+ $token_expiry = get_option( '_icegram_connector_token_expiry' );
84
+ $is_connected = get_option( '_icegram_connected', 'no' );
85
+ // $auto_connect = get_option( '_icegram_auto_connected', 'no' );
86
+
87
+ $protocol = 'http';
88
+
89
+ $url = $protocol . "://www.icegram.stg/oauth/authorize?response_type=code&client_id=" . $this->client_id . "&redirect_uri=" . add_query_arg( array( 'action' => $this->prefix . '_get_authorization_code' ), admin_url( 'admin-ajax.php' ) );
90
+
91
+ if ( empty( $token_expiry ) || time() > $token_expiry ) {
92
+
93
+ ?>
94
+ <div id="connect_icegram_org" style="display: none;">
95
+ <div style="width: 96% !important; height: 96% !important;" class="connect_icegram_child">
96
+ <div id="connect_icegram_org_step_1" style="background: #FFEAD4;
97
+ box-shadow: 0 0 1px rgba(0,0,0,.2);
98
+ padding: 20px;
99
+ position: absolute;
100
+ top: 50%;
101
+ left: 50%;
102
+ transform: translate(-50%, -50%);
103
+ width: inherit;
104
+ height: inherit;">
105
+ <center>
106
+ <img class="icegram-logo" src="https://www.icegram.stg/wp-content/uploads/2014/05/cropped-icegram-logo-16bit-300x70.png" alt="icegram.stg" />
107
+ <h2><?php echo __( 'You are one step away from completing activation.', $this->text_domain ); ?></h2>
108
+ <button class="icegram-connect-flat-button"><?php echo __( 'Connect to icegram.stg', $this->text_domain ); ?></button>
109
+ <h3><?php echo __( 'You get', $this->text_domain ); ?></h3>
110
+ <div>
111
+ <ol>
112
+ <li><span class="dashicons dashicons-yes"></span><?php echo __( 'Automatic license validation', $this->text_domain ); ?></li>
113
+ <li><span class="dashicons dashicons-yes"></span><?php echo __( 'Freedom from manual plugin updates', $this->text_domain ); ?></li>
114
+ <li><span class="dashicons dashicons-yes"></span><?php echo __( 'Instant notification about critical updates & security releases', $this->text_domain ); ?></li>
115
+ </ol>
116
+ </div>
117
+ </center>
118
+ </div>
119
+ <div id="connect_icegram_org_step_2" style="display: none; width: 100%; height: 100%;">
120
+ <iframe src="" style="width: 100%; height: 100%;"></iframe>
121
+ </div>
122
+ <style type="text/css" media="screen">
123
+ #TB_window{
124
+ height:550px !important;
125
+ width:600px !important;
126
+ }
127
+ #TB_ajaxContent {
128
+ position: relative;
129
+ width: 96% !important;
130
+ }
131
+ .connect_icegram_child {
132
+ position: absolute;
133
+ top: 50%;
134
+ left: 50%;
135
+ transform: translate(-50%, -50%);
136
+ }
137
+ #connect_icegram_org_step_1 .dashicons-yes {
138
+ color: #27ae60;
139
+ font-size: 2.2em;
140
+ margin-right: 5px;
141
+ vertical-align: text-bottom;
142
+ }
143
+ #connect_icegram_org_step_1 a {
144
+ display: inline-block;
145
+ cursor: pointer;
146
+ margin: 1.5em 0;
147
+ text-decoration: underline;
148
+ }
149
+ #connect_icegram_org_step_1 ol {
150
+ width: auto;
151
+ margin: auto;
152
+ display: inline-block;
153
+ list-style: none;
154
+ }
155
+ #connect_icegram_org_step_1 ol li {
156
+ text-align: left;
157
+ }
158
+ #connect_icegram_org_step_1 .icegram-logo,
159
+ #connect_icegram_org_step_1 button {
160
+ margin: 1.5em 0;
161
+ }
162
+ #connect_icegram_org_step_1 .icegram-connect-flat-button {
163
+ position: relative;
164
+ vertical-align: top;
165
+ height: 2.8em;
166
+ padding: 0 2.5em;
167
+ font-size: 1.5em;
168
+ color: white;
169
+ text-align: center;
170
+ text-shadow: 0 1px 2px rgba(0, 0, 0, 0.25);
171
+ background: #27ae60;
172
+ border: 0;
173
+ border-radius: 5px;
174
+ border-bottom: 2px solid #219d55;
175
+ cursor: pointer;
176
+ -webkit-box-shadow: inset 0 -2px #219d55;
177
+ box-shadow: inset 0 -2px #219d55;
178
+ }
179
+ #connect_icegram_org_step_1 .icegram-connect-flat-button:active {
180
+ top: 1px;
181
+ outline: none;
182
+ -webkit-box-shadow: none;
183
+ box-shadow: none;
184
+ }
185
+ </style>
186
+ <script type="text/javascript">
187
+ var jQuery = parent.jQuery;
188
+ jQuery('#connect_icegram_org_step_1').on('click', 'button,a', function(){
189
+ jQuery('#connect_icegram_org_step_2 iframe').attr('src', '<?php echo $url; ?>');
190
+ jQuery('#connect_icegram_org_step_1').fadeOut();
191
+ jQuery('#connect_icegram_org_step_2').fadeIn();
192
+ });
193
+ </script>
194
+ </div>
195
+ </div>
196
+ <?php
197
+ }
198
+
199
+ if ( $is_connected === 'yes' ) {
200
+ ?>
201
+ <style type="text/css" media="screen">
202
+ #connect_icegram_org_response {
203
+ display: block !important;
204
+ }
205
+ #connect_icegram_org_response h2 {
206
+ font-size: 1.3em !important;
207
+ font-weight: 600 !important;
208
+ margin: 15px 0 !important;
209
+ }
210
+ #connect_icegram_org_response span.dashicons-yes {
211
+ margin: -8px 10px 0 0;
212
+ display: inline-block;
213
+ }
214
+ </style>
215
+ <div id="connect_icegram_org_response" class="updated fade success">
216
+ <center><h2><span class="dashicons dashicons-yes" style="font-size: 2em; color: #46b450;"></span>&nbsp;<?php echo __( 'Congrats! Activation Completed', $this->text_domain ); ?></h2></center>
217
+ </div>
218
+ <?php
219
+ //TODO :: check this account connection
220
+ update_option( '_icegram_connected', 'no' );
221
+ }
222
+ }
223
+ do_action( 'connect_icegram_org_notification' );
224
+ }
225
+
226
+ function get_authorization_code() {
227
+ if ( empty( $_REQUEST['code'] ) ) {
228
+ die(__( 'Code not received', $this->text_domain ) );
229
+ }
230
+ $args = array(
231
+ 'grant_type' => 'authorization_code',
232
+ 'code' => $_REQUEST['code'],
233
+ 'redirect_uri' => add_query_arg( array( 'action' => $this->prefix . '_get_authorization_code' ), admin_url( 'admin-ajax.php' ) )
234
+ );
235
+ $this->get_tokens( $args );
236
+ ?>
237
+ <script type="text/javascript">
238
+ parent.tb_remove();
239
+ parent.location.reload( true );
240
+ </script>
241
+ <?php
242
+ die();
243
+ }
244
+
245
+ function get_tokens( $args = array() ) {
246
+
247
+ if ( empty( $args ) ) {
248
+ return;
249
+ }
250
+
251
+ $protocol = 'http';
252
+
253
+ $url = $protocol . '://www.icegram.stg/oauth/token';
254
+ $response = wp_remote_post( $url,
255
+ array(
256
+ 'headers' => array(
257
+ 'Authorization' => 'Basic ' . base64_encode( $this->client_id . ':' . $this->client_secret ),
258
+ ),
259
+ 'body' => $args,
260
+ )
261
+ );
262
+ if ( ! is_wp_error( $response ) ) {
263
+ $code = wp_remote_retrieve_response_code( $response );
264
+ $message = wp_remote_retrieve_response_message( $response );
265
+
266
+ if ( $code = 200 && $message = 'OK' ) {
267
+ $body = wp_remote_retrieve_body( $response );
268
+ $tokens = json_decode( $body );
269
+
270
+ if ( ! empty( $tokens ) ) {
271
+ $present = time();
272
+ $offset = ( ! empty( $tokens->expires_in ) ) ? $tokens->expires_in : 0;
273
+ $access_token = ( ! empty( $tokens->access_token ) ) ? $tokens->access_token : '';
274
+ $token_expiry = ( ! empty( $offset ) ) ? $present + $offset : $present;
275
+ if ( ! empty( $access_token ) ) {
276
+ update_option( '_icegram_connector_access_token', $access_token );
277
+ update_option( '_icegram_connected', 'yes' );
278
+ }
279
+ if ( ! empty( $token_expiry ) ) {
280
+
281
+ update_option( '_icegram_connector_token_expiry', $token_expiry );
282
+ }
283
+ }
284
+ }
285
+ }
286
+
287
+ }
288
+
289
+ function get_icegram_updates() {
290
+
291
+ check_ajax_referer( 'icegram-update', 'security' );
292
+
293
+ if ( empty( $this->last_checked ) ) {
294
+ $icegram_data = $this->get_icegram_data();
295
+ $this->last_checked = ( ! empty( $icegram_data['last_checked'] ) ) ? $icegram_data['last_checked'] : null;
296
+ if ( empty( $this->last_checked ) ) {
297
+ $this->last_checked = strtotime( '-1435 minutes' );
298
+ $icegram_data['last_checked'] = $this->last_checked;
299
+ error_log(print_r($icegram_data, true));
300
+ $this->set_icegram_data( $icegram_data );
301
+ }
302
+ }
303
+
304
+ $time_not_changed = isset( $this->last_checked ) && $this->check_update_timeout > ( time() - $this->last_checked );
305
+
306
+ if ( ! $time_not_changed ) {
307
+ // if ( true ) {
308
+ $this->request_icegram_data();
309
+ }
310
+
311
+ wp_send_json( array( 'success' => 'yes' ) );
312
+
313
+ }
314
+
315
+ function request_icegram_data() {
316
+ $data = array();
317
+ $icegram_deactivated_plugins = array();
318
+ $icegram_activated_plugins = array();
319
+ $icegram_connector_data = get_option('_icegram_connector_data');
320
+ $access_token = get_option( '_icegram_connector_access_token' );
321
+ if ( empty( $access_token ) ) {
322
+ return;
323
+ }
324
+ if ( ! function_exists( 'get_plugins' ) ) {
325
+ require_once ABSPATH . 'wp-admin/includes/plugin.php';
326
+ }
327
+ $all_plugins = get_plugins();
328
+ $all_activated_plugins = get_option( 'active_plugins' );
329
+ foreach ( $all_plugins as $plugin_file => $plugin_data ) {
330
+ $author = ( ! empty( $plugin_data['Author'] ) ) ? strtolower( $plugin_data['Author'] ) : null;
331
+ $version = ( ! empty( $plugin_data['Version'] ) ) ? $plugin_data['Version'] : '';
332
+ if ( empty( $author ) ) {
333
+ continue;
334
+ }
335
+ if ( in_array( $author, array( 'icegram' ) ) ) {
336
+ if ( in_array( $plugin_file, $all_activated_plugins ) ) {
337
+ $icegram_activated_plugins[ $plugin_file ] = $version;
338
+ } else {
339
+ $icegram_deactivated_plugins[ $plugin_file ] = $version;
340
+ }
341
+ }
342
+ }
343
+ //Check update code merge
344
+ $this->live_version = get_site_option( $this->prefix.'_live_version' );
345
+ $this->installed_version = get_site_option( $this->prefix.'_installed_version' );
346
+ if (version_compare( $this->installed_version, $this->live_version, '<=' )) {
347
+
348
+ $protocol = 'http';
349
+ // $url = $protocol . '://www.icegram.stg/wp-json/woocommerce-serial-key/v1/serial-keys';
350
+ $url = $protocol . '://www.icegram.stg/wp-admin/admin-ajax.php?action=get_access_data';
351
+ $args = array(
352
+ 'plugins' => array(
353
+ 'activated' => $icegram_activated_plugins,
354
+ 'deactivated' => $icegram_deactivated_plugins
355
+ ),
356
+ 'sku' => $this->sku
357
+ );
358
+ $response = wp_remote_get( $url,
359
+ array(
360
+ 'headers' => array(
361
+ 'Authorization' => 'Bearer ' . $access_token,
362
+ 'Referer' => base64_encode( $this->sku . ':' . $this->installed_version . ':' . $this->client_id . ':' . $this->client_secret )
363
+ ),
364
+ 'body' => $args,
365
+ )
366
+ );
367
+
368
+ if ( ! is_wp_error( $response ) ) {
369
+ $code = wp_remote_retrieve_response_code( $response );
370
+ $message = wp_remote_retrieve_response_message( $response );
371
+
372
+ if ( $code = 200 && $message = 'OK' ) {
373
+ $body = wp_remote_retrieve_body( $response );
374
+ $response_data = json_decode( $body, true );
375
+ if ( ! empty( $response_data['downloads'] ) ) {
376
+ // $response_data['skus']['last_checked'] = time();
377
+ foreach ($response_data['downloads'] as $sku => $download) {
378
+ $live_version = $download['version'];
379
+ $download_url = add_query_arg( 'version', $live_version, $download['download_url'] );
380
+ update_site_option( $this->prefix.'_download_url', $download_url );
381
+ update_site_option( $this->prefix.'_live_version', $live_version );
382
+ }
383
+ $this->set_icegram_data( $response_data );
384
+ }
385
+ }
386
+ }
387
+ }
388
+ //
389
+ }
390
+
391
+ function disconnect_icegram() {
392
+
393
+ check_ajax_referer( 'disconnect-icegram', 'security' );
394
+
395
+ delete_option( '_icegram_connector_data' );
396
+ delete_option( '_icegram_connector_access_token' );
397
+ delete_option( '_icegram_connector_token_expiry' );
398
+ delete_option( '_icegram_connected' );
399
+ // delete_option( '_icegram_auto_connected' );
400
+
401
+ echo json_encode( array( 'success' => 'yes', 'message' => 'success' ) );
402
+
403
+ die();
404
+
405
+ }
406
+
407
+ public function get_icegram_data() {
408
+
409
+ $data = get_option( '_icegram_connector_data', array() );
410
+
411
+ $update = false;
412
+
413
+ if ( empty( $data[ $this->sku ] ) ) {
414
+ $data[ $this->sku ] = array(
415
+ 'installed_version' => '0',
416
+ 'live_version' => '0',
417
+ 'license_key' => '',
418
+ 'changelog' => '',
419
+ 'due_date' => '',
420
+ 'download_url' => '',
421
+ 'next_update_check' => false,
422
+ 'upgrade_notices' => array(),
423
+ 'saved_changes' => 'no',
424
+ 'hide_renewal_notification' => 'no',
425
+ 'hide_license_notification' => 'no'
426
+ );
427
+ $update = true;
428
+ }
429
+
430
+ if ( empty( $data['last_checked'] ) ) {
431
+ $data['last_checked'] = 0;
432
+ $update = true;
433
+ }
434
+
435
+ if ( empty( $data['login_link'] ) ) {
436
+ $protocol = 'http';
437
+ $data['login_link'] = $protocol . '://www.icegram.stg/my-account';
438
+ $update = true;
439
+ }
440
+
441
+ if ( $update ) {
442
+ update_option( '_icegram_connector_data', $data );
443
+ }
444
+
445
+ return $data;
446
+
447
+ }
448
+
449
+ public function set_icegram_data( $data = array(), $force = false ) {
450
+ error_log(print_r($data, true));
451
+ if ( $force || ! empty( $data ) ) {
452
+ update_option( '_icegram_connector_data', $data );
453
+ }
454
+
455
+ }
456
+
457
+ function add_plugin_style_script() {
458
+
459
+ global $pagenow;
460
+
461
+ $this->add_plugin_style();
462
+ ?>
463
+
464
+ <script type="text/javascript">
465
+ jQuery(function(){
466
+ jQuery('a#<?php echo $this->prefix; ?>_disconnect_icegram').on( 'click', function(){
467
+ var trigger_element = jQuery(this);
468
+ var status_element = jQuery(this).closest('tr');
469
+ status_element.css('opacity', '0.4');
470
+ jQuery.ajax({
471
+ url: '<?php echo admin_url("admin-ajax.php") ?>',
472
+ type: 'post',
473
+ dataType: 'json',
474
+ data: {
475
+ action: '<?php echo $this->prefix; ?>_disconnect_icegram',
476
+ prefix: '<?php echo $this->prefix; ?>',
477
+ security: '<?php echo wp_create_nonce( "disconnect-icegram" ); ?>'
478
+ },
479
+ success: function( response ) {
480
+ status_element.css('opacity', '1');
481
+ trigger_element.text('<?php echo __( 'Disconnected', $this->text_domain ); ?>');
482
+ trigger_element.css({
483
+ 'background-color': '#46b450',
484
+ 'color': 'white'
485
+ });
486
+ setTimeout( function(){
487
+ location.reload();
488
+ }, 1500);
489
+ }
490
+ });
491
+ });
492
+ // jQuery(window).on('load', function(){
493
+ // jQuery.ajax({
494
+ // url: '<?php echo admin_url( "admin-ajax.php" ); ?>',
495
+ // type: 'POST',
496
+ // dataType: 'json',
497
+ // data: {
498
+ // 'action': 'get_icegram_updates',
499
+ // 'security': '<?php echo wp_create_nonce( 'icegram-update' ); ?>'
500
+ // },
501
+ // success: function( response ) {
502
+ // if ( response != undefined && response != '' ) {
503
+ // if ( response.success != 'yes' ) {
504
+ // console.log('<?php echo sprintf(__( "Error at %s", $this->text_domain ), plugin_basename( __FILE__ ) . ':' . __LINE__ ); ?>', response);
505
+ // }
506
+ // }
507
+ // }
508
+ // });
509
+
510
+ // });
511
+ jQuery(window).on('load', function(){
512
+ var iframe_content = jQuery('#connect_icegram_org_div').text();
513
+ iframe_content = ( iframe_content != undefined ) ? iframe_content.trim() : iframe_content;
514
+ var div_content = jQuery('#connect_icegram_org').html();
515
+ var is_iframe_empty = iframe_content == undefined || iframe_content == '';
516
+ var is_div_empty = div_content == undefined || div_content == '';
517
+ if ( iframe_content == 'no_user' || ( is_iframe_empty && ! is_div_empty ) ) {
518
+ <?php if ( $pagenow != 'plugins.php' ) { ?>
519
+ console.log(0000);
520
+
521
+ // tb_show('', "#TB_inline?inlineId=connect_icegram_org&height=550&width=600");
522
+ <?php } ?>
523
+ }
524
+ });
525
+
526
+ });
527
+ </script>
528
+ <?php
529
+ }
530
+
531
+ function add_plugin_style() {
532
+ ?>
533
+ <style type="text/css">
534
+ div#TB_ajaxContent {
535
+ overflow: hidden;
536
+ position: initial;
537
+ }
538
+ <?php if ( version_compare( get_bloginfo( 'version' ), '3.7.1', '>' ) ) { ?>
539
+ tr.<?php echo $this->prefix; ?>_license_key .key-icon-column:before {
540
+ content: "\f112";
541
+ display: inline-block;
542
+ -webkit-font-smoothing: antialiased;
543
+ font: normal 1.5em/1 'dashicons';
544
+ }
545
+ tr.<?php echo $this->prefix; ?>_due_date .renew-icon-column:before {
546
+ content: "\f463";
547
+ display: inline-block;
548
+ -webkit-font-smoothing: antialiased;
549
+ font: normal 1.5em/1 'dashicons';
550
+ }
551
+ <?php } ?>
552
+ a#<?php echo $this->prefix; ?>_reset_license,
553
+ a#<?php echo $this->prefix; ?>_disconnect_icegram {
554
+ cursor: pointer;
555
+ }
556
+ a#<?php echo $this->prefix; ?>_disconnect_icegram:hover {
557
+ color: #fff;
558
+ background-color: #dc3232;
559
+ }
560
+ span#<?php echo $this->prefix; ?>_hide_renewal_notification,
561
+ span#<?php echo $this->prefix; ?>_hide_license_notification {
562
+ cursor: pointer;
563
+ float: right;
564
+ opacity: 0.2;
565
+ }
566
+ </style>
567
+ <?php
568
+ }
569
+
570
+ }
571
+
572
+
573
+
574
+ ?>
message-types/action-bar/main.js CHANGED
@@ -1 +1,102 @@
1
- /* File for backward compatibility. */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ * Icegram Message Type - Action_Bar
3
+ **/
4
+ function Icegram_Message_Type_Action_Bar( data ) {
5
+ Icegram_Message_Type.apply(this, arguments);
6
+ }
7
+
8
+ Icegram_Message_Type_Action_Bar.prototype = Object.create(Icegram_Message_Type.prototype);
9
+ Icegram_Message_Type_Action_Bar.prototype.constructor = Icegram_Message_Type_Action_Bar;
10
+
11
+ Icegram_Message_Type_Action_Bar.prototype.get_template_default = function () {
12
+ return '<div class="icegram action_bar_{{=id}}" >'+
13
+ '<div class="ig_action_bar ig_container ig_{{=theme}} ig_no_hide" id="icegram_message_{{=id}}">'+
14
+ '<div class="ig_content ig_clear_fix">'+
15
+ '<div class="ig_close" id="ig_close_{{=id}}"><span></span></div>'+
16
+ '<div class="ig_form_container layout_left"></div>'+
17
+ '<div class="ig_data ig_clear_fix">'+
18
+ '<div class="ig_headline">{{=headline}}</div>'+
19
+ '<div class="ig_message">{{=message}}</div>'+
20
+ '</div>'+
21
+ '<div class="ig_button">{{=label}}</div>'+
22
+ '<div class="ig_form_container layout_right layout_bottom"></div>'+
23
+ '</div>'+
24
+ '</div>'+
25
+ '</div>';
26
+ };
27
+
28
+ Icegram_Message_Type_Action_Bar.prototype.post_render = function ( ) {
29
+ //Calling parent post_render function
30
+ Icegram_Message_Type.prototype.post_render.apply(this, arguments);
31
+
32
+ if(this.data.use_theme_defaults == undefined || this.data.use_theme_defaults != 'yes'){
33
+ if (this.data.bg_color != undefined && this.data.bg_color != '') {
34
+ this.el.find('.ig_close').css('background-color', this.data.bg_color);
35
+ }
36
+ }
37
+ if(this.data.position !== '21' && jQuery('#ig_body_pushdown').length == 0){
38
+ jQuery('body').prepend('<div id="ig_body_pushdown"></div>');
39
+ }
40
+ };
41
+
42
+ Icegram_Message_Type_Action_Bar.prototype.set_position = function ( ) {
43
+ switch(this.data.position) {
44
+ case "21":
45
+ this.el.addClass('ig_bottom');
46
+ break;
47
+ case "01":
48
+ default:
49
+ this.el.addClass('ig_top');
50
+ break;
51
+ }
52
+
53
+ };
54
+
55
+ Icegram_Message_Type_Action_Bar.prototype.add_powered_by = function ( pb ) {
56
+ this.el.addClass('ig_has_pwby')
57
+ .find('.ig_content').before('<div class="ig_powered_by" ><a href="'+pb.link+'" target="_blank"><img src="'+pb.logo+'" title="'+pb.text+'"/></a></div>');
58
+ };
59
+
60
+ Icegram_Message_Type_Action_Bar.prototype.on_click = function ( e ) {
61
+ e.data = e.data || { self: this };
62
+ // Clicked on close button
63
+ if (jQuery(e.target).filter('.ig_show .ig_close, .ig_show .ig_close span').length) {
64
+ e.data.self.hide();
65
+ return;
66
+ }else if(jQuery(e.target).filter('.ig_hide .ig_close, .ig_hide .ig_close span').length){
67
+ e.data.self.show();
68
+ return;
69
+ }
70
+ // Now let the parent handle the rest...
71
+ Icegram_Message_Type.prototype.on_click.apply(this, arguments);
72
+ };
73
+
74
+ Icegram_Message_Type_Action_Bar.prototype.post_show = function ( ) {
75
+ //TODO:: add one option for making header sticky
76
+ if(this.data.position !== '21'){
77
+ var abH = this.el.outerHeight() || 0;
78
+ jQuery('#ig_body_pushdown').css('display', 'block').animate({'height': abH }, 500);
79
+ jQuery('*', document.body)
80
+ .not('.ig_action_bar, .ig_popup, .ig_messenger, .ig_inline, .ig_overlay, .ig_sidebar, .ig_tab, .ig_interstitial ,#ig_body_pushdown ')
81
+ .each(function(){
82
+ var t = window.getComputedStyle(this, null);
83
+ if((t.position === 'fixed' || (t.position === 'absolute' && (this.parentNode.nodeName === 'BODY' || this.nodeName === 'HEADER') ) )
84
+ && !isNaN(parseInt(t.top, 10)) && this.getBoundingClientRect().top <= abH){
85
+ jQuery(this).data('ig_fx_top', t.top).animate({'top': parseInt(t.top, 10) + abH + 'px'}, 300);
86
+ }
87
+ });
88
+ }
89
+ }
90
+
91
+ Icegram_Message_Type_Action_Bar.prototype.pre_hide = function ( ) {
92
+ if(this.data.position !== '21'){
93
+ jQuery('#ig_body_pushdown').animate({'height': 0}, 300).css('display', 'none');
94
+ jQuery('*', document.body)
95
+ .not('.ig_action_bar, .ig_popup, .ig_messenger, .ig_inline, .ig_overlay, .ig_sidebar, .ig_tab, .ig_interstitial ,#ig_body_pushdown ')
96
+ .each(function(){
97
+ if(typeof jQuery(this).data('ig_fx_top') !== 'undefined'){
98
+ jQuery(this).animate({'top': jQuery(this).data('ig_fx_top')}, 200);
99
+ }
100
+ });
101
+ }
102
+ }
message-types/action-bar/themes/air-mail.css ADDED
@@ -0,0 +1,107 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .ig_action_bar.ig_air-mail.ig_container {
2
+ /*background-color: #F2F2F2;*/
3
+ border-style: solid;
4
+ color: #707070;
5
+ -moz-border-image: -moz-repeating-linear-gradient(45deg, #a83439, #a83439 10px, #fdfdfd 10px, #fdfdfd 20px, #2f4175 20px, #2f4175 30px, #fdfdfd 30px, #fdfdfd 40px) 8 round;
6
+ -webkit-border-image: -webkit-repeating-linear-gradient(45deg, #a83439, #a83439 10px, #fdfdfd 10px, #fdfdfd 20px, #2f4175 20px, #2f4175 30px, #fdfdfd 30px, #fdfdfd 40px) 8 round;
7
+ -o-border-image: -o-repeating-linear-gradient(45deg, #a83439, #a83439 10px, #fdfdfd 10px, #fdfdfd 20px, #2f4175 20px, #2f4175 30px, #fdfdfd 30px, #fdfdfd 40px) 8 round;
8
+ border-image: repeating-linear-gradient(45deg, #a83439, #a83439 10px, #fdfdfd 10px, #fdfdfd 20px, #2f4175 20px, #2f4175 30px, #fdfdfd 30px, #fdfdfd 40px) 8 round;
9
+ background-color: #fdfdfd;
10
+ }
11
+
12
+ .ig_action_bar.ig_air-mail.ig_container.ig_top {
13
+ border-width: 0 0 8px 0;
14
+ }
15
+
16
+ .ig_action_bar.ig_air-mail.ig_container.ig_bottom {
17
+ border-width: 8px 0 0 0;
18
+ }
19
+
20
+ .ig_action_bar.ig_air-mail .ig_data {
21
+ max-width: 75%;
22
+ float: left;
23
+ text-align: left;
24
+ }
25
+ .ig_action_bar.ig_air-mail .ig_headline{
26
+ color: #2C4A9D;
27
+ }
28
+ .ig_action_bar.ig_air-mail .ig_headline,
29
+ .ig_action_bar.ig_air-mail .ig_message {
30
+ display: block;
31
+ }
32
+
33
+ .ig_action_bar.ig_air-mail .ig_button,
34
+ .ig_action_bar.ig_air-mail input[type="submit"],
35
+ .ig_action_bar.ig_air-mail input[type="button"]{
36
+ float: right;
37
+ background: #D82931;
38
+ text-transform: uppercase;
39
+ font-family: "Open Sans", sans-serif;
40
+ font-weight: 600;
41
+ border-radius: 4px;
42
+ /*border-bottom: 3px solid #BF3A2B;*/
43
+ border: none;
44
+ }
45
+
46
+ .ig_action_bar.ig_air-mail .ig_button:hover,
47
+ .ig_action_bar.ig_air-mail input[type="submit"]:hover,
48
+ .ig_action_bar.ig_air-mail input[type="button"]:hover {
49
+ box-shadow: 0 0 4px 0 rgba(0, 0, 0, .5);
50
+ }
51
+
52
+ .ig_action_bar.ig_air-mail .ig_button:active,
53
+ .ig_action_bar.ig_air-mail input[type="submit"]:active,
54
+ .ig_action_bar.ig_air-mail input[type="button"]:active{
55
+ box-shadow: none;
56
+ }
57
+
58
+ /*Commented for now, as it disturbs the whole layout */
59
+ /*
60
+ .ig_action_bar.ig_air-mail .ig_button:hover,
61
+ .ig_action_bar.ig_air-mail input[type="submit"]:hover,
62
+ .ig_action_bar.ig_air-mail input[type="button"]:hover{
63
+ margin-top: -3px;
64
+ border-bottom: 6px solid #c0392b;
65
+ }
66
+ */
67
+
68
+ .ig_action_bar.ig_air-mail .ig_close {
69
+ /*top: 0;*/
70
+ }
71
+ .ig_action_bar.ig_air-mail.ig_show.ig_bottom .ig_close > span,
72
+ .ig_action_bar.ig_air-mail.ig_show.ig_top .ig_close > span{
73
+ background-position: -520px center;
74
+ opacity: .4;
75
+ }
76
+
77
+ .ig_action_bar.ig_air-mail.ig_show.ig_bottom .ig_close:hover > span,
78
+ .ig_action_bar.ig_air-mail.ig_show.ig_top .ig_close:hover > span{
79
+ background-position: -520px center;
80
+ opacity: .8;
81
+ }
82
+
83
+ .ig_action_bar.ig_air-mail.ig_hide .ig_close {
84
+ display: none;
85
+ }
86
+ .ig_action_bar.ig_form_inline.ig_air-mail .ig_form_container.layout_inline .ig_form_header,
87
+ .ig_action_bar.ig_form_bottom.ig_air-mail .ig_form_container.layout_bottom .ig_form_header,
88
+ .ig_action_bar.ig_form_inline.ig_air-mail .ig_form_container.layout_inline .ig_form_footer,
89
+ .ig_action_bar.ig_form_bottom.ig_air-mail .ig_form_container.layout_bottom .ig_form_footer,
90
+ .ig_action_bar.ig_form_bottom.ig_air-mail .ig_form_container.layout_bottom .ig_embed_form_container,
91
+ .ig_action_bar.ig_form_inline.ig_air-mail .ig_form_container.layout_inline .ig_embed_form_container{
92
+ text-align: left;
93
+ }
94
+
95
+ @media only screen and (max-width: 768px){
96
+ .ig_action_bar.ig_air-mail .ig_button,
97
+ .ig_action_bar.ig_air-mail input[type="submit"],
98
+ .ig_action_bar.ig_air-mail input[type="button"] {
99
+ float: left;
100
+ margin-left: .7em;
101
+ }
102
+ .ig_action_bar.ig_air-mail.ig_has_pwby .ig_button,
103
+ .ig_action_bar.ig_air-mail.ig_has_pwby input[type="submit"],
104
+ .ig_action_bar.ig_air-mail.ig_has_pwby input[type="button"] {
105
+ margin-left: 2.5em;
106
+ }
107
+ }
message-types/action-bar/themes/bold.css ADDED
@@ -0,0 +1,81 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .ig_action_bar.ig_bold.ig_container {
2
+ background-color: #BC0933;
3
+ color: #FFF;
4
+ border-bottom: solid .2em #F3EEEE;
5
+ box-shadow: 0 0 .6em 0 rgba(0, 0, 0, .4);
6
+ }
7
+
8
+ .ig_action_bar.ig_bold.ig_container.ig_bottom {
9
+ border-bottom: none;
10
+ border-top: solid .2em #F3EEEE;
11
+ }
12
+ .ig_action_bar.ig_bold .ig_data {
13
+ max-width: 75%;
14
+ float: left;
15
+ text-align: left;
16
+ }
17
+ .ig_action_bar.ig_bold .ig_headline,
18
+ .ig_action_bar.ig_bold .ig_message {
19
+ display: block;
20
+ }
21
+
22
+ .ig_action_bar.ig_bold .ig_button,
23
+ .ig_action_bar.ig_bold input[type="submit"],
24
+ .ig_action_bar.ig_bold input[type="button"]{
25
+ float: right;
26
+ background: #00BB58;
27
+ border-radius: .2em;
28
+ box-shadow: inset 0 -3px 1px rgba(0, 0, 0, 0.35), 0 2px 2px rgba(0, 0, 0, 0.25);
29
+ text-shadow: 0px 0px 1px rgba(0, 0, 0, 0.1);
30
+ }
31
+
32
+ .ig_action_bar.ig_bold .ig_button:active,
33
+ .ig_action_bar.ig_bold input[type="submit"]:active,
34
+ .ig_action_bar.ig_bold input[type="button"]:active{
35
+ position: relative;
36
+ top: 3px;
37
+ box-shadow: none;
38
+ }
39
+
40
+ .ig_action_bar.ig_bold.ig_hide .ig_close {
41
+ background-color: #BC0933;
42
+ border: .2em solid #FFF;
43
+ border-bottom-width: 0;
44
+ box-shadow: 0 0 .3em rgba(0, 0, 0, 0.35);
45
+ border-radius: .3em .3em 0 0 ;
46
+ }
47
+
48
+ .ig_action_bar.ig_bold.ig_hide.ig_top .ig_close {
49
+ margin-top: .15em;
50
+ border-bottom-width: .2em;
51
+ border-top-width: 0;
52
+ border-radius: 0 0 .3em .3em;
53
+ }
54
+ .ig_action_bar.ig_bold.ig_hide.ig_bottom .ig_close {
55
+ margin-bottom: .15em;
56
+ }
57
+
58
+ .ig_action_bar.ig_form_inline.ig_bold .ig_form_container.layout_inline .ig_form_header,
59
+ .ig_action_bar.ig_form_bottom.ig_bold .ig_form_container.layout_bottom .ig_form_header,
60
+ .ig_action_bar.ig_form_inline.ig_bold .ig_form_container.layout_inline .ig_form_footer,
61
+ .ig_action_bar.ig_form_bottom.ig_bold .ig_form_container.layout_bottom .ig_form_footer,
62
+ .ig_action_bar.ig_form_bottom.ig_bold .ig_form_container.layout_bottom .ig_embed_form_container,
63
+ .ig_action_bar.ig_form_inline.ig_bold .ig_form_container.layout_inline .ig_embed_form_container{
64
+ text-align: left;
65
+ }
66
+ /****************** Responsiveness: Start *******************/
67
+
68
+ @media only screen and (max-width: 768px){
69
+ .ig_action_bar.ig_bold .ig_button,
70
+ .ig_action_bar.ig_bold input[type="submit"],
71
+ .ig_action_bar.ig_bold input[type="button"] {
72
+ float: left;
73
+ margin: 0.3em 0 0.3em .7em;
74
+ }
75
+ .ig_action_bar.ig_bold.ig_has_pwby .ig_button,
76
+ .ig_action_bar.ig_bold.ig_has_pwby input[type="submit"],
77
+ .ig_action_bar.ig_bold.ig_has_pwby input[type="button"] {
78
+ margin-left: 2.5em;
79
+ }
80
+ }
81
+
message-types/action-bar/themes/default.css ADDED
@@ -0,0 +1,473 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #ig_body_pushdown{
2
+ display: none;
3
+ position: relative;
4
+ height: 0;
5
+ visibility: hidden;
6
+ width: 100%;
7
+ }
8
+ .ig_action_bar, .ig_action_bar div {
9
+ box-sizing: border-box;
10
+ }
11
+ .ig_action_bar.ig_container {
12
+ z-index: 9999999;
13
+ position: fixed;
14
+ width: 100%;
15
+ padding: 0;
16
+ margin: 0;
17
+ display: none;
18
+ left: 0;
19
+ line-height: 1.5;
20
+ }
21
+ .ig_action_bar.ig_container.ig_top{
22
+ top: 0;
23
+ }
24
+
25
+ .ig_action_bar.ig_container.ig_bottom {
26
+ position: fixed;
27
+ bottom: 0;
28
+ }
29
+ .ig_action_bar.ig_hide.ig_bottom {
30
+ -ms-transform: translateY(100%);
31
+ -webkit-transform: translateY(100%);
32
+ transform: translateY(100%);
33
+ }
34
+ .ig_action_bar.ig_hide.ig_top{
35
+ -ms-transform: translateY(-100%);
36
+ -webkit-transform: translateY(-100%);
37
+ transform: translateY(-100%);
38
+ }
39
+
40
+ .ig_action_bar .ig_content {
41
+ float: left;
42
+ text-align: center;
43
+ width: 100%;
44
+ padding: 0 ;
45
+ padding-right: 2.5em;
46
+ }
47
+
48
+ .ig_action_bar .ig_data{
49
+ text-align: center;
50
+ padding: .3em 1em .3em .7em;
51
+ display: inline-block;
52
+ line-height: 1.5;
53
+ vertical-align: middle;
54
+ margin:0;
55
+ }
56
+ .ig_action_bar.ig_has_pwby .ig_data{
57
+ padding-left: 2.5em;
58
+ }
59
+
60
+ .ig_action_bar .ig_headline {
61
+ display: inline-block;
62
+ font-size: 1em;
63
+ line-height: 1.25;
64
+ font-weight: bold;
65
+ padding: 0;
66
+ }
67
+
68
+ .ig_action_bar .ig_message {
69
+ /*font-size: .9em;*/
70
+ display: inline-block;
71
+ font-size: .85em;
72
+ line-height: 1.2;
73
+ padding: 0;
74
+ padding-top: .2em;
75
+ }
76
+
77
+ .ig_action_bar .ig_button,
78
+ .ig_action_bar input[type="submit"],
79
+ .ig_action_bar input[type="button"] {
80
+ border: none;
81
+ color: #FFF;
82
+ cursor: pointer;
83
+ display: inline-block;
84
+ font-size: 1em;
85
+ font-weight: 700;
86
+ letter-spacing: .05em;
87
+ /*vertical-align: text-bottom;*/
88
+ vertical-align: middle;
89
+ text-align: center;
90
+ padding: .3em 1.5em; /*test this accros themes*/
91
+ /*margin: 0.5em 3.5em .5em 0;*/
92
+ margin: 0.5em 0 .5em 0;
93
+ float: none;
94
+ background-image: none;
95
+ }
96
+ .ig_action_bar .ig_button:hover,
97
+ .ig_action_bar input[type="submit"]:hover,
98
+ .ig_action_bar input[type="button"]:hover {
99
+ /*border: none;*/ /*test this accros themes wordpress themes*/
100
+ }
101
+
102
+ .ig_action_bar .ig_button:active,
103
+ .ig_action_bar input[type="submit"]:active,
104
+ .ig_action_bar input[type="button"]:active {
105
+ /*border: none;*/ /*test this accros themes wordpress themes*/
106
+ }
107
+
108
+ .ig_action_bar .ig_powered_by {
109
+ vertical-align: top;
110
+ opacity: .5;
111
+ display: inline-block;
112
+ float: left;
113
+ z-index: 22;
114
+ position: absolute;
115
+ margin-top: 0;
116
+ }
117
+
118
+ .ig_action_bar .ig_powered_by img {
119
+ width: 1.5em;
120
+ margin: .3em 0 0 .5em;
121
+ }
122
+
123
+ .ig_action_bar .ig_close {
124
+ z-index: 1000000;
125
+ cursor: pointer;
126
+ position: absolute;
127
+ /*right: .2em;*/
128
+ right: 0;
129
+ width: 36px;
130
+ height: 36px;
131
+ box-sizing: border-box;
132
+ }
133
+
134
+ .ig_action_bar .ig_close > span{
135
+ background-image: url(../../../assets/images/sprite_1.png);
136
+ background-repeat: no-repeat;
137
+ width: 30px;
138
+ height: 100%;
139
+ opacity: .7;
140
+ display: inline-block;
141
+ }
142
+
143
+ .ig_action_bar .ig_close:hover > span{
144
+ opacity: 1;
145
+ }
146
+ .ig_action_bar.ig_show .ig_close {
147
+ /*top: .25em;*/
148
+ background-color: transparent !important;
149
+ }
150
+ .ig_action_bar.ig_hide .ig_close {
151
+ position: fixed;
152
+ border: none;
153
+ right: .2em;
154
+ }
155
+ .ig_action_bar.ig_hide.ig_top .ig_close {
156
+ top:100%;
157
+ }
158
+ .ig_action_bar.ig_hide.ig_bottom .ig_close {
159
+ bottom: 100%;
160
+ }
161
+ .ig_action_bar.ig_show.ig_top .ig_close > span,
162
+ .ig_action_bar.ig_hide.ig_bottom .ig_close > span{
163
+ background-position: -80px center;
164
+ }
165
+
166
+ .ig_action_bar.ig_hide.ig_top .ig_close > span,
167
+ .ig_action_bar.ig_show.ig_bottom .ig_close > span{
168
+ background-position: -120px center;
169
+ }
170
+
171
+
172
+ /****************** Responsiveness: Start *******************/
173
+ @media only screen and (max-width: 768px){
174
+ .ig_action_bar .ig_content {
175
+ padding-right: 0;
176
+ }
177
+ .ig_action_bar .ig_data {
178
+ width: 100%; /* default */
179
+ max-width: 100% !important;
180
+ padding-right: 2.5em;
181
+ }
182
+ .ig_action_bar .ig_button,
183
+ .ig_action_bar input[type="submit"],
184
+ .ig_action_bar input[type="button"] {
185
+ max-width: 100%;
186
+ margin: 0.3em 0;
187
+ }
188
+ .ig_action_bar.ig_show .ig_close {
189
+ /*top: initial;*/
190
+ top: 0;
191
+ }
192
+ .ig_action_bar{
193
+ font-size: 18px;
194
+ }
195
+ .ig_action_bar .ig_form_container .ig_embed_form_container{
196
+ width: 80%;
197
+ margin: 0 auto;
198
+ font-size: .85em;
199
+ }
200
+ }
201
+ /****************** Responsiveness: End *******************/
202
+
203
+
204
+ /****************** Embed Form: Start *******************/
205
+
206
+ .ig_action_bar .ig_form_container{
207
+ width: 20%;
208
+ float: left;
209
+ }
210
+ .ig_action_bar.ig_form_left .ig_content,
211
+ .ig_action_bar.ig_form_right .ig_content,
212
+ .ig_action_bar.ig_form_bottom .ig_content,
213
+ .ig_action_bar.ig_form_inline .ig_content{
214
+ padding: 0;
215
+ }
216
+ .ig_action_bar.ig_form_left .ig_data,
217
+ .ig_action_bar.ig_form_right .ig_data{
218
+ width: 79%;
219
+ max-width: 79% !important;
220
+ float: left;
221
+ }
222
+ .ig_action_bar.ig_form_left.ig_has_pwby .ig_data{
223
+ width: 79%;
224
+ max-width: 79% !important;
225
+ padding-left: 1em;
226
+ }
227
+
228
+ .ig_action_bar.ig_form_bottom .ig_data{
229
+ float: left;
230
+ }
231
+ .ig_action_bar.ig_form_bottom .ig_data,
232
+ .ig_action_bar.ig_form_inline .ig_data{
233
+ width: 100%;
234
+ max-width: 100% !important;
235
+ padding-right: 2.5em;
236
+ }
237
+ .ig_action_bar.ig_form_right .ig_form_container.layout_right{
238
+ float: right;
239
+ padding-right: 2.5em;
240
+ }
241
+ .ig_action_bar.ig_form_left.ig_has_pwby .ig_form_container.layout_left{
242
+ padding-left: 2.5em;
243
+ /*width: 20%;*/
244
+ }
245
+ .ig_action_bar.ig_form_bottom .ig_form_container.layout_bottom{
246
+ padding-right: 2.5em;
247
+ }
248
+ .ig_action_bar.ig_form_bottom.ig_has_pwby .ig_form_container.layout_bottom{
249
+ padding-left: 2.5em;
250
+ }
251
+ .ig_action_bar.ig_form_inline .ig_form_container.layout_inline{
252
+ /*padding-left: 0;*/
253
+ padding-right: 0;
254
+ }
255
+
256
+ .ig_action_bar.ig_form_inline .ig_form_container.layout_inline .ig_form_header,
257
+ .ig_action_bar.ig_form_bottom .ig_form_container.layout_bottom .ig_form_header,
258
+ .ig_action_bar.ig_form_inline .ig_form_container.layout_inline .ig_form_footer,
259
+ .ig_action_bar.ig_form_bottom .ig_form_container.layout_bottom .ig_form_footer,
260
+ .ig_action_bar.ig_form_bottom .ig_form_container.layout_bottom .ig_embed_form_container,
261
+ .ig_action_bar.ig_form_inline .ig_form_container.layout_inline .ig_embed_form_container{
262
+ text-align: center;
263
+ }
264
+
265
+ /****** Form Style: Style4 ******/
266
+ .ig_action_bar.ig_form_left.ig_form_style_4 .ig_data{
267
+ padding-left : 2em;
268
+ }
269
+ .ig_action_bar.ig_form_right.ig_form_style_4 .ig_data{
270
+ padding-right : 2em;
271
+ }
272
+ .ig_action_bar.ig_form_bottom.ig_form_style_4 .ig_form_container.layout_bottom{
273
+ padding-top: 0;
274
+ padding-bottom: 0;
275
+ margin-top: 1em;
276
+ }
277
+
278
+ .ig_action_bar.ig_form_style_4.ig_hide .ig_form_container:before{
279
+ display: none;
280
+ }
281
+
282
+
283
+ /*** responsive form ***/
284
+
285
+ /*@media only screen and (max-width: 319px), (min-width: 320px) and (max-width: 359px), (min-width: 360px) and (max-width: 413px), (min-width: 414px) and (max-width: 643px), (min-width: 644px) and (max-width: 767px) and (orientation : portrait), (min-width: 644px) and (max-width: 767px) and (orientation : landscape), (min-width: 768px) and (max-width: 992px){*/
286
+
287
+ @media only screen and (max-width: 768px){
288
+ .ig_action_bar.ig_form_left .ig_form_container.layout_left,
289
+ .ig_action_bar.ig_form_right .ig_form_container.layout_right{
290
+ display: none;
291
+ }
292
+
293
+ .ig_action_bar.ig_form_left .ig_form_container.layout_bottom,
294
+ .ig_action_bar.ig_form_right .ig_form_container.layout_bottom,
295
+ .ig_action_bar.ig_form_bottom .ig_form_container.layout_bottom{
296
+ display: block;
297
+ width: 100%;
298
+ /*font-size: 1.5em;*/
299
+ padding: .7em 1em;
300
+ /*padding-right: 1em;*/
301
+ height: auto !important;
302
+ }
303
+ .ig_action_bar.ig_form_left.ig_has_pwby .ig_form_container.layout_bottom,
304
+ .ig_action_bar.ig_form_right.ig_has_pwby .ig_form_container.layout_bottom,
305
+ .ig_action_bar.ig_form_bottom.ig_has_pwby .ig_form_container.layout_bottom{
306
+ padding: .7em 1em;
307
+ }
308
+
309
+ .ig_action_bar.ig_form_left .ig_data,
310
+ .ig_action_bar.ig_form_bottom .ig_data,
311
+ .ig_action_bar.ig_form_right .ig_data{
312
+ width: 100%;
313
+ max-width: 100% !important;
314
+ padding-right: 2.3em;
315
+ }
316
+ .ig_action_bar.ig_form_right.ig_has_pwby .ig_data,
317
+ .ig_action_bar.ig_form_left.ig_has_pwby .ig_data{
318
+ /*width: 79%;*/
319
+ /*max-width: 79% !important;*/
320
+ padding-left: 2.3em;
321
+ }
322
+
323
+ .ig_action_bar .ig_form_container .ig_embed_form_container{
324
+ width: 60%;
325
+ margin: 0 auto;
326
+ font-size: .85em;
327
+ }
328
+ /*.ig_action_bar.ig_form_inline .ig_form_container .ig_embed_form_container,*/
329
+ .ig_action_bar .ig_form_container .ig_embed_form_container.ig_half{
330
+ width: 100%;
331
+ }
332
+ .ig_action_bar .ig_form_container.layout_bottom .ig_full .ig_form_els,
333
+ .ig_action_bar .ig_form_container.layout_inline .ig_full .ig_form_els,
334
+ .ig_action_bar .ig_form_container.layout_bottom .ig_half .ig_form_els,
335
+ .ig_action_bar .ig_form_container.layout_inline .ig_half .ig_form_els,
336
+ .ig_action_bar .ig_form_container.layout_bottom .ig_third .ig_form_els,
337
+ .ig_action_bar .ig_form_container.layout_inline .ig_third .ig_form_els,
338
+ .ig_action_bar .ig_form_container.layout_bottom .ig_quater .ig_form_els,
339
+ .ig_action_bar .ig_form_container.layout_inline .ig_quater .ig_form_els{
340
+ width: 99%;
341
+ display: inline-block;
342
+ float: left;
343
+ margin: .25em auto;
344
+ /*margin: .5em auto 0 auto;*/
345
+ }
346
+ .ig_action_bar .ig_form_container.layout_bottom .ig_half .ig_form_els,
347
+ .ig_action_bar .ig_form_container.layout_inline .ig_half .ig_form_els{
348
+ width: 49%;
349
+ }
350
+ .ig_action_bar .ig_form_container.layout_bottom .ig_full .ig_button_label,
351
+ .ig_action_bar .ig_form_container.layout_inline .ig_full .ig_button_label,
352
+ .ig_action_bar .ig_form_container.layout_bottom .ig_half .ig_button_label,
353
+ .ig_action_bar .ig_form_container.layout_inline .ig_half .ig_button_label,
354
+ .ig_action_bar .ig_form_container.layout_bottom .ig_third .ig_button_label,
355
+ .ig_action_bar .ig_form_container.layout_inline .ig_third .ig_button_label,
356
+ .ig_action_bar .ig_form_container.layout_bottom .ig_quater .ig_button_label,
357
+ .ig_action_bar .ig_form_container.layout_inline .ig_quater .ig_button_label{
358
+ display: none;
359
+ }
360
+ .ig_action_bar .ig_form_container.layout_bottom .ig_half .ig_button_label,
361
+ .ig_action_bar .ig_form_container.layout_inline .ig_half .ig_button_label{
362
+ display: block;
363
+ visibility: hidden;
364
+ opacity: 0;
365
+ }
366
+
367
+ .ig_action_bar .ig_form_container.layout_inline .ig_button,
368
+ .ig_action_bar .ig_form_container.layout_inline input[type="submit"],
369
+ .ig_action_bar .ig_form_container.layout_inline input[type="button"],
370
+ .ig_action_bar .ig_form_container.layout_bottom .ig_button,
371
+ .ig_action_bar .ig_form_container.layout_bottom input[type="submit"],
372
+ .ig_action_bar .ig_form_container.layout_bottom input[type="button"]{
373
+ margin: 0 auto;
374
+ }
375
+ /****** Form Style: Style 1 ******/
376
+
377
+ .ig_action_bar.ig_form_left.ig_form_style_1 .ig_form_container.layout_bottom:before,
378
+ .ig_action_bar.ig_form_right.ig_form_style_1 .ig_form_container.layout_bottom:before{
379
+ width: 100%;
380
+ border-top-width: .2em;
381
+ }
382
+ .ig_action_bar.ig_form_bottom.ig_form_style_1 .ig_form_container.layout_bottom:before{
383
+ border-top-width: .2em;
384
+ }
385
+
386
+ /****** Form Style: Style 2 ******/
387
+
388
+ /*.ig_action_bar.ig_form_style_2 .ig_form_container.layout_bottom .ig_form_els,*/
389
+ .ig_action_bar.ig_form_style_2 .ig_form_container .ig_form_els{
390
+ margin-right: 0;
391
+ margin-left: 0;
392
+ }
393
+
394
+ .ig_action_bar.ig_form_style_2 .ig_form_container.layout_inline .ig_form_els.ig_form_els_first input,
395
+ .ig_action_bar.ig_form_style_2 .ig_form_container.layout_bottom .ig_form_els.ig_form_els_first input,
396
+ .ig_action_bar.ig_form_style_2 .ig_form_container.layout_inline .ig_form_els.ig_form_els_last input,
397
+ .ig_action_bar.ig_form_style_2 .ig_form_container.layout_bottom .ig_form_els.ig_form_els_last input,
398
+ .ig_action_bar.ig_form_style_2 .ig_form_container.layout_inline .ig_form_els input,
399
+ .ig_action_bar.ig_form_style_2 .ig_form_container.layout_bottom .ig_form_els input{
400
+ border-radius: 2em;
401
+ padding-left: 1em;
402
+ height: 2.25em;
403
+ line-height: 2.2em;
404
+ }
405
+ .ig_action_bar.ig_form_style_2 .ig_form_container.layout_bottom .ig_form_els input.ig_button,
406
+ .ig_action_bar.ig_form_style_2 .ig_form_container.layout_inline .ig_form_els input.ig_button{
407
+ padding: inherit;
408
+ }
409
+
410
+ .ig_action_bar.ig_form_style_2 .ig_form_container.layout_inline .ig_form_els.ig_form_els_first label,
411
+ .ig_action_bar.ig_form_style_2 .ig_form_container.layout_bottom .ig_form_els.ig_form_els_first label,
412
+ .ig_action_bar.ig_form_style_2 .ig_form_container.layout_bottom .ig_form_els.ig_form_els_last label,
413
+ .ig_action_bar.ig_form_style_2 .ig_form_container.layout_inline .ig_form_els.ig_form_els_last label,
414
+ .ig_action_bar.ig_form_style_2 .ig_form_container.layout_inline .ig_form_els label,
415
+ .ig_action_bar.ig_form_style_2 .ig_form_container.layout_bottom .ig_form_els label{
416
+ padding-left: 1em;
417
+ }
418
+ /*.ig_action_bar.ig_form_style_2 .ig_form_container.layout_bottom .ig_form_els.ig_form_els_first input,*/
419
+ .ig_action_bar.ig_form_style_2 .ig_form_container .ig_half .ig_form_els.ig_form_els_first input{
420
+ border-radius: 2em 0 0 2em;
421
+ padding-left: 1em;
422
+ border-right-width: 0;
423
+ }
424
+
425
+ /*.ig_action_bar.ig_form_style_2 .ig_form_container.layout_bottom .ig_form_els.ig_form_els_first label,*/
426
+ .ig_action_bar.ig_form_style_2 .ig_form_container .ig_half .ig_form_els.ig_form_els_first label{
427
+ padding-left: 1em;
428
+ }
429
+
430
+ /*.ig_action_bar.ig_form_style_2 .ig_form_container.layout_bottom .ig_form_els.ig_form_els_last input,*/
431
+ .ig_action_bar.ig_form_style_2 .ig_form_container .ig_half .ig_form_els.ig_form_els_last input{
432
+ border-radius: 0 2em 2em 0;
433
+ border-left-width: 0;
434
+ }
435
+ .ig_action_bar.ig_form_style_2 .ig_form_container .ig_half .ig_form_els .ig_button,
436
+ .ig_action_bar.ig_form_style_2 .ig_form_container .ig_half .ig_form_els input{
437
+ width: 100%;
438
+ }
439
+
440
+ /****** Form Style: Style 4 ******/
441
+
442
+ .ig_action_bar.ig_form_left.ig_form_style_4 .ig_data{
443
+ padding-left : 1em;
444
+ }
445
+ .ig_action_bar.ig_form_right.ig_form_style_4 .ig_data{
446
+ padding-right : 2.5em;
447
+ }
448
+
449
+ .ig_action_bar.ig_form_left.ig_form_style_4 .ig_form_container,
450
+ .ig_action_bar.ig_form_right.ig_form_style_4 .ig_form_container{
451
+ margin-top : 1em;
452
+ }
453
+ .ig_action_bar.ig_form_left.ig_form_style_4 .ig_form_container,
454
+ .ig_action_bar.ig_form_right.ig_form_style_4 .ig_form_container,
455
+ .ig_action_bar.ig_form_bottom.ig_form_style_4 .ig_form_container{
456
+ padding-top: 0;
457
+ padding-bottom: 0;
458
+ }
459
+
460
+ }
461
+ @media only screen and (max-width: 644px){
462
+ .ig_action_bar.ig_form_inline .ig_form_container .ig_embed_form_container,
463
+ .ig_action_bar .ig_form_container .ig_embed_form_container{
464
+ width: 70%;
465
+ }
466
+ }
467
+ @media only screen and (max-width: 375px){
468
+ .ig_action_bar.ig_form_inline .ig_form_container .ig_embed_form_container{
469
+ width: 100%;
470
+ }
471
+ }
472
+
473
+ /****************** Embed Form: End *******************/
message-types/action-bar/themes/hello.css ADDED
@@ -0,0 +1,76 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .ig_action_bar.ig_hello.ig_container {
2
+ background-color:#EB5B31;
3
+ color: #FFF;
4
+ line-height: 1.5;
5
+ }
6
+
7
+ .ig_action_bar.ig_hello.ig_container {
8
+ border-bottom: .2em solid #fff;
9
+ box-shadow: 0 0 .6em 0 rgba(0, 0, 0, .4);
10
+ }
11
+
12
+ .ig_action_bar.ig_hello.ig_container.ig_bottom {
13
+ border-bottom: none;
14
+ border-top: .2em solid #fff;
15
+ }
16
+
17
+ .ig_action_bar.ig_hello .ig_headline {
18
+ font-weight: bold;
19
+ margin-right: .5em;
20
+ }
21
+
22
+ .ig_action_bar.ig_hello .ig_message {
23
+ margin-right: .5em;
24
+ }
25
+
26
+ .ig_action_bar.ig_hello .ig_button,
27
+ .ig_action_bar.ig_hello input[type="submit"],
28
+ .ig_action_bar.ig_hello input[type="button"] {
29
+ background-color: #4A4844;
30
+ background-image: linear-gradient(top, transparent 0%, rgba(51, 51, 51, 0.4) 100%);
31
+ box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.28);
32
+ font-weight: 400;
33
+ border-radius: .25em;
34
+ float: none;
35
+ padding: .2em 1.3em;
36
+ }
37
+
38
+ .ig_action_bar.ig_hello .ig_button:hover,
39
+ .ig_action_bar.ig_hello input[type="submit"]:hover,
40
+ .ig_action_bar.ig_hello input[type="button"]:hover {
41
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
42
+ filter: alpha(opacity=80);
43
+ opacity: 0.8;
44
+ }
45
+
46
+ .ig_action_bar.ig_hello.ig_hide .ig_close{
47
+ background-color:#EB5B31;
48
+ border: .2em solid #FFF;
49
+ border-bottom-width: 0;
50
+ border-radius: .3em .3em 0 0 ;
51
+ box-shadow: 0 0 .3em rgba(0, 0, 0, 0.35);
52
+ }
53
+ .ig_action_bar.ig_hello.ig_hide.ig_top .ig_close {
54
+ margin-top: .15em;
55
+ border-bottom-width: .2em;
56
+ border-top-width: 0;
57
+ border-radius: 0 0 .3em .3em;
58
+ }
59
+ .ig_action_bar.ig_hello.ig_hide.ig_bottom .ig_close {
60
+ margin-bottom: .15em;
61
+ }
62
+
63
+ /****************** Embed Form: Start *******************/
64
+
65
+ .ig_action_bar.ig_form_inline.ig_hello .ig_form_container.layout_inline {
66
+ padding: .2em;
67
+ }
68
+
69
+ .ig_action_bar.ig_form_inline.ig_hello .ig_headline{
70
+ vertical-align: middle;
71
+ margin-right: .5em;
72
+ }
73
+ .ig_action_bar.ig_form_inline.ig_hello .ig_message{
74
+ vertical-align: middle;
75
+ }
76
+ /****************** Embed Form: End *******************/
message-types/action-bar/themes/solid.css ADDED
@@ -0,0 +1,54 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .ig_action_bar.ig_solid.ig_container {
2
+ background-color:#4E3363;
3
+ color: #FFF;
4
+ }
5
+
6
+ .ig_action_bar.ig_solid .ig_data {
7
+ max-width: 75%;
8
+ float: left;
9
+ text-align: left;
10
+ }
11
+ .ig_action_bar.ig_solid .ig_headline,
12
+ .ig_action_bar.ig_solid .ig_message {
13
+ display: block;
14
+ }
15
+ .ig_action_bar.ig_solid .ig_button,
16
+ .ig_action_bar.ig_solid input[type="submit"],
17
+ .ig_action_bar.ig_solid input[type="button"] {
18
+ background: #008010;
19
+ float: right;
20
+ border-radius: 0.1em;
21
+ }
22
+
23
+ .ig_action_bar.ig_solid .ig_button:hover,
24
+ .ig_action_bar.ig_solid input[type="submit"]:hover,
25
+ .ig_action_bar.ig_solid input[type="button"]:hover {
26
+ box-shadow: inset 0 -4em 0 rgba(255, 255, 255, 0.15);
27
+ }
28
+
29
+ .ig_action_bar.ig_solid.ig_hide .ig_close {
30
+ background-color:#4E3363;
31
+ }
32
+
33
+ .ig_action_bar.ig_form_inline.ig_solid .ig_form_container.layout_inline .ig_form_header,
34
+ .ig_action_bar.ig_form_bottom.ig_solid .ig_form_container.layout_bottom .ig_form_header,
35
+ .ig_action_bar.ig_form_inline.ig_solid .ig_form_container.layout_inline .ig_form_footer,
36
+ .ig_action_bar.ig_form_bottom.ig_solid .ig_form_container.layout_bottom .ig_form_footer,
37
+ .ig_action_bar.ig_form_bottom.ig_solid .ig_form_container.layout_bottom .ig_embed_form_container,
38
+ .ig_action_bar.ig_form_inline.ig_solid .ig_form_container.layout_inline .ig_embed_form_container{
39
+ text-align: left;
40
+ }
41
+
42
+ @media only screen and (max-width: 768px){
43
+ .ig_action_bar.ig_solid .ig_button,
44
+ .ig_action_bar.ig_solid input[type="submit"],
45
+ .ig_action_bar.ig_solid input[type="button"] {
46
+ float: left;
47
+ margin: 0.3em 0 0.3em .7em;
48
+ }
49
+ .ig_action_bar.ig_solid.ig_has_pwby .ig_button,
50
+ .ig_action_bar.ig_solid.ig_has_pwby input[type="submit"],
51
+ .ig_action_bar.ig_solid.ig_has_pwby input[type="button"] {
52
+ margin-left: 2.5em;
53
+ }
54
+ }
message-types/messenger/main.js CHANGED
@@ -1 +1,44 @@
1
- /* File for backward compatibility. */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ * Icegram Message Type - Messenger
3
+ **/
4
+ function Icegram_Message_Type_Messenger( data ) {
5
+ Icegram_Message_Type.apply(this, arguments);
6
+ }
7
+ Icegram_Message_Type_Messenger.prototype = Object.create(Icegram_Message_Type.prototype);
8
+ Icegram_Message_Type_Messenger.prototype.constructor = Icegram_Message_Type_Messenger;
9
+
10
+ Icegram_Message_Type_Messenger.prototype.get_template_default = function () {
11
+ return '<div class="icegram ig_messenger ig_{{=theme}} ig_container ig_cta" id="icegram_message_{{=id}}">' +
12
+ '<div class="ig_content">' +
13
+ '<div class="ig_close" id="ig_close_{{=id}}"></div>' +
14
+ '<div class="ig_data">' +
15
+ '<div class="ig_headline">{{=headline}}</div>' +
16
+ '<div class="ig_body">' +
17
+ '<img class="ig_icon" src="{{=icon}}"/>' +
18
+ '<div class="ig_message">{{=message}}</div>' +
19
+ '</div>' +
20
+ '<div class="ig_footer"></div>' +
21
+ '</div>' +
22
+ '</div>' +
23
+ '</div>';
24
+ };
25
+
26
+ Icegram_Message_Type_Messenger.prototype.set_position = function ( ) {
27
+ switch(this.data.position) {
28
+ case "20":
29
+ this.el.addClass('ig_left ig_bottom');
30
+ break;
31
+ case "22":
32
+ default:
33
+ this.el.addClass('ig_right ig_bottom');
34
+ break;
35
+ }
36
+
37
+ };
38
+
39
+ Icegram_Message_Type_Messenger.prototype.add_powered_by = function ( pb ) {
40
+ // this.el.addClass('ig_has_pwby');
41
+ this.el.addClass('ig_has_pwby')
42
+ .find('.ig_content')
43
+ .after('<div class="ig_powered_by"><a href="'+pb.link+'" target="_blank">'+pb.text+'</a></div>');
44
+ };
message-types/messenger/themes/canvas.css ADDED
@@ -0,0 +1,74 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .ig_messenger.ig_canvas.ig_container {
2
+ /*max-height: 80%;*/
3
+ /*max-width: 400px;*/
4
+ max-width: 33%;
5
+ }
6
+
7
+ .ig_messenger.ig_canvas .ig_content {
8
+ border: 1px solid #BFBFBF;
9
+ margin: .6em .6em .1em .6em;
10
+ padding: .6em;
11
+ overflow: hidden;
12
+ box-shadow: 0 0.15em 0.35em 0 rgba(0, 0, 0, 0.13);
13
+ background-color: #FFF !important;
14
+ }
15
+ .ig_messenger.ig_canvas .ig_headline {
16
+ color: #111;
17
+ width: 100%;
18
+ font-size: 1.5em;
19
+ line-height: 1em;
20
+ padding: 0 1em .1em 0.2em;
21
+ }
22
+
23
+ .ig_messenger.ig_canvas .ig_body{
24
+ max-height: 21em;
25
+ overflow-y: auto;
26
+ padding: 0 .5em 0 .5em;
27
+ margin-top: .5em;
28
+ line-height: 1.3em;
29
+
30
+ }
31
+
32
+ .ig_messenger.ig_canvas .ig_icon {
33
+ float: right;
34
+ position: relative;
35
+ border-radius: 5%;
36
+ /*max-width: 100px;*/
37
+ max-width: 6em;
38
+ margin: .3em;
39
+ height: auto !important;
40
+ width: auto !important;
41
+ }
42
+
43
+ .ig_messenger.ig_canvas .ig_message {
44
+ color: #444;
45
+ display: inline;
46
+ }
47
+
48
+ .ig_messenger.ig_canvas .ig_close {
49
+ /*right: .5em;
50
+ top: .5em;*/
51
+ right: 0;
52
+ top: .5em;
53
+ }
54
+
55
+ .ig_messenger.ig_canvas .ig_powered_by {
56
+ bottom: 0;
57
+ padding-left: 1em;
58
+ text-align: left;
59
+ }
60
+ @media only screen and (max-width: 850px) {
61
+ .ig_messenger.ig_canvas.ig_container {
62
+ max-width: 50%;
63
+ }
64
+ }
65
+ @media only screen and (max-width: 644px) {
66
+ .ig_messenger.ig_canvas.ig_container {
67
+ max-width: 70%;
68
+ }
69
+ }
70
+ @media only screen and (max-width: 415px) {
71
+ .ig_messenger.ig_canvas.ig_container {
72
+ max-width: 90%;
73
+ }
74
+ }
message-types/messenger/themes/clear.css ADDED
@@ -0,0 +1,104 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .ig_messenger.ig_clear.ig_container {
2
+ /*width: 250px;*/
3
+ /*height: 260px;*/
4
+ font-size: 13px;
5
+ width: 19.25em;
6
+ height: 20.75em;
7
+ border-radius: .23em .23em 0 0;
8
+ border: 1px solid #BFBFBF;
9
+ }
10
+
11
+ .ig_messenger.ig_clear .ig_headline:after,
12
+ .ig_messenger.ig_clear .ig_headline:before {
13
+ background-size: cover;
14
+ }
15
+
16
+ .ig_messenger.ig_clear .ig_headline:before {
17
+ display: block;
18
+ background-image: url(../../../assets/images/clear-header.png);
19
+ top: .6em;
20
+ left: .6em;
21
+ height: 1.25em;
22
+ width: 1.25em;
23
+ }
24
+
25
+ .ig_messenger.ig_clear .ig_headline {
26
+ background: #F9F9F9;
27
+ color: #333;
28
+ width: 100%;
29
+ height: 2.38em;
30
+ line-height: 2.58em;
31
+ font-size: 1em;
32
+ padding: 0 2.9em 0 2em;
33
+ border-bottom: 1px solid #BFBFBF;
34
+ box-shadow: inset 0 0 .25em 0 #FFF;
35
+ }
36
+
37
+ .ig_messenger.ig_clear .ig_headline:after {
38
+ display: block;
39
+ height: 2.12em;
40
+ top: 2.38em;
41
+ background-image: url(../../../assets/images/clear-option.png);
42
+ }
43
+
44
+ .ig_messenger.ig_clear .ig_body {
45
+ background: #FFF;
46
+ color: #222;
47
+ font-size: 1em;
48
+ font-family: Arial, Helvetica, sans-serif;
49
+ position: relative;
50
+ height: 13.35em;
51
+ top: 2.12em;
52
+ border-top: 1px solid #BFBFBF;
53
+ right: 0;
54
+ line-height: 1.25em;
55
+ padding: .5em .9em 0 .5em;
56
+ box-shadow: inset 0 0 .25em 0 #FFF;
57
+ }
58
+
59
+ .ig_messenger.ig_clear .ig_message {
60
+ color: #3E454C;
61
+ width: 100%;
62
+ padding-left: 3em;
63
+ }
64
+
65
+ .ig_messenger.ig_clear.ig_no_icon .ig_message {
66
+ padding-left: .5em;
67
+ }
68
+
69
+ .ig_messenger.ig_clear .ig_footer {
70
+ display: block;
71
+ background-color: inherit;
72
+ height: 2.76em;
73
+ margin-top: 2.12em;
74
+ border-top: 1px solid #BFBFBF;
75
+ background-image: url(../../../assets/images/clear-footer.png);
76
+ background-size: cover;
77
+ }
78
+
79
+ .ig_messenger.ig_clear .ig_close {
80
+ top: .3em;
81
+ right: 0;
82
+ }
83
+
84
+ .ig_messenger.ig_clear .ig_close:before {
85
+ display: block;
86
+ background-image: url(../../../assets/images/clear-header.png);
87
+ background-position: 0 -181px;
88
+ top: 6px;
89
+ height: 13px;
90
+ width: 13px;
91
+ padding: 0;
92
+ right: 1.7em;
93
+ }
94
+
95
+ .ig_messenger.ig_clear .ig_powered_by {
96
+ bottom: 1.8em;
97
+ padding-right: 3em;
98
+ font-size: .8em;
99
+ }
100
+ @media only screen and (max-width: 992px){
101
+ .ig_messenger.ig_clear.ig_container {
102
+ font-size: 14px;
103
+ }
104
+ }
message-types/messenger/themes/default.css ADDED
@@ -0,0 +1,196 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .ig_messenger.ig_container {
2
+ display: none;
3
+ position: fixed;
4
+ cursor: pointer;
5
+ background-color: transparent !important;
6
+ z-index: 100000;
7
+ margin: 0;
8
+ padding: 0;
9
+ font-family: "Lucida Grande", Arial, sans-serif;
10
+ font-size: 16px;
11
+ overflow: hidden;
12
+ text-align: left;
13
+ bottom: 0.2em;
14
+ }
15
+
16
+ .ig_messenger.ig_container,
17
+ .ig_messenger.ig_container div{
18
+ box-sizing: border-box;
19
+ }
20
+ .ig_messenger.ig_container.ig_left {
21
+ left: 0.2em
22
+ }
23
+ .ig_messenger.ig_container.ig_right {
24
+ right: 0.2em;
25
+ }
26
+
27
+ .ig_messenger .ig_data,
28
+ .ig_messenger .ig_content {
29
+ background: transparent !important;
30
+ position: relative;
31
+ }
32
+ .ig_messenger .ig_message:after,
33
+ .ig_messenger .ig_message:before,
34
+ .ig_messenger .ig_close:before,
35
+ .ig_messenger .ig_close:after,
36
+ .ig_messenger .ig_content:before,
37
+ .ig_messenger .ig_data:after,
38
+ .ig_messenger .ig_footer:after,
39
+ .ig_messenger .ig_headline:after,
40
+ .ig_messenger .ig_headline:before {
41
+ content: '';
42
+ position: absolute;
43
+ display: none;
44
+ padding: 0;
45
+ width: 100%;
46
+ z-index: 10;
47
+ background-position: 0 0;
48
+ background-repeat:no-repeat;
49
+ box-sizing: border-box;
50
+ }
51
+
52
+ .ig_messenger .ig_headline {
53
+ display: block !important;
54
+ font-weight: 700;
55
+ text-decoration: none;
56
+ overflow: hidden;
57
+ white-space: nowrap;
58
+ -ms-text-overflow: ellipsis;
59
+ text-overflow: ellipsis;
60
+ }
61
+
62
+ .ig_messenger .ig_headline:after {
63
+ left: 0;
64
+ }
65
+
66
+ .ig_messenger .ig_body {
67
+ overflow-x: hidden;
68
+ display: block;
69
+ border-bottom: none;
70
+ -ms-text-overflow: ellipsis;
71
+ text-overflow: ellipsis;
72
+ z-index: 9;
73
+ }
74
+
75
+ .ig_messenger .ig_icon {
76
+ /*height: 28px;*/
77
+ /*width: 28px;*/
78
+ height: 2.5em;
79
+ width: 2.5em;
80
+ position: absolute;
81
+ /*vertical-align: top;*/
82
+ /*display: inline-block;*/
83
+ }
84
+ .ig_messenger.ig_no_icon .ig_icon {
85
+ display: none;
86
+ }
87
+
88
+ .ig_messenger .ig_message {
89
+ text-align: left;
90
+ word-wrap: break-word;
91
+ /*display: inline-block;*/
92
+ }
93
+
94
+ .ig_messenger .ig_message p {
95
+ margin-bottom: 0.25em;
96
+ }
97
+
98
+ .ig_messenger .ig_footer {
99
+ display: none;
100
+ }
101
+
102
+ .ig_messenger .ig_powered_by {
103
+ font-size: .62em;
104
+ z-index: 10;
105
+ position: relative;
106
+ text-align: right;
107
+ /*line-height: 1.2;*/
108
+ }
109
+
110
+ .ig_messenger .ig_button,
111
+ .ig_messenger input[type="submit"],
112
+ .ig_messenger input[type="button"] {
113
+ border-bottom : none;
114
+ cursor: pointer;
115
+ }
116
+ .ig_messenger .ig_button:active,
117
+ .ig_messenger input[type="submit"]:active,
118
+ .ig_messenger input[type="button"]:active {
119
+ border-top : none;
120
+ }
121
+
122
+ .ig_messenger .ig_close {
123
+ position: absolute;
124
+ z-index: 10;
125
+ height: 25px;
126
+ width: 25px;
127
+ }
128
+
129
+ .ig_messenger .ig_close:after{
130
+ top: 6px;
131
+ left: 6px;
132
+ background-image: url(../../../assets/images/clear-header.png);
133
+ background-repeat: no-repeat;
134
+ background-position: 0 -195px;
135
+ display: block;
136
+ height: 13px;
137
+ width: 13px;
138
+ }
139
+
140
+ /****************** Embed Form: Start *******************/
141
+
142
+ .ig_messenger.ig_form_left .ig_form_container.layout_left,
143
+ .ig_messenger.ig_form_right .ig_form_container.layout_right,
144
+ .ig_messenger.ig_form_bottom .ig_form_container.layout_bottom{
145
+ display: none;
146
+ }
147
+
148
+ .ig_messenger.ig_form_inline .ig_form_container.layout_inline{
149
+ float: left;
150
+ padding: .5em 0;
151
+ }
152
+
153
+ .ig_messenger.ig_form_inline .ig_message p {
154
+ margin-bottom: 0;
155
+ }
156
+
157
+ .ig_messenger.ig_form_inline .ig_form_container.layout_inline .ig_full .ig_form_els,
158
+ .ig_messenger.ig_form_inline .ig_form_container.layout_inline .ig_half .ig_form_els,
159
+ .ig_messenger.ig_form_inline .ig_form_container.layout_inline .ig_third .ig_form_els,
160
+ .ig_messenger.ig_form_inline .ig_form_container.layout_inline .ig_quater .ig_form_els{
161
+ width: 99%;
162
+ margin: .3em auto;
163
+ }
164
+
165
+ .ig_messenger.ig_form_inline .ig_form_container.layout_inline .ig_button_label{
166
+ display: none;
167
+ }
168
+
169
+ /****** Form Style: Style 2 ******/
170
+
171
+ .ig_messenger.ig_form_style_2 .ig_form_container.layout_inline .ig_form_els{
172
+ margin-right: 0;
173
+ margin-left: 0;
174
+ }
175
+
176
+ .ig_messenger.ig_form_style_2 .ig_form_container.layout_inline .ig_form_els.ig_form_els_first input,
177
+ .ig_messenger.ig_form_style_2 .ig_form_container.layout_inline .ig_form_els.ig_form_els_last input,
178
+ .ig_messenger.ig_form_style_2 .ig_form_container.layout_inline .ig_form_els input{
179
+ padding-left: 1em;
180
+ border-width: 2px;
181
+ border-radius: 2em;
182
+ }
183
+
184
+ .ig_messenger.ig_form_style_2 .ig_form_container.layout_inline .ig_form_els input.ig_button{
185
+ padding: inherit;
186
+ }
187
+
188
+ .ig_messenger.ig_form_style_2 .ig_form_container.layout_inline .ig_form_els.ig_form_els_first label,
189
+ .ig_messenger.ig_form_style_2 .ig_form_container.layout_inline .ig_form_els.ig_form_els_last label,
190
+ .ig_messenger.ig_form_style_2 .ig_form_container.layout_inline .ig_form_els label{
191
+ padding-left: 1em;
192
+ }
193
+
194
+ /****************** Embed Form: End *******************/
195
+
196
+
message-types/messenger/themes/social.css ADDED
@@ -0,0 +1,144 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .ig_messenger.ig_social.ig_container {
2
+ /*width: 250px;*/
3
+ /*height: 260px;*/
4
+ font-size: 11px;
5
+ width: 22.8em;
6
+ height: 23.6em;
7
+ }
8
+
9
+ .ig_messenger.ig_social .ig_headline {
10
+ background-color: #627BAE;
11
+ color: #FFF;
12
+ width: 100%;
13
+ height: 2.45em;
14
+ line-height: 2.65em;
15
+ font-size: 1em;
16
+ padding: 0 3.4em 0 0.7em;
17
+ border: 1px solid rgba(0, 39, 121, 0.3);
18
+ border-bottom: none;
19
+ }
20
+
21
+ .ig_messenger.ig_social .ig_body {
22
+ display: block;
23
+ background-color: #edeff4;
24
+ color: #3e454c;
25
+ font-family: "lucida grande", tahoma, verdana, arial, sans-serif;
26
+ position: relative;
27
+ /*height: 13.35em;*/
28
+ height: 18em;
29
+ border: 1px solid rgba(0, 0, 0, 0.3);
30
+ border-top: none;
31
+ border-bottom: none;
32
+ right: 0;
33
+ padding: 5px .5em 0;
34
+ padding-left: 3.8em;
35
+ }
36
+
37
+ .ig_messenger.ig_social.ig_no_icon .ig_body {
38
+ padding-left: .5em;
39
+ line-height: 1.37em;
40
+ }
41
+
42
+ .ig_messenger.ig_social .ig_message:before {
43
+ display: block;
44
+ width: 0;
45
+ top: 11px;
46
+ /*left: 2.25em;*/
47
+ margin: 0 0 0 -18px;
48
+ border: 8px solid #DFDFDF;
49
+ border-color: transparent #DFDFDF transparent transparent;
50
+ z-index: -1;
51
+ }
52
+ .ig_messenger.ig_social .ig_message:after {
53
+ display: block;
54
+ width: 0;
55
+ top: 13px;
56
+ /*left: 2.6em;*/
57
+ margin: 0 0 0 -15px;
58
+ border: 6px solid #FAFAFA;
59
+ border-color: transparent #FAFAFA transparent transparent;
60
+ }
61
+
62
+ .ig_messenger.ig_social .ig_message {
63
+ background-color: #F7F7F7;
64
+ color: #3E454C;
65
+ background-image: -webkit-linear-gradient(bottom, #F2F2F2, #FFF);
66
+ width: 90%;
67
+ font-size: 1.09em;
68
+ /*line-height: 1.25em;*/
69
+ /*padding-left: 3.5em;*/
70
+ padding: .3em;
71
+ border: 1px solid rgba(0, 0, 0, .18);
72
+ border-bottom-color: rgba(0, 0, 0, .29);
73
+ border-radius: .4em;
74
+ box-shadow: 0 1px 0 #DCE0E6;
75
+ }
76
+ .ig_messenger.ig_social.ig_no_icon .ig_message{
77
+ margin: 0 auto 0.5em auto;
78
+ }
79
+ .ig_messenger.ig_social.ig_no_icon .ig_message:after,
80
+ .ig_messenger.ig_social.ig_no_icon .ig_message:before {
81
+ display: none;
82
+ }
83
+ .ig_messenger.ig_social .ig_icon {
84
+ margin-left: -3.3em;
85
+ height: 2.54em;
86
+ width: 2.54em;
87
+ }
88
+ .ig_messenger.ig_social .ig_footer {
89
+ display: block;
90
+ height: 3em;
91
+ /*top: 20.5em;*/
92
+ background-color: #FFF;
93
+ border: 1px solid rgba(0, 0, 0, 0.3);
94
+ }
95
+
96
+ .ig_messenger.ig_social .ig_footer:after {
97
+ display: block;
98
+ background-image: url(../../../assets/images/social-img.png);
99
+ background-position: -269px -137px;
100
+ width: 22px;
101
+ height: 18px;
102
+ margin-top: .8em;
103
+ right: .3em
104
+ }
105
+
106
+ .ig_messenger.ig_social .ig_close {
107
+ background-image: url(../../../assets/images/social-img.png);
108
+ background-position: -137px -332px;
109
+ top: .25em;
110
+ right: .15em;
111
+ height: 25px;
112
+ width: 21px;
113
+ }
114
+
115
+ .ig_messenger.ig_social .ig_close:before {
116
+ display: block;
117
+ background-image: url(../../../assets/images/social-img.png);
118
+ background-position: -92px -332px;
119
+ height: 100%;
120
+ width: 100%;
121
+ padding: 0;
122
+ right: 1.5em;
123
+ }
124
+ .ig_messenger.ig_social .ig_close:after{
125
+ display: none;
126
+ }
127
+
128
+ .ig_messenger.ig_social .ig_powered_by {
129
+ bottom: 1.8em;
130
+ padding-right: 3em;
131
+ font-size: .9em;
132
+ }
133
+
134
+ @media only screen and (max-width: 992px){
135
+ .ig_messenger.ig_social.ig_container {
136
+ font-size: 13px;
137
+ }
138
+ }
139
+ @media only screen and (max-width: 320px) {
140
+ .ig_messenger.ig_social.ig_container {
141
+ font-size: 12px;
142
+ width: 20em;
143
+ }
144
+ }
message-types/messenger/themes/talk.css ADDED
@@ -0,0 +1,114 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .ig_messenger.ig_talk.ig_container {
2
+ /*width: 210px;*/
3
+ /*height: 260px;*/
4
+ font-size: 12px;
5
+ width: 17.5em;
6
+ height: 21em;
7
+ border: .1em solid #BFBFBF;
8
+ border-radius: .5em .5em 0 0;
9
+
10
+ }
11
+ .ig_messenger.ig_talk .ig_close,
12
+ .ig_messenger.ig_talk .ig_close:before,
13
+ .ig_messenger.ig_talk .ig_data:after,
14
+ .ig_messenger.ig_talk .ig_headline:after,
15
+ .ig_messenger.ig_talk .ig_headline:before {
16
+ background-size: cover;
17
+ }
18
+
19
+ .ig_messenger.ig_talk .ig_headline:before {
20
+ display: block;
21
+ background-image: url(../../../assets/images/clear-header.png);
22
+ top: .5em;
23
+ left: .6em;
24
+ height: 1.25em;
25
+ width: 1.25em;
26
+ }
27
+
28
+ .ig_messenger.ig_talk .ig_headline {
29
+ background-color: #F5FAFF;
30
+ color: #00008B;
31
+ width: 100%;
32
+ height: 2.2em;
33
+ line-height: 2.4em;
34
+ font-size: 1em;
35
+ padding: 0 2.9em 0 2em;
36
+ border-bottom: .1em solid #BFBFBF;
37
+ box-shadow: inset 0 0 .25em 0 #FFF;
38
+ border-radius: .5em .5em 0 0;
39
+ }
40
+
41
+ .ig_messenger.ig_talk .ig_headline:after {
42
+ display: block;
43
+ height: 2.5em;
44
+ top: 2.2em;
45
+ background-image: url(../../../assets/images/talk-header-2.png);
46
+ }
47
+
48
+ .ig_messenger.ig_talk .ig_body {
49
+ background: #FFF;
50
+ color: #222;
51
+ font-size: 1em;
52
+ font-family: Arial, Helvetica, sans-serif;
53
+ position: relative;
54
+ height: 13.48em;
55
+ border-top: .1em solid #BFBFBF;
56
+ border-bottom: .1em solid #BFBFBF;
57
+ top: 2.5em;
58
+ right: 0;
59
+ line-height: 1.25em;
60
+ padding: .5em .8em 0 .5em;
61
+ box-shadow: inset 0 0 .25em 0 #FFF;
62
+ }
63
+
64
+ .ig_messenger.ig_talk .ig_message {
65
+ color: #3E454C;
66
+ width: 100%;
67
+ padding-left: 3em;
68
+ }
69
+
70
+ .ig_messenger.ig_talk.ig_no_icon .ig_message {
71
+ padding-left: .5em;
72
+ }
73
+
74
+ .ig_messenger.ig_talk .ig_footer {
75
+ display: block;
76
+ height: 2.66em;
77
+ margin-top: 2.5em;
78
+ background-image: url(../../../assets/images/talk-footer-1.png);
79
+ background-size: cover;
80
+ }
81
+
82
+ .ig_messenger.ig_talk .ig_close {
83
+ background-image: url(../../../assets/images/talk-close.png);
84
+ background-position: 0 0;
85
+ top: .5em;
86
+ right: .33em;
87
+ height: 1.25em;
88
+ width: 1.25em;
89
+ z-index: 10;
90
+ }
91
+
92
+ .ig_messenger.ig_talk .ig_close:before {
93
+ display: block;
94
+ background-image: url(../../../assets/images/talk-header-1.png);
95
+ height: 100%;
96
+ width: 100%;
97
+ padding: 0;
98
+ right: 1.5em;
99
+ }
100
+ .ig_messenger.ig_talk .ig_close:after {
101
+ display: none;
102
+ }
103
+
104
+ .ig_messenger.ig_talk .ig_powered_by {
105
+ bottom: 2em;
106
+ padding-right: 2em;
107
+ font-size: .8em;
108
+ }
109
+
110
+ @media only screen and (max-width: 992px){
111
+ .ig_messenger.ig_talk.ig_container {
112
+ font-size: 14px;
113
+ }
114
+ }
message-types/popup/main.js CHANGED
@@ -1 +1,92 @@
1
- /* File for backward compatibility. */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ * Icegram Message Type - Popup
3
+ **/
4
+ function Icegram_Message_Type_Popup( data ) {
5
+ Icegram_Message_Type.apply(this, arguments);
6
+ }
7
+ Icegram_Message_Type_Popup.prototype = Object.create(Icegram_Message_Type.prototype);
8
+ Icegram_Message_Type_Popup.prototype.constructor = Icegram_Message_Type_Popup;
9
+
10
+ Icegram_Message_Type_Popup.prototype.get_template_default = function () {
11
+ return '<div id="icegram_message_{{=id}}" class="icegram ig_popup ig_{{=theme}} ig_container mfp-hide">'+
12
+ '<div class="ig_close" id="popup_box_close_{{=id}}"></div>'+
13
+ '<div class="ig_clear_fix" data={{=id}}>'+
14
+ '<div class="ig_bg_overlay"></div>'+
15
+ '<div class="ig_form_container layout_left"></div>'+
16
+ '<div class="ig_data ig_clear_fix">'+
17
+ '<div class="ig_headline">{{=headline}}</div>'+
18
+ '<div class="ig_content">'+
19
+ '<div class="ig_message ig_clear_fix">{{=message}}</div>'+
20
+ '</div>'+
21
+ '<div class="ig_button" >{{=label}}</div>'+
22
+ '</div>'+
23
+ '<div class="ig_form_container layout_right layout_bottom"></div>'+
24
+ '</div>'+
25
+ '</div>';
26
+ };
27
+
28
+ Icegram_Message_Type_Popup.prototype.post_render = function ( ) {
29
+ //Calling parent post_render function
30
+ Icegram_Message_Type.prototype.post_render.apply(this, arguments);
31
+
32
+ if(this.data.use_theme_defaults == undefined || this.data.use_theme_defaults != 'yes'){
33
+ if (this.data.bg_color != undefined && this.data.bg_color != '') {
34
+ // TODO :: test all popup themes with bg overlay
35
+ // this.el.find('.ig_bg_overlay').css('background-color', this.data.bg_color).css('border-color', this.data.bg_color);
36
+ this.el.find('.ig_bg_overlay').css('border-color', this.data.bg_color);
37
+ }
38
+ }
39
+ };
40
+
41
+ Icegram_Message_Type_Popup.prototype.show = function ( options, silent ) {
42
+ if ( this.is_visible() ) return;
43
+ var self = this;
44
+ var popup_id = '#icegram_message_'+this.data.id;
45
+ this.animate('in');
46
+ window.ig_popup = jQuery.magnificPopup;
47
+ window.ig_popup.open({
48
+ items: {
49
+ src: popup_id,
50
+ type: 'inline'
51
+ },
52
+ // mainClass: 'ig_this_message_root_'+this.data.id,
53
+ showCloseBtn :false,
54
+ callbacks: {
55
+ close: function() {
56
+ // Will fire when popup is closed
57
+ silent !== true && self.track( 'closed' );
58
+ self.el.removeClass('ig_show');
59
+ },
60
+ open: function(){
61
+ window.icegram.adjustFormContainerHeight(self);
62
+ }
63
+ }
64
+ });
65
+ self.el.addClass('ig_show').removeClass('ig_hide');
66
+ silent !== true && this.track( 'shown' );
67
+ };
68
+
69
+ Icegram_Message_Type_Popup.prototype.add_powered_by = function ( pb ) {
70
+ setTimeout( function() {
71
+ jQuery('.mfp-wrap').append('<div class="ig_powered_by"><a href="'+pb.link+'" target="_blank">'+pb.text+'</a></div>');
72
+ },1000 + this.data.delay_time * 1000);
73
+ };
74
+
75
+ Icegram_Message_Type_Popup.prototype.hide = function ( options, silent ) {
76
+ if ( !this.is_visible() ) return;
77
+ var popup_id = '#icegram_message_'+this.data.id;
78
+ var self = this;
79
+ this.animate('out');
80
+ setTimeout( function() {
81
+ self.el.addClass('ig_hide').removeClass('ig_show');
82
+ jQuery.magnificPopup.close({ items: {
83
+ src: popup_id,
84
+ type: 'inline'
85
+ }})} , 500);
86
+ };
87
+
88
+ // Magnific Popup v1.0.0 by Dmitry Semenov
89
+ // http://bit.ly/magnific-popup#build=inline+image+retina
90
+ if(typeof(window.ig_popup) === 'undefined'){
91
+ (function(a){typeof define=="function"&&define.amd?define(["jquery"],a):typeof exports=="object"?a(require("jquery")):a(window.jQuery||window.Zepto)})(function(a){var b="Close",c="BeforeClose",d="AfterClose",e="BeforeAppend",f="MarkupParse",g="Open",h="Change",i="mfp",j="."+i,k="mfp-ready",l="mfp-removing",m="mfp-prevent-close",n,o=function(){},p=!!window.jQuery,q,r=a(window),s,t,u,v,w=function(a,b){n.ev.on(i+a+j,b)},x=function(b,c,d,e){var f=document.createElement("div");return f.className="mfp-"+b,d&&(f.innerHTML=d),e?c&&c.appendChild(f):(f=a(f),c&&f.appendTo(c)),f},y=function(b,c){n.ev.triggerHandler(i+b,c),n.st.callbacks&&(b=b.charAt(0).toLowerCase()+b.slice(1),n.st.callbacks[b]&&n.st.callbacks[b].apply(n,a.isArray(c)?c:[c]))},z=function(b){if(b!==v||!n.currTemplate.closeBtn)n.currTemplate.closeBtn=a(n.st.closeMarkup.replace("%title%",n.st.tClose)),v=b;return n.currTemplate.closeBtn},A=function(){a.magnificPopup.instance||(n=new o,n.init(),a.magnificPopup.instance=n)},B=function(){var a=document.createElement("p").style,b=["ms","O","Moz","Webkit"];if(a.transition!==undefined)return!0;while(b.length)if(b.pop()+"Transition"in a)return!0;return!1};o.prototype={constructor:o,init:function(){var b=navigator.appVersion;n.isIE7=b.indexOf("MSIE 7.")!==-1,n.isIE8=b.indexOf("MSIE 8.")!==-1,n.isLowIE=n.isIE7||n.isIE8,n.isAndroid=/android/gi.test(b),n.isIOS=/iphone|ipad|ipod/gi.test(b),n.supportsTransition=B(),n.probablyMobile=n.isAndroid||n.isIOS||/(Opera Mini)|Kindle|webOS|BlackBerry|(Opera Mobi)|(Windows Phone)|IEMobile/i.test(navigator.userAgent),s=a(document),n.popupsCache={}},open:function(b){var c;if(b.isObj===!1){n.items=b.items.toArray(),n.index=0;var d=b.items,e;for(c=0;c<d.length;c++){e=d[c],e.parsed&&(e=e.el[0]);if(e===b.el[0]){n.index=c;break}}}else n.items=a.isArray(b.items)?b.items:[b.items],n.index=b.index||0;if(n.isOpen){n.updateItemHTML();return}n.types=[],u="",b.mainEl&&b.mainEl.length?n.ev=b.mainEl.eq(0):n.ev=s,b.key?(n.popupsCache[b.key]||(n.popupsCache[b.key]={}),n.currTemplate=n.popupsCache[b.key]):n.currTemplate={},n.st=a.extend(!0,{},a.magnificPopup.defaults,b),n.fixedContentPos=n.st.fixedContentPos==="auto"?!n.probablyMobile:n.st.fixedContentPos,n.st.modal&&(n.st.closeOnContentClick=!1,n.st.closeOnBgClick=!1,n.st.showCloseBtn=!1,n.st.enableEscapeKey=!1),n.bgOverlay||(n.bgOverlay=x("bg").on("click"+j,function(){n.close()}),n.wrap=x("wrap").attr("tabindex",-1).on("click"+j,function(a){n._checkIfClose(a.target)&&n.close()}),n.container=x("container",n.wrap)),n.contentContainer=x("content"),n.st.preloader&&(n.preloader=x("preloader",n.container,n.st.tLoading));var h=a.magnificPopup.modules;for(c=0;c<h.length;c++){var i=h[c];i=i.charAt(0).toUpperCase()+i.slice(1),n["init"+i].call(n)}y("BeforeOpen"),n.st.showCloseBtn&&(n.st.closeBtnInside?(w(f,function(a,b,c,d){c.close_replaceWith=z(d.type)}),u+=" mfp-close-btn-in"):n.wrap.append(z())),n.st.alignTop&&(u+=" mfp-align-top"),n.fixedContentPos?n.wrap.css({overflow:n.st.overflowY,overflowX:"hidden",overflowY:n.st.overflowY}):n.wrap.css({top:r.scrollTop(),position:"absolute"}),(n.st.fixedBgPos===!1||n.st.fixedBgPos==="auto"&&!n.fixedContentPos)&&n.bgOverlay.css({height:s.height(),position:"absolute"}),n.st.enableEscapeKey&&s.on("keyup"+j,function(a){a.keyCode===27&&n.close()}),r.on("resize"+j,function(){n.updateSize()}),n.st.closeOnContentClick||(u+=" mfp-auto-cursor"),u&&n.wrap.addClass(u);var l=n.wH=r.height(),m={};if(n.fixedContentPos&&n._hasScrollBar(l)){var o=n._getScrollbarSize();o&&(m.marginRight=o)}n.fixedContentPos&&(n.isIE7?a("body, html").css("overflow","hidden"):m.overflow="hidden");var p=n.st.mainClass;return n.isIE7&&(p+=" mfp-ie7"),p&&n._addClassToMFP(p),n.updateItemHTML(),y("BuildControls"),a("html").css(m),n.bgOverlay.add(n.wrap).prependTo(n.st.prependTo||a(document.body)),n._lastFocusedEl=document.activeElement,setTimeout(function(){n.content?(n._addClassToMFP(k),n._setFocus()):n.bgOverlay.addClass(k),s.on("focusin"+j,n._onFocusIn)},16),n.isOpen=!0,n.updateSize(l),y(g),b},close:function(){if(!n.isOpen)return;y(c),n.isOpen=!1,n.st.removalDelay&&!n.isLowIE&&n.supportsTransition?(n._addClassToMFP(l),setTimeout(function(){n._close()},n.st.removalDelay)):n._close()},_close:function(){y(b);var c=l+" "+k+" ";n.bgOverlay.detach(),n.wrap.detach(),n.container.empty(),n.st.mainClass&&(c+=n.st.mainClass+" "),n._removeClassFromMFP(c);if(n.fixedContentPos){var e={marginRight:""};n.isIE7?a("body, html").css("overflow",""):e.overflow="",a("html").css(e)}s.off("keyup"+j+" focusin"+j),n.ev.off(j),n.wrap.attr("class","mfp-wrap").removeAttr("style"),n.bgOverlay.attr("class","mfp-bg"),n.container.attr("class","mfp-container"),n.st.showCloseBtn&&(!n.st.closeBtnInside||n.currTemplate[n.currItem.type]===!0)&&n.currTemplate.closeBtn&&n.currTemplate.closeBtn.detach(),n._lastFocusedEl&&a(n._lastFocusedEl).focus(),n.currItem=null,n.content=null,n.currTemplate=null,n.prevHeight=0,y(d)},updateSize:function(a){if(n.isIOS){var b=document.documentElement.clientWidth/window.innerWidth,c=window.innerHeight*b;n.wrap.css("height",c),n.wH=c}else n.wH=a||r.height();n.fixedContentPos||n.wrap.css("height",n.wH),y("Resize")},updateItemHTML:function(){var b=n.items[n.index];n.contentContainer.detach(),n.content&&n.content.detach(),b.parsed||(b=n.parseEl(n.index));var c=b.type;y("BeforeChange",[n.currItem?n.currItem.type:"",c]),n.currItem=b;if(!n.currTemplate[c]){var d=n.st[c]?n.st[c].markup:!1;y("FirstMarkupParse",d),d?n.currTemplate[c]=a(d):n.currTemplate[c]=!0}t&&t!==b.type&&n.container.removeClass("mfp-"+t+"-holder");var e=n["get"+c.charAt(0).toUpperCase()+c.slice(1)](b,n.currTemplate[c]);n.appendContent(e,c),b.preloaded=!0,y(h,b),t=b.type,n.container.prepend(n.contentContainer),y("AfterChange")},appendContent:function(a,b){n.content=a,a?n.st.showCloseBtn&&n.st.closeBtnInside&&n.currTemplate[b]===!0?n.content.find(".mfp-close").length||n.content.append(z()):n.content=a:n.content="",y(e),n.container.addClass("mfp-"+b+"-holder"),n.contentContainer.append(n.content)},parseEl:function(b){var c=n.items[b],d;c.tagName?c={el:a(c)}:(d=c.type,c={data:c,src:c.src});if(c.el){var e=n.types;for(var f=0;f<e.length;f++)if(c.el.hasClass("mfp-"+e[f])){d=e[f];break}c.src=c.el.attr("data-mfp-src"),c.src||(c.src=c.el.attr("href"))}return c.type=d||n.st.type||"inline",c.index=b,c.parsed=!0,n.items[b]=c,y("ElementParse",c),n.items[b]},addGroup:function(a,b){var c=function(c){c.mfpEl=this,n._openClick(c,a,b)};b||(b={});var d="click.magnificPopup";b.mainEl=a,b.items?(b.isObj=!0,a.off(d).on(d,c)):(b.isObj=!1,b.delegate?a.off(d).on(d,b.delegate,c):(b.items=a,a.off(d).on(d,c)))},_openClick:function(b,c,d){var e=d.midClick!==undefined?d.midClick:a.magnificPopup.defaults.midClick;if(!e&&(b.which===2||b.ctrlKey||b.metaKey))return;var f=d.disableOn!==undefined?d.disableOn:a.magnificPopup.defaults.disableOn;if(f)if(a.isFunction(f)){if(!f.call(n))return!0}else if(r.width()<f)return!0;b.type&&(b.preventDefault(),n.isOpen&&b.stopPropagation()),d.el=a(b.mfpEl),d.delegate&&(d.items=c.find(d.delegate)),n.open(d)},updateStatus:function(a,b){if(n.preloader){q!==a&&n.container.removeClass("mfp-s-"+q),!b&&a==="loading"&&(b=n.st.tLoading);var c={status:a,text:b};y("UpdateStatus",c),a=c.status,b=c.text,n.preloader.html(b),n.preloader.find("a").on("click",function(a){a.stopImmediatePropagation()}),n.container.addClass("mfp-s-"+a),q=a}},_checkIfClose:function(b){if(a(b).hasClass(m))return;var c=n.st.closeOnContentClick,d=n.st.closeOnBgClick;if(c&&d)return!0;if(!n.content||a(b).hasClass("mfp-close")||n.preloader&&b===n.preloader[0])return!0;if(b!==n.content[0]&&!a.contains(n.content[0],b)){if(d&&a.contains(document,b))return!0}else if(c)return!0;return!1},_addClassToMFP:function(a){n.bgOverlay.addClass(a),n.wrap.addClass(a)},_removeClassFromMFP:function(a){this.bgOverlay.removeClass(a),n.wrap.removeClass(a)},_hasScrollBar:function(a){return(n.isIE7?s.height():document.body.scrollHeight)>(a||r.height())},_setFocus:function(){(n.st.focus?n.content.find(n.st.focus).eq(0):n.wrap).focus()},_onFocusIn:function(b){if(b.target!==n.wrap[0]&&!a.contains(n.wrap[0],b.target))return n._setFocus(),!1},_parseMarkup:function(b,c,d){var e;d.data&&(c=a.extend(d.data,c)),y(f,[b,c,d]),a.each(c,function(a,c){if(c===undefined||c===!1)return!0;e=a.split("_");if(e.length>1){var d=b.find(j+"-"+e[0]);if(d.length>0){var f=e[1];f==="replaceWith"?d[0]!==c[0]&&d.replaceWith(c):f==="img"?d.is("img")?d.attr("src",c):d.replaceWith('<img src="'+c+'" class="'+d.attr("class")+'" />'):d.attr(e[1],c)}}else b.find(j+"-"+a).html(c)})},_getScrollbarSize:function(){if(n.scrollbarSize===undefined){var a=document.createElement("div");a.style.cssText="width: 99px; height: 99px; overflow: scroll; position: absolute; top: -9999px;",document.body.appendChild(a),n.scrollbarSize=a.offsetWidth-a.clientWidth,document.body.removeChild(a)}return n.scrollbarSize}},a.magnificPopup={instance:null,proto:o.prototype,modules:[],open:function(b,c){return A(),b?b=a.extend(!0,{},b):b={},b.isObj=!0,b.index=c||0,this.instance.open(b)},close:function(){return a.magnificPopup.instance&&a.magnificPopup.instance.close()},registerModule:function(b,c){c.options&&(a.magnificPopup.defaults[b]=c.options),a.extend(this.proto,c.proto),this.modules.push(b)},defaults:{disableOn:0,key:null,midClick:!1,mainClass:"",preloader:!0,focus:"",closeOnContentClick:!1,closeOnBgClick:!0,closeBtnInside:!0,showCloseBtn:!0,enableEscapeKey:!0,modal:!1,alignTop:!1,removalDelay:0,prependTo:null,fixedContentPos:"auto",fixedBgPos:"auto",overflowY:"auto",closeMarkup:'<button title="%title%" type="button" class="mfp-close">&times;</button>',tClose:"Close (Esc)",tLoading:"Loading..."}},a.fn.magnificPopup=function(b){A();var c=a(this);if(typeof b=="string")if(b==="open"){var d,e=p?c.data("magnificPopup"):c[0].magnificPopup,f=parseInt(arguments[1],10)||0;e.items?d=e.items[f]:(d=c,e.delegate&&(d=d.find(e.delegate)),d=d.eq(f)),n._openClick({mfpEl:d},c,e)}else n.isOpen&&n[b].apply(n,Array.prototype.slice.call(arguments,1));else b=a.extend(!0,{},b),p?c.data("magnificPopup",b):c[0].magnificPopup=b,n.addGroup(c,b);return c};var C="inline",D,E,F,G=function(){F&&(E.after(F.addClass(D)).detach(),F=null)};a.magnificPopup.registerModule(C,{options:{hiddenClass:"hide",markup:"",tNotFound:"Content not found"},proto:{initInline:function(){n.types.push(C),w(b+"."+C,function(){G()})},getInline:function(b,c){G();if(b.src){var d=n.st.inline,e=a(b.src);if(e.length){var f=e[0].parentNode;f&&f.tagName&&(E||(D=d.hiddenClass,E=x(D),D="mfp-"+D),F=e.after(E).detach().removeClass(D)),n.updateStatus("ready")}else n.updateStatus("error",d.tNotFound),e=a("<div>");return b.inlineElement=e,e}return n.updateStatus("ready"),n._parseMarkup(c,{},b),c}}});var H,I=function(b){if(b.data&&b.data.title!==undefined)return b.data.title;var c=n.st.image.titleSrc;if(c){if(a.isFunction(c))return c.call(n,b);if(b.el)return b.el.attr(c)||""}return""};a.magnificPopup.registerModule("image",{options:{markup:'<div class="mfp-figure"><div class="mfp-close"></div><figure><div class="mfp-img"></div><figcaption><div class="mfp-bottom-bar"><div class="mfp-title"></div><div class="mfp-counter"></div></div></figcaption></figure></div>',cursor:"mfp-zoom-out-cur",titleSrc:"title",verticalFit:!0,tError:'<a href="%url%">The image</a> could not be loaded.'},proto:{initImage:function(){var c=n.st.image,d=".image";n.types.push("image"),w(g+d,function(){n.currItem.type==="image"&&c.cursor&&a(document.body).addClass(c.cursor)}),w(b+d,function(){c.cursor&&a(document.body).removeClass(c.cursor),r.off("resize"+j)}),w("Resize"+d,n.resizeImage),n.isLowIE&&w("AfterChange",n.resizeImage)},resizeImage:function(){var a=n.currItem;if(!a||!a.img)return;if(n.st.image.verticalFit){var b=0;n.isLowIE&&(b=parseInt(a.img.css("padding-top"),10)+parseInt(a.img.css("padding-bottom"),10)),a.img.css("max-height",n.wH-b)}},_onImageHasSize:function(a){a.img&&(a.hasSize=!0,H&&clearInterval(H),a.isCheckingImgSize=!1,y("ImageHasSize",a),a.imgHidden&&(n.content&&n.content.removeClass("mfp-loading"),a.imgHidden=!1))},findImageSize:function(a){var b=0,c=a.img[0],d=function(e){H&&clearInterval(H),H=setInterval(function(){if(c.naturalWidth>0){n._onImageHasSize(a);return}b>200&&clearInterval(H),b++,b===3?d(10):b===40?d(50):b===100&&d(500)},e)};d(1)},getImage:function(b,c){var d=0,e=function(){b&&(b.img[0].complete?(b.img.off(".mfploader"),b===n.currItem&&(n._onImageHasSize(b),n.updateStatus("ready")),b.hasSize=!0,b.loaded=!0,y("ImageLoadComplete")):(d++,d<200?setTimeout(e,100):f()))},f=function(){b&&(b.img.off(".mfploader"),b===n.currItem&&(n._onImageHasSize(b),n.updateStatus("error",g.tError.replace("%url%",b.src))),b.hasSize=!0,b.loaded=!0,b.loadError=!0)},g=n.st.image,h=c.find(".mfp-img");if(h.length){var i=document.createElement("img");i.className="mfp-img",b.el&&b.el.find("img").length&&(i.alt=b.el.find("img").attr("alt")),b.img=a(i).on("load.mfploader",e).on("error.mfploader",f),i.src=b.src,h.is("img")&&(b.img=b.img.clone()),i=b.img[0],i.naturalWidth>0?b.hasSize=!0:i.width||(b.hasSize=!1)}return n._parseMarkup(c,{title:I(b),img_replaceWith:b.img},b),n.resizeImage(),b.hasSize?(H&&clearInterval(H),b.loadError?(c.addClass("mfp-loading"),n.updateStatus("error",g.tError.replace("%url%",b.src))):(c.removeClass("mfp-loading"),n.updateStatus("ready")),c):(n.updateStatus("loading"),b.loading=!0,b.hasSize||(b.imgHidden=!0,c.addClass("mfp-loading"),n.findImageSize(b)),c)}}});var J,K=function(){return J===undefined&&(J=document.createElement("p").style.MozTransform!==undefined),J};a.magnificPopup.registerModule("zoom",{options:{enabled:!1,easing:"ease-in-out",duration:300,opener:function(a){return a.is("img")?a:a.find("img")}},proto:{initZoom:function(){var a=n.st.zoom,d=".zoom",e;if(!a.enabled||!n.supportsTransition)return;var f=a.duration,g=function(b){var c=b.clone().removeAttr("style").removeAttr("class").addClass("mfp-animated-image"),d="all "+a.duration/1e3+"s "+a.easing,e={position:"fixed",zIndex:9999,left:0,top:0,"-webkit-backface-visibility":"hidden"},f="transition";return e["-webkit-"+f]=e["-moz-"+f]=e["-o-"+f]=e[f]=d,c.css(e),c},h=function(){n.content.css("visibility","visible")},i,j;w("BuildControls"+d,function(){if(n._allowZoom()){clearTimeout(i),n.content.css("visibility","hidden"),e=n._getItemToZoom();if(!e){h();return}j=g(e),j.css(n._getOffset()),n.wrap.append(j),i=setTimeout(function(){j.css(n._getOffset(!0)),i=setTimeout(function(){h(),setTimeout(function(){j.remove(),e=j=null,y("ZoomAnimationEnded")},16)},f)},16)}}),w(c+d,function(){if(n._allowZoom()){clearTimeout(i),n.st.removalDelay=f;if(!e){e=n._getItemToZoom();if(!e)return;j=g(e)}j.css(n._getOffset(!0)),n.wrap.append(j),n.content.css("visibility","hidden"),setTimeout(function(){j.css(n._getOffset())},16)}}),w(b+d,function(){n._allowZoom()&&(h(),j&&j.remove(),e=null)})},_allowZoom:function(){return n.currItem.type==="image"},_getItemToZoom:function(){return n.currItem.hasSize?n.currItem.img:!1},_getOffset:function(b){var c;b?c=n.currItem.img:c=n.st.zoom.opener(n.currItem.el||n.currItem);var d=c.offset(),e=parseInt(c.css("padding-top"),10),f=parseInt(c.css("padding-bottom"),10);d.top-=a(window).scrollTop()-e;var g={width:c.width(),height:(p?c.innerHeight():c[0].offsetHeight)-f-e};return K()?g["-moz-transform"]=g.transform="translate("+d.left+"px,"+d.top+"px)":(g.left=d.left,g.top=d.top),g}}});var L="retina";a.magnificPopup.registerModule(L,{options:{replaceSrc:function(a){return a.src.replace(/\.\w+$/,function(a){return"@2x"+a})},ratio:1},proto:{initRetina:function(){if(window.devicePixelRatio>1){var a=n.st.retina,b=a.ratio;b=isNaN(b)?b():b,b>1&&(w("ImageHasSize."+L,function(a,c){c.img.css({"max-width":c.img[0].naturalWidth/b,width:"100%"})}),w("ElementParse."+L,function(c,d){d.src=a.replaceSrc(d,b)}))}}}}),A()});
92
+ }
message-types/popup/themes/air-mail.css ADDED
@@ -0,0 +1,116 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .ig_popup.ig_air-mail {
2
+ position: relative;
3
+ border-width: 8px;
4
+ border-style: solid;
5
+ /*white/blue/red border*/
6
+ -moz-border-image: -moz-repeating-linear-gradient(45deg, #a83439, #a83439 10px, #fdfdfd 10px, #fdfdfd 20px, #2f4175 20px, #2f4175 30px, #fdfdfd 30px, #fdfdfd 40px) 8 round;
7
+ -webkit-border-image: -webkit-repeating-linear-gradient(45deg, #a83439, #a83439 10px, #fdfdfd 10px, #fdfdfd 20px, #2f4175 20px, #2f4175 30px, #fdfdfd 30px, #fdfdfd 40px) 8 round;
8
+ -o-border-image: -o-repeating-linear-gradient(45deg, #a83439, #a83439 10px, #fdfdfd 10px, #fdfdfd 20px, #2f4175 20px, #2f4175 30px, #fdfdfd 30px, #fdfdfd 40px) 8 round;
9
+ border-image: repeating-linear-gradient(45deg, #a83439, #a83439 10px, #fdfdfd 10px, #fdfdfd 20px, #2f4175 20px, #2f4175 30px, #fdfdfd 30px, #fdfdfd 40px) 8 round;
10
+ /*border-image: url(../../../assets/images/air-mail-border.png) 8 repeat ;*/
11
+ background-color: #fdfdfd;
12
+ color: #707070;
13
+ }
14
+ /*
15
+ .ig_popup.ig_air-mail .ig_bg_overlay{
16
+ display: block;
17
+ background: -webkit-linear-gradient(top, transparent 0%, #888 30%, #888 70%, transparent 100%);
18
+ background: -o-linear-gradient(top, transparent 0%, #888 30%, #888 70%, transparent 100%);
19
+ background: -moz-linear-gradient(top, transparent 0%, #888 30%, #888 70%, transparent 100%);
20
+ background: linear-gradient(top, transparent 0%, #888 30%, #888 70%, transparent 100%);
21
+ opacity: .1;
22
+ }*/
23
+
24
+ .ig_popup.ig_air-mail .ig_headline {
25
+ padding: .5em;
26
+ font-size: 2.5em;
27
+ text-align: center;
28
+ color: #2C4A9D;
29
+ /*font-weight: 400;*/
30
+ /*text-shadow: 0 1px 0 rgba(0, 0, 0, .5);*/
31
+ }
32
+
33
+ .ig_popup.ig_air-mail .ig_image {
34
+ float: right;
35
+ }
36
+
37
+ .ig_popup.ig_air-mail .ig_message {
38
+ padding: .2em 2em .8em 2em;
39
+ font-size: 1.2em;
40
+ /*text-align: center;*/
41
+ }
42
+
43
+ .ig_popup.ig_air-mail .ig_close {
44
+ background-position: -520px center;
45
+ margin: 0;
46
+ top: 0;
47
+ right: 0;
48
+ opacity: .35;
49
+ }
50
+ .ig_popup.ig_air-mail .ig_close:hover {
51
+ background-position: -520px center;
52
+ opacity: .75;
53
+ }
54
+
55
+ .ig_popup.ig_air-mail .ig_button,
56
+ .ig_popup.ig_air-mail input[type="submit"],
57
+ .ig_popup.ig_air-mail input[type="button"] {
58
+ /*background: #e74d3c;*/
59
+ background: #D82931;
60
+ color: #FFF;
61
+ width: 50%;
62
+ border-radius: 4px;
63
+ border: none;
64
+ font-size: 1.5em;
65
+ text-transform: uppercase;
66
+ font-weight: 600;
67
+ text-align: center;
68
+ margin: .8em auto 1.2em auto;
69
+ padding: .5em .15em;
70
+ /*border-top: 3px solid #c0392b;*/ /*replacement for hover*/
71
+ /*border-bottom: 3px solid #c0392b;*/ /*replacement for hover*/
72
+ }
73
+
74
+ .ig_popup.ig_air-mail .ig_button:hover,
75
+ .ig_popup.ig_air-mail input[type="submit"]:hover,
76
+ .ig_popup.ig_air-mail input[type="button"]:hover {
77
+ /*margin: 7px auto 17px auto;*/
78
+ /*border-top: 3px solid #c0392b;*/
79
+ /*border-bottom: 3px solid #c0392b ;*/
80
+ box-shadow: 0 0 5px 0 rgba(0, 0, 0, .5);
81
+
82
+ }
83
+
84
+ .ig_popup.ig_air-mail .ig_button:active,
85
+ .ig_popup.ig_air-mail input[type="submit"]:active,
86
+ .ig_popup.ig_air-mail input[type="button"]:active{
87
+ /*margin: 10px auto 20px auto;*/
88
+ /*border: none;*/
89
+ box-shadow: none;
90
+ }
91
+
92
+
93
+ /****************** Embed Form: Start *******************/
94
+
95
+ .ig_popup.ig_form_right.ig_air-mail .ig_form_container.layout_right{
96
+ padding-top: 1.5em;
97
+ }
98
+ /*
99
+ .ig_popup.ig_air-mail .ig_form_container .ig_button{
100
+ width: 98%;
101
+ }
102
+ .ig_popup.ig_form_right.ig_form_style_4.ig_air-mail .ig_close,
103
+ .ig_popup.ig_form_right.ig_form_style_4.ig_air-mail .ig_close:hover{
104
+ margin: -32px -32px 0 0;
105
+ top: 2em;
106
+ right: 2em;
107
+ }
108
+ */
109
+
110
+ /****************** Embed Form: End *******************/
111
+
112
+ @media only screen and (max-width: 850px){
113
+ .ig_popup.ig_form_right.ig_air-mail .ig_form_container.layout_right{
114
+ padding-top: 1em;
115
+ }
116
+ }
message-types/popup/themes/amaze.css ADDED
@@ -0,0 +1,79 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .ig_popup.ig_amaze {
2
+ border: .3em solid #444;
3
+ background-color: #444;
4
+ color: #FFF;
5
+ }
6
+ .ig_popup.ig_amaze .ig_bg_overlay{
7
+ display: block;
8
+ background-image: url(../../../assets/images/popup-amaze-bg.jpg);
9
+ opacity: .5;
10
+ }
11
+
12
+ .ig_popup.ig_amaze .ig_headline {
13
+ padding: .5em;
14
+ text-align: center;
15
+ /*color: #fff;*/
16
+ text-shadow: 0 1px 0 rgba(0, 0, 0, .5);
17
+ font-size: 2em;
18
+ }
19
+
20
+ .ig_popup.ig_amaze .ig_image {
21
+ float: left;
22
+ }
23
+
24
+ .ig_popup.ig_amaze .ig_message {
25
+ font-size: 1.2em;
26
+ padding: 0.5em 1.2em 0.8em;
27
+ font-family: Georgia, Times, "Times New Roman", serif;
28
+ /*color: #FFF;*/
29
+ margin: 0 2em;
30
+ }
31
+
32
+ .ig_popup.ig_amaze .ig_button,
33
+ .ig_popup.ig_amaze input[type="submit"],
34
+ .ig_popup.ig_amaze input[type="button"] {
35
+ /*background: hsl(145, 63%, 49%);*/
36
+ background: #2ecc70;
37
+ color: #FFF;
38
+ font-family: Calibri, Candara, Segoe, "Segoe UI", Optima, Arial, sans-serif;
39
+ font-size: 1.3em;
40
+ letter-spacing: 1px;
41
+ vertical-align: top;
42
+ font-weight: 700;
43
+ text-align: center;
44
+ line-height: 1.8em;
45
+ border-radius: 3px;
46
+ border-bottom: .2em solid rgba(63, 63, 63, 0.6);
47
+ text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.5);
48
+ margin: .5em auto 1.2em auto;
49
+ width: 40%;
50
+ padding: 0.3em 1em;
51
+ }
52
+ .ig_popup.ig_amaze .ig_button:hover,
53
+ .ig_popup.ig_amaze input[type="submit"]:hover,
54
+ .ig_popup.ig_amaze input[type="button"]:hover {
55
+ /*margin-bottom: 1.2em;*/
56
+ /*border-bottom: 6px solid #c0392b;*/
57
+ box-shadow: 0 0 5px 0 rgba(0, 0, 0, .5);
58
+ }
59
+ /*.ig_popup.ig_amaze .ig_button:active,
60
+ .ig_popup.ig_amaze input[type="submit"]:active,
61
+ .ig_popup.ig_amaze input[type="button"]:active {
62
+ border-color: transparent !important;
63
+ margin: .4em auto 1em auto;
64
+ }*/
65
+
66
+
67
+ @media only screen and (max-width: 850px) {
68
+ .ig_popup.ig_amaze .ig_message{
69
+ margin: 0 1em;
70
+ }
71
+ }
72
+
73
+ /****************** Embed Form: Start *******************/
74
+ /*
75
+ .ig_popup.ig_amaze .ig_form_container .ig_button{
76
+ width: 98%;
77
+ }*/
78
+
79
+ /****************** Embed Form: End *******************/
message-types/popup/themes/compel.css ADDED
@@ -0,0 +1,94 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .ig_popup.ig_compel {
2
+ background: #FFF;
3
+ color: #707070;
4
+ border: 4px dashed #c0392b;
5
+ }
6
+
7
+ .ig_popup.ig_compel .ig_headline {
8
+ padding: .5em;
9
+ padding-right: 1em;
10
+ font-size: 2em;
11
+ text-shadow: 0 1px 0 rgba(0, 0, 0, .2);
12
+ margin-bottom: 0.2em;
13
+ text-align: center;
14
+ }
15
+
16
+ .ig_popup.ig_compel .ig_image {
17
+ float: left;
18
+ padding-right: 1em;
19
+ }
20
+
21
+ .ig_popup.ig_compel .ig_message {
22
+ padding: 0.5em 1.25em 0.8em;
23
+ font-size: 1.25em;
24
+ font-family: "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Geneva, Verdana, sans-serif;
25
+ margin: 0 .5em .5em .5em;
26
+ }
27
+
28
+ .ig_popup.ig_compel .ig_close {
29
+ background-position: -520px center;
30
+ margin: 0;
31
+ top: 0;
32
+ right: 0;
33
+ opacity: .35;
34
+ }
35
+ .ig_popup.ig_compel .ig_close:hover {
36
+ background-position: -520px center;
37
+ opacity: .75;
38
+ }
39
+
40
+ .ig_popup.ig_compel .ig_button,
41
+ .ig_popup.ig_compel input[type="submit"],
42
+ .ig_popup.ig_compel input[type="button"] {
43
+ background: #e74d3c;
44
+ color: #FFF;
45
+ width: 50%;
46
+ border-radius: 5px;
47
+ /*border-bottom: 3px solid #bf3a2b;*/
48
+ border-bottom: .18em solid #bf3a2b;
49
+ font-size: 1.2em;
50
+ text-transform: uppercase;
51
+ font-weight: 600;
52
+ text-align: center;
53
+ /*padding: .8em .15em;*/
54
+ padding: .8em .15em .62em .15em;
55
+ margin: .5em auto 1.2em auto;
56
+ }
57
+
58
+ .ig_popup.ig_compel .ig_button:hover,
59
+ .ig_popup.ig_compel input[type="submit"]:hover,
60
+ .ig_popup.ig_compel input[type="button"]:hover {
61
+ /*margin-bottom: 1.2em;*/
62
+ /*border-bottom: 6px solid #c0392b;*/
63
+ box-shadow: 0 0 5px 0 rgba(0, 0, 0, .5);
64
+ }
65
+ /*
66
+ .ig_popup.ig_compel .ig_button:active,
67
+ .ig_popup.ig_compel input[type="submit"]:active,
68
+ .ig_popup.ig_compel input[type="button"]:active{
69
+ border-top: none;
70
+ margin: 0 auto;
71
+ margin-bottom: 1.2em;
72
+ }
73
+ */
74
+
75
+
76
+ /****************** Embed Form: Start *******************/
77
+
78
+ /*.ig_popup.ig_compel .ig_form_container .ig_button{
79
+ width: 98%;
80
+ }
81
+ .ig_popup.ig_form_right.ig_compel .ig_form_container.layout_right{
82
+ padding-right: 2em;
83
+ }
84
+
85
+ .ig_popup.ig_form_right.ig_form_style_4.ig_compel .ig_close,
86
+ .ig_popup.ig_form_right.ig_form_style_4.ig_compel .ig_close:hover{
87
+ margin: -32px -32px 0 0;
88
+ top: 34px;
89
+ right: 32px;
90
+ }
91
+ */
92
+
93
+
94
+ /****************** Embed Form: End *******************/
message-types/popup/themes/convert.css ADDED
@@ -0,0 +1,115 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* google Font */
2
+ /* latin */
3
+ @font-face {
4
+ font-family: 'Goudy Bookletter 1911';
5
+ font-style: normal;
6
+ font-weight: 400;
7
+ src: local('Goudy Bookletter 1911'), local('GoudyBookletter1911'), url(https://fonts.gstatic.com/s/goudybookletter1911/v6/l5lwlGTN3pEY5Bf-rQEuIAQibyVIKv8boZ0oFv0g-Lo.woff2) format('woff2');
8
+ unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
9
+ }
10
+ .ig_popup.ig_convert {
11
+ background-color: #fffdcc;
12
+ color: #484747;
13
+ box-shadow: none;
14
+ width: 50%;
15
+ border-radius: .3em;
16
+ }
17
+
18
+ .ig_popup.ig_convert .ig_headline {
19
+ font-size: 2.5em;
20
+ padding: .8em 1.2em .3em;
21
+ /*letter-spacing: 0;*/
22
+ /*text-align: left;*/
23
+ text-align: center;
24
+ font-family: 'Goudy Bookletter 1911', serif;
25
+ }
26
+
27
+ .ig_popup.ig_convert .ig_image {
28
+ float: right;
29
+ }
30
+
31
+ .ig_popup.ig_convert .ig_message {
32
+ font-size: 1.2em;
33
+ padding: 0.8em 1.5em;
34
+ font-family: Calibri, Candara, Segoe, "Segoe UI", Optima, Arial, sans-serif;
35
+ vertical-align: baseline;
36
+ text-align: center;
37
+ }
38
+
39
+ .ig_popup.ig_convert .ig_button,
40
+ .ig_popup.ig_convert input[type="submit"],
41
+ .ig_popup.ig_convert input[type="button"] {
42
+ background: #cb0606;
43
+ color: #fcf8f8;
44
+ /*text-transform: uppercase;*/
45
+ font-weight: 700;
46
+ text-decoration: none;
47
+ font-size: 1.75em;
48
+ /*border: .25em solid #b9b1b1 !important; */
49
+ border: .2em solid rgba(0, 0, 0, .2) !important;
50
+ width: 60%;
51
+ /*font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;*/
52
+ font-family: 'Goudy Bookletter 1911', serif;
53
+ border-radius: 3em;
54
+ text-align: center;
55
+ line-height: 1.5em;
56
+ padding: 0.3em 1em;
57
+ margin: .5em auto 1.2em auto;
58
+ clear: both;
59
+ }
60
+ .ig_popup.ig_convert .ig_button:hover,
61
+ .ig_popup.ig_convert input[type="submit"]:hover,
62
+ .ig_popup.ig_convert input[type="button"]:hover{
63
+ box-shadow: 0 0 8px 0 rgba(0, 0, 0, .4);
64
+ }
65
+ .ig_popup.ig_convert .ig_button:active,
66
+ .ig_popup.ig_convert input[type="submit"]:active,
67
+ .ig_popup.ig_convert input[type="button"]:active{
68
+ box-shadow: none;
69
+ }
70
+
71
+ .ig_popup.ig_convert .ig_close {
72
+ background-position: 0px center;
73
+ top: 6px;
74
+ right: 6px;
75
+ opacity: .4;
76
+ }
77
+
78
+ .ig_popup.ig_convert .ig_close:hover {
79
+ background-position: 0px center;
80
+ opacity: .7;
81
+ }
82
+
83
+ /****************** Embed Form: Start *******************/
84
+
85
+ .ig_popup.ig_form_right.ig_convert .ig_form_container.layout_right{
86
+ padding-top: 2.2em;
87
+ }
88
+ /*.ig_popup.ig_convert .ig_form_container .ig_button{
89
+ width: 98%;
90
+ }
91
+ */
92
+ /****************** Embed Form: End *******************/
93
+ @media only screen and (min-width: 1440px) {
94
+ .ig_popup.ig_convert {
95
+ max-width: 600px;
96
+ }
97
+ }
98
+ @media only screen and (max-width: 850px){
99
+ .ig_popup.ig_convert {
100
+ width: 65%;
101
+ }
102
+ .ig_popup.ig_form_right.ig_convert .ig_form_container.layout_right{
103
+ padding-top: 1em;
104
+ }
105
+ }
106
+ @media only screen and (max-width: 644px) {
107
+ .ig_popup.ig_convert {
108
+ width: 75%;
109
+ }
110
+ }
111
+ @media only screen and (max-width: 375px) {
112
+ .ig_popup.ig_convert {
113
+ width: 90%;
114
+ }
115
+ }
message-types/popup/themes/default.css ADDED
@@ -0,0 +1,324 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* Magnific popup css */
2
+ .mfp-bg{top:0;left:0;width:100%;height:100%;z-index:1042;overflow:hidden;position:fixed;background:#0b0b0b;opacity:.8;filter:alpha(opacity=80)}.mfp-wrap{top:0;left:0;width:100%;height:100%;z-index:999999;position:fixed;outline:0!important;-webkit-backface-visibility:hidden}.mfp-container{text-align:center;position:absolute;width:100%;height:100%;left:0;top:0;padding:0 8px;box-sizing:border-box}.mfp-container:before{content:'';display:inline-block;height:100%;vertical-align:middle}.mfp-align-top .mfp-container:before{display:none}.mfp-content{position:relative;display:inline-block;vertical-align:middle;margin:0 auto;text-align:left;z-index:1045}.mfp-ajax-holder .mfp-content,.mfp-inline-holder .mfp-content{width:100%;cursor:auto}.mfp-ajax-cur{cursor:progress}.mfp-zoom-out-cur,.mfp-zoom-out-cur .mfp-image-holder .mfp-close{cursor:-webkit-zoom-out;cursor:zoom-out}.mfp-zoom{cursor:pointer;cursor:-webkit-zoom-in;cursor:zoom-in}.mfp-auto-cursor .mfp-content{cursor:auto}.mfp-arrow,.mfp-close,.mfp-counter,.mfp-preloader{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.mfp-loading.mfp-figure{display:none}.mfp-hide{display:none!important}.mfp-preloader{color:#CCC;position:absolute;top:50%;width:auto;text-align:center;margin-top:-.8em;left:8px;right:8px;z-index:1044}.mfp-preloader a{color:#CCC}.mfp-preloader a:hover{color:#FFF}.mfp-s-error .mfp-content,.mfp-s-ready .mfp-preloader{display:none}button.mfp-arrow,button.mfp-close{overflow:visible;cursor:pointer;background:0 0;border:0;-webkit-appearance:none;display:block;outline:0;padding:0;z-index:1046;box-shadow:none}button::-moz-focus-inner{padding:0;border:0}.mfp-close{width:44px;height:44px;line-height:44px;position:absolute;right:0;top:0;text-decoration:none;text-align:center;opacity:.65;filter:alpha(opacity=65);padding:0 0 18px 10px;color:#FFF;font-style:normal;font-size:28px;font-family:Arial,Baskerville,monospace}.mfp-close:focus,.mfp-close:hover{opacity:1;filter:alpha(opacity=100)}.mfp-close:active{top:1px}.mfp-close-btn-in .mfp-close{color:#333}.mfp-iframe-holder .mfp-close,.mfp-image-holder .mfp-close{color:#FFF;right:-6px;text-align:right;padding-right:6px;width:100%}.mfp-counter{position:absolute;top:0;right:0;color:#CCC;font-size:12px;line-height:18px;white-space:nowrap}.mfp-arrow{position:absolute;opacity:.65;filter:alpha(opacity=65);margin:-55px 0 0;top:50%;padding:0;width:90px;height:110px;-webkit-tap-highlight-color:transparent}.mfp-arrow:active{margin-top:-54px}.mfp-arrow:focus,.mfp-arrow:hover{opacity:1;filter:alpha(opacity=100)}.mfp-arrow .mfp-a,.mfp-arrow .mfp-b,.mfp-arrow:after,.mfp-arrow:before{content:'';display:block;width:0;height:0;position:absolute;left:0;top:0;margin-top:35px;margin-left:35px;border:inset transparent}.mfp-arrow .mfp-a,.mfp-arrow:after{border-top-width:13px;border-bottom-width:13px;top:8px}.mfp-arrow .mfp-b,.mfp-arrow:before{border-top-width:21px;border-bottom-width:21px;opacity:.7}.mfp-arrow-left{left:0}.mfp-arrow-left .mfp-a,.mfp-arrow-left:after{border-right:17px solid #FFF;margin-left:31px}.mfp-arrow-left .mfp-b,.mfp-arrow-left:before{margin-left:25px;border-right:27px solid #3F3F3F}.mfp-arrow-right{right:0}.mfp-arrow-right .mfp-a,.mfp-arrow-right:after{border-left:17px solid #FFF;margin-left:39px}.mfp-arrow-right .mfp-b,.mfp-arrow-right:before{border-left:27px solid #3F3F3F}.mfp-iframe-holder{padding-top:40px;padding-bottom:40px}.mfp-iframe-holder .mfp-content{line-height:0;width:100%;max-width:900px}.mfp-iframe-holder .mfp-close{top:-40px}.mfp-iframe-scaler{width:100%;height:0;overflow:hidden;padding-top:56.25%}.mfp-iframe-scaler iframe{position:absolute;display:block;top:0;left:0;width:100%;height:100%;box-shadow:0 0 8px rgba(0,0,0,.6);background:#000}img.mfp-img{width:auto;max-width:100%;height:auto;display:block;line-height:0;box-sizing:border-box;padding:40px 0;margin:0 auto}.mfp-figure{line-height:0}.mfp-figure:after{content:'';position:absolute;left:0;top:40px;bottom:40px;display:block;right:0;width:auto;height:auto;z-index:-1;box-shadow:0 0 8px rgba(0,0,0,.6);background:#444}.mfp-figure small{color:#BDBDBD;display:block;font-size:12px;line-height:14px}.mfp-figure figure{margin:0}.mfp-bottom-bar{margin-top:-36px;position:absolute;top:100%;left:0;width:100%;cursor:auto}.mfp-title{text-align:left;line-height:18px;color:#F3F3F3;word-wrap:break-word;padding-right:36px}.mfp-image-holder .mfp-content{max-width:100%}.mfp-gallery .mfp-image-holder .mfp-figure{cursor:pointer}@media screen and (max-width:800px) and (orientation:landscape),screen and (max-height:300px){.mfp-img-mobile .mfp-image-holder{padding-left:0;padding-right:0}.mfp-img-mobile img.mfp-img{padding:0}.mfp-img-mobile .mfp-figure:after{top:0;bottom:0}.mfp-img-mobile .mfp-figure small{display:inline;margin-left:5px}.mfp-img-mobile .mfp-bottom-bar{background:rgba(0,0,0,.6);bottom:0;margin:0;top:auto;padding:3px 5px;position:fixed;box-sizing:border-box}.mfp-img-mobile .mfp-bottom-bar:empty{padding:0}.mfp-img-mobile .mfp-counter{right:5px;top:3px}.mfp-img-mobile .mfp-close{top:0;right:0;width:35px;height:35px;line-height:35px;background:rgba(0,0,0,.6);position:fixed;text-align:center;padding:0}}@media all and (max-width:900px){.mfp-arrow{-webkit-transform:scale(.75);-ms-transform:scale(.75);transform:scale(.75)}.mfp-arrow-left{-webkit-transform-origin:0;-ms-transform-origin:0;transform-origin:0}.mfp-arrow-right{-webkit-transform-origin:100%;-ms-transform-origin:100%;transform-origin:100%}.mfp-container{padding-left:6px;padding-right:6px}}.mfp-ie7 .mfp-img{padding:0}.mfp-ie7 .mfp-bottom-bar{width:600px;left:50%;margin-left:-300px;margin-top:5px;padding-bottom:5px}.mfp-ie7 .mfp-container{padding:0}.mfp-ie7 .mfp-content{padding-top:44px}.mfp-ie7 .mfp-close{top:0;right:0;padding-top:0}
3
+ .mfp-bg{z-index:999999;}
4
+
5
+ .ig_popup{
6
+ opacity: 1;
7
+ display: block;
8
+ z-index: 100000;
9
+ background-color: transparent;
10
+ /*background-color: transparent !important;*/
11
+ /*color: transparent !important;*/
12
+ /*width: 60%;*/
13
+ width: 58%;
14
+ margin: 32px auto 20px auto !important;
15
+ position: relative;
16
+ font-size: 1em;
17
+ }
18
+
19
+ .ig_popup .ig_content {
20
+ background-color: transparent;
21
+ }
22
+ .ig_popup .ig_bg_overlay{
23
+ background-color: transparent;
24
+ width: 100%;
25
+ height: 100%;
26
+ top: 0;
27
+ left: 0;
28
+ margin: 0;
29
+ padding: 0;
30
+ position: absolute;
31
+ display: none;
32
+ }
33
+
34
+ .ig_popup .ig_headline {
35
+ text-decoration: none;
36
+ font-weight: 800;
37
+ font-size: 2em;
38
+ line-height: 1.2em;
39
+ }
40
+
41
+ .ig_popup .ig_data {
42
+ /*overflow: hidden;*/
43
+ position: relative;
44
+ }
45
+
46
+ .ig_popup .ig_image {
47
+ margin: 0 1em;
48
+ }
49
+
50
+ .ig_popup .ig_message {
51
+ line-height: 1.2em;
52
+ font-size: 1.2em;
53
+ }
54
+ .ig_popup .ig_close {
55
+ background-image: url(../../../assets/images/sprite_1.png);
56
+ background-position: -600px center;
57
+ background-repeat: no-repeat;
58
+ height: 30px;
59
+ width: 30px;
60
+ top: -15px;
61
+ right: -15px;
62
+ margin: 0;
63
+ cursor: pointer;
64
+ position: absolute;
65
+ z-index: 20;
66
+ }
67
+
68
+ .ig_popup .ig_close:hover {
69
+ background-position: -640px center;
70
+ }
71
+
72
+ .ig_popup .ig_button,
73
+ .ig_popup input[type="submit"],
74
+ .ig_popup input[type="button"] {
75
+ cursor: pointer;
76
+ display: block;
77
+ background-image: none;
78
+ border: none;
79
+ border-radius: 0;
80
+ box-shadow:none;
81
+ position: relative;
82
+ }
83
+
84
+ .ig_popup .ig_button:hover,
85
+ .ig_popup input[type="submit"]:hover,
86
+ .ig_popup input[type="button"]:hover {
87
+
88
+ }
89
+ .ig_popup .ig_button:active,
90
+ .ig_popup input[type="submit"]:active,
91
+ .ig_popup input[type="button"]:active{
92
+ }
93
+
94
+ .mfp-wrap .ig_powered_by {
95
+ position: fixed;
96
+ bottom: 1em;
97
+ left: 1em;
98
+ font-size: 14px;
99
+ padding: 0.1em;
100
+ }
101
+
102
+ /*div.icegram .ig_popup input[type="submit"],
103
+ div.icegram .ig_popup input[type="button"] {
104
+ font-size: 100%;
105
+ }*/
106
+
107
+ /*@media only screen and (min-width: 360px) and (max-width: 644px) {*/
108
+ @media only screen and (min-width: 1440px) {
109
+ .ig_popup {
110
+ max-width: 835px;
111
+ }
112
+ }
113
+ @media only screen and (max-width: 850px){
114
+ .ig_popup {
115
+ /*width: 75%;*/
116
+ font-size: 14px;
117
+ }
118
+ .ig_popup .ig_button,
119
+ .ig_popup input[type="submit"],
120
+ .ig_popup input[type="button"] {
121
+ width: 70% !important;
122
+ }
123
+ }
124
+ @media only screen and (max-width: 644px) {
125
+ .ig_popup {
126
+ width: 75%;
127
+ /*top: 8% !important;*/
128
+ /*margin: 10px auto !important;*/
129
+ font-size: 13px;
130
+ }
131
+ .ig_popup .ig_button,
132
+ .ig_popup input[type="submit"],
133
+ .ig_popup input[type="button"] {
134
+ width: 60% !important;
135
+ }
136
+ }
137
+ @media only screen and (max-width: 425px) {
138
+ .ig_popup .ig_button,
139
+ .ig_popup input[type="submit"],
140
+ .ig_popup input[type="button"] {
141
+ width: 80% !important;
142
+ }
143
+
144
+ }
145
+ @media only screen and (max-width: 375px) {
146
+ .ig_popup {
147
+ width: 90%;
148
+ }
149
+ .ig_popup .ig_button,
150
+ .ig_popup input[type="submit"],
151
+ .ig_popup input[type="button"] {
152
+ width: 90% !important;
153
+ }
154
+
155
+ }
156
+
157
+
158
+ /****************** Embed Form: Start *******************/
159
+
160
+ .ig_popup .ig_form_container{
161
+ width: 30%;
162
+ float: left;
163
+ /*padding-top: 2em;*/
164
+ }
165
+
166
+ .ig_popup.ig_form_left .ig_data{
167
+ position: relative;
168
+ }
169
+
170
+ .ig_popup.ig_form_left .ig_data,
171
+ .ig_popup.ig_form_right .ig_data{
172
+ width: 70%;
173
+ float: left;
174
+ }
175
+
176
+ .ig_popup.ig_form_right.ig_form_style_4 .ig_close,
177
+ .ig_popup.ig_form_right.ig_form_style_4 .ig_close:hover{
178
+ /*margin: -4em -2em 0 0;*/
179
+ /*top: 2em;*/
180
+ margin: -15px -15px 0 0;
181
+ }
182
+
183
+ /*** responsive form ***/
184
+
185
+ @media only screen and (max-width: 850px){
186
+ .ig_popup.ig_form_left .ig_form_container.layout_left,
187
+ .ig_popup.ig_form_right .ig_form_container.layout_right{
188
+ display: none;
189
+ }
190
+
191
+ .ig_popup.ig_form_left .ig_form_container.layout_bottom,
192
+ .ig_popup.ig_form_right .ig_form_container.layout_bottom,
193
+ .ig_popup.ig_form_bottom .ig_form_container.layout_bottom{
194
+ display: block;
195
+ width: 100%;
196
+ font-size: 1.3em;
197
+ height: auto !important;
198
+ }
199
+ .ig_popup.ig_form_inline .ig_form_container.layout_inline{
200
+ padding: .6em 0;
201
+ }
202
+
203
+ .ig_popup.ig_form_left .ig_data,
204
+ .ig_popup.ig_form_right .ig_data{
205
+ width: 100%;
206
+ }
207
+
208
+ .ig_popup .ig_form_container.layout_bottom .ig_full .ig_form_els,
209
+ .ig_popup .ig_form_container.layout_inline .ig_full .ig_form_els,
210
+ .ig_popup .ig_form_container.layout_bottom .ig_half .ig_form_els,
211
+ .ig_popup .ig_form_container.layout_inline .ig_half .ig_form_els,
212
+ .ig_popup .ig_form_container.layout_bottom .ig_third .ig_form_els,
213
+ .ig_popup .ig_form_container.layout_inline .ig_third .ig_form_els,
214
+ .ig_popup .ig_form_container.layout_bottom .ig_quater .ig_form_els,
215
+ .ig_popup .ig_form_container.layout_inline .ig_quater .ig_form_els{
216
+ width: 99%;
217
+ margin: .5em auto 0 auto;
218
+ }
219
+
220
+ .ig_popup .ig_form_container.layout_inline .ig_button_label,
221
+ .ig_popup .ig_form_container.layout_bottom .ig_button_label{
222
+ display: none;
223
+ }
224
+
225
+ .ig_popup .ig_form_container.layout_inline .ig_button,
226
+ .ig_popup .ig_form_container.layout_inline input[type="submit"],
227
+ .ig_popup .ig_form_container.layout_inline input[type="button"],
228
+ .ig_popup .ig_form_container.layout_bottom .ig_button,
229
+ .ig_popup .ig_form_container.layout_bottom input[type="submit"],
230
+ .ig_popup .ig_form_container.layout_bottom input[type="button"]{
231
+ width: 99% !important;
232
+ font-size: 1em;
233
+ /*height: auto !important;*/
234
+ }
235
+
236
+ .ig_popup.ig_form_bottom .ig_form_container.layout_bottom .ig_form_els.ig_form_el_radio,
237
+ .ig_popup.ig_form_inline .ig_form_container.layout_inline .ig_form_els.ig_form_el_radio{
238
+ display: block;
239
+ }
240
+ .ig_popup.ig_form_bottom .ig_form_container.layout_bottom .ig_form_els.ig_form_el_radio label,
241
+ .ig_popup.ig_form_inline .ig_form_container.layout_inline .ig_form_els.ig_form_el_radio label{
242
+ display: block;
243
+ }
244
+
245
+ /****** Form Style: Style 1 ******/
246
+
247
+ .ig_popup.ig_form_style_1 .ig_form_container:before{
248
+ border-width: 0;
249
+ border-style: solid;
250
+ border-color: #000 !important;
251
+ opacity: .3;
252
+ top: 0;
253
+ }
254
+
255
+ .ig_popup.ig_form_left.ig_form_style_1 .ig_form_container.layout_bottom:before,
256
+ .ig_popup.ig_form_right.ig_form_style_1 .ig_form_container.layout_bottom:before{
257
+ width: 100%;
258
+ border-top-width: .2em;
259
+ }
260
+ .ig_popup.ig_form_bottom.ig_form_style_1 .ig_form_container.layout_bottom:before{
261
+ border-top-width: .2em;
262
+ }
263
+
264
+ /****** Form Style: Style 2 ******/
265
+
266
+ .ig_popup.ig_form_style_2 .ig_form_container.layout_bottom .ig_form_els,
267
+ .ig_popup.ig_form_style_2 .ig_form_container.layout_inline .ig_form_els{
268
+ margin-right: 0;
269
+ margin-left: 0;
270
+ }
271
+
272
+ .ig_popup.ig_form_style_2 .ig_form_container.layout_inline .ig_form_els.ig_form_els_first input,
273
+ .ig_popup.ig_form_style_2 .ig_form_container.layout_bottom .ig_form_els.ig_form_els_first input,
274
+ .ig_popup.ig_form_style_2 .ig_form_container.layout_inline .ig_form_els.ig_form_els_last input,
275
+ .ig_popup.ig_form_style_2 .ig_form_container.layout_bottom .ig_form_els.ig_form_els_last input,
276
+ .ig_popup.ig_form_style_2 .ig_form_container.layout_inline .ig_form_els input,
277
+ .ig_popup.ig_form_style_2 .ig_form_container.layout_bottom .ig_form_els input{
278
+ border-radius: 2em;
279
+ padding-left: 1em;
280
+ }
281
+ .ig_popup.ig_form_style_2 .ig_form_container.layout_bottom .ig_form_els input.ig_button,
282
+ .ig_popup.ig_form_style_2 .ig_form_container.layout_inline .ig_form_els input.ig_button{
283
+ padding: inherit;
284
+ }
285
+
286
+ .ig_popup.ig_form_style_2 .ig_form_container.layout_inline .ig_form_els.ig_form_els_first label,
287
+ .ig_popup.ig_form_style_2 .ig_form_container.layout_bottom .ig_form_els.ig_form_els_first label,
288
+ .ig_popup.ig_form_style_2 .ig_form_container.layout_bottom .ig_form_els.ig_form_els_last label,
289
+ .ig_popup.ig_form_style_2 .ig_form_container.layout_inline .ig_form_els.ig_form_els_last label,
290
+ .ig_popup.ig_form_style_2 .ig_form_container.layout_inline .ig_form_els label,
291
+ .ig_popup.ig_form_style_2 .ig_form_container.layout_bottom .ig_form_els label{
292
+ padding-left: 1em;
293
+ }
294
+
295
+
296
+ /****** Form Style: Style 4 ******/
297
+
298
+ .ig_popup.ig_form_right.ig_form_style_4 .ig_close,
299
+ .ig_popup.ig_form_right.ig_form_style_4 .ig_close:hover{
300
+ /*margin: -2em -1em 0 0;*/
301
+ /*top: 1em;*/
302
+ /*margin: -16px -16px 0 0;*/
303
+ margin: 0;
304
+ }
305
+
306
+ .ig_popup.ig_form_left.ig_form_style_4 .ig_form_container:before,
307
+ .ig_popup.ig_form_right.ig_form_style_4 .ig_form_container:before{
308
+ /*.ig_popup.ig_form_bottom.ig_form_style_4 .ig_form_container:before{*/
309
+ /*border-bottom-width: 0;*/
310
+ }
311
+ .ig_popup.ig_form_bottom.ig_form_style_4 .ig_message,
312
+ .ig_popup.ig_form_left.ig_form_style_4 .ig_message,
313
+ .ig_popup.ig_form_right.ig_form_style_4 .ig_message{
314
+ padding-bottom: 1.5em;
315
+ }
316
+ }
317
+ @media only screen and (min-width: 645px) and (max-width: 850px){
318
+ .ig_popup.ig_form_left .ig_form_container.layout_bottom,
319
+ .ig_popup.ig_form_right .ig_form_container.layout_bottom,
320
+ .ig_popup.ig_form_bottom .ig_form_container.layout_bottom{
321
+ font-size: 1.1em;
322
+ }
323
+ }
324
+ /****************** Embed Form: End *******************/
message-types/popup/themes/inspire.css ADDED
@@ -0,0 +1,91 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .ig_popup.ig_inspire {
2
+ background: #FFF;
3
+ color: #444;
4
+ }
5
+
6
+ .ig_popup.ig_inspire .ig_headline {
7
+ color: #82AD23;
8
+ text-align: center;
9
+ padding: .8em .8em .3em .8em;
10
+ font-size: 2.5em;
11
+ }
12
+
13
+ .ig_popup.ig_inspire .ig_image {
14
+ float: left;
15
+ }
16
+
17
+ .ig_popup.ig_inspire .ig_message {
18
+ padding: 0.8em 2em;
19
+ font-size: 1.25em;
20
+ /*font-weight: 400;*/
21
+ text-align: justify;
22
+ /*text-align: center;*/
23
+ }
24
+
25
+ .ig_popup.ig_inspire .ig_button,
26
+ .ig_popup.ig_inspire input[type="submit"],
27
+ .ig_popup.ig_inspire input[type="button"] {
28
+ /*background: #78ac06;*/
29
+ background: #82AD23;
30
+ color: #fff;
31
+ vertical-align: middle;
32
+ font-size: 2em;
33
+ /*font-weight: 100;*/
34
+ font-weight: 700;
35
+ font-style: normal;
36
+ text-decoration: none;
37
+ text-align: center;
38
+ -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
39
+ filter: alpha(opacity=100);
40
+ opacity: 1;
41
+ width: 55%;
42
+ line-height: 1.2em;
43
+ padding: 0.5em;
44
+ margin: .5em auto 1em auto;
45
+ border-top: none;
46
+ }
47
+ .ig_popup.ig_inspire .ig_button:hover,
48
+ .ig_popup.ig_inspire input[type="submit"]:hover,
49
+ .ig_popup.ig_inspire input[type="button"]:hover{
50
+ border-top: none;
51
+ /*font-weight: 400;*/
52
+ box-shadow: 0 0 8px 0 rgba(0, 0, 0, .4);
53
+ }
54
+ .ig_popup.ig_inspire .ig_button:active,
55
+ .ig_popup.ig_inspire input[type="submit"]:active,
56
+ .ig_popup.ig_inspire input[type="button"]:active{
57
+ border-top: none;
58
+ font-weight: 400;
59
+ box-shadow: none;
60
+ }
61
+
62
+ .ig_popup.ig_inspire .ig_close {
63
+ background-position: -763px center;
64
+ margin: 0;
65
+ top: 0;
66
+ right: 0;
67
+ opacity: .4;
68
+ height: 24px;
69
+ width: 24px;
70
+ background-color: rgba(0, 0, 0, .45);
71
+ }
72
+
73
+ .ig_popup.ig_inspire .ig_close:hover {
74
+ opacity: .7;
75
+ }
76
+
77
+ /****************** Embed Form: Start *******************/
78
+ .ig_popup.ig_form_right.ig_inspire .ig_form_container.layout_right{
79
+ padding-top: 2.5em;
80
+ }
81
+
82
+ /*.ig_popup.ig_inspire .ig_form_container .ig_button{
83
+ width: 98%;
84
+ }*/
85
+ /****************** Embed Form: End *******************/
86
+
87
+ @media only screen and (max-width: 850px){
88
+ .ig_popup.ig_form_right.ig_inspire .ig_form_container.layout_right{
89
+ padding-top: 1em;
90
+ }
91
+ }
message-types/popup/themes/persuade.css ADDED
@@ -0,0 +1,84 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .ig_popup.ig_persuade {
2
+ background: #ef504e;
3
+ color: #FFF;
4
+ border: .4em dashed #FFF;
5
+ padding-bottom: .1em;
6
+ }
7
+
8
+ .ig_popup.ig_persuade .ig_headline {
9
+ letter-spacing: 0;
10
+ /*color: #FFF;*/
11
+ font-size: 2.8em;
12
+ text-align: center;
13
+ -webkit-font-smoothing: antialiased;
14
+ line-height: 1em;
15
+ padding: .7em .7em 0.5em;
16
+ }
17
+
18
+ .ig_popup.ig_persuade .ig_image {
19
+ float: left;
20
+ }
21
+
22
+ .ig_popup.ig_persuade .ig_message {
23
+ padding: 0.5em 1.5em .8em;
24
+ font-size: 1.5em;
25
+ font-weight: 300;
26
+ text-align: center;
27
+ -webkit-font-smoothing: antialiased;
28
+ }
29
+
30
+ .ig_popup.ig_persuade .ig_button,
31
+ .ig_popup.ig_persuade input[type="submit"],
32
+ .ig_popup.ig_persuade input[type="button"] {
33
+ background: #424242;
34
+ color: #FFF;
35
+ text-decoration: none;
36
+ text-align: center;
37
+ /*font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;*/
38
+ font-size: 2em;
39
+ font-weight: 400;
40
+ line-height: 1.2em;
41
+ width: 55%;
42
+ /*margin: .8em auto .5em auto;*/
43
+ margin: .5em auto 1em auto;
44
+ padding: 0.4em;
45
+ border: none;
46
+ border-radius: .4em;
47
+ border-bottom: .28em solid #333;
48
+ border-bottom: .2em solid rgba(0, 0, 0, .3) !important;
49
+ box-shadow: 0 .15em .1em rgba(0, 0, 0, 0.3) !important;
50
+ clear: both;
51
+ border-bottom: .28em solid #333;
52
+ box-shadow: 0 .3em 1.5em rgba(0, 0, 0, 0.6) !important;
53
+ }
54
+
55
+ .ig_popup.ig_persuade .ig_button:hover,
56
+ .ig_popup.ig_persuade input[type="submit"]:hover,
57
+ .ig_popup.ig_persuade input[type="button"]:hover {
58
+ /*border-bottom: .1em solid #333;*/
59
+ /*margin: .4em auto .5em auto;*/
60
+ /*border-color: transparent !important;*/
61
+ box-shadow: 0 .1em .1em rgba(0, 0, 0, 0.3) !important;
62
+ }
63
+
64
+ .ig_popup.ig_persuade .ig_button:active,
65
+ .ig_popup.ig_persuade input[type="submit"]:active,
66
+ .ig_popup.ig_persuade input[type="button"]:active {
67
+ box-shadow: none !important;
68
+ /*border-top: none;*/
69
+ /*margin: .4em auto .5em auto;*/
70
+ /* box-shadow: 0 0 .2em rgba(0, 0, 0, 0.3) !important;*/
71
+ }
72
+
73
+ /****************** Embed Form: Start *******************/
74
+
75
+ /*.ig_popup.ig_persuade .ig_form_container .ig_button{
76
+ width: 98%;
77
+ }
78
+
79
+ .ig_popup.ig_form_style_2.ig_persuade .ig_form_container.layout_bottom .ig_form_els .ig_button,
80
+ .ig_popup.ig_form_style_2.ig_persuade .ig_form_container.layout_inline .ig_form_els .ig_button{
81
+ top: -.14em !important;
82
+ }*/
83
+
84
+ /****************** Embed Form: End *******************/
message-types/toast/main.js CHANGED
@@ -1 +1,66 @@
1
- /* File for backward compatibility. */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ * Icegram Message Type - Toast
3
+ **/
4
+ function Icegram_Message_Type_Toast( data ) {
5
+ var width ,sticky ,duration;
6
+ this.width = 300;
7
+ this.sticky = false;
8
+ this.duration = 10000;
9
+ Icegram_Message_Type.apply(this, arguments);
10
+ }
11
+ Icegram_Message_Type_Toast.prototype = Object.create(Icegram_Message_Type.prototype);
12
+ Icegram_Message_Type_Toast.prototype.constructor = Icegram_Message_Type_Toast;
13
+
14
+ Icegram_Message_Type_Toast.prototype.get_template_default = function () {
15
+ return '<li class="icegram ig_toast ig_container ig_{{=theme}} ig_cta" data="{{=id}}" id="icegram_message_{{=id}}">'+
16
+ '<div class="ig_wrapper">'+
17
+ '<div class="ig_content">'+
18
+ '<div class="ig_base"></div>'+
19
+ '<div class="ig_line"></div>'+
20
+ '<img class="ig_icon" src="{{=icon}}"/>'+
21
+ '<div class="ig_headline">{{=headline}}</div>'+
22
+ '<div class="ig_message">{{=message}}</div>'+
23
+ '</div>'+
24
+ '</div>'+
25
+ '</li>';
26
+ };
27
+ Icegram_Message_Type_Toast.prototype.pre_render = function ( ) {
28
+ if( this.data.position == "10" || this.data.position == "12" ) {
29
+ this.data.position = '20';
30
+ }
31
+ if (!(jQuery('ul#' + this.data.position).length)) {
32
+ var ul = jQuery('<ul id="' + this.data.position + '"></ul>').addClass('ig_toast_block').appendTo(this.root_container).hide();
33
+ ul.width(this.width);
34
+ if (this.data.position == "00") {
35
+ ul.css({top: '0', left: '0'}).addClass('ig_left').addClass('ig_top');
36
+ } else if (this.data.position == "01") {
37
+ ul.css({top: '0', left: '50%', margin: '5px 0 0 -' + (this.width / 2) + 'px'}).addClass('ig_center').addClass('ig_top');
38
+ } else if (this.data.position == "02") {
39
+ ul.css({top: '0', right: '0'}).addClass('ig_right').addClass('ig_top');
40
+ } else if (this.data.position == "20") {
41
+ ul.css({bottom: '0', left: '0'}).addClass('ig_left').addClass('ig_bottom');
42
+ } else if (this.data.position == "21") {
43
+ ul.css({bottom: '0', left: '50%', margin: '5px 0 0 -' + (this.width / 2) + 'px'}).addClass('ig_center').addClass('ig_bottom');
44
+ } else if (this.data.position == "22") {
45
+ ul.css({bottom: '0', right: '0'}).addClass('ig_right').addClass('ig_bottom');
46
+ } else if (this.data.position == "11") {
47
+ ul.css({top: '50%', left: '50%', margin: '-'+(this.width / 2) +'px 0 0 -' + (this.width / 2) + 'px'}).addClass('ig_center').addClass('ig_top');
48
+ }
49
+ }else {
50
+ var ul = jQuery('ul#' + this.data.position);
51
+ }
52
+ this.root_container = ul;
53
+ }
54
+
55
+ Icegram_Message_Type_Toast.prototype.pre_show = function ( ) {
56
+ !this.root_container.hasClass('active') && this.root_container.addClass('active').show();
57
+ }
58
+
59
+ Icegram_Message_Type_Toast.prototype.post_show = function ( ) {
60
+ var self = this;
61
+ !this.sticky && this.duration > 0 && (setTimeout(function() {
62
+ self.hide();
63
+ self.root_container.children().length || self.root_container.removeClass('active').hide();
64
+ }, this.duration));
65
+
66
+ };
message-types/toast/themes/announce.css ADDED
@@ -0,0 +1,32 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .ig_toast.ig_announce.ig_container {
2
+ border-radius: 4px;
3
+ box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1), inset 0 -1px 0 rgba(255, 255, 255, 0.15), 0 0 6px rgba(0, 0, 0, 0.08), 0 0 0 1px rgba(35, 47, 64, 0.2);
4
+ background-image: -webkit-linear-gradient(180deg, rgba(255, 255, 255, 0.95) 0%, rgba(255, 255, 105, 0) 100%);
5
+ background-image: -moz-linear-gradient(180deg, rgba(255, 255, 255, 0.95) 0%, rgba(255, 255, 105, 0) 100%);
6
+ background-image: linear-gradient(180deg, rgba(255, 255, 255, 0.95) 0%, rgba(255, 255, 105, 0) 100%);
7
+ background-color: rgba(255, 255, 105, 0.95) !important;
8
+ color: rgba(67, 76, 89, 0.9) !important;
9
+ text-shadow: 0 1px 0 rgba(255, 255, 255, 0.85);
10
+ }
11
+
12
+ .ig_toast.ig_announce.ig_container:hover {
13
+ border-color: rgba(0, 0, 0, 1);
14
+ }
15
+
16
+ .ig_toast.ig_announce .ig_wrapper {
17
+ border: none;
18
+ border-radius: 4px;
19
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.55);
20
+ }
21
+
22
+ .ig_toast.ig_announce .ig_content {
23
+ border: none;
24
+ color: rgba(67, 76, 89, 0.9) !important;
25
+ background-color: transparent !important;
26
+ border-radius: 4px;
27
+ box-shadow: inset 0 -3px 2px rgba(58, 71, 89, 0.04);
28
+ }
29
+
30
+ .ig_toast.ig_announce .ig_headline {
31
+ color: rgba(67, 76, 89, 0.9);
32
+ }
message-types/toast/themes/balance.css ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .ig_toast.ig_balance.ig_container {
2
+ border: 1px solid #777;
3
+ color: #141414;
4
+ text-shadow: 0 1px 0 rgba(255, 255, 255, 0.7);
5
+ background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(204, 204, 204, 0.75)), to(rgba(240, 240, 240, 1)), color-stop(0.4, rgba(139, 139, 139, 0.5))) !important;
6
+ background-image: -moz-linear-gradient(top, rgba(204,204,204,0.75) 0%, rgba(139, 139, 139, 0.5) 40%, rgba(240,240,240,1) 100%);
7
+ background-image: linear-gradient(to bottom, rgba(204,204,204,0.75) 0%, rgba(139, 139, 139, 0.5) 40%, rgba(240,240,240,1) 100%) !important;
8
+ background-color: rgba(204, 204, 204, 0.8) !important;
9
+ -webkit-font-smoothing: antialiased;
10
+ }
11
+ .ig_toast.ig_balance .ig_content {
12
+ background: transparent !important;
13
+ }
14
+ .ig_toast.ig_balance .ig_headline {
15
+ border-bottom: 1px solid #777;
16
+ width: 100%;
17
+ }
18
+ .ig_toast.ig_balance .ig_message {
19
+ margin-top: 5px;
20
+ }
message-types/toast/themes/burnt.css ADDED
@@ -0,0 +1,80 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .ig_toast.ig_burnt.ig_container {
2
+ min-height: 64px;
3
+ position: relative;
4
+ box-sizing: border-box;
5
+ background-color: transparent !important;
6
+ }
7
+
8
+ .ig_toast.ig_burnt .ig_content {
9
+ background-color: transparent !important;
10
+ }
11
+
12
+ .ig_toast.ig_burnt .ig_wrapper {
13
+ padding: 5px 5px 5px 65px;
14
+ }
15
+
16
+ .ig_toast.ig_burnt .ig_base {
17
+ position: absolute;
18
+ top: 0;
19
+ left: 0;
20
+ bottom: 0;
21
+ right: 0;
22
+ background-color: transparent;
23
+ background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.88));
24
+ background-image: -moz-linear-gradient(top, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.88));
25
+ background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.88));
26
+ border: 1px solid #000;
27
+ box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.07), inset 0 0 0 1px rgba(255, 255, 255, 0.1);
28
+ border-radius: 4px;
29
+ overflow: hidden;
30
+ z-index: 0
31
+ }
32
+
33
+ .ig_toast.ig_burnt .ig_line {
34
+ width: 1px;
35
+ height: 27px;
36
+ position: absolute;
37
+ top: 1px;
38
+ left: 58px;
39
+ background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0));
40
+ background-image: -moz-linear-gradient(top, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0));
41
+ background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0));
42
+ }
43
+
44
+ .ig_toast.ig_burnt .ig_line:after {
45
+ content: "";
46
+ display: block;
47
+ width: 1px;
48
+ height: 26px;
49
+ position: absolute;
50
+ top: 1px;
51
+ left: -1px;
52
+ background-image: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
53
+ background-image: -moz-linear-gradient(top, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
54
+ background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
55
+ }
56
+
57
+ .ig_toast.ig_burnt .ig_headline {
58
+ color: #fff;
59
+ text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.5);
60
+ z-index: 1;
61
+ }
62
+
63
+ .ig_toast.ig_burnt .ig_icon {
64
+ max-height: 42px;
65
+ max-width: 42px;
66
+ left: 8px;
67
+ top: 5px;
68
+ }
69
+
70
+ .ig_toast.ig_burnt .ig_icon img {
71
+ width: 40px;
72
+ height: 40px;
73
+ border-radius: 3px;
74
+ }
75
+
76
+ .ig_toast.ig_burnt .ig_message {
77
+ color: rgba(255, 255, 255, 0.83);
78
+ text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.7);
79
+ position: relative;
80
+ }
message-types/toast/themes/clear.css ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .ig_toast.ig_clear.ig_container {
2
+ border: 3px solid rgba(0, 0, 0, 0.4);
3
+ border-radius: .5em;
4
+ background: #fff !important;
5
+ }
6
+ .ig_toast.ig_clear .ig_content {
7
+ background-color: transparent !important;
8
+ }
9
+ .ig_toast.ig_clear .ig_headline {
10
+ color: #222;
11
+ letter-spacing: 0.7pt;
12
+ line-height: 16px;
13
+ text-shadow: 0 1px 0 rgba(255, 255, 255, 0.6);
14
+ }
15
+ .ig_toast.ig_clear .ig_message {
16
+ color: #444;
17
+ text-align: left;
18
+ text-shadow: 0 1px 0 rgba(255, 255, 255, 0.6);
19
+ line-height: 15px;
20
+ }
message-types/toast/themes/default.css ADDED
@@ -0,0 +1,77 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .ig_toast.ig_container {
2
+ display: none;
3
+ }
4
+
5
+ .ig_toast .ig_wrapper {
6
+ overflow: hidden;
7
+ padding: 5px 5px 5px 50px;
8
+ position: relative;
9
+ min-height: 34px;
10
+ }
11
+
12
+ .ig_toast .ig_content {
13
+ overflow: hidden;
14
+ }
15
+
16
+ .ig_toast .ig_headline {
17
+ display: inline-block;
18
+ margin: 0;
19
+ text-align: left;
20
+ position: relative;
21
+ }
22
+
23
+ .ig_toast .ig_icon {
24
+ overflow: hidden;
25
+ display: block;
26
+ max-height: 32px;
27
+ max-width: 32px;
28
+ left: 10px;
29
+ top: 10px;
30
+ position: absolute;
31
+ }
32
+
33
+ .ig_toast .ig_icon img {
34
+ max-width: 32px;
35
+ max-height: 32px;
36
+ margin: 0;
37
+ padding: 0;
38
+ }
39
+
40
+ .ig_toast .ig_message {
41
+ margin: -3px 0 0 -2px;
42
+ }
43
+
44
+ .ig_toast .ig_message p {
45
+ margin: 0.15em;
46
+ }
47
+
48
+ .ig_toast_block {
49
+ position: fixed;
50
+ list-style: none;
51
+ z-index: 999999;
52
+ -ms-word-wrap: break-word;
53
+ word-wrap: break-word;
54
+ padding: 0;
55
+ margin: 5px;
56
+ }
57
+
58
+ .ig_toast_block * {
59
+ box-sizing: content-box;
60
+ text-transform: none;
61
+ }
62
+
63
+ .ig_toast_block .ig_container {
64
+ margin: 10px 0;
65
+ }
66
+
67
+ .ig_toast_block .ig_headline {
68
+ font-weight: bold;
69
+ clear: none;
70
+ padding: 0;
71
+ }
72
+
73
+ .ig_toast_block .ig_message {
74
+ font-size: 12px;
75
+ text-align: left;
76
+ line-height: 15px;
77
+ }
message-types/toast/themes/night-glow.css ADDED
@@ -0,0 +1,26 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .ig_toast.ig_night-glow.ig_container {
2
+ border-radius: 5px;
3
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.6);
4
+ -webkit-font-smoothing: antialiased;
5
+ background-color: transparent !important;
6
+ background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.83)), to(rgba(51, 51, 51, 0.73)), color-stop(0.5, rgba(0, 0, 0, 0.83))) !important;
7
+ background: -moz-linear-gradient(left, rgba(0, 0, 0, 0.83)0%, rgba(0, 0, 0, 0.83)50%, rgba(51, 51, 51, 0.73)100%) !important;
8
+ background: linear-gradient(to bottom, rgba(0, 0, 0, 0.83)0%, rgba(0, 0, 0, 0.83)50%, rgba(51, 51, 51, 0.73)100%) !important;
9
+ border: 1px solid rgba(0, 0, 0, 0.6);
10
+ color: rgba(255, 255, 255, 0.9);
11
+ text-shadow: 0 -1px 0 #000;
12
+ }
13
+
14
+ .ig_toast.ig_night-glow .ig_wrapper {
15
+ border-radius: 3px;
16
+ background-image: url(../../../assets/images/toast-glow.png);
17
+ background-repeat: no-repeat;
18
+ border-bottom: 1px solid rgba(255, 255, 255, 0.05);
19
+ }
20
+
21
+ .ig_toast.ig_night-glow .ig_content {
22
+ padding-left: 8px;
23
+ border-radius: 3px;
24
+ border-left: 1px solid rgba(255, 255, 255, 0.1);
25
+ background-color: transparent !important;
26
+ }
message-types/toast/themes/stand-out.css ADDED
@@ -0,0 +1,25 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .ig_toast.ig_stand-out .ig_wrapper {
2
+ padding: 5px 50px 5px 10px;
3
+ }
4
+ .ig_toast.ig_stand-out.ig_container {
5
+ background-color: #1f1f1f !important;
6
+ background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, rgba(0, 0, 0, 0.1)), color-stop(1, rgba(255, 255, 255, 0.1))), url(../../../assets/images/stand-out.png) !important;
7
+ background-image: -moz-linear-gradient(bottom, rgba(0, 0, 0, 0.1) 0%, rgba(255, 255, 255, 0.1) 100%), url(../../../assets/images/stand-out.png) !important;
8
+ background-image: linear-gradient(to top, rgba(0, 0, 0, 0.1) 0%, rgba(255, 255, 255, 0.1) 100%), url(../../../assets/images/stand-out.png) !important;
9
+ box-shadow: 0 1px 0 rgba(255, 255, 255, 0.3) inset, 0 -1px 0 rgba(255, 255, 255, 0.1) inset, 0 1px 4px rgba(0, 0, 0, 0.7);
10
+ border-radius: 5px;
11
+ color: rgba(255, 255, 255, 0.7);
12
+ text-shadow: 0 1px 0 rgba(0, 0, 0, 0.75);
13
+ border: 1px solid #111;
14
+ }
15
+ .ig_toast.ig_stand-out .ig_content {
16
+ background-color: transparent !important;
17
+ }
18
+ .ig_toast.ig_stand-out .ig_icon {
19
+ right: 10px;
20
+ left: auto;
21
+ border-radius: 3px;
22
+ }
23
+ .ig_toast.ig_stand-out .ig_message, .ig_toast.ig_stand-out .ig_headline {
24
+ line-height: 15px;
25
+ }
readme.txt CHANGED
@@ -1,10 +1,10 @@
1
  === Popups, Welcome Bar, Optins and Lead Generation Plugin - Icegram ===
2
  Contributors: icegram, storeapps, niravmehta, sandhyam, putler
3
  Donate link: https://www.icegram.com/
4
- Tags: popups, Exit-popup, optin-popup, popups, hellobar, optin, lead capture, form, marketing, notification, messenger, targeting, monster, ninja ,wordpress lead generation, wordpress lightbox optin, wordpress lightbox optin form, wordpress lightbox optins, wordpress mobile optin forms, wordpress mobile popup, wordpress mobile popups, wordpress optin form, wordpress overlay popup, wordpress popup, wordpress popup form, wordpress popup plugin, wordpress popup solution, wordpress popups , popups, subscribe, wp popups, optin bars, action grabber, promotion, popup message, leads, lists, builder, action bar, floating bar, footer bar, hellobar alternative, pop over, Popup plugin, aweber, campaign monitor, constant contact, email list, exit-intent, onclick popup, analytics, Hubspot, popup ads, pop-up, Mailing list pop-up, re-targeting, Animation,Popups with Animation ,Responsive Popup, split testing, AB testing
5
  Requires at least: 3.9
6
  Tested up to: 4.9.5
7
- Stable tag: 1.10.18
8
  License: GPLv3
9
 
10
  The best WP popup plugin that let's you create a popup within seconds. Customize popup, target popups to show offers, email signups, social buttons etc and instantly increase conversions on your website.
@@ -217,6 +217,9 @@ Contact Us, provide as much detail of the problem as you can. We will try to sol
217
  5. Target your Icegram message using these display rules
218
 
219
  == Upgrade Notice ==
 
 
 
220
  = 1.10.18 =
221
  Improved the UI/UX of the Icegram Gallery
222
 
@@ -429,6 +432,9 @@ Initial Release
429
 
430
 
431
  == Changelog ==
 
 
 
432
  = 1.10.18 =
433
  * New: Improved the UI/UX of the Icegram Gallery
434
 
1
  === Popups, Welcome Bar, Optins and Lead Generation Plugin - Icegram ===
2
  Contributors: icegram, storeapps, niravmehta, sandhyam, putler
3
  Donate link: https://www.icegram.com/
4
+ Tags: popups, Exit-popup, optin-popup, popup, hellobar, optin, lead capture, form, marketing, notification, messenger, targeting, monster, ninja ,wordpress lead generation, wordpress lightbox optin, wordpress lightbox optin form, wordpress lightbox optins, wordpress mobile optin forms, wordpress mobile popup, wordpress mobile popups, wordpress optin form, wordpress overlay popup, wordpress popup, wordpress popup form, wordpress popup plugin, wordpress popup solution, wordpress popups , popups, subscribe, wp popups, optin bars, action grabber, promotion, popup message, leads, lists, builder, action bar, floating bar, footer bar, hellobar alternative, pop over, Popup plugin, aweber, campaign monitor, constant contact, email list, exit-intent, onclick popup, analytics, Hubspot, popup ads, pop-up, Mailing list pop-up, re-targeting, Animation,Popups with Animation ,Responsive Popup, split testing, AB testing
5
  Requires at least: 3.9
6
  Tested up to: 4.9.5
7
+ Stable tag: 1.10.19
8
  License: GPLv3
9
 
10
  The best WP popup plugin that let's you create a popup within seconds. Customize popup, target popups to show offers, email signups, social buttons etc and instantly increase conversions on your website.
217
  5. Target your Icegram message using these display rules
218
 
219
  == Upgrade Notice ==
220
+ = 1.10.19 =
221
+ Compatibility with Rainmaker
222
+
223
  = 1.10.18 =
224
  Improved the UI/UX of the Icegram Gallery
225
 
432
 
433
 
434
  == Changelog ==
435
+ = 1.10.19 =
436
+ * Update: Now supports Rainmaker forms in multisite environment.
437
+
438
  = 1.10.18 =
439
  * New: Improved the UI/UX of the Icegram Gallery
440