WhatsApp Chat WP - Version 4.9.0

Version Description

  • New. Admin improvements
Download this release

Release Info

Developer quadlayers
Plugin Icon 128x128 WhatsApp Chat WP
Version 4.9.0
Comparing to
See all releases

Code changes from version 4.8.9 to 4.9.0

assets/backend/css/main.css CHANGED
@@ -1,207 +1 @@
1
- #qlwapp_contacts_table td,
2
- #qlwapp_contacts_table th {
3
- padding: 1em !important;
4
- vertical-align: top;
5
- line-height: 1.75em; }
6
-
7
- #qlwapp_contacts_table td img.qlwapp-avatar {
8
- width: 50px;
9
- height: 50px; }
10
-
11
- #qlwapp_contacts_table tbody.ui-sortable .wc-item-reorder-nav button {
12
- position: relative;
13
- overflow: hidden;
14
- float: left;
15
- display: block;
16
- width: 24px;
17
- height: 24px;
18
- margin: 0;
19
- background: 0 0;
20
- border: none;
21
- box-shadow: none;
22
- color: #82878c;
23
- text-indent: -9999px;
24
- cursor: pointer;
25
- outline: 0; }
26
- #qlwapp_contacts_table tbody.ui-sortable .wc-item-reorder-nav button::before {
27
- display: inline-block;
28
- position: absolute;
29
- top: 0;
30
- right: 0;
31
- width: 100%;
32
- height: 100%;
33
- font: normal 20px/23px dashicons;
34
- text-align: center;
35
- text-indent: 0;
36
- -webkit-font-smoothing: antialiased;
37
- -moz-osx-font-smoothing: grayscale; }
38
- #qlwapp_contacts_table tbody.ui-sortable .wc-item-reorder-nav button.wc-move-up::before {
39
- content: "\f343"; }
40
- #qlwapp_contacts_table tbody.ui-sortable .wc-item-reorder-nav button.wc-move-down::before {
41
- content: "\f347"; }
42
- #qlwapp_contacts_table tbody.ui-sortable .wc-item-reorder-nav button.wc-move-disabled {
43
- color: #d5d5d5 !important;
44
- cursor: default;
45
- pointer-events: none; }
46
-
47
- #qlwapp_contacts_table tbody.ui-sortable .wc-item-reorder-nav::before {
48
- content: "\f333";
49
- font-family: Dashicons;
50
- text-align: center;
51
- line-height: 1;
52
- color: #999;
53
- display: block;
54
- width: 24px;
55
- float: left;
56
- height: 100%;
57
- line-height: 24px;
58
- cursor: move; }
59
-
60
- #qlwapp_modal {
61
- max-width: 890px;
62
- max-height: 560px;
63
- margin: auto; }
64
- #qlwapp_modal.processing {
65
- pointer-events: none; }
66
- #qlwapp_modal.processing:before {
67
- content: '';
68
- position: absolute;
69
- top: 0;
70
- bottom: 0;
71
- left: 0;
72
- right: 0;
73
- background-color: #ffffff;
74
- z-index: 999;
75
- opacity: 0.8; }
76
- #qlwapp_modal.qlwapp-modal-icon .thumbnail {
77
- vertical-align: middle;
78
- text-align: center; }
79
- #qlwapp_modal.qlwapp-modal-icon .thumbnail:before {
80
- content: '';
81
- display: inline-block;
82
- width: 0px;
83
- height: 100%;
84
- vertical-align: middle; }
85
- #qlwapp_modal.qlwapp-modal-icon .thumbnail > i {
86
- text-align: center;
87
- font-size: 2vw;
88
- display: inline-block;
89
- vertical-align: middle;
90
- height: auto;
91
- width: auto; }
92
- #qlwapp_modal.qlwapp-modal-contact {
93
- max-width: 990px;
94
- max-height: 560px;
95
- margin: auto; }
96
- #qlwapp_modal.qlwapp-modal-contact table {
97
- padding: 15px;
98
- border-width: 1px 0 0 0;
99
- box-shadow: none;
100
- table-layout: fixed; }
101
- #qlwapp_modal.qlwapp-modal-contact table th {
102
- width: 70px; }
103
- #qlwapp_modal.qlwapp-modal-contact table td {
104
- width: calc(50% - 70px); }
105
- #qlwapp_modal.qlwapp-modal-contact .edit-attachment-frame .attachment-media-view {
106
- width: 75%; }
107
- #qlwapp_modal.qlwapp-modal-contact .edit-attachment-frame .attachment-info {
108
- width: 25%; }
109
- #qlwapp_modal.qlwapp-modal-contact .edit-attachment-frame .attachment-details {
110
- overflow: hidden; }
111
- #qlwapp_modal.qlwapp-modal-contact input[type=time] {
112
- height: 30px; }
113
- #qlwapp_modal.qlwapp-modal-contact .panel-wrap {
114
- overflow: hidden; }
115
- #qlwapp_modal.qlwapp-modal-contact .panel .options_group {
116
- overflow: hidden;
117
- border-bottom: 1px solid #eee; }
118
- #qlwapp_modal.qlwapp-modal-contact .panel .options_group:first-child {
119
- border-top: 0; }
120
- #qlwapp_modal.qlwapp-modal-contact .panel p.form-field {
121
- font-size: 12px;
122
- padding: 7.5px 15px;
123
- line-height: 24px; }
124
- #qlwapp_modal.qlwapp-modal-contact .panel p.form-field > label {
125
- display: inline-block; }
126
- #qlwapp_modal.qlwapp-modal-contact .panel p.form-field > label:first-child {
127
- width: 100px; }
128
- #qlwapp_modal.qlwapp-modal-contact .panel p.form-field > .select2-container:nth-of-type(1) {
129
- width: 80px !important; }
130
- #qlwapp_modal.qlwapp-modal-contact .panel p.form-field > .select2-container:nth-of-type(2) {
131
- width: calc(100% - 191px) !important; }
132
- #qlwapp_modal.qlwapp-modal-contact .panel p.form-field > .select2-container:only-of-type {
133
- width: calc(100% - 88px) !important; }
134
- #qlwapp_modal.qlwapp-modal-contact .panel select,
135
- #qlwapp_modal.qlwapp-modal-contact .panel textarea,
136
- #qlwapp_modal.qlwapp-modal-contact .panel input[type=phone],
137
- #qlwapp_modal.qlwapp-modal-contact .panel input[type=text] {
138
- width: 100%;
139
- max-width: 100%; }
140
- #qlwapp_modal.qlwapp-modal-contact ul.qlwapp-tabs {
141
- margin: 0;
142
- width: 20%;
143
- float: left;
144
- line-height: 1em;
145
- padding: 0 0 10px;
146
- position: relative;
147
- background-color: #fafafa;
148
- border-right: 1px solid #eee;
149
- box-sizing: border-box; }
150
- #qlwapp_modal.qlwapp-modal-contact ul.qlwapp-tabs:after {
151
- content: "";
152
- display: block;
153
- width: 100%;
154
- height: 9999em;
155
- position: absolute;
156
- bottom: -9999em;
157
- left: 0;
158
- background-color: #fafafa;
159
- border-right: 1px solid #eee; }
160
- #qlwapp_modal.qlwapp-modal-contact ul.qlwapp-tabs li {
161
- margin: 0;
162
- padding: 0;
163
- display: block;
164
- position: relative; }
165
- #qlwapp_modal.qlwapp-modal-contact ul.qlwapp-tabs li a {
166
- margin: 0;
167
- padding: 10px;
168
- display: block;
169
- box-shadow: none;
170
- text-decoration: none;
171
- line-height: 20px !important;
172
- border-bottom: 1px solid #eee; }
173
- #qlwapp_modal.qlwapp-modal-contact ul.qlwapp-tabs li a span {
174
- margin-left: .618em;
175
- margin-right: .618em; }
176
- #qlwapp_modal.qlwapp-modal-contact ul.qlwapp-tabs li a:before {
177
- content: "\f107";
178
- font-family: Dashicons;
179
- speak: none;
180
- font-weight: 400;
181
- text-transform: none;
182
- line-height: 1;
183
- -webkit-font-smoothing: antialiased;
184
- font-variant: normal;
185
- text-decoration: none; }
186
- #qlwapp_modal.qlwapp-modal-contact .qlwapp-input,
187
- #qlwapp_modal.qlwapp-modal-contact .qlwapp-select2 {
188
- width: 350px;
189
- max-width: 100%; }
190
- #qlwapp_modal.qlwapp-modal-contact .qlwapp-input {
191
- margin: 0;
192
- padding: 6px;
193
- box-sizing: border-box;
194
- vertical-align: top; }
195
-
196
- .settings-save-status .spinner {
197
- float: none;
198
- display: inline-block;
199
- margin: 0 10px; }
200
-
201
- .settings-save-status .saved {
202
- font-size: 12px;
203
- display: none; }
204
- .settings-save-status .saved.is-active {
205
- display: inline-block; }
206
-
207
- /*# sourceMappingURL=main.css.map*/
1
+ #qlwapp_contacts_table td,#qlwapp_contacts_table th{padding:1em !important;vertical-align:top;line-height:1.75em}#qlwapp_contacts_table td img.qlwapp-avatar{width:50px;height:50px}#qlwapp_contacts_table tbody.ui-sortable .wc-item-reorder-nav button{position:relative;overflow:hidden;float:left;display:block;width:24px;height:24px;margin:0;background:0 0;border:none;box-shadow:none;color:#82878c;text-indent:-9999px;cursor:pointer;outline:0}#qlwapp_contacts_table tbody.ui-sortable .wc-item-reorder-nav button::before{display:inline-block;position:absolute;top:0;right:0;width:100%;height:100%;font:normal 20px/23px dashicons;text-align:center;text-indent:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#qlwapp_contacts_table tbody.ui-sortable .wc-item-reorder-nav button.wc-move-up::before{content:"\f343"}#qlwapp_contacts_table tbody.ui-sortable .wc-item-reorder-nav button.wc-move-down::before{content:"\f347"}#qlwapp_contacts_table tbody.ui-sortable .wc-item-reorder-nav button.wc-move-disabled{color:#d5d5d5 !important;cursor:default;pointer-events:none}#qlwapp_contacts_table tbody.ui-sortable .wc-item-reorder-nav::before{content:"\f333";font-family:Dashicons;text-align:center;line-height:1;color:#999;display:block;width:24px;float:left;height:100%;line-height:24px;cursor:move}#qlwapp_modal{max-width:890px;max-height:560px;margin:auto}#qlwapp_modal.processing{pointer-events:none}#qlwapp_modal.processing:before{content:'';position:absolute;top:0;bottom:0;left:0;right:0;background-color:#ffffff;z-index:999;opacity:0.8}#qlwapp_modal.qlwapp-modal-icon .thumbnail{vertical-align:middle;text-align:center}#qlwapp_modal.qlwapp-modal-icon .thumbnail:before{content:'';display:inline-block;width:0px;height:100%;vertical-align:middle}#qlwapp_modal.qlwapp-modal-icon .thumbnail>i{text-align:center;font-size:2vw;display:inline-block;vertical-align:middle;height:auto;width:auto}#qlwapp_modal.qlwapp-modal-contact{max-width:990px;max-height:560px;margin:auto}#qlwapp_modal.qlwapp-modal-contact table{padding:15px;border-width:1px 0 0 0;box-shadow:none;table-layout:fixed}#qlwapp_modal.qlwapp-modal-contact table th{width:70px}#qlwapp_modal.qlwapp-modal-contact table td{width:calc(50% - 70px)}#qlwapp_modal.qlwapp-modal-contact .edit-attachment-frame .attachment-media-view{width:75%}#qlwapp_modal.qlwapp-modal-contact .edit-attachment-frame .attachment-info{width:25%}#qlwapp_modal.qlwapp-modal-contact .edit-attachment-frame .attachment-details{overflow:hidden}#qlwapp_modal.qlwapp-modal-contact input[type=time]{height:30px}#qlwapp_modal.qlwapp-modal-contact .panel-wrap{overflow:hidden}#qlwapp_modal.qlwapp-modal-contact .panel .options_group{overflow:hidden;border-bottom:1px solid #eee}#qlwapp_modal.qlwapp-modal-contact .panel .options_group:first-child{border-top:0}#qlwapp_modal.qlwapp-modal-contact .panel p.form-field{font-size:12px;padding:7.5px 15px;line-height:24px}#qlwapp_modal.qlwapp-modal-contact .panel p.form-field>label{display:inline-block}#qlwapp_modal.qlwapp-modal-contact .panel p.form-field>label:first-child{width:100px}#qlwapp_modal.qlwapp-modal-contact .panel p.form-field>.select2-container:nth-of-type(1){width:80px !important}#qlwapp_modal.qlwapp-modal-contact .panel p.form-field>.select2-container:nth-of-type(2){width:calc(100% - 191px) !important}#qlwapp_modal.qlwapp-modal-contact .panel p.form-field>.select2-container:only-of-type{width:calc(100% - 88px) !important}#qlwapp_modal.qlwapp-modal-contact .panel select,#qlwapp_modal.qlwapp-modal-contact .panel textarea,#qlwapp_modal.qlwapp-modal-contact .panel input[type=phone],#qlwapp_modal.qlwapp-modal-contact .panel input[type=text]{width:100%;max-width:100%}#qlwapp_modal.qlwapp-modal-contact ul.qlwapp-tabs{margin:0;width:20%;float:left;line-height:1em;padding:0 0 10px;position:relative;background-color:#fafafa;border-right:1px solid #eee;box-sizing:border-box}#qlwapp_modal.qlwapp-modal-contact ul.qlwapp-tabs:after{content:"";display:block;width:100%;height:9999em;position:absolute;bottom:-9999em;left:0;background-color:#fafafa;border-right:1px solid #eee}#qlwapp_modal.qlwapp-modal-contact ul.qlwapp-tabs li{margin:0;padding:0;display:block;position:relative}#qlwapp_modal.qlwapp-modal-contact ul.qlwapp-tabs li a{margin:0;padding:10px;display:block;box-shadow:none;text-decoration:none;line-height:20px !important;border-bottom:1px solid #eee}#qlwapp_modal.qlwapp-modal-contact ul.qlwapp-tabs li a span{margin-left:.618em;margin-right:.618em}#qlwapp_modal.qlwapp-modal-contact ul.qlwapp-tabs li a:before{content:"\f107";font-family:Dashicons;speak:none;font-weight:400;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;font-variant:normal;text-decoration:none}#qlwapp_modal.qlwapp-modal-contact .qlwapp-input,#qlwapp_modal.qlwapp-modal-contact .qlwapp-select2{width:350px;max-width:100%}#qlwapp_modal.qlwapp-modal-contact .qlwapp-input{margin:0;padding:6px;box-sizing:border-box;vertical-align:top}.settings-save-status .spinner{float:none;display:inline-block;margin:0 10px}.settings-save-status .saved{font-size:12px;display:none}.settings-save-status .saved.is-active{display:inline-block}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/backend/js/admin.asset.php CHANGED
@@ -1 +1 @@
1
- <?php return array('dependencies' => array('jquery', 'qlwapp-select2', 'wp-color-picker'), 'version' => '50b8ae6e6524d430a7e39c01bd37c548');
1
+ <?php return array('dependencies' => array('jquery', 'qlwapp-select2', 'wp-color-picker'), 'version' => '95a89eebe37791ae03745cd87d157a7a');
assets/backend/js/admin.js CHANGED
@@ -1,337 +1 @@
1
- /******/ (function(modules) { // webpackBootstrap
2
- /******/ // The module cache
3
- /******/ var installedModules = {};
4
- /******/
5
- /******/ // The require function
6
- /******/ function __webpack_require__(moduleId) {
7
- /******/
8
- /******/ // Check if module is in cache
9
- /******/ if(installedModules[moduleId]) {
10
- /******/ return installedModules[moduleId].exports;
11
- /******/ }
12
- /******/ // Create a new module (and put it into the cache)
13
- /******/ var module = installedModules[moduleId] = {
14
- /******/ i: moduleId,
15
- /******/ l: false,
16
- /******/ exports: {}
17
- /******/ };
18
- /******/
19
- /******/ // Execute the module function
20
- /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
21
- /******/
22
- /******/ // Flag the module as loaded
23
- /******/ module.l = true;
24
- /******/
25
- /******/ // Return the exports of the module
26
- /******/ return module.exports;
27
- /******/ }
28
- /******/
29
- /******/
30
- /******/ // expose the modules object (__webpack_modules__)
31
- /******/ __webpack_require__.m = modules;
32
- /******/
33
- /******/ // expose the module cache
34
- /******/ __webpack_require__.c = installedModules;
35
- /******/
36
- /******/ // define getter function for harmony exports
37
- /******/ __webpack_require__.d = function(exports, name, getter) {
38
- /******/ if(!__webpack_require__.o(exports, name)) {
39
- /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
40
- /******/ }
41
- /******/ };
42
- /******/
43
- /******/ // define __esModule on exports
44
- /******/ __webpack_require__.r = function(exports) {
45
- /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
46
- /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
47
- /******/ }
48
- /******/ Object.defineProperty(exports, '__esModule', { value: true });
49
- /******/ };
50
- /******/
51
- /******/ // create a fake namespace object
52
- /******/ // mode & 1: value is a module id, require it
53
- /******/ // mode & 2: merge all properties of value into the ns
54
- /******/ // mode & 4: return value when already ns object
55
- /******/ // mode & 8|1: behave like require
56
- /******/ __webpack_require__.t = function(value, mode) {
57
- /******/ if(mode & 1) value = __webpack_require__(value);
58
- /******/ if(mode & 8) return value;
59
- /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
60
- /******/ var ns = Object.create(null);
61
- /******/ __webpack_require__.r(ns);
62
- /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
63
- /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
64
- /******/ return ns;
65
- /******/ };
66
- /******/
67
- /******/ // getDefaultExport function for compatibility with non-harmony modules
68
- /******/ __webpack_require__.n = function(module) {
69
- /******/ var getter = module && module.__esModule ?
70
- /******/ function getDefault() { return module['default']; } :
71
- /******/ function getModuleExports() { return module; };
72
- /******/ __webpack_require__.d(getter, 'a', getter);
73
- /******/ return getter;
74
- /******/ };
75
- /******/
76
- /******/ // Object.prototype.hasOwnProperty.call
77
- /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
78
- /******/
79
- /******/ // __webpack_public_path__
80
- /******/ __webpack_require__.p = "";
81
- /******/
82
- /******/
83
- /******/ // Load entry module and return exports
84
- /******/ return __webpack_require__(__webpack_require__.s = "./src/backend/admin.js");
85
- /******/ })
86
- /************************************************************************/
87
- /******/ ({
88
-
89
- /***/ "./src/backend/admin.js":
90
- /*!******************************!*\
91
- !*** ./src/backend/admin.js ***!
92
- \******************************/
93
- /*! no exports provided */
94
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
95
-
96
- "use strict";
97
- __webpack_require__.r(__webpack_exports__);
98
- /* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! jquery */ "jquery");
99
- /* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_0__);
100
- /* harmony import */ var wp_color_picker__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! wp-color-picker */ "wp-color-picker");
101
- /* harmony import */ var wp_color_picker__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(wp_color_picker__WEBPACK_IMPORTED_MODULE_1__);
102
- /* harmony import */ var qlwapp_select2__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! qlwapp-select2 */ "qlwapp-select2");
103
- /* harmony import */ var qlwapp_select2__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(qlwapp_select2__WEBPACK_IMPORTED_MODULE_2__);
104
-
105
-
106
-
107
-
108
- (function ($) {
109
- // Disbled all
110
- // ---------------------------------------------------------------------------
111
- function disabled(value) {
112
- if (value) {
113
- $('#submit').attr('disabled', true);
114
- } else {
115
- $('#submit').attr('disabled', false);
116
- }
117
- }
118
-
119
- disabled(true);
120
- $('form').change(function (e) {
121
- disabled(false);
122
- });
123
- $('.button').click(function () {
124
- disabled(false);
125
- });
126
- $('button').click(function () {
127
- disabled(false);
128
- });
129
- $('.qlwapp-color-field').wpColorPicker({
130
- change: function change(event, ui) {
131
- disabled(false);
132
- },
133
- clear: function clear(event, ui) {
134
- disabled(false);
135
- }
136
- });
137
- $(document).on('tinymce_change', function (e) {
138
- disabled(false);
139
- });
140
- $(document).on('qlwapp-enhanced-select', function (e) {
141
- $('.qlwapp-select2').filter(':not(.enhanced)').each(function () {
142
- var select2_args = {
143
- allowClear: false,
144
- theme: 'default',
145
- minimumResultsForSearch: -1
146
- };
147
- $(this).select2(select2_args).addClass('enhanced');
148
- });
149
- $('.qlwapp-select2-search').filter(':not(.enhanced)').each(function () {
150
- var $select = $(this),
151
- name = $(this).data('name');
152
- var select2_args = {
153
- allowClear: true,
154
- ajax: {
155
- url: ajaxurl,
156
- dataType: 'json',
157
- //delay: 500,
158
- data: function data(params) {
159
- return {
160
- name: name,
161
- per_page: 10,
162
- q: params.term || 0,
163
- selected: $select.select2('val') || 0,
164
- action: 'qlwapp_get_posts',
165
- nonce: qlwapp.nonce.qlwapp_get_posts
166
- };
167
- },
168
- processResults: function processResults(response) {
169
- var options = [];
170
-
171
- if (response) {
172
- $.each(response, function (id, title) {
173
- options.push({
174
- id: id,
175
- text: title
176
- });
177
- });
178
- }
179
-
180
- return {
181
- results: options
182
- };
183
- },
184
- cache: true
185
- },
186
- minimumInputLength: 3
187
- };
188
- $(this).select2(select2_args).addClass('enhanced');
189
- }); // $('.qlwapp-select2').select2({allowClear: false, theme: 'default', minimumResultsForSearch: -1});
190
- }).trigger('qlwapp-enhanced-select');
191
- $('select[name=box]').on('change', function () {
192
- $('.nav-tab.qlwapp_box').toggleClass('hidden');
193
- $('.nav-tab.qlwapp_contacts').toggleClass('hidden');
194
- var $form = $('#qlwapp_button_form'),
195
- nonce = $form.find('#qlwapp_button_form_nonce').val();
196
- $form.trigger('qlwapp.save', ['qlwapp_save_button', nonce]);
197
- });
198
-
199
- if ($('select[name=auto_open]').val() == 'no') {
200
- $('input[name=auto_delay_open]').closest('tr').addClass('hidden');
201
- }
202
-
203
- $('select[name=auto_open]').on('change', function () {
204
- $('input[name=auto_delay_open]').closest('tr').toggleClass('hidden');
205
- });
206
- $('.qlwapp-color-field').wpColorPicker();
207
- $(document).on('click', '.upload_image_button', function (e) {
208
- e.preventDefault();
209
- var send_attachment_bkp = wp.media.editor.send.attachment,
210
- button = $(this);
211
-
212
- wp.media.editor.send.attachment = function (props, attachment) {
213
- $(button).parent().prev().attr('src', attachment.url);
214
- $(button).prev().val(attachment.url).trigger('change');
215
- wp.media.editor.send.attachment = send_attachment_bkp;
216
- };
217
-
218
- wp.media.editor.open(button);
219
- return false;
220
- });
221
- $(document).on('click', '.remove_image_button', function (e) {
222
- e.preventDefault();
223
- var src = $(this).parent().prev().attr('data-src');
224
- $(this).parent().prev().attr('src', src);
225
- $(this).prev().prev().val('').trigger('change');
226
- return false;
227
- }); // Ajax
228
- // ---------------------------------------------------------------------------
229
-
230
- $(document).on('qlwapp.save', 'form', function (e, action, nonce) {
231
- var $form = $(e.currentTarget),
232
- $spinner = $form.find('.settings-save-status .spinner'),
233
- $saved = $form.find('.settings-save-status .saved');
234
- $.ajax({
235
- url: ajaxurl,
236
- data: {
237
- action: action,
238
- nonce: nonce,
239
- form_data: $form.serialize()
240
- },
241
- dataType: 'json',
242
- type: 'POST',
243
- beforeSend: function beforeSend() {
244
- disabled(true);
245
- $spinner.addClass('is-active');
246
- },
247
- complete: function complete() {
248
- $spinner.removeClass('is-active');
249
- },
250
- error: function error(response) {
251
- console.log(response);
252
- },
253
- success: function success(response) {
254
- $saved.addClass('is-active');
255
-
256
- if (response.success) {
257
- setTimeout(function () {
258
- $saved.removeClass('is-active');
259
- }, 2000);
260
- } else {
261
- alert(response.data);
262
- }
263
- }
264
- });
265
- return false;
266
- }); // Ajax Button Submit
267
- // ---------------------------------------------------------------------------
268
-
269
- $(document).on('submit', '#qlwapp_button_form', function (e) {
270
- e.preventDefault();
271
- var $form = $(this),
272
- nonce = $form.find('#qlwapp_button_form_nonce').val();
273
- $form.trigger('qlwapp.save', ['qlwapp_save_button', nonce]);
274
- }); // Ajax BOX Submit
275
- // ---------------------------------------------------------------------------
276
-
277
- $(document).on('submit', '#qlwapp_box_form', function (e) {
278
- e.preventDefault();
279
- var $form = $(this),
280
- nonce = $form.find('#qlwapp_box_form_nonce').val();
281
- $form.trigger('qlwapp.save', ['qlwapp_save_box', nonce]);
282
- }); // Ajax Display Submit
283
- // ---------------------------------------------------------------------------
284
-
285
- $(document).on('submit', '#qlwapp_display_form', function (e) {
286
- e.preventDefault();
287
- var $form = $(this),
288
- nonce = $form.find('#qlwapp_display_form_nonce').val();
289
- $form.trigger('qlwapp.save', ['qlwapp_save_display', nonce]);
290
- }); // Ajax Scheme Submit
291
- // ---------------------------------------------------------------------------
292
-
293
- $(document).on('submit', '#qlwapp_scheme_form', function (e) {
294
- e.preventDefault();
295
- var $form = $(this),
296
- nonce = $form.find('#qlwapp_scheme_form_nonce').val();
297
- $form.trigger('qlwapp.save', ['qlwapp_save_scheme', nonce]);
298
- });
299
- })(jquery__WEBPACK_IMPORTED_MODULE_0___default.a);
300
-
301
- /***/ }),
302
-
303
- /***/ "jquery":
304
- /*!**********************************!*\
305
- !*** external {"this":"jQuery"} ***!
306
- \**********************************/
307
- /*! no static exports found */
308
- /***/ (function(module, exports) {
309
-
310
- (function() { module.exports = this["jQuery"]; }());
311
-
312
- /***/ }),
313
-
314
- /***/ "qlwapp-select2":
315
- /*!**********************************************!*\
316
- !*** external {"this":["jQuery","select2"]} ***!
317
- \**********************************************/
318
- /*! no static exports found */
319
- /***/ (function(module, exports) {
320
-
321
- (function() { module.exports = this["jQuery"]["select2"]; }());
322
-
323
- /***/ }),
324
-
325
- /***/ "wp-color-picker":
326
- /*!************************************************!*\
327
- !*** external {"this":["wp","wpColorPicker"]} ***!
328
- \************************************************/
329
- /*! no static exports found */
330
- /***/ (function(module, exports) {
331
-
332
- (function() { module.exports = this["wp"]["wpColorPicker"]; }());
333
-
334
- /***/ })
335
-
336
- /******/ });
337
- //# sourceMappingURL=admin.js.map
1
+ !function(e){var t={};function n(a){if(t[a])return t[a].exports;var o=t[a]={i:a,l:!1,exports:{}};return e[a].call(o.exports,o,o.exports,n),o.l=!0,o.exports}n.m=e,n.c=t,n.d=function(e,t,a){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:a})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var a=Object.create(null);if(n.r(a),Object.defineProperty(a,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(a,o,function(t){return e[t]}.bind(null,o));return a},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=1)}([function(e,t){!function(){e.exports=this.jQuery}()},function(e,t,n){"use strict";n.r(t);var a=n(0),o=n.n(a);n(2),n(3);!function(e){function t(t){t?e("#submit").attr("disabled",!0):e("#submit").attr("disabled",!1)}t(!0),e("form").change((function(e){t(!1)})),e(".button").click((function(){t(!1)})),e("button").click((function(){t(!1)})),e(".qlwapp-color-field").wpColorPicker({change:function(e,n){t(!1)},clear:function(e,n){t(!1)}}),e(document).on("tinymce_change",(function(e){t(!1)})),e(document).on("qlwapp-enhanced-select",(function(t){e(".qlwapp-select2").filter(":not(.enhanced)").each((function(){e(this).select2({allowClear:!1,theme:"default",minimumResultsForSearch:-1}).addClass("enhanced")})),e(".qlwapp-select2-search").filter(":not(.enhanced)").each((function(){var t=e(this),n=e(this).data("name"),a={allowClear:!0,ajax:{url:ajaxurl,dataType:"json",data:function(e){return{name:n,per_page:10,q:e.term||0,selected:t.select2("val")||0,action:"qlwapp_get_posts",nonce:qlwapp.nonce.qlwapp_get_posts}},processResults:function(t){var n=[];return t&&e.each(t,(function(e,t){n.push({id:e,text:t})})),{results:n}},cache:!0},minimumInputLength:3};e(this).select2(a).addClass("enhanced")}))})).trigger("qlwapp-enhanced-select"),e("select[name=box]").on("change",(function(){e(".nav-tab.qlwapp_box").toggleClass("hidden"),e("input[name=phone]").toggleClass("disabled"),e(".qlwapp-phone-alert").toggleClass("hidden"),e(".nav-tab.qlwapp_contacts").toggleClass("hidden");var t=e("#qlwapp_button_form"),n=t.find("#qlwapp_button_form_nonce").val();t.trigger("qlwapp.save",["qlwapp_save_button",n])})),"no"==e("select[name=auto_open]").val()&&e("input[name=auto_delay_open]").closest("tr").addClass("hidden"),e("select[name=auto_open]").on("change",(function(){e("input[name=auto_delay_open]").closest("tr").toggleClass("hidden")})),e(".qlwapp-color-field").wpColorPicker(),e(document).on("click",".upload_image_button",(function(t){t.preventDefault();var n=wp.media.editor.send.attachment,a=e(this);return wp.media.editor.send.attachment=function(t,o){e(a).parent().prev().attr("src",o.url),e(a).prev().val(o.url).trigger("change"),wp.media.editor.send.attachment=n},wp.media.editor.open(a),!1})),e(document).on("click",".remove_image_button",(function(t){t.preventDefault();var n=e(this).parent().prev().attr("data-src");return e(this).parent().prev().attr("src",n),e(this).prev().prev().val("").trigger("change"),!1})),e(document).on("qlwapp.save","form",(function(n,a,o){var r=e(n.currentTarget),i=r.find(".settings-save-status .spinner"),c=r.find(".settings-save-status .saved");return e.ajax({url:ajaxurl,data:{action:a,nonce:o,form_data:r.serialize()},dataType:"json",type:"POST",beforeSend:function(){t(!0),i.addClass("is-active")},complete:function(){i.removeClass("is-active")},error:function(e){console.log(e)},success:function(e){c.addClass("is-active"),e.success?setTimeout((function(){c.removeClass("is-active")}),2e3):alert(e.data)}}),!1})),e(document).on("submit","#qlwapp_button_form",(function(t){t.preventDefault();var n=e(this),a=n.find("#qlwapp_button_form_nonce").val();n.trigger("qlwapp.save",["qlwapp_save_button",a])})),e(document).on("submit","#qlwapp_box_form",(function(t){t.preventDefault();var n=e(this),a=n.find("#qlwapp_box_form_nonce").val();n.trigger("qlwapp.save",["qlwapp_save_box",a])})),e(document).on("submit","#qlwapp_display_form",(function(t){t.preventDefault();var n=e(this),a=n.find("#qlwapp_display_form_nonce").val();n.trigger("qlwapp.save",["qlwapp_save_display",a])})),e(document).on("submit","#qlwapp_scheme_form",(function(t){t.preventDefault();var n=e(this),a=n.find("#qlwapp_scheme_form_nonce").val();n.trigger("qlwapp.save",["qlwapp_save_scheme",a])}))}(o.a)},function(e,t){!function(){e.exports=this.wp.wpColorPicker}()},function(e,t){!function(){e.exports=this.jQuery.select2}()}]);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/backend/js/contact.asset.php CHANGED
@@ -1 +1 @@
1
- <?php return array('dependencies' => array('backbone', 'jquery', 'wp-util'), 'version' => 'edbb11092b881c39e36039f477a982a9');
1
+ <?php return array('dependencies' => array('backbone', 'jquery', 'wp-util'), 'version' => 'faf67eb42e9bc2b2244e52a81de54569');
assets/backend/js/contact.js CHANGED
@@ -1,698 +1 @@
1
- /******/ (function(modules) { // webpackBootstrap
2
- /******/ // The module cache
3
- /******/ var installedModules = {};
4
- /******/
5
- /******/ // The require function
6
- /******/ function __webpack_require__(moduleId) {
7
- /******/
8
- /******/ // Check if module is in cache
9
- /******/ if(installedModules[moduleId]) {
10
- /******/ return installedModules[moduleId].exports;
11
- /******/ }
12
- /******/ // Create a new module (and put it into the cache)
13
- /******/ var module = installedModules[moduleId] = {
14
- /******/ i: moduleId,
15
- /******/ l: false,
16
- /******/ exports: {}
17
- /******/ };
18
- /******/
19
- /******/ // Execute the module function
20
- /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
21
- /******/
22
- /******/ // Flag the module as loaded
23
- /******/ module.l = true;
24
- /******/
25
- /******/ // Return the exports of the module
26
- /******/ return module.exports;
27
- /******/ }
28
- /******/
29
- /******/
30
- /******/ // expose the modules object (__webpack_modules__)
31
- /******/ __webpack_require__.m = modules;
32
- /******/
33
- /******/ // expose the module cache
34
- /******/ __webpack_require__.c = installedModules;
35
- /******/
36
- /******/ // define getter function for harmony exports
37
- /******/ __webpack_require__.d = function(exports, name, getter) {
38
- /******/ if(!__webpack_require__.o(exports, name)) {
39
- /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
40
- /******/ }
41
- /******/ };
42
- /******/
43
- /******/ // define __esModule on exports
44
- /******/ __webpack_require__.r = function(exports) {
45
- /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
46
- /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
47
- /******/ }
48
- /******/ Object.defineProperty(exports, '__esModule', { value: true });
49
- /******/ };
50
- /******/
51
- /******/ // create a fake namespace object
52
- /******/ // mode & 1: value is a module id, require it
53
- /******/ // mode & 2: merge all properties of value into the ns
54
- /******/ // mode & 4: return value when already ns object
55
- /******/ // mode & 8|1: behave like require
56
- /******/ __webpack_require__.t = function(value, mode) {
57
- /******/ if(mode & 1) value = __webpack_require__(value);
58
- /******/ if(mode & 8) return value;
59
- /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
60
- /******/ var ns = Object.create(null);
61
- /******/ __webpack_require__.r(ns);
62
- /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
63
- /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
64
- /******/ return ns;
65
- /******/ };
66
- /******/
67
- /******/ // getDefaultExport function for compatibility with non-harmony modules
68
- /******/ __webpack_require__.n = function(module) {
69
- /******/ var getter = module && module.__esModule ?
70
- /******/ function getDefault() { return module['default']; } :
71
- /******/ function getModuleExports() { return module; };
72
- /******/ __webpack_require__.d(getter, 'a', getter);
73
- /******/ return getter;
74
- /******/ };
75
- /******/
76
- /******/ // Object.prototype.hasOwnProperty.call
77
- /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
78
- /******/
79
- /******/ // __webpack_public_path__
80
- /******/ __webpack_require__.p = "";
81
- /******/
82
- /******/
83
- /******/ // Load entry module and return exports
84
- /******/ return __webpack_require__(__webpack_require__.s = "./src/backend/contact.js");
85
- /******/ })
86
- /************************************************************************/
87
- /******/ ({
88
-
89
- /***/ "./src/backend/contact.js":
90
- /*!********************************!*\
91
- !*** ./src/backend/contact.js ***!
92
- \********************************/
93
- /*! no exports provided */
94
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
95
-
96
- "use strict";
97
- __webpack_require__.r(__webpack_exports__);
98
- /* harmony import */ var wp_util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! wp-util */ "wp-util");
99
- /* harmony import */ var wp_util__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(wp_util__WEBPACK_IMPORTED_MODULE_0__);
100
- /* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! jquery */ "jquery");
101
- /* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_1__);
102
- /* harmony import */ var backbone__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! backbone */ "backbone");
103
- /* harmony import */ var backbone__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(backbone__WEBPACK_IMPORTED_MODULE_2__);
104
-
105
-
106
-
107
-
108
- (function ($) {
109
- var count = 0,
110
- timer;
111
-
112
- var is_blocked = function is_blocked($node) {
113
- return $node.is('.processing') || $node.parents('.processing').length;
114
- }; //fix
115
-
116
-
117
- var block = function block() {
118
- //var $node = $('#qlwapp_modal');
119
- // if (!is_blocked($node)) {
120
- $('#qlwapp_modal').addClass('processing'); // }
121
- };
122
-
123
- var unblock = function unblock() {
124
- $('#qlwapp_modal').removeClass('processing');
125
- };
126
-
127
- _.mixin({
128
- escapeHtml: function escapeHtml(attribute) {
129
- return attribute.replace('&amp;', /&/g).replace(/&gt;/g, ">").replace(/&lt;/g, "<").replace(/&quot;/g, '"').replace(/&#039;/g, "'");
130
- }
131
- });
132
-
133
- var Contact = Backbone.Model.extend({
134
- defaults: qlwapp_contact.args
135
- });
136
- var SubHeader = Backbone.View.extend({
137
- templates: {},
138
- initialize: function initialize(options) {
139
- this.templates.window = wp.template(options.subview);
140
- },
141
- render: function render() {
142
- var modal = this;
143
- modal.$el.html(modal.templates.window(modal.attributes));
144
- return this;
145
- }
146
- });
147
- var SubFooter = Backbone.View.extend({
148
- templates: {},
149
- initialize: function initialize(options) {
150
- this.templates.window = wp.template(options.subview);
151
- },
152
- render: function render() {
153
- var modal = this;
154
- modal.$el.html(modal.templates.window(modal.attributes));
155
- return this;
156
- }
157
- });
158
- var SubTabs = Backbone.View.extend({
159
- templates: {},
160
- initialize: function initialize(options) {
161
- this.templates.window = wp.template(options.subview);
162
- },
163
- render: function render() {
164
- var modal = this;
165
- modal.$el.html(modal.templates.window(modal.attributes));
166
- return this;
167
- }
168
- });
169
- var SubContact = Backbone.View.extend({
170
- templates: {},
171
- initialize: function initialize(options) {
172
- this.templates.window = wp.template(options.subview);
173
- },
174
- render: function render() {
175
- var modal = this;
176
- modal.$el.html(modal.templates.window(modal.attributes));
177
- return this;
178
- }
179
- });
180
- var SubViewChat = Backbone.View.extend({
181
- templates: {},
182
- initialize: function initialize(options) {
183
- this.templates.window = wp.template(options.subview);
184
- },
185
- render: function render() {
186
- var modal = this;
187
- modal.$el.html(modal.templates.window(modal.attributes));
188
- return this;
189
- }
190
- });
191
- var SubVisibility = Backbone.View.extend({
192
- templates: {},
193
- initialize: function initialize(options) {
194
- this.templates.window = wp.template(options.subview);
195
- },
196
- render: function render() {
197
- var modal = this;
198
- modal.$el.html(modal.templates.window(modal.attributes));
199
- return this;
200
- }
201
- });
202
- var SubInfo = Backbone.View.extend({
203
- templates: {},
204
- initialize: function initialize(options) {
205
- this.templates.window = wp.template(options.subview);
206
- },
207
- render: function render() {
208
- var modal = this;
209
- modal.$el.html(modal.templates.window(modal.attributes));
210
- return this;
211
- }
212
- });
213
- var LoadTemplate = Backbone.View.extend({
214
- templates: {},
215
- initialize: function initialize(options) {
216
- this.templates.window = wp.template(options.subview);
217
- },
218
- render: function render() {
219
- var modal = this;
220
- modal.$el.html(modal.templates.window(modal.attributes));
221
- return this;
222
- }
223
- });
224
- var ContactView = Backbone.View.extend({
225
- events: {
226
- 'change input': 'enable',
227
- 'change textarea': 'enable',
228
- 'change select': 'enable',
229
- 'click .media-modal-backdrop': 'close',
230
- 'click .media-modal-close': 'close',
231
- 'click .media-modal-prev': 'edit',
232
- 'click .media-modal-next': 'edit',
233
- 'change .media-modal-change': 'change',
234
- 'change .media-modal-subview': 'subview',
235
- 'submit .media-modal-form': 'submit'
236
- },
237
- templates: {},
238
- initialize: function initialize() {
239
- _.bindAll(this, 'open', 'edit', 'change', 'subview', 'load', 'render', 'close', 'submit');
240
-
241
- this.init();
242
- this.open();
243
- },
244
- init: function init() {
245
- this.templates.window = wp.template('qlwapp-modal-window');
246
- },
247
- LoadTemplate1: function LoadTemplate1(options) {
248
- var x = Backbone.View.extend({
249
- templates: {},
250
- initialize: function initialize(options) {
251
- // this.model.attributes = options.attributes;
252
- this.templates.window = wp.template(options.subview); // return this.init();
253
- },
254
- render: function render() {
255
- var modal = this;
256
- modal.$el.html(modal.templates.window(modal.attributes));
257
- return this;
258
- }
259
- });
260
- return x;
261
- },
262
- assign: function assign(view, selector) {
263
- view.setElement(this.$(selector)).render();
264
- },
265
- render: function render() {
266
- var modal = this; // get active tab from the previous modal
267
-
268
- var tab = this.$el.find('ul.wc-tabs li.active a').attr('href');
269
- modal.$el.html(modal.templates.window(modal.model.attributes));
270
- this.header = new SubHeader({
271
- subview: "subview-header",
272
- attributes: modal.model.attributes
273
- });
274
- this.footer = new SubFooter({
275
- subview: "subview-footer",
276
- attributes: modal.model.attributes
277
- });
278
- this.tabs = new SubTabs({
279
- subview: "subview-tabs",
280
- attributes: modal.model.attributes
281
- });
282
- this.contact = new SubContact({
283
- subview: "subview-contact",
284
- attributes: modal.model.attributes
285
- });
286
- this.contact_chat = new SubViewChat({
287
- subview: "subview-contact-chat",
288
- attributes: modal.model.attributes
289
- });
290
- this.info = new SubInfo({
291
- subview: "subview-contact-info",
292
- attributes: modal.model.attributes
293
- });
294
- this.visibility = new SubVisibility({
295
- subview: "subview-visibility",
296
- attributes: modal.model.attributes
297
- });
298
- this.assign(this.header, '#panel-header');
299
- this.assign(this.footer, '#panel-footer');
300
- this.assign(this.tabs, '#panel-tabs');
301
- this.assign(this.contact, '#panel-contact');
302
- this.assign(this.contact_chat, '#subpanel-contact-chat');
303
- this.assign(this.info, '#panel-info');
304
- this.assign(this.visibility, '#panel-visibility');
305
-
306
- _.delay(function () {
307
- modal.$el.trigger('qlwapp-enhanced-select');
308
- modal.$el.trigger('qlwapp-tab-panels', tab); // modal.$el.trigger('init_tooltips');
309
- }, 100);
310
- },
311
- load: function load() {
312
- var modal = this;
313
- block();
314
- $.ajax({
315
- url: ajaxurl,
316
- data: {
317
- action: 'qlwapp_edit_contact',
318
- nonce: qlwapp_contact.nonce.qlwapp_edit_contact,
319
- contact_id: this.model.attributes.id
320
- },
321
- dataType: 'json',
322
- type: 'POST',
323
- beforeSend: function beforeSend() {// block($modal); fix si se puede
324
- },
325
- complete: function complete() {
326
- unblock();
327
- },
328
- error: function error() {
329
- alert('Error!');
330
- },
331
- success: function success(response) {
332
- if (response.success) {
333
- modal.model.set(response.data);
334
- modal.render();
335
- } else {
336
- alert(response.data);
337
- }
338
- }
339
- });
340
- },
341
- edit: function edit(e) {
342
- e.preventDefault();
343
- var modal = this,
344
- $button = $(e.target),
345
- contact_count = parseInt($('#qlwapp_contacts_table tr[data-contact_id]').length),
346
- order = parseInt(modal.model.get('order')); //var global
347
-
348
- count++;
349
-
350
- if (timer) {
351
- clearTimeout(timer);
352
- }
353
-
354
- timer = setTimeout(function () {
355
- if ($button.hasClass('media-modal-next')) {
356
- order = Math.min(order + count, contact_count);
357
- } else {
358
- order = Math.max(order - count, 1);
359
- }
360
-
361
- modal.model.set({
362
- id: parseInt($('#qlwapp_contacts_table tr[data-contact_position=' + order + ']').data('contact_id'))
363
- });
364
- count = 0;
365
- modal.load();
366
- }, 300);
367
- },
368
- open: function open(e) {
369
- $('body').addClass('modal-open').append(this.$el);
370
-
371
- if (this.model.attributes.id == undefined) {
372
- _.delay(function () {
373
- unblock();
374
- }, 100);
375
-
376
- return;
377
- }
378
-
379
- this.load();
380
- },
381
- update: function update(e) {
382
- e.preventDefault();
383
- var $field = $(e.target),
384
- name = $field.attr('name'),
385
- value = $field.val();
386
-
387
- if (e.target.type === 'checkbox') {
388
- value = $field.prop('checked') === true ? 1 : 0;
389
- }
390
-
391
- this.model.attributes[name] = value;
392
- this.model.changed[name] = value;
393
- },
394
- change: function change(e) {
395
- e.preventDefault();
396
- this.update(e); // this.render();
397
- },
398
- subview: function subview(e) {
399
- this.contact_chat.render();
400
- },
401
- reload: function reload(e) {
402
- if (this.$el.find('#qlwapp_modal').hasClass('reload')) {
403
- location.reload();
404
- return;
405
- }
406
-
407
- this.remove();
408
- return;
409
- },
410
- close: function close(e) {
411
- e.preventDefault();
412
- this.undelegateEvents();
413
- $(document).off('focusin'); // $('body').removeClass('modal-open');
414
- // if necesary reload...
415
-
416
- this.$el.find('#qlwapp_modal').addClass('reload');
417
- this.reload(e);
418
- return;
419
- },
420
- enable: function enable(e) {
421
- $('.media-modal-submit').prop('disabled', false);
422
- },
423
- submit: function submit(e) {
424
- e.preventDefault();
425
- var modal = this,
426
- $modal = modal.$el.find('#qlwapp_modal'),
427
- $details = $modal.find('.attachment-details');
428
- console.log($('form', this.$el).serializeArray());
429
- $.ajax({
430
- url: ajaxurl,
431
- data: {
432
- action: 'qlwapp_save_contact',
433
- nonce: qlwapp_contact.nonce.qlwapp_save_contact,
434
- contact_id: modal.model.attributes.id,
435
- contact_data: $('form', this.$el).serialize()
436
- },
437
- dataType: 'json',
438
- type: 'POST',
439
- beforeSend: function beforeSend() {
440
- $('.media-modal-submit').prop('disabled', true);
441
- $details.addClass('save-waiting');
442
- },
443
- complete: function complete() {
444
- $details.addClass('save-complete');
445
- $details.removeClass('save-waiting');
446
- },
447
- error: function error() {
448
- alert('Error!');
449
- },
450
- success: function success(response) {
451
- //.log(response);
452
- if (response.success) {
453
- if (modal.model.attributes.id == undefined) {
454
- $modal.addClass('reload');
455
- modal.reload(e);
456
- modal.close(e);
457
- }
458
- } else {
459
- alert(response.data);
460
- }
461
- }
462
- });
463
- return false;
464
- }
465
- });
466
- var ContactModal = Backbone.View.extend({
467
- initialize: function initialize(e) {
468
- var $button = $(e.target),
469
- contact_id = $button.closest('[data-contact_id]').data('contact_id');
470
- var model = new Contact();
471
- model.set({
472
- id: contact_id
473
- });
474
- new ContactView({
475
- model: model
476
- }).render();
477
- }
478
- });
479
- var exist_modal = false;
480
- $('.qlwapp_settings_edit').on('click', function (e) {
481
- e.preventDefault();
482
-
483
- if (!exist_modal) {
484
- new ContactModal(e);
485
- exist_modal = true;
486
- }
487
- });
488
- $('#qlwapp_contact_add').on('click', function (e) {
489
- e.preventDefault();
490
- new ContactModal(e);
491
- });
492
- $('.qlwapp_settings_delete').on('click', function (e) {
493
- e.preventDefault();
494
- var nonce = $('#qlwapp_delete_contact_nonce').val();
495
- var $button = $(e.target),
496
- contact_id = $button.closest('[data-contact_id]').data('contact_id');
497
-
498
- if (!confirm(qlwapp_contact.message.contact_confirm_delete)) {
499
- return false;
500
- } else {
501
- $.ajax({
502
- url: ajaxurl,
503
- data: {
504
- action: 'qlwapp_delete_contact',
505
- nonce: nonce,
506
- contact_id: contact_id
507
- },
508
- dataType: 'json',
509
- type: 'POST',
510
- beforeSend: function beforeSend() {// $spinner.addClass('is-active');
511
- },
512
- complete: function complete() {// $spinner.removeClass('is-active');
513
- },
514
- error: function error(response) {
515
- console.log(response);
516
- },
517
- success: function success(response) {
518
- if (response.data) {
519
- location.reload();
520
- } else {
521
- alert(response.data);
522
- }
523
- }
524
- });
525
- }
526
- }); // Sorting
527
- // ---------------------------------------------------------------------------
528
-
529
- $('table#qlwapp_contacts_table tbody').sortable({
530
- items: 'tr',
531
- cursor: 'move',
532
- axis: 'y',
533
- handle: 'td.sort',
534
- scrollSensitivity: 40,
535
- helper: function helper(event, ui) {
536
- ui.children().each(function () {
537
- $(this).width($(this).width());
538
- });
539
- ui.css('left', '0');
540
- return ui;
541
- },
542
- start: function start(event, ui) {
543
- ui.item.css('background-color', '#f6f6f6');
544
- },
545
- stop: function stop(event, ui) {
546
- ui.item.removeAttr('style');
547
- ui.item.trigger('updateMoveButtons');
548
- ui.item.trigger('updateSaveButton');
549
- }
550
- });
551
- $(document).on('updateSaveButton', function () {
552
- $('#qlwapp_contact_order').prop('disabled', false);
553
- }); // Re-order buttons
554
- // ---------------------------------------------------------------------------
555
-
556
- $('.wc-item-reorder-nav').find('.wc-move-up, .wc-move-down').on('click', function () {
557
- var moveBtn = $(this),
558
- $row = moveBtn.closest('tr');
559
- moveBtn.focus();
560
- var isMoveUp = moveBtn.is('.wc-move-up'),
561
- isMoveDown = moveBtn.is('.wc-move-down');
562
-
563
- if (isMoveUp) {
564
- var $previewRow = $row.prev('tr');
565
-
566
- if ($previewRow && $previewRow.length) {
567
- $previewRow.before($row); // wp.a11y.speak( params.i18n_moved_up );
568
- }
569
- } else if (isMoveDown) {
570
- var $nextRow = $row.next('tr');
571
-
572
- if ($nextRow && $nextRow.length) {
573
- $nextRow.after($row); // wp.a11y.speak( params.i18n_moved_down );
574
- }
575
- }
576
-
577
- moveBtn.focus(); // Re-focus after the container was moved.
578
-
579
- moveBtn.closest('table').trigger('updateMoveButtons');
580
- moveBtn.closest('table').trigger('updateSaveButton');
581
- });
582
- $('.wc-item-reorder-nav').closest('table').on('updateMoveButtons', function () {
583
- var table = $(this),
584
- lastRow = $(this).find('tbody tr:last'),
585
- firstRow = $(this).find('tbody tr:first');
586
- table.find('.wc-item-reorder-nav .wc-move-disabled').removeClass('wc-move-disabled').attr({
587
- 'tabindex': '0',
588
- 'aria-hidden': 'false'
589
- });
590
- firstRow.find('.wc-item-reorder-nav .wc-move-up').addClass('wc-move-disabled').attr({
591
- 'tabindex': '-1',
592
- 'aria-hidden': 'true'
593
- });
594
- lastRow.find('.wc-item-reorder-nav .wc-move-down').addClass('wc-move-disabled').attr({
595
- 'tabindex': '-1',
596
- 'aria-hidden': 'true'
597
- });
598
- });
599
- $('table#qlwapp_contacts_table tbody').trigger('updateMoveButtons'); //save order of contact
600
- // Ajax order Submit
601
-
602
- $(document).on('submit', '#qlwapp_contacts_form', function (e) {
603
- e.preventDefault();
604
- var $form = $(this),
605
- $spinner = $form.find('.settings-save-status .spinner'),
606
- $saved = $form.find('.settings-save-status .saved');
607
- $.ajax({
608
- url: ajaxurl,
609
- data: {
610
- action: 'qlwapp_save_contact_order',
611
- nonce: qlwapp_contact.nonce.qlwapp_save_contact_order,
612
- contact_data: $form.serialize()
613
- },
614
- dataType: 'json',
615
- type: 'POST',
616
- beforeSend: function beforeSend() {
617
- $spinner.addClass('is-active');
618
- },
619
- complete: function complete() {
620
- $spinner.removeClass('is-active');
621
- },
622
- error: function error(response) {
623
- console.log(response);
624
- },
625
- success: function success(response) {
626
- $saved.addClass('is-active');
627
- $('#qlwapp_contact_order').prop('disabled', true);
628
-
629
- if (response.success) {
630
- setTimeout(function () {
631
- $saved.removeClass('is-active');
632
- }, 1500);
633
- } else {
634
- alert(response.data);
635
- }
636
- }
637
- });
638
- return false;
639
- });
640
- $(document).on('qlwapp-tab-panels', function (e, active) {
641
- var $modal = $(e.target),
642
- $tabs = $modal.find('ul.qlwapp-tabs'),
643
- $active = $tabs.find('a[href="' + active + '"]');
644
- $tabs.show();
645
- $tabs.find('a').click(function (e) {
646
- e.preventDefault();
647
- var panel_wrap = $(this).closest('div.panel-wrap');
648
- $tabs.find('li', panel_wrap).removeClass('active');
649
- $(this).parent().addClass('active');
650
- $('div.panel', panel_wrap).hide();
651
- $($(this).attr('href')).show();
652
- });
653
-
654
- if ($active.length && $($active.attr('href')).length) {
655
- $active.click();
656
- } else {
657
- $tabs.find('li.active').find('a').click();
658
- }
659
- });
660
- })(jquery__WEBPACK_IMPORTED_MODULE_1___default.a);
661
-
662
- /***/ }),
663
-
664
- /***/ "backbone":
665
- /*!***********************************************!*\
666
- !*** external {"this":["window","Backbone"]} ***!
667
- \***********************************************/
668
- /*! no static exports found */
669
- /***/ (function(module, exports) {
670
-
671
- (function() { module.exports = this["window"]["Backbone"]; }());
672
-
673
- /***/ }),
674
-
675
- /***/ "jquery":
676
- /*!**********************************!*\
677
- !*** external {"this":"jQuery"} ***!
678
- \**********************************/
679
- /*! no static exports found */
680
- /***/ (function(module, exports) {
681
-
682
- (function() { module.exports = this["jQuery"]; }());
683
-
684
- /***/ }),
685
-
686
- /***/ "wp-util":
687
- /*!***************************************!*\
688
- !*** external {"this":["wp","util"]} ***!
689
- \***************************************/
690
- /*! no static exports found */
691
- /***/ (function(module, exports) {
692
-
693
- (function() { module.exports = this["wp"]["util"]; }());
694
-
695
- /***/ })
696
-
697
- /******/ });
698
- //# sourceMappingURL=contact.js.map
1
+ !function(t){var e={};function a(i){if(e[i])return e[i].exports;var n=e[i]={i:i,l:!1,exports:{}};return t[i].call(n.exports,n,n.exports,a),n.l=!0,n.exports}a.m=t,a.c=e,a.d=function(t,e,i){a.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:i})},a.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},a.t=function(t,e){if(1&e&&(t=a(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var i=Object.create(null);if(a.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var n in t)a.d(i,n,function(e){return t[e]}.bind(null,n));return i},a.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return a.d(e,"a",e),e},a.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},a.p="",a(a.s=1)}([function(t,e){!function(){t.exports=this.jQuery}()},function(t,e,a){"use strict";a.r(e);a(2);var i=a(0),n=a.n(i);a(3);!function(t){var e,a=0,i=function(){t("#qlwapp_modal").removeClass("processing")};_.mixin({escapeHtml:function(t){return t.replace("&amp;",/&/g).replace(/&gt;/g,">").replace(/&lt;/g,"<").replace(/&quot;/g,'"').replace(/&#039;/g,"'")}});var n=Backbone.Model.extend({defaults:qlwapp_contact.args}),s=Backbone.View.extend({templates:{},initialize:function(t){this.templates.window=wp.template(t.subview)},render:function(){return this.$el.html(this.templates.window(this.attributes)),this}}),o=Backbone.View.extend({templates:{},initialize:function(t){this.templates.window=wp.template(t.subview)},render:function(){return this.$el.html(this.templates.window(this.attributes)),this}}),l=Backbone.View.extend({templates:{},initialize:function(t){this.templates.window=wp.template(t.subview)},render:function(){return this.$el.html(this.templates.window(this.attributes)),this}}),r=Backbone.View.extend({templates:{},initialize:function(t){this.templates.window=wp.template(t.subview)},render:function(){return this.$el.html(this.templates.window(this.attributes)),this}}),c=Backbone.View.extend({templates:{},initialize:function(t){this.templates.window=wp.template(t.subview)},render:function(){return this.$el.html(this.templates.window(this.attributes)),this}}),d=Backbone.View.extend({templates:{},initialize:function(t){this.templates.window=wp.template(t.subview)},render:function(){return this.$el.html(this.templates.window(this.attributes)),this}}),u=Backbone.View.extend({templates:{},initialize:function(t){this.templates.window=wp.template(t.subview)},render:function(){return this.$el.html(this.templates.window(this.attributes)),this}}),p=(Backbone.View.extend({templates:{},initialize:function(t){this.templates.window=wp.template(t.subview)},render:function(){return this.$el.html(this.templates.window(this.attributes)),this}}),Backbone.View.extend({events:{"change input":"enable","change textarea":"enable","change select":"enable","click .media-modal-backdrop":"close","click .media-modal-close":"close","click .media-modal-prev":"edit","click .media-modal-next":"edit","change .media-modal-change":"change","change .media-modal-subview":"subview","submit .media-modal-form":"submit"},templates:{},initialize:function(){_.bindAll(this,"open","edit","change","subview","load","render","close","submit"),this.init(),this.open()},init:function(){this.templates.window=wp.template("qlwapp-modal-window")},LoadTemplate1:function(t){return Backbone.View.extend({templates:{},initialize:function(t){this.templates.window=wp.template(t.subview)},render:function(){return this.$el.html(this.templates.window(this.attributes)),this}})},assign:function(t,e){t.setElement(this.$(e)).render()},render:function(){var t=this,e=this.$el.find("ul.wc-tabs li.active a").attr("href");t.$el.html(t.templates.window(t.model.attributes)),this.header=new s({subview:"subview-header",attributes:t.model.attributes}),this.footer=new o({subview:"subview-footer",attributes:t.model.attributes}),this.tabs=new l({subview:"subview-tabs",attributes:t.model.attributes}),this.contact=new r({subview:"subview-contact",attributes:t.model.attributes}),this.contact_chat=new c({subview:"subview-contact-chat",attributes:t.model.attributes}),this.info=new u({subview:"subview-contact-info",attributes:t.model.attributes}),this.visibility=new d({subview:"subview-visibility",attributes:t.model.attributes}),this.assign(this.header,"#panel-header"),this.assign(this.footer,"#panel-footer"),this.assign(this.tabs,"#panel-tabs"),this.assign(this.contact,"#panel-contact"),this.assign(this.contact_chat,"#subpanel-contact-chat"),this.assign(this.info,"#panel-info"),this.assign(this.visibility,"#panel-visibility"),_.delay((function(){t.$el.trigger("qlwapp-enhanced-select"),t.$el.trigger("qlwapp-tab-panels",e)}),100)},load:function(){var e=this;t("#qlwapp_modal").addClass("processing"),t.ajax({url:ajaxurl,data:{action:"qlwapp_edit_contact",nonce:qlwapp_contact.nonce.qlwapp_edit_contact,contact_id:this.model.attributes.id},dataType:"json",type:"POST",beforeSend:function(){},complete:function(){i()},error:function(){alert("Error!")},success:function(t){t.success?(e.model.set(t.data),e.render()):alert(t.data)}})},edit:function(i){i.preventDefault();var n=this,s=t(i.target),o=parseInt(t("#qlwapp_contacts_table tr[data-contact_id]").length),l=parseInt(n.model.get("order"));a++,e&&clearTimeout(e),e=setTimeout((function(){l=s.hasClass("media-modal-next")?Math.min(l+a,o):Math.max(l-a,1),n.model.set({id:parseInt(t("#qlwapp_contacts_table tr[data-contact_position="+l+"]").data("contact_id"))}),a=0,n.load()}),300)},open:function(e){t("body").addClass("modal-open").append(this.$el),null!=this.model.attributes.id?this.load():_.delay((function(){i()}),100)},update:function(e){e.preventDefault();var a=t(e.target),i=a.attr("name"),n=a.val();"checkbox"===e.target.type&&(n=!0===a.prop("checked")?1:0),this.model.attributes[i]=n,this.model.changed[i]=n},change:function(t){t.preventDefault(),this.update(t)},subview:function(t){this.contact_chat.render()},reload:function(t){this.$el.find("#qlwapp_modal").hasClass("reload")?location.reload():this.remove()},close:function(e){e.preventDefault(),this.undelegateEvents(),t(document).off("focusin"),this.$el.find("#qlwapp_modal").addClass("reload"),this.reload(e)},enable:function(e){t(".media-modal-submit").prop("disabled",!1)},submit:function(e){e.preventDefault();var a=this,i=a.$el.find("#qlwapp_modal"),n=i.find(".attachment-details");return console.log(t("form",this.$el).serializeArray()),t.ajax({url:ajaxurl,data:{action:"qlwapp_save_contact",nonce:qlwapp_contact.nonce.qlwapp_save_contact,contact_id:a.model.attributes.id,contact_data:t("form",this.$el).serialize()},dataType:"json",type:"POST",beforeSend:function(){t(".media-modal-submit").prop("disabled",!0),n.addClass("save-waiting")},complete:function(){n.addClass("save-complete"),n.removeClass("save-waiting")},error:function(){alert("Error!")},success:function(t){t.success?null==a.model.attributes.id&&(i.addClass("reload"),a.reload(e),a.close(e)):alert(t.data)}}),!1}})),f=Backbone.View.extend({initialize:function(e){var a=t(e.target).closest("[data-contact_id]").data("contact_id"),i=new n;i.set({id:a}),new p({model:i}).render()}}),m=!1;t(".qlwapp_settings_edit").on("click",(function(t){t.preventDefault(),m||(new f(t),m=!0)})),t("#qlwapp_contact_add").on("click",(function(t){t.preventDefault(),new f(t)})),t(".qlwapp_settings_delete").on("click",(function(e){e.preventDefault();var a=t("#qlwapp_delete_contact_nonce").val(),i=t(e.target).closest("[data-contact_id]").data("contact_id");if(!confirm(qlwapp_contact.message.contact_confirm_delete))return!1;t.ajax({url:ajaxurl,data:{action:"qlwapp_delete_contact",nonce:a,contact_id:i},dataType:"json",type:"POST",beforeSend:function(){},complete:function(){},error:function(t){console.log(t)},success:function(t){t.data?location.reload():alert(t.data)}})})),t("table#qlwapp_contacts_table tbody").sortable({items:"tr",cursor:"move",axis:"y",handle:"td.sort",scrollSensitivity:40,helper:function(e,a){return a.children().each((function(){t(this).width(t(this).width())})),a.css("left","0"),a},start:function(t,e){e.item.css("background-color","#f6f6f6")},stop:function(t,e){e.item.removeAttr("style"),e.item.trigger("updateMoveButtons"),e.item.trigger("updateSaveButton")}}),t(document).on("updateSaveButton",(function(){t("#qlwapp_contact_order").prop("disabled",!1)})),t(".wc-item-reorder-nav").find(".wc-move-up, .wc-move-down").on("click",(function(){var e=t(this),a=e.closest("tr");e.focus();var i=e.is(".wc-move-up"),n=e.is(".wc-move-down");if(i){var s=a.prev("tr");s&&s.length&&s.before(a)}else if(n){var o=a.next("tr");o&&o.length&&o.after(a)}e.focus(),e.closest("table").trigger("updateMoveButtons"),e.closest("table").trigger("updateSaveButton")})),t(".wc-item-reorder-nav").closest("table").on("updateMoveButtons",(function(){var e=t(this),a=t(this).find("tbody tr:last"),i=t(this).find("tbody tr:first");e.find(".wc-item-reorder-nav .wc-move-disabled").removeClass("wc-move-disabled").attr({tabindex:"0","aria-hidden":"false"}),i.find(".wc-item-reorder-nav .wc-move-up").addClass("wc-move-disabled").attr({tabindex:"-1","aria-hidden":"true"}),a.find(".wc-item-reorder-nav .wc-move-down").addClass("wc-move-disabled").attr({tabindex:"-1","aria-hidden":"true"})})),t("table#qlwapp_contacts_table tbody").trigger("updateMoveButtons"),t(document).on("submit","#qlwapp_contacts_form",(function(e){e.preventDefault();var a=t(this),i=a.find(".settings-save-status .spinner"),n=a.find(".settings-save-status .saved");return t.ajax({url:ajaxurl,data:{action:"qlwapp_save_contact_order",nonce:qlwapp_contact.nonce.qlwapp_save_contact_order,contact_data:a.serialize()},dataType:"json",type:"POST",beforeSend:function(){i.addClass("is-active")},complete:function(){i.removeClass("is-active")},error:function(t){console.log(t)},success:function(e){n.addClass("is-active"),t("#qlwapp_contact_order").prop("disabled",!0),e.success?setTimeout((function(){n.removeClass("is-active")}),1500):alert(e.data)}}),!1})),t(document).on("qlwapp-tab-panels",(function(e,a){var i=t(e.target).find("ul.qlwapp-tabs"),n=i.find('a[href="'+a+'"]');i.show(),i.find("a").click((function(e){e.preventDefault();var a=t(this).closest("div.panel-wrap");i.find("li",a).removeClass("active"),t(this).parent().addClass("active"),t("div.panel",a).hide(),t(t(this).attr("href")).show()})),n.length&&t(n.attr("href")).length?n.click():i.find("li.active").find("a").click()}))}(n.a)},function(t,e){!function(){t.exports=this.wp.util}()},function(t,e){!function(){t.exports=this.window.Backbone}()}]);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/backend/js/main.asset.php CHANGED
@@ -1 +1 @@
1
- <?php return array('dependencies' => array(), 'version' => '185c34758951f88e3e4cc0306a002cc0');
1
+ <?php return array('dependencies' => array(), 'version' => 'c2edb1ebafccded9d0f360f854dc79c7');
assets/backend/js/main.js CHANGED
@@ -1,116 +1 @@
1
- /******/ (function(modules) { // webpackBootstrap
2
- /******/ // The module cache
3
- /******/ var installedModules = {};
4
- /******/
5
- /******/ // The require function
6
- /******/ function __webpack_require__(moduleId) {
7
- /******/
8
- /******/ // Check if module is in cache
9
- /******/ if(installedModules[moduleId]) {
10
- /******/ return installedModules[moduleId].exports;
11
- /******/ }
12
- /******/ // Create a new module (and put it into the cache)
13
- /******/ var module = installedModules[moduleId] = {
14
- /******/ i: moduleId,
15
- /******/ l: false,
16
- /******/ exports: {}
17
- /******/ };
18
- /******/
19
- /******/ // Execute the module function
20
- /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
21
- /******/
22
- /******/ // Flag the module as loaded
23
- /******/ module.l = true;
24
- /******/
25
- /******/ // Return the exports of the module
26
- /******/ return module.exports;
27
- /******/ }
28
- /******/
29
- /******/
30
- /******/ // expose the modules object (__webpack_modules__)
31
- /******/ __webpack_require__.m = modules;
32
- /******/
33
- /******/ // expose the module cache
34
- /******/ __webpack_require__.c = installedModules;
35
- /******/
36
- /******/ // define getter function for harmony exports
37
- /******/ __webpack_require__.d = function(exports, name, getter) {
38
- /******/ if(!__webpack_require__.o(exports, name)) {
39
- /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
40
- /******/ }
41
- /******/ };
42
- /******/
43
- /******/ // define __esModule on exports
44
- /******/ __webpack_require__.r = function(exports) {
45
- /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
46
- /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
47
- /******/ }
48
- /******/ Object.defineProperty(exports, '__esModule', { value: true });
49
- /******/ };
50
- /******/
51
- /******/ // create a fake namespace object
52
- /******/ // mode & 1: value is a module id, require it
53
- /******/ // mode & 2: merge all properties of value into the ns
54
- /******/ // mode & 4: return value when already ns object
55
- /******/ // mode & 8|1: behave like require
56
- /******/ __webpack_require__.t = function(value, mode) {
57
- /******/ if(mode & 1) value = __webpack_require__(value);
58
- /******/ if(mode & 8) return value;
59
- /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
60
- /******/ var ns = Object.create(null);
61
- /******/ __webpack_require__.r(ns);
62
- /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
63
- /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
64
- /******/ return ns;
65
- /******/ };
66
- /******/
67
- /******/ // getDefaultExport function for compatibility with non-harmony modules
68
- /******/ __webpack_require__.n = function(module) {
69
- /******/ var getter = module && module.__esModule ?
70
- /******/ function getDefault() { return module['default']; } :
71
- /******/ function getModuleExports() { return module; };
72
- /******/ __webpack_require__.d(getter, 'a', getter);
73
- /******/ return getter;
74
- /******/ };
75
- /******/
76
- /******/ // Object.prototype.hasOwnProperty.call
77
- /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
78
- /******/
79
- /******/ // __webpack_public_path__
80
- /******/ __webpack_require__.p = "";
81
- /******/
82
- /******/
83
- /******/ // Load entry module and return exports
84
- /******/ return __webpack_require__(__webpack_require__.s = "./src/backend/main.js");
85
- /******/ })
86
- /************************************************************************/
87
- /******/ ({
88
-
89
- /***/ "./src/backend/main.js":
90
- /*!*****************************!*\
91
- !*** ./src/backend/main.js ***!
92
- \*****************************/
93
- /*! no exports provided */
94
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
95
-
96
- "use strict";
97
- __webpack_require__.r(__webpack_exports__);
98
- /* harmony import */ var _scss_editor_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./scss/editor.scss */ "./src/backend/scss/editor.scss");
99
- /* harmony import */ var _scss_editor_scss__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_scss_editor_scss__WEBPACK_IMPORTED_MODULE_0__);
100
-
101
-
102
- /***/ }),
103
-
104
- /***/ "./src/backend/scss/editor.scss":
105
- /*!**************************************!*\
106
- !*** ./src/backend/scss/editor.scss ***!
107
- \**************************************/
108
- /*! no static exports found */
109
- /***/ (function(module, exports) {
110
-
111
- // removed by extract-text-webpack-plugin
112
-
113
- /***/ })
114
-
115
- /******/ });
116
- //# sourceMappingURL=main.js.map
1
+ !function(e){var t={};function r(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=0)}([function(e,t,r){"use strict";r.r(t);r(1)},function(e,t){}]);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/frontend/css/frontend.css CHANGED
@@ -1,776 +1 @@
1
- @font-face {
2
- font-family: "qlwapp-whatsapp";
3
- src: url(data:application/x-font-woff;charset=utf-8;base64,d09GRgABAAAAAAYEAAsAAAAABbgAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABPUy8yAAABCAAAAGAAAABgDxIFKmNtYXAAAAFoAAAAVAAAAFQXVtKHZ2FzcAAAAbwAAAAIAAAACAAAABBnbHlmAAABxAAAAfwAAAH8pb7IGGhlYWQAAAPAAAAANgAAADYUXm9HaGhlYQAAA/gAAAAkAAAAJAfAA8ZobXR4AAAEHAAAABQAAAAUCgAAA2xvY2EAAAQwAAAADAAAAAwAKAESbWF4cAAABDwAAAAgAAAAIAAJAJluYW1lAAAEXAAAAYYAAAGGmUoJ+3Bvc3QAAAXkAAAAIAAAACAAAwAAAAMDAAGQAAUAAAKZAswAAACPApkCzAAAAesAMwEJAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAAAAAAAAAAAAAQAAA6QADwP/AAEADwABAAAAAAQAAAAAAAAAAAAAAIAAAAAAAAwAAAAMAAAAcAAEAAwAAABwAAwABAAAAHAAEADgAAAAKAAgAAgACAAEAIOkA//3//wAAAAAAIOkA//3//wAB/+MXBAADAAEAAAAAAAAAAAAAAAEAAf//AA8AAQAAAAAAAAAAAAIAADc5AQAAAAABAAAAAAAAAAAAAgAANzkBAAAAAAEAAAAAAAAAAAACAAA3OQEAAAAAAwAD/8AD/gPAACcATwCWAAABJicuAScmIyIHDgEHBhUUFhcDJR4BMzE4ATEyNz4BNzY1NCcuAScmATEiJi8BBzcnLgE1NDc+ATc2MzIXHgEXFhcWFx4BFxYVFAcOAQcGIxMuAScmIgcOAQcOAScuAScuAScmNjc+ATc+ATc2JicuAScuASMmIiMiBgcOARUUFhcWFx4BFxYXHgEXHgE3PgE3PgEnLgEnA2kkKSpbMTEzaVxdiSgoIiJIAQ03e0BpXF2KKCgKCiYbHP51OW0xD6ArCiAhIiFyTU1XKygpTCIjHh0XFyAICCEick1NV+cJRAkJDQcGHAYGDAkKOCQdJAYGBwUECgUEBQMDAQMCHQgHEAUGDAcGEwgJJC8FAhEQOCcnMBYkDhcoERI7CAgCAgMMCgMrJBwcJQoKKCiKXFxpQ4E6/vlHHx8oKIldXGkzMTFbKin9Fx4dCSmbEDJzPFdNTHMhIQgIHxcXHh4jIkwpKCtXTU1yISIBPAUhBAMKCSIHBgIFBRogGTYJCQwFBAwGBgkGBgwEBUcTEgMBBwkJMi8vTgYDFxY8IB8UCg0EBwEDAyMWFiIEBAcEAAAAAAEAAAABAAAmrdZpXw889QALBAAAAAAA2KCVZQAAAADYoJVlAAD/wAP+A8AAAAAIAAIAAAAAAAAAAQAAA8D/wAAABAAAAAAAA/4AAQAAAAAAAAAAAAAAAAAAAAUEAAAAAAAAAAAAAAACAAAABAAAAwAAAAAACgAUAB4A/gABAAAABQCXAAMAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAADgCuAAEAAAAAAAEABwAAAAEAAAAAAAIABwBgAAEAAAAAAAMABwA2AAEAAAAAAAQABwB1AAEAAAAAAAUACwAVAAEAAAAAAAYABwBLAAEAAAAAAAoAGgCKAAMAAQQJAAEADgAHAAMAAQQJAAIADgBnAAMAAQQJAAMADgA9AAMAAQQJAAQADgB8AAMAAQQJAAUAFgAgAAMAAQQJAAYADgBSAAMAAQQJAAoANACkaWNvbW9vbgBpAGMAbwBtAG8AbwBuVmVyc2lvbiAxLjAAVgBlAHIAcwBpAG8AbgAgADEALgAwaWNvbW9vbgBpAGMAbwBtAG8AbwBuaWNvbW9vbgBpAGMAbwBtAG8AbwBuUmVndWxhcgBSAGUAZwB1AGwAYQByaWNvbW9vbgBpAGMAbwBtAG8AbwBuRm9udCBnZW5lcmF0ZWQgYnkgSWNvTW9vbi4ARgBvAG4AdAAgAGcAZQBuAGUAcgBhAHQAZQBkACAAYgB5ACAASQBjAG8ATQBvAG8AbgAuAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==) format("woff");
4
- font-weight: normal;
5
- font-style: normal; }
6
-
7
- .qlwapp-whatsapp-icon {
8
- font-family: "qlwapp-whatsapp" !important;
9
- speak: none;
10
- font-style: normal;
11
- font-weight: normal;
12
- font-variant: normal;
13
- text-transform: none;
14
- line-height: 1;
15
- -webkit-font-smoothing: antialiased;
16
- -moz-osx-font-smoothing: grayscale; }
17
-
18
- .qlwapp-whatsapp-icon:before {
19
- content: "\e900"; }
20
-
21
- #qlwapp {
22
- pointer-events: none;
23
- box-sizing: border-box;
24
- /*&.qlwapp-middle-left {
25
- &.qlwapp-button {
26
- .qlwapp-developer,
27
- .qlwapp-toggle {
28
- margin-left: -48px;
29
- padding-left: 60px;
30
- }
31
- }
32
- }
33
-
34
- &.qlwapp-middle-right {
35
- &.qlwapp-button {
36
- .qlwapp-developer,
37
- .qlwapp-toggle {
38
- margin-right: -48px;
39
- padding-right: 60px;
40
- }
41
-
42
- }
43
- }
44
-
45
- &.qlwapp-bottom-left {
46
- &.qlwapp-bubble,
47
- &.qlwapp-button {
48
- .qlwapp-developer,
49
- .qlwapp-toggle {
50
- margin-left: 20px;
51
- }
52
- }
53
-
54
- &.qlwapp-bubble {
55
- .qlwapp-toggle {
56
- .qlwapp-text {
57
- right: auto;
58
- left: 60px;
59
- }
60
- }
61
- }
62
-
63
- .qlwapp-box {
64
- &:before {
65
- right: auto;
66
- left: 20px;
67
- }
68
- }
69
-
70
- }
71
-
72
- &.qlwapp-bottom-right {
73
- &.qlwapp-bubble,
74
- &.qlwapp-button {
75
-
76
- .qlwapp-developer,
77
- .qlwapp-toggle {
78
- margin-right: 20px;
79
- }
80
- }
81
- }*/ }
82
- @media (min-width: 430px) {
83
- #qlwapp {
84
- width: 430px; } }
85
- #qlwapp * {
86
- box-sizing: border-box; }
87
- #qlwapp.qlwapp-js-ready {
88
- display: block; }
89
- #qlwapp.qlwapp-hide, #qlwapp.qlwapp-desktop.mobile, #qlwapp.qlwapp-mobile.desktop {
90
- display: none; }
91
- #qlwapp .qlwapp-readonly, #qlwapp.qlwapp-readonly {
92
- pointer-events: none !important;
93
- opacity: 0.5 !important; }
94
- #qlwapp .qlwapp-disabled, #qlwapp.qlwapp-disabled {
95
- display: none;
96
- visibility: hidden; }
97
- #qlwapp.qlwapp-middle-left, #qlwapp.qlwapp-bottom-left, #qlwapp.qlwapp-middle-right, #qlwapp.qlwapp-bottom-right {
98
- position: fixed;
99
- z-index: 9999999; }
100
- #qlwapp.qlwapp-middle-left, #qlwapp.qlwapp-bottom-left {
101
- right: auto;
102
- left: 0; }
103
- #qlwapp.qlwapp-middle-left .qlwapp-toggle .qlwapp-days,
104
- #qlwapp.qlwapp-middle-left .qlwapp-toggle .qlwapp-time, #qlwapp.qlwapp-bottom-left .qlwapp-toggle .qlwapp-days,
105
- #qlwapp.qlwapp-bottom-left .qlwapp-toggle .qlwapp-time {
106
- left: 0;
107
- right: auto; }
108
- #qlwapp.qlwapp-middle-left.qlwapp-bubble .qlwapp-developer,
109
- #qlwapp.qlwapp-middle-left.qlwapp-bubble .qlwapp-toggle, #qlwapp.qlwapp-middle-left.qlwapp-button .qlwapp-developer,
110
- #qlwapp.qlwapp-middle-left.qlwapp-button .qlwapp-toggle, #qlwapp.qlwapp-bottom-left.qlwapp-bubble .qlwapp-developer,
111
- #qlwapp.qlwapp-bottom-left.qlwapp-bubble .qlwapp-toggle, #qlwapp.qlwapp-bottom-left.qlwapp-button .qlwapp-developer,
112
- #qlwapp.qlwapp-bottom-left.qlwapp-button .qlwapp-toggle {
113
- margin-left: 20px; }
114
- #qlwapp.qlwapp-middle-left.qlwapp-bubble .qlwapp-toggle .qlwapp-text, #qlwapp.qlwapp-bottom-left.qlwapp-bubble .qlwapp-toggle .qlwapp-text {
115
- right: auto;
116
- left: 60px; }
117
- #qlwapp.qlwapp-middle-left .qlwapp-box:before, #qlwapp.qlwapp-bottom-left .qlwapp-box:before {
118
- right: auto;
119
- left: 20px; }
120
- #qlwapp.qlwapp-middle-right, #qlwapp.qlwapp-bottom-right {
121
- left: auto;
122
- right: 0; }
123
- #qlwapp.qlwapp-middle-right .qlwapp-toggle .qlwapp-days,
124
- #qlwapp.qlwapp-middle-right .qlwapp-toggle .qlwapp-time, #qlwapp.qlwapp-bottom-right .qlwapp-toggle .qlwapp-days,
125
- #qlwapp.qlwapp-bottom-right .qlwapp-toggle .qlwapp-time {
126
- left: auto;
127
- right: 0; }
128
- #qlwapp.qlwapp-middle-right.qlwapp-bubble .qlwapp-developer,
129
- #qlwapp.qlwapp-middle-right.qlwapp-bubble .qlwapp-toggle, #qlwapp.qlwapp-middle-right.qlwapp-button .qlwapp-developer,
130
- #qlwapp.qlwapp-middle-right.qlwapp-button .qlwapp-toggle, #qlwapp.qlwapp-bottom-right.qlwapp-bubble .qlwapp-developer,
131
- #qlwapp.qlwapp-bottom-right.qlwapp-bubble .qlwapp-toggle, #qlwapp.qlwapp-bottom-right.qlwapp-button .qlwapp-developer,
132
- #qlwapp.qlwapp-bottom-right.qlwapp-button .qlwapp-toggle {
133
- margin-right: 20px; }
134
- #qlwapp.qlwapp-middle-left, #qlwapp.qlwapp-middle-right {
135
- top: 40%;
136
- bottom: auto; }
137
- #qlwapp.qlwapp-middle-left .qlwapp-developer, #qlwapp.qlwapp-middle-right .qlwapp-developer {
138
- padding: 0 24px; }
139
- #qlwapp.qlwapp-middle-left.qlwapp-button .qlwapp-developer,
140
- #qlwapp.qlwapp-middle-left.qlwapp-button .qlwapp-toggle {
141
- margin-left: -48px;
142
- padding-left: 60px; }
143
- #qlwapp.qlwapp-middle-right.qlwapp-button .qlwapp-developer,
144
- #qlwapp.qlwapp-middle-right.qlwapp-button .qlwapp-toggle {
145
- margin-right: -48px;
146
- padding-right: 60px; }
147
- #qlwapp.qlwapp-bottom-left, #qlwapp.qlwapp-bottom-right {
148
- top: auto;
149
- bottom: 0; }
150
- #qlwapp.qlwapp-rounded.qlwapp-bubble .qlwapp-toggle {
151
- border-radius: 50%; }
152
- #qlwapp.qlwapp-rounded.qlwapp-button .qlwapp-toggle {
153
- border-radius: 50px; }
154
- @media (min-width: 430px) {
155
- #qlwapp.qlwapp-rounded .qlwapp-box {
156
- border-radius: 8px; } }
157
- #qlwapp.qlwapp-rounded .qlwapp-box .qlwapp-user,
158
- #qlwapp.qlwapp-rounded .qlwapp-box .qlwapp-message {
159
- border-radius: 4px; }
160
- #qlwapp p:last-child {
161
- margin: 0; }
162
- #qlwapp time {
163
- opacity: 0.8;
164
- font-style: italic;
165
- font-size: 10px; }
166
- #qlwapp .qlwapp-no-contacts {
167
- display: flex;
168
- height: 134px;
169
- justify-content: center;
170
- align-items: center; }
171
- #qlwapp .qlwapp-container {
172
- display: flex;
173
- flex-direction: column; }
174
- #qlwapp .qlwapp-clearfix:before, #qlwapp .qlwapp-clearfix:after {
175
- content: "";
176
- display: block;
177
- clear: both; }
178
- #qlwapp .qlwapp-previous,
179
- #qlwapp .qlwapp-close {
180
- display: block;
181
- opacity: 0.8;
182
- font-style: unset;
183
- font-size: 24px;
184
- font-weight: bold;
185
- width: 24px;
186
- height: 24px;
187
- cursor: pointer;
188
- text-align: center;
189
- line-height: 24px;
190
- z-index: 1; }
191
- #qlwapp .qlwapp-previous {
192
- width: 16px;
193
- height: 36px;
194
- cursor: pointer;
195
- text-align: center;
196
- line-height: 36px;
197
- margin-right: auto; }
198
- #qlwapp .qlwapp-developer {
199
- font-size: 8px;
200
- top: -20px;
201
- position: relative; }
202
- #qlwapp .qlwapp-developer,
203
- #qlwapp .qlwapp-toggle {
204
- display: inline-flex;
205
- align-items: center;
206
- justify-content: center;
207
- margin-left: auto;
208
- margin-right: auto; }
209
- #qlwapp .qlwapp-toggle {
210
- pointer-events: all;
211
- cursor: pointer;
212
- box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.06), 0 2px 32px 0 rgba(0, 0, 0, 0.16);
213
- margin-top: 24px;
214
- margin-bottom: 24px;
215
- position: relative;
216
- text-decoration: none; }
217
- #qlwapp .qlwapp-toggle, #qlwapp .qlwapp-toggle:active, #qlwapp .qlwapp-toggle:focus, #qlwapp .qlwapp-toggle:hover {
218
- outline: none;
219
- text-decoration: none; }
220
- #qlwapp .qlwapp-toggle .qlwapp-days,
221
- #qlwapp .qlwapp-toggle .qlwapp-time {
222
- position: absolute;
223
- bottom: -2em;
224
- color: initial;
225
- font-size: 10px;
226
- display: inline-block;
227
- top: auto;
228
- width: 120px; }
229
- #qlwapp .qlwapp-days > span {
230
- display: none; }
231
- #qlwapp .qlwapp-days > span.qlwapp-available-day {
232
- display: inline-block !important; }
233
- #qlwapp .qlwapp-avatar .qlwapp-avatar-container {
234
- overflow: hidden;
235
- border-radius: 50%;
236
- width: inherit;
237
- height: inherit;
238
- box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.5); }
239
- #qlwapp .qlwapp-avatar .qlwapp-avatar-container img {
240
- width: 100%;
241
- height: auto; }
242
- #qlwapp.qlwapp-bubble .qlwapp-toggle {
243
- width: 60px;
244
- height: 60px; }
245
- #qlwapp.qlwapp-bubble .qlwapp-toggle .qlwapp-icon,
246
- #qlwapp.qlwapp-bubble .qlwapp-toggle .qlwapp-close {
247
- position: absolute;
248
- display: block;
249
- pointer-events: none;
250
- font-size: 24px; }
251
- #qlwapp.qlwapp-bubble .qlwapp-toggle .qlwapp-text {
252
- position: absolute;
253
- right: 60px;
254
- height: 60px;
255
- margin: 0 24px;
256
- display: flex;
257
- align-items: center;
258
- justify-content: flex-end;
259
- font-weight: bold;
260
- white-space: pre; }
261
- #qlwapp.qlwapp-button .qlwapp-toggle {
262
- height: 40px;
263
- white-space: nowrap;
264
- padding: 12px 24px; }
265
- #qlwapp.qlwapp-button .qlwapp-toggle .qlwapp-icon {
266
- margin: 0 12px 0 0; }
267
- #qlwapp.qlwapp-button .qlwapp-toggle .qlwapp-close {
268
- display: none; }
269
- #qlwapp .qlwapp-box {
270
- pointer-events: all;
271
- padding-bottom: 56px;
272
- position: fixed;
273
- top: auto;
274
- bottom: 0;
275
- left: 0;
276
- right: 0;
277
- z-index: 99999;
278
- box-shadow: 0px 5px 40px 5px rgba(0, 0, 0, 0.5); }
279
- @media (min-width: 430px) {
280
- #qlwapp .qlwapp-box {
281
- position: relative;
282
- top: auto;
283
- bottom: auto;
284
- left: auto;
285
- right: auto;
286
- box-shadow: 0 8px 25px -5px rgba(45, 62, 79, 0.15);
287
- margin-top: 24px;
288
- margin-left: 24px;
289
- margin-right: 24px;
290
- margin-bottom: 12px; }
291
- #qlwapp .qlwapp-box:before {
292
- content: "";
293
- position: absolute;
294
- bottom: -6px;
295
- right: 24px;
296
- width: 13px;
297
- height: 13px;
298
- transform: rotate(45deg); }
299
- #qlwapp .qlwapp-box .qlwapp-header {
300
- border-top-left-radius: inherit;
301
- border-top-right-radius: inherit; }
302
- #qlwapp .qlwapp-box .qlwapp-footer,
303
- #qlwapp .qlwapp-box .qlwapp-response {
304
- border-bottom-left-radius: inherit;
305
- border-bottom-right-radius: inherit; } }
306
- #qlwapp .qlwapp-box .qlwapp-header {
307
- position: relative;
308
- overflow: hidden; }
309
- #qlwapp .qlwapp-box .qlwapp-header:before {
310
- content: "";
311
- position: absolute;
312
- top: 0;
313
- bottom: 0;
314
- left: 0;
315
- right: 0;
316
- background: linear-gradient(315deg, transparent 0%, rgba(0, 0, 0, 0.05) 100%); }
317
- #qlwapp .qlwapp-box .qlwapp-header .qlwapp-close {
318
- position: absolute;
319
- top: 12px;
320
- right: 12px; }
321
- @media (min-width: 430px) {
322
- #qlwapp .qlwapp-box .qlwapp-header .qlwapp-close {
323
- position: absolute;
324
- top: 7px;
325
- right: 7px;
326
- font-size: 18px; } }
327
- #qlwapp .qlwapp-box .qlwapp-header .qlwapp-description {
328
- position: relative;
329
- display: flex;
330
- align-items: center; }
331
- #qlwapp .qlwapp-box .qlwapp-description,
332
- #qlwapp .qlwapp-box .qlwapp-contact {
333
- padding: 12px 36px;
334
- height: 100%; }
335
- #qlwapp .qlwapp-box .qlwapp-description p,
336
- #qlwapp .qlwapp-box .qlwapp-description h3 {
337
- color: inherit;
338
- font-family: inherit;
339
- margin: 0; }
340
- #qlwapp .qlwapp-box .qlwapp-description h3 {
341
- margin: 0 0 0.25em 0; }
342
- #qlwapp .qlwapp-box .qlwapp-contact {
343
- display: flex;
344
- justify-content: flex-end;
345
- align-items: center; }
346
- #qlwapp .qlwapp-box .qlwapp-contact .qlwapp-previous {
347
- position: relative;
348
- left: -16px; }
349
- #qlwapp .qlwapp-box .qlwapp-contact .qlwapp-previous > i {
350
- line-height: 36px; }
351
- #qlwapp .qlwapp-box .qlwapp-contact .qlwapp-avatar {
352
- width: 42px;
353
- height: 42px; }
354
- #qlwapp .qlwapp-box .qlwapp-contact .qlwapp-label,
355
- #qlwapp .qlwapp-box .qlwapp-contact .qlwapp-name {
356
- color: inherit; }
357
- #qlwapp .qlwapp-box .qlwapp-account {
358
- color: inherit;
359
- padding: 16px 36px;
360
- display: flex;
361
- align-items: center;
362
- overflow: hidden;
363
- position: relative;
364
- cursor: pointer;
365
- width: 100%;
366
- text-decoration: none; }
367
- #qlwapp .qlwapp-box .qlwapp-account:only-of-type {
368
- padding-top: 36px;
369
- padding-bottom: 36px; }
370
- #qlwapp .qlwapp-box .qlwapp-info {
371
- padding: 0 16px; }
372
- #qlwapp .qlwapp-box .qlwapp-avatar {
373
- position: relative;
374
- width: 62px;
375
- height: 62px; }
376
- #qlwapp .qlwapp-box .qlwapp-avatar:after {
377
- content: "";
378
- display: block;
379
- width: 15px;
380
- height: 15px;
381
- position: absolute;
382
- bottom: 2px;
383
- right: 2px;
384
- background-image: url(data:image/png;base64,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);
385
- background-color: transparent;
386
- background-repeat: no-repeat;
387
- background-position: center center;
388
- background-size: cover;
389
- z-index: 4; }
390
- #qlwapp .qlwapp-box .qlwapp-days,
391
- #qlwapp .qlwapp-box .qlwapp-time,
392
- #qlwapp .qlwapp-box .qlwapp-label,
393
- #qlwapp .qlwapp-box .qlwapp-hidden,
394
- #qlwapp .qlwapp-box .qlwapp-offline-text {
395
- font-size: 12px;
396
- line-height: 1.5em;
397
- opacity: 0.6;
398
- display: block; }
399
- #qlwapp .qlwapp-box .qlwapp-days,
400
- #qlwapp .qlwapp-box .qlwapp-time {
401
- font-size: 11px;
402
- font-style: italic; }
403
- #qlwapp .qlwapp-box .qlwapp-name {
404
- display: block;
405
- font-weight: bold;
406
- line-height: 1.5em; }
407
- #qlwapp .qlwapp-box .qlwapp-body {
408
- overflow-x: hidden;
409
- overflow-y: auto; }
410
- #qlwapp .qlwapp-box .qlwapp-body .qlwapp-carousel {
411
- max-height: 470px;
412
- min-height: 134px; }
413
- #qlwapp .qlwapp-box .qlwapp-chat {
414
- padding: 36px 0;
415
- display: flex;
416
- flex-direction: column;
417
- overflow: hidden;
418
- justify-content: center;
419
- align-items: center;
420
- height: 100%; }
421
- #qlwapp .qlwapp-box .qlwapp-user,
422
- #qlwapp .qlwapp-box .qlwapp-message {
423
- padding: 16px 24px;
424
- position: relative;
425
- word-wrap: break-word;
426
- width: calc(100% - 36px * 2); }
427
- #qlwapp .qlwapp-box .qlwapp-user:before,
428
- #qlwapp .qlwapp-box .qlwapp-message:before {
429
- content: "";
430
- position: absolute;
431
- top: -6px;
432
- right: 24px;
433
- width: 13px;
434
- height: 13px;
435
- transform: rotate(45deg); }
436
- #qlwapp .qlwapp-box .qlwapp-user {
437
- width: auto;
438
- max-width: 75%;
439
- align-self: flex-start;
440
- justify-self: flex-end;
441
- margin-top: 0; }
442
- #qlwapp .qlwapp-box .qlwapp-user:before {
443
- top: auto;
444
- bottom: -6px;
445
- left: 24px; }
446
- #qlwapp .qlwapp-box .qlwapp-padding {
447
- padding-bottom: 56px; }
448
- #qlwapp .qlwapp-box .qlwapp-footer,
449
- #qlwapp .qlwapp-box .qlwapp-response {
450
- position: absolute;
451
- bottom: 0;
452
- left: 0;
453
- right: 0;
454
- height: auto;
455
- width: 100%; }
456
- #qlwapp .qlwapp-box .qlwapp-footer,
457
- #qlwapp .qlwapp-box .qlwapp-footer pre,
458
- #qlwapp .qlwapp-box .qlwapp-footer textarea,
459
- #qlwapp .qlwapp-box .qlwapp-response,
460
- #qlwapp .qlwapp-box .qlwapp-response pre,
461
- #qlwapp .qlwapp-box .qlwapp-response textarea {
462
- max-height: 160px; }
463
- #qlwapp .qlwapp-box .qlwapp-footer pre,
464
- #qlwapp .qlwapp-box .qlwapp-footer textarea,
465
- #qlwapp .qlwapp-box .qlwapp-response pre,
466
- #qlwapp .qlwapp-box .qlwapp-response textarea {
467
- color: inherit;
468
- background-color: inherit; }
469
- #qlwapp .qlwapp-box .qlwapp-footer:before,
470
- #qlwapp .qlwapp-box .qlwapp-response:before {
471
- pointer-events: none;
472
- position: absolute;
473
- content: "";
474
- height: 59px;
475
- top: 0;
476
- background: linear-gradient(315deg, transparent 0%, rgba(0, 0, 0, 0.025) 100%);
477
- left: 0;
478
- right: 0; }
479
- #qlwapp .qlwapp-box .qlwapp-footer {
480
- min-height: 56px;
481
- display: flex;
482
- align-items: center;
483
- text-align: center;
484
- font-size: 12px;
485
- padding: 12px 36px; }
486
- #qlwapp .qlwapp-box .qlwapp-footer p {
487
- padding: 0;
488
- font-size: inherit; }
489
- #qlwapp .qlwapp-box .qlwapp-footer p:last-child {
490
- margin-bottom: 0; }
491
- #qlwapp .qlwapp-box .qlwapp-response,
492
- #qlwapp .qlwapp-box .qlwapp-response pre,
493
- #qlwapp .qlwapp-box .qlwapp-response textarea,
494
- #qlwapp .qlwapp-box .qlwapp-response .qlwapp-buttons {
495
- min-height: 56px; }
496
- #qlwapp .qlwapp-box .qlwapp-response pre,
497
- #qlwapp .qlwapp-box .qlwapp-response textarea {
498
- width: 100%;
499
- height: 100%;
500
- resize: none;
501
- border: none;
502
- padding: 18px 88px 18px 36px;
503
- font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
504
- font-size: 14px;
505
- font-weight: normal;
506
- line-height: 20px;
507
- white-space: pre-wrap;
508
- word-wrap: break-word;
509
- border-radius: inherit;
510
- margin: 0; }
511
- #qlwapp .qlwapp-box .qlwapp-response pre {
512
- visibility: hidden; }
513
- #qlwapp .qlwapp-box .qlwapp-response textarea {
514
- position: absolute;
515
- bottom: 0;
516
- left: 0; }
517
- #qlwapp .qlwapp-box .qlwapp-response textarea:focus {
518
- outline: none; }
519
- #qlwapp .qlwapp-box .qlwapp-response .qlwapp-buttons {
520
- position: absolute;
521
- top: 0;
522
- right: 21px;
523
- display: flex;
524
- align-items: center; }
525
- #qlwapp .qlwapp-box .qlwapp-response .qlwapp-buttons.active > i {
526
- display: none; }
527
- #qlwapp .qlwapp-box .qlwapp-response .qlwapp-buttons.active > i.qlwf-emoji {
528
- display: block; }
529
- #qlwapp .qlwapp-box .qlwapp-response .qlwapp-buttons > i {
530
- opacity: 0.4; }
531
- #qlwapp .qlwapp-box .qlwapp-response .qlwapp-buttons > i,
532
- #qlwapp .qlwapp-box .qlwapp-response .qlwapp-buttons > a {
533
- cursor: pointer;
534
- margin: 0 0 0 10px;
535
- display: inherit;
536
- font-size: 18px;
537
- line-height: 24px;
538
- text-decoration: none; }
539
-
540
- #qlwapp .qlwapp-previous,
541
- #qlwapp .qlwapp-close,
542
- #qlwapp .qlwapp-toggle,
543
- #qlwapp .qlwapp-box .qlwapp-header,
544
- #qlwapp .qlwapp-box .qlwapp-contact,
545
- #qlwapp .qlwapp-box .qlwapp-user {
546
- color: #ffffff; }
547
-
548
- #qlwapp.qlwapp-bubble .qlwapp-toggle .qlwapp-text {
549
- color: #303030; }
550
-
551
- #qlwapp .qlwapp-box,
552
- #qlwapp .qlwapp-box:before {
553
- background-color: #fff; }
554
-
555
- #qlwapp .qlwapp-box .qlwapp-account {
556
- background-color: #fff; }
557
- #qlwapp .qlwapp-box .qlwapp-account:not(:first-child) {
558
- border-top: 1px solid #f5f5f5; }
559
-
560
- #qlwapp .qlwapp-box .qlwapp-avatar .qlwapp-avatar-container {
561
- background-color: #eee; }
562
-
563
- #qlwapp .qlwapp-box .qlwapp-message,
564
- #qlwapp .qlwapp-box .qlwapp-message:before {
565
- background-color: #eee; }
566
-
567
- #qlwapp .qlwapp-box .qlwapp-footer,
568
- #qlwapp .qlwapp-box .qlwapp-response {
569
- color: #303030;
570
- background-color: #fff;
571
- border-top: 1px solid #e6e6e6; }
572
-
573
- #qlwapp .qlwapp-toggle,
574
- #qlwapp .qlwapp-box .qlwapp-header,
575
- #qlwapp .qlwapp-box .qlwapp-user,
576
- #qlwapp .qlwapp-box .qlwapp-user:before {
577
- background-color: #25d366; }
578
-
579
- #qlwapp {
580
- display: none; }
581
- #qlwapp.qlwapp-show .qlwapp-box {
582
- visibility: visible;
583
- opacity: 1;
584
- transform: translateY(0) scale(1);
585
- display: block; }
586
- #qlwapp.qlwapp-transition .qlwapp-box {
587
- visibility: visible;
588
- display: block; }
589
- #qlwapp.qlwapp-bubble.qlwapp-show .qlwapp-toggle .qlwapp-icon {
590
- transform: scale(0, 0);
591
- opacity: 0; }
592
- #qlwapp.qlwapp-bubble.qlwapp-show .qlwapp-toggle .qlwapp-close {
593
- transform: scale(1, 1);
594
- opacity: 1; }
595
- #qlwapp.qlwapp-bubble .qlwapp-toggle .qlwapp-close {
596
- transform: scale(0, 0);
597
- opacity: 0; }
598
- #qlwapp.qlwapp-bubble .qlwapp-toggle .qlwapp-icon {
599
- transform: scale(1, 1);
600
- opacity: 1; }
601
- #qlwapp.qlwapp-bubble .qlwapp-toggle .qlwapp-icon,
602
- #qlwapp.qlwapp-bubble .qlwapp-toggle .qlwapp-close {
603
- transition: transform 300ms cubic-bezier(0.215, 0.61, 0.355, 1), opacity 300ms ease-in; }
604
- #qlwapp .qlwapp-box {
605
- display: none;
606
- opacity: 0;
607
- visibility: hidden;
608
- transform: translateY(50px);
609
- transition: transform 300ms cubic-bezier(0.215, 0.61, 0.355, 1), opacity 300ms ease-in;
610
- /* .qlwapp-body {
611
- .qlwapp-carousel {
612
- .qlwapp-slide {
613
- height: fit-content;
614
- }
615
- }
616
- } */ }
617
- @media (min-width: 430px) {
618
- #qlwapp .qlwapp-box {
619
- transform: translateY(50px) scale(0.9); } }
620
- #qlwapp .qlwapp-box .qlwapp-carousel {
621
- display: flex;
622
- width: 200%;
623
- height: 100%; }
624
- #qlwapp .qlwapp-box .qlwapp-carousel .qlwapp-slide {
625
- width: 50%;
626
- transition: max-height 500ms cubic-bezier(0.215, 0.61, 0.355, 1) 1000ms, transform 300ms cubic-bezier(0.215, 0.61, 0.355, 1) 500ms, opacity 500ms ease-in 500ms; }
627
- #qlwapp .qlwapp-box .qlwapp-header .qlwapp-slide {
628
- max-height: 300px; }
629
- #qlwapp .qlwapp-box .qlwapp-header .qlwapp-name,
630
- #qlwapp .qlwapp-box .qlwapp-header .qlwapp-label,
631
- #qlwapp .qlwapp-box .qlwapp-header .qlwapp-avatar {
632
- opacity: 0;
633
- transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.3s, opacity ease-in 0.3s; }
634
- #qlwapp .qlwapp-box .qlwapp-header .qlwapp-name,
635
- #qlwapp .qlwapp-box .qlwapp-header .qlwapp-label {
636
- transform: translateX(56px); }
637
- #qlwapp .qlwapp-box .qlwapp-header .qlwapp-avatar {
638
- transform: scale(0.5); }
639
- #qlwapp .qlwapp-box .qlwapp-header .qlwapp-name {
640
- transition-delay: 800ms; }
641
- #qlwapp .qlwapp-box .qlwapp-header .qlwapp-label {
642
- transition-delay: 850ms; }
643
- #qlwapp .qlwapp-box .qlwapp-header .qlwapp-avatar {
644
- transition-delay: 900ms; }
645
- #qlwapp .qlwapp-box .qlwapp-footer,
646
- #qlwapp .qlwapp-box .qlwapp-response,
647
- #qlwapp .qlwapp-box .qlwapp-previous,
648
- #qlwapp .qlwapp-box .qlwapp-message,
649
- #qlwapp .qlwapp-box .qlwapp-user {
650
- transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 600ms, opacity ease-in 200ms; }
651
- #qlwapp .qlwapp-box .qlwapp-response,
652
- #qlwapp .qlwapp-box .qlwapp-previous,
653
- #qlwapp .qlwapp-box .qlwapp-user {
654
- opacity: 0; }
655
- #qlwapp .qlwapp-box .qlwapp-response {
656
- pointer-events: none; }
657
- #qlwapp .qlwapp-box .qlwapp-previous {
658
- transform: translateX(56px); }
659
- #qlwapp .qlwapp-box .qlwapp-user {
660
- transform: translateY(56px); }
661
- #qlwapp .qlwapp-box .qlwapp-close {
662
- transition: opacity 300ms cubic-bezier(0.215, 0.61, 0.355, 1); }
663
- #qlwapp .qlwapp-box .qlwapp-description {
664
- transition: transform 600ms cubic-bezier(0.215, 0.61, 0.355, 1), opacity 900ms cubic-bezier(0.215, 0.61, 0.355, 1); }
665
- #qlwapp .qlwapp-box .qlwapp-account {
666
- transition: transform 600ms cubic-bezier(0.215, 0.61, 0.355, 1), opacity 150ms ease-in; }
667
- #qlwapp .qlwapp-box .qlwapp-previous {
668
- transition-delay: 800ms; }
669
- #qlwapp .qlwapp-box .qlwapp-message {
670
- transition-delay: 900ms; }
671
- #qlwapp .qlwapp-box .qlwapp-close,
672
- #qlwapp .qlwapp-box .qlwapp-description {
673
- transition-delay: 900ms; }
674
- #qlwapp .qlwapp-box .qlwapp-user {
675
- transition-delay: 200ms; }
676
- #qlwapp .qlwapp-box .qlwapp-account:nth-of-type(6) {
677
- transition-delay: 600ms; }
678
- #qlwapp .qlwapp-box .qlwapp-account:nth-of-type(5) {
679
- transition-delay: 500ms; }
680
- #qlwapp .qlwapp-box .qlwapp-account:nth-of-type(4) {
681
- transition-delay: 400ms; }
682
- #qlwapp .qlwapp-box .qlwapp-account:nth-of-type(3) {
683
- transition-delay: 300ms; }
684
- #qlwapp .qlwapp-box .qlwapp-account:nth-of-type(2) {
685
- transition-delay: 200ms; }
686
- #qlwapp .qlwapp-box .qlwapp-account:nth-of-type(1) {
687
- transition-delay: 100ms; }
688
- #qlwapp .qlwapp-box .qlwapp-slide .qlwapp-message {
689
- opacity: 0;
690
- transform: translateY(-56px); }
691
- #qlwapp .qlwapp-box .qlwapp-slide .qlwapp-box .qlwapp-account:hover {
692
- background-color: #fafafa; }
693
- #qlwapp .qlwapp-box.response .qlwapp-carousel .qlwapp-slide {
694
- transform: translateX(-100%); }
695
- #qlwapp .qlwapp-box.response .qlwapp-body .qlwapp-carousel {
696
- overflow: hidden;
697
- min-height: 122px; }
698
- #qlwapp .qlwapp-box.response .qlwapp-close {
699
- transition-delay: 0ms; }
700
- #qlwapp .qlwapp-box.response .qlwapp-close,
701
- #qlwapp .qlwapp-box.response .qlwapp-footer,
702
- #qlwapp .qlwapp-box.response .qlwapp-description,
703
- #qlwapp .qlwapp-box.response .qlwapp-account {
704
- opacity: 0; }
705
- #qlwapp .qlwapp-box.response .qlwapp-account {
706
- transform: translateY(-33.333%);
707
- border-top-color: transparent !important; }
708
- #qlwapp .qlwapp-box.response .qlwapp-user {
709
- display: block; }
710
- #qlwapp .qlwapp-box.response .qlwapp-message,
711
- #qlwapp .qlwapp-box.response .qlwapp-previous,
712
- #qlwapp .qlwapp-box.response .qlwapp-response {
713
- opacity: 1; }
714
- #qlwapp .qlwapp-box.response .qlwapp-response {
715
- pointer-events: all; }
716
- #qlwapp .qlwapp-box.response .qlwapp-message,
717
- #qlwapp .qlwapp-box.response .qlwapp-previous {
718
- transform: translate(0); }
719
- #qlwapp .qlwapp-box.response .qlwapp-header .qlwapp-slide {
720
- max-height: 84px; }
721
- #qlwapp .qlwapp-box.response .qlwapp-header .qlwapp-name,
722
- #qlwapp .qlwapp-box.response .qlwapp-header .qlwapp-avatar {
723
- opacity: 1; }
724
- #qlwapp .qlwapp-box.response .qlwapp-header .qlwapp-label {
725
- opacity: 0.5; }
726
- #qlwapp .qlwapp-box.response .qlwapp-header .qlwapp-name,
727
- #qlwapp .qlwapp-box.response .qlwapp-header .qlwapp-label {
728
- transform: translateX(0); }
729
- #qlwapp .qlwapp-box.response .qlwapp-header .qlwapp-avatar {
730
- transform: scale(1); }
731
- #qlwapp .qlwapp-box.response.opening .qlwapp-footer,
732
- #qlwapp .qlwapp-box.response.opening .qlwapp-response,
733
- #qlwapp .qlwapp-box.response.opening .qlwapp-close,
734
- #qlwapp .qlwapp-box.response.opening .qlwapp-previous,
735
- #qlwapp .qlwapp-box.response.opening .qlwapp-description,
736
- #qlwapp .qlwapp-box.response.opening .qlwapp-header .qlwapp-name,
737
- #qlwapp .qlwapp-box.response.opening .qlwapp-header .qlwapp-label {
738
- visibility: visible; }
739
- #qlwapp .qlwapp-box.texting .qlwapp-body {
740
- overflow-y: auto; }
741
- #qlwapp .qlwapp-box.texting .qlwapp-user {
742
- opacity: 1;
743
- transform: translate(0); }
744
- #qlwapp .qlwapp-box.closing .qlwapp-message {
745
- transition: all 0.4s;
746
- transform: translateY(100%);
747
- opacity: 0; }
748
- #qlwapp .qlwapp-box.closing .qlwapp-previous {
749
- transition-delay: 0ms;
750
- transform: translateX(-24px);
751
- opacity: 0;
752
- transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 300ms, opacity ease-out 200ms; }
753
- #qlwapp .qlwapp-box.closing .qlwapp-description {
754
- opacity: 0; }
755
-
756
- body.rtl #qlwapp.qlwapp-button .qlwapp-toggle .qlwapp-icon {
757
- margin: 0 0 0 12px; }
758
-
759
- body.rtl #qlwapp .qlwapp-box .qlwapp-response .qlwapp-buttons {
760
- right: auto;
761
- left: 21px;
762
- flex-direction: row-reverse; }
763
- body.rtl #qlwapp .qlwapp-box .qlwapp-response .qlwapp-buttons > a {
764
- transform: rotate(180deg); }
765
-
766
- body.rtl #qlwapp .qlwapp-box .qlwapp-response pre,
767
- body.rtl #qlwapp .qlwapp-box .qlwapp-response textarea {
768
- padding: 18px 36px 18px 88px; }
769
-
770
- body.rtl #qlwapp .qlwapp-box.response .qlwapp-carousel .qlwapp-slide {
771
- transform: translateX(100%); }
772
-
773
- body.rtl #qlwapp .qlwapp-box .qlwapp-contact {
774
- flex-direction: row-reverse; }
775
-
776
- /*# sourceMappingURL=frontend.css.map*/
1
+ @font-face{font-family:"qlwapp-whatsapp";src:url(data:application/x-font-woff;charset=utf-8;base64,d09GRgABAAAAAAYEAAsAAAAABbgAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABPUy8yAAABCAAAAGAAAABgDxIFKmNtYXAAAAFoAAAAVAAAAFQXVtKHZ2FzcAAAAbwAAAAIAAAACAAAABBnbHlmAAABxAAAAfwAAAH8pb7IGGhlYWQAAAPAAAAANgAAADYUXm9HaGhlYQAAA/gAAAAkAAAAJAfAA8ZobXR4AAAEHAAAABQAAAAUCgAAA2xvY2EAAAQwAAAADAAAAAwAKAESbWF4cAAABDwAAAAgAAAAIAAJAJluYW1lAAAEXAAAAYYAAAGGmUoJ+3Bvc3QAAAXkAAAAIAAAACAAAwAAAAMDAAGQAAUAAAKZAswAAACPApkCzAAAAesAMwEJAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAAAAAAAAAAAAAQAAA6QADwP/AAEADwABAAAAAAQAAAAAAAAAAAAAAIAAAAAAAAwAAAAMAAAAcAAEAAwAAABwAAwABAAAAHAAEADgAAAAKAAgAAgACAAEAIOkA//3//wAAAAAAIOkA//3//wAB/+MXBAADAAEAAAAAAAAAAAAAAAEAAf//AA8AAQAAAAAAAAAAAAIAADc5AQAAAAABAAAAAAAAAAAAAgAANzkBAAAAAAEAAAAAAAAAAAACAAA3OQEAAAAAAwAD/8AD/gPAACcATwCWAAABJicuAScmIyIHDgEHBhUUFhcDJR4BMzE4ATEyNz4BNzY1NCcuAScmATEiJi8BBzcnLgE1NDc+ATc2MzIXHgEXFhcWFx4BFxYVFAcOAQcGIxMuAScmIgcOAQcOAScuAScuAScmNjc+ATc+ATc2JicuAScuASMmIiMiBgcOARUUFhcWFx4BFxYXHgEXHgE3PgE3PgEnLgEnA2kkKSpbMTEzaVxdiSgoIiJIAQ03e0BpXF2KKCgKCiYbHP51OW0xD6ArCiAhIiFyTU1XKygpTCIjHh0XFyAICCEick1NV+cJRAkJDQcGHAYGDAkKOCQdJAYGBwUECgUEBQMDAQMCHQgHEAUGDAcGEwgJJC8FAhEQOCcnMBYkDhcoERI7CAgCAgMMCgMrJBwcJQoKKCiKXFxpQ4E6/vlHHx8oKIldXGkzMTFbKin9Fx4dCSmbEDJzPFdNTHMhIQgIHxcXHh4jIkwpKCtXTU1yISIBPAUhBAMKCSIHBgIFBRogGTYJCQwFBAwGBgkGBgwEBUcTEgMBBwkJMi8vTgYDFxY8IB8UCg0EBwEDAyMWFiIEBAcEAAAAAAEAAAABAAAmrdZpXw889QALBAAAAAAA2KCVZQAAAADYoJVlAAD/wAP+A8AAAAAIAAIAAAAAAAAAAQAAA8D/wAAABAAAAAAAA/4AAQAAAAAAAAAAAAAAAAAAAAUEAAAAAAAAAAAAAAACAAAABAAAAwAAAAAACgAUAB4A/gABAAAABQCXAAMAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAADgCuAAEAAAAAAAEABwAAAAEAAAAAAAIABwBgAAEAAAAAAAMABwA2AAEAAAAAAAQABwB1AAEAAAAAAAUACwAVAAEAAAAAAAYABwBLAAEAAAAAAAoAGgCKAAMAAQQJAAEADgAHAAMAAQQJAAIADgBnAAMAAQQJAAMADgA9AAMAAQQJAAQADgB8AAMAAQQJAAUAFgAgAAMAAQQJAAYADgBSAAMAAQQJAAoANACkaWNvbW9vbgBpAGMAbwBtAG8AbwBuVmVyc2lvbiAxLjAAVgBlAHIAcwBpAG8AbgAgADEALgAwaWNvbW9vbgBpAGMAbwBtAG8AbwBuaWNvbW9vbgBpAGMAbwBtAG8AbwBuUmVndWxhcgBSAGUAZwB1AGwAYQByaWNvbW9vbgBpAGMAbwBtAG8AbwBuRm9udCBnZW5lcmF0ZWQgYnkgSWNvTW9vbi4ARgBvAG4AdAAgAGcAZQBuAGUAcgBhAHQAZQBkACAAYgB5ACAASQBjAG8ATQBvAG8AbgAuAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==) format("woff");font-weight:normal;font-style:normal}.qlwapp-whatsapp-icon{font-family:"qlwapp-whatsapp" !important;speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.qlwapp-whatsapp-icon:before{content:"\e900"}#qlwapp{pointer-events:none;box-sizing:border-box}@media (min-width: 430px){#qlwapp{width:430px}}#qlwapp *{box-sizing:border-box}#qlwapp.qlwapp-js-ready{display:block}#qlwapp.qlwapp-hide,#qlwapp.qlwapp-desktop.mobile,#qlwapp.qlwapp-mobile.desktop{display:none}#qlwapp .qlwapp-readonly,#qlwapp.qlwapp-readonly{pointer-events:none !important;opacity:0.5 !important}#qlwapp .qlwapp-disabled,#qlwapp.qlwapp-disabled{display:none;visibility:hidden}#qlwapp.qlwapp-middle-left,#qlwapp.qlwapp-bottom-left,#qlwapp.qlwapp-middle-right,#qlwapp.qlwapp-bottom-right{position:fixed;z-index:9999999}#qlwapp.qlwapp-middle-left,#qlwapp.qlwapp-bottom-left{right:auto;left:0}#qlwapp.qlwapp-middle-left .qlwapp-toggle .qlwapp-days,#qlwapp.qlwapp-middle-left .qlwapp-toggle .qlwapp-time,#qlwapp.qlwapp-bottom-left .qlwapp-toggle .qlwapp-days,#qlwapp.qlwapp-bottom-left .qlwapp-toggle .qlwapp-time{left:0;right:auto}#qlwapp.qlwapp-middle-left.qlwapp-bubble .qlwapp-developer,#qlwapp.qlwapp-middle-left.qlwapp-bubble .qlwapp-toggle,#qlwapp.qlwapp-middle-left.qlwapp-button .qlwapp-developer,#qlwapp.qlwapp-middle-left.qlwapp-button .qlwapp-toggle,#qlwapp.qlwapp-bottom-left.qlwapp-bubble .qlwapp-developer,#qlwapp.qlwapp-bottom-left.qlwapp-bubble .qlwapp-toggle,#qlwapp.qlwapp-bottom-left.qlwapp-button .qlwapp-developer,#qlwapp.qlwapp-bottom-left.qlwapp-button .qlwapp-toggle{margin-left:20px}#qlwapp.qlwapp-middle-left.qlwapp-bubble .qlwapp-toggle .qlwapp-text,#qlwapp.qlwapp-bottom-left.qlwapp-bubble .qlwapp-toggle .qlwapp-text{right:auto;left:60px}#qlwapp.qlwapp-middle-left .qlwapp-box:before,#qlwapp.qlwapp-bottom-left .qlwapp-box:before{right:auto;left:20px}#qlwapp.qlwapp-middle-right,#qlwapp.qlwapp-bottom-right{left:auto;right:0}#qlwapp.qlwapp-middle-right .qlwapp-toggle .qlwapp-days,#qlwapp.qlwapp-middle-right .qlwapp-toggle .qlwapp-time,#qlwapp.qlwapp-bottom-right .qlwapp-toggle .qlwapp-days,#qlwapp.qlwapp-bottom-right .qlwapp-toggle .qlwapp-time{left:auto;right:0}#qlwapp.qlwapp-middle-right.qlwapp-bubble .qlwapp-developer,#qlwapp.qlwapp-middle-right.qlwapp-bubble .qlwapp-toggle,#qlwapp.qlwapp-middle-right.qlwapp-button .qlwapp-developer,#qlwapp.qlwapp-middle-right.qlwapp-button .qlwapp-toggle,#qlwapp.qlwapp-bottom-right.qlwapp-bubble .qlwapp-developer,#qlwapp.qlwapp-bottom-right.qlwapp-bubble .qlwapp-toggle,#qlwapp.qlwapp-bottom-right.qlwapp-button .qlwapp-developer,#qlwapp.qlwapp-bottom-right.qlwapp-button .qlwapp-toggle{margin-right:20px}#qlwapp.qlwapp-middle-left,#qlwapp.qlwapp-middle-right{top:40%;bottom:auto}#qlwapp.qlwapp-middle-left .qlwapp-developer,#qlwapp.qlwapp-middle-right .qlwapp-developer{padding:0 24px}#qlwapp.qlwapp-middle-left.qlwapp-button .qlwapp-developer,#qlwapp.qlwapp-middle-left.qlwapp-button .qlwapp-toggle{margin-left:-48px;padding-left:60px}#qlwapp.qlwapp-middle-right.qlwapp-button .qlwapp-developer,#qlwapp.qlwapp-middle-right.qlwapp-button .qlwapp-toggle{margin-right:-48px;padding-right:60px}#qlwapp.qlwapp-bottom-left,#qlwapp.qlwapp-bottom-right{top:auto;bottom:0}#qlwapp.qlwapp-rounded.qlwapp-bubble .qlwapp-toggle{border-radius:50%}#qlwapp.qlwapp-rounded.qlwapp-button .qlwapp-toggle{border-radius:50px}@media (min-width: 430px){#qlwapp.qlwapp-rounded .qlwapp-box{border-radius:8px}}#qlwapp.qlwapp-rounded .qlwapp-box .qlwapp-user,#qlwapp.qlwapp-rounded .qlwapp-box .qlwapp-message{border-radius:4px}#qlwapp p:last-child{margin:0}#qlwapp time{opacity:0.8;font-style:italic;font-size:10px}#qlwapp .qlwapp-no-contacts{display:flex;height:134px;justify-content:center;align-items:center}#qlwapp .qlwapp-container{display:flex;flex-direction:column}#qlwapp .qlwapp-clearfix:before,#qlwapp .qlwapp-clearfix:after{content:"";display:block;clear:both}#qlwapp .qlwapp-previous,#qlwapp .qlwapp-close{display:block;opacity:0.8;font-style:unset;font-size:24px;font-weight:bold;width:24px;height:24px;cursor:pointer;text-align:center;line-height:24px;z-index:1}#qlwapp .qlwapp-previous{width:16px;height:36px;cursor:pointer;text-align:center;line-height:36px;margin-right:auto}#qlwapp .qlwapp-developer{font-size:8px;top:-20px;position:relative}#qlwapp .qlwapp-developer,#qlwapp .qlwapp-toggle{display:inline-flex;align-items:center;justify-content:center;margin-left:auto;margin-right:auto}#qlwapp .qlwapp-toggle{pointer-events:all;cursor:pointer;box-shadow:0 1px 6px 0 rgba(0,0,0,0.06),0 2px 32px 0 rgba(0,0,0,0.16);margin-top:24px;margin-bottom:24px;position:relative;text-decoration:none}#qlwapp .qlwapp-toggle,#qlwapp .qlwapp-toggle:active,#qlwapp .qlwapp-toggle:focus,#qlwapp .qlwapp-toggle:hover{outline:none;text-decoration:none}#qlwapp .qlwapp-toggle .qlwapp-days,#qlwapp .qlwapp-toggle .qlwapp-time{position:absolute;bottom:-2em;color:initial;font-size:10px;display:inline-block;top:auto;width:120px}#qlwapp .qlwapp-days>span{display:none}#qlwapp .qlwapp-days>span.qlwapp-available-day{display:inline-block !important}#qlwapp .qlwapp-avatar .qlwapp-avatar-container{overflow:hidden;border-radius:50%;width:inherit;height:inherit;box-shadow:0 0 0 2px rgba(255,255,255,0.5)}#qlwapp .qlwapp-avatar .qlwapp-avatar-container img{width:100%;height:auto}#qlwapp.qlwapp-bubble .qlwapp-toggle{width:60px;height:60px}#qlwapp.qlwapp-bubble .qlwapp-toggle .qlwapp-icon,#qlwapp.qlwapp-bubble .qlwapp-toggle .qlwapp-close{position:absolute;display:block;pointer-events:none;font-size:24px}#qlwapp.qlwapp-bubble .qlwapp-toggle .qlwapp-text{position:absolute;right:60px;height:60px;margin:0 24px;display:flex;align-items:center;justify-content:flex-end;font-weight:bold;white-space:pre}#qlwapp.qlwapp-button .qlwapp-toggle{height:40px;white-space:nowrap;padding:12px 24px}#qlwapp.qlwapp-button .qlwapp-toggle .qlwapp-icon{margin:0 12px 0 0}#qlwapp.qlwapp-button .qlwapp-toggle .qlwapp-close{display:none}#qlwapp .qlwapp-box{pointer-events:all;padding-bottom:56px;position:fixed;top:auto;bottom:0;left:0;right:0;z-index:99999;box-shadow:0px 5px 40px 5px rgba(0,0,0,0.5)}@media (min-width: 430px){#qlwapp .qlwapp-box{position:relative;top:auto;bottom:auto;left:auto;right:auto;box-shadow:0 8px 25px -5px rgba(45,62,79,0.15);margin-top:24px;margin-left:24px;margin-right:24px;margin-bottom:12px}#qlwapp .qlwapp-box:before{content:"";position:absolute;bottom:-6px;right:24px;width:13px;height:13px;transform:rotate(45deg)}#qlwapp .qlwapp-box .qlwapp-header{border-top-left-radius:inherit;border-top-right-radius:inherit}#qlwapp .qlwapp-box .qlwapp-footer,#qlwapp .qlwapp-box .qlwapp-response{border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}}#qlwapp .qlwapp-box .qlwapp-header{position:relative;overflow:hidden}#qlwapp .qlwapp-box .qlwapp-header:before{content:"";position:absolute;top:0;bottom:0;left:0;right:0;background:linear-gradient(315deg, transparent 0%, rgba(0,0,0,0.05) 100%)}#qlwapp .qlwapp-box .qlwapp-header .qlwapp-close{position:absolute;top:12px;right:12px}@media (min-width: 430px){#qlwapp .qlwapp-box .qlwapp-header .qlwapp-close{position:absolute;top:7px;right:7px;font-size:18px}}#qlwapp .qlwapp-box .qlwapp-header .qlwapp-description{position:relative;display:flex;align-items:center}#qlwapp .qlwapp-box .qlwapp-description,#qlwapp .qlwapp-box .qlwapp-contact{padding:12px 36px;height:100%}#qlwapp .qlwapp-box .qlwapp-description p,#qlwapp .qlwapp-box .qlwapp-description h3{color:inherit;font-family:inherit;margin:0}#qlwapp .qlwapp-box .qlwapp-description h3{margin:0 0 0.25em 0}#qlwapp .qlwapp-box .qlwapp-contact{display:flex;justify-content:flex-end;align-items:center}#qlwapp .qlwapp-box .qlwapp-contact .qlwapp-previous{position:relative;left:-16px}#qlwapp .qlwapp-box .qlwapp-contact .qlwapp-previous>i{line-height:36px}#qlwapp .qlwapp-box .qlwapp-contact .qlwapp-avatar{width:42px;height:42px}#qlwapp .qlwapp-box .qlwapp-contact .qlwapp-label,#qlwapp .qlwapp-box .qlwapp-contact .qlwapp-name{color:inherit}#qlwapp .qlwapp-box .qlwapp-account{color:inherit;padding:16px 36px;display:flex;align-items:center;overflow:hidden;position:relative;cursor:pointer;width:100%;text-decoration:none}#qlwapp .qlwapp-box .qlwapp-account:only-of-type{padding-top:36px;padding-bottom:36px}#qlwapp .qlwapp-box .qlwapp-info{padding:0 16px}#qlwapp .qlwapp-box .qlwapp-avatar{position:relative;width:62px;height:62px}#qlwapp .qlwapp-box .qlwapp-avatar:after{content:"";display:block;width:15px;height:15px;position:absolute;bottom:2px;right:2px;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFAAAABQCAYAAACOEfKtAAAXgklEQVR4Ad2aCXhV9Zn/scv/P/N02mfmmc50anWqdUHUouwLYSFhCQlhIYEkLEnYF1SkoriXKkWxLo+2OlintopOq9UiewJJSEJCErKHsBAWCIshYSFAWO5y7zvf833uub78nnNvEhaxc9oP7295f+/vPd/znuXmsZ2I3Eh+AO4FkWAe+D3IAlWgDtSD4+AI2AMKwQrwEkgC3cGtV7y/X2j9bAdsG7kRoj0ApoOPwWHglqs7zoGt4AUwCvzw/6KAt4JnQC7wyvU9joAPQRz47t+7gBHgU3BKbsyxAzwGbvl7E7ArWCffnOMkWAD++Zsu4O3gXeCTb+axB6R8EwW8CTwK6uUqDq/fJxd9F6XJc0aOXqqXAxfqZN+FA3Lo4hFpcB2XZm+zuP1uuQZHOuj0TRHwDrBeruA47joh287tkM+OrZKlB96UZ2oXyy92PSNzdyyQ6TXzZPK2hyRt2xyZuu1hmbF9vjy8c6Es3L1IFu1dKv916H3JOVkAkQ/JBe9FuYLjLHjkRgs4EjQA8avM/MqaxzFXg2SeyJGl+9+kSBOrZ0pS1VQZXzWd7UnVsySlerakQrg0Mtdqg9kYn0WfCVUzrDVgGn3mQ/TlRz+R8jNV4vK1uUI/Av9yIwScBnxKNmK3TPV2Ne+RPxz+iKKNq5wsyTh5CGWLdBXMoaiJlVMkqXKqPF37omw4kS1nPefMS6p7Zj8f/9z5dQq4lBubledQc7XNe+X1g++wssbhJCdVzZLU6jkB5gbbaQYcUz5psIRt1d/GMViuYSWPrUiTeTufki8a1soF3wXhYSjmB/gH2ANyEP92u94C3gSW+UUlYBvjaHA1yjuH/sAqG4uKg7XFUszWVo8bY87tFFpHIOQMCvnozqcl92SBUX5+ctn//IA/G6XP9RTwbaoVwA+YiKHippObZWbNfEnACUysmikpVbMpYAgLwoxXKapb2VYkV06DkJPllf1vybFLDepp46cJikc43gi6ot+uFbRJwBe5SaiNRfgJ8tuD71nCIfHpuF1nK2YpZpuWmH3tn6L8w8d0JqE8VWbV/EK2NpWrYgzmT6s4Au66lgIm6w1MrKMR32mL9iyVMWUpMrFyZjDxiQr2Kwnb2sfsc8zyNcbVfPg5rDV9Eivwtq+cISsb7K8uJZzQakpgfgjahaM14g2A44Vw4u09v1/m1Dwu8bjKEI9MoNVgzGjThm2HjxFunOvNOBA1uWK6dZH5ReDz+4IiivP5rQA3XU0F/iucDoYTb9e5WplS/bAklKUFkp3BqwxrMBPjnP/Kr4JW+ygwb/Rpnf3NuXB+zG9U6UR5p+59LWIonrwaAf8cTrz95+soXnx5GsSY0QLTJTnQtu3Vrmk5jukPKu32dBkJEd879KHw8IcU0QV6XomAY8OJd9rdJA/VLJTRpSl2Qn93JFVMkxGlE+Tz+lUtVWGRz+f7DmhnEqo0fwB2OYrnF/6g//We17l5cjkSKZ8mpAKwD9g25zim0P7GOgOHtQpjjLGIsbexF8bGlU3B42eyFJwqbknE2X4IZhBSwGfDVd8fDn0ssVuTJREJtMSYslSJ2zpe4ooJiS9NY/KJ14WppDV+OseUyjly9GJ9OBEbwA9NrZzE+xE4HUq8sqYq3rZjy6YwiXEWZZrgGMWaV/GUfH54tWyoz5aM+ixZcWStPFz5pIwumQSfaSHXJhL2ac15WO0La7a1jzOJNvCJKxkvz+9+WTx+TzgRf+ODRhonAX8TSrxmz3mZu+0JGVkykaU/1gTJ2O3hRcny2q635bzngphHw4VGSSmZI2NKU+lrMs45bqsZ12ofWNWO3Zok6xo2BgX0EVsDtl3gznAC3gwC33w+U0D57MtVMqw4UcaW4rkBxpZODrQB2gSJxBQlyYvbXxUJrHO6GO/v+5h+WEvwHGI8xmWf7QBsG33urfY3maxQa/jMU37qPEbhrphS+YiccZ/96q3sA5cL+Wo4ARdiQUB5n/i42CfWccp1WlIq5nKTeGwIgknp/oitE2Va6Tw5danJUTxbwMPNR2VMYSqqMI3rHClR8Q0SuM5uE91X88CcM9vKDitKlA8Pf6Jy90lAE1vML9H+vpOA34bDbryahahF1vHBoU9kaNE4iS9JkzEgaEsvb0cXjJPs+rywbzT76i7Z8QarkDHsmGb8UJS2zneM9jVRuduMRAFMKp8jDZeOC46ADtQEWthF5Z/m9BKJ8mEWgtHZRvysPkmreEhGFE/AJqlBRm9VbRDLl8bT4va6TQFNOF94vISCc31o7Hljb2D2wRgQZr05xzWm7+DCBPn06ErmqAvKbiP/dCcBl9HBwDrWN2Qx6ChsRphsCmwKrN3GxlsS+GzT4oUT0OV1ydzyhRJblMz1Ohas2kNh7w/sOW11bnrchHspH733cBTClMp50uQ+wwIyBQTWe6K9FvA7oMoQj7ev1++VhdtfkOiixODmI4NM0m2Jzh8nhY0l4QU0RFy+/1OJyh9tnOCkr/YpDozBcj9iCsJ5Iz9jPdfpPuPZeyk4zoLJPb4lWIUmyH+yFrCHD4dT9dWc2YkHaxJu34kASQC0A5awPdy6vQvT5Mvz9W0SsPHCCUkumsHbH3EUdmxjLzVnjjn7me2W18NSwFf2/DacgH/SAs4KcfvyWRBVMIaixRUBWA3GSQxuw+TiGXLGdbZlAQ0Rf7v7v1GF8cI9uI/C2Ic+GuVn2xFFpo+9Dtbw174j6EfLx0pi6XR8TZy2b2OTo8j/+7aA7zncvnz7PF6zyHq2YbMJZHjAmgwrTJLEounSdOlMmwVce2SjRG4ebceGnch2sK+IM+ZUXoafczu8n+6Pl+jCRKlu2h6qCn3I/16I5/t/aO8yJql648XjEr91MsUZXjiBIDDseIm1LIAFEySmMFli88fL/rMH2yzg0h1vSWQ+BQzGB4wbWwjQJvZ+dh6Yty19uS5gbfS4BdfYbe7BGPYa2GCsgcjpo0OfmQIq/DHtUGk/QafZ6fbddXaPRG9JgoDJEkO4AduEbfY5PiB3pKw/mtmmZ2BRY5kM25zIi6Tjxqr47Ks50w97G7loP2LnreI5Wu2DizpGntq++PJb2Kut/zkI6Otov0C8hoCZDbkyIH+UDNvCk4Ml7NNqMN8vb6S8tvOdVn/G1J07LPEFk/GMjed6jblPjLEXrTlXaFi2DR9zXBWIEZN5zah4TPhdqz5jlJCfWxXYlx2FLeC7Bz6QvnkjhFUIYMMyqCBBJhXNkXPu5nAicu7kpVMypfhR6b95lI6t2q2nTesLwsfQDMpPkKSSmXLWfU4Ekni9XhSZhY8WOhW2w4siwcfBAErA53csZVUNLUhskWjLbkmUPpuGy4Yvc0IKKH7h8cK2V6VXTgwTbTm+sU/r0bmBtq0bnD+Wz078bmfeFA4iUi9aX3U7/DOXyhIlIBbMr36OAg4pGKdIFNp8NabonzdKZpc8zosRUkQcy2o/kF6bYpioETssat+2+3Gs9UBAfl7VNO0UHNRHA0FrLQGfMif8gc+YuZVPUkAECjDOuW0QkT1cNtXnhxXw9KUmSSyYTsGHhIxNa2LMh/PlvNlv5Xr2ef4lJyu0gJoDloC/NCcwRjur4gnpmztCBiFQkM12O4GgD9i2fbhpcsFMOe8+H1bEgoZiiB0nUZvjsc6Iq2KiDfTeHDPyUvPKEq43c+a4eU5qnH2ef8Hx4lACHrIEfNacsF8msyFgRK51ggkgntZsm1AM2J7ZMbJ42+vCwx9axLd2vifds4aGi6dI0O1WM6hVfvGOY31y4yDg1lAC1rXDfTzfSUCxbuGKJ6V3znCJzIsPDzYyxwZuHiM9MofJ2sOZYV8oHp9Hnq74tXTPjmYc4BgTfWPe9B0TPi+2w2DGBQMRMwIVWHaqOpSA+ywBU9kx4Euk6nnpiQc9Al0RETlxEpMzXuovNIa9lc+6zknqloctEbGOiX8j6J87mqLWnt1HPRx02mHdwkMcBcSxZOeb0g0nNQCBguSZ7TAgiW64PReULWrxrXy0uZ7PTcsf64BTPG1J4EKNkK6ZQ3ix++eOCsyNcfLnOG146NcXcWMLJsrxiyfs70CTUlSgt5snhID/U/c36ZI1RPrnjGJiuCLAbGsLbF811mXjYFm2+4MWP67rzx+TyYXzpPPGQdJPxe5H60yvTbEyKi9Vfl+7XB4ueUr6ZA6XrrgIENX24XqdO2I7526M98Y3bWLRDLwML4jf679cI4/H+h7c2A7/3IkBl9eDQaAFLD5RzpdB35yR0g/CEKudq9pAt4HyJzyZ7huiZcPRnJZE5K+YZytekq4bhlAcey9zP8AT7Js5UqpPbg++rGpO7cL6lyUyO1464UL02RSn1lo2dDyT7tnDZHrpY4GXqlc8wPhaecsS8Afo1CtlYT0s2f1n66yrwST6bqIwNuiPMPq0BkEfXoj+maOkuLGsJRF5rKhbJ0OyE+XBjVG8AEZsjnXKGCSfHVwdjKePA2cPySs1v5Oo7AR5YEMkxTZyb5HOmYPlJTzGcFA8j8cDLGtXoG9iO4hmkWFNKvghfc7VLKO3TJYeWcMkApv2ARFhCDvP59RQiDJO9jTtCy8itRD+aeyx0kWsRlQTRIgLxuuYMVBerHb8TGJfC/nStrdkYFY8hVQxWqQLnquZx/ICAlIX8SqNIGA3W8BnDQGpsnW8tOMtqwpYhSSbVnqzrdgUihGc7w3QxvNtiMTlTGrV3w3tY0tDCV5Ev5KeG2IpQof0vjK/5DlxeV2tjQEh61iRvfGMRDUyfxLifHplD7fuKl4A8YkpHtreZgh4sy3gGE4YWMf6L7OYNDYCw024kXM/znkNxh5ENcXmTJTdTXvDCmBW066mPfJi1et8RuLTx1zbGiEh/PPcX+fWK5CrPpfOqL60rY+Iy+PiM9DUBprlQMCbbAF/jMGThhPfPA3nj8vQvCTplhktvbKszWKlJ+iVBdgHsCY9Lew5+iswbp1EVFaCFDWUqdswrJDmoeZbL+JzFS/j9o9kTgGYZ8/g+TA/uT9jgHxw4FPBoTXRAi7gfx+IBsHgqlBV+NquZXIfAmKTID2C7Ri0ae2+QvsDY6wTPm+6pw+T5Xv/qkW5LtgXYGbhAtxRUcKc7NwNumcOYwHU4llt374mEK8fBUTHZr6DIzcuO1HFZxcCgxjSQ1kNx7JAK/26bBwq968bIIur3uD3lqrGa4r9IojPncoLp3PSICdW3zPVLzEPPOucqq8G4v1/U8AfgSbTGQH4Rp5dulDuSx9AEW26KfSYwsnfoR0tHdb1lYTcaVLYUHpdqtE6tuMbsWvGUOmK/fT+mm4bo1Ghg6T4eDkFDHH7/sYSzxCQrAhVhTnHtuDZESVdUTHYRMFNMR5NIdhW47SGPzHHkfzP0wfKg+ui5PmKV2TX6T2C45pUpH08Xb4EF6qfnScxc7s3vZ/MLXuKRaOrT3ERwt0TFNDtcWv6W05uhyoUBJxZ8jg26E+Bum4AG4fCAvRxK2pL9DzbRp/WZgMtHxXt10VIj/QYWVT5quw8XSuijysU7+O9n/NR0Rn76r01na3vzQ2DpeREpfHscwutm9W3geIFBXR7NN+B41YtYKDNgJUna+TBjChu0gVCdA6Atok5H8Z/iNAacw/iNrp7bR/plh4tqfmPyKq6DOvD3hBTWhKOf8R4rQYvwbX9GVPvbXI3LtzCysXmrWu+PAZdJiAEMnAPBlSbGLfyku1vyj14XuFqkU4ZAcs+yNDWxHmuk2EVuGCDuN89a/rK4MxEWVi6WPKOFcmx840S7nDjhZFbXyhJebPknrV9KZ4ZW4HHR6REZI2UunNHWCy2Bm63G+D8YVF9+RDtu0YFuk2+BTIAF1mBAm0G3nfmAK/WA+lREG+wwRBagzb6QbQQ8/enD2RVdljbT3qnx8m0LY/Jst0fyhd16bLxaJ5kgpWo1Hd3L5exuTOkw5p+EL9fS3vyIt21ro98fmit4FDC6fNn9fWwhVMvEa8To4wAgBUouccK5d71/SHgIGw8WIhq6/4DRI0TY10628Z605dtOxbsIFZMe1TWHWt6yV2r+8jdqyMs2L5zdS++LODnvK+R88/W9MSt++vAc0+Jp4RE9S03xQt8SPs0xOP1PsKFBtbxdu2fmDQEbD0ZrfGLor1qMtq0D88lrfhRaXadF5/HZ54zgagnIdbtIQT0aggWpJtB8CbmCyVpy2zcRhHSEYl8bay/5jEp3p1re8vgTUlSbz1PfeIkHvF5ffN9Pn87BxwF/A+8ts+ZQcQrcvDsYbwAhsp9+Bz4+fooEKmsE1EGkaQj0OuJ2Q+/1tw/9LzdTw+0AxfkzjW9pW/maNnZVBtWPOixEZX2LdCutRU40CEQN8k4miN3YOP71w8ETIgWOPbhp+cI2+aYOW6sDUf4HJzj3766pwzIipftp3eL+EOLhzuxESL91BRN43T7vhlKwAXlL8htq3rgg3QgqpDYbSRm9INtwDlgrlNrTJz8ibkPrQn9HPYdID9d1U1G5KXxr+0tiOeCQLEUqg0Cfg8LD5rBfHj+XXJdkmE5E1n6djKaezlGq+ZhnX2B3Ufb8MccUHOGv7ku1Lxazzf2rRDvF+W/kjOXzoa7bQnESaFIbRTwPiz2AeP558dv0718ltyDbzCe4FoSbHcA7TH3M3xC3LqyG650d/aVT8usI8aa/i2vUe0OwBzHXcM+viD4LBePP6x4+BJ5gQJdgYAzHQKy1N+tXS63rOwCofoHuXtNhPxsVU8I1lVuh+24fpDEb54uv9v9R3l5++9we0VSzPZr+lJgrPnauAfwYiK3sfkzpexEdfDPU+Erz/ua9d+Nt1pABAyCz5QNbrfLUcCHSp6RW77oIrdBKFgm1jl9qMTlpspzVa9Idn2+7D9TF/QH/IvKo2W/pIA/wRp86PLEUMW0ZA2wx9g2oa/2AdYY0HMUjmOsuFuQ36DsJPn04Gq55HaFv2Vdwdt2iSVe2wRUzz8EOeJymc8/v9Q3N8iD64fwio7OmypPVi6RPx/4gr8bXUiOgvmAF/9XX+/oc7zkeJXMK32OFXnzik5y28oeFBVC2KDfMtqXVrXvXN0neGGH56bIH/d9Yn0cq6pz2UIRV1A8jOOAGPMpXhsF1D/fohDHr4MDbO5jZX2w769SeXJ78I1M0bx+9btRV66L4GJoIVmRy2o/xAmmyk9Xdpebv+jMW/yO1b3lLuunGERtHx763LUmgoLhsYHK7sw4D6wfLE9ULJb0o5vkgusi8/NBOJwLoHi2WGrMZeV/3O/zRVO4KxPQY7PUhYAUD9Y+eYyhqrzBCqNgLpUELPtKsMuSpQW2kH6Ri+6Lkn+sWN7e/SeZtOUR6Zo+jJVEUVd0lh+jSq1b/icruqCqutKqcTx38SWwNlIis8bK05Uvy19xmx44c8i+E5gv8lGVRrGCeTEngHMu8vt9D1C0qxUQwmzUAtptWjsBigSUpQ/9VLKEcYyLYV8Qz1dVHHhE1JzcJdlf5sv7e/8iL1a/IY+W/lJmFi+UGcVPyKytT8rCiiXy2o535W9162RrY4XsbToo5y41Mw5BHO5hiMZ+IAcSuGXxyHoVQn3PEuHqBPR6LG5DzHO2MIRtbKhE4Jj24Rx9QqP8GYcE1/Ck/R6rbMQWVT1TFT5j3GNXmo6n28754lGVCYH6UCRw1QJ6UX0gOXiyenN90u6WROLfzBpxZT9GRX/kwkVuQVBTTIW+5YBDDI61AeS03fo41iJdMwFx4m+0IRldPedRvVsQaIHP5++Gjf/N3hxCdkXSf4GfG8iNgcLtQT5Tkdc/UZxrLSA2+EcIUdtKwZrgXw5x3sbiGGx0e6jN4UML7sOaV9Ue1x3sdQZ7pmPvkVq46yVgB2zqC5GIF/PFEOP3cJ6MwLeYG7UsINo+tv8BxKJi30HMkusg2jHE/Rv2eAI5/KfO53oLOMcQ7ABO/l1MpiFQRzPwVQho0gU+qdhvKcjE3odxt593upgGrsCdsA3rl4P5iDUc+/67zuHrFPB9JLE6INj94Hs60HUU0OT74DbQEfQE/RAjMsBA9CNAZ9Ae/Ah829z3Rgj4v+tgYwWlsH1vAAAAAElFTkSuQmCC);background-color:transparent;background-repeat:no-repeat;background-position:center center;background-size:cover;z-index:4}#qlwapp .qlwapp-box .qlwapp-days,#qlwapp .qlwapp-box .qlwapp-time,#qlwapp .qlwapp-box .qlwapp-label,#qlwapp .qlwapp-box .qlwapp-hidden,#qlwapp .qlwapp-box .qlwapp-offline-text{font-size:12px;line-height:1.5em;opacity:0.6;display:block}#qlwapp .qlwapp-box .qlwapp-days,#qlwapp .qlwapp-box .qlwapp-time{font-size:11px;font-style:italic}#qlwapp .qlwapp-box .qlwapp-name{display:block;font-weight:bold;line-height:1.5em}#qlwapp .qlwapp-box .qlwapp-body{overflow-x:hidden;overflow-y:auto}#qlwapp .qlwapp-box .qlwapp-body .qlwapp-carousel{max-height:470px;min-height:134px}#qlwapp .qlwapp-box .qlwapp-chat{padding:36px 0;display:flex;flex-direction:column;overflow:hidden;justify-content:center;align-items:center;height:100%}#qlwapp .qlwapp-box .qlwapp-user,#qlwapp .qlwapp-box .qlwapp-message{padding:16px 24px;position:relative;word-wrap:break-word;width:calc(100% - 36px * 2)}#qlwapp .qlwapp-box .qlwapp-user:before,#qlwapp .qlwapp-box .qlwapp-message:before{content:"";position:absolute;top:-6px;right:24px;width:13px;height:13px;transform:rotate(45deg)}#qlwapp .qlwapp-box .qlwapp-user{width:auto;max-width:75%;align-self:flex-start;justify-self:flex-end;margin-top:0}#qlwapp .qlwapp-box .qlwapp-user:before{top:auto;bottom:-6px;left:24px}#qlwapp .qlwapp-box .qlwapp-padding{padding-bottom:56px}#qlwapp .qlwapp-box .qlwapp-footer,#qlwapp .qlwapp-box .qlwapp-response{position:absolute;bottom:0;left:0;right:0;height:auto;width:100%}#qlwapp .qlwapp-box .qlwapp-footer,#qlwapp .qlwapp-box .qlwapp-footer pre,#qlwapp .qlwapp-box .qlwapp-footer textarea,#qlwapp .qlwapp-box .qlwapp-response,#qlwapp .qlwapp-box .qlwapp-response pre,#qlwapp .qlwapp-box .qlwapp-response textarea{max-height:160px}#qlwapp .qlwapp-box .qlwapp-footer pre,#qlwapp .qlwapp-box .qlwapp-footer textarea,#qlwapp .qlwapp-box .qlwapp-response pre,#qlwapp .qlwapp-box .qlwapp-response textarea{color:inherit;background-color:inherit}#qlwapp .qlwapp-box .qlwapp-footer:before,#qlwapp .qlwapp-box .qlwapp-response:before{pointer-events:none;position:absolute;content:"";height:59px;top:0;background:linear-gradient(315deg, transparent 0%, rgba(0,0,0,0.025) 100%);left:0;right:0}#qlwapp .qlwapp-box .qlwapp-footer{min-height:56px;display:flex;align-items:center;text-align:center;font-size:12px;padding:12px 36px}#qlwapp .qlwapp-box .qlwapp-footer p{padding:0;font-size:inherit}#qlwapp .qlwapp-box .qlwapp-footer p:last-child{margin-bottom:0}#qlwapp .qlwapp-box .qlwapp-response,#qlwapp .qlwapp-box .qlwapp-response pre,#qlwapp .qlwapp-box .qlwapp-response textarea,#qlwapp .qlwapp-box .qlwapp-response .qlwapp-buttons{min-height:56px}#qlwapp .qlwapp-box .qlwapp-response pre,#qlwapp .qlwapp-box .qlwapp-response textarea{width:100%;height:100%;resize:none;border:none;padding:18px 88px 18px 36px;font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;font-size:14px;font-weight:normal;line-height:20px;white-space:pre-wrap;word-wrap:break-word;border-radius:inherit;margin:0}#qlwapp .qlwapp-box .qlwapp-response pre{visibility:hidden}#qlwapp .qlwapp-box .qlwapp-response textarea{position:absolute;bottom:0;left:0}#qlwapp .qlwapp-box .qlwapp-response textarea:focus{outline:none}#qlwapp .qlwapp-box .qlwapp-response .qlwapp-buttons{position:absolute;top:0;right:21px;display:flex;align-items:center}#qlwapp .qlwapp-box .qlwapp-response .qlwapp-buttons.active>i{display:none}#qlwapp .qlwapp-box .qlwapp-response .qlwapp-buttons.active>i.qlwf-emoji{display:block}#qlwapp .qlwapp-box .qlwapp-response .qlwapp-buttons>i{opacity:0.4}#qlwapp .qlwapp-box .qlwapp-response .qlwapp-buttons>i,#qlwapp .qlwapp-box .qlwapp-response .qlwapp-buttons>a{cursor:pointer;margin:0 0 0 10px;display:inherit;font-size:18px;line-height:24px;text-decoration:none}#qlwapp .qlwapp-previous,#qlwapp .qlwapp-close,#qlwapp .qlwapp-toggle,#qlwapp .qlwapp-box .qlwapp-header,#qlwapp .qlwapp-box .qlwapp-contact,#qlwapp .qlwapp-box .qlwapp-user{color:#ffffff}#qlwapp.qlwapp-bubble .qlwapp-toggle .qlwapp-text{color:#303030}#qlwapp .qlwapp-box,#qlwapp .qlwapp-box:before{background-color:#fff}#qlwapp .qlwapp-box .qlwapp-account{background-color:#fff}#qlwapp .qlwapp-box .qlwapp-account:not(:first-child){border-top:1px solid #f5f5f5}#qlwapp .qlwapp-box .qlwapp-avatar .qlwapp-avatar-container{background-color:#eee}#qlwapp .qlwapp-box .qlwapp-message,#qlwapp .qlwapp-box .qlwapp-message:before{background-color:#eee}#qlwapp .qlwapp-box .qlwapp-footer,#qlwapp .qlwapp-box .qlwapp-response{color:#303030;background-color:#fff;border-top:1px solid #e6e6e6}#qlwapp .qlwapp-toggle,#qlwapp .qlwapp-box .qlwapp-header,#qlwapp .qlwapp-box .qlwapp-user,#qlwapp .qlwapp-box .qlwapp-user:before{background-color:#25d366}#qlwapp{display:none}#qlwapp.qlwapp-show .qlwapp-box{visibility:visible;opacity:1;transform:translateY(0) scale(1);display:block}#qlwapp.qlwapp-transition .qlwapp-box{visibility:visible;display:block}#qlwapp.qlwapp-bubble.qlwapp-show .qlwapp-toggle .qlwapp-icon{transform:scale(0, 0);opacity:0}#qlwapp.qlwapp-bubble.qlwapp-show .qlwapp-toggle .qlwapp-close{transform:scale(1, 1);opacity:1}#qlwapp.qlwapp-bubble .qlwapp-toggle .qlwapp-close{transform:scale(0, 0);opacity:0}#qlwapp.qlwapp-bubble .qlwapp-toggle .qlwapp-icon{transform:scale(1, 1);opacity:1}#qlwapp.qlwapp-bubble .qlwapp-toggle .qlwapp-icon,#qlwapp.qlwapp-bubble .qlwapp-toggle .qlwapp-close{transition:transform 300ms cubic-bezier(0.215, 0.61, 0.355, 1),opacity 300ms ease-in}#qlwapp .qlwapp-box{display:none;opacity:0;visibility:hidden;transform:translateY(50px);transition:transform 300ms cubic-bezier(0.215, 0.61, 0.355, 1),opacity 300ms ease-in}@media (min-width: 430px){#qlwapp .qlwapp-box{transform:translateY(50px) scale(0.9)}}#qlwapp .qlwapp-box .qlwapp-carousel{display:flex;width:200%;height:100%}#qlwapp .qlwapp-box .qlwapp-carousel .qlwapp-slide{width:50%;transition:max-height 500ms cubic-bezier(0.215, 0.61, 0.355, 1) 1000ms,transform 300ms cubic-bezier(0.215, 0.61, 0.355, 1) 500ms,opacity 500ms ease-in 500ms}#qlwapp .qlwapp-box .qlwapp-header .qlwapp-slide{max-height:300px}#qlwapp .qlwapp-box .qlwapp-header .qlwapp-name,#qlwapp .qlwapp-box .qlwapp-header .qlwapp-label,#qlwapp .qlwapp-box .qlwapp-header .qlwapp-avatar{opacity:0;transition:transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.3s,opacity ease-in 0.3s}#qlwapp .qlwapp-box .qlwapp-header .qlwapp-name,#qlwapp .qlwapp-box .qlwapp-header .qlwapp-label{transform:translateX(56px)}#qlwapp .qlwapp-box .qlwapp-header .qlwapp-avatar{transform:scale(0.5)}#qlwapp .qlwapp-box .qlwapp-header .qlwapp-name{transition-delay:800ms}#qlwapp .qlwapp-box .qlwapp-header .qlwapp-label{transition-delay:850ms}#qlwapp .qlwapp-box .qlwapp-header .qlwapp-avatar{transition-delay:900ms}#qlwapp .qlwapp-box .qlwapp-footer,#qlwapp .qlwapp-box .qlwapp-response,#qlwapp .qlwapp-box .qlwapp-previous,#qlwapp .qlwapp-box .qlwapp-message,#qlwapp .qlwapp-box .qlwapp-user{transition:transform cubic-bezier(0.215, 0.61, 0.355, 1) 600ms,opacity ease-in 200ms}#qlwapp .qlwapp-box .qlwapp-response,#qlwapp .qlwapp-box .qlwapp-previous,#qlwapp .qlwapp-box .qlwapp-user{opacity:0}#qlwapp .qlwapp-box .qlwapp-response{pointer-events:none}#qlwapp .qlwapp-box .qlwapp-previous{transform:translateX(56px)}#qlwapp .qlwapp-box .qlwapp-user{transform:translateY(56px)}#qlwapp .qlwapp-box .qlwapp-close{transition:opacity 300ms cubic-bezier(0.215, 0.61, 0.355, 1)}#qlwapp .qlwapp-box .qlwapp-description{transition:transform 600ms cubic-bezier(0.215, 0.61, 0.355, 1),opacity 900ms cubic-bezier(0.215, 0.61, 0.355, 1)}#qlwapp .qlwapp-box .qlwapp-account{transition:transform 600ms cubic-bezier(0.215, 0.61, 0.355, 1),opacity 150ms ease-in}#qlwapp .qlwapp-box .qlwapp-previous{transition-delay:800ms}#qlwapp .qlwapp-box .qlwapp-message{transition-delay:900ms}#qlwapp .qlwapp-box .qlwapp-close,#qlwapp .qlwapp-box .qlwapp-description{transition-delay:900ms}#qlwapp .qlwapp-box .qlwapp-user{transition-delay:200ms}#qlwapp .qlwapp-box .qlwapp-account:nth-of-type(6){transition-delay:600ms}#qlwapp .qlwapp-box .qlwapp-account:nth-of-type(5){transition-delay:500ms}#qlwapp .qlwapp-box .qlwapp-account:nth-of-type(4){transition-delay:400ms}#qlwapp .qlwapp-box .qlwapp-account:nth-of-type(3){transition-delay:300ms}#qlwapp .qlwapp-box .qlwapp-account:nth-of-type(2){transition-delay:200ms}#qlwapp .qlwapp-box .qlwapp-account:nth-of-type(1){transition-delay:100ms}#qlwapp .qlwapp-box .qlwapp-slide .qlwapp-message{opacity:0;transform:translateY(-56px)}#qlwapp .qlwapp-box .qlwapp-slide .qlwapp-box .qlwapp-account:hover{background-color:#fafafa}#qlwapp .qlwapp-box.response .qlwapp-carousel .qlwapp-slide{transform:translateX(-100%)}#qlwapp .qlwapp-box.response .qlwapp-body .qlwapp-carousel{overflow:hidden;min-height:122px}#qlwapp .qlwapp-box.response .qlwapp-close{transition-delay:0ms}#qlwapp .qlwapp-box.response .qlwapp-close,#qlwapp .qlwapp-box.response .qlwapp-footer,#qlwapp .qlwapp-box.response .qlwapp-description,#qlwapp .qlwapp-box.response .qlwapp-account{opacity:0}#qlwapp .qlwapp-box.response .qlwapp-account{transform:translateY(-33.333%);border-top-color:transparent !important}#qlwapp .qlwapp-box.response .qlwapp-user{display:block}#qlwapp .qlwapp-box.response .qlwapp-message,#qlwapp .qlwapp-box.response .qlwapp-previous,#qlwapp .qlwapp-box.response .qlwapp-response{opacity:1}#qlwapp .qlwapp-box.response .qlwapp-response{pointer-events:all}#qlwapp .qlwapp-box.response .qlwapp-message,#qlwapp .qlwapp-box.response .qlwapp-previous{transform:translate(0)}#qlwapp .qlwapp-box.response .qlwapp-header .qlwapp-slide{max-height:84px}#qlwapp .qlwapp-box.response .qlwapp-header .qlwapp-name,#qlwapp .qlwapp-box.response .qlwapp-header .qlwapp-avatar{opacity:1}#qlwapp .qlwapp-box.response .qlwapp-header .qlwapp-label{opacity:0.5}#qlwapp .qlwapp-box.response .qlwapp-header .qlwapp-name,#qlwapp .qlwapp-box.response .qlwapp-header .qlwapp-label{transform:translateX(0)}#qlwapp .qlwapp-box.response .qlwapp-header .qlwapp-avatar{transform:scale(1)}#qlwapp .qlwapp-box.response.opening .qlwapp-footer,#qlwapp .qlwapp-box.response.opening .qlwapp-response,#qlwapp .qlwapp-box.response.opening .qlwapp-close,#qlwapp .qlwapp-box.response.opening .qlwapp-previous,#qlwapp .qlwapp-box.response.opening .qlwapp-description,#qlwapp .qlwapp-box.response.opening .qlwapp-header .qlwapp-name,#qlwapp .qlwapp-box.response.opening .qlwapp-header .qlwapp-label{visibility:visible}#qlwapp .qlwapp-box.texting .qlwapp-body{overflow-y:auto}#qlwapp .qlwapp-box.texting .qlwapp-user{opacity:1;transform:translate(0)}#qlwapp .qlwapp-box.closing .qlwapp-message{transition:all 0.4s;transform:translateY(100%);opacity:0}#qlwapp .qlwapp-box.closing .qlwapp-previous{transition-delay:0ms;transform:translateX(-24px);opacity:0;transition:transform cubic-bezier(0.215, 0.61, 0.355, 1) 300ms,opacity ease-out 200ms}#qlwapp .qlwapp-box.closing .qlwapp-description{opacity:0}body.rtl #qlwapp.qlwapp-button .qlwapp-toggle .qlwapp-icon{margin:0 0 0 12px}body.rtl #qlwapp .qlwapp-box .qlwapp-response .qlwapp-buttons{right:auto;left:21px;flex-direction:row-reverse}body.rtl #qlwapp .qlwapp-box .qlwapp-response .qlwapp-buttons>a{transform:rotate(180deg)}body.rtl #qlwapp .qlwapp-box .qlwapp-response pre,body.rtl #qlwapp .qlwapp-box .qlwapp-response textarea{padding:18px 36px 18px 88px}body.rtl #qlwapp .qlwapp-box.response .qlwapp-carousel .qlwapp-slide{transform:translateX(100%)}body.rtl #qlwapp .qlwapp-box .qlwapp-contact{flex-direction:row-reverse}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
assets/frontend/js/frontend.asset.php CHANGED
@@ -1 +1 @@
1
- <?php return array('dependencies' => array('jquery'), 'version' => '83eb9745a9ad52c33397e45e99b8a87b');
1
+ <?php return array('dependencies' => array('jquery'), 'version' => '021fa4de1c6ea4db860e85f702082b24');
assets/frontend/js/frontend.js CHANGED
@@ -1,572 +1 @@
1
- /******/ (function(modules) { // webpackBootstrap
2
- /******/ // The module cache
3
- /******/ var installedModules = {};
4
- /******/
5
- /******/ // The require function
6
- /******/ function __webpack_require__(moduleId) {
7
- /******/
8
- /******/ // Check if module is in cache
9
- /******/ if(installedModules[moduleId]) {
10
- /******/ return installedModules[moduleId].exports;
11
- /******/ }
12
- /******/ // Create a new module (and put it into the cache)
13
- /******/ var module = installedModules[moduleId] = {
14
- /******/ i: moduleId,
15
- /******/ l: false,
16
- /******/ exports: {}
17
- /******/ };
18
- /******/
19
- /******/ // Execute the module function
20
- /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
21
- /******/
22
- /******/ // Flag the module as loaded
23
- /******/ module.l = true;
24
- /******/
25
- /******/ // Return the exports of the module
26
- /******/ return module.exports;
27
- /******/ }
28
- /******/
29
- /******/
30
- /******/ // expose the modules object (__webpack_modules__)
31
- /******/ __webpack_require__.m = modules;
32
- /******/
33
- /******/ // expose the module cache
34
- /******/ __webpack_require__.c = installedModules;
35
- /******/
36
- /******/ // define getter function for harmony exports
37
- /******/ __webpack_require__.d = function(exports, name, getter) {
38
- /******/ if(!__webpack_require__.o(exports, name)) {
39
- /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
40
- /******/ }
41
- /******/ };
42
- /******/
43
- /******/ // define __esModule on exports
44
- /******/ __webpack_require__.r = function(exports) {
45
- /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
46
- /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
47
- /******/ }
48
- /******/ Object.defineProperty(exports, '__esModule', { value: true });
49
- /******/ };
50
- /******/
51
- /******/ // create a fake namespace object
52
- /******/ // mode & 1: value is a module id, require it
53
- /******/ // mode & 2: merge all properties of value into the ns
54
- /******/ // mode & 4: return value when already ns object
55
- /******/ // mode & 8|1: behave like require
56
- /******/ __webpack_require__.t = function(value, mode) {
57
- /******/ if(mode & 1) value = __webpack_require__(value);
58
- /******/ if(mode & 8) return value;
59
- /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
60
- /******/ var ns = Object.create(null);
61
- /******/ __webpack_require__.r(ns);
62
- /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
63
- /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
64
- /******/ return ns;
65
- /******/ };
66
- /******/
67
- /******/ // getDefaultExport function for compatibility with non-harmony modules
68
- /******/ __webpack_require__.n = function(module) {
69
- /******/ var getter = module && module.__esModule ?
70
- /******/ function getDefault() { return module['default']; } :
71
- /******/ function getModuleExports() { return module; };
72
- /******/ __webpack_require__.d(getter, 'a', getter);
73
- /******/ return getter;
74
- /******/ };
75
- /******/
76
- /******/ // Object.prototype.hasOwnProperty.call
77
- /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
78
- /******/
79
- /******/ // __webpack_public_path__
80
- /******/ __webpack_require__.p = "";
81
- /******/
82
- /******/
83
- /******/ // Load entry module and return exports
84
- /******/ return __webpack_require__(__webpack_require__.s = "./src/frontend/frontend.js");
85
- /******/ })
86
- /************************************************************************/
87
- /******/ ({
88
-
89
- /***/ "./node_modules/@babel/runtime/helpers/typeof.js":
90
- /*!*******************************************************!*\
91
- !*** ./node_modules/@babel/runtime/helpers/typeof.js ***!
92
- \*******************************************************/
93
- /*! no static exports found */
94
- /***/ (function(module, exports) {
95
-
96
- function _typeof(obj) {
97
- "@babel/helpers - typeof";
98
-
99
- if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") {
100
- module.exports = _typeof = function _typeof(obj) {
101
- return typeof obj;
102
- };
103
- } else {
104
- module.exports = _typeof = function _typeof(obj) {
105
- return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
106
- };
107
- }
108
-
109
- return _typeof(obj);
110
- }
111
-
112
- module.exports = _typeof;
113
-
114
- /***/ }),
115
-
116
- /***/ "./src/frontend/frontend.js":
117
- /*!**********************************!*\
118
- !*** ./src/frontend/frontend.js ***!
119
- \**********************************/
120
- /*! no exports provided */
121
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
122
-
123
- "use strict";
124
- __webpack_require__.r(__webpack_exports__);
125
- /* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "./node_modules/@babel/runtime/helpers/typeof.js");
126
- /* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__);
127
- /* harmony import */ var _scss_style_scss__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./scss/style.scss */ "./src/frontend/scss/style.scss");
128
- /* harmony import */ var _scss_style_scss__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_scss_style_scss__WEBPACK_IMPORTED_MODULE_1__);
129
- /* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! jquery */ "jquery");
130
- /* harmony import */ var jquery__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(jquery__WEBPACK_IMPORTED_MODULE_2__);
131
-
132
- ///import './scss/editor.scss';
133
-
134
-
135
-
136
- if (!Array.prototype.timedaysIncludes) {
137
- Object.defineProperty(Array.prototype, 'timedaysIncludes', {
138
- value: function value(day) {
139
- if (this.includes(parseInt(day))) {
140
- return true;
141
- }
142
-
143
- if (this.includes(day.toString())) {
144
- return true;
145
- }
146
-
147
- return false;
148
- }
149
- });
150
- }
151
-
152
- function getClosestNextDay(today, timedays) {
153
- //next days
154
- for (var i = today; i <= 6; i++) {
155
- if (timedays.timedaysIncludes(i)) {
156
- return i;
157
- }
158
- } //next days of next week
159
-
160
-
161
- for (var i = 0; i <= today; i++) {
162
- if (timedays.timedaysIncludes(i)) {
163
- return i;
164
- }
165
- }
166
- }
167
-
168
- (function ($, window, document, undefined) {
169
- 'use strict';
170
-
171
- $.fn.simulateClick = function () {
172
- return this.each(function () {
173
- if ('createEvent' in document) {
174
- var doc = this.ownerDocument,
175
- evt = doc.createEvent('MouseEvents');
176
- evt.initMouseEvent('click', true, true, doc.defaultView, 1, 0, 0, 0, 0, false, false, false, false, 0, null);
177
- this.dispatchEvent(evt);
178
- } else {
179
- this.click(); // IE Boss!
180
- }
181
- });
182
- };
183
-
184
- var defaults = {};
185
-
186
- function Plugin(element, options) {
187
- this.$qlwapp = $(element); //this.settings = $.extend({}, defaults, options);
188
-
189
- this.init(this);
190
- }
191
-
192
- Plugin.prototype = {
193
- timeDateToString: function timeDateToString(time) {
194
- var minutes = '' + time.getMinutes();
195
-
196
- if (minutes.length === 1) {
197
- minutes = '0' + minutes;
198
- }
199
-
200
- return time.getHours() + ':' + minutes;
201
- },
202
- timeStringToInt: function timeStringToInt(a, b) {
203
- return parseInt(a + b);
204
- },
205
- isMobile: function isMobile(plugin) {
206
- var match = window.matchMedia('(pointer:coarse)');
207
- return match && match.matches;
208
- },
209
- init: function init(plugin) {
210
- var $qlwapp = this.$qlwapp;
211
- $qlwapp.on('qlwapp.init', function (e) {
212
- plugin.mobiledevice = plugin.isMobile();
213
- /*
214
- plugin.mobiledevice = (/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent));
215
- */
216
- });
217
- $qlwapp.on('qlwapp.time', function (e) {
218
- var $contact = $(e.target),
219
- timedays = $contact.data('timedays') || [],
220
- timezone = parseInt($contact.data('timezone')) || 0,
221
- dateDay = new Date(new Date().getTime() + timezone * 60 * 1000).getUTCDay().toString(); // if filter by days
222
- // if current day dosent match
223
- // hide time
224
- // return
225
- // display avialable day
226
-
227
- if (timedays && timedays.length && !timedays.includes(dateDay)) {
228
- $contact.addClass('qlwapp-readonly');
229
- $contact.find('.qlwapp-days').show();
230
- $contact.find('.qlwapp-time').hide();
231
- var closest = getClosestNextDay(dateDay, timedays);
232
- $contact.find(".day" + closest).addClass('qlwapp-available-day');
233
- return true;
234
- } // if filter by days
235
- // if current day match
236
- // hide days
237
-
238
-
239
- if (timedays && timedays.length && timedays.includes(dateDay)) {
240
- $contact.find('.qlwapp-days').hide();
241
- $contact.find('.qlwapp-time').show();
242
- } // now lets filter by hours
243
-
244
-
245
- var timefrom = $contact.data('timefrom') || false,
246
- timeto = $contact.data('timeto') || false; // Don't scape timezone as could be 0
247
- // return if timeto dosent exits
248
- // return if timefrom dosent exits
249
- // return if timeto & timefrom are equals
250
-
251
- if (!timeto || !timefrom || timefrom === timeto) {
252
- return true;
253
- } // Get offset between browser and contact timezone in minutes
254
-
255
-
256
- var timeCurrent = new Date(),
257
- n = timeCurrent.getTimezoneOffset(),
258
- timeZoneOffset = -n - timezone; // Convert user avaibility to browser local hour
259
- // Variables with a date are created by reference!
260
-
261
- var timeTo = new Date(),
262
- timeFrom = new Date();
263
- var hr, min; // Add offset timeonze to contact timefrom
264
-
265
- hr = plugin.timeStringToInt(timefrom[0], timefrom[1]);
266
- min = plugin.timeStringToInt(timefrom[3], timefrom[4]);
267
- timeFrom.setHours(hr);
268
- timeFrom.setMinutes(min + timeZoneOffset); // Add offset timezone to contact timeto
269
-
270
- hr = plugin.timeStringToInt(timeto[0], timeto[1]);
271
- min = plugin.timeStringToInt(timeto[3], timeto[4]);
272
- timeTo.setHours(hr);
273
- timeTo.setMinutes(min + timeZoneOffset); // Validate if browser current time is between contact times
274
-
275
- if (!(timeCurrent.getTime() >= timeFrom.getTime() && timeCurrent.getTime() <= timeTo.getTime())) {
276
- $contact.addClass('qlwapp-readonly');
277
- $contact.find('.qlwapp-days').hide();
278
- $contact.find('.qlwapp-time').show();
279
- }
280
-
281
- if (!timezone) {
282
- return true;
283
- }
284
-
285
- $contact.find('.from').text(plugin.timeDateToString(timeFrom));
286
- $contact.find('.to').text(plugin.timeDateToString(timeTo));
287
- });
288
- $qlwapp.on('qlwapp.pro', function (e) {
289
- $qlwapp.find('.qlwapp-toggle').trigger('qlwapp.time');
290
- $qlwapp.find('.qlwapp-account').each(function (i, contact) {
291
- $(contact).trigger('qlwapp.time');
292
- });
293
- });
294
- /* // luego se veraa
295
- // Contacts time is over
296
- // -----------------------------------------------------------------------
297
- $qlwapp.on('qlwapp.pro', function (e) {
298
-
299
- var $container = $(e.delegateTarget),
300
- $box = $container.find('.qlwapp-box'),
301
- contactstimeout = $box.find('.qlwapp-footer').data('contactstimeout') || false;
302
-
303
- if ($box.length && contactstimeout) {
304
-
305
- var contacts = $qlwapp.find('.qlwapp-account').length,
306
- disabled = $qlwapp.find('.qlwapp-account.qlwapp-disabled').length,
307
- readonly = $qlwapp.find('.qlwapp-account.qlwapp-readonly').length;
308
-
309
- // reveer que pasa con el disabled del boton
310
- if (contacts === (disabled + readonly)) {
311
- if (contactstimeout === 'yes') {
312
- $qlwapp.addClass('qlwapp-readonly');
313
- }
314
- // else {
315
- // $qlwapp.removeClass('qlwapp-js-ready');
316
- // }
317
-
318
- }
319
- }
320
- });
321
- */
322
-
323
- $qlwapp.on('qlwapp.resize', function (e) {
324
- if ($(this).hasClass('qlwapp-show')) {
325
- $(this).trigger('qlwapp.toggle');
326
- }
327
- });
328
- $qlwapp.on('qlwapp.init', function (e) {
329
- if (!plugin.mobiledevice) {
330
- $qlwapp.addClass('desktop').removeClass('mobile');
331
- } else {
332
- $qlwapp.addClass('mobile').removeClass('desktop');
333
- }
334
-
335
- $qlwapp.addClass('qlwapp-js-ready');
336
- }); // is Premium!
337
- // -----------------------------------------------------------------------
338
-
339
- $qlwapp.on('qlwapp.init', function (e) {
340
- if ($qlwapp.hasClass('qlwapp-premium')) {
341
- $qlwapp.trigger('qlwapp.pro');
342
- }
343
- }); // Ready!
344
- // -----------------------------------------------------------------------
345
-
346
- $qlwapp.addClass('qlwapp-js-ready').trigger('qlwapp.init'); // Height
347
- // -----------------------------------------------------------------------
348
-
349
- $qlwapp.on('qlwapp.height', function (e) {
350
- var $container = $(e.delegateTarget),
351
- $body = $container.find('.qlwapp-body'),
352
- $carousel = $body.find('.qlwapp-carousel');
353
- var $header = $container.find('.qlwapp-header'),
354
- $footer = $container.find('.qlwapp-footer'),
355
- height = $(window).innerHeight() - $header.outerHeight() - $footer.outerHeight();
356
-
357
- if (!plugin.mobiledevice) {
358
- height = $(window).innerHeight() * 0.7 - $header.outerHeight() - $footer.outerHeight();
359
- }
360
-
361
- $carousel.css({
362
- 'max-height': height + 'px'
363
- });
364
- }); // Toggle
365
- // -----------------------------------------------------------------------
366
-
367
- $qlwapp.on('qlwapp.toggle', function (e) {
368
- var $container = $(e.delegateTarget),
369
- $box = $container.find('.qlwapp-box');
370
- $container.addClass('qlwapp-transition');
371
- $box.removeClass('response texting');
372
- setTimeout(function () {
373
- $container.toggleClass('qlwapp-show').trigger('qlwapp.height');
374
- }, 10);
375
- setTimeout(function () {
376
- $container.toggleClass('qlwapp-transition');
377
- }, 300);
378
- }); // Click
379
- // -----------------------------------------------------------------------
380
-
381
- $qlwapp.on('click', '[data-action=box], [data-action=close]', function (e) {
382
- e.preventDefault();
383
- $(e.delegateTarget).trigger('qlwapp.toggle');
384
- }); // Whatsapp
385
- // -----------------------------------------------------------------------
386
-
387
- $qlwapp.on('click', '[data-action=open]', function (e) {
388
- var url = 'https://api.whatsapp.com/send';
389
-
390
- if (!plugin.mobiledevice) {
391
- url = 'https://web.whatsapp.com/send';
392
- }
393
-
394
- var $button = $(this),
395
- message = $button.data('message') || '',
396
- phone = $button.data('phone') || '';
397
- $(this).attr('href', url + '?phone=' + phone + '&text=' + message);
398
- }); // Response
399
- // -----------------------------------------------------------------------
400
-
401
- $qlwapp.on('click', '[data-action=previous]', function (e) {
402
- e.preventDefault();
403
- var $container = $(e.delegateTarget),
404
- $box = $container.find('.qlwapp-box'); //,
405
- //$user = $box.find('.qlwapp-user');
406
-
407
- $box.addClass('closing');
408
- setTimeout(function () {
409
- $box.removeClass('response').removeClass('closing');
410
- $box.removeClass('texting'); //$user.empty();
411
- }, 300);
412
- });
413
- $qlwapp.on('click', '[data-action=chat]', function (e) {
414
- e.preventDefault();
415
- var $contact = $(this),
416
- $container = $(e.delegateTarget),
417
- $box = $container.find('.qlwapp-box'),
418
- avatar = $contact.find('.qlwapp-avatar img').attr('src'),
419
- name = $contact.find('.qlwapp-name').text(),
420
- label = $contact.find('.qlwapp-label').text(),
421
- time = $contact.find('.qlwapp-time').text(),
422
- //url = $contact.data('url'),
423
- message = $contact.data('message'),
424
- phone = $contact.data('phone');
425
- $box.addClass('response').addClass('opening');
426
- $container.trigger('qlwapp.height');
427
- setTimeout(function () {
428
- $box.removeClass('opening');
429
- }, 300);
430
- var $reply = $box.find('.qlwapp-reply'),
431
- $header = $box.find('.qlwapp-header'),
432
- $avatar = $header.find('.qlwapp-avatar img'),
433
- $number = $header.find('.qlwapp-number'),
434
- $name = $header.find('.qlwapp-name'),
435
- $label = $header.find('.qlwapp-label'),
436
- $message = $box.find('.qlwapp-message');
437
- var meta = time ? time + ' - ' + label : label;
438
- $reply.data('phone', phone); //.data('message', message);
439
-
440
- $avatar.attr('src', avatar);
441
- $avatar.attr('alt', name);
442
- $number.html(phone);
443
- $name.html(name);
444
- $label.html(meta);
445
- $message.html(message);
446
- }); // Response
447
- // -----------------------------------------------------------------------
448
-
449
- $qlwapp.on('click', 'textarea', function (e) {
450
- $qlwapp.off('qlwapp.resize');
451
- });
452
- $qlwapp.on('keypress', 'textarea', function (e) {
453
- if (e.keyCode == 13) {
454
- setTimeout(function () {
455
- $qlwapp.find('.qlwapp-reply').simulateClick('click'); //window.location = $qlwapp.find('.qlwapp-reply').attr('href');
456
- }, 100);
457
- }
458
- });
459
- $qlwapp.on('keyup', '[data-action=response]', function (e) {
460
- e.preventDefault();
461
- var $textarea = $(this).find('textarea'),
462
- $pre = $(this).find('pre'),
463
- $reply = $(this).find('.qlwapp-reply'),
464
- $container = $(e.delegateTarget),
465
- $box = $container.find('.qlwapp-box'),
466
- //$user = $box.find('.qlwapp-user'),
467
- $buttons = $box.find('.qlwapp-buttons');
468
- $pre.html($textarea.val());
469
- setTimeout(function () {
470
- $box.addClass('texting').css({
471
- 'padding-bottom': $pre.outerHeight()
472
- });
473
- $buttons.addClass('active');
474
- var message = $textarea.val();
475
- $reply.data('message', message);
476
-
477
- if (message == '') {
478
- $box.removeClass('texting');
479
- $buttons.removeClass('active');
480
- }
481
- }, 300);
482
- }); //$qlwapp.on('qlwapp.init', function (e) {
483
-
484
- if ($qlwapp.hasClass('auto-load') && !!$.cookie && !$.cookie('qlwapp-auto-load')) {
485
- var delay = $qlwapp.data('autoloadelay');
486
- setTimeout(function () {
487
- $qlwapp.trigger('qlwapp.toggle');
488
- }, delay);
489
- $.cookie('qlwapp-auto-load', 'auto open cookie', {
490
- expires: 1
491
- });
492
- } //});
493
- //$qlwapp.trigger('qlwapp.init');
494
-
495
- }
496
- };
497
-
498
- $.fn.qlwapp = function (options) {
499
- var args = arguments;
500
-
501
- if (options === undefined || _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0___default()(options) === 'object') {
502
- return this.each(function () {
503
- if (!$.data(this, 'plugin_qlwapp')) {
504
- $.data(this, 'plugin_qlwapp', new Plugin(this, options));
505
- }
506
- });
507
- } else if (typeof options === 'string' && options[0] !== '_' && options !== 'init') {
508
- // Cache the method call to make it possible to return a value
509
- var returns;
510
- this.each(function () {
511
- var instance = $.data(this, 'plugin_qlwapp'); // Tests that there's already a plugin-instance and checks that the requested public method exists
512
-
513
- if (instance instanceof Plugin && typeof instance[options] === 'function') {
514
- // Call the method of our plugin instance, and pass it the supplied arguments.
515
- returns = instance[options].apply(instance, Array.prototype.slice.call(args, 1));
516
- } // Allow instances to be destroyed via the 'destroy' method
517
-
518
-
519
- if (options === 'destroy') {
520
- $.data(this, 'plugin_qlwapp', null);
521
- }
522
- }); // If the earlier cached method gives a value back return the value, otherwise return this to preserve chainability.
523
-
524
- return returns !== undefined ? returns : this;
525
- }
526
- };
527
-
528
- function qlwapp_init() {
529
- $('div#qlwapp').qlwapp();
530
- }
531
-
532
- qlwapp_init();
533
- $(window).on('load', function () {
534
- qlwapp_init(); //$('div#qlwapp').trigger('qlwapp.toggle');
535
- });
536
- $(window).on('click', function (e) {
537
- if (!$(e.target).closest('#qlwapp.qlwapp-show').length) {
538
- $('div#qlwapp.qlwapp-show').trigger('qlwapp.toggle');
539
- }
540
- });
541
- $(window).on('resize', function (e) {
542
- $('div#qlwapp').trigger('qlwapp.resize');
543
- $('div#qlwapp').trigger('qlwapp.init');
544
- });
545
- })(jquery__WEBPACK_IMPORTED_MODULE_2___default.a, window, document);
546
-
547
- /***/ }),
548
-
549
- /***/ "./src/frontend/scss/style.scss":
550
- /*!**************************************!*\
551
- !*** ./src/frontend/scss/style.scss ***!
552
- \**************************************/
553
- /*! no static exports found */
554
- /***/ (function(module, exports) {
555
-
556
- // removed by extract-text-webpack-plugin
557
-
558
- /***/ }),
559
-
560
- /***/ "jquery":
561
- /*!**********************************!*\
562
- !*** external {"this":"jQuery"} ***!
563
- \**********************************/
564
- /*! no static exports found */
565
- /***/ (function(module, exports) {
566
-
567
- (function() { module.exports = this["jQuery"]; }());
568
-
569
- /***/ })
570
-
571
- /******/ });
572
- //# sourceMappingURL=frontend.js.map
1
+ !function(t){var e={};function n(a){if(e[a])return e[a].exports;var i=e[a]={i:a,l:!1,exports:{}};return t[a].call(i.exports,i,i.exports,n),i.l=!0,i.exports}n.m=t,n.c=e,n.d=function(t,e,a){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:a})},n.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var a=Object.create(null);if(n.r(a),Object.defineProperty(a,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var i in t)n.d(a,i,function(e){return t[e]}.bind(null,i));return a},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s=2)}([function(t,e){function n(e){return"function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?t.exports=n=function(t){return typeof t}:t.exports=n=function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},n(e)}t.exports=n},function(t,e){!function(){t.exports=this.jQuery}()},function(t,e,n){"use strict";n.r(e);var a=n(0),i=n.n(a),o=(n(3),n(1)),r=n.n(o);Array.prototype.timedaysIncludes||Object.defineProperty(Array.prototype,"timedaysIncludes",{value:function(t){return!!this.includes(parseInt(t))||!!this.includes(t.toString())}}),function(t,e,n,a){function o(e,n){this.$qlwapp=t(e),this.init(this)}function r(){t("div#qlwapp").qlwapp()}t.fn.simulateClick=function(){return this.each((function(){if("createEvent"in n){var t=this.ownerDocument,e=t.createEvent("MouseEvents");e.initMouseEvent("click",!0,!0,t.defaultView,1,0,0,0,0,!1,!1,!1,!1,0,null),this.dispatchEvent(e)}else this.click()}))},o.prototype={timeDateToString:function(t){var e=""+t.getMinutes();return 1===e.length&&(e="0"+e),t.getHours()+":"+e},timeStringToInt:function(t,e){return parseInt(t+e)},isMobile:function(t){var n=e.matchMedia("(pointer:coarse)");return n&&n.matches},init:function(n){var a=this.$qlwapp;if(a.on("qlwapp.init",(function(t){n.mobiledevice=n.isMobile()})),a.on("qlwapp.time",(function(e){var a=t(e.target),i=a.data("timedays")||[],o=parseInt(a.data("timezone"))||0,r=new Date((new Date).getTime()+60*o*1e3).getUTCDay().toString();if(i&&i.length&&!i.includes(r)){a.addClass("qlwapp-readonly"),a.find(".qlwapp-days").show(),a.find(".qlwapp-time").hide();var p=function(t,e){for(var n=t;n<=6;n++)if(e.timedaysIncludes(n))return n;for(n=0;n<=t;n++)if(e.timedaysIncludes(n))return n}(r,i);return a.find(".day"+p).addClass("qlwapp-available-day"),!0}i&&i.length&&i.includes(r)&&(a.find(".qlwapp-days").hide(),a.find(".qlwapp-time").show());var l=a.data("timefrom")||!1,s=a.data("timeto")||!1;if(!s||!l||l===s)return!0;var d,u,c=new Date,f=-c.getTimezoneOffset()-o,g=new Date,w=new Date;if(d=n.timeStringToInt(l[0],l[1]),u=n.timeStringToInt(l[3],l[4]),w.setHours(d),w.setMinutes(u+f),d=n.timeStringToInt(s[0],s[1]),u=n.timeStringToInt(s[3],s[4]),g.setHours(d),g.setMinutes(u+f),c.getTime()>=w.getTime()&&c.getTime()<=g.getTime()||(a.addClass("qlwapp-readonly"),a.find(".qlwapp-days").hide(),a.find(".qlwapp-time").show()),!o)return!0;a.find(".from").text(n.timeDateToString(w)),a.find(".to").text(n.timeDateToString(g))})),a.on("qlwapp.pro",(function(e){a.find(".qlwapp-toggle").trigger("qlwapp.time"),a.find(".qlwapp-account").each((function(e,n){t(n).trigger("qlwapp.time")}))})),a.on("qlwapp.resize",(function(e){t(this).hasClass("qlwapp-show")&&t(this).trigger("qlwapp.toggle")})),a.on("qlwapp.init",(function(t){n.mobiledevice?a.addClass("mobile").removeClass("desktop"):a.addClass("desktop").removeClass("mobile"),a.addClass("qlwapp-js-ready")})),a.on("qlwapp.init",(function(t){a.hasClass("qlwapp-premium")&&a.trigger("qlwapp.pro")})),a.addClass("qlwapp-js-ready").trigger("qlwapp.init"),a.on("qlwapp.height",(function(a){var i=t(a.delegateTarget),o=i.find(".qlwapp-body").find(".qlwapp-carousel"),r=i.find(".qlwapp-header"),p=i.find(".qlwapp-footer"),l=t(e).innerHeight()-r.outerHeight()-p.outerHeight();n.mobiledevice||(l=.7*t(e).innerHeight()-r.outerHeight()-p.outerHeight()),o.css({"max-height":l+"px"})})),a.on("qlwapp.toggle",(function(e){var n=t(e.delegateTarget),a=n.find(".qlwapp-box");n.addClass("qlwapp-transition"),a.removeClass("response texting"),setTimeout((function(){n.toggleClass("qlwapp-show").trigger("qlwapp.height")}),10),setTimeout((function(){n.toggleClass("qlwapp-transition")}),300)})),a.on("click","[data-action=box], [data-action=close]",(function(e){e.preventDefault(),t(e.delegateTarget).trigger("qlwapp.toggle")})),a.on("click","[data-action=open]",(function(e){var a="https://api.whatsapp.com/send";n.mobiledevice||(a="https://web.whatsapp.com/send");var i=t(this),o=i.data("message")||"",r=i.data("phone")||"";t(this).attr("href",a+"?phone="+r+"&text="+o)})),a.on("click","[data-action=previous]",(function(e){e.preventDefault();var n=t(e.delegateTarget).find(".qlwapp-box");n.addClass("closing"),setTimeout((function(){n.removeClass("response").removeClass("closing"),n.removeClass("texting")}),300)})),a.on("click","[data-action=chat]",(function(e){e.preventDefault();var n=t(this),a=t(e.delegateTarget),i=a.find(".qlwapp-box"),o=n.find(".qlwapp-avatar img").attr("src"),r=n.find(".qlwapp-name").text(),p=n.find(".qlwapp-label").text(),l=n.find(".qlwapp-time").text(),s=n.data("message"),d=n.data("phone");i.addClass("response").addClass("opening"),a.trigger("qlwapp.height"),setTimeout((function(){i.removeClass("opening")}),300);var u=i.find(".qlwapp-reply"),c=i.find(".qlwapp-header"),f=c.find(".qlwapp-avatar img"),g=c.find(".qlwapp-number"),w=c.find(".qlwapp-name"),m=c.find(".qlwapp-label"),h=i.find(".qlwapp-message"),q=l?l+" - "+p:p;u.data("phone",d),f.attr("src",o),f.attr("alt",r),g.html(d),w.html(r),m.html(q),h.html(s)})),a.on("click","textarea",(function(t){a.off("qlwapp.resize")})),a.on("keypress","textarea",(function(t){13==t.keyCode&&setTimeout((function(){a.find(".qlwapp-reply").simulateClick("click")}),100)})),a.on("keyup","[data-action=response]",(function(e){e.preventDefault();var n=t(this).find("textarea"),a=t(this).find("pre"),i=t(this).find(".qlwapp-reply"),o=t(e.delegateTarget).find(".qlwapp-box"),r=o.find(".qlwapp-buttons");a.html(n.val()),setTimeout((function(){o.addClass("texting").css({"padding-bottom":a.outerHeight()}),r.addClass("active");var t=n.val();i.data("message",t),""==t&&(o.removeClass("texting"),r.removeClass("active"))}),300)})),a.hasClass("auto-load")&&t.cookie&&!t.cookie("qlwapp-auto-load")){var i=a.data("autoloadelay");setTimeout((function(){a.trigger("qlwapp.toggle")}),i),t.cookie("qlwapp-auto-load","auto open cookie",{expires:1})}}},t.fn.qlwapp=function(e){var n,a=arguments;return void 0===e||"object"===i()(e)?this.each((function(){t.data(this,"plugin_qlwapp")||t.data(this,"plugin_qlwapp",new o(this,e))})):"string"==typeof e&&"_"!==e[0]&&"init"!==e?(this.each((function(){var i=t.data(this,"plugin_qlwapp");i instanceof o&&"function"==typeof i[e]&&(n=i[e].apply(i,Array.prototype.slice.call(a,1))),"destroy"===e&&t.data(this,"plugin_qlwapp",null)})),void 0!==n?n:this):void 0},r(),t(e).on("load",(function(){r()})),t(e).on("click",(function(e){t(e.target).closest("#qlwapp.qlwapp-show").length||t("div#qlwapp.qlwapp-show").trigger("qlwapp.toggle")})),t(e).on("resize",(function(e){t("div#qlwapp").trigger("qlwapp.resize"),t("div#qlwapp").trigger("qlwapp.init")}))}(r.a,window,document)},function(t,e){}]);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
includes/view/backend/pages/button.php CHANGED
@@ -19,6 +19,20 @@
19
  <option value="yes" <?php selected($button['box'], 'yes'); ?>><?php esc_html_e('Enable contact box', 'wp-whatsapp-chat'); ?></option>
20
  <option value="no" <?php selected($button['box'], 'no'); ?>><?php esc_html_e('Disable contact box', 'wp-whatsapp-chat'); ?></option>
21
  </select>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
22
  </td>
23
  </tr>
24
  <tr>
@@ -67,22 +81,21 @@
67
  <th scope="row"><?php esc_html_e('Text', 'wp-whatsapp-chat'); ?></th>
68
  <td>
69
  <input type="text" name="text" placeholder="<?php echo esc_html($button['text']); ?>" value="<?php echo esc_attr($button['text']); ?>" class="qlwapp-input" />
70
- <p class="description hidden"><?php esc_html_e('Customize your text.', 'wp-whatsapp-chat'); ?></p>
71
  </td>
72
  </tr>
73
  <tr>
74
  <th scope="row"><?php esc_html_e('Phone', 'wp-whatsapp-chat'); ?></th>
75
  <td>
76
- <input type="text" name="phone" placeholder="" value="<?php echo esc_attr($button['phone']); ?>" class="qlwapp-input" required="required" />
77
- <p class="description hidden"><?php esc_html_e('Full phone number in international format.', 'wp-whatsapp-chat'); ?></p>
78
-
79
  </td>
80
  </tr>
81
  <tr>
82
  <th scope="row"><?php esc_html_e('Message', 'wp-whatsapp-chat'); ?></th>
83
  <td>
84
  <textarea maxlength="500" style="width:75%;height:50px;padding:8px;" name="message" placeholder="<?php echo esc_html($button['message']); ?>"><?php echo esc_html(trim($button['message'])); ?></textarea>
85
- <p class="description hidden"><?php esc_html_e('Message that will automatically appear in the text field of a chat.', 'wp-whatsapp-chat'); ?></p>
86
  </td>
87
  </tr>
88
  <tr>
19
  <option value="yes" <?php selected($button['box'], 'yes'); ?>><?php esc_html_e('Enable contact box', 'wp-whatsapp-chat'); ?></option>
20
  <option value="no" <?php selected($button['box'], 'no'); ?>><?php esc_html_e('Disable contact box', 'wp-whatsapp-chat'); ?></option>
21
  </select>
22
+ <div style="display:block;" class="notice notice-error">
23
+ <p>Please set the contact phone number in the <a href="http://localhost/plugins/wp-admin/admin.php?page=click-to-chat">contacts tab</a>.
24
+ </p>
25
+ </div>
26
+ </td>
27
+ </tr>
28
+ <tr class="qlwapp-phone-alert <?php echo esc_attr($button['box'] == 'yes' ? '' : 'hidden'); ?>">
29
+ <th scope="row"></th>
30
+ <td>
31
+ <span style="display:block!important;" class="notice notice-error">
32
+ <p>
33
+ <?php printf(__('Please set the contact phone number in the <a href="%s">contacts tab</a>', 'wp-whatsapp-chat'), admin_url('admin.php?page=' . QLWAPP_DOMAIN . '_contacts')); ?>.
34
+ </p>
35
+ </span>
36
  </td>
37
  </tr>
38
  <tr>
81
  <th scope="row"><?php esc_html_e('Text', 'wp-whatsapp-chat'); ?></th>
82
  <td>
83
  <input type="text" name="text" placeholder="<?php echo esc_html($button['text']); ?>" value="<?php echo esc_attr($button['text']); ?>" class="qlwapp-input" />
84
+ <p class="description"><?php esc_html_e('Customize your button text.', 'wp-whatsapp-chat'); ?></p>
85
  </td>
86
  </tr>
87
  <tr>
88
  <th scope="row"><?php esc_html_e('Phone', 'wp-whatsapp-chat'); ?></th>
89
  <td>
90
+ <input type="text" name="phone" placeholder="" value="<?php echo esc_attr($button['phone']); ?>" class="qlwapp-input <?php echo esc_attr($button['box'] == 'yes' ? 'disabled' : ''); ?>" required="required" />
91
+ <p class="description"><?php esc_html_e('Full phone number in international format. Only nnumbers.', 'wp-whatsapp-chat'); ?></p>
 
92
  </td>
93
  </tr>
94
  <tr>
95
  <th scope="row"><?php esc_html_e('Message', 'wp-whatsapp-chat'); ?></th>
96
  <td>
97
  <textarea maxlength="500" style="width:75%;height:50px;padding:8px;" name="message" placeholder="<?php echo esc_html($button['message']); ?>"><?php echo esc_html(trim($button['message'])); ?></textarea>
98
+ <p class="description"><?php esc_html_e('Message that will automatically appear in the text field of a chat.', 'wp-whatsapp-chat'); ?></p>
99
  </td>
100
  </tr>
101
  <tr>
includes/view/backend/pages/scheme.php CHANGED
@@ -6,7 +6,7 @@
6
  <th scope="row"><?php esc_html_e('Font Family', 'wp-whatsapp-chat'); ?></th>
7
  <td>
8
  <select placeholder="<?php esc_html_e( 'Web Default', 'wp-whatsapp-chat' );?>" name="y" value="<?php echo esc_attr($scheme['font-family']); ?>">
9
- <option value=""><?php esc_html_e( 'Web Default', 'wp-whatsapp-chat' );?></option>
10
  <option value="Arial">Arial (sans-serif)</option>
11
  <option value="Verdana">Verdana (sans-serif)</option>
12
  <option value="Helvetica">Helvetica (sans-serif)</option>
@@ -24,7 +24,7 @@
24
  <tr>
25
  <th scope="row"><?php esc_html_e('Font Size', 'wp-whatsapp-chat'); ?></th>
26
  <td>
27
- <input placeholder="<?php esc_html_e( 'Web Default', 'wp-whatsapp-chat' );?>" type="number" name="font-size" value="<?php echo esc_attr($scheme['font-size']); ?>" />
28
  </td>
29
  </tr>
30
  <tr>
6
  <th scope="row"><?php esc_html_e('Font Family', 'wp-whatsapp-chat'); ?></th>
7
  <td>
8
  <select placeholder="<?php esc_html_e( 'Web Default', 'wp-whatsapp-chat' );?>" name="y" value="<?php echo esc_attr($scheme['font-family']); ?>">
9
+ <option value="inherit"><?php esc_html_e( 'Web Default', 'wp-whatsapp-chat' );?></option>
10
  <option value="Arial">Arial (sans-serif)</option>
11
  <option value="Verdana">Verdana (sans-serif)</option>
12
  <option value="Helvetica">Helvetica (sans-serif)</option>
24
  <tr>
25
  <th scope="row"><?php esc_html_e('Font Size', 'wp-whatsapp-chat'); ?></th>
26
  <td>
27
+ <input placeholder="<?php esc_html_e( 'In pixels', 'wp-whatsapp-chat' );?>" type="number" name="font-size" value="<?php echo esc_attr($scheme['font-size']); ?>" />
28
  </td>
29
  </tr>
30
  <tr>
readme.txt CHANGED
@@ -4,7 +4,7 @@ Donate link: https://quadlayers.com/portfolio/whatsapp-chat/
4
  Tags: whatsapp, whatsapp chat, whatsapp business, whatsapp support, click to chat, whatsapp group, directly message whatsapp, floating whatsapp, whatsapp message, help desk
5
  Requires at least: 3.0
6
  Tested up to: 5.8
7
- Stable tag: 4.8.9
8
  License: GPLv3
9
  License URI: https://www.gnu.org/licenses/gpl-3.0.html
10
 
@@ -97,6 +97,9 @@ Don't use: +001-(555)1234567
97
 
98
  == Changelog ==
99
 
 
 
 
100
  = 4.8.9 =
101
  * New. QuadLayers dashboard widget
102
 
@@ -110,7 +113,7 @@ Don't use: +001-(555)1234567
110
  * Fix. WordPress compatibility
111
 
112
  = 4.8.5 =
113
- * Fix. styles Improvements
114
 
115
  = 4.2.2 =
116
  * Fix. language fix
4
  Tags: whatsapp, whatsapp chat, whatsapp business, whatsapp support, click to chat, whatsapp group, directly message whatsapp, floating whatsapp, whatsapp message, help desk
5
  Requires at least: 3.0
6
  Tested up to: 5.8
7
+ Stable tag: 4.9.0
8
  License: GPLv3
9
  License URI: https://www.gnu.org/licenses/gpl-3.0.html
10
 
97
 
98
  == Changelog ==
99
 
100
+ = 4.9.0 =
101
+ * New. Admin improvements
102
+
103
  = 4.8.9 =
104
  * New. QuadLayers dashboard widget
105
 
113
  * Fix. WordPress compatibility
114
 
115
  = 4.8.5 =
116
+ * Fix. styles improvements
117
 
118
  = 4.2.2 =
119
  * Fix. language fix
wp-whatsapp-chat.php CHANGED
@@ -4,7 +4,7 @@
4
  * Plugin Name: Social Chat
5
  * Description: Social Chat allows your visitors to contact you or your team through WhatsApp chat with a single click.
6
  * Plugin URI: https://quadlayers.com/portfolio/whatsapp-chat/
7
- * Version: 4.8.9
8
  * Author: QuadLayers
9
  * Author URI: https://quadlayers.com
10
  * License: GPLv3
@@ -17,7 +17,7 @@ if (!defined('ABSPATH')) {
17
  }
18
 
19
  define('QLWAPP_PLUGIN_NAME', 'Social Chat');
20
- define('QLWAPP_PLUGIN_VERSION', '4.8.9');
21
  define('QLWAPP_PLUGIN_FILE', __FILE__);
22
  define('QLWAPP_PLUGIN_DIR', __DIR__ . DIRECTORY_SEPARATOR);
23
  define('QLWAPP_PREFIX', 'qlwapp');
4
  * Plugin Name: Social Chat
5
  * Description: Social Chat allows your visitors to contact you or your team through WhatsApp chat with a single click.
6
  * Plugin URI: https://quadlayers.com/portfolio/whatsapp-chat/
7
+ * Version: 4.9.0
8
  * Author: QuadLayers
9
  * Author URI: https://quadlayers.com
10
  * License: GPLv3
17
  }
18
 
19
  define('QLWAPP_PLUGIN_NAME', 'Social Chat');
20
+ define('QLWAPP_PLUGIN_VERSION', '4.9.0');
21
  define('QLWAPP_PLUGIN_FILE', __FILE__);
22
  define('QLWAPP_PLUGIN_DIR', __DIR__ . DIRECTORY_SEPARATOR);
23
  define('QLWAPP_PREFIX', 'qlwapp');