Version Description
2015-01-29 - Low Priority = * New feature: Live Chat dashboard has a new layout and design * Code Improvement: jQuery Cookie updated to the latest version * Code Improvement: More Live Chat strings are now translatable * New Live Chat Translation added: * Spanish (Thank you Ana Ayelen Martinez)
Download this release
Release Info
Developer | WP-LiveChat |
Plugin | WP Live Chat Support |
Version | 4.2.6 |
Comparing to | |
See all releases |
Code changes from version 4.2.5 to 4.2.6
- ajax.php +4 -6
- css/chat-style.css +214 -17
- css/toastr.css +197 -0
- functions.php +46 -27
- images/ui-bg_flat_10_000000_40x100.png +0 -0
- images/ui-bg_glass_65_ffffff_1x400.png +0 -0
- images/ui-icons_ffffff_256x240.png +0 -0
- includes/settings_page.php +1 -1
- includes/welcome_page.php +3 -3
- js/jquery-cookie.js +77 -32
- js/toastr.js +374 -0
- js/wplc_u.js +11 -5
- languages/wplivechat-es_ES.mo +0 -0
- languages/wplivechat-es_ES.po +969 -616
- readme.txt +16 -6
- wp-live-chat-support.php +747 -617
ajax.php
CHANGED
@@ -168,7 +168,6 @@ if ($check == 1) {
|
|
168 |
$array = array("check" => false);
|
169 |
|
170 |
while($i <= $iterations){
|
171 |
-
|
172 |
if($_POST['cid'] == null || $_POST['cid'] == "" || $_POST['cid'] == "null" || $_POST['cid'] == 0){
|
173 |
// echo 1;
|
174 |
$user = "user".time();
|
@@ -179,7 +178,7 @@ if ($check == 1) {
|
|
179 |
$array['wplc_name'] = $user;
|
180 |
$array['wplc_email'] = $email;
|
181 |
$array['check'] = true;
|
182 |
-
|
183 |
} else {
|
184 |
// echo 2;
|
185 |
$new_status = wplc_return_chat_status($_POST['cid']);
|
@@ -199,8 +198,8 @@ if ($check == 1) {
|
|
199 |
die();
|
200 |
}
|
201 |
}
|
202 |
-
|
203 |
-
|
204 |
if ($i == 1) {
|
205 |
wplc_update_user_on_page(sanitize_text_field($_POST['cid']), sanitize_text_field($_POST['status']),$_POST['wplcsession']);
|
206 |
}
|
@@ -219,7 +218,7 @@ if ($check == 1) {
|
|
219 |
$array['check'] = true;
|
220 |
}
|
221 |
}
|
222 |
-
|
223 |
} else { // statuses do not match
|
224 |
$array['status'] = $new_status;
|
225 |
if($new_status == 1){ // completed
|
@@ -263,7 +262,6 @@ if ($check == 1) {
|
|
263 |
}
|
264 |
}
|
265 |
}
|
266 |
-
|
267 |
}
|
268 |
if($array['check'] == true){
|
269 |
echo json_encode($array);
|
168 |
$array = array("check" => false);
|
169 |
|
170 |
while($i <= $iterations){
|
|
|
171 |
if($_POST['cid'] == null || $_POST['cid'] == "" || $_POST['cid'] == "null" || $_POST['cid'] == 0){
|
172 |
// echo 1;
|
173 |
$user = "user".time();
|
178 |
$array['wplc_name'] = $user;
|
179 |
$array['wplc_email'] = $email;
|
180 |
$array['check'] = true;
|
181 |
+
|
182 |
} else {
|
183 |
// echo 2;
|
184 |
$new_status = wplc_return_chat_status($_POST['cid']);
|
198 |
die();
|
199 |
}
|
200 |
}
|
201 |
+
|
202 |
+
|
203 |
if ($i == 1) {
|
204 |
wplc_update_user_on_page(sanitize_text_field($_POST['cid']), sanitize_text_field($_POST['status']),$_POST['wplcsession']);
|
205 |
}
|
218 |
$array['check'] = true;
|
219 |
}
|
220 |
}
|
221 |
+
|
222 |
} else { // statuses do not match
|
223 |
$array['status'] = $new_status;
|
224 |
if($new_status == 1){ // completed
|
262 |
}
|
263 |
}
|
264 |
}
|
|
|
265 |
}
|
266 |
if($array['check'] == true){
|
267 |
echo json_encode($array);
|
css/chat-style.css
CHANGED
@@ -3,16 +3,16 @@
|
|
3 |
overflow:auto;
|
4 |
clear:both;
|
5 |
padding:20px;
|
6 |
-
|
7 |
-moz-border-radius: 5px;
|
8 |
border-radius: 5px;
|
9 |
border: 1px solid #ccc;
|
10 |
background-color:#fff;
|
11 |
width:85%;
|
12 |
min-width:675px;
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
}
|
17 |
.admin_chat_box {
|
18 |
-webkit-border-radius: 5px;
|
@@ -41,18 +41,18 @@
|
|
41 |
overflow:scroll;
|
42 |
overflow-x: hidden;
|
43 |
background-color:#FFF;
|
44 |
-
|
45 |
-
|
46 |
}
|
47 |
|
48 |
.admin_chat_box_inner_bottom {
|
49 |
height:60px;
|
50 |
width:100%;
|
51 |
border-top:1px solid #ccc;
|
52 |
-
|
53 |
|
54 |
-
|
55 |
-
|
|
|
56 |
}
|
57 |
.admin_chat_quick_controls {
|
58 |
clear:left;
|
@@ -66,7 +66,7 @@
|
|
66 |
padding-left:15px;
|
67 |
min-width:250px;
|
68 |
|
69 |
-
|
70 |
}
|
71 |
#wplc_admin_chatmsg {
|
72 |
width:95%;
|
@@ -89,7 +89,7 @@
|
|
89 |
|
90 |
|
91 |
.wplc-admin-message {
|
92 |
-
|
93 |
padding:10px;
|
94 |
-webkit-border-radius: 2px;
|
95 |
-moz-border-radius: 2px;
|
@@ -102,11 +102,11 @@
|
|
102 |
clear:both;
|
103 |
margin-bottom: 3px;
|
104 |
|
105 |
-
|
106 |
}
|
107 |
|
108 |
.wplc-user-message {
|
109 |
-
|
110 |
padding:10px;
|
111 |
-webkit-border-radius: 2px;
|
112 |
-moz-border-radius: 2px;
|
@@ -131,19 +131,19 @@
|
|
131 |
font-size:0.8em;
|
132 |
color:#ccc;
|
133 |
clear:both;
|
134 |
-
|
135 |
}
|
136 |
.admin_visitor_advanced_info {
|
137 |
clear:both;
|
138 |
font-size:0.9em;
|
139 |
margin-top:20px;
|
140 |
-
|
141 |
}
|
142 |
.admin_visitor_advanced_info .part1 {
|
143 |
-
color:#3b3b3b;
|
144 |
}
|
145 |
.admin_visitor_advanced_info .part2 {
|
146 |
-
color:#949494;
|
147 |
}
|
148 |
.admin_chat_name { font-size:1.3em; display:block; clear:right; font-weight:bold; margin-bottom:5px; }
|
149 |
.admin_chat_email { font-size:1em; display:block; clear:right; }
|
@@ -157,4 +157,201 @@ color:#949494;
|
|
157 |
width:85%;
|
158 |
margin-left: 40px;
|
159 |
margin-bottom:20px;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
160 |
}
|
3 |
overflow:auto;
|
4 |
clear:both;
|
5 |
padding:20px;
|
6 |
+
-webkit-border-radius: 5px;
|
7 |
-moz-border-radius: 5px;
|
8 |
border-radius: 5px;
|
9 |
border: 1px solid #ccc;
|
10 |
background-color:#fff;
|
11 |
width:85%;
|
12 |
min-width:675px;
|
13 |
+
|
14 |
+
|
15 |
+
|
16 |
}
|
17 |
.admin_chat_box {
|
18 |
-webkit-border-radius: 5px;
|
41 |
overflow:scroll;
|
42 |
overflow-x: hidden;
|
43 |
background-color:#FFF;
|
44 |
+
|
45 |
+
|
46 |
}
|
47 |
|
48 |
.admin_chat_box_inner_bottom {
|
49 |
height:60px;
|
50 |
width:100%;
|
51 |
border-top:1px solid #ccc;
|
|
|
52 |
|
53 |
+
|
54 |
+
|
55 |
+
|
56 |
}
|
57 |
.admin_chat_quick_controls {
|
58 |
clear:left;
|
66 |
padding-left:15px;
|
67 |
min-width:250px;
|
68 |
|
69 |
+
|
70 |
}
|
71 |
#wplc_admin_chatmsg {
|
72 |
width:95%;
|
89 |
|
90 |
|
91 |
.wplc-admin-message {
|
92 |
+
|
93 |
padding:10px;
|
94 |
-webkit-border-radius: 2px;
|
95 |
-moz-border-radius: 2px;
|
102 |
clear:both;
|
103 |
margin-bottom: 3px;
|
104 |
|
105 |
+
|
106 |
}
|
107 |
|
108 |
.wplc-user-message {
|
109 |
+
|
110 |
padding:10px;
|
111 |
-webkit-border-radius: 2px;
|
112 |
-moz-border-radius: 2px;
|
131 |
font-size:0.8em;
|
132 |
color:#ccc;
|
133 |
clear:both;
|
134 |
+
|
135 |
}
|
136 |
.admin_visitor_advanced_info {
|
137 |
clear:both;
|
138 |
font-size:0.9em;
|
139 |
margin-top:20px;
|
140 |
+
|
141 |
}
|
142 |
.admin_visitor_advanced_info .part1 {
|
143 |
+
color:#3b3b3b;
|
144 |
}
|
145 |
.admin_visitor_advanced_info .part2 {
|
146 |
+
color:#949494;
|
147 |
}
|
148 |
.admin_chat_name { font-size:1.3em; display:block; clear:right; font-weight:bold; margin-bottom:5px; }
|
149 |
.admin_chat_email { font-size:1em; display:block; clear:right; }
|
157 |
width:85%;
|
158 |
margin-left: 40px;
|
159 |
margin-bottom:20px;
|
160 |
+
}
|
161 |
+
|
162 |
+
/* New Dashboard Layout */
|
163 |
+
.wplc_admin_dashboard_container{
|
164 |
+
width: 80%;
|
165 |
+
margin: 0 auto;
|
166 |
+
}
|
167 |
+
.wplc_chats_container{
|
168 |
+
width: 65%;
|
169 |
+
display: inline-block;
|
170 |
+
background-color: #FFF;
|
171 |
+
float: left;
|
172 |
+
padding: 10px;
|
173 |
+
box-shadow: 1px 1px 3px #ccc;
|
174 |
+
}
|
175 |
+
|
176 |
+
#wplc_admin_visitor_area{
|
177 |
+
width: 30%;
|
178 |
+
display: inline-block;
|
179 |
+
background-color: #FFF;
|
180 |
+
float: right;
|
181 |
+
padding: 10px;
|
182 |
+
box-shadow: 1px 1px 3px #ccc;
|
183 |
+
}
|
184 |
+
|
185 |
+
.wplc_single_chat{
|
186 |
+
width: 100%;
|
187 |
+
display: inline-block;
|
188 |
+
border: 1px solid #EEE;
|
189 |
+
border-radius: 5px;
|
190 |
+
box-shadow: 1px 1px 21px #EEE;
|
191 |
+
margin: 8px auto;
|
192 |
+
}
|
193 |
+
|
194 |
+
.wplc_single_chat .wplc_chat_status{
|
195 |
+
|
196 |
+
}
|
197 |
+
|
198 |
+
.wplc_single_chat .wplc_user_image {
|
199 |
+
width: 100px;
|
200 |
+
display: inline-block;
|
201 |
+
}
|
202 |
+
|
203 |
+
.wplc_single_chat .wplc_user_image img{
|
204 |
+
border-radius: 100px;
|
205 |
+
}
|
206 |
+
|
207 |
+
.wplc_single_chat .wplc_user_meta_data{
|
208 |
+
font-size: 0.9em;
|
209 |
+
display: inline-block;
|
210 |
+
vertical-align: top;
|
211 |
+
}
|
212 |
+
|
213 |
+
.wplc_single_chat .wplc_chat_section{
|
214 |
+
display: inline-block;
|
215 |
+
vertical-align: top;
|
216 |
+
width: 30%;
|
217 |
+
border-left: 1px solid #eee;
|
218 |
+
padding: 13px;
|
219 |
+
height: 100px;
|
220 |
+
}
|
221 |
+
|
222 |
+
.wplc_single_chat .wplc_chat_section .wplc_agent_actions{
|
223 |
+
text-align: center;
|
224 |
+
vertical-align: middle;
|
225 |
+
}
|
226 |
+
|
227 |
+
.wplc_single_chat .wplc_chat_section .admin_visitor_advanced_info{
|
228 |
+
margin-top: -3px;
|
229 |
+
}
|
230 |
+
|
231 |
+
.wplc_single_chat .wplc_chat_section .admin_visitor_advanced_info hr{
|
232 |
+
margin: 3px 0;
|
233 |
+
}
|
234 |
+
|
235 |
+
.wplc_single_chat .wplc_user_name {
|
236 |
+
}
|
237 |
+
|
238 |
+
.wplc_single_chat .wplc_user_name h3{
|
239 |
+
margin: 0;
|
240 |
+
}
|
241 |
+
.wplc_single_chat .wplc_user_name h3 i{
|
242 |
+
padding: 0 10px;
|
243 |
+
}
|
244 |
+
.wplc_single_chat h3 .active{
|
245 |
+
color: green;
|
246 |
+
}
|
247 |
+
|
248 |
+
.wplc_single_chat h3 .pending{
|
249 |
+
color: orange;
|
250 |
+
}
|
251 |
+
|
252 |
+
.wplc_single_chat h3 .closed{
|
253 |
+
color: red;
|
254 |
+
}
|
255 |
+
|
256 |
+
.wplc_single_chat .wplc_user_email{
|
257 |
+
|
258 |
+
}
|
259 |
+
|
260 |
+
.wplc_single_chat .wplc_user_ip{
|
261 |
+
|
262 |
+
}
|
263 |
+
|
264 |
+
.wplc_single_chat .wplc_current_page a{
|
265 |
+
width: 100%;
|
266 |
+
}
|
267 |
+
|
268 |
+
.wplc_single_chat .wplc_actions{
|
269 |
+
|
270 |
+
}
|
271 |
+
|
272 |
+
.wplc_single_visitor{
|
273 |
+
border-bottom: 1px solid #ccc;
|
274 |
+
padding: 20px;
|
275 |
+
}
|
276 |
+
|
277 |
+
.wplc_single_visitor .wplc_chat_status{
|
278 |
+
|
279 |
+
}
|
280 |
+
|
281 |
+
.wplc_single_visitor .wplc_user_image {
|
282 |
+
width: 120px;
|
283 |
+
display: inline-block;
|
284 |
+
margin-right: 10px;
|
285 |
+
}
|
286 |
+
|
287 |
+
.wplc_single_visitor .wplc_user_image img{
|
288 |
+
border-radius: 100px;
|
289 |
+
}
|
290 |
+
|
291 |
+
.wplc_single_visitor .wplc_user_meta_data{
|
292 |
+
display: inline-block;
|
293 |
+
vertical-align: top;
|
294 |
+
}
|
295 |
+
|
296 |
+
.wplc_single_visitor .wplc_user_name {
|
297 |
+
|
298 |
+
}
|
299 |
+
|
300 |
+
.wplc_single_visitor .wplc_user_name h3{
|
301 |
+
margin: 0;
|
302 |
+
padding: 0;
|
303 |
+
}
|
304 |
+
|
305 |
+
.wplc_single_visitor h3.ui-accordion .ui-accordion-icons{
|
306 |
+
margin: 0;
|
307 |
+
padding-left: 0;
|
308 |
+
}
|
309 |
+
|
310 |
+
.wplc_single_visitor .wplc_user_name h3 i{
|
311 |
+
padding: 0 10px;
|
312 |
+
}
|
313 |
+
.wplc_active{
|
314 |
+
color: green;
|
315 |
+
}
|
316 |
+
|
317 |
+
.wplc_pending{
|
318 |
+
color: orange;
|
319 |
+
}
|
320 |
+
|
321 |
+
.wplc_closed{
|
322 |
+
color: red;
|
323 |
+
}
|
324 |
+
|
325 |
+
.wplc_single_visitor .wplc_user_email{
|
326 |
+
|
327 |
+
}
|
328 |
+
|
329 |
+
.wplc_single_visitor .wplc_user_ip{
|
330 |
+
|
331 |
+
}
|
332 |
+
|
333 |
+
.wplc_single_visitor .wplc_current_page a{
|
334 |
+
width: 100%;
|
335 |
+
}
|
336 |
+
|
337 |
+
.wplc_single_visitor .wplc_actions{
|
338 |
+
|
339 |
+
}
|
340 |
+
|
341 |
+
.wplc_icon_message{
|
342 |
+
font-size: 10px;
|
343 |
+
font-weight: normal;
|
344 |
+
}
|
345 |
+
|
346 |
+
.wplc_page_title{
|
347 |
+
text-align: center;
|
348 |
+
}
|
349 |
+
|
350 |
+
.wplc_page_title h1{
|
351 |
+
font-size: 3em;
|
352 |
+
}
|
353 |
+
|
354 |
+
.wplc_visitor_icon{
|
355 |
+
padding-right: 10px;
|
356 |
+
|
357 |
}
|
css/toastr.css
ADDED
@@ -0,0 +1,197 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
.toast-title {
|
2 |
+
font-weight: bold;
|
3 |
+
}
|
4 |
+
.toast-message {
|
5 |
+
-ms-word-wrap: break-word;
|
6 |
+
word-wrap: break-word;
|
7 |
+
}
|
8 |
+
.toast-message a,
|
9 |
+
.toast-message label {
|
10 |
+
color: #ffffff;
|
11 |
+
}
|
12 |
+
.toast-message a:hover {
|
13 |
+
color: #cccccc;
|
14 |
+
text-decoration: none;
|
15 |
+
}
|
16 |
+
.toast-close-button {
|
17 |
+
position: relative;
|
18 |
+
right: -0.3em;
|
19 |
+
top: -0.3em;
|
20 |
+
float: right;
|
21 |
+
font-size: 20px;
|
22 |
+
font-weight: bold;
|
23 |
+
color: #ffffff;
|
24 |
+
-webkit-text-shadow: 0 1px 0 #ffffff;
|
25 |
+
text-shadow: 0 1px 0 #ffffff;
|
26 |
+
opacity: 0.8;
|
27 |
+
-ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
|
28 |
+
filter: alpha(opacity=80);
|
29 |
+
}
|
30 |
+
.toast-close-button:hover,
|
31 |
+
.toast-close-button:focus {
|
32 |
+
color: #000000;
|
33 |
+
text-decoration: none;
|
34 |
+
cursor: pointer;
|
35 |
+
opacity: 0.4;
|
36 |
+
-ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=40);
|
37 |
+
filter: alpha(opacity=40);
|
38 |
+
}
|
39 |
+
/*Additional properties for button version
|
40 |
+
iOS requires the button element instead of an anchor tag.
|
41 |
+
If you want the anchor version, it requires `href="#"`.*/
|
42 |
+
button.toast-close-button {
|
43 |
+
padding: 0;
|
44 |
+
cursor: pointer;
|
45 |
+
background: transparent;
|
46 |
+
border: 0;
|
47 |
+
-webkit-appearance: none;
|
48 |
+
}
|
49 |
+
.toast-top-center {
|
50 |
+
top: 0;
|
51 |
+
right: 0;
|
52 |
+
width: 100%;
|
53 |
+
}
|
54 |
+
.toast-bottom-center {
|
55 |
+
bottom: 0;
|
56 |
+
right: 0;
|
57 |
+
width: 100%;
|
58 |
+
}
|
59 |
+
.toast-top-full-width {
|
60 |
+
top: 0;
|
61 |
+
right: 0;
|
62 |
+
width: 100%;
|
63 |
+
}
|
64 |
+
.toast-bottom-full-width {
|
65 |
+
bottom: 0;
|
66 |
+
right: 0;
|
67 |
+
width: 100%;
|
68 |
+
}
|
69 |
+
.toast-top-left {
|
70 |
+
top: 12px;
|
71 |
+
left: 12px;
|
72 |
+
}
|
73 |
+
.toast-top-right {
|
74 |
+
top: 12px;
|
75 |
+
right: 12px;
|
76 |
+
}
|
77 |
+
.toast-bottom-right {
|
78 |
+
right: 12px;
|
79 |
+
bottom: 12px;
|
80 |
+
}
|
81 |
+
.toast-bottom-left {
|
82 |
+
bottom: 12px;
|
83 |
+
left: 12px;
|
84 |
+
}
|
85 |
+
#toast-container {
|
86 |
+
position: fixed;
|
87 |
+
z-index: 999999;
|
88 |
+
/*overrides*/
|
89 |
+
|
90 |
+
}
|
91 |
+
#toast-container * {
|
92 |
+
-moz-box-sizing: border-box;
|
93 |
+
-webkit-box-sizing: border-box;
|
94 |
+
box-sizing: border-box;
|
95 |
+
}
|
96 |
+
#toast-container > div {
|
97 |
+
position: relative;
|
98 |
+
overflow: hidden;
|
99 |
+
margin: 0 0 6px;
|
100 |
+
padding: 15px 15px 15px 50px;
|
101 |
+
width: 300px;
|
102 |
+
-moz-border-radius: 3px 3px 3px 3px;
|
103 |
+
-webkit-border-radius: 3px 3px 3px 3px;
|
104 |
+
border-radius: 3px 3px 3px 3px;
|
105 |
+
background-position: 15px center;
|
106 |
+
background-repeat: no-repeat;
|
107 |
+
-moz-box-shadow: 0 0 12px #999999;
|
108 |
+
-webkit-box-shadow: 0 0 12px #999999;
|
109 |
+
box-shadow: 0 0 12px #999999;
|
110 |
+
color: #ffffff;
|
111 |
+
opacity: 0.8;
|
112 |
+
-ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
|
113 |
+
filter: alpha(opacity=80);
|
114 |
+
}
|
115 |
+
#toast-container > :hover {
|
116 |
+
-moz-box-shadow: 0 0 12px #000000;
|
117 |
+
-webkit-box-shadow: 0 0 12px #000000;
|
118 |
+
box-shadow: 0 0 12px #000000;
|
119 |
+
opacity: 1;
|
120 |
+
-ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
|
121 |
+
filter: alpha(opacity=100);
|
122 |
+
cursor: pointer;
|
123 |
+
}
|
124 |
+
#toast-container > .toast-info {
|
125 |
+
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGwSURBVEhLtZa9SgNBEMc9sUxxRcoUKSzSWIhXpFMhhYWFhaBg4yPYiWCXZxBLERsLRS3EQkEfwCKdjWJAwSKCgoKCcudv4O5YLrt7EzgXhiU3/4+b2ckmwVjJSpKkQ6wAi4gwhT+z3wRBcEz0yjSseUTrcRyfsHsXmD0AmbHOC9Ii8VImnuXBPglHpQ5wwSVM7sNnTG7Za4JwDdCjxyAiH3nyA2mtaTJufiDZ5dCaqlItILh1NHatfN5skvjx9Z38m69CgzuXmZgVrPIGE763Jx9qKsRozWYw6xOHdER+nn2KkO+Bb+UV5CBN6WC6QtBgbRVozrahAbmm6HtUsgtPC19tFdxXZYBOfkbmFJ1VaHA1VAHjd0pp70oTZzvR+EVrx2Ygfdsq6eu55BHYR8hlcki+n+kERUFG8BrA0BwjeAv2M8WLQBtcy+SD6fNsmnB3AlBLrgTtVW1c2QN4bVWLATaIS60J2Du5y1TiJgjSBvFVZgTmwCU+dAZFoPxGEEs8nyHC9Bwe2GvEJv2WXZb0vjdyFT4Cxk3e/kIqlOGoVLwwPevpYHT+00T+hWwXDf4AJAOUqWcDhbwAAAAASUVORK5CYII=") !important;
|
126 |
+
}
|
127 |
+
#toast-container > .toast-error {
|
128 |
+
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAHOSURBVEhLrZa/SgNBEMZzh0WKCClSCKaIYOED+AAKeQQLG8HWztLCImBrYadgIdY+gIKNYkBFSwu7CAoqCgkkoGBI/E28PdbLZmeDLgzZzcx83/zZ2SSXC1j9fr+I1Hq93g2yxH4iwM1vkoBWAdxCmpzTxfkN2RcyZNaHFIkSo10+8kgxkXIURV5HGxTmFuc75B2RfQkpxHG8aAgaAFa0tAHqYFfQ7Iwe2yhODk8+J4C7yAoRTWI3w/4klGRgR4lO7Rpn9+gvMyWp+uxFh8+H+ARlgN1nJuJuQAYvNkEnwGFck18Er4q3egEc/oO+mhLdKgRyhdNFiacC0rlOCbhNVz4H9FnAYgDBvU3QIioZlJFLJtsoHYRDfiZoUyIxqCtRpVlANq0EU4dApjrtgezPFad5S19Wgjkc0hNVnuF4HjVA6C7QrSIbylB+oZe3aHgBsqlNqKYH48jXyJKMuAbiyVJ8KzaB3eRc0pg9VwQ4niFryI68qiOi3AbjwdsfnAtk0bCjTLJKr6mrD9g8iq/S/B81hguOMlQTnVyG40wAcjnmgsCNESDrjme7wfftP4P7SP4N3CJZdvzoNyGq2c/HWOXJGsvVg+RA/k2MC/wN6I2YA2Pt8GkAAAAASUVORK5CYII=") !important;
|
129 |
+
}
|
130 |
+
#toast-container > .toast-success {
|
131 |
+
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADsSURBVEhLY2AYBfQMgf///3P8+/evAIgvA/FsIF+BavYDDWMBGroaSMMBiE8VC7AZDrIFaMFnii3AZTjUgsUUWUDA8OdAH6iQbQEhw4HyGsPEcKBXBIC4ARhex4G4BsjmweU1soIFaGg/WtoFZRIZdEvIMhxkCCjXIVsATV6gFGACs4Rsw0EGgIIH3QJYJgHSARQZDrWAB+jawzgs+Q2UO49D7jnRSRGoEFRILcdmEMWGI0cm0JJ2QpYA1RDvcmzJEWhABhD/pqrL0S0CWuABKgnRki9lLseS7g2AlqwHWQSKH4oKLrILpRGhEQCw2LiRUIa4lwAAAABJRU5ErkJggg==") !important;
|
132 |
+
}
|
133 |
+
#toast-container > .toast-warning {
|
134 |
+
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGYSURBVEhL5ZSvTsNQFMbXZGICMYGYmJhAQIJAICYQPAACiSDB8AiICQQJT4CqQEwgJvYASAQCiZiYmJhAIBATCARJy+9rTsldd8sKu1M0+dLb057v6/lbq/2rK0mS/TRNj9cWNAKPYIJII7gIxCcQ51cvqID+GIEX8ASG4B1bK5gIZFeQfoJdEXOfgX4QAQg7kH2A65yQ87lyxb27sggkAzAuFhbbg1K2kgCkB1bVwyIR9m2L7PRPIhDUIXgGtyKw575yz3lTNs6X4JXnjV+LKM/m3MydnTbtOKIjtz6VhCBq4vSm3ncdrD2lk0VgUXSVKjVDJXJzijW1RQdsU7F77He8u68koNZTz8Oz5yGa6J3H3lZ0xYgXBK2QymlWWA+RWnYhskLBv2vmE+hBMCtbA7KX5drWyRT/2JsqZ2IvfB9Y4bWDNMFbJRFmC9E74SoS0CqulwjkC0+5bpcV1CZ8NMej4pjy0U+doDQsGyo1hzVJttIjhQ7GnBtRFN1UarUlH8F3xict+HY07rEzoUGPlWcjRFRr4/gChZgc3ZL2d8oAAAAASUVORK5CYII=") !important;
|
135 |
+
}
|
136 |
+
#toast-container.toast-top-center > div,
|
137 |
+
#toast-container.toast-bottom-center > div {
|
138 |
+
width: 300px;
|
139 |
+
margin: auto;
|
140 |
+
}
|
141 |
+
#toast-container.toast-top-full-width > div,
|
142 |
+
#toast-container.toast-bottom-full-width > div {
|
143 |
+
width: 96%;
|
144 |
+
margin: auto;
|
145 |
+
}
|
146 |
+
.toast {
|
147 |
+
background-color: #030303;
|
148 |
+
}
|
149 |
+
.toast-success {
|
150 |
+
background-color: #51a351;
|
151 |
+
}
|
152 |
+
.toast-error {
|
153 |
+
background-color: #bd362f;
|
154 |
+
}
|
155 |
+
.toast-info {
|
156 |
+
background-color: #2f96b4;
|
157 |
+
}
|
158 |
+
.toast-warning {
|
159 |
+
background-color: #f89406;
|
160 |
+
}
|
161 |
+
.toast-progress {
|
162 |
+
position: absolute;
|
163 |
+
left: 0;
|
164 |
+
bottom: 0;
|
165 |
+
height: 4px;
|
166 |
+
background-color: #000000;
|
167 |
+
opacity: 0.4;
|
168 |
+
-ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=40);
|
169 |
+
filter: alpha(opacity=40);
|
170 |
+
}
|
171 |
+
/*Responsive Design*/
|
172 |
+
@media all and (max-width: 240px) {
|
173 |
+
#toast-container > div {
|
174 |
+
padding: 8px 8px 8px 50px;
|
175 |
+
width: 11em;
|
176 |
+
}
|
177 |
+
#toast-container .toast-close-button {
|
178 |
+
right: -0.2em;
|
179 |
+
top: -0.2em;
|
180 |
+
}
|
181 |
+
}
|
182 |
+
@media all and (min-width: 241px) and (max-width: 480px) {
|
183 |
+
#toast-container > div {
|
184 |
+
padding: 8px 8px 8px 50px;
|
185 |
+
width: 18em;
|
186 |
+
}
|
187 |
+
#toast-container .toast-close-button {
|
188 |
+
right: -0.2em;
|
189 |
+
top: -0.2em;
|
190 |
+
}
|
191 |
+
}
|
192 |
+
@media all and (min-width: 481px) and (max-width: 768px) {
|
193 |
+
#toast-container > div {
|
194 |
+
padding: 15px 15px 15px 50px;
|
195 |
+
width: 25em;
|
196 |
+
}
|
197 |
+
}
|
functions.php
CHANGED
@@ -165,23 +165,12 @@ function wplc_list_chats() {
|
|
165 |
"
|
166 |
);
|
167 |
|
168 |
-
|
169 |
-
|
170 |
-
. "<tr>"
|
171 |
-
. "<th scope='col' id='wplc_id_colum' class='manage-column column-id sortable desc' style=''><i class=\"fa fa-globe\"> </i> <span>".__("User Data","wplivechat")."</span></th>"
|
172 |
-
. "<th scope='col' id='wplc_name_colum' class='manage-column column-name_title sortable desc' style=''><i class=\"fa fa-user\"> </i> <span>".__("Name","wplivechat")."</span></th>"
|
173 |
-
. "<th scope='col' id='wplc_email_colum' class='manage-column column-email' style=\"\"><i class=\"fa fa-envelope\"> </i> ".__("Email","wplivechat")."</th>"
|
174 |
-
. "<th scope='col' id='wplc_url_colum' class='manage-column column-url' style=\"\"><i class=\"fa fa-link\"> </i> ".__("URL","wplivechat")."</th>"
|
175 |
-
. "<th scope='col' id='wplc_status_colum' class='manage-column column-status' style=\"\"><i class=\"fa fa-cog\"> </i> ".__("Status","wplivechat")."</th>"
|
176 |
-
. "<th scope='col' id='wplc_action_colum' class='manage-column column-action sortable desc' style=\"\"><i class=\"fa fa-rocket\"> </i> <span>".__("Action","wplivechat")."</span></th>"
|
177 |
-
. "</tr>"
|
178 |
-
. "</thead>"
|
179 |
-
. "<tbody id=\"the-list\" class='list:wp_list_text_link'>";
|
180 |
-
|
181 |
if (!$results) {
|
182 |
-
$table
|
183 |
-
}
|
184 |
-
|
185 |
|
186 |
foreach ($results as $result) {
|
187 |
unset($trstyle);
|
@@ -199,26 +188,56 @@ function wplc_list_chats() {
|
|
199 |
$url = admin_url( 'admin.php?page=wplivechat-menu&action=ac&cid='.$result->id);
|
200 |
$actions = "<a href=\"".$url."\" class=\"wplc_open_chat button button-primary\" window-title=\"WP_Live_Chat_".$result->id."\">".__("Accept Chat","wplivechat")."</a>";
|
201 |
$trstyle = "style='background-color:#FFFBE4; height:30px;'";
|
|
|
202 |
}
|
203 |
if ($result->status == 3) {
|
204 |
$url = admin_url( 'admin.php?page=wplivechat-menu&action=ac&cid='.$result->id);
|
205 |
$actions = "<a href=\"".$url."\" class=\"wplc_open_chat button button-primary\" window-title=\"WP_Live_Chat_".$result->id."\">".__("Open Chat Window","wplivechat")."</a>";
|
206 |
$trstyle = "style='background-color:#F7FCFE; height:30px;'";
|
|
|
207 |
}
|
208 |
if ($wplc_c>1) { $actions = wplc_get_msg(); }
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
218 |
}
|
219 |
}
|
220 |
-
$table .= "</
|
221 |
-
|
222 |
return $table;
|
223 |
}
|
224 |
|
165 |
"
|
166 |
);
|
167 |
|
168 |
+
$table = "<div class='wplc_chats_container'>";
|
169 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
170 |
if (!$results) {
|
171 |
+
$table.= "<p>".__("No chat sessions available at the moment","wplivechat")."</p>";
|
172 |
+
} else {
|
173 |
+
$table .= "<h2>".__('Active Chats', 'wplivechat')."</h2>";
|
174 |
|
175 |
foreach ($results as $result) {
|
176 |
unset($trstyle);
|
188 |
$url = admin_url( 'admin.php?page=wplivechat-menu&action=ac&cid='.$result->id);
|
189 |
$actions = "<a href=\"".$url."\" class=\"wplc_open_chat button button-primary\" window-title=\"WP_Live_Chat_".$result->id."\">".__("Accept Chat","wplivechat")."</a>";
|
190 |
$trstyle = "style='background-color:#FFFBE4; height:30px;'";
|
191 |
+
$icon = "<i class=\"fa fa-phone wplc_pending\" title='".__('Incoming Chat', 'wplivechat')."' alt='".__('Incoming Chat', 'wplivechat')."'></i><div class='wplc_icon_message'>".__('You have an incoming chat.', 'wplivechat')."</div>";
|
192 |
}
|
193 |
if ($result->status == 3) {
|
194 |
$url = admin_url( 'admin.php?page=wplivechat-menu&action=ac&cid='.$result->id);
|
195 |
$actions = "<a href=\"".$url."\" class=\"wplc_open_chat button button-primary\" window-title=\"WP_Live_Chat_".$result->id."\">".__("Open Chat Window","wplivechat")."</a>";
|
196 |
$trstyle = "style='background-color:#F7FCFE; height:30px;'";
|
197 |
+
$icon = "<i class=\"fa fa-check-circle wplc_active\" title='".__('Chat Active', 'wplivechat')."' alt='".__('Chat Active', 'wplivechat')."'></i><div class='wplc_icon_message'>".__('This chat is active', 'wplivechat')."</div>";
|
198 |
}
|
199 |
if ($wplc_c>1) { $actions = wplc_get_msg(); }
|
200 |
+
|
201 |
+
$trstyle = "";
|
202 |
+
|
203 |
+
$table .= "
|
204 |
+
<div class='wplc_single_chat' id='record_'".$result->id." $trstyle>
|
205 |
+
<div class='wplc_chat_section'>
|
206 |
+
<div class='wplc_user_image' id='chat_image_".$result->id."'>
|
207 |
+
<img src=\"http://www.gravatar.com/avatar/".md5($result->email)."?s=100&d=mm\" />
|
208 |
+
</div>
|
209 |
+
<div class='wplc_user_meta_data'>
|
210 |
+
<div class='wplc_user_name' id='chat_name_".$result->id."'>
|
211 |
+
<h3>".$result->name.$icon."</h3>
|
212 |
+
".$result->email."
|
213 |
+
</div>
|
214 |
+
</div>
|
215 |
+
</div>
|
216 |
+
<div class='wplc_chat_section'>
|
217 |
+
<div class='admin_visitor_advanced_info'>
|
218 |
+
<strong>" . __("Site Info", "wplivechat") . "</strong>
|
219 |
+
<hr />
|
220 |
+
<span class='part1'>" . __("Chat initiated on:", "wplivechat") . "</span> <span class='part2'>" . $result->url . "</span>
|
221 |
+
</div>
|
222 |
+
|
223 |
+
<div class='admin_visitor_advanced_info'>
|
224 |
+
<strong>" . __("Advanced Info", "wplivechat") . "</strong>
|
225 |
+
<hr />
|
226 |
+
<span class='part1'>" . __("Browser:", "wplivechat") . "</span><span class='part2'> $browser <img src='" . $wplc_basic_plugin_url . "/images/$browser_image' alt='$browser' title='$browser' /><br />
|
227 |
+
<span class='part1'>" . __("IP Address:", "wplivechat") . "</span><span class='part2'> <a href='http://www.ip-adress.com/ip_tracer/" . $user_ip . "' title='Whois for " . $user_ip . "'>" . $user_ip . "</a>
|
228 |
+
</div>
|
229 |
+
</div>
|
230 |
+
<div class='wplc_chat_section'>
|
231 |
+
<div class='wplc_agent_actions'>
|
232 |
+
$actions
|
233 |
+
</div>
|
234 |
+
</div>
|
235 |
+
</div>
|
236 |
+
";
|
237 |
}
|
238 |
}
|
239 |
+
$table .= "</div>";
|
240 |
+
|
241 |
return $table;
|
242 |
}
|
243 |
|
images/ui-bg_flat_10_000000_40x100.png
ADDED
Binary file
|
images/ui-bg_glass_65_ffffff_1x400.png
ADDED
Binary file
|
images/ui-icons_ffffff_256x240.png
ADDED
Binary file
|
includes/settings_page.php
CHANGED
@@ -286,7 +286,7 @@
|
|
286 |
<?php _e("Offline text","wplivechat")?>:
|
287 |
</td>
|
288 |
<td>
|
289 |
-
<input type='text' size='50' maxlength='50' class='regular-text' readonly value='Chat offline. Leave a message' />
|
290 |
<small>
|
291 |
<i> <?php _e("Edit these text fields using the ","wplivechat")?>
|
292 |
<a href="http://www.wp-livechat.com/purchase-pro/?utm_source=plugin&utm_medium=link&utm_campaign=textfields4" title="<?php _e("Pro Add-on","wplivechat")?>" target="_BLANK"><?php _e("Pro Add-on","wplivechat")?></a>
|
286 |
<?php _e("Offline text","wplivechat")?>:
|
287 |
</td>
|
288 |
<td>
|
289 |
+
<input type='text' size='50' maxlength='50' class='regular-text' readonly value='<?php _e('Chat offline. Leave a message', 'wplivechat'); ?>' />
|
290 |
<small>
|
291 |
<i> <?php _e("Edit these text fields using the ","wplivechat")?>
|
292 |
<a href="http://www.wp-livechat.com/purchase-pro/?utm_source=plugin&utm_medium=link&utm_campaign=textfields4" title="<?php _e("Pro Add-on","wplivechat")?>" target="_BLANK"><?php _e("Pro Add-on","wplivechat")?></a>
|
includes/welcome_page.php
CHANGED
@@ -3,11 +3,11 @@
|
|
3 |
<h1 style="font-weight: 300; font-size: 50px; line-height: 50px;">
|
4 |
<?php _e("Welcome to ",'wplivechat'); ?>
|
5 |
<strong style='color: #ec822c;'>WP Live Chat Support</strong>
|
6 |
-
<small
|
7 |
</h1>
|
8 |
-
<div class="about-text" style="margin: 0;"
|
9 |
|
10 |
-
<h2 style="font-size: 25px;"
|
11 |
<form method="post" name="wplc_find_us_form" style="font-size: 16px;">
|
12 |
<div style="text-align: left; width:275px;">
|
13 |
<input type="radio" name="wplc_find_us" id="wordpress" value='repository'>
|
3 |
<h1 style="font-weight: 300; font-size: 50px; line-height: 50px;">
|
4 |
<?php _e("Welcome to ",'wplivechat'); ?>
|
5 |
<strong style='color: #ec822c;'>WP Live Chat Support</strong>
|
6 |
+
<small><?php _e('Version 4', 'wplivechat'); ?></small>
|
7 |
</h1>
|
8 |
+
<div class="about-text" style="margin: 0;"><?php _e('Provide Instant Live Chat Support!', 'wplivechat'); ?></div>
|
9 |
|
10 |
+
<h2 style="font-size: 25px;"><?php _e('How did you find us?', 'wplivechat'); ?></h2>
|
11 |
<form method="post" name="wplc_find_us_form" style="font-size: 16px;">
|
12 |
<div style="text-align: left; width:275px;">
|
13 |
<input type="radio" name="wplc_find_us" id="wordpress" value='repository'>
|
js/jquery-cookie.js
CHANGED
@@ -1,43 +1,71 @@
|
|
1 |
/*!
|
2 |
-
* jQuery Cookie Plugin v1.
|
3 |
* https://github.com/carhartl/jquery-cookie
|
4 |
*
|
5 |
-
* Copyright
|
6 |
-
*
|
7 |
-
* http://www.opensource.org/licenses/mit-license.php
|
8 |
-
* http://www.opensource.org/licenses/GPL-2.0
|
9 |
*/
|
10 |
-
(function (
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
11 |
|
12 |
var pluses = /\+/g;
|
13 |
|
14 |
-
function
|
15 |
-
return s;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
16 |
}
|
17 |
|
18 |
-
function
|
19 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
20 |
}
|
21 |
|
22 |
var config = $.cookie = function (key, value, options) {
|
23 |
|
24 |
-
//
|
25 |
-
if (value !== undefined) {
|
26 |
-
options = $.extend({}, config.defaults, options);
|
27 |
|
28 |
-
|
29 |
-
|
30 |
-
}
|
31 |
|
32 |
if (typeof options.expires === 'number') {
|
33 |
var days = options.expires, t = options.expires = new Date();
|
34 |
-
t.
|
35 |
}
|
36 |
|
37 |
-
value = config.json ? JSON.stringify(value) : String(value);
|
38 |
-
|
39 |
return (document.cookie = [
|
40 |
-
|
41 |
options.expires ? '; expires=' + options.expires.toUTCString() : '', // use expires attribute, max-age is not supported by IE
|
42 |
options.path ? '; path=' + options.path : '',
|
43 |
options.domain ? '; domain=' + options.domain : '',
|
@@ -45,28 +73,45 @@
|
|
45 |
].join(''));
|
46 |
}
|
47 |
|
48 |
-
//
|
49 |
-
|
50 |
-
var
|
|
|
|
|
|
|
|
|
|
|
|
|
51 |
for (var i = 0, l = cookies.length; i < l; i++) {
|
52 |
var parts = cookies[i].split('=');
|
53 |
-
|
54 |
-
|
55 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
56 |
}
|
57 |
}
|
58 |
|
59 |
-
return
|
60 |
};
|
61 |
|
62 |
config.defaults = {};
|
63 |
|
64 |
$.removeCookie = function (key, options) {
|
65 |
-
if ($.cookie(key)
|
66 |
-
|
67 |
-
return true;
|
68 |
}
|
69 |
-
|
|
|
|
|
|
|
70 |
};
|
71 |
|
72 |
-
})
|
1 |
/*!
|
2 |
+
* jQuery Cookie Plugin v1.4.1
|
3 |
* https://github.com/carhartl/jquery-cookie
|
4 |
*
|
5 |
+
* Copyright 2006, 2014 Klaus Hartl
|
6 |
+
* Released under the MIT license
|
|
|
|
|
7 |
*/
|
8 |
+
(function (factory) {
|
9 |
+
if (typeof define === 'function' && define.amd) {
|
10 |
+
// AMD
|
11 |
+
define(['jquery'], factory);
|
12 |
+
} else if (typeof exports === 'object') {
|
13 |
+
// CommonJS
|
14 |
+
factory(require('jquery'));
|
15 |
+
} else {
|
16 |
+
// Browser globals
|
17 |
+
factory(jQuery);
|
18 |
+
}
|
19 |
+
}(function ($) {
|
20 |
|
21 |
var pluses = /\+/g;
|
22 |
|
23 |
+
function encode(s) {
|
24 |
+
return config.raw ? s : encodeURIComponent(s);
|
25 |
+
}
|
26 |
+
|
27 |
+
function decode(s) {
|
28 |
+
return config.raw ? s : decodeURIComponent(s);
|
29 |
+
}
|
30 |
+
|
31 |
+
function stringifyCookieValue(value) {
|
32 |
+
return encode(config.json ? JSON.stringify(value) : String(value));
|
33 |
}
|
34 |
|
35 |
+
function parseCookieValue(s) {
|
36 |
+
if (s.indexOf('"') === 0) {
|
37 |
+
// This is a quoted cookie as according to RFC2068, unescape...
|
38 |
+
s = s.slice(1, -1).replace(/\\"/g, '"').replace(/\\\\/g, '\\');
|
39 |
+
}
|
40 |
+
|
41 |
+
try {
|
42 |
+
// Replace server-side written pluses with spaces.
|
43 |
+
// If we can't decode the cookie, ignore it, it's unusable.
|
44 |
+
// If we can't parse the cookie, ignore it, it's unusable.
|
45 |
+
s = decodeURIComponent(s.replace(pluses, ' '));
|
46 |
+
return config.json ? JSON.parse(s) : s;
|
47 |
+
} catch(e) {}
|
48 |
+
}
|
49 |
+
|
50 |
+
function read(s, converter) {
|
51 |
+
var value = config.raw ? s : parseCookieValue(s);
|
52 |
+
return $.isFunction(converter) ? converter(value) : value;
|
53 |
}
|
54 |
|
55 |
var config = $.cookie = function (key, value, options) {
|
56 |
|
57 |
+
// Write
|
|
|
|
|
58 |
|
59 |
+
if (arguments.length > 1 && !$.isFunction(value)) {
|
60 |
+
options = $.extend({}, config.defaults, options);
|
|
|
61 |
|
62 |
if (typeof options.expires === 'number') {
|
63 |
var days = options.expires, t = options.expires = new Date();
|
64 |
+
t.setTime(+t + days * 864e+5);
|
65 |
}
|
66 |
|
|
|
|
|
67 |
return (document.cookie = [
|
68 |
+
encode(key), '=', stringifyCookieValue(value),
|
69 |
options.expires ? '; expires=' + options.expires.toUTCString() : '', // use expires attribute, max-age is not supported by IE
|
70 |
options.path ? '; path=' + options.path : '',
|
71 |
options.domain ? '; domain=' + options.domain : '',
|
73 |
].join(''));
|
74 |
}
|
75 |
|
76 |
+
// Read
|
77 |
+
|
78 |
+
var result = key ? undefined : {};
|
79 |
+
|
80 |
+
// To prevent the for loop in the first place assign an empty array
|
81 |
+
// in case there are no cookies at all. Also prevents odd result when
|
82 |
+
// calling $.cookie().
|
83 |
+
var cookies = document.cookie ? document.cookie.split('; ') : [];
|
84 |
+
|
85 |
for (var i = 0, l = cookies.length; i < l; i++) {
|
86 |
var parts = cookies[i].split('=');
|
87 |
+
var name = decode(parts.shift());
|
88 |
+
var cookie = parts.join('=');
|
89 |
+
|
90 |
+
if (key && key === name) {
|
91 |
+
// If second argument (value) is a function it's a converter...
|
92 |
+
result = read(cookie, value);
|
93 |
+
break;
|
94 |
+
}
|
95 |
+
|
96 |
+
// Prevent storing a cookie that we couldn't decode.
|
97 |
+
if (!key && (cookie = read(cookie)) !== undefined) {
|
98 |
+
result[name] = cookie;
|
99 |
}
|
100 |
}
|
101 |
|
102 |
+
return result;
|
103 |
};
|
104 |
|
105 |
config.defaults = {};
|
106 |
|
107 |
$.removeCookie = function (key, options) {
|
108 |
+
if ($.cookie(key) === undefined) {
|
109 |
+
return false;
|
|
|
110 |
}
|
111 |
+
|
112 |
+
// Must not alter options, thus extending a fresh object...
|
113 |
+
$.cookie(key, '', $.extend({}, options, { expires: -1 }));
|
114 |
+
return !$.cookie(key);
|
115 |
};
|
116 |
|
117 |
+
}));
|
js/toastr.js
ADDED
@@ -0,0 +1,374 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* Toastr
|
3 |
+
* Copyright 2012-2014
|
4 |
+
* Authors: John Papa, Hans Fjällemark, and Tim Ferrell.
|
5 |
+
* All Rights Reserved.
|
6 |
+
* Use, reproduction, distribution, and modification of this code is subject to the terms and
|
7 |
+
* conditions of the MIT license, available at http://www.opensource.org/licenses/mit-license.php
|
8 |
+
*
|
9 |
+
* ARIA Support: Greta Krafsig
|
10 |
+
*
|
11 |
+
* Project: https://github.com/CodeSeven/toastr
|
12 |
+
*/
|
13 |
+
; (function (define) {
|
14 |
+
define(['jquery'], function ($) {
|
15 |
+
return (function () {
|
16 |
+
var $container;
|
17 |
+
var listener;
|
18 |
+
var toastId = 0;
|
19 |
+
var toastType = {
|
20 |
+
error: 'error',
|
21 |
+
info: 'info',
|
22 |
+
success: 'success',
|
23 |
+
warning: 'warning'
|
24 |
+
};
|
25 |
+
|
26 |
+
var toastr = {
|
27 |
+
clear: clear,
|
28 |
+
remove: remove,
|
29 |
+
error: error,
|
30 |
+
getContainer: getContainer,
|
31 |
+
info: info,
|
32 |
+
options: {},
|
33 |
+
subscribe: subscribe,
|
34 |
+
success: success,
|
35 |
+
version: '2.1.0',
|
36 |
+
warning: warning
|
37 |
+
};
|
38 |
+
|
39 |
+
var previousToast;
|
40 |
+
|
41 |
+
return toastr;
|
42 |
+
|
43 |
+
//#region Accessible Methods
|
44 |
+
function error(message, title, optionsOverride) {
|
45 |
+
return notify({
|
46 |
+
type: toastType.error,
|
47 |
+
iconClass: getOptions().iconClasses.error,
|
48 |
+
message: message,
|
49 |
+
optionsOverride: optionsOverride,
|
50 |
+
title: title
|
51 |
+
});
|
52 |
+
}
|
53 |
+
|
54 |
+
function getContainer(options, create) {
|
55 |
+
if (!options) { options = getOptions(); }
|
56 |
+
$container = $('#' + options.containerId);
|
57 |
+
if ($container.length) {
|
58 |
+
return $container;
|
59 |
+
}
|
60 |
+
if (create) {
|
61 |
+
$container = createContainer(options);
|
62 |
+
}
|
63 |
+
return $container;
|
64 |
+
}
|
65 |
+
|
66 |
+
function info(message, title, optionsOverride) {
|
67 |
+
return notify({
|
68 |
+
type: toastType.info,
|
69 |
+
iconClass: getOptions().iconClasses.info,
|
70 |
+
message: message,
|
71 |
+
optionsOverride: optionsOverride,
|
72 |
+
title: title
|
73 |
+
});
|
74 |
+
}
|
75 |
+
|
76 |
+
function subscribe(callback) {
|
77 |
+
listener = callback;
|
78 |
+
}
|
79 |
+
|
80 |
+
function success(message, title, optionsOverride) {
|
81 |
+
return notify({
|
82 |
+
type: toastType.success,
|
83 |
+
iconClass: getOptions().iconClasses.success,
|
84 |
+
message: message,
|
85 |
+
optionsOverride: optionsOverride,
|
86 |
+
title: title
|
87 |
+
});
|
88 |
+
}
|
89 |
+
|
90 |
+
function warning(message, title, optionsOverride) {
|
91 |
+
return notify({
|
92 |
+
type: toastType.warning,
|
93 |
+
iconClass: getOptions().iconClasses.warning,
|
94 |
+
message: message,
|
95 |
+
optionsOverride: optionsOverride,
|
96 |
+
title: title
|
97 |
+
});
|
98 |
+
}
|
99 |
+
|
100 |
+
function clear($toastElement) {
|
101 |
+
var options = getOptions();
|
102 |
+
if (!$container) { getContainer(options); }
|
103 |
+
if (!clearToast($toastElement, options)) {
|
104 |
+
clearContainer(options);
|
105 |
+
}
|
106 |
+
}
|
107 |
+
|
108 |
+
function remove($toastElement) {
|
109 |
+
var options = getOptions();
|
110 |
+
if (!$container) { getContainer(options); }
|
111 |
+
if ($toastElement && $(':focus', $toastElement).length === 0) {
|
112 |
+
removeToast($toastElement);
|
113 |
+
return;
|
114 |
+
}
|
115 |
+
if ($container.children().length) {
|
116 |
+
$container.remove();
|
117 |
+
}
|
118 |
+
}
|
119 |
+
//#endregion
|
120 |
+
|
121 |
+
//#region Internal Methods
|
122 |
+
|
123 |
+
function clearContainer (options) {
|
124 |
+
var toastsToClear = $container.children();
|
125 |
+
for (var i = toastsToClear.length - 1; i >= 0; i--) {
|
126 |
+
clearToast($(toastsToClear[i]), options);
|
127 |
+
}
|
128 |
+
}
|
129 |
+
|
130 |
+
function clearToast ($toastElement, options) {
|
131 |
+
if ($toastElement && $(':focus', $toastElement).length === 0) {
|
132 |
+
$toastElement[options.hideMethod]({
|
133 |
+
duration: options.hideDuration,
|
134 |
+
easing: options.hideEasing,
|
135 |
+
complete: function () { removeToast($toastElement); }
|
136 |
+
});
|
137 |
+
return true;
|
138 |
+
}
|
139 |
+
return false;
|
140 |
+
}
|
141 |
+
|
142 |
+
function createContainer(options) {
|
143 |
+
$container = $('<div/>')
|
144 |
+
.attr('id', options.containerId)
|
145 |
+
.addClass(options.positionClass)
|
146 |
+
.attr('aria-live', 'polite')
|
147 |
+
.attr('role', 'alert');
|
148 |
+
|
149 |
+
$container.appendTo($(options.target));
|
150 |
+
return $container;
|
151 |
+
}
|
152 |
+
|
153 |
+
function getDefaults() {
|
154 |
+
return {
|
155 |
+
tapToDismiss: true,
|
156 |
+
toastClass: 'toast',
|
157 |
+
containerId: 'toast-container',
|
158 |
+
debug: false,
|
159 |
+
|
160 |
+
showMethod: 'fadeIn', //fadeIn, slideDown, and show are built into jQuery
|
161 |
+
showDuration: 300,
|
162 |
+
showEasing: 'swing', //swing and linear are built into jQuery
|
163 |
+
onShown: undefined,
|
164 |
+
hideMethod: 'fadeOut',
|
165 |
+
hideDuration: 1000,
|
166 |
+
hideEasing: 'swing',
|
167 |
+
onHidden: undefined,
|
168 |
+
|
169 |
+
extendedTimeOut: 1000,
|
170 |
+
iconClasses: {
|
171 |
+
error: 'toast-error',
|
172 |
+
info: 'toast-info',
|
173 |
+
success: 'toast-success',
|
174 |
+
warning: 'toast-warning'
|
175 |
+
},
|
176 |
+
iconClass: 'toast-info',
|
177 |
+
positionClass: 'toast-top-right',
|
178 |
+
timeOut: 5000, // Set timeOut and extendedTimeOut to 0 to make it sticky
|
179 |
+
titleClass: 'toast-title',
|
180 |
+
messageClass: 'toast-message',
|
181 |
+
target: 'body',
|
182 |
+
closeHtml: '<button>×</button>',
|
183 |
+
newestOnTop: true,
|
184 |
+
preventDuplicates: false,
|
185 |
+
progressBar: false
|
186 |
+
};
|
187 |
+
}
|
188 |
+
|
189 |
+
function publish(args) {
|
190 |
+
if (!listener) { return; }
|
191 |
+
listener(args);
|
192 |
+
}
|
193 |
+
|
194 |
+
function notify(map) {
|
195 |
+
var options = getOptions(),
|
196 |
+
iconClass = map.iconClass || options.iconClass;
|
197 |
+
|
198 |
+
if (options.preventDuplicates) {
|
199 |
+
if (map.message === previousToast) {
|
200 |
+
return;
|
201 |
+
} else {
|
202 |
+
previousToast = map.message;
|
203 |
+
}
|
204 |
+
}
|
205 |
+
|
206 |
+
if (typeof (map.optionsOverride) !== 'undefined') {
|
207 |
+
options = $.extend(options, map.optionsOverride);
|
208 |
+
iconClass = map.optionsOverride.iconClass || iconClass;
|
209 |
+
}
|
210 |
+
|
211 |
+
toastId++;
|
212 |
+
|
213 |
+
$container = getContainer(options, true);
|
214 |
+
var intervalId = null,
|
215 |
+
$toastElement = $('<div/>'),
|
216 |
+
$titleElement = $('<div/>'),
|
217 |
+
$messageElement = $('<div/>'),
|
218 |
+
$progressElement = $('<div/>'),
|
219 |
+
$closeElement = $(options.closeHtml),
|
220 |
+
progressBar = {
|
221 |
+
intervalId: null,
|
222 |
+
hideEta: null,
|
223 |
+
maxHideTime: null
|
224 |
+
},
|
225 |
+
response = {
|
226 |
+
toastId: toastId,
|
227 |
+
state: 'visible',
|
228 |
+
startTime: new Date(),
|
229 |
+
options: options,
|
230 |
+
map: map
|
231 |
+
};
|
232 |
+
|
233 |
+
if (map.iconClass) {
|
234 |
+
$toastElement.addClass(options.toastClass).addClass(iconClass);
|
235 |
+
}
|
236 |
+
|
237 |
+
if (map.title) {
|
238 |
+
$titleElement.append(map.title).addClass(options.titleClass);
|
239 |
+
$toastElement.append($titleElement);
|
240 |
+
}
|
241 |
+
|
242 |
+
if (map.message) {
|
243 |
+
$messageElement.append(map.message).addClass(options.messageClass);
|
244 |
+
$toastElement.append($messageElement);
|
245 |
+
}
|
246 |
+
|
247 |
+
if (options.closeButton) {
|
248 |
+
$closeElement.addClass('toast-close-button').attr('role', 'button');
|
249 |
+
$toastElement.prepend($closeElement);
|
250 |
+
}
|
251 |
+
|
252 |
+
if (options.progressBar) {
|
253 |
+
$progressElement.addClass('toast-progress');
|
254 |
+
$toastElement.prepend($progressElement);
|
255 |
+
}
|
256 |
+
|
257 |
+
$toastElement.hide();
|
258 |
+
if (options.newestOnTop) {
|
259 |
+
$container.prepend($toastElement);
|
260 |
+
} else {
|
261 |
+
$container.append($toastElement);
|
262 |
+
}
|
263 |
+
$toastElement[options.showMethod](
|
264 |
+
{duration: options.showDuration, easing: options.showEasing, complete: options.onShown}
|
265 |
+
);
|
266 |
+
|
267 |
+
if (options.timeOut > 0) {
|
268 |
+
intervalId = setTimeout(hideToast, options.timeOut);
|
269 |
+
progressBar.maxHideTime = parseFloat(options.timeOut);
|
270 |
+
progressBar.hideEta = new Date().getTime() + progressBar.maxHideTime;
|
271 |
+
if (options.progressBar) {
|
272 |
+
progressBar.intervalId = setInterval(updateProgress, 10);
|
273 |
+
}
|
274 |
+
}
|
275 |
+
|
276 |
+
$toastElement.hover(stickAround, delayedHideToast);
|
277 |
+
if (!options.onclick && options.tapToDismiss) {
|
278 |
+
$toastElement.click(hideToast);
|
279 |
+
}
|
280 |
+
|
281 |
+
if (options.closeButton && $closeElement) {
|
282 |
+
$closeElement.click(function (event) {
|
283 |
+
if (event.stopPropagation) {
|
284 |
+
event.stopPropagation();
|
285 |
+
} else if (event.cancelBubble !== undefined && event.cancelBubble !== true) {
|
286 |
+
event.cancelBubble = true;
|
287 |
+
}
|
288 |
+
hideToast(true);
|
289 |
+
});
|
290 |
+
}
|
291 |
+
|
292 |
+
if (options.onclick) {
|
293 |
+
$toastElement.click(function () {
|
294 |
+
options.onclick();
|
295 |
+
hideToast();
|
296 |
+
});
|
297 |
+
}
|
298 |
+
|
299 |
+
publish(response);
|
300 |
+
|
301 |
+
if (options.debug && console) {
|
302 |
+
console.log(response);
|
303 |
+
}
|
304 |
+
|
305 |
+
return $toastElement;
|
306 |
+
|
307 |
+
function hideToast(override) {
|
308 |
+
if ($(':focus', $toastElement).length && !override) {
|
309 |
+
return;
|
310 |
+
}
|
311 |
+
clearTimeout(progressBar.intervalId);
|
312 |
+
return $toastElement[options.hideMethod]({
|
313 |
+
duration: options.hideDuration,
|
314 |
+
easing: options.hideEasing,
|
315 |
+
complete: function () {
|
316 |
+
removeToast($toastElement);
|
317 |
+
if (options.onHidden && response.state !== 'hidden') {
|
318 |
+
options.onHidden();
|
319 |
+
}
|
320 |
+
response.state = 'hidden';
|
321 |
+
response.endTime = new Date();
|
322 |
+
publish(response);
|
323 |
+
}
|
324 |
+
});
|
325 |
+
}
|
326 |
+
|
327 |
+
function delayedHideToast() {
|
328 |
+
if (options.timeOut > 0 || options.extendedTimeOut > 0) {
|
329 |
+
intervalId = setTimeout(hideToast, options.extendedTimeOut);
|
330 |
+
progressBar.maxHideTime = parseFloat(options.extendedTimeOut);
|
331 |
+
progressBar.hideEta = new Date().getTime() + progressBar.maxHideTime;
|
332 |
+
}
|
333 |
+
}
|
334 |
+
|
335 |
+
function stickAround() {
|
336 |
+
clearTimeout(intervalId);
|
337 |
+
progressBar.hideEta = 0;
|
338 |
+
$toastElement.stop(true, true)[options.showMethod](
|
339 |
+
{duration: options.showDuration, easing: options.showEasing}
|
340 |
+
);
|
341 |
+
}
|
342 |
+
|
343 |
+
function updateProgress() {
|
344 |
+
var percentage = ((progressBar.hideEta - (new Date().getTime())) / progressBar.maxHideTime) * 100;
|
345 |
+
$progressElement.width(percentage + '%');
|
346 |
+
}
|
347 |
+
}
|
348 |
+
|
349 |
+
function getOptions() {
|
350 |
+
return $.extend({}, getDefaults(), toastr.options);
|
351 |
+
}
|
352 |
+
|
353 |
+
function removeToast($toastElement) {
|
354 |
+
if (!$container) { $container = getContainer(); }
|
355 |
+
if ($toastElement.is(':visible')) {
|
356 |
+
return;
|
357 |
+
}
|
358 |
+
$toastElement.remove();
|
359 |
+
$toastElement = null;
|
360 |
+
if ($container.children().length === 0) {
|
361 |
+
$container.remove();
|
362 |
+
}
|
363 |
+
}
|
364 |
+
//#endregion
|
365 |
+
|
366 |
+
})();
|
367 |
+
});
|
368 |
+
}(typeof define === 'function' && define.amd ? define : function (deps, factory) {
|
369 |
+
if (typeof module !== 'undefined' && module.exports) { //Node
|
370 |
+
module.exports = factory(require('jquery'));
|
371 |
+
} else {
|
372 |
+
window['toastr'] = factory(window['jQuery']);
|
373 |
+
}
|
374 |
+
}));
|
js/wplc_u.js
CHANGED
@@ -27,6 +27,12 @@ jQuery(document).ready(function() {
|
|
27 |
|
28 |
wplc_cid = jQuery.cookie('wplc_cid');
|
29 |
|
|
|
|
|
|
|
|
|
|
|
|
|
30 |
wplc_check_hide_cookie = jQuery.cookie('wplc_hide');
|
31 |
wplc_check_minimize_cookie = jQuery.cookie('wplc_minimize');
|
32 |
wplc_chat_status = jQuery.cookie('wplc_chat_status');
|
@@ -356,8 +362,9 @@ jQuery(document).ready(function() {
|
|
356 |
else if (wplc_chat_status == 5 || wplc_chat_status == 9 || wplc_chat_status == 8){
|
357 |
|
358 |
if(jQuery("#wp-live-chat-2").is(":visible") === false && jQuery("#wp-live-chat-4").is(":visible") === false){
|
359 |
-
jQuery("#wp-live-chat-2").show();
|
360 |
-
|
|
|
361 |
jQuery("#wplc_name").val(jQuery.cookie('wplc_name'));
|
362 |
jQuery("#wplc_email").val(jQuery.cookie('wplc_email'));
|
363 |
}
|
@@ -483,9 +490,8 @@ jQuery(document).ready(function() {
|
|
483 |
//console.log("wplc_user_send_msg");
|
484 |
});
|
485 |
|
486 |
-
});
|
487 |
-
|
488 |
-
|
489 |
});
|
490 |
|
491 |
|
27 |
|
28 |
wplc_cid = jQuery.cookie('wplc_cid');
|
29 |
|
30 |
+
if(typeof wplc_cid === 'undefined'){
|
31 |
+
wplc_cid = null;
|
32 |
+
} else {
|
33 |
+
wplc_cid = jQuery.cookie('wplc_cid');
|
34 |
+
}
|
35 |
+
|
36 |
wplc_check_hide_cookie = jQuery.cookie('wplc_hide');
|
37 |
wplc_check_minimize_cookie = jQuery.cookie('wplc_minimize');
|
38 |
wplc_chat_status = jQuery.cookie('wplc_chat_status');
|
362 |
else if (wplc_chat_status == 5 || wplc_chat_status == 9 || wplc_chat_status == 8){
|
363 |
|
364 |
if(jQuery("#wp-live-chat-2").is(":visible") === false && jQuery("#wp-live-chat-4").is(":visible") === false){
|
365 |
+
jQuery("#wp-live-chat-2").show();
|
366 |
+
var wplc_visitor_name = jQuery.cookie('wplc_name');
|
367 |
+
if(jQuery.cookie('wplc_email') !== "no email set" && wplc_visitor_name.indexOf("user") >= 0){
|
368 |
jQuery("#wplc_name").val(jQuery.cookie('wplc_name'));
|
369 |
jQuery("#wplc_email").val(jQuery.cookie('wplc_email'));
|
370 |
}
|
490 |
//console.log("wplc_user_send_msg");
|
491 |
});
|
492 |
|
493 |
+
});
|
494 |
+
|
|
|
495 |
});
|
496 |
|
497 |
|
languages/wplivechat-es_ES.mo
CHANGED
Binary file
|
languages/wplivechat-es_ES.po
CHANGED
@@ -1,815 +1,1168 @@
|
|
1 |
msgid ""
|
2 |
msgstr ""
|
3 |
-
"Project-Id-Version:
|
4 |
-
"
|
5 |
-
"
|
6 |
-
"
|
7 |
-
"
|
|
|
|
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=UTF-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
11 |
-
"
|
12 |
-
"X-
|
13 |
-
"X-Poedit-
|
14 |
-
"X-Poedit-
|
15 |
-
"
|
16 |
-
"X-Poedit-
|
17 |
-
"
|
18 |
-
|
19 |
-
|
20 |
-
#:
|
21 |
msgid "Admin has closed and ended the chat"
|
22 |
-
msgstr "El administrador ha cerrado y
|
23 |
|
24 |
-
#:
|
25 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support-pro/ajax-pro.php:245
|
26 |
msgid "There is No Answer. Please Try Again Later"
|
27 |
-
msgstr "No hay respuesta. Por favor
|
28 |
-
|
29 |
-
#:
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
#:
|
36 |
-
#:
|
37 |
-
#:
|
38 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support-pro/functions-pro.php:24
|
39 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support-pro/functions-pro.php:101
|
40 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support-pro/functions-pro.php:171
|
41 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support-pro/wp-live-chat-support-pro.php:303
|
42 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support-pro/wp-live-chat-support-pro.php:401
|
43 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support-pro/wp-live-chat-support-pro.php:419
|
44 |
msgid "Name"
|
45 |
msgstr "Nombre"
|
46 |
|
47 |
-
#:
|
48 |
-
#:
|
49 |
-
#:
|
50 |
-
#:
|
51 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support-pro/functions-pro.php:171
|
52 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support-pro/wp-live-chat-support-pro.php:304
|
53 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support-pro/wp-live-chat-support-pro.php:403
|
54 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support-pro/wp-live-chat-support-pro.php:420
|
55 |
msgid "Email"
|
56 |
-
msgstr "
|
57 |
|
58 |
-
#:
|
59 |
-
#:
|
60 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support-pro/functions-pro.php:103
|
61 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support-pro/wp-live-chat-support-pro.php:305
|
62 |
msgid "URL"
|
63 |
msgstr "URL"
|
64 |
|
65 |
-
#:
|
66 |
-
#:
|
67 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support-pro/functions-pro.php:104
|
68 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support-pro/wp-live-chat-support-pro.php:306
|
69 |
msgid "Status"
|
70 |
msgstr "Estado"
|
71 |
|
72 |
-
#:
|
73 |
-
#:
|
74 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support-pro/functions-pro.php:105
|
75 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support-pro/wp-live-chat-support-pro.php:307
|
76 |
msgid "Action"
|
77 |
msgstr "Acción"
|
78 |
|
79 |
-
#:
|
80 |
-
|
81 |
-
|
82 |
-
msgstr "No hay sesiones de chat activas en el momento"
|
83 |
|
84 |
-
#:
|
85 |
-
msgid "
|
86 |
-
msgstr "
|
87 |
|
88 |
-
#:
|
89 |
-
msgid "
|
90 |
-
msgstr "
|
91 |
|
92 |
-
#:
|
93 |
-
msgid "
|
94 |
-
msgstr "
|
95 |
|
96 |
-
#:
|
97 |
-
msgid "
|
98 |
-
msgstr "
|
99 |
|
100 |
-
#:
|
101 |
-
msgid "
|
102 |
-
msgstr "
|
103 |
|
104 |
-
#:
|
105 |
-
msgid "
|
106 |
-
msgstr "
|
107 |
|
108 |
-
#:
|
109 |
-
msgid "Chat
|
110 |
-
msgstr "
|
111 |
|
112 |
-
#:
|
113 |
-
msgid "
|
114 |
-
msgstr "El
|
115 |
|
116 |
-
#:
|
117 |
-
msgid "
|
118 |
-
msgstr "
|
119 |
|
120 |
-
#:
|
121 |
-
#:
|
122 |
-
|
123 |
-
|
124 |
-
msgstr "Live Chat"
|
125 |
|
126 |
-
#:
|
127 |
-
|
128 |
-
|
129 |
-
msgstr "Ajustes"
|
130 |
|
131 |
-
#:
|
132 |
-
|
133 |
-
|
134 |
-
msgstr "Archivo"
|
135 |
|
136 |
-
#:
|
137 |
-
|
138 |
-
|
139 |
-
msgid "Feedback"
|
140 |
-
msgstr "Retroalimentación"
|
141 |
|
142 |
-
#:
|
143 |
-
|
144 |
-
|
145 |
-
msgstr "¿Tienes preguntas?"
|
146 |
|
147 |
-
#:
|
148 |
-
|
149 |
-
|
150 |
-
msgstr "Chatea con nosotros"
|
151 |
|
152 |
-
#:
|
153 |
-
|
154 |
-
|
155 |
-
msgstr "Iniciar Chat"
|
156 |
|
157 |
-
#:
|
158 |
-
|
159 |
-
msgid "Connecting you to a sales person. Please be patient."
|
160 |
msgstr ""
|
161 |
-
"
|
|
|
162 |
|
163 |
-
#:
|
164 |
-
|
165 |
-
|
166 |
-
msgstr "Reactivando tu chat anterior..."
|
167 |
|
168 |
-
#:
|
169 |
-
|
170 |
-
|
171 |
-
msgstr "Presiona ENTER para enviar tu mensaje"
|
172 |
|
173 |
-
#:
|
174 |
-
|
175 |
-
|
176 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support-pro/wp-live-chat-support-pro.php:684
|
177 |
-
msgid "Send"
|
178 |
-
msgstr "Enviar"
|
179 |
|
180 |
-
#:
|
181 |
-
|
182 |
-
|
183 |
-
msgstr "Querido usuario Pro"
|
184 |
|
185 |
-
#:
|
186 |
-
msgid "You
|
187 |
-
msgstr ""
|
188 |
-
"Estás usando una versión desactualizada de WP Live Chat Support Pro. Por "
|
189 |
-
"favor"
|
190 |
|
191 |
-
#:
|
192 |
-
|
193 |
-
|
194 |
-
msgstr "actualiza a la última versión"
|
195 |
|
196 |
-
#:
|
197 |
-
|
198 |
-
|
199 |
-
msgstr "para asegurarte de que todo funcione correctamente"
|
200 |
|
201 |
-
#:
|
202 |
-
|
203 |
-
|
204 |
-
msgstr "Si tienes dificultades actualizando el plugin, por favor contáctanos"
|
205 |
|
206 |
-
#:
|
207 |
-
|
208 |
-
|
|
|
|
|
209 |
|
210 |
-
#:
|
211 |
-
|
212 |
-
|
|
|
213 |
|
214 |
-
#:
|
215 |
-
msgid "
|
216 |
-
msgstr "
|
217 |
|
218 |
-
#:
|
219 |
-
|
220 |
-
|
221 |
-
msgstr "Visitantes en el sitio"
|
222 |
|
223 |
-
#:
|
224 |
-
msgid "
|
225 |
-
msgstr "
|
226 |
|
227 |
-
#:
|
228 |
-
msgid "
|
229 |
-
msgstr "
|
230 |
|
231 |
-
#:
|
232 |
-
msgid "
|
233 |
-
msgstr "
|
|
|
|
|
|
|
|
|
234 |
|
235 |
-
#:
|
236 |
-
msgid "
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
237 |
msgstr ""
|
238 |
-
"
|
239 |
-
"
|
240 |
|
241 |
-
#:
|
242 |
-
msgid "
|
|
|
|
|
|
|
|
|
243 |
msgstr ""
|
244 |
-
"
|
245 |
-
"
|
246 |
|
247 |
-
#:
|
248 |
-
msgid "
|
249 |
-
msgstr "
|
250 |
|
251 |
-
#:
|
252 |
-
msgid "
|
253 |
-
|
|
|
|
|
|
|
|
|
254 |
|
255 |
-
#:
|
256 |
-
|
257 |
-
|
258 |
-
msgstr "Terminar chat"
|
259 |
|
260 |
-
#:
|
261 |
-
|
262 |
-
|
263 |
-
|
|
|
|
|
|
|
264 |
|
265 |
-
#:
|
266 |
-
|
267 |
-
|
268 |
-
msgstr "El usuario ha minimizado la ventana del chat"
|
269 |
|
270 |
-
#:
|
271 |
-
|
272 |
-
|
273 |
-
|
|
|
|
|
|
|
274 |
|
275 |
-
#:
|
276 |
-
|
277 |
-
|
278 |
-
|
|
|
|
|
|
|
279 |
|
280 |
-
#:
|
281 |
-
msgid "
|
282 |
-
msgstr "
|
283 |
-
|
284 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support/wp-live-chat-support.php:861
|
285 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support/includes/settings_page.php:47
|
286 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support/includes/settings_page.php:78
|
287 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support/includes/settings_page.php:94
|
288 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support/includes/settings_page.php:110
|
289 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support/includes/settings_page.php:126
|
290 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support/includes/settings_page.php:143
|
291 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support/includes/settings_page.php:164
|
292 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support/includes/settings_page.php:178
|
293 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support/includes/settings_page.php:228
|
294 |
-
msgid "Pro Add-on"
|
295 |
-
msgstr "Versión Pro"
|
296 |
|
297 |
-
#:
|
298 |
-
|
299 |
-
|
300 |
-
|
|
|
|
|
|
|
301 |
|
302 |
-
#:
|
303 |
-
msgid "
|
304 |
-
msgstr "
|
305 |
|
306 |
-
#:
|
307 |
-
|
308 |
-
|
309 |
-
msgstr "Gracias por tus comentarios. Te contactaremos pronto"
|
310 |
|
311 |
-
#:
|
312 |
-
msgid "
|
313 |
-
msgstr "
|
314 |
|
315 |
-
#:
|
316 |
-
msgid "
|
317 |
-
msgstr "
|
318 |
|
319 |
-
#:
|
320 |
-
msgid "
|
321 |
-
msgstr "
|
322 |
|
323 |
-
#:
|
324 |
-
msgid "
|
325 |
-
msgstr "
|
326 |
|
327 |
-
#:
|
328 |
-
msgid "
|
329 |
-
msgstr "
|
330 |
|
331 |
-
#:
|
332 |
-
msgid "
|
333 |
-
|
|
|
|
|
|
|
|
|
334 |
|
335 |
-
#:
|
336 |
-
msgid "
|
337 |
-
msgstr "
|
338 |
|
339 |
-
#:
|
340 |
-
|
341 |
-
|
342 |
-
msgstr "Ajustes de WP Live Chat Support"
|
343 |
|
344 |
-
#:
|
345 |
-
#:
|
346 |
-
msgid "
|
347 |
-
msgstr "
|
348 |
|
349 |
-
#:
|
350 |
-
|
351 |
-
|
352 |
-
msgstr "Ventana de Chat"
|
353 |
|
354 |
-
#:
|
355 |
-
|
356 |
-
|
357 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support-pro/includes/settings_page_pro.php:141
|
358 |
-
msgid "Offline Messages"
|
359 |
-
msgstr "Mensajes offline"
|
360 |
|
361 |
-
#:
|
362 |
-
|
363 |
-
|
364 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support-pro/includes/settings_page_pro.php:226
|
365 |
-
msgid "Styling"
|
366 |
-
msgstr "Estilos"
|
367 |
|
368 |
-
#:
|
369 |
-
msgid "
|
370 |
-
msgstr "
|
371 |
|
372 |
-
#:
|
373 |
-
|
374 |
-
|
375 |
-
msgstr "Ajustes Principales"
|
376 |
|
377 |
-
#:
|
378 |
-
|
379 |
-
|
380 |
-
msgstr "Chat habilitado"
|
381 |
|
382 |
-
#:
|
383 |
-
|
384 |
-
|
385 |
-
msgstr "Sí"
|
386 |
|
387 |
-
#:
|
388 |
-
|
389 |
-
|
390 |
-
msgstr "No"
|
391 |
|
392 |
-
#:
|
393 |
-
|
394 |
-
|
395 |
-
msgstr "Ocultar Chat"
|
396 |
|
397 |
-
#:
|
398 |
-
|
399 |
-
|
400 |
-
|
401 |
-
|
402 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support/includes/settings_page.php:46
|
403 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support/includes/settings_page.php:77
|
404 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support/includes/settings_page.php:93
|
405 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support/includes/settings_page.php:109
|
406 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support/includes/settings_page.php:125
|
407 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support/includes/settings_page.php:142
|
408 |
-
msgid "available in the"
|
409 |
-
msgstr "disponible en el"
|
410 |
-
|
411 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support/includes/settings_page.php:48
|
412 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support/includes/settings_page.php:79
|
413 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support/includes/settings_page.php:95
|
414 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support/includes/settings_page.php:111
|
415 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support/includes/settings_page.php:127
|
416 |
-
#: C:\wamp\www\wordpress38\wp-content\plugins\wp-live-chat-support/includes/settings_page.php:144
|
417 |
-
msgid "only"
|
418 |
-
msgstr "solamente"
|
419 |
|
420 |
-
#:
|
421 |
-
|
422 |
-
|
423 |
-
msgstr "Ajustes de la ventana de Chat"
|
424 |
|
425 |
-
#:
|
426 |
-
|
427 |
-
|
428 |
-
msgstr "Alineación de la ventana de Chat"
|
429 |
|
430 |
-
#:
|
431 |
-
|
432 |
-
|
433 |
-
|
|
|
434 |
|
435 |
-
#:
|
436 |
-
|
437 |
-
|
438 |
-
msgstr "Abajo a la derecha"
|
439 |
|
440 |
-
#:
|
441 |
-
|
442 |
-
|
443 |
-
|
|
|
|
|
|
|
444 |
|
445 |
-
#:
|
446 |
-
|
447 |
-
|
448 |
-
msgid "Upload Image"
|
449 |
-
msgstr "Subir imagen"
|
450 |
|
451 |
-
#:
|
452 |
-
|
453 |
-
|
454 |
-
|
|
|
|
|
|
|
455 |
|
456 |
-
#:
|
457 |
-
|
458 |
-
|
459 |
-
msgstr "Demora del chat (seguntos)"
|
460 |
|
461 |
-
#:
|
462 |
-
|
463 |
-
|
464 |
-
|
465 |
|
466 |
-
#:
|
467 |
-
|
468 |
-
|
469 |
-
msgstr "Notificarme por email tan pronto alguien desea iniciar un chat"
|
470 |
|
471 |
-
#:
|
472 |
-
|
473 |
-
|
474 |
-
msgstr "Dirección de Email"
|
475 |
|
476 |
-
#:
|
477 |
-
msgid "
|
478 |
-
msgstr "
|
479 |
|
480 |
-
#:
|
481 |
-
msgid "
|
482 |
-
msgstr "
|
483 |
|
484 |
-
#:
|
485 |
-
|
486 |
-
|
487 |
-
msgstr "Edita estos campos de texto usando la"
|
488 |
|
489 |
-
#:
|
490 |
-
|
491 |
-
|
492 |
-
msgstr "Color de relleno de la ventana de chat"
|
493 |
|
494 |
-
#:
|
495 |
-
|
496 |
-
|
497 |
-
msgstr "Color de texto de la ventana de chat"
|
498 |
|
499 |
-
#:
|
500 |
-
msgid "
|
501 |
-
msgstr "
|
502 |
|
503 |
-
#:
|
504 |
-
msgid "
|
505 |
-
msgstr "
|
506 |
|
507 |
-
#:
|
508 |
-
msgid "
|
509 |
-
msgstr "
|
510 |
|
511 |
-
#:
|
512 |
-
|
513 |
-
|
514 |
-
msgstr "Múltiples Agentes"
|
515 |
|
516 |
-
#:
|
517 |
-
|
518 |
-
|
519 |
-
msgstr "Obtener"
|
520 |
|
521 |
-
#:
|
522 |
-
|
523 |
-
|
524 |
-
msgstr "Múltiples agentes de soporte"
|
525 |
|
526 |
-
#:
|
527 |
-
|
528 |
-
|
529 |
-
msgstr "por solo $39.95"
|
530 |
|
531 |
-
#:
|
532 |
-
|
533 |
-
|
534 |
-
msgstr "Guardar Ajustes"
|
535 |
|
536 |
-
#:
|
537 |
-
msgid "
|
538 |
-
msgstr "Bienvenido
|
539 |
|
540 |
-
#:
|
541 |
-
msgid "
|
542 |
-
msgstr "
|
543 |
|
544 |
-
#:
|
545 |
-
msgid "
|
546 |
-
msgstr "
|
547 |
|
548 |
-
#:
|
549 |
-
msgid "
|
550 |
-
|
|
|
|
|
|
|
|
|
|
|
551 |
|
552 |
-
#:
|
553 |
-
msgid "
|
554 |
-
msgstr "
|
|
|
555 |
|
556 |
-
#:
|
557 |
-
msgid "
|
558 |
-
msgstr "
|
559 |
|
560 |
-
#:
|
561 |
-
msgid "
|
562 |
-
msgstr "
|
563 |
|
564 |
-
#:
|
565 |
-
msgid "
|
566 |
-
msgstr "
|
|
|
|
|
567 |
|
568 |
-
#:
|
569 |
-
msgid "
|
570 |
-
msgstr "
|
571 |
|
572 |
-
#:
|
573 |
-
msgid "
|
574 |
-
msgstr "
|
575 |
|
576 |
-
#:
|
577 |
-
msgid "
|
578 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
579 |
|
580 |
-
#:
|
581 |
-
msgid "
|
582 |
-
|
|
|
|
|
|
|
|
|
583 |
|
584 |
-
#:
|
585 |
-
msgid "
|
586 |
-
msgstr "
|
|
|
587 |
|
588 |
-
#:
|
589 |
-
msgid "
|
590 |
-
msgstr "
|
591 |
|
592 |
-
#:
|
593 |
-
msgid "
|
594 |
-
|
|
|
|
|
|
|
|
|
595 |
|
596 |
-
#:
|
597 |
-
|
598 |
-
|
|
|
599 |
|
600 |
-
#:
|
601 |
-
|
602 |
-
|
|
|
603 |
|
604 |
-
#:
|
605 |
-
msgid "
|
606 |
-
msgstr "
|
607 |
|
608 |
-
#:
|
609 |
-
#:
|
610 |
-
msgid "
|
611 |
-
msgstr "
|
612 |
|
613 |
-
#:
|
614 |
-
msgid "
|
615 |
-
msgstr "
|
616 |
|
617 |
-
#:
|
618 |
-
|
619 |
-
|
|
|
620 |
|
621 |
-
#:
|
622 |
-
msgid "
|
623 |
-
msgstr "
|
624 |
|
625 |
-
#:
|
626 |
-
msgid "
|
627 |
-
msgstr "
|
628 |
|
629 |
-
#:
|
630 |
msgid ""
|
631 |
-
"
|
632 |
-
"
|
633 |
msgstr ""
|
634 |
-
"
|
635 |
-
"
|
636 |
|
637 |
-
#:
|
638 |
-
msgid "
|
639 |
-
msgstr "
|
640 |
|
641 |
-
#:
|
642 |
-
msgid "
|
643 |
-
msgstr ""
|
644 |
-
"Estás usando una versión desactualizada de WP Live Chat Support Básico. Por "
|
645 |
-
"favor"
|
646 |
|
647 |
-
#:
|
648 |
-
#:
|
649 |
-
msgid "
|
650 |
-
msgstr "
|
|
|
|
|
|
|
|
|
651 |
|
652 |
-
#:
|
|
|
|
|
|
|
|
|
653 |
msgid "No chats available at the moment"
|
654 |
-
msgstr "No hay chats disponibles en
|
|
|
|
|
|
|
|
|
655 |
|
656 |
-
#:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
657 |
msgid "Send message"
|
658 |
msgstr "Enviar mensaje"
|
659 |
|
660 |
-
#:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
661 |
msgid "Chat sessions"
|
662 |
-
msgstr "Sesiones de
|
663 |
|
664 |
-
#:
|
665 |
msgid ""
|
666 |
"Please note: This window must be open in order to receive new chat "
|
667 |
"notifications."
|
668 |
msgstr ""
|
669 |
-
"
|
670 |
-
"notificaciones de
|
671 |
|
672 |
-
#:
|
673 |
-
msgid "
|
674 |
-
msgstr "
|
675 |
|
676 |
-
#:
|
677 |
-
msgid "
|
678 |
-
msgstr "
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
679 |
|
680 |
-
#:
|
681 |
-
msgid "
|
682 |
-
msgstr "
|
683 |
|
684 |
-
#:
|
685 |
-
msgid "
|
686 |
-
msgstr "
|
687 |
|
688 |
-
#:
|
689 |
-
msgid "
|
690 |
-
msgstr "
|
691 |
|
692 |
-
#:
|
693 |
msgid "Attempting to open the chat window... Please be patient."
|
694 |
-
msgstr "Intentando abrir ventana
|
695 |
|
696 |
-
#:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
697 |
msgid "This chat has already been answered. Please close the chat window"
|
698 |
-
msgstr "Este chat ya ha sido
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
699 |
|
700 |
-
#:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
701 |
msgid ""
|
702 |
"An Unexpected HTTP Error occurred during the API request.</p> <p><a href=\"?"
|
703 |
"\" onclick=\"document.location.reload(); return false;\">Try again</a>"
|
704 |
msgstr ""
|
705 |
-
"
|
706 |
-
"
|
707 |
"nuevo</a>"
|
708 |
|
709 |
-
#:
|
710 |
msgid "An unknown error occurred"
|
711 |
-
msgstr "
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
712 |
|
713 |
-
#:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
714 |
msgid "Error Log"
|
715 |
msgstr "Registro de errores"
|
716 |
|
717 |
-
#:
|
718 |
-
msgid "
|
719 |
-
msgstr "
|
720 |
|
721 |
-
#:
|
722 |
-
msgid "
|
723 |
-
msgstr "
|
724 |
|
725 |
-
#:
|
726 |
-
msgid "
|
727 |
-
msgstr "
|
728 |
|
729 |
-
#:
|
730 |
-
msgid "
|
731 |
-
msgstr "
|
732 |
|
733 |
-
#:
|
734 |
-
msgid "
|
735 |
-
msgstr "
|
736 |
|
737 |
-
#:
|
738 |
-
msgid "
|
739 |
-
msgstr "
|
740 |
|
741 |
-
#:
|
742 |
-
msgid "
|
743 |
-
msgstr "
|
744 |
|
745 |
-
#:
|
746 |
-
msgid "
|
747 |
-
msgstr "
|
748 |
|
749 |
-
#:
|
750 |
-
msgid "
|
751 |
-
msgstr "
|
752 |
|
753 |
-
#:
|
754 |
-
msgid "
|
755 |
-
msgstr "
|
756 |
|
757 |
-
#:
|
758 |
-
|
759 |
-
|
|
|
760 |
|
761 |
-
#:
|
762 |
-
msgid "
|
763 |
-
msgstr "
|
764 |
|
765 |
-
#:
|
766 |
-
msgid "
|
767 |
-
msgstr "
|
768 |
|
769 |
-
#:
|
770 |
-
msgid "
|
771 |
-
msgstr "
|
772 |
|
773 |
-
#:
|
774 |
-
msgid "
|
775 |
-
msgstr "
|
776 |
|
777 |
-
#:
|
778 |
-
msgid "
|
779 |
-
msgstr "
|
780 |
|
781 |
-
#:
|
782 |
-
msgid "
|
783 |
-
msgstr "
|
784 |
|
785 |
-
#:
|
786 |
-
msgid "
|
787 |
-
msgstr "
|
788 |
|
789 |
-
#:
|
790 |
-
msgid "
|
791 |
-
msgstr "
|
792 |
|
793 |
-
#:
|
794 |
-
msgid "
|
795 |
-
msgstr "
|
796 |
|
797 |
-
#:
|
798 |
-
msgid "
|
799 |
-
msgstr "
|
800 |
|
801 |
-
#:
|
802 |
-
msgid "
|
803 |
-
msgstr "
|
804 |
|
805 |
-
#:
|
806 |
-
msgid "
|
807 |
-
msgstr "
|
808 |
|
809 |
-
#:
|
810 |
-
msgid "
|
811 |
-
msgstr "
|
812 |
|
813 |
-
#:
|
814 |
-
msgid "
|
815 |
-
msgstr "
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
msgid ""
|
2 |
msgstr ""
|
3 |
+
"Project-Id-Version: WP Live Chat Support v4.2.5\n"
|
4 |
+
"Report-Msgid-Bugs-To: \n"
|
5 |
+
"POT-Creation-Date: 2015-01-27 10:04-0300\n"
|
6 |
+
"PO-Revision-Date: 2015-01-27 10:15-0300\n"
|
7 |
+
"Last-Translator: Caribdis Web Design <caribdisweb@gmail.com>\n"
|
8 |
+
"Language-Team: Caribdis Web Design <caribdisweb@gmail.com>\n"
|
9 |
+
"Language: es_ES\n"
|
10 |
"MIME-Version: 1.0\n"
|
11 |
"Content-Type: text/plain; charset=UTF-8\n"
|
12 |
"Content-Transfer-Encoding: 8bit\n"
|
13 |
+
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
14 |
+
"X-Generator: Poedit 1.7.3\n"
|
15 |
+
"X-Poedit-SourceCharset: UTF-8\n"
|
16 |
+
"X-Poedit-KeywordsList: __;_e;__ngettext:1,2;_n:1,2;__ngettext_noop:1,2;"
|
17 |
+
"_n_noop:1,2;_c,_nc:4c,1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;_nx_noop:4c,1,2\n"
|
18 |
+
"X-Poedit-Basepath: ../\n"
|
19 |
+
"X-Textdomain-Support: yes\n"
|
20 |
+
"X-Poedit-SearchPath-0: .\n"
|
21 |
+
|
22 |
+
#: ajax-pro.php:264 ajax.php:229
|
23 |
msgid "Admin has closed and ended the chat"
|
24 |
+
msgstr "El administrador ha cerrado y finalizado el chat"
|
25 |
|
26 |
+
#: ajax-pro.php:299 ajax.php:253
|
|
|
27 |
msgid "There is No Answer. Please Try Again Later"
|
28 |
+
msgstr "No hay respuesta. Por favor, intente más tarde."
|
29 |
+
|
30 |
+
#: functions-pro.php:23 functions-pro.php:101 functions.php:171
|
31 |
+
msgid "User Data"
|
32 |
+
msgstr "Datos de usuario"
|
33 |
+
|
34 |
+
#: functions-pro.php:24 functions-pro.php:102 functions-pro.php:178
|
35 |
+
#: functions-pro.php:582 wp-live-chat-support-pro.php:542
|
36 |
+
#: wp-live-chat-support-pro.php:706 wp-live-chat-support-pro.php:745
|
37 |
+
#: functions.php:172 functions.php:826 includes/settings_page.php:152
|
38 |
+
#: wp-live-chat-support.php:386
|
|
|
|
|
|
|
|
|
|
|
|
|
39 |
msgid "Name"
|
40 |
msgstr "Nombre"
|
41 |
|
42 |
+
#: functions-pro.php:25 functions-pro.php:103 functions-pro.php:178
|
43 |
+
#: functions-pro.php:583 wp-live-chat-support-pro.php:543
|
44 |
+
#: wp-live-chat-support-pro.php:707 wp-live-chat-support-pro.php:746
|
45 |
+
#: functions.php:173 functions.php:827 wp-live-chat-support.php:387
|
|
|
|
|
|
|
|
|
46 |
msgid "Email"
|
47 |
+
msgstr "Correo electrónico"
|
48 |
|
49 |
+
#: functions-pro.php:26 functions-pro.php:104 wp-live-chat-support-pro.php:544
|
50 |
+
#: functions.php:174 functions.php:828
|
|
|
|
|
51 |
msgid "URL"
|
52 |
msgstr "URL"
|
53 |
|
54 |
+
#: functions-pro.php:27 functions-pro.php:105 wp-live-chat-support-pro.php:545
|
55 |
+
#: functions.php:175
|
|
|
|
|
56 |
msgid "Status"
|
57 |
msgstr "Estado"
|
58 |
|
59 |
+
#: functions-pro.php:28 functions-pro.php:106 wp-live-chat-support-pro.php:546
|
60 |
+
#: functions.php:176
|
|
|
|
|
61 |
msgid "Action"
|
62 |
msgstr "Acción"
|
63 |
|
64 |
+
#: functions-pro.php:46
|
65 |
+
msgid "Initiate Chat"
|
66 |
+
msgstr "Iniciar chat"
|
|
|
67 |
|
68 |
+
#: functions-pro.php:48
|
69 |
+
msgid "You must be a chat agent to initiate chats"
|
70 |
+
msgstr "Debe ser operador de chat para iniciar un chat"
|
71 |
|
72 |
+
#: functions-pro.php:70
|
73 |
+
msgid "No visitors on-line at the moment"
|
74 |
+
msgstr "No hay visitantes en línea en este momento"
|
75 |
|
76 |
+
#: functions-pro.php:112 functions.php:182
|
77 |
+
msgid "No chat sessions available at the moment"
|
78 |
+
msgstr "No hay sesiones de chat disponibles en este momento"
|
79 |
|
80 |
+
#: functions-pro.php:132 functions.php:200
|
81 |
+
msgid "Accept Chat"
|
82 |
+
msgstr "Aceptar chat"
|
83 |
|
84 |
+
#: functions-pro.php:135
|
85 |
+
msgid "You must be a chat agent to answer chats"
|
86 |
+
msgstr "Debe ser operador de chat para responder un chat"
|
87 |
|
88 |
+
#: functions-pro.php:142 functions.php:205
|
89 |
+
msgid "Open Chat Window"
|
90 |
+
msgstr "Abrir ventana de chat"
|
91 |
|
92 |
+
#: functions-pro.php:145
|
93 |
+
msgid "Chat has been answered by another agent"
|
94 |
+
msgstr "El chat ha sido respondido por otro operador"
|
95 |
|
96 |
+
#: functions-pro.php:148
|
97 |
+
msgid "Chat has been Accepted By Chat Agent "
|
98 |
+
msgstr "El chat ha sido aceptado por el operador "
|
99 |
|
100 |
+
#: functions-pro.php:177
|
101 |
+
msgid "WP Live Chat Support - Offline Message from "
|
102 |
+
msgstr "WP Live Chat Support - Mensaje offline de "
|
103 |
|
104 |
+
#: functions-pro.php:178 functions-pro.php:584
|
105 |
+
#: wp-live-chat-support-pro.php:747
|
106 |
+
msgid "Message"
|
107 |
+
msgstr "Mensaje"
|
|
|
108 |
|
109 |
+
#: functions-pro.php:178
|
110 |
+
msgid "Via WP Live Chat Support"
|
111 |
+
msgstr "Vía WP Live Chat Support"
|
|
|
112 |
|
113 |
+
#: functions-pro.php:226
|
114 |
+
msgid "Alert: Someone wants to chat with you on "
|
115 |
+
msgstr "Alerta: alguien quiere chatear con usted en "
|
|
|
116 |
|
117 |
+
#: functions-pro.php:227
|
118 |
+
msgid "Someone wants to chat with you on your website"
|
119 |
+
msgstr "Alguien quiere chatear con usted en su sitio"
|
|
|
|
|
120 |
|
121 |
+
#: functions-pro.php:227
|
122 |
+
msgid "Log in"
|
123 |
+
msgstr "Iniciar sesión"
|
|
|
124 |
|
125 |
+
#: functions-pro.php:382 functions-pro.php:397
|
126 |
+
msgid "Chat Agent"
|
127 |
+
msgstr "Operador de chat"
|
|
|
128 |
|
129 |
+
#: functions-pro.php:387
|
130 |
+
msgid "Make this user a chat agent"
|
131 |
+
msgstr "Hacer que este usuario sea operador de chat"
|
|
|
132 |
|
133 |
+
#: functions-pro.php:401
|
134 |
+
msgid "Your user role does not allow you to make yourself a chat agent."
|
|
|
135 |
msgstr ""
|
136 |
+
"Su perfil de usuario no le permite asignarse a sí mismo el estatus de "
|
137 |
+
"operador de chat."
|
138 |
|
139 |
+
#: functions-pro.php:402
|
140 |
+
msgid "Please contact the administrator of this website to change this."
|
141 |
+
msgstr "Por favor, contacte al administrador del sitio para cambiar esto."
|
|
|
142 |
|
143 |
+
#: functions-pro.php:482
|
144 |
+
msgid "Chat Agent Online"
|
145 |
+
msgstr "operador de chat en línea"
|
|
|
146 |
|
147 |
+
#: functions-pro.php:484 functions-pro.php:489
|
148 |
+
msgid "Chat Agents Online"
|
149 |
+
msgstr "operadores de chat en línea"
|
|
|
|
|
|
|
150 |
|
151 |
+
#: functions-pro.php:581 wp-live-chat-support-pro.php:541 functions.php:825
|
152 |
+
msgid "Date"
|
153 |
+
msgstr "Fecha"
|
|
|
154 |
|
155 |
+
#: functions-pro.php:598
|
156 |
+
msgid "You have not received any offline messages."
|
157 |
+
msgstr "No ha recibido ningún mensaje offline."
|
|
|
|
|
158 |
|
159 |
+
#: includes/settings_page_pro.php:20 includes/settings_page.php:5
|
160 |
+
msgid "WP Live Chat Support Settings"
|
161 |
+
msgstr "Ajustes de WP Live Chat Support"
|
|
|
162 |
|
163 |
+
#: includes/settings_page_pro.php:32 includes/settings_page.php:19
|
164 |
+
msgid "General Settings"
|
165 |
+
msgstr "Ajustes generales"
|
|
|
166 |
|
167 |
+
#: includes/settings_page_pro.php:33 includes/settings_page.php:20
|
168 |
+
msgid "Chat Box"
|
169 |
+
msgstr "Recuadro del chat"
|
|
|
170 |
|
171 |
+
#: includes/settings_page_pro.php:34 includes/settings_page_pro.php:241
|
172 |
+
#: wp-live-chat-support-pro.php:1720 includes/settings_page.php:21
|
173 |
+
#: includes/settings_page.php:258
|
174 |
+
msgid "Offline Messages"
|
175 |
+
msgstr "Mensajes offline"
|
176 |
|
177 |
+
#: includes/settings_page_pro.php:35 includes/settings_page_pro.php:339
|
178 |
+
#: includes/settings_page.php:22 includes/settings_page.php:304
|
179 |
+
msgid "Styling"
|
180 |
+
msgstr "Estilo"
|
181 |
|
182 |
+
#: includes/settings_page_pro.php:36
|
183 |
+
msgid "Chat Agents"
|
184 |
+
msgstr "Operadores de chat"
|
185 |
|
186 |
+
#: includes/settings_page_pro.php:39 includes/settings_page.php:26
|
187 |
+
msgid "Main Settings"
|
188 |
+
msgstr "Ajustes principales"
|
|
|
189 |
|
190 |
+
#: includes/settings_page_pro.php:42 includes/settings_page.php:29
|
191 |
+
msgid "Chat enabled"
|
192 |
+
msgstr "Chat activado"
|
193 |
|
194 |
+
#: includes/settings_page_pro.php:45 includes/settings_page.php:32
|
195 |
+
msgid "Yes"
|
196 |
+
msgstr "Sí"
|
197 |
|
198 |
+
#: includes/settings_page_pro.php:46 includes/settings_page.php:33
|
199 |
+
msgid "No"
|
200 |
+
msgstr "No"
|
201 |
+
|
202 |
+
#: includes/settings_page_pro.php:52 includes/settings_page.php:39
|
203 |
+
msgid "Hide Chat"
|
204 |
+
msgstr "Ocultar chat"
|
205 |
|
206 |
+
#: includes/settings_page_pro.php:53 includes/settings_page.php:40
|
207 |
+
msgid "Hides chat for 24hrs when user clicks X"
|
208 |
+
msgstr "Oculta el chat por 24 hs cuando el usuario hace clic en la X"
|
209 |
+
|
210 |
+
#: includes/settings_page_pro.php:61 includes/settings_page.php:56
|
211 |
+
msgid "Require Name And Email"
|
212 |
+
msgstr "Pedir Nombre y Correo electrónico"
|
213 |
+
|
214 |
+
#: includes/settings_page_pro.php:62 includes/settings_page.php:57
|
215 |
+
msgid ""
|
216 |
+
"Users will have to enter their Name and Email Address when starting a chat"
|
217 |
msgstr ""
|
218 |
+
"Los usuarios tendrán que ingresar su nombre y dirección de correo "
|
219 |
+
"electrónico para iniciar el chat"
|
220 |
|
221 |
+
#: includes/settings_page_pro.php:70 includes/settings_page.php:65
|
222 |
+
msgid "Input Field Replacement Text"
|
223 |
+
msgstr "Texto de reemplazo para los campos anteriores"
|
224 |
+
|
225 |
+
#: includes/settings_page_pro.php:71 includes/settings_page.php:66
|
226 |
+
msgid "This is the text that will show in place of the Name And Email fields"
|
227 |
msgstr ""
|
228 |
+
"Este texto se mostrará en lugar de los campos Nombre y Dirección de correo "
|
229 |
+
"electrónico"
|
230 |
|
231 |
+
#: includes/settings_page_pro.php:79 includes/settings_page.php:74
|
232 |
+
msgid "Use Logged In User Details"
|
233 |
+
msgstr "Usar detalles de usuario conectado"
|
234 |
|
235 |
+
#: includes/settings_page_pro.php:80 includes/settings_page.php:75
|
236 |
+
msgid ""
|
237 |
+
"A user's Name and Email Address will be used by default if they are logged "
|
238 |
+
"in."
|
239 |
+
msgstr ""
|
240 |
+
"Se usarán por defecto el Nombre y la Dirección de correo electrónico de un "
|
241 |
+
"usuario cuando haya iniciado sesión."
|
242 |
|
243 |
+
#: includes/settings_page_pro.php:88 includes/settings_page.php:83
|
244 |
+
msgid "Enable On Mobile Devices"
|
245 |
+
msgstr "Activar en dispositivos móviles"
|
|
|
246 |
|
247 |
+
#: includes/settings_page_pro.php:89 includes/settings_page.php:84
|
248 |
+
msgid ""
|
249 |
+
"Disabling this will mean that the Chat Box will not be displayed on mobile "
|
250 |
+
"devices. (Smartphones and Tablets)"
|
251 |
+
msgstr ""
|
252 |
+
"Si desactiva esto el recuadro de chat no se mostrará en dispositivos "
|
253 |
+
"móviles. (Smartphones y Tablets)"
|
254 |
|
255 |
+
#: includes/settings_page_pro.php:97 includes/settings_page.php:92
|
256 |
+
msgid "Include chat window on the following pages:"
|
257 |
+
msgstr "Incluir la ventana del chat en las siguientes páginas:"
|
|
|
258 |
|
259 |
+
#: includes/settings_page_pro.php:98 includes/settings_page.php:93
|
260 |
+
msgid ""
|
261 |
+
"Show the chat window on the following pages. Leave blank to show on all. "
|
262 |
+
"(Use comma-separated Page ID's)"
|
263 |
+
msgstr ""
|
264 |
+
"Mostrar la ventana del chat en las siguientes páginas. Deje en blanco para "
|
265 |
+
"mostrarla en todas. (Use IDs de página separadas por comas)"
|
266 |
|
267 |
+
#: includes/settings_page_pro.php:102 includes/settings_page_pro.php:112
|
268 |
+
msgid ""
|
269 |
+
"Do not include and exclude pages at the same time. Please only use one or "
|
270 |
+
"the other"
|
271 |
+
msgstr ""
|
272 |
+
"No incluya y excluya páginas al mismo tiempo. Por favor, sólo use una u otra "
|
273 |
+
"opción"
|
274 |
|
275 |
+
#: includes/settings_page_pro.php:107 includes/settings_page.php:108
|
276 |
+
msgid "Exclude chat window on the following pages:"
|
277 |
+
msgstr "Excluir la ventana del chat en las siguientes páginas:"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
278 |
|
279 |
+
#: includes/settings_page_pro.php:108 includes/settings_page.php:109
|
280 |
+
msgid ""
|
281 |
+
"Do not show the chat window on the following pages. Leave blank to show on "
|
282 |
+
"all. (Use comma-separated Page ID's)"
|
283 |
+
msgstr ""
|
284 |
+
"No mostrar la ventana del chat en las siguientes páginas. Deje en blanco "
|
285 |
+
"para mostrarla en todas. (Use IDs de página separadas por comas)"
|
286 |
|
287 |
+
#: includes/settings_page_pro.php:122 includes/settings_page.php:127
|
288 |
+
msgid "Chat Window Settings"
|
289 |
+
msgstr "Ajustes de la ventana del chat"
|
290 |
|
291 |
+
#: includes/settings_page_pro.php:125 includes/settings_page.php:130
|
292 |
+
msgid "Chat box alignment"
|
293 |
+
msgstr "Alineación del recuadro de chat"
|
|
|
294 |
|
295 |
+
#: includes/settings_page_pro.php:128 includes/settings_page.php:133
|
296 |
+
msgid "Bottom left"
|
297 |
+
msgstr "Inferior izquierda"
|
298 |
|
299 |
+
#: includes/settings_page_pro.php:129 includes/settings_page.php:134
|
300 |
+
msgid "Bottom right"
|
301 |
+
msgstr "Inferior derecha"
|
302 |
|
303 |
+
#: includes/settings_page_pro.php:130 includes/settings_page.php:135
|
304 |
+
msgid "Left"
|
305 |
+
msgstr "Izquierda"
|
306 |
|
307 |
+
#: includes/settings_page_pro.php:131 includes/settings_page.php:136
|
308 |
+
msgid "Right"
|
309 |
+
msgstr "Derecha"
|
310 |
|
311 |
+
#: includes/settings_page_pro.php:137 includes/settings_page.php:142
|
312 |
+
msgid "Auto Pop-up"
|
313 |
+
msgstr "Ventana emergente automática"
|
314 |
|
315 |
+
#: includes/settings_page_pro.php:141 includes/settings_page.php:146
|
316 |
+
msgid ""
|
317 |
+
"Expand the chat box automatically (prompts the user to enter their name and "
|
318 |
+
"email address)."
|
319 |
+
msgstr ""
|
320 |
+
"Expandir el recuadro del chat automáticamente (insta al usuario a ingresar "
|
321 |
+
"su nombre y dirección de correo electrónico)."
|
322 |
|
323 |
+
#: includes/settings_page_pro.php:147
|
324 |
+
msgid "Name "
|
325 |
+
msgstr "Nombre "
|
326 |
|
327 |
+
#: includes/settings_page_pro.php:161 includes/settings_page.php:168
|
328 |
+
msgid "Picture"
|
329 |
+
msgstr "Foto"
|
|
|
330 |
|
331 |
+
#: includes/settings_page_pro.php:169 includes/settings_page.php:171
|
332 |
+
#: includes/settings_page.php:187
|
333 |
+
msgid "Upload Image"
|
334 |
+
msgstr "Subir imagen"
|
335 |
|
336 |
+
#: includes/settings_page_pro.php:171
|
337 |
+
msgid "Remove Image"
|
338 |
+
msgstr "Eliminar imagen"
|
|
|
339 |
|
340 |
+
#: includes/settings_page_pro.php:172
|
341 |
+
msgid "Recomended Size 40px x 40px"
|
342 |
+
msgstr "Tamaño recomendado 40px x 40px"
|
|
|
|
|
|
|
343 |
|
344 |
+
#: includes/settings_page_pro.php:178 includes/settings_page.php:184
|
345 |
+
msgid "Logo"
|
346 |
+
msgstr "Logo"
|
|
|
|
|
|
|
347 |
|
348 |
+
#: includes/settings_page_pro.php:186
|
349 |
+
msgid "Upload Logo"
|
350 |
+
msgstr "Subir logo"
|
351 |
|
352 |
+
#: includes/settings_page_pro.php:188
|
353 |
+
msgid "Remove Logo"
|
354 |
+
msgstr "Eliminar logo"
|
|
|
355 |
|
356 |
+
#: includes/settings_page_pro.php:189
|
357 |
+
msgid "Recomended Size 250px x 40px"
|
358 |
+
msgstr "Tamaño recomendado 250px x 40px"
|
|
|
359 |
|
360 |
+
#: includes/settings_page_pro.php:195 includes/settings_page.php:200
|
361 |
+
msgid "Chat delay (seconds)"
|
362 |
+
msgstr "Retardo del chat (en segundos)"
|
|
|
363 |
|
364 |
+
#: includes/settings_page_pro.php:198
|
365 |
+
msgid "how long it takes for your chat window to pop up"
|
366 |
+
msgstr "cuánto demora en aparecer la ventana del chat)"
|
|
|
367 |
|
368 |
+
#: includes/settings_page_pro.php:204 includes/settings_page.php:216
|
369 |
+
msgid "Chat notifications"
|
370 |
+
msgstr "Notificaciones de chat"
|
|
|
371 |
|
372 |
+
#: includes/settings_page_pro.php:208 includes/settings_page.php:220
|
373 |
+
msgid "Alert me via email as soon as someone wants to chat"
|
374 |
+
msgstr ""
|
375 |
+
"Alertarme vía correo electrónico tan pronto como alguien quiera chatear"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
376 |
|
377 |
+
#: includes/settings_page_pro.php:209
|
378 |
+
msgid "(while online only)"
|
379 |
+
msgstr " (sólo mientras está online)"
|
|
|
380 |
|
381 |
+
#: includes/settings_page_pro.php:214 includes/settings_page.php:232
|
382 |
+
msgid "Display name and avatar in chat"
|
383 |
+
msgstr "Mostrar nombre y avatar en el chat"
|
|
|
384 |
|
385 |
+
#: includes/settings_page_pro.php:220 includes/settings_page.php:238
|
386 |
+
msgid "Display the agent and user name above each message in the chat window."
|
387 |
+
msgstr ""
|
388 |
+
"Mostrar el nombre del operador y del usuario arriba de cada mensaje en la "
|
389 |
+
"ventana del chat."
|
390 |
|
391 |
+
#: includes/settings_page_pro.php:225 includes/settings_page.php:243
|
392 |
+
msgid "Only show the chat window to users that are logged in"
|
393 |
+
msgstr "Sólo mostrar la ventana del chat a usuarios que han iniciado sesión"
|
|
|
394 |
|
395 |
+
#: includes/settings_page_pro.php:233 includes/settings_page.php:251
|
396 |
+
msgid ""
|
397 |
+
"By checking this, only users that are logged in will be able to chat with "
|
398 |
+
"you."
|
399 |
+
msgstr ""
|
400 |
+
"Al seleccionar esto, sólo los usuarios que han iniciado sesión podrán "
|
401 |
+
"chatear con usted."
|
402 |
|
403 |
+
#: includes/settings_page_pro.php:245 includes/settings_page.php:262
|
404 |
+
msgid "Do not allow users to send offline messages"
|
405 |
+
msgstr "No permitir a los usuarios enviar mensajes offline"
|
|
|
|
|
406 |
|
407 |
+
#: includes/settings_page_pro.php:253 includes/settings_page.php:266
|
408 |
+
msgid ""
|
409 |
+
"The chat window will be hidden when it is offline. Users will not be able to "
|
410 |
+
"send offline messages to you"
|
411 |
+
msgstr ""
|
412 |
+
"La ventana del chat se ocultará cuando esté offline. Los usuarios no podrán "
|
413 |
+
"enviarle mensajes offline"
|
414 |
|
415 |
+
#: includes/settings_page_pro.php:258 includes/settings_page.php:271
|
416 |
+
msgid "Email Address"
|
417 |
+
msgstr "Dirección de correo electrónico"
|
|
|
418 |
|
419 |
+
#: includes/settings_page_pro.php:262
|
420 |
+
msgid "Email address where offline messages are delivered to"
|
421 |
+
msgstr ""
|
422 |
+
"Dirección de correo electrónico a la cual se envían los mensajes offline"
|
423 |
|
424 |
+
#: includes/settings_page_pro.php:270
|
425 |
+
msgid "Sending Method"
|
426 |
+
msgstr "Método de envío"
|
|
|
427 |
|
428 |
+
#: includes/settings_page_pro.php:271
|
429 |
+
msgid "WP Mail"
|
430 |
+
msgstr "WP Mail"
|
|
|
431 |
|
432 |
+
#: includes/settings_page_pro.php:272
|
433 |
+
msgid "PHP Mailer"
|
434 |
+
msgstr "PHP Mailer"
|
435 |
|
436 |
+
#: includes/settings_page_pro.php:284
|
437 |
+
msgid "Host"
|
438 |
+
msgstr "Host"
|
439 |
|
440 |
+
#: includes/settings_page_pro.php:292
|
441 |
+
msgid "Port"
|
442 |
+
msgstr "Puerto"
|
|
|
443 |
|
444 |
+
#: includes/settings_page_pro.php:300
|
445 |
+
msgid "Username"
|
446 |
+
msgstr "Nombre de usuario"
|
|
|
447 |
|
448 |
+
#: includes/settings_page_pro.php:308
|
449 |
+
msgid "Password"
|
450 |
+
msgstr "Contraseña"
|
|
|
451 |
|
452 |
+
#: includes/settings_page_pro.php:317
|
453 |
+
msgid "Offline Chat Box Title"
|
454 |
+
msgstr "Título del recuadro Chat offline"
|
455 |
|
456 |
+
#: includes/settings_page_pro.php:325
|
457 |
+
msgid "Offline Text Fields"
|
458 |
+
msgstr "Campos de texto offline"
|
459 |
|
460 |
+
#: includes/settings_page_pro.php:342 includes/settings_page.php:307
|
461 |
+
msgid "Chat box fill color"
|
462 |
+
msgstr "Color de relleno del recuadro del chat"
|
463 |
|
464 |
+
#: includes/settings_page_pro.php:348 includes/settings_page.php:313
|
465 |
+
msgid "Chat box font color"
|
466 |
+
msgstr "Color de fuente del recuadro del chat"
|
|
|
467 |
|
468 |
+
#: includes/settings_page_pro.php:354
|
469 |
+
msgid "First Section Text"
|
470 |
+
msgstr "Texto de la primera sección"
|
|
|
471 |
|
472 |
+
#: includes/settings_page_pro.php:363
|
473 |
+
msgid "Intro Text"
|
474 |
+
msgstr "Texto introductorio"
|
|
|
475 |
|
476 |
+
#: includes/settings_page_pro.php:369
|
477 |
+
msgid "Second Section Text"
|
478 |
+
msgstr "Texto de la segunda sección"
|
|
|
479 |
|
480 |
+
#: includes/settings_page_pro.php:376
|
481 |
+
msgid "Reactivate Chat Section Text"
|
482 |
+
msgstr "Texto de la sección reactivar chat"
|
|
|
483 |
|
484 |
+
#: includes/settings_page_pro.php:384
|
485 |
+
msgid "User chat welcome"
|
486 |
+
msgstr "Bienvenido/a al chat del usuario"
|
487 |
|
488 |
+
#: includes/settings_page_pro.php:393
|
489 |
+
msgid "Other text"
|
490 |
+
msgstr "Otro texto"
|
491 |
|
492 |
+
#: includes/settings_page_pro.php:408
|
493 |
+
msgid "Current Users that are Chat Agents"
|
494 |
+
msgstr "Usuarios actuales que son operadores de chat"
|
495 |
|
496 |
+
#: includes/settings_page_pro.php:413
|
497 |
+
msgid ""
|
498 |
+
"To add or remove a user as a chat agent, go into the users profile and "
|
499 |
+
"select the checkbox Chat Agent and click save."
|
500 |
+
msgstr ""
|
501 |
+
"Para añadir o eliminar un usuario como operador de chat, vaya a la página "
|
502 |
+
"del perfil de usuario, seleccione la casilla Operador de chat y haga clic en "
|
503 |
+
"Guardar."
|
504 |
|
505 |
+
#: includes/settings_page_pro.php:414
|
506 |
+
msgid "If there are no chat agents online, the chat will show as offline"
|
507 |
+
msgstr ""
|
508 |
+
"Si no hay operadores de chat en línea, el chat se mostrará como offline"
|
509 |
|
510 |
+
#: includes/settings_page_pro.php:418 includes/settings_page.php:357
|
511 |
+
msgid "Save Settings"
|
512 |
+
msgstr "Guardar ajustes"
|
513 |
|
514 |
+
#: wp-live-chat-support-pro.php:423
|
515 |
+
msgid "Dear User"
|
516 |
+
msgstr "Estimado Usuario"
|
517 |
|
518 |
+
#: wp-live-chat-support-pro.php:424
|
519 |
+
msgid "You are using an outdated version of WP Live Chat Support Basic. Please"
|
520 |
+
msgstr ""
|
521 |
+
"Está usando una versión desactualizada de WP Live Chat Support básico. Por "
|
522 |
+
"favor,"
|
523 |
|
524 |
+
#: wp-live-chat-support-pro.php:424 wp-live-chat-support.php:684
|
525 |
+
msgid "update to at least version"
|
526 |
+
msgstr "actualice al menos a la versión"
|
527 |
|
528 |
+
#: wp-live-chat-support-pro.php:424 wp-live-chat-support.php:684
|
529 |
+
msgid "to ensure all functionality is in working order"
|
530 |
+
msgstr "para asegurarse de que todas las características estén funcionando"
|
531 |
|
532 |
+
#: wp-live-chat-support-pro.php:425
|
533 |
+
msgid ""
|
534 |
+
"You're live chat box on your website has been temporarily disabled until the "
|
535 |
+
"basic plugin has been updated. This is to ensure a smooth and hassle-free "
|
536 |
+
"user experience for both yourself and your visitors."
|
537 |
+
msgstr ""
|
538 |
+
"El recuadro de chat en vivo de su sitio web ha sido temporalmente "
|
539 |
+
"desactivado, hasta que se actualice la versión básica del plugin. Esto es "
|
540 |
+
"para asegurar una experiencia de usuario ágil y sin complicaciones, tanto "
|
541 |
+
"para usted como para los visitantes."
|
542 |
|
543 |
+
#: wp-live-chat-support-pro.php:426
|
544 |
+
msgid ""
|
545 |
+
"You can update your plugin <a href='./update-core.php'>here</a> or <a "
|
546 |
+
"href='./plugins.php'>here</a>."
|
547 |
+
msgstr ""
|
548 |
+
"Puede actualizar el plugin <a href='./update-core.php'>aquí</a> o <a href='./"
|
549 |
+
"plugins.php'>aquí</a>."
|
550 |
|
551 |
+
#: wp-live-chat-support-pro.php:427 wp-live-chat-support.php:687
|
552 |
+
msgid "If you are having difficulty updating the plugin, please contact"
|
553 |
+
msgstr ""
|
554 |
+
"Si tiene dificultades para actualizar el plugin, por favor contacte con"
|
555 |
|
556 |
+
#: wp-live-chat-support-pro.php:440 wp-live-chat-support.php:683
|
557 |
+
msgid "Dear Pro User"
|
558 |
+
msgstr "Estimado Usuario Pr "
|
559 |
|
560 |
+
#: wp-live-chat-support-pro.php:441
|
561 |
+
msgid ""
|
562 |
+
"WP Live Chat Support Pro requires WP Live Chat Support to function. You can "
|
563 |
+
"download the latest copy from"
|
564 |
+
msgstr ""
|
565 |
+
"WP Live Chat Support Pro requiere WP Live Chat Support para funcionar. Puede "
|
566 |
+
"descargar la última versión de"
|
567 |
|
568 |
+
#: wp-live-chat-support-pro.php:457 includes/settings_page.php:322
|
569 |
+
#: wp-live-chat-support.php:338
|
570 |
+
msgid "Questions?"
|
571 |
+
msgstr "¿Tiene alguna pregunta?"
|
572 |
|
573 |
+
#: wp-live-chat-support-pro.php:458 includes/settings_page.php:323
|
574 |
+
#: wp-live-chat-support.php:338
|
575 |
+
msgid "Chat with us"
|
576 |
+
msgstr "Chatee con nosotros"
|
577 |
|
578 |
+
#: wp-live-chat-support-pro.php:459
|
579 |
+
msgid "Start live chat"
|
580 |
+
msgstr "Empezar a chatear"
|
581 |
|
582 |
+
#: wp-live-chat-support-pro.php:460 includes/settings_page.php:329
|
583 |
+
#: wp-live-chat-support.php:403
|
584 |
+
msgid "Start Chat"
|
585 |
+
msgstr "Iniciar chat"
|
586 |
|
587 |
+
#: wp-live-chat-support-pro.php:461
|
588 |
+
msgid "Connecting. Please be patient..."
|
589 |
+
msgstr "Conectando. Por favor, aguarde..."
|
590 |
|
591 |
+
#: wp-live-chat-support-pro.php:462 includes/settings_page.php:338
|
592 |
+
#: wp-live-chat-support.php:413
|
593 |
+
msgid "Reactivating your previous chat..."
|
594 |
+
msgstr "Reactivando el chat anterior..."
|
595 |
|
596 |
+
#: wp-live-chat-support-pro.php:463 includes/settings_page.php:289
|
597 |
+
msgid "Chat offline. Leave a message"
|
598 |
+
msgstr "Chat offline. Deje un mensaje"
|
599 |
|
600 |
+
#: wp-live-chat-support-pro.php:464
|
601 |
+
msgid "Hello. Please input your details so that I may help you."
|
602 |
+
msgstr "¡Hola! Por favor, ingrese sus datos, para poder ayudarlo."
|
603 |
|
604 |
+
#: wp-live-chat-support-pro.php:465
|
605 |
msgid ""
|
606 |
+
"We are currently offline. Please leave a message and we'll get back to you "
|
607 |
+
"shortly."
|
608 |
msgstr ""
|
609 |
+
"En este momento no estamos en línea. Por favor, deje un mensaje y nos "
|
610 |
+
"pondremos en contacto muy pronto."
|
611 |
|
612 |
+
#: wp-live-chat-support-pro.php:466
|
613 |
+
msgid "Sending message..."
|
614 |
+
msgstr "Enviando mensaje..."
|
615 |
|
616 |
+
#: wp-live-chat-support-pro.php:467
|
617 |
+
msgid "Thank you for your message. We will be in contact soon."
|
618 |
+
msgstr "Gracias por enviar su mensaje. Nos pondremos en contacto muy pronto."
|
|
|
|
|
619 |
|
620 |
+
#: wp-live-chat-support-pro.php:468 wp-live-chat-support-pro.php:1065
|
621 |
+
#: wp-live-chat-support.php:418 wp-live-chat-support.php:820
|
622 |
+
msgid "Press ENTER to send your message"
|
623 |
+
msgstr "Presione ENTER para enviar su mensaje"
|
624 |
+
|
625 |
+
#: wp-live-chat-support-pro.php:469
|
626 |
+
msgid "Welcome. How may I help you?"
|
627 |
+
msgstr "Bienvenido/a. ¿En qué puedo ayudarle?"
|
628 |
|
629 |
+
#: wp-live-chat-support-pro.php:535
|
630 |
+
msgid "\"Delete History\""
|
631 |
+
msgstr "\"Borrar Historial\""
|
632 |
+
|
633 |
+
#: wp-live-chat-support-pro.php:552
|
634 |
msgid "No chats available at the moment"
|
635 |
+
msgstr "No hay chats disponibles en este momento"
|
636 |
+
|
637 |
+
#: wp-live-chat-support-pro.php:560
|
638 |
+
msgid "View Chat History"
|
639 |
+
msgstr "Ver historial de Chats"
|
640 |
|
641 |
+
#: wp-live-chat-support-pro.php:657
|
642 |
+
msgid "Minize Chat Window"
|
643 |
+
msgstr "Minimizar ventana de chat"
|
644 |
+
|
645 |
+
#: wp-live-chat-support-pro.php:658
|
646 |
+
msgid "Close Chat Window"
|
647 |
+
msgstr "Cerrar ventana de chat"
|
648 |
+
|
649 |
+
#: wp-live-chat-support-pro.php:749
|
650 |
msgid "Send message"
|
651 |
msgstr "Enviar mensaje"
|
652 |
|
653 |
+
#: wp-live-chat-support-pro.php:777 wp-live-chat-support.php:422
|
654 |
+
#: wp-live-chat-support.php:834
|
655 |
+
msgid "Send"
|
656 |
+
msgstr "Enviar"
|
657 |
+
|
658 |
+
#: wp-live-chat-support-pro.php:817 wp-live-chat-support.php:1229
|
659 |
+
msgid "Please click 'Start Chat' to initiate a chat with an agent"
|
660 |
+
msgstr "Por favor, haga clic en 'Iniciar chat' para chatear con un operador"
|
661 |
+
|
662 |
+
#: wp-live-chat-support-pro.php:914 wp-live-chat-support.php:1240
|
663 |
+
msgid "Your settings have been saved."
|
664 |
+
msgstr "Sus ajustes han sido guardados."
|
665 |
+
|
666 |
+
#: wp-live-chat-support-pro.php:928
|
667 |
msgid "Chat sessions"
|
668 |
+
msgstr "Sesiones de chat"
|
669 |
|
670 |
+
#: wp-live-chat-support-pro.php:938
|
671 |
msgid ""
|
672 |
"Please note: This window must be open in order to receive new chat "
|
673 |
"notifications."
|
674 |
msgstr ""
|
675 |
+
"Por favor, tenga en cuenta que esta ventana debe estar abierta para poder "
|
676 |
+
"recibir nuevas notificaciones de chats."
|
677 |
|
678 |
+
#: wp-live-chat-support-pro.php:943 wp-live-chat-support.php:737
|
679 |
+
msgid "Visitors on site"
|
680 |
+
msgstr "Visitantes en el sitio"
|
681 |
|
682 |
+
#: wp-live-chat-support-pro.php:990 wp-live-chat-support.php:782
|
683 |
+
msgid "Previous"
|
684 |
+
msgstr "Anterior"
|
685 |
+
|
686 |
+
#: wp-live-chat-support-pro.php:992 wp-live-chat-support.php:782
|
687 |
+
msgid "Active"
|
688 |
+
msgstr "Activo"
|
689 |
+
|
690 |
+
#: wp-live-chat-support-pro.php:994
|
691 |
+
msgid "Awaiting"
|
692 |
+
msgstr "Esperando"
|
693 |
|
694 |
+
#: wp-live-chat-support-pro.php:1012
|
695 |
+
msgid "Unknown"
|
696 |
+
msgstr "Desconocido"
|
697 |
|
698 |
+
#: wp-live-chat-support-pro.php:1017 wp-live-chat-support.php:784
|
699 |
+
msgid "Chat with"
|
700 |
+
msgstr "Chat con "
|
701 |
|
702 |
+
#: wp-live-chat-support-pro.php:1020 wp-live-chat-support.php:787
|
703 |
+
msgid "End chat"
|
704 |
+
msgstr "Finalizar chat"
|
705 |
|
706 |
+
#: wp-live-chat-support-pro.php:1025
|
707 |
msgid "Attempting to open the chat window... Please be patient."
|
708 |
+
msgstr "Intentando abrir la ventana del chat... Por favor, aguarde."
|
709 |
|
710 |
+
#: wp-live-chat-support-pro.php:1048 wp-live-chat-support.php:803
|
711 |
+
msgid "Site Info"
|
712 |
+
msgstr "Información del sitio"
|
713 |
+
|
714 |
+
#: wp-live-chat-support-pro.php:1050 wp-live-chat-support.php:805
|
715 |
+
msgid "Chat initiated on:"
|
716 |
+
msgstr "Chat iniciado en:"
|
717 |
+
|
718 |
+
#: wp-live-chat-support-pro.php:1054 wp-live-chat-support.php:809
|
719 |
+
msgid "Advanced Info"
|
720 |
+
msgstr "Información avanzada"
|
721 |
+
|
722 |
+
#: wp-live-chat-support-pro.php:1056 wp-live-chat-support.php:811
|
723 |
+
msgid "Browser:"
|
724 |
+
msgstr "Navegador:"
|
725 |
+
|
726 |
+
#: wp-live-chat-support-pro.php:1057 wp-live-chat-support.php:812
|
727 |
+
msgid "IP Address:"
|
728 |
+
msgstr "Dirección IP:"
|
729 |
+
|
730 |
+
#: wp-live-chat-support-pro.php:1057 wp-live-chat-support.php:812
|
731 |
+
msgid "Whois for"
|
732 |
+
msgstr "Whois para"
|
733 |
+
|
734 |
+
#: wp-live-chat-support-pro.php:1122
|
735 |
msgid "This chat has already been answered. Please close the chat window"
|
736 |
+
msgstr "Este chat ya ha sido respondido. Por favor, cierre la ventana del chat"
|
737 |
+
|
738 |
+
#: wp-live-chat-support-pro.php:1190 wp-live-chat-support.php:937
|
739 |
+
msgid "User has opened the chat window"
|
740 |
+
msgstr "El usuario ha abierto la ventana del chat"
|
741 |
+
|
742 |
+
#: wp-live-chat-support-pro.php:1195 wp-live-chat-support.php:942
|
743 |
+
msgid "User has minimized the chat window"
|
744 |
+
msgstr "El usuario ha minimizado la ventana del chat"
|
745 |
|
746 |
+
#: wp-live-chat-support-pro.php:1200 wp-live-chat-support.php:947
|
747 |
+
msgid "User has maximized the chat window"
|
748 |
+
msgstr "El usuario ha maximizado la ventana del chat"
|
749 |
+
|
750 |
+
#: wp-live-chat-support-pro.php:1205 wp-live-chat-support.php:952
|
751 |
+
msgid "User has closed and ended the chat"
|
752 |
+
msgstr "El usuario ha cerrado y finalizado el chat"
|
753 |
+
|
754 |
+
#: wp-live-chat-support-pro.php:1582
|
755 |
msgid ""
|
756 |
"An Unexpected HTTP Error occurred during the API request.</p> <p><a href=\"?"
|
757 |
"\" onclick=\"document.location.reload(); return false;\">Try again</a>"
|
758 |
msgstr ""
|
759 |
+
"Ocurrió un error HTTP inesperado durante la solicitud de API.</p> <p><a href="
|
760 |
+
"\"?\" onclick=\"document.location.reload(); return false;\">Intente de "
|
761 |
"nuevo</a>"
|
762 |
|
763 |
+
#: wp-live-chat-support-pro.php:1587
|
764 |
msgid "An unknown error occurred"
|
765 |
+
msgstr "Se ha producido un error desconocido"
|
766 |
+
|
767 |
+
#: wp-live-chat-support-pro.php:1714 wp-live-chat-support.php:215
|
768 |
+
#: wp-live-chat-support.php:718
|
769 |
+
msgid "Live Chat"
|
770 |
+
msgstr "Chat en vivo"
|
771 |
+
|
772 |
+
#: wp-live-chat-support-pro.php:1715 wp-live-chat-support.php:216
|
773 |
+
msgid "Settings"
|
774 |
+
msgstr "Ajustes"
|
775 |
+
|
776 |
+
#: wp-live-chat-support-pro.php:1716 wp-live-chat-support-pro.php:1731
|
777 |
+
#: wp-live-chat-support-pro.php:1742
|
778 |
+
msgid "Quick Responses"
|
779 |
+
msgstr "Respuestas rápidas"
|
780 |
|
781 |
+
#: wp-live-chat-support-pro.php:1718 wp-live-chat-support.php:217
|
782 |
+
msgid "History"
|
783 |
+
msgstr "Historial"
|
784 |
+
|
785 |
+
#: wp-live-chat-support-pro.php:1719 wp-live-chat-support.php:218
|
786 |
+
msgid "Missed Chats"
|
787 |
+
msgstr "Chats perdidos"
|
788 |
+
|
789 |
+
#: wp-live-chat-support-pro.php:1721 includes/feedback-page.php:37
|
790 |
+
#: wp-live-chat-support.php:219
|
791 |
+
msgid "Feedback"
|
792 |
+
msgstr "Sugerencias"
|
793 |
+
|
794 |
+
#: wp-live-chat-support-pro.php:1725
|
795 |
msgid "Error Log"
|
796 |
msgstr "Registro de errores"
|
797 |
|
798 |
+
#: wp-live-chat-support-pro.php:1732
|
799 |
+
msgid "Quick Response"
|
800 |
+
msgstr "Respuesta rápida"
|
801 |
|
802 |
+
#: wp-live-chat-support-pro.php:1733 wp-live-chat-support-pro.php:1736
|
803 |
+
msgid "New Quick Response"
|
804 |
+
msgstr "Nueva respuesta rápida"
|
805 |
|
806 |
+
#: wp-live-chat-support-pro.php:1734
|
807 |
+
msgid "Add New Quick Response"
|
808 |
+
msgstr "Añadir nueva respuesta rápida"
|
809 |
|
810 |
+
#: wp-live-chat-support-pro.php:1735
|
811 |
+
msgid "Edit Quick Response"
|
812 |
+
msgstr "Editar respuestas rápidas"
|
813 |
|
814 |
+
#: wp-live-chat-support-pro.php:1737
|
815 |
+
msgid "All Quick Responses"
|
816 |
+
msgstr "Todas las respuestas rápidas"
|
817 |
|
818 |
+
#: wp-live-chat-support-pro.php:1738
|
819 |
+
msgid "View Quick Responses"
|
820 |
+
msgstr "Ver respuestas rápidas"
|
821 |
|
822 |
+
#: wp-live-chat-support-pro.php:1739
|
823 |
+
msgid "Search Quick Responses"
|
824 |
+
msgstr "Buscar respuestas rápidas"
|
825 |
|
826 |
+
#: wp-live-chat-support-pro.php:1740
|
827 |
+
msgid "No Quick Responses found"
|
828 |
+
msgstr "No se encontraron respuestas rápidas"
|
829 |
|
830 |
+
#: wp-live-chat-support-pro.php:1741
|
831 |
+
msgid "No Quick Responses found in the Trash"
|
832 |
+
msgstr "No se encontraron respuestas rápidas en la papelera"
|
833 |
|
834 |
+
#: wp-live-chat-support-pro.php:1746
|
835 |
+
msgid "Quick Responses for WP Live Chat Support Pro"
|
836 |
+
msgstr "Respuestas rápidas para WP Live Chat Support Pro"
|
837 |
|
838 |
+
#: wp-live-chat-support-pro.php:1801 wp-live-chat-support-pro.php:1805
|
839 |
+
#: wp-live-chat-support.php:821
|
840 |
+
msgid "Assign Quick Response"
|
841 |
+
msgstr "Asignar respuesta rápida"
|
842 |
|
843 |
+
#: wp-live-chat-support-pro.php:1808 wp-live-chat-support.php:821
|
844 |
+
msgid "Select"
|
845 |
+
msgstr "Seleccionar"
|
846 |
|
847 |
+
#: wp-live-chat-support-pro.php:1814
|
848 |
+
msgid "What is this?"
|
849 |
+
msgstr "¿Qué es esto?"
|
850 |
|
851 |
+
#: functions.php:524
|
852 |
+
msgid "complete"
|
853 |
+
msgstr "completado"
|
854 |
|
855 |
+
#: functions.php:527
|
856 |
+
msgid "pending"
|
857 |
+
msgstr "pendiente"
|
858 |
|
859 |
+
#: functions.php:530
|
860 |
+
msgid "active"
|
861 |
+
msgstr "activo"
|
862 |
|
863 |
+
#: functions.php:533
|
864 |
+
msgid "deleted"
|
865 |
+
msgstr "borrado"
|
866 |
|
867 |
+
#: functions.php:536
|
868 |
+
msgid "browsing"
|
869 |
+
msgstr "navegando"
|
870 |
|
871 |
+
#: functions.php:539
|
872 |
+
msgid "requesting chat"
|
873 |
+
msgstr "solicitando chat"
|
874 |
|
875 |
+
#: functions.php:542
|
876 |
+
msgid "Chat Ended - User still browsing"
|
877 |
+
msgstr "Chat finalizado - El usuario aún está navegando"
|
878 |
|
879 |
+
#: functions.php:545
|
880 |
+
msgid "User is browsing but doesn't want to chat"
|
881 |
+
msgstr "El usuario está navegando pero no quiere chatear"
|
882 |
|
883 |
+
#: functions.php:611
|
884 |
+
msgid "Get Pro Add-on to accept more chats"
|
885 |
+
msgstr "Obtenga la versión Pro para aceptar más chats"
|
886 |
|
887 |
+
#: functions.php:855
|
888 |
+
msgid "You have not missed any chat requests."
|
889 |
+
msgstr "No se ha perdido ninguna solicitud de chat."
|
890 |
|
891 |
+
#: includes/feedback-page.php:7
|
892 |
+
msgid "WP Live Chat Support Feedback"
|
893 |
+
msgstr "Comentarios para WP Live Chat Support"
|
894 |
|
895 |
+
#: includes/feedback-page.php:8
|
896 |
+
msgid "We'd love to hear your comments and/or suggestions"
|
897 |
+
msgstr "Nos encantaría recibir sus comentarios y/o sugerencias"
|
898 |
+
|
899 |
+
#: includes/feedback-page.php:13
|
900 |
+
msgid "Your Name"
|
901 |
+
msgstr "Su nombre"
|
902 |
+
|
903 |
+
#: includes/feedback-page.php:21
|
904 |
+
msgid "Your Email"
|
905 |
+
msgstr "Su dirección de correo electrónico"
|
906 |
+
|
907 |
+
#: includes/feedback-page.php:29
|
908 |
+
msgid "Your Website"
|
909 |
+
msgstr "Su sitio web"
|
910 |
+
|
911 |
+
#: includes/feedback-page.php:48
|
912 |
+
msgid "Send Feedback"
|
913 |
+
msgstr "Enviar sugerencias"
|
914 |
+
|
915 |
+
#: includes/settings_page.php:23
|
916 |
+
msgid "Agents"
|
917 |
+
msgstr "Operadores"
|
918 |
+
|
919 |
+
#: includes/settings_page.php:46 includes/settings_page.php:99
|
920 |
+
#: includes/settings_page.php:115 includes/settings_page.php:158
|
921 |
+
#: includes/settings_page.php:174 includes/settings_page.php:190
|
922 |
+
#: includes/settings_page.php:206 includes/settings_page.php:223
|
923 |
+
msgid "available in the"
|
924 |
+
msgstr "disponible en la"
|
925 |
+
|
926 |
+
#: includes/settings_page.php:47 includes/settings_page.php:100
|
927 |
+
#: includes/settings_page.php:116 includes/settings_page.php:159
|
928 |
+
#: includes/settings_page.php:175 includes/settings_page.php:191
|
929 |
+
#: includes/settings_page.php:207 includes/settings_page.php:224
|
930 |
+
#: includes/settings_page.php:278 includes/settings_page.php:292
|
931 |
+
#: includes/settings_page.php:342 wp-live-chat-support.php:1185
|
932 |
+
#: wp-live-chat-support.php:1206
|
933 |
+
msgid "Pro Add-on"
|
934 |
+
msgstr "versión Pro"
|
935 |
+
|
936 |
+
#: includes/settings_page.php:48 includes/settings_page.php:101
|
937 |
+
#: includes/settings_page.php:117 includes/settings_page.php:160
|
938 |
+
#: includes/settings_page.php:176 includes/settings_page.php:192
|
939 |
+
#: includes/settings_page.php:208 includes/settings_page.php:225
|
940 |
+
msgid "only"
|
941 |
+
msgstr "únicamente"
|
942 |
+
|
943 |
+
#: includes/settings_page.php:49
|
944 |
+
msgid " once off. Updates included forever."
|
945 |
+
msgstr " en un solo pago. Incluye actualizaciones perpetuas."
|
946 |
+
|
947 |
+
#: includes/settings_page.php:277
|
948 |
+
msgid "Get offline messages with the "
|
949 |
+
msgstr "Reciba mensajes offline con la "
|
950 |
+
|
951 |
+
#: includes/settings_page.php:286
|
952 |
+
msgid "Offline text"
|
953 |
+
msgstr "Texto offline"
|
954 |
+
|
955 |
+
#: includes/settings_page.php:291 includes/settings_page.php:341
|
956 |
+
msgid "Edit these text fields using the "
|
957 |
+
msgstr "Edite estos campos de texto usando la "
|
958 |
+
|
959 |
+
#: includes/settings_page.php:320
|
960 |
+
msgid "First section text"
|
961 |
+
msgstr "Texto de la primera sección"
|
962 |
+
|
963 |
+
#: includes/settings_page.php:327
|
964 |
+
msgid "Second section text"
|
965 |
+
msgstr "Texto de la segunda sección"
|
966 |
+
|
967 |
+
#: includes/settings_page.php:330 wp-live-chat-support.php:410
|
968 |
+
msgid "Connecting you to a sales person. Please be patient."
|
969 |
+
msgstr "Conectándolo con un representante... Por favor, aguarde."
|
970 |
+
|
971 |
+
#: includes/settings_page.php:336
|
972 |
+
msgid "Reactivate chat section text"
|
973 |
+
msgstr "Texto de la sección reactivar chat"
|
974 |
+
|
975 |
+
#: includes/settings_page.php:353
|
976 |
+
msgid "Multiple Agents"
|
977 |
+
msgstr "Múltiples operadores"
|
978 |
+
|
979 |
+
#: includes/settings_page.php:354
|
980 |
+
msgid "Get"
|
981 |
+
msgstr "Obtenga"
|
982 |
+
|
983 |
+
#: includes/settings_page.php:354
|
984 |
+
msgid "Multiple agent support"
|
985 |
+
msgstr "soporte para múltiples operadores"
|
986 |
+
|
987 |
+
#: includes/welcome_page.php:4
|
988 |
+
msgid "Welcome to "
|
989 |
+
msgstr "Bienvenido/a a "
|
990 |
+
|
991 |
+
#: includes/welcome_page.php:6
|
992 |
+
msgid "Version 4"
|
993 |
+
msgstr "Versión 4"
|
994 |
+
|
995 |
+
#: includes/welcome_page.php:8
|
996 |
+
msgid "Provide Instant Live Chat Support!"
|
997 |
+
msgstr "¡Incluya soporte instantáneo de chat en vivo!"
|
998 |
+
|
999 |
+
#: includes/welcome_page.php:10
|
1000 |
+
msgid "How did you find us?"
|
1001 |
+
msgstr "¿Cómo nos encontró?"
|
1002 |
+
|
1003 |
+
#: includes/welcome_page.php:15
|
1004 |
+
msgid "WordPress.org plugin repository "
|
1005 |
+
msgstr "Repositorio de plugins de WordPress.org "
|
1006 |
+
|
1007 |
+
#: includes/welcome_page.php:18
|
1008 |
+
msgid "Search Term"
|
1009 |
+
msgstr "Término de búsqueda"
|
1010 |
+
|
1011 |
+
#: includes/welcome_page.php:22
|
1012 |
+
msgid "Google or other search Engine"
|
1013 |
+
msgstr "Google u otro buscador"
|
1014 |
+
|
1015 |
+
#: includes/welcome_page.php:28
|
1016 |
+
msgid "Friend recommendation"
|
1017 |
+
msgstr "Recomendación de un amigo"
|
1018 |
+
|
1019 |
+
#: includes/welcome_page.php:34
|
1020 |
+
msgid "Other"
|
1021 |
+
msgstr "Otro"
|
1022 |
+
|
1023 |
+
#: includes/welcome_page.php:38
|
1024 |
+
msgid "Please Explain"
|
1025 |
+
msgstr "Por favor, explique"
|
1026 |
+
|
1027 |
+
#: includes/welcome_page.php:47
|
1028 |
+
msgid "Submit"
|
1029 |
+
msgstr "Enviar"
|
1030 |
+
|
1031 |
+
#: includes/welcome_page.php:49
|
1032 |
+
msgid "Skip"
|
1033 |
+
msgstr "Saltear"
|
1034 |
+
|
1035 |
+
#: wp-live-chat-support.php:188 wp-live-chat-support.php:1075
|
1036 |
+
msgid "Please click \\'Start Chat\\' to initiate a chat with an agent"
|
1037 |
+
msgstr ""
|
1038 |
+
"Por favor, haga clic en \\'Iniciar chat\\' para chatear con un operador"
|
1039 |
+
|
1040 |
+
#: wp-live-chat-support.php:348
|
1041 |
+
msgid "Start Live Chat"
|
1042 |
+
msgstr "Empezar a chatear"
|
1043 |
+
|
1044 |
+
#: wp-live-chat-support.php:684
|
1045 |
+
msgid ""
|
1046 |
+
"You are using an outdated version of <strong>WP Live Chat Support Pro</"
|
1047 |
+
"strong>. Please"
|
1048 |
+
msgstr ""
|
1049 |
+
"Está usando una versión desactualizada de <strong>WP Live Chat Support Pro</"
|
1050 |
+
"strong>. Por favor,"
|
1051 |
+
|
1052 |
+
#: wp-live-chat-support.php:685
|
1053 |
+
msgid ""
|
1054 |
+
"You're live chat box on your website has been temporarily disabled until the "
|
1055 |
+
"Pro plugin has been updated. This is to ensure a smooth and hassle-free user "
|
1056 |
+
"experience for both yourself and your visitors."
|
1057 |
+
msgstr ""
|
1058 |
+
"El recuadro de chat en vivo de su sitio web ha sido temporalmente "
|
1059 |
+
"desactivado, hasta que se actualice la versión Pro del plugin. Esto es para "
|
1060 |
+
"asegurar una experiencia de usuario ágil y sin complicaciones, tanto para "
|
1061 |
+
"usted como para los visitantes."
|
1062 |
+
|
1063 |
+
#: wp-live-chat-support.php:686
|
1064 |
+
msgid ""
|
1065 |
+
"You can update your plugin <a href='./update-core.php'>here</a>, <a href='./"
|
1066 |
+
"plugins.php'>here</a> or <a href='http://wp-livechat.com/get-updated-"
|
1067 |
+
"version/' target='_BLANK'>here</a>."
|
1068 |
+
msgstr ""
|
1069 |
+
"Puede actualizar el plugin <a href='./update-core.php'>here</a>, <a href='./"
|
1070 |
+
"plugins.php'>aquí</a> o <a href='http://wp-livechat.com/get-updated-"
|
1071 |
+
"version/' target='_blank'>aquí</a>."
|
1072 |
+
|
1073 |
+
#: wp-live-chat-support.php:712
|
1074 |
+
msgid "Experiencing problems with the plugin?"
|
1075 |
+
msgstr "¿Tiene problemas con el plugin?"
|
1076 |
+
|
1077 |
+
#: wp-live-chat-support.php:714
|
1078 |
+
msgid "Review the documentation."
|
1079 |
+
msgstr "Revise la documentación."
|
1080 |
+
|
1081 |
+
#: wp-live-chat-support.php:715
|
1082 |
+
msgid "Or ask a question on our"
|
1083 |
+
msgstr "O háganos una pregunta en nuestro"
|
1084 |
+
|
1085 |
+
#: wp-live-chat-support.php:715
|
1086 |
+
msgid "Support forum."
|
1087 |
+
msgstr "Foro de Soporte."
|
1088 |
+
|
1089 |
+
#: wp-live-chat-support.php:738
|
1090 |
+
msgid "With the Pro add-on of WP Live Chat Support, you can"
|
1091 |
+
msgstr "Con la versión Pro de WP Live Chat Support puede"
|
1092 |
+
|
1093 |
+
#: wp-live-chat-support.php:738
|
1094 |
+
msgid "see who's online and initiate chats"
|
1095 |
+
msgstr "ver quién está en línea e iniciar chats"
|
1096 |
+
|
1097 |
+
#: wp-live-chat-support.php:738
|
1098 |
+
msgid "with your online visitors with the click of a button."
|
1099 |
+
msgstr "con los visitantes de su sitio tan sólo en un clic."
|
1100 |
+
|
1101 |
+
#: wp-live-chat-support.php:738
|
1102 |
+
msgid "Buy the Pro add-on now for only $19.95 once off. Free Updates FOREVER."
|
1103 |
+
msgstr ""
|
1104 |
+
"Compre la versión Pro ahora por un pago único de sólo $19.95. "
|
1105 |
+
"Actualizaciones gratuitas PERPETUAS."
|
1106 |
+
|
1107 |
+
#: wp-live-chat-support.php:738
|
1108 |
+
msgid "Buy the Pro add-on now for only $19.95 once off. Free Updates Forever."
|
1109 |
+
msgstr ""
|
1110 |
+
"Compre la versión Pro ahora por un pago único de sólo $19.95. "
|
1111 |
+
"Actualizaciones gratuitas perpetuas."
|
1112 |
+
|
1113 |
+
#: wp-live-chat-support.php:821
|
1114 |
+
msgid "Add Quick Responses to your Live Chat"
|
1115 |
+
msgstr "Añadir respuestas rápidas para su chat en vivo"
|
1116 |
+
|
1117 |
+
#: wp-live-chat-support.php:821
|
1118 |
+
msgid "Pro version only"
|
1119 |
+
msgstr "Sólo en la versión Pro"
|
1120 |
+
|
1121 |
+
#: wp-live-chat-support.php:832
|
1122 |
+
msgid "type here..."
|
1123 |
+
msgstr "escriba aquí..."
|
1124 |
+
|
1125 |
+
#: wp-live-chat-support.php:1180
|
1126 |
+
msgid "WP Live Chat History"
|
1127 |
+
msgstr "Historial de WP Live Chat"
|
1128 |
+
|
1129 |
+
#: wp-live-chat-support.php:1185 wp-live-chat-support.php:1206
|
1130 |
+
msgid "This option is only available in the "
|
1131 |
+
msgstr "Esta opción sólo está disponible en la "
|
1132 |
+
|
1133 |
+
#: wp-live-chat-support.php:1185 wp-live-chat-support.php:1206
|
1134 |
+
msgid "of WP Live Chat. "
|
1135 |
+
msgstr "de WP Live Chat. "
|
1136 |
+
|
1137 |
+
#: wp-live-chat-support.php:1185 wp-live-chat-support.php:1206
|
1138 |
+
msgid "Get it now for only $19.95 once off!"
|
1139 |
+
msgstr "¡Obténgala por un págo único de sólo $19.95!"
|
1140 |
+
|
1141 |
+
#: wp-live-chat-support.php:1190
|
1142 |
+
msgid "WP Live Chat Missed Chats"
|
1143 |
+
msgstr "Chats perdidos de WP Live Chat"
|
1144 |
+
|
1145 |
+
#: wp-live-chat-support.php:1197
|
1146 |
+
msgid "WP Live Chat Offline Messages"
|
1147 |
+
msgstr "Mensajes offline de WP Live Chat"
|
1148 |
+
|
1149 |
+
#: wp-live-chat-support.php:1202
|
1150 |
+
msgid ""
|
1151 |
+
"Please update to the latest version of WP Live Chat Support Pro to start "
|
1152 |
+
"recording any offline messages."
|
1153 |
+
msgstr ""
|
1154 |
+
"Por favor, actualice a la última versión de WP Live Chat Support Pro para "
|
1155 |
+
"comenzar a grabar los mensajes offline."
|
1156 |
+
|
1157 |
+
#: wp-live-chat-support.php:1255
|
1158 |
+
msgid "Thank You for your feedback!"
|
1159 |
+
msgstr "¡Gracias por enviar su mensaje!"
|
1160 |
+
|
1161 |
+
#: wp-live-chat-support.php:1259 wp-live-chat-support.php:1272
|
1162 |
+
msgid "Thank you for your feedback. We will be in touch soon"
|
1163 |
+
msgstr "Gracias por enviar su mensaje. Nos pondremos en contacto muy pronto"
|
1164 |
+
|
1165 |
+
#: wp-live-chat-support.php:1276
|
1166 |
+
msgid "There was a problem sending your feedback. Please log your feedback on "
|
1167 |
+
msgstr ""
|
1168 |
+
"Hubo un problema al enviar su mensaje. Por favor, registre su mensaje en "
|
readme.txt
CHANGED
@@ -25,6 +25,8 @@ The most cost effective Live Chat plugin. Chat with your visitors for free! WP L
|
|
25 |
* No "Powered by" links on the live chat window
|
26 |
* No monthly live chat subscriptions needed
|
27 |
* Desktop Notifications when receiving new Live Chats
|
|
|
|
|
28 |
|
29 |
|
30 |
= Pro Version Features =
|
@@ -42,15 +44,16 @@ The most cost effective Live Chat plugin. Chat with your visitors for free! WP L
|
|
42 |
* Include/exclude the live chat from appearing on certain pages
|
43 |
* World-class support
|
44 |
* Fully customizable live chat experience
|
|
|
45 |
|
46 |
Get the [WP Live Chat Support Pro Add-on](http://wp-livechat.com/purchase-pro/?utm_source=readme&utm_medium=wordpress&utm_campaign=buy) for only $29.95 once off!
|
47 |
|
48 |
= Coming soon =
|
49 |
-
* (
|
50 |
-
* (
|
51 |
-
* (
|
52 |
-
* (
|
53 |
-
* (
|
54 |
|
55 |
= 30 second live chat installation =
|
56 |
|
@@ -76,7 +79,7 @@ Get a free copy of the WP Live Chat Support Pro version in exchange for translat
|
|
76 |
|
77 |
* English
|
78 |
* German (Dennis Klinger)
|
79 |
-
* Spanish (Sergio Castrillon)
|
80 |
* Russian (Igor Butsky)
|
81 |
* French (Marcello Cavallucci)
|
82 |
* Brazilian (Gustavo Silva)
|
@@ -145,6 +148,13 @@ It is highly recommended that you upgrade to WP Live Chat Support version 4.1.4
|
|
145 |
|
146 |
== Changelog ==
|
147 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
148 |
= 4.2.5 2015-01-21 - Low Priority =
|
149 |
* New Feature: You can now view any live chats you have missed
|
150 |
* New Pro Feature: You can record offline messages when live chat is not online
|
25 |
* No "Powered by" links on the live chat window
|
26 |
* No monthly live chat subscriptions needed
|
27 |
* Desktop Notifications when receiving new Live Chats
|
28 |
+
* View any live chats you may have missed
|
29 |
+
* A comprehensive list of live chat options
|
30 |
|
31 |
|
32 |
= Pro Version Features =
|
44 |
* Include/exclude the live chat from appearing on certain pages
|
45 |
* World-class support
|
46 |
* Fully customizable live chat experience
|
47 |
+
* Offline messages are now stored (When Live Chat is switched off)
|
48 |
|
49 |
Get the [WP Live Chat Support Pro Add-on](http://wp-livechat.com/purchase-pro/?utm_source=readme&utm_medium=wordpress&utm_campaign=buy) for only $29.95 once off!
|
50 |
|
51 |
= Coming soon =
|
52 |
+
* (March 2015) (Free & Pro) Design update - New transitions (chat box slides up, fades, jumps, etc after x seconds)
|
53 |
+
* (March 2015) (Free & Pro) Improvements - Better link and image handling within the live chat text area
|
54 |
+
* (March 2015) (Pro) New feature - Triggers - Build custom live chat triggers. For example, if a user has been idle for more than 2 minutes, initiate a live chat and send a response.
|
55 |
+
* (March 2015) (Free & Pro) New feature - XMP notifications - Get notified about new live chats in Gtalk, ICQ, Yahoo! messenger, etc.
|
56 |
+
* (March 2015) (Pro+) New feature - Full XMP support (chat through Skype, Gtalk, ICQ, Yahoo! messenger, etc)
|
57 |
|
58 |
= 30 second live chat installation =
|
59 |
|
79 |
|
80 |
* English
|
81 |
* German (Dennis Klinger)
|
82 |
+
* Spanish (Sergio Castrillon & Ana Ayelen Martinez)
|
83 |
* Russian (Igor Butsky)
|
84 |
* French (Marcello Cavallucci)
|
85 |
* Brazilian (Gustavo Silva)
|
148 |
|
149 |
== Changelog ==
|
150 |
|
151 |
+
= 4.2.6 2015-01-29 - Low Priority =
|
152 |
+
* New feature: Live Chat dashboard has a new layout and design
|
153 |
+
* Code Improvement: jQuery Cookie updated to the latest version
|
154 |
+
* Code Improvement: More Live Chat strings are now translatable
|
155 |
+
* New Live Chat Translation added:
|
156 |
+
* Spanish (Thank you Ana Ayelen Martinez)
|
157 |
+
|
158 |
= 4.2.5 2015-01-21 - Low Priority =
|
159 |
* New Feature: You can now view any live chats you have missed
|
160 |
* New Pro Feature: You can record offline messages when live chat is not online
|
wp-live-chat-support.php
CHANGED
@@ -1,15 +1,23 @@
|
|
1 |
<?php
|
2 |
/*
|
3 |
-
Plugin Name: WP Live Chat Support
|
4 |
-
Plugin URI: http://www.wp-livechat.com
|
5 |
-
Description: The easiest to use website live chat plugin. Let your visitors chat with you and increase sales conversion rates with WP Live Chat Support. No third party connection required!
|
6 |
-
Version: 4.2.
|
7 |
-
Author: WP-LiveChat
|
8 |
-
Author URI: http://www.wp-livechat.com
|
9 |
-
*/
|
10 |
|
11 |
|
12 |
-
/* 4.2.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
13 |
* New Feature: You can now view any live chats you have missed
|
14 |
* New Pro Feature: You can record offline messages when live chat is not online
|
15 |
* Code Improvements: Labels added to buttons
|
@@ -114,8 +122,6 @@ Author URI: http://www.wp-livechat.com
|
|
114 |
*
|
115 |
*/
|
116 |
|
117 |
-
|
118 |
-
|
119 |
//error_reporting(E_ERROR);
|
120 |
global $wplc_version;
|
121 |
global $wplc_p_version;
|
@@ -125,331 +131,376 @@ global $wplc_tblname_chats;
|
|
125 |
global $wplc_tblname_msgs;
|
126 |
$wplc_tblname_chats = $wpdb->prefix . "wplc_chat_sessions";
|
127 |
$wplc_tblname_msgs = $wpdb->prefix . "wplc_chat_msgs";
|
128 |
-
$wplc_version = "4.2.
|
129 |
|
130 |
-
define('WPLC_BASIC_PLUGIN_DIR',dirname(__FILE__));
|
131 |
-
define('WPLC_BASIC_PLUGIN_URL',plugins_url()."/wp-live-chat-support/");
|
132 |
global $wplc_basic_plugin_url;
|
133 |
-
$wplc_basic_plugin_url = get_option('siteurl')."/wp-content/plugins/wp-live-chat-support/";
|
134 |
-
require_once (plugin_dir_path(
|
135 |
add_action('wp_ajax_wplc_admin_set_transient', 'wplc_action_callback');
|
136 |
-
add_action('init','wplc_version_control');
|
137 |
add_action('wp_footer', 'wplc_display_box');
|
138 |
|
139 |
-
add_action('init','wplc_init');
|
140 |
|
141 |
if (function_exists('wplc_head_pro')) {
|
142 |
add_action('admin_head', 'wplc_head_pro');
|
143 |
-
} else {
|
144 |
add_action('admin_head', 'wplc_head_basic');
|
145 |
}
|
146 |
|
147 |
-
add_action('wp_enqueue_scripts', 'wplc_add_user_stylesheet'
|
148 |
add_action('admin_enqueue_scripts', 'wplc_add_admin_stylesheet');
|
149 |
|
150 |
-
if(function_exists('wplc_admin_menu_pro')){
|
151 |
add_action('admin_menu', 'wplc_admin_menu_pro');
|
152 |
} else {
|
153 |
add_action('admin_menu', 'wplc_admin_menu');
|
154 |
}
|
155 |
add_action('admin_head', 'wplc_superadmin_javascript');
|
156 |
-
register_activation_hook(
|
157 |
|
158 |
|
159 |
-
if(!class_exists('Mobile_Detect')){
|
160 |
-
require_once (plugin_dir_path(
|
161 |
}
|
162 |
|
163 |
$wplc_detect_device = new Mobile_Detect;
|
164 |
-
|
165 |
$wplc_is_mobile = $wplc_detect_device->isMobile();
|
166 |
|
167 |
-
function wplc_basic_check(){
|
168 |
// check if basic exists if pro is installed
|
169 |
}
|
|
|
170 |
function wplc_init() {
|
171 |
-
$plugin_dir = basename(dirname(__FILE__))."/languages/";
|
172 |
-
load_plugin_textdomain(
|
173 |
}
|
174 |
|
175 |
-
|
176 |
function wplc_version_control() {
|
177 |
global $wplc_version;
|
178 |
-
|
179 |
|
180 |
$current_version = get_option("wplc_current_version");
|
181 |
if (!isset($current_version) || $current_version != $wplc_version) {
|
182 |
wplc_handle_db();
|
183 |
-
update_option("wplc_current_version"
|
184 |
-
|
185 |
$wplc_settings = get_option("WPLC_SETTINGS");
|
186 |
-
if (!isset($wplc_settings['wplc_require_user_info'])) {
|
187 |
-
|
188 |
-
|
189 |
-
if (!isset($wplc_settings['
|
190 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
191 |
}
|
192 |
-
|
193 |
-
|
194 |
}
|
|
|
195 |
function wplc_action_callback() {
|
196 |
global $wpdb;
|
197 |
global $wplc_tblname_chats;
|
198 |
-
$check = check_ajax_referer(
|
199 |
|
200 |
if ($check == 1) {
|
201 |
if ($_POST['action'] == "wplc_admin_set_transient") {
|
202 |
-
set_transient("wplc_is_admin_logged_in", "1", 70
|
203 |
-
|
204 |
}
|
205 |
}
|
206 |
die(); // this is required to return a proper result
|
207 |
-
|
208 |
}
|
209 |
|
210 |
-
function wplc_feedback_page_include(){
|
211 |
include 'includes/feedback-page.php';
|
212 |
}
|
213 |
|
214 |
function wplc_admin_menu() {
|
215 |
-
$wplc_mainpage = add_menu_page('WP Live Chat', __('Live Chat','wplivechat'), 'manage_options', 'wplivechat-menu', 'wplc_admin_menu_layout');
|
216 |
-
add_submenu_page('wplivechat-menu', __('Settings','wplivechat'), __('Settings','wplivechat'), 'manage_options'
|
217 |
-
add_submenu_page('wplivechat-menu', __('History','wplivechat'), __('History','wplivechat'), 'manage_options'
|
218 |
-
add_submenu_page('wplivechat-menu', __('Missed Chats','wplivechat'), __('Missed Chats','wplivechat'), 'manage_options'
|
219 |
-
add_submenu_page('wplivechat-menu', __('Feedback','wplivechat'), __('Feedback','wplivechat'), 'manage_options'
|
220 |
}
|
221 |
-
|
|
|
|
|
222 |
function wplc_user_top_js() {
|
223 |
echo "<!-- DEFINING DO NOT CACHE -->";
|
224 |
-
if(!defined('DONOTCACHEPAGE')) {
|
225 |
-
|
|
|
|
|
|
|
|
|
226 |
$ajax_nonce = wp_create_nonce("wplc");
|
227 |
-
wp_register_script(
|
228 |
-
wp_enqueue_script(
|
229 |
$wplc_settings = get_option("WPLC_SETTINGS");
|
230 |
-
|
231 |
-
?>
|
232 |
|
233 |
-
<script type="text/javascript">
|
234 |
<?php if (!function_exists("wplc_register_pro_version")) { ?>
|
235 |
-
|
236 |
-
|
237 |
-
<?php } ?>
|
238 |
-
var wplc_nonce = '<?php echo $ajax_nonce; ?>';
|
239 |
-
</script>
|
240 |
-
<?php
|
241 |
-
|
242 |
|
|
|
|
|
|
|
|
|
243 |
}
|
244 |
|
245 |
function wplc_draw_user_box() {
|
246 |
global $wplc_is_mobile;
|
247 |
-
|
248 |
$wplc_settings = get_option("WPLC_SETTINGS");
|
249 |
-
|
250 |
-
if(isset($wplc_settings['wplc_display_to_loggedin_only']) && $wplc_settings['wplc_display_to_loggedin_only'] == 1) {
|
251 |
/* Only show to users that are logged in */
|
252 |
-
if(!is_user_logged_in()){
|
253 |
return;
|
254 |
}
|
255 |
-
}
|
256 |
/* Show to all users */
|
257 |
-
if($wplc_is_mobile && !isset($wplc_settings['wplc_enabled_on_mobile']) && $wplc_settings['wplc_enabled_on_mobile'] != 1) {
|
258 |
-
|
|
|
|
|
|
|
|
|
259 |
|
260 |
-
if(isset($wplc_settings['wplc_display_name']) && $wplc_settings['wplc_display_name'] == 1) {
|
|
|
|
|
|
|
|
|
261 |
|
262 |
-
wp_register_script(
|
263 |
-
wp_enqueue_script(
|
264 |
|
265 |
wp_localize_script('wplc-user-script', 'wplc_hide_chat', null);
|
266 |
wp_localize_script('wplc-user-script', 'wplc_plugin_url', plugins_url());
|
267 |
wp_localize_script('wplc-user-script', 'wplc_display_name', $wplc_display);
|
268 |
|
269 |
-
if(isset($_COOKIE['wplc_email']) && $_COOKIE['wplc_email'] != "")
|
|
|
|
|
|
|
|
|
270 |
|
271 |
-
if($wplc_user_gravatar != ""){
|
272 |
$wplc_grav_image = "<img src='http://www.gravatar.com/avatar/$wplc_user_gravatar?s=20' />";
|
273 |
} else {
|
274 |
$wplc_grav_image = "";
|
275 |
}
|
276 |
wp_localize_script('wplc-user-script', 'wplc_gravatar_image', $wplc_grav_image);
|
277 |
|
278 |
-
wp_enqueue_script(
|
279 |
-
wp_enqueue_script(
|
280 |
-
wp_enqueue_script(
|
281 |
wplc_output_box();
|
282 |
-
|
283 |
}
|
284 |
|
285 |
function wplc_output_box() {
|
286 |
-
global $wplc_is_mobile;
|
287 |
$wplc_class = "";
|
288 |
$wplc_settings = get_option("WPLC_SETTINGS");
|
289 |
-
|
290 |
-
if($wplc_is_mobile && !isset($wplc_settings['wplc_enabled_on_mobile']) && $wplc_settings['wplc_enabled_on_mobile'] != 1) { return; }
|
291 |
-
|
292 |
-
if ($wplc_settings["wplc_settings_enabled"] == 2) { return; }
|
293 |
|
294 |
-
if ($wplc_settings[
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
295 |
$original_pos = "bottom_left";
|
296 |
-
$wplc_box_align = "left:100px; bottom:0px;";
|
297 |
-
|
298 |
-
} else if ($wplc_settings["wplc_settings_align"] == 2){
|
299 |
$original_pos = "bottom_right";
|
300 |
-
$wplc_box_align = "right:100px; bottom:0px;";
|
301 |
-
|
302 |
-
} else if($wplc_settings["wplc_settings_align"] == 3){
|
303 |
$original_pos = "left";
|
304 |
$wplc_box_align = "left:0; bottom:100px;";
|
305 |
$wplc_class = "wplc_left";
|
306 |
-
} else if($wplc_settings["wplc_settings_align"] == 4){
|
307 |
$original_pos = "right";
|
308 |
$wplc_box_align = "right:0; bottom:100px;";
|
309 |
$wplc_class = "wplc_right";
|
310 |
}
|
311 |
-
if ($wplc_settings["wplc_settings_fill"]) {
|
312 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
313 |
|
314 |
$wplc_is_admin_logged_in = get_transient("wplc_is_admin_logged_in");
|
315 |
if (!function_exists("wplc_register_pro_version") && $wplc_is_admin_logged_in != 1) {
|
316 |
return "";
|
317 |
-
}
|
318 |
-
|
319 |
-
|
320 |
-
|
321 |
-
|
322 |
-
|
323 |
-
|
324 |
-
<?php if (function_exists("wplc_register_pro_version")) {
|
325 |
-
wplc_pro_output_box();
|
326 |
-
} else {
|
327 |
-
?>
|
328 |
-
|
329 |
|
330 |
-
<div class="wp-live-chat-wraper">
|
331 |
-
<div id="wp-live-chat-header" style="background-color: <?php echo $wplc_settings_fill; ?> !important; color: <?php echo $wplc_settings_font; ?> !important; ">
|
332 |
|
333 |
-
|
334 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
335 |
|
336 |
-
|
337 |
-
<
|
338 |
-
|
|
|
|
|
|
|
|
|
339 |
</div>
|
340 |
</div>
|
341 |
-
</div>
|
342 |
-
|
343 |
-
<div>
|
344 |
|
345 |
-
<div
|
346 |
|
347 |
-
<div id="wp-live-chat-2
|
348 |
-
|
349 |
-
|
350 |
-
|
351 |
-
|
352 |
-
|
353 |
-
|
354 |
-
|
355 |
-
|
356 |
-
|
357 |
-
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
|
363 |
-
|
364 |
-
|
365 |
-
|
366 |
-
|
367 |
-
|
368 |
-
|
369 |
-
|
370 |
-
|
371 |
-
|
372 |
-
} else {
|
373 |
-
$wplc_loggedin_user_name = '';
|
374 |
-
$wplc_loggedin_user_email = '';
|
375 |
-
}
|
376 |
-
|
377 |
-
if(isset($wplc_settings['wplc_require_user_info']) && $wplc_settings['wplc_require_user_info'] == 1){
|
378 |
-
$wplc_ask_user_details = 1;
|
379 |
-
} else {
|
380 |
-
$wplc_ask_user_details = 0;
|
381 |
}
|
382 |
-
|
383 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
384 |
//Ask the user to enter name and email
|
385 |
-
|
386 |
-
<input type="text" name="wplc_name" id="wplc_name" value="<?php echo $wplc_loggedin_user_name; ?>" placeholder="<?php _e("Name","wplivechat"); ?>" />
|
387 |
-
<input type="text" name="wplc_email" id="wplc_email" wplc_hide="0" value="<?php echo $wplc_loggedin_user_email;
|
388 |
-
|
389 |
-
|
390 |
-
|
391 |
-
|
392 |
-
|
393 |
-
|
394 |
-
|
395 |
-
|
|
|
|
|
396 |
// $wplc_loggedin_user_email = $wplc_random_user_number."@".$wplc_random_user_number.".com";
|
397 |
-
|
398 |
-
<input type="hidden" name="wplc_name" id="wplc_name" value="<?php if($wplc_loggedin_user_name != '') {
|
399 |
-
|
400 |
-
|
401 |
-
|
402 |
-
|
403 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
404 |
|
405 |
|
406 |
|
407 |
-
|
408 |
|
409 |
-
|
410 |
-
|
411 |
-
|
412 |
-
|
413 |
-
|
414 |
-
|
415 |
-
|
416 |
-
|
417 |
-
|
418 |
-
|
419 |
-
|
420 |
-
|
421 |
-
|
422 |
-
|
423 |
-
|
|
|
424 |
</div>
|
425 |
-
</div>
|
426 |
-
</div>
|
427 |
-
|
428 |
-
<?php
|
429 |
}
|
430 |
}
|
431 |
|
432 |
function wplc_display_box() {
|
433 |
$wplc_is_admin_logged_in = get_transient("wplc_is_admin_logged_in");
|
434 |
-
if ($wplc_is_admin_logged_in != 1) {
|
435 |
-
|
|
|
|
|
436 |
/* do not show if pro is outdated */
|
437 |
global $wplc_pro_version;
|
438 |
if (isset($wplc_pro_version)) {
|
439 |
$float_version = floatval($wplc_pro_version);
|
440 |
-
if ($float_version < 4 || $wplc_pro_version == "4.1.0" || $wplc_pro_version == "4.1.1") {
|
|
|
|
|
441 |
}
|
442 |
-
|
443 |
-
if (function_exists("wplc_register_pro_version")) { wplc_pro_draw_user_box(); } else { wplc_draw_user_box(); }
|
444 |
-
}
|
445 |
-
|
446 |
|
|
|
|
|
|
|
|
|
|
|
|
|
447 |
|
448 |
function wplc_admin_display_chat($cid) {
|
449 |
global $wpdb;
|
450 |
global $wplc_tblname_msgs;
|
451 |
$results = $wpdb->get_results(
|
452 |
-
|
453 |
SELECT *
|
454 |
FROM $wplc_tblname_msgs
|
455 |
WHERE `chat_sess_id` = '$cid'
|
@@ -461,60 +512,56 @@ function wplc_admin_display_chat($cid) {
|
|
461 |
$from = $result->from;
|
462 |
$msg = stripslashes($result->msg);
|
463 |
$msg_hist .= "$from: $msg<br />";
|
464 |
-
|
465 |
}
|
466 |
echo $msg_hist;
|
467 |
}
|
|
|
468 |
function wplc_admin_accept_chat($cid) {
|
469 |
-
wplc_change_chat_status($cid,3);
|
470 |
return true;
|
471 |
-
|
472 |
}
|
473 |
-
add_action('admin_head','wplc_update_chat_statuses');
|
474 |
|
|
|
475 |
|
476 |
function wplc_superadmin_javascript() {
|
477 |
-
|
478 |
if (isset($_GET['page']) && $_GET['page'] == 'wplivechat-menu') {
|
479 |
-
|
480 |
-
if (!isset($_GET['action'])) {
|
481 |
-
if (function_exists("wplc_register_pro_version")) {
|
482 |
-
wplc_pro_admin_javascript();
|
483 |
} else {
|
484 |
-
wplc_admin_javascript();
|
485 |
}
|
486 |
-
|
487 |
-
|
488 |
-
|
489 |
-
|
490 |
-
wplc_return_pro_admin_chat_javascript($_GET['cid']);
|
491 |
} else {
|
492 |
-
wplc_return_admin_chat_javascript($_GET['cid']);
|
493 |
-
}
|
494 |
-
|
495 |
}
|
496 |
-
|
497 |
-
|
498 |
-
|
499 |
}
|
500 |
-
|
501 |
$ajax_nonce = wp_create_nonce("wplc");
|
502 |
?>
|
503 |
<script type="text/javascript">
|
504 |
-
jQuery(document).ready(function() {
|
505 |
|
506 |
|
507 |
var wplc_set_transient = null;
|
508 |
-
|
509 |
-
wplc_set_transient = setInterval(function (){
|
|
|
|
|
510 |
wpcl_admin_set_transient();
|
511 |
function wpcl_admin_set_transient() {
|
512 |
var data = {
|
513 |
-
|
514 |
-
|
515 |
-
|
516 |
};
|
517 |
-
jQuery.post(ajaxurl, data, function(response) {
|
518 |
//console.log("wplc_admin_set_transient");
|
519 |
});
|
520 |
}
|
@@ -522,12 +569,12 @@ function wplc_superadmin_javascript() {
|
|
522 |
});
|
523 |
|
524 |
function wplc_desktop_notification() {
|
525 |
-
if(typeof Notification !== 'undefined'){
|
526 |
if (!Notification) {
|
527 |
-
|
528 |
}
|
529 |
if (Notification.permission !== "granted")
|
530 |
-
|
531 |
|
532 |
var wplc_desktop_notification = new Notification('New chat received', {
|
533 |
icon: wplc_notification_icon_url,
|
@@ -540,128 +587,138 @@ function wplc_superadmin_javascript() {
|
|
540 |
</script>
|
541 |
<?php
|
542 |
}
|
|
|
543 |
function wplc_admin_javascript() {
|
544 |
$ajax_nonce = wp_create_nonce("wplc");
|
545 |
?>
|
546 |
-
|
547 |
<script type="text/javascript">
|
548 |
var wplc_ajaxurl = '<?php echo plugins_url('/ajax.php', __FILE__); ?>';
|
549 |
var data = {
|
550 |
action: 'wplc_admin_long_poll',
|
551 |
security: '<?php echo $ajax_nonce; ?>',
|
552 |
-
wplc_list_visitors_data: false
|
553 |
wplc_update_admin_chat_table: false
|
554 |
};
|
555 |
var wplc_pending_refresh = null;
|
556 |
-
|
557 |
var wplc_run = true;
|
558 |
-
|
559 |
var wplc_notification_icon_url = '<?php echo plugins_url('/images/wplc_notification_icon.png', __FILE__); ?>';
|
560 |
-
|
561 |
-
|
562 |
-
|
563 |
function wplc_call_to_server(data) {
|
564 |
-
|
565 |
-
|
566 |
jQuery.ajax({
|
567 |
url: wplc_ajaxurl,
|
568 |
-
data:data,
|
569 |
-
type:"POST",
|
570 |
-
success: function(response) {
|
571 |
-
|
572 |
//Update your dashboard gauge
|
573 |
-
if(response){
|
574 |
-
// console.log('Running');
|
575 |
response = JSON.parse(response);
|
576 |
//console.log(response);
|
577 |
data["wplc_update_admin_chat_table"] = response['wplc_update_admin_chat_table'];
|
578 |
//console.log(response['visitors']);
|
579 |
-
|
580 |
-
if(response['action'] === "wplc_update_admin_chat"){
|
581 |
jQuery("#wplc_admin_chat_area").html(response['wplc_update_admin_chat_table']);
|
582 |
if (response['pending'] === true) {
|
583 |
-
|
584 |
var orig_title = document.getElementsByTagName("title")[0].innerHTML;
|
585 |
var ringer_cnt = 0;
|
586 |
-
wplc_pending_refresh = setInterval(function (){
|
587 |
//console.log("chat request");
|
588 |
-
|
589 |
-
if(ringer_cnt <= 0){
|
590 |
wplc_desktop_notification();
|
591 |
}
|
592 |
-
|
593 |
ringer_cnt++;
|
594 |
-
|
595 |
-
if (ringer_cnt > 1) {
|
596 |
-
clearInterval(wplc_pending_refresh);
|
597 |
-
wplc_title_alerts4 = setTimeout(function (){
|
|
|
|
|
598 |
return;
|
599 |
}
|
600 |
-
|
601 |
document.title = "** CHAT REQUEST **";
|
602 |
-
wplc_title_alerts2 = setTimeout(function (){
|
603 |
-
|
604 |
-
|
605 |
-
|
606 |
-
|
607 |
-
|
608 |
-
|
609 |
-
|
610 |
-
|
611 |
-
//
|
612 |
-
//
|
613 |
-
|
614 |
-
|
|
|
|
|
|
|
|
|
615 |
} else {
|
616 |
//console.log("end");
|
617 |
clearInterval(wplc_pending_refresh);
|
618 |
}
|
619 |
}
|
620 |
-
|
621 |
}
|
622 |
},
|
623 |
-
error: function(jqXHR, exception) {
|
624 |
if (jqXHR.status == 404) {
|
625 |
console.log('Requested page not found. [404]');
|
626 |
-
|
627 |
} else if (jqXHR.status == 500) {
|
628 |
console.log('Internal Server Error [500].');
|
629 |
-
|
630 |
} else if (exception === 'parsererror') {
|
631 |
console.log('Requested JSON parse failed.');
|
632 |
-
|
633 |
} else if (exception === 'abort') {
|
634 |
console.log('Ajax request aborted.');
|
635 |
-
|
636 |
} else {
|
637 |
console.log('Uncaught Error.\n' + jqXHR.responseText);
|
638 |
-
|
639 |
}
|
640 |
},
|
641 |
-
complete: function(response){
|
642 |
//console.log(wplc_run);
|
643 |
-
if (wplc_run) {
|
644 |
-
setTimeout(function() {
|
|
|
|
|
645 |
}
|
646 |
},
|
647 |
timeout: 120000
|
648 |
});
|
649 |
-
}
|
650 |
-
|
651 |
-
|
|
|
652 |
|
653 |
-
jQuery(document).ready(function() {
|
654 |
jQuery('body').on("click", "a", function (event) {
|
655 |
-
if(jQuery(this).hasClass('wplc_open_chat')){
|
656 |
-
if(event.preventDefault) {
|
657 |
-
|
658 |
} else {
|
659 |
event.returnValue = false;
|
660 |
}
|
661 |
-
window.open(jQuery(this).attr("href"), jQuery(this).attr("window-title"
|
662 |
}
|
663 |
});
|
664 |
-
|
665 |
wplc_call_to_server(data);
|
666 |
});
|
667 |
|
@@ -671,26 +728,42 @@ function wplc_admin_javascript() {
|
|
671 |
<?php
|
672 |
}
|
673 |
|
|
|
|
|
|
|
|
|
|
|
|
|
674 |
|
|
|
|
|
|
|
|
|
|
|
675 |
|
676 |
-
|
677 |
-
|
678 |
-
|
679 |
-
|
680 |
-
|
681 |
-
|
682 |
-
|
683 |
-
|
684 |
-
|
685 |
-
<p
|
686 |
-
|
687 |
-
|
688 |
-
|
689 |
-
|
690 |
-
|
691 |
-
|
|
|
|
|
|
|
|
|
|
|
692 |
}
|
693 |
-
if(get_option("WPLC_FIRST_TIME") == true && !class_exists("APC_Object_Cache")){
|
694 |
update_option('WPLC_FIRST_TIME', false);
|
695 |
include 'includes/welcome_page.php';
|
696 |
} else {
|
@@ -701,51 +774,68 @@ function wplc_admin_menu_layout() {
|
|
701 |
wplc_admin_menu_layout_display();
|
702 |
}
|
703 |
}
|
704 |
-
|
705 |
}
|
706 |
|
707 |
function wplc_admin_menu_layout_display() {
|
708 |
-
|
709 |
-
|
710 |
?>
|
711 |
-
|
712 |
-
|
713 |
-
|
714 |
-
|
715 |
-
|
716 |
-
|
717 |
-
|
718 |
-
<
|
719 |
-
<
|
720 |
-
|
721 |
-
|
722 |
|
|
|
|
|
|
|
723 |
|
724 |
-
|
725 |
|
726 |
-
|
727 |
-
|
728 |
-
|
729 |
-
|
730 |
-
|
731 |
-
|
732 |
-
}
|
733 |
-
|
|
|
734 |
?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
735 |
</div>
|
736 |
-
|
737 |
-
|
738 |
-
|
739 |
-
<?php
|
740 |
-
}
|
741 |
-
else {
|
742 |
-
|
743 |
if ($_GET['action'] == 'ac') {
|
744 |
-
wplc_change_chat_status($_GET['cid'],3);
|
745 |
-
if(function_exists('wplc_ma_register')){
|
746 |
wplc_ma_update_agent_id($_GET['cid'], $_GET['agent_id']);
|
747 |
}
|
748 |
-
if (function_exists("wplc_register_pro_version")) {
|
|
|
|
|
|
|
|
|
749 |
}
|
750 |
}
|
751 |
}
|
@@ -755,102 +845,113 @@ function wplc_draw_chat_area($cid) {
|
|
755 |
global $wpdb;
|
756 |
global $wplc_tblname_chats;
|
757 |
$results = $wpdb->get_results(
|
758 |
-
|
759 |
SELECT *
|
760 |
FROM $wplc_tblname_chats
|
761 |
WHERE `id` = '$cid'
|
762 |
LIMIT 1
|
763 |
"
|
764 |
-
)
|
765 |
-
|
766 |
-
|
767 |
-
.wplc-clear-float-message{
|
768 |
-
clear: both;
|
769 |
-
}
|
770 |
|
|
|
|
|
|
|
771 |
|
772 |
-
</style>
|
773 |
-
<?php
|
774 |
|
775 |
-
|
|
|
776 |
foreach ($results as $result) {
|
777 |
-
|
778 |
$user_ip = $user_data['ip'];
|
779 |
$browser = wplc_return_browser_string($user_data['user_agent']);
|
780 |
-
$browser_image = wplc_return_browser_image($browser,"16");
|
781 |
global $wplc_basic_plugin_url;
|
782 |
-
if ($result->status == 1) {
|
783 |
-
|
784 |
-
|
|
|
|
|
|
|
|
|
785 |
echo "<style>#adminmenuwrap { display:none; } #adminmenuback { display:none; } #wpadminbar { display:none; } #wpfooter { display:none; } .update-nag { display:none; }</style>";
|
786 |
-
|
787 |
-
echo "<div class=\"end_chat_div\"><a href=\"javascript:void(0);\" class=\"wplc_admin_close_chat button\" id=\"wplc_admin_close_chat\">".__("End chat","wplivechat")."</a></div>";
|
788 |
-
|
789 |
echo "<div id='admin_chat_box'>";
|
790 |
-
|
791 |
-
echo"<div class='admin_chat_box'><div class='admin_chat_box_inner' id='admin_chat_box_area_"
|
792 |
echo "<div class='admin_visitor_info'>";
|
793 |
-
echo " <div style='float:left; width:100px;'><img src=\"http://www.gravatar.com/avatar/".md5($result->email)."\" class=\"admin_chat_img\" /></div>";
|
794 |
echo " <div style='float:left;'>";
|
795 |
-
|
796 |
echo " <div class='admin_visitor_info_box1'>";
|
797 |
-
echo " <span class='admin_chat_name'>"
|
798 |
-
echo " <span class='admin_chat_email'>"
|
799 |
echo " </div>";
|
800 |
echo " </div>";
|
801 |
-
|
802 |
echo "<div class='admin_visitor_advanced_info'>";
|
803 |
-
echo " <strong>".__("Site Info","wplivechat")."</strong>";
|
804 |
echo " <hr />";
|
805 |
-
echo " <span class='part1'>".__("Chat initiated on:","wplivechat")."</span> <span class='part2'>"
|
806 |
echo "</div>";
|
807 |
|
808 |
echo "<div class='admin_visitor_advanced_info'>";
|
809 |
-
echo " <strong>".__("Advanced Info","wplivechat")."</strong>";
|
810 |
echo " <hr />";
|
811 |
-
echo " <span class='part1'>".__("Browser:","wplivechat")."</span><span class='part2'> $browser <img src='"
|
812 |
-
echo " <span class='part1'>".__("IP Address:","wplivechat")."</span><span class='part2'> <a href='http://www.ip-adress.com/ip_tracer/"
|
813 |
echo "</div>";
|
814 |
-
|
815 |
echo " <div id=\"wplc_sound_update\"></div>";
|
816 |
echo "</div>";
|
817 |
-
|
818 |
if ($result->status != 1) {
|
819 |
-
|
820 |
-
|
821 |
-
|
822 |
-
|
823 |
-
|
824 |
-
|
825 |
//echo wplc_return_admin_chat_javascript($_GET['cid']);
|
826 |
}
|
827 |
-
|
828 |
}
|
829 |
}
|
830 |
-
|
|
|
831 |
$ret = "<div class=\"chat_response_box\">";
|
832 |
-
$ret .= "<input type='text' name='wplc_admin_chatmsg' id='wplc_admin_chatmsg' value='' placeholder='".__("type here...","wplivechat")."' />";
|
833 |
$ret .= "<input id='wplc_admin_cid' type='hidden' value='$cid' />";
|
834 |
-
$ret .= "<input id='wplc_admin_send_msg' type='button' value='".__("Send","wplivechat")."' style=\"display:none;\" />";
|
835 |
$ret .= "</div>";
|
836 |
return $ret;
|
837 |
-
|
838 |
}
|
|
|
839 |
function wplc_return_admin_chat_javascript($cid) {
|
840 |
-
|
841 |
-
|
842 |
-
|
843 |
-
|
844 |
-
|
845 |
-
}
|
846 |
}
|
847 |
-
|
848 |
-
|
|
|
849 |
|
850 |
-
|
851 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
852 |
?>
|
853 |
-
|
854 |
var wplc_ajaxurl = '<?php echo plugins_url('/ajax.php', __FILE__); ?>';
|
855 |
var chat_status = 3;
|
856 |
var cid = <?php echo $cid; ?>;
|
@@ -863,70 +964,71 @@ function wplc_return_admin_chat_javascript($cid) {
|
|
863 |
var wplc_run = true;
|
864 |
var wplc_display_name = '<?php echo $display_name; ?>';
|
865 |
var wplc_user_email_address = '<?php echo $wplc_user_email_address; ?>';
|
866 |
-
|
867 |
function wplc_call_to_server_admin_chat(data) {
|
868 |
jQuery.ajax({
|
869 |
url: wplc_ajaxurl,
|
870 |
-
data:data,
|
871 |
-
type:"POST",
|
872 |
-
success: function(response) {
|
873 |
-
if(response){
|
874 |
-
|
875 |
response = JSON.parse(response);
|
876 |
-
// console.log(response);
|
877 |
-
if(response['action'] === "wplc_update_chat_status"){
|
878 |
data['chat_status'] = response['chat_status'];
|
879 |
-
wplc_display_chat_status_update(response['chat_status'],cid);
|
880 |
}
|
881 |
-
if(response['action'] === "wplc_new_chat_message"){
|
882 |
-
current_len = jQuery("#admin_chat_box_area_"+cid).html().length;
|
883 |
-
jQuery("#admin_chat_box_area_"+cid).append(response['chat_message']);
|
884 |
-
new_length = jQuery("#admin_chat_box_area_"+cid).html().length;
|
885 |
if (current_len < new_length) {
|
886 |
-
document.getElementById("wplc_sound_update").innerHTML="<embed src='<?php echo plugins_url('/ding.mp3', __FILE__); ?>' hidden=true autostart=true loop=false>";
|
887 |
}
|
888 |
-
var height = jQuery('#admin_chat_box_area_'+cid)[0].scrollHeight;
|
889 |
-
jQuery('#admin_chat_box_area_'+cid).scrollTop(height);
|
890 |
}
|
891 |
-
if(response['action'] === "wplc_user_open_chat"){
|
892 |
data['action_2'] = "";
|
893 |
-
|
894 |
window.location.replace('<?php echo $url; ?>');
|
895 |
}
|
896 |
-
|
897 |
}
|
898 |
},
|
899 |
-
error: function(jqXHR, exception) {
|
900 |
if (jqXHR.status == 404) {
|
901 |
console.log('Requested page not found. [404]');
|
902 |
-
|
903 |
} else if (jqXHR.status == 500) {
|
904 |
console.log('Internal Server Error [500].');
|
905 |
-
|
906 |
} else if (exception === 'parsererror') {
|
907 |
console.log('Requested JSON parse failed.');
|
908 |
-
|
909 |
} else if (exception === 'abort') {
|
910 |
console.log('Ajax request aborted.');
|
911 |
-
|
912 |
} else {
|
913 |
console.log('Uncaught Error.\n' + jqXHR.responseText);
|
914 |
-
|
915 |
}
|
916 |
},
|
917 |
-
complete: function(response){
|
918 |
//console.log(wplc_run);
|
919 |
-
if (wplc_run) {
|
920 |
-
wplc_call_to_server_admin_chat(data);
|
921 |
}
|
922 |
},
|
923 |
-
|
924 |
timeout: 120000
|
925 |
});
|
926 |
-
}
|
927 |
-
|
928 |
-
|
929 |
-
|
|
|
|
|
930 |
if (chat_status !== new_chat_status) {
|
931 |
previous_chat_status = chat_status;
|
932 |
//console.log("previous chat status: "+previous_chat_status);
|
@@ -934,172 +1036,177 @@ function wplc_return_admin_chat_javascript($cid) {
|
|
934 |
//console.log("chat status: "+chat_status);
|
935 |
|
936 |
if ((previous_chat_status === "2" && chat_status === "3") || (previous_chat_status === "5" && chat_status === "3")) {
|
937 |
-
jQuery("#admin_chat_box_area_"+cid).append("<em><?php _e("User has opened the chat window","wplivechat"); ?></em><br />");
|
938 |
-
var height = jQuery('#admin_chat_box_area_'+cid)[0].scrollHeight;
|
939 |
-
jQuery('#admin_chat_box_area_'+cid).scrollTop(height);
|
940 |
-
|
941 |
-
} else if (chat_status == "10" && previous_chat_status == "3") {
|
942 |
-
jQuery("#admin_chat_box_area_"+cid).append("<em><?php _e("User has minimized the chat window","wplivechat"); ?></em><br />");
|
943 |
-
var height = jQuery('#admin_chat_box_area_'+cid)[0].scrollHeight;
|
944 |
-
jQuery('#admin_chat_box_area_'+cid).scrollTop(height);
|
945 |
}
|
946 |
-
else if(chat_status === "3" && previous_chat_status === "10"){
|
947 |
-
jQuery("#admin_chat_box_area_"+cid).append("<em><?php _e("User has maximized the chat window","wplivechat"); ?></em><br />");
|
948 |
-
var height = jQuery('#admin_chat_box_area_'+cid)[0].scrollHeight;
|
949 |
-
jQuery('#admin_chat_box_area_'+cid).scrollTop(height);
|
950 |
}
|
951 |
-
else if (chat_status === "1" || chat_status === "8") {
|
952 |
-
jQuery("#admin_chat_box_area_"+cid).append("<em><?php _e("User has closed and ended the chat","wplivechat"); ?></em><br />");
|
953 |
-
var height = jQuery('#admin_chat_box_area_'+cid)[0].scrollHeight;
|
954 |
-
jQuery('#admin_chat_box_area_'+cid).scrollTop(height);
|
955 |
document.getElementById('wplc_admin_chatmsg').disabled = true;
|
956 |
-
}
|
957 |
}
|
958 |
}
|
959 |
}
|
960 |
-
|
961 |
-
|
962 |
|
963 |
-
|
964 |
-
|
965 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
966 |
var wplc_ajaxurl = '<?php echo plugins_url('/ajax.php', __FILE__); ?>';
|
967 |
-
|
968 |
-
|
969 |
jQuery("#wplc_admin_chatmsg").focus();
|
970 |
-
|
971 |
-
|
972 |
-
|
973 |
-
|
974 |
wplc_call_to_server_admin_chat(data);
|
975 |
-
|
976 |
-
if (jQuery('#wplc_admin_cid').length){
|
977 |
var wplc_cid = jQuery("#wplc_admin_cid").val();
|
978 |
-
var height = jQuery('#admin_chat_box_area_'+wplc_cid)[0].scrollHeight;
|
979 |
-
jQuery('#admin_chat_box_area_'+wplc_cid).scrollTop(height);
|
980 |
}
|
981 |
|
982 |
-
jQuery(".wplc_admin_accept").on("click", function() {
|
983 |
-
wplc_title_alerts3 = setTimeout(function (){
|
|
|
|
|
984 |
var cid = jQuery(this).attr("cid");
|
985 |
-
|
986 |
var data = {
|
987 |
-
|
988 |
-
|
989 |
-
|
990 |
};
|
991 |
-
jQuery.post(wplc_ajaxurl, data, function(response) {
|
992 |
//console.log("wplc_admin_accept_chat");
|
993 |
-
wplc_refresh_chat_boxes[cid] = setInterval(function (){
|
994 |
-
|
|
|
|
|
995 |
});
|
996 |
});
|
997 |
|
998 |
-
jQuery("#wplc_admin_chatmsg").keyup(function(event){
|
999 |
-
if(event.keyCode == 13){
|
1000 |
jQuery("#wplc_admin_send_msg").click();
|
1001 |
}
|
1002 |
});
|
1003 |
|
1004 |
-
jQuery("#wplc_admin_close_chat").on("click", function() {
|
1005 |
var wplc_cid = jQuery("#wplc_admin_cid").val();
|
1006 |
var data = {
|
1007 |
-
|
1008 |
-
|
1009 |
-
|
1010 |
-
|
1011 |
};
|
1012 |
-
jQuery.post(wplc_ajaxurl, data, function(response) {
|
1013 |
-
|
1014 |
-
|
1015 |
-
|
1016 |
});
|
1017 |
-
|
1018 |
});
|
1019 |
|
1020 |
function wplc_strip(str) {
|
1021 |
-
str=str.replace(/<br>/gi, "\n");
|
1022 |
-
str=str.replace(/<p.*>/gi, "\n");
|
1023 |
-
str=str.replace(/<a.*href="(.*?)".*>(.*?)<\/a>/gi, " $2 ($1) ");
|
1024 |
-
str=str.replace(/<(?:.|\s)*?>/g, "");
|
1025 |
return str;
|
1026 |
}
|
1027 |
-
jQuery("#wplc_admin_send_msg").on("click", function() {
|
1028 |
var wplc_cid = jQuery("#wplc_admin_cid").val();
|
1029 |
var wplc_chat = wplc_strip(document.getElementById('wplc_admin_chatmsg').value);
|
1030 |
-
var wplc_name = "a"+"d"+"m"+"i"+"n";
|
1031 |
jQuery("#wplc_admin_chatmsg").val('');
|
1032 |
-
|
1033 |
-
if(wplc_display_name == 'display'){
|
1034 |
-
jQuery("#admin_chat_box_area_"+wplc_cid).append("<span class='wplc-admin-message'>"+wplc_image+" <strong>"+wplc_name+"</strong>:<hr/ style='margin-bottom: 0px;'>"+wplc_chat+"</span><br /><div class='wplc-clear-float-message'></div>");
|
1035 |
} else {
|
1036 |
-
jQuery("#admin_chat_box_area_"+wplc_cid).append("<span class='wplc-admin-message'>"+wplc_chat+"</span><br /><div class='wplc-clear-float-message'></div>");
|
1037 |
-
}
|
1038 |
-
var height = jQuery('#admin_chat_box_area_'+wplc_cid)[0].scrollHeight;
|
1039 |
-
jQuery('#admin_chat_box_area_'+wplc_cid).scrollTop(height);
|
1040 |
-
|
1041 |
|
1042 |
var data = {
|
1043 |
-
|
1044 |
-
|
1045 |
-
|
1046 |
-
|
1047 |
};
|
1048 |
-
jQuery.post(wplc_ajaxurl, data, function(response) {
|
1049 |
-
|
1050 |
-
|
1051 |
-
|
1052 |
-
|
1053 |
-
|
1054 |
-
|
1055 |
-
|
1056 |
});
|
1057 |
|
1058 |
|
1059 |
-
});
|
1060 |
-
|
1061 |
-
|
1062 |
-
|
1063 |
-
|
1064 |
-
|
1065 |
-
|
1066 |
-
|
1067 |
});
|
1068 |
</script>
|
1069 |
<?php
|
1070 |
-
|
1071 |
}
|
|
|
1072 |
function wplc_activate() {
|
1073 |
wplc_handle_db();
|
1074 |
if (!get_option("WPLC_SETTINGS")) {
|
1075 |
-
$wplc_alt_text = __("Please click \'Start Chat\' to initiate a chat with an agent","wplivechat");
|
1076 |
-
add_option('WPLC_SETTINGS',
|
1077 |
-
|
1078 |
-
|
1079 |
-
|
1080 |
-
|
1081 |
-
|
1082 |
-
|
1083 |
-
|
1084 |
-
|
1085 |
-
|
1086 |
-
|
1087 |
-
));
|
1088 |
}
|
1089 |
-
add_option("WPLC_HIDE_CHAT","true");
|
1090 |
add_option("WPLC_FIRST_TIME", true);
|
1091 |
-
|
1092 |
}
|
1093 |
|
1094 |
-
|
1095 |
function wplc_handle_db() {
|
1096 |
-
|
1097 |
-
|
1098 |
-
|
1099 |
-
|
1100 |
|
1101 |
$sql = "
|
1102 |
-
CREATE TABLE "
|
1103 |
id int(11) NOT NULL AUTO_INCREMENT,
|
1104 |
timestamp datetime NOT NULL,
|
1105 |
name varchar(700) NOT NULL,
|
@@ -1113,11 +1220,11 @@ function wplc_handle_db() {
|
|
1113 |
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
|
1114 |
";
|
1115 |
|
1116 |
-
|
1117 |
-
|
1118 |
|
1119 |
-
|
1120 |
-
CREATE TABLE '
|
1121 |
id int(11) NOT NULL AUTO_INCREMENT,
|
1122 |
chat_sess_id int(11) NOT NULL,
|
1123 |
`from` varchar(150) CHARACTER SET utf8 NOT NULL,
|
@@ -1129,118 +1236,143 @@ function wplc_handle_db() {
|
|
1129 |
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
|
1130 |
';
|
1131 |
|
1132 |
-
|
1133 |
-
|
1134 |
-
|
1135 |
-
|
1136 |
-
|
1137 |
}
|
1138 |
|
1139 |
function wplc_add_user_stylesheet() {
|
1140 |
-
wp_register_style(
|
1141 |
-
wp_enqueue_style(
|
1142 |
-
wp_register_style(
|
1143 |
-
wp_enqueue_style(
|
1144 |
-
|
1145 |
}
|
|
|
1146 |
function wplc_add_admin_stylesheet() {
|
1147 |
if (isset($_GET['page']) && ($_GET['page'] == 'wplivechat-menu' || $_GET['page'] == 'wplivechat-menu-settings' || $_GET['page'] == 'wplivechat-menu-offline-messages')) {
|
1148 |
-
wp_register_style(
|
1149 |
-
wp_enqueue_style(
|
1150 |
-
wp_register_style(
|
1151 |
-
wp_enqueue_style(
|
1152 |
-
wp_register_style(
|
1153 |
-
wp_enqueue_style(
|
1154 |
}
|
1155 |
-
|
1156 |
}
|
1157 |
|
1158 |
if (isset($_GET['page']) && $_GET['page'] == 'wplivechat-menu-settings') {
|
1159 |
add_action('admin_print_scripts', 'wplc_admin_scripts_basic');
|
1160 |
}
|
|
|
1161 |
function wplc_admin_scripts_basic() {
|
1162 |
-
|
1163 |
if (isset($_GET['page']) && $_GET['page'] == "wplivechat-menu-settings") {
|
1164 |
-
wp_enqueue_script(
|
1165 |
wp_enqueue_script('jquery-ui-core');
|
1166 |
|
1167 |
-
wp_register_script('my-wplc-color', plugins_url('js/jscolor.js',__FILE__), false, '1.4.1', false);
|
1168 |
wp_enqueue_script('my-wplc-color');
|
1169 |
-
wp_enqueue_script(
|
1170 |
-
wp_register_script('my-wplc-tabs', plugins_url('js/wplc_tabs.js',__FILE__), array('jquery-ui-core'), '', true);
|
1171 |
wp_enqueue_script('my-wplc-tabs');
|
1172 |
}
|
1173 |
}
|
1174 |
|
1175 |
-
|
1176 |
function wplc_admin_settings_layout() {
|
1177 |
wplc_settings_page_basic();
|
1178 |
}
|
|
|
1179 |
function wplc_admin_history_layout() {
|
1180 |
-
echo"<div class=\"wrap\"><div id=\"icon-edit\" class=\"icon32 icon32-posts-post\"><br></div><h2>".__("WP Live Chat History","wplivechat")."</h2>";
|
1181 |
if (function_exists("wplc_register_pro_version")) {
|
1182 |
wplc_pro_admin_display_history();
|
1183 |
-
}
|
1184 |
-
|
1185 |
-
echo "<br /><br >This option is only available in the <a href=\"http://www.wp-livechat.com/purchase-pro/?utm_source=plugin&utm_medium=link&utm_campaign=history1\" title=\"".__("Pro Add-on","wplivechat")."\" target=\"_BLANK\">Pro Add-on</a> of WP Live Chat. <a href=\"http://www.wp-livechat.com/purchase-pro/?utm_source=plugin&utm_medium=link&utm_campaign=history2\" title=\"".__("Pro Add-on","wplivechat")."\" target=\"_BLANK\">Get it now for only $19.95 once off!</a>";
|
1186 |
}
|
1187 |
}
|
1188 |
|
1189 |
function wplc_admin_missed_chats() {
|
1190 |
-
echo "<div class=\"wrap\"><div id=\"icon-edit\" class=\"icon32 icon32-posts-post\"><br></div><h2>".__("WP Live Chat Missed Chats","wplivechat")."</h2>";
|
1191 |
-
if(function_exists('wplc_admin_display_missed_chats')){
|
1192 |
wplc_admin_display_missed_chats();
|
1193 |
-
}
|
1194 |
}
|
1195 |
|
1196 |
-
function wplc_admin_offline_messages(){
|
1197 |
-
echo"<div class=\"wrap\"><div id=\"icon-edit\" class=\"icon32 icon32-posts-post\"><br></div><h2>".__("WP Live Chat Offline Messages","wplivechat")."</h2>";
|
1198 |
if (function_exists("wplc_register_pro_version")) {
|
1199 |
-
if(function_exists('wplc_pro_admin_display_offline_messages')){
|
1200 |
wplc_pro_admin_display_offline_messages();
|
1201 |
} else {
|
1202 |
-
echo "<div class='updated'><p>".__('Please update to the latest version of WP Live Chat Support Pro to start recording any offline messages.', 'wplivechat')."</p></div>";
|
1203 |
}
|
1204 |
-
}
|
1205 |
-
|
1206 |
-
echo "<br /><br >This option is only available in the <a href=\"http://www.wp-livechat.com/purchase-pro/?utm_source=plugin&utm_medium=link&utm_campaign=missed_chats1\" title=\"".__("Pro Add-on","wplivechat")."\" target=\"_BLANK\">Pro Add-on</a> of WP Live Chat. <a href=\"http://www.wp-livechat.com/purchase-pro/?utm_source=plugin&utm_medium=link&utm_campaign=missed_chats2\" title=\"".__("Pro Add-on","wplivechat")."\" target=\"_BLANK\">Get it now for only $19.95 once off!</a>";
|
1207 |
}
|
1208 |
}
|
1209 |
|
1210 |
function wplc_settings_page_basic() {
|
1211 |
-
if(function_exists("wplc_register_pro_version")){
|
1212 |
wplc_settings_page_pro();
|
1213 |
} else {
|
1214 |
include 'includes/settings_page.php';
|
1215 |
}
|
1216 |
}
|
|
|
1217 |
function wplc_head_basic() {
|
1218 |
global $wpdb;
|
1219 |
|
1220 |
-
if (isset($_POST['wplc_save_settings'])){
|
1221 |
-
|
1222 |
-
if (isset($_POST['wplc_settings_align'])) {
|
1223 |
-
|
1224 |
-
|
1225 |
-
if (isset($_POST['
|
1226 |
-
|
1227 |
-
|
1228 |
-
if (isset($_POST['
|
1229 |
-
|
1230 |
-
|
1231 |
-
if (isset($_POST['
|
1232 |
-
|
1233 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1234 |
update_option('WPLC_SETTINGS', $wplc_data);
|
1235 |
-
if (isset($_POST['wplc_hide_chat'])) {
|
1236 |
-
|
1237 |
-
|
1238 |
-
|
|
|
|
|
1239 |
echo "<div class='updated'>";
|
1240 |
-
_e("Your settings have been saved.","wplivechat");
|
1241 |
echo "</div>";
|
1242 |
}
|
1243 |
-
if(isset($_POST['action']) && $_POST['action'] == "wplc_submit_find_us"){
|
1244 |
if (function_exists('curl_version')) {
|
1245 |
$request_url = "http://www.wp-livechat.com/apif/rec.php";
|
1246 |
$ch = curl_init();
|
@@ -1251,12 +1383,12 @@ function wplc_head_basic() {
|
|
1251 |
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
|
1252 |
$output = curl_exec($ch);
|
1253 |
curl_close($ch);
|
1254 |
-
}
|
1255 |
-
echo "<div class=\"updated\"><p>". __("Thank You for your feedback!","wplivechat")."</p></div>";
|
1256 |
}
|
1257 |
if (isset($_POST['wplc_nl_send_feedback'])) {
|
1258 |
-
if(wp_mail("nick@wp-livechat.com", "Plugin feedback", "Name: "
|
1259 |
-
|
1260 |
} else {
|
1261 |
|
1262 |
if (function_exists('curl_version')) {
|
@@ -1269,36 +1401,34 @@ function wplc_head_basic() {
|
|
1269 |
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
|
1270 |
$output = curl_exec($ch);
|
1271 |
curl_close($ch);
|
1272 |
-
echo "<div id=\"message\" class=\"updated\"><p>".__("Thank you for your feedback. We will be in touch soon","wplc")."</p></div>";
|
1273 |
-
}
|
1274 |
-
else {
|
1275 |
echo "<div id=\"message\" class=\"error\">";
|
1276 |
-
echo "<p>".__("There was a problem sending your feedback. Please log your feedback on ","wplc")."<a href='http://wp-livechat.com/forums/forum/support/' target='_BLANK'>http://wp-livechat.com/forums/forum/support/</a></p>";
|
1277 |
echo "</div>";
|
1278 |
}
|
1279 |
}
|
1280 |
}
|
1281 |
-
|
1282 |
}
|
1283 |
|
1284 |
function wplc_logout() {
|
1285 |
delete_transient('wplc_is_admin_logged_in');
|
1286 |
}
|
1287 |
-
add_action('wp_logout', 'wplc_logout');
|
1288 |
|
|
|
1289 |
|
1290 |
function wplc_get_home_path() {
|
1291 |
-
$home = get_option(
|
1292 |
-
$siteurl = get_option(
|
1293 |
-
if (
|
1294 |
-
|
1295 |
-
|
1296 |
-
|
1297 |
-
|
1298 |
} else {
|
1299 |
-
|
1300 |
}
|
1301 |
-
return str_replace(
|
1302 |
}
|
1303 |
|
1304 |
/* Error Checks */
|
1 |
<?php
|
2 |
/*
|
3 |
+
Plugin Name: WP Live Chat Support
|
4 |
+
Plugin URI: http://www.wp-livechat.com
|
5 |
+
Description: The easiest to use website live chat plugin. Let your visitors chat with you and increase sales conversion rates with WP Live Chat Support. No third party connection required!
|
6 |
+
Version: 4.2.6
|
7 |
+
Author: WP-LiveChat
|
8 |
+
Author URI: http://www.wp-livechat.com
|
9 |
+
*/
|
10 |
|
11 |
|
12 |
+
/* 4.2.6 2015-01-29 - Low Priority
|
13 |
+
* New feature: Live Chat dashboard has a new layout and design
|
14 |
+
* Code Improvement: jQuery Cookie updated to the latest version
|
15 |
+
* Code Improvement: More Live Chat strings are now translatable
|
16 |
+
* New Live Chat Translation added:
|
17 |
+
* Spanish (Thank you Ana Ayel�n Mart�nez)
|
18 |
+
*
|
19 |
+
*
|
20 |
+
* 4.2.5 2015-01-21 - Low Priority
|
21 |
* New Feature: You can now view any live chats you have missed
|
22 |
* New Pro Feature: You can record offline messages when live chat is not online
|
23 |
* Code Improvements: Labels added to buttons
|
122 |
*
|
123 |
*/
|
124 |
|
|
|
|
|
125 |
//error_reporting(E_ERROR);
|
126 |
global $wplc_version;
|
127 |
global $wplc_p_version;
|
131 |
global $wplc_tblname_msgs;
|
132 |
$wplc_tblname_chats = $wpdb->prefix . "wplc_chat_sessions";
|
133 |
$wplc_tblname_msgs = $wpdb->prefix . "wplc_chat_msgs";
|
134 |
+
$wplc_version = "4.2.6";
|
135 |
|
136 |
+
define('WPLC_BASIC_PLUGIN_DIR', dirname(__FILE__));
|
137 |
+
define('WPLC_BASIC_PLUGIN_URL', plugins_url() . "/wp-live-chat-support/");
|
138 |
global $wplc_basic_plugin_url;
|
139 |
+
$wplc_basic_plugin_url = get_option('siteurl') . "/wp-content/plugins/wp-live-chat-support/";
|
140 |
+
require_once (plugin_dir_path(__FILE__) . "functions.php");
|
141 |
add_action('wp_ajax_wplc_admin_set_transient', 'wplc_action_callback');
|
142 |
+
add_action('init', 'wplc_version_control');
|
143 |
add_action('wp_footer', 'wplc_display_box');
|
144 |
|
145 |
+
add_action('init', 'wplc_init');
|
146 |
|
147 |
if (function_exists('wplc_head_pro')) {
|
148 |
add_action('admin_head', 'wplc_head_pro');
|
149 |
+
} else {
|
150 |
add_action('admin_head', 'wplc_head_basic');
|
151 |
}
|
152 |
|
153 |
+
add_action('wp_enqueue_scripts', 'wplc_add_user_stylesheet');
|
154 |
add_action('admin_enqueue_scripts', 'wplc_add_admin_stylesheet');
|
155 |
|
156 |
+
if (function_exists('wplc_admin_menu_pro')) {
|
157 |
add_action('admin_menu', 'wplc_admin_menu_pro');
|
158 |
} else {
|
159 |
add_action('admin_menu', 'wplc_admin_menu');
|
160 |
}
|
161 |
add_action('admin_head', 'wplc_superadmin_javascript');
|
162 |
+
register_activation_hook(__FILE__, 'wplc_activate');
|
163 |
|
164 |
|
165 |
+
if (!class_exists('Mobile_Detect')) {
|
166 |
+
require_once (plugin_dir_path(__FILE__) . 'includes/Mobile_Detect.php');
|
167 |
}
|
168 |
|
169 |
$wplc_detect_device = new Mobile_Detect;
|
170 |
+
|
171 |
$wplc_is_mobile = $wplc_detect_device->isMobile();
|
172 |
|
173 |
+
function wplc_basic_check() {
|
174 |
// check if basic exists if pro is installed
|
175 |
}
|
176 |
+
|
177 |
function wplc_init() {
|
178 |
+
$plugin_dir = basename(dirname(__FILE__)) . "/languages/";
|
179 |
+
load_plugin_textdomain('wplivechat', false, $plugin_dir);
|
180 |
}
|
181 |
|
|
|
182 |
function wplc_version_control() {
|
183 |
global $wplc_version;
|
184 |
+
|
185 |
|
186 |
$current_version = get_option("wplc_current_version");
|
187 |
if (!isset($current_version) || $current_version != $wplc_version) {
|
188 |
wplc_handle_db();
|
189 |
+
update_option("wplc_current_version", $wplc_version);
|
190 |
+
|
191 |
$wplc_settings = get_option("WPLC_SETTINGS");
|
192 |
+
if (!isset($wplc_settings['wplc_require_user_info'])) {
|
193 |
+
$wplc_settings['wplc_require_user_info'] = "1";
|
194 |
+
}
|
195 |
+
if (!isset($wplc_settings['wplc_loggedin_user_info'])) {
|
196 |
+
$wplc_settings['wplc_loggedin_user_info'] = "1";
|
197 |
+
}
|
198 |
+
if (!isset($wplc_settings['wplc_user_alternative_text'])) {
|
199 |
+
$wplc_alt_text = __("Please click \'Start Chat\' to initiate a chat with an agent", "wplivechat");
|
200 |
+
$wplc_settings['wplc_user_alternative_text'] = $wplc_alt_text;
|
201 |
+
}
|
202 |
+
if (!isset($wplc_settings['wplc_enabled_on_mobile'])) {
|
203 |
+
$wplc_settings['wplc_enabled_on_mobile'] = "1";
|
204 |
+
}
|
205 |
+
update_option("WPLC_SETTINGS", $wplc_settings);
|
206 |
}
|
|
|
|
|
207 |
}
|
208 |
+
|
209 |
function wplc_action_callback() {
|
210 |
global $wpdb;
|
211 |
global $wplc_tblname_chats;
|
212 |
+
$check = check_ajax_referer('wplc', 'security');
|
213 |
|
214 |
if ($check == 1) {
|
215 |
if ($_POST['action'] == "wplc_admin_set_transient") {
|
216 |
+
set_transient("wplc_is_admin_logged_in", "1", 70);
|
|
|
217 |
}
|
218 |
}
|
219 |
die(); // this is required to return a proper result
|
|
|
220 |
}
|
221 |
|
222 |
+
function wplc_feedback_page_include() {
|
223 |
include 'includes/feedback-page.php';
|
224 |
}
|
225 |
|
226 |
function wplc_admin_menu() {
|
227 |
+
$wplc_mainpage = add_menu_page('WP Live Chat', __('Live Chat', 'wplivechat'), 'manage_options', 'wplivechat-menu', 'wplc_admin_menu_layout');
|
228 |
+
add_submenu_page('wplivechat-menu', __('Settings', 'wplivechat'), __('Settings', 'wplivechat'), 'manage_options', 'wplivechat-menu-settings', 'wplc_admin_settings_layout');
|
229 |
+
add_submenu_page('wplivechat-menu', __('History', 'wplivechat'), __('History', 'wplivechat'), 'manage_options', 'wplivechat-menu-history', 'wplc_admin_history_layout');
|
230 |
+
add_submenu_page('wplivechat-menu', __('Missed Chats', 'wplivechat'), __('Missed Chats', 'wplivechat'), 'manage_options', 'wplivechat-menu-missed-chats', 'wplc_admin_missed_chats');
|
231 |
+
add_submenu_page('wplivechat-menu', __('Feedback', 'wplivechat'), __('Feedback', 'wplivechat'), 'manage_options', 'wplivechat-menu-feedback-page', 'wplc_feedback_page_include');
|
232 |
}
|
233 |
+
|
234 |
+
add_action('wp_head', 'wplc_user_top_js');
|
235 |
+
|
236 |
function wplc_user_top_js() {
|
237 |
echo "<!-- DEFINING DO NOT CACHE -->";
|
238 |
+
if (!defined('DONOTCACHEPAGE')) {
|
239 |
+
define('DONOTCACHEPAGE', true);
|
240 |
+
}
|
241 |
+
if (!defined('DONOTCACHEDB')) {
|
242 |
+
define('DONOTCACHEDB', true);
|
243 |
+
}
|
244 |
$ajax_nonce = wp_create_nonce("wplc");
|
245 |
+
wp_register_script('wplc-user-jquery-cookie', plugins_url('/js/jquery-cookie.js', __FILE__), array('jquery-ui-draggable'));
|
246 |
+
wp_enqueue_script('wplc-user-jquery-cookie');
|
247 |
$wplc_settings = get_option("WPLC_SETTINGS");
|
248 |
+
?>
|
|
|
249 |
|
250 |
+
<script type="text/javascript">
|
251 |
<?php if (!function_exists("wplc_register_pro_version")) { ?>
|
252 |
+
var wplc_ajaxurl = '<?php echo plugins_url('/ajax.php', __FILE__); ?>';
|
|
|
|
|
|
|
|
|
|
|
|
|
253 |
|
254 |
+
<?php } ?>
|
255 |
+
var wplc_nonce = '<?php echo $ajax_nonce; ?>';
|
256 |
+
</script>
|
257 |
+
<?php
|
258 |
}
|
259 |
|
260 |
function wplc_draw_user_box() {
|
261 |
global $wplc_is_mobile;
|
262 |
+
|
263 |
$wplc_settings = get_option("WPLC_SETTINGS");
|
264 |
+
|
265 |
+
if (isset($wplc_settings['wplc_display_to_loggedin_only']) && $wplc_settings['wplc_display_to_loggedin_only'] == 1) {
|
266 |
/* Only show to users that are logged in */
|
267 |
+
if (!is_user_logged_in()) {
|
268 |
return;
|
269 |
}
|
270 |
+
}
|
271 |
/* Show to all users */
|
272 |
+
if ($wplc_is_mobile && !isset($wplc_settings['wplc_enabled_on_mobile']) && $wplc_settings['wplc_enabled_on_mobile'] != 1) {
|
273 |
+
return;
|
274 |
+
}
|
275 |
+
if ($wplc_settings["wplc_settings_enabled"] == 2) {
|
276 |
+
return;
|
277 |
+
}
|
278 |
|
279 |
+
if (isset($wplc_settings['wplc_display_name']) && $wplc_settings['wplc_display_name'] == 1) {
|
280 |
+
$wplc_display = 'display';
|
281 |
+
} else {
|
282 |
+
$wplc_display = 'hide';
|
283 |
+
}
|
284 |
|
285 |
+
wp_register_script('wplc-user-script', plugins_url('/js/wplc_u.js', __FILE__));
|
286 |
+
wp_enqueue_script('wplc-user-script');
|
287 |
|
288 |
wp_localize_script('wplc-user-script', 'wplc_hide_chat', null);
|
289 |
wp_localize_script('wplc-user-script', 'wplc_plugin_url', plugins_url());
|
290 |
wp_localize_script('wplc-user-script', 'wplc_display_name', $wplc_display);
|
291 |
|
292 |
+
if (isset($_COOKIE['wplc_email']) && $_COOKIE['wplc_email'] != "") {
|
293 |
+
$wplc_user_gravatar = md5(strtolower(trim($_COOKIE['wplc_email'])));
|
294 |
+
} else {
|
295 |
+
$wplc_user_gravatar = "";
|
296 |
+
}
|
297 |
|
298 |
+
if ($wplc_user_gravatar != "") {
|
299 |
$wplc_grav_image = "<img src='http://www.gravatar.com/avatar/$wplc_user_gravatar?s=20' />";
|
300 |
} else {
|
301 |
$wplc_grav_image = "";
|
302 |
}
|
303 |
wp_localize_script('wplc-user-script', 'wplc_gravatar_image', $wplc_grav_image);
|
304 |
|
305 |
+
wp_enqueue_script('jquery');
|
306 |
+
wp_enqueue_script('jquery-ui-core');
|
307 |
+
wp_enqueue_script('jquery-ui-draggable');
|
308 |
wplc_output_box();
|
|
|
309 |
}
|
310 |
|
311 |
function wplc_output_box() {
|
312 |
+
global $wplc_is_mobile;
|
313 |
$wplc_class = "";
|
314 |
$wplc_settings = get_option("WPLC_SETTINGS");
|
|
|
|
|
|
|
|
|
315 |
|
316 |
+
if ($wplc_is_mobile && !isset($wplc_settings['wplc_enabled_on_mobile']) && $wplc_settings['wplc_enabled_on_mobile'] != 1) {
|
317 |
+
return;
|
318 |
+
}
|
319 |
+
|
320 |
+
if ($wplc_settings["wplc_settings_enabled"] == 2) {
|
321 |
+
return;
|
322 |
+
}
|
323 |
+
|
324 |
+
if ($wplc_settings["wplc_settings_align"] == 1) {
|
325 |
$original_pos = "bottom_left";
|
326 |
+
$wplc_box_align = "left:100px; bottom:0px;";
|
327 |
+
} else if ($wplc_settings["wplc_settings_align"] == 2) {
|
|
|
328 |
$original_pos = "bottom_right";
|
329 |
+
$wplc_box_align = "right:100px; bottom:0px;";
|
330 |
+
} else if ($wplc_settings["wplc_settings_align"] == 3) {
|
|
|
331 |
$original_pos = "left";
|
332 |
$wplc_box_align = "left:0; bottom:100px;";
|
333 |
$wplc_class = "wplc_left";
|
334 |
+
} else if ($wplc_settings["wplc_settings_align"] == 4) {
|
335 |
$original_pos = "right";
|
336 |
$wplc_box_align = "right:0; bottom:100px;";
|
337 |
$wplc_class = "wplc_right";
|
338 |
}
|
339 |
+
if ($wplc_settings["wplc_settings_fill"]) {
|
340 |
+
$wplc_settings_fill = "#" . $wplc_settings["wplc_settings_fill"];
|
341 |
+
} else {
|
342 |
+
$wplc_settings_fill = "#ed832f";
|
343 |
+
}
|
344 |
+
if ($wplc_settings["wplc_settings_font"]) {
|
345 |
+
$wplc_settings_font = "#" . $wplc_settings["wplc_settings_font"];
|
346 |
+
} else {
|
347 |
+
$wplc_settings_font = "#FFFFFF";
|
348 |
+
}
|
349 |
|
350 |
$wplc_is_admin_logged_in = get_transient("wplc_is_admin_logged_in");
|
351 |
if (!function_exists("wplc_register_pro_version") && $wplc_is_admin_logged_in != 1) {
|
352 |
return "";
|
353 |
+
}
|
354 |
+
?>
|
355 |
+
<div id="wp-live-chat" style="display:none; <?php echo $wplc_box_align; ?>; " class="<?php echo $wplc_class ?> wplc_close" original_pos="<?php echo $original_pos ?>" wplc-auto-pop-up="<?php if (isset($wplc_settings['wplc_auto_pop_up'])) {
|
356 |
+
echo $wplc_settings['wplc_auto_pop_up'];
|
357 |
+
} ?>">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
358 |
|
|
|
|
|
359 |
|
360 |
+
<?php
|
361 |
+
if (function_exists("wplc_register_pro_version")) {
|
362 |
+
wplc_pro_output_box();
|
363 |
+
} else {
|
364 |
+
?>
|
365 |
+
|
366 |
+
|
367 |
+
<div class="wp-live-chat-wraper">
|
368 |
+
<div id="wp-live-chat-header" style="background-color: <?php echo $wplc_settings_fill; ?> !important; color: <?php echo $wplc_settings_font; ?> !important; ">
|
369 |
|
370 |
+
<i id="wp-live-chat-minimize" class="fa fa-minus" style="display:none;" ></i>
|
371 |
+
<i id="wp-live-chat-close" class="fa fa-times" style="display:none;" ></i>
|
372 |
+
|
373 |
+
<div id="wp-live-chat-1" >
|
374 |
+
<div style="display:block; ">
|
375 |
+
<strong><?php _e("Questions?", "wplivechat") ?></strong> <?php _e("Chat with us", "wplivechat") ?>
|
376 |
+
</div>
|
377 |
</div>
|
378 |
</div>
|
|
|
|
|
|
|
379 |
|
380 |
+
<div>
|
381 |
|
382 |
+
<div id="wp-live-chat-2" style="display:none;">
|
383 |
+
|
384 |
+
<div id="wp-live-chat-2-info">
|
385 |
+
<strong><?php _e('Start Live Chat', 'wplivechat'); ?></strong>
|
386 |
+
</div>
|
387 |
+
<?php
|
388 |
+
$wplc_settings = get_option("WPLC_SETTINGS");
|
389 |
+
|
390 |
+
if (isset($wplc_settings['wplc_loggedin_user_info']) && $wplc_settings['wplc_loggedin_user_info'] == 1) {
|
391 |
+
$wplc_use_loggedin_user_details = 1;
|
392 |
+
} else {
|
393 |
+
$wplc_use_loggedin_user_details = 0;
|
394 |
+
}
|
395 |
+
|
396 |
+
$wplc_loggedin_user_name = "";
|
397 |
+
$wplc_loggedin_user_email = "";
|
398 |
+
|
399 |
+
if ($wplc_use_loggedin_user_details == 1) {
|
400 |
+
global $current_user;
|
401 |
+
|
402 |
+
if ($current_user->data != null) {
|
403 |
+
//Logged in. Get name and email
|
404 |
+
$wplc_loggedin_user_name = $current_user->user_nicename;
|
405 |
+
$wplc_loggedin_user_email = $current_user->user_email;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
406 |
}
|
407 |
+
} else {
|
408 |
+
$wplc_loggedin_user_name = '';
|
409 |
+
$wplc_loggedin_user_email = '';
|
410 |
+
}
|
411 |
+
|
412 |
+
if (isset($wplc_settings['wplc_require_user_info']) && $wplc_settings['wplc_require_user_info'] == 1) {
|
413 |
+
$wplc_ask_user_details = 1;
|
414 |
+
} else {
|
415 |
+
$wplc_ask_user_details = 0;
|
416 |
+
}
|
417 |
+
|
418 |
+
if ($wplc_ask_user_details == 1) {
|
419 |
//Ask the user to enter name and email
|
420 |
+
?>
|
421 |
+
<input type="text" name="wplc_name" id="wplc_name" value="<?php echo $wplc_loggedin_user_name; ?>" placeholder="<?php _e("Name", "wplivechat"); ?>" />
|
422 |
+
<input type="text" name="wplc_email" id="wplc_email" wplc_hide="0" value="<?php echo $wplc_loggedin_user_email; ?>" placeholder="<?php _e("Email", "wplivechat"); ?>" />
|
423 |
+
<?php
|
424 |
+
} else {
|
425 |
+
//Dont ask the user
|
426 |
+
echo '<div style="padding: 7px; text-align: center;">';
|
427 |
+
if (isset($wplc_settings['wplc_user_alternative_text'])) {
|
428 |
+
echo stripslashes($wplc_settings['wplc_user_alternative_text']);
|
429 |
+
}
|
430 |
+
echo '</div>';
|
431 |
+
|
432 |
+
$wplc_random_user_number = rand(0, 9) . rand(0, 9) . rand(0, 9) . rand(0, 9) . rand(0, 9) . rand(0, 9);
|
433 |
// $wplc_loggedin_user_email = $wplc_random_user_number."@".$wplc_random_user_number.".com";
|
434 |
+
?>
|
435 |
+
<input type="hidden" name="wplc_name" id="wplc_name" value="<?php if ($wplc_loggedin_user_name != '') {
|
436 |
+
echo $wplc_loggedin_user_name;
|
437 |
+
} else {
|
438 |
+
echo 'user' . $wplc_random_user_number;
|
439 |
+
} ?>" />
|
440 |
+
<input type="hidden" name="wplc_email" id="wplc_email" wplc_hide="1" value="<?php if ($wplc_loggedin_user_email != '' && $wplc_loggedin_user_email != null) {
|
441 |
+
echo $wplc_loggedin_user_email;
|
442 |
+
} else {
|
443 |
+
echo $wplc_random_user_number . '@' . $wplc_random_user_number . '.com';
|
444 |
+
} ?>" />
|
445 |
+
<?php
|
446 |
+
}
|
447 |
+
?>
|
448 |
+
<input id="wplc_start_chat_btn" type="button" value="<?php _e("Start Chat", "wplivechat"); ?>" style="background-color: <?php echo $wplc_settings_fill; ?> !important; color: <?php echo $wplc_settings_font; ?> !important;"/>
|
449 |
|
450 |
|
451 |
|
452 |
+
</div>
|
453 |
|
454 |
+
<div id="wp-live-chat-3" style="display:none;">
|
455 |
+
<p><?php _e("Connecting you to a sales person. Please be patient.", "wplivechat") ?></p>
|
456 |
+
</div>
|
457 |
+
<div id="wp-live-chat-react" style="display:none;">
|
458 |
+
<p><?php _e("Reactivating your previous chat...", "wplivechat") ?></p>
|
459 |
+
</div>
|
460 |
+
<div id="wp-live-chat-4" style="display:none;">
|
461 |
+
<div id="wplc_sound_update" style='height:0; width:0; display:none; border:0;'></div>
|
462 |
+
<div id="wplc_chatbox"></div>
|
463 |
+
<p style="text-align:center; font-size:11px;"><?php _e("Press ENTER to send your message", "wplivechat") ?></p>
|
464 |
+
<p>
|
465 |
+
<input type="text" name="wplc_chatmsg" id="wplc_chatmsg" value="" />
|
466 |
+
<input type="hidden" name="wplc_cid" id="wplc_cid" value="" />
|
467 |
+
<input id="wplc_send_msg" type="button" value="<?php _e("Send", "wplivechat"); ?>" style="display:none;" />
|
468 |
+
</p>
|
469 |
+
</div>
|
470 |
</div>
|
471 |
+
</div>
|
472 |
+
</div>
|
473 |
+
<?php
|
|
|
474 |
}
|
475 |
}
|
476 |
|
477 |
function wplc_display_box() {
|
478 |
$wplc_is_admin_logged_in = get_transient("wplc_is_admin_logged_in");
|
479 |
+
if ($wplc_is_admin_logged_in != 1) {
|
480 |
+
echo "<!-- wplc a-n-c -->";
|
481 |
+
}
|
482 |
+
|
483 |
/* do not show if pro is outdated */
|
484 |
global $wplc_pro_version;
|
485 |
if (isset($wplc_pro_version)) {
|
486 |
$float_version = floatval($wplc_pro_version);
|
487 |
+
if ($float_version < 4 || $wplc_pro_version == "4.1.0" || $wplc_pro_version == "4.1.1") {
|
488 |
+
return;
|
489 |
+
}
|
490 |
}
|
|
|
|
|
|
|
|
|
491 |
|
492 |
+
if (function_exists("wplc_register_pro_version")) {
|
493 |
+
wplc_pro_draw_user_box();
|
494 |
+
} else {
|
495 |
+
wplc_draw_user_box();
|
496 |
+
}
|
497 |
+
}
|
498 |
|
499 |
function wplc_admin_display_chat($cid) {
|
500 |
global $wpdb;
|
501 |
global $wplc_tblname_msgs;
|
502 |
$results = $wpdb->get_results(
|
503 |
+
"
|
504 |
SELECT *
|
505 |
FROM $wplc_tblname_msgs
|
506 |
WHERE `chat_sess_id` = '$cid'
|
512 |
$from = $result->from;
|
513 |
$msg = stripslashes($result->msg);
|
514 |
$msg_hist .= "$from: $msg<br />";
|
|
|
515 |
}
|
516 |
echo $msg_hist;
|
517 |
}
|
518 |
+
|
519 |
function wplc_admin_accept_chat($cid) {
|
520 |
+
wplc_change_chat_status($cid, 3);
|
521 |
return true;
|
|
|
522 |
}
|
|
|
523 |
|
524 |
+
add_action('admin_head', 'wplc_update_chat_statuses');
|
525 |
|
526 |
function wplc_superadmin_javascript() {
|
527 |
+
|
528 |
if (isset($_GET['page']) && $_GET['page'] == 'wplivechat-menu') {
|
529 |
+
|
530 |
+
if (!isset($_GET['action'])) {
|
531 |
+
if (function_exists("wplc_register_pro_version")) {
|
532 |
+
wplc_pro_admin_javascript();
|
533 |
} else {
|
534 |
+
wplc_admin_javascript();
|
535 |
}
|
536 |
+
} // main page
|
537 |
+
else if (isset($_GET['action'])) {
|
538 |
+
if (function_exists("wplc_register_pro_version")) {
|
539 |
+
wplc_return_pro_admin_chat_javascript($_GET['cid']);
|
|
|
540 |
} else {
|
541 |
+
wplc_return_admin_chat_javascript($_GET['cid']);
|
|
|
|
|
542 |
}
|
543 |
+
}
|
|
|
|
|
544 |
}
|
545 |
+
|
546 |
$ajax_nonce = wp_create_nonce("wplc");
|
547 |
?>
|
548 |
<script type="text/javascript">
|
549 |
+
jQuery(document).ready(function () {
|
550 |
|
551 |
|
552 |
var wplc_set_transient = null;
|
553 |
+
|
554 |
+
wplc_set_transient = setInterval(function () {
|
555 |
+
wpcl_admin_set_transient();
|
556 |
+
}, 60000);
|
557 |
wpcl_admin_set_transient();
|
558 |
function wpcl_admin_set_transient() {
|
559 |
var data = {
|
560 |
+
action: 'wplc_admin_set_transient',
|
561 |
+
security: '<?php echo $ajax_nonce; ?>'
|
562 |
+
|
563 |
};
|
564 |
+
jQuery.post(ajaxurl, data, function (response) {
|
565 |
//console.log("wplc_admin_set_transient");
|
566 |
});
|
567 |
}
|
569 |
});
|
570 |
|
571 |
function wplc_desktop_notification() {
|
572 |
+
if (typeof Notification !== 'undefined') {
|
573 |
if (!Notification) {
|
574 |
+
return;
|
575 |
}
|
576 |
if (Notification.permission !== "granted")
|
577 |
+
Notification.requestPermission();
|
578 |
|
579 |
var wplc_desktop_notification = new Notification('New chat received', {
|
580 |
icon: wplc_notification_icon_url,
|
587 |
</script>
|
588 |
<?php
|
589 |
}
|
590 |
+
|
591 |
function wplc_admin_javascript() {
|
592 |
$ajax_nonce = wp_create_nonce("wplc");
|
593 |
?>
|
594 |
+
|
595 |
<script type="text/javascript">
|
596 |
var wplc_ajaxurl = '<?php echo plugins_url('/ajax.php', __FILE__); ?>';
|
597 |
var data = {
|
598 |
action: 'wplc_admin_long_poll',
|
599 |
security: '<?php echo $ajax_nonce; ?>',
|
600 |
+
wplc_list_visitors_data: false,
|
601 |
wplc_update_admin_chat_table: false
|
602 |
};
|
603 |
var wplc_pending_refresh = null;
|
604 |
+
|
605 |
var wplc_run = true;
|
606 |
+
|
607 |
var wplc_notification_icon_url = '<?php echo plugins_url('/images/wplc_notification_icon.png', __FILE__); ?>';
|
608 |
+
|
609 |
+
|
610 |
+
|
611 |
function wplc_call_to_server(data) {
|
612 |
+
|
613 |
+
|
614 |
jQuery.ajax({
|
615 |
url: wplc_ajaxurl,
|
616 |
+
data: data,
|
617 |
+
type: "POST",
|
618 |
+
success: function (response) {
|
619 |
+
|
620 |
//Update your dashboard gauge
|
621 |
+
if (response) {
|
622 |
+
// console.log('Running');
|
623 |
response = JSON.parse(response);
|
624 |
//console.log(response);
|
625 |
data["wplc_update_admin_chat_table"] = response['wplc_update_admin_chat_table'];
|
626 |
//console.log(response['visitors']);
|
627 |
+
|
628 |
+
if (response['action'] === "wplc_update_admin_chat") {
|
629 |
jQuery("#wplc_admin_chat_area").html(response['wplc_update_admin_chat_table']);
|
630 |
if (response['pending'] === true) {
|
631 |
+
|
632 |
var orig_title = document.getElementsByTagName("title")[0].innerHTML;
|
633 |
var ringer_cnt = 0;
|
634 |
+
wplc_pending_refresh = setInterval(function () {
|
635 |
//console.log("chat request");
|
636 |
+
|
637 |
+
if (ringer_cnt <= 0) {
|
638 |
wplc_desktop_notification();
|
639 |
}
|
640 |
+
|
641 |
ringer_cnt++;
|
642 |
+
|
643 |
+
if (ringer_cnt > 1) {
|
644 |
+
clearInterval(wplc_pending_refresh);
|
645 |
+
wplc_title_alerts4 = setTimeout(function () {
|
646 |
+
document.title = orig_title;
|
647 |
+
}, 4000);
|
648 |
return;
|
649 |
}
|
650 |
+
|
651 |
document.title = "** CHAT REQUEST **";
|
652 |
+
wplc_title_alerts2 = setTimeout(function () {
|
653 |
+
document.title = "** CHAT REQUEST **";
|
654 |
+
}, 2000);
|
655 |
+
wplc_title_alerts4 = setTimeout(function () {
|
656 |
+
document.title = orig_title;
|
657 |
+
}, 4000);
|
658 |
+
|
659 |
+
document.getElementById("wplc_sound").innerHTML = "<embed src='<?php echo plugins_url('/ring.wav', __FILE__); ?>' hidden=true autostart=true loop=false>";
|
660 |
+
|
661 |
+
// var wplc_notify_sound = '<?php echo plugins_url('/ring.wav', __FILE__); ?>';
|
662 |
+
// var wplc_notify_chat = new Audio(wplc_notify_sound);
|
663 |
+
//
|
664 |
+
// if(ringer_cnt < 5){
|
665 |
+
// wplc_notify_chat.play();
|
666 |
+
// }
|
667 |
+
|
668 |
+
}, 5000);
|
669 |
} else {
|
670 |
//console.log("end");
|
671 |
clearInterval(wplc_pending_refresh);
|
672 |
}
|
673 |
}
|
674 |
+
|
675 |
}
|
676 |
},
|
677 |
+
error: function (jqXHR, exception) {
|
678 |
if (jqXHR.status == 404) {
|
679 |
console.log('Requested page not found. [404]');
|
680 |
+
wplc_run = false;
|
681 |
} else if (jqXHR.status == 500) {
|
682 |
console.log('Internal Server Error [500].');
|
683 |
+
wplc_run = false;
|
684 |
} else if (exception === 'parsererror') {
|
685 |
console.log('Requested JSON parse failed.');
|
686 |
+
wplc_run = false;
|
687 |
} else if (exception === 'abort') {
|
688 |
console.log('Ajax request aborted.');
|
689 |
+
wplc_run = false;
|
690 |
} else {
|
691 |
console.log('Uncaught Error.\n' + jqXHR.responseText);
|
692 |
+
wplc_run = false;
|
693 |
}
|
694 |
},
|
695 |
+
complete: function (response) {
|
696 |
//console.log(wplc_run);
|
697 |
+
if (wplc_run) {
|
698 |
+
setTimeout(function () {
|
699 |
+
wplc_call_to_server(data);
|
700 |
+
}, 1500);
|
701 |
}
|
702 |
},
|
703 |
timeout: 120000
|
704 |
});
|
705 |
+
}
|
706 |
+
;
|
707 |
+
|
708 |
+
|
709 |
|
710 |
+
jQuery(document).ready(function () {
|
711 |
jQuery('body').on("click", "a", function (event) {
|
712 |
+
if (jQuery(this).hasClass('wplc_open_chat')) {
|
713 |
+
if (event.preventDefault) {
|
714 |
+
event.preventDefault();
|
715 |
} else {
|
716 |
event.returnValue = false;
|
717 |
}
|
718 |
+
window.open(jQuery(this).attr("href"), jQuery(this).attr("window-title"), "width=800,height=600,scrollbars=yes", false);
|
719 |
}
|
720 |
});
|
721 |
+
|
722 |
wplc_call_to_server(data);
|
723 |
});
|
724 |
|
728 |
<?php
|
729 |
}
|
730 |
|
731 |
+
function wplc_admin_menu_layout() {
|
732 |
+
if (function_exists("wplc_register_pro_version")) {
|
733 |
+
global $wplc_pro_version;
|
734 |
+
if (floatval($wplc_pro_version) < 4 || $wplc_pro_version == "4.1.0" || $wplc_pro_version == "4.1.1") {
|
735 |
+
?>
|
736 |
+
<div class='error below-h1'>
|
737 |
|
738 |
+
<p><?php _e("Dear Pro User", "wplivechat") ?><br /></p>
|
739 |
+
<p><?php _e("You are using an outdated version of <strong>WP Live Chat Support Pro</strong>. Please", "wplivechat") ?> <a href="http://wp-livechat.com/get-updated-version/" target=\"_BLANK\"><?php _e("update to at least version", "wplivechat") ?> 4.0</a> <?php _e("to ensure all functionality is in working order", "wplivechat") ?>.</p>
|
740 |
+
<p><strong><?php _e("You're live chat box on your website has been temporarily disabled until the Pro plugin has been updated. This is to ensure a smooth and hassle-free user experience for both yourself and your visitors.", "wplivechat") ?></strong></p>
|
741 |
+
<p><?php _e("You can update your plugin <a href='./update-core.php'>here</a>, <a href='./plugins.php'>here</a> or <a href='http://wp-livechat.com/get-updated-version/' target='_BLANK'>here</a>.", "wplivechat") ?></strong></p>
|
742 |
+
<p><?php _e("If you are having difficulty updating the plugin, please contact", "wplivechat") ?> nick@wp-livechat.com</p>
|
743 |
|
744 |
+
</div>
|
745 |
+
<?php
|
746 |
+
}
|
747 |
+
if ($wplc_pro_version <= "4.4.3") {
|
748 |
+
?>
|
749 |
+
<div class='error below-h1'>
|
750 |
+
|
751 |
+
<p><?php _e("Dear Pro User", "wplivechat") ?><br /></p>
|
752 |
+
<p><?php _e("You are using an outdated version of <strong>WP Live Chat Support Pro</strong>.", "wplivechat") ?></p>
|
753 |
+
<p>
|
754 |
+
<strong><?php _e("Please update to the latest version of WP Live Chat Support Pro", 'wplivechat'); ?>
|
755 |
+
<a href="http://wp-livechat.com/get-updated-version/" target=\"_BLANK\"> <?php _e("Version 4.4.4", "wplivechat"); ?></a>
|
756 |
+
<?php _e("to take advantage of a new dashboard layout.", "wplivechat"); ?>
|
757 |
+
</strong>
|
758 |
+
</p>
|
759 |
+
<p><?php _e("You can update your plugin <a href='./update-core.php'>here</a>, <a href='./plugins.php'>here</a> or <a href='http://wp-livechat.com/get-updated-version/' target='_BLANK'>here</a>.", "wplivechat") ?></strong></p>
|
760 |
+
<p><?php _e("If you are having difficulty updating the plugin, please contact", "wplivechat") ?> nick@wp-livechat.com</p>
|
761 |
+
|
762 |
+
</div>
|
763 |
+
<?php
|
764 |
+
}
|
765 |
}
|
766 |
+
if (get_option("WPLC_FIRST_TIME") == true && !class_exists("APC_Object_Cache")) {
|
767 |
update_option('WPLC_FIRST_TIME', false);
|
768 |
include 'includes/welcome_page.php';
|
769 |
} else {
|
774 |
wplc_admin_menu_layout_display();
|
775 |
}
|
776 |
}
|
|
|
777 |
}
|
778 |
|
779 |
function wplc_admin_menu_layout_display() {
|
780 |
+
if (!isset($_GET['action'])) {
|
|
|
781 |
?>
|
782 |
+
<div style='float:right; display:block; width:450px; padding:10px; text-align:center; background-color: #EEE; border: 1px solid #E6DB55; margin:10px;'>
|
783 |
+
<strong><?php _e("Experiencing problems with the plugin?", "wplivechat") ?></strong>
|
784 |
+
<br />
|
785 |
+
<a href='http://wp-livechat.com/documentation/' title='WP Live Chat Support Documentation' target='_BLANK'><?php _e("Review the documentation.", "wplivechat") ?></a>
|
786 |
+
<?php _e("Or ask a question on our", "wplivechat") ?> <a href='http://wp-livechat.com/forums/forum/support/' title='WP Live Chat Support Forum' target='_BLANK'><?php _e('Support forum.', 'wplivechat'); ?></a>
|
787 |
+
</div>
|
788 |
+
<br/>
|
789 |
+
<br/>
|
790 |
+
<br/>
|
791 |
+
<div class='wplc_page_title'>
|
792 |
+
<h1><?php _e("Chat sessions", "wplivechat"); ?></h1>
|
793 |
|
794 |
+
<p><?php _e("Please note: This window must be open in order to receive new chat notifications.", "wplivechat"); ?></p>
|
795 |
+
</div>
|
796 |
+
<div id="wplc_sound"></div>
|
797 |
|
798 |
+
<!----->
|
799 |
|
800 |
+
<div class="wplc_admin_dashboard_container">
|
801 |
+
<div id="wplc_sound"></div>
|
802 |
+
<div id="wplc_admin_chat_area">
|
803 |
+
<?php
|
804 |
+
if (function_exists("wplc_register_pro_version")) {
|
805 |
+
echo wplc_list_chats_pro();
|
806 |
+
} else {
|
807 |
+
echo wplc_list_chats();
|
808 |
+
}
|
809 |
?>
|
810 |
+
</div>
|
811 |
+
<div id="wplc_admin_visitor_area">
|
812 |
+
<h1><?php _e("Visitors on site", "wplivechat") ?></h1>
|
813 |
+
<p>
|
814 |
+
<?php _e("With the Pro add-on of WP Live Chat Support, you can", "wplivechat"); ?>
|
815 |
+
<a href="http://www.wp-livechat.com/purchase-pro/?utm_source=plugin&utm_medium=link&utm_campaign=initiate1" title="<?php _e("see who's online and initiate chats", "wplivechat"); ?>" target=\"_BLANK\">
|
816 |
+
<?php _e("see who's online and initiate chats", "wplivechat"); ?>
|
817 |
+
</a> <?php _e("with your online visitors with the click of a button.", "wplivechat"); ?>
|
818 |
+
<a href="http://www.wp-livechat.com/purchase-pro/?utm_source=plugin&utm_medium=link&utm_campaign=initiate2" title="<?php _e("Buy the Pro add-on now for only $19.95 once off. Free Updates FOREVER.", "wplivechat"); ?>" target=\"_BLANK\">
|
819 |
+
<strong>
|
820 |
+
<?php _e("Buy the Pro add-on now for only $19.95 once off. Free Updates Forever.", "wplivechat"); ?>
|
821 |
+
</strong>
|
822 |
+
</a>
|
823 |
+
</p>
|
824 |
+
</div>
|
825 |
</div>
|
826 |
+
|
827 |
+
<?php
|
828 |
+
} else {
|
|
|
|
|
|
|
|
|
829 |
if ($_GET['action'] == 'ac') {
|
830 |
+
wplc_change_chat_status($_GET['cid'], 3);
|
831 |
+
if (function_exists('wplc_ma_register')) {
|
832 |
wplc_ma_update_agent_id($_GET['cid'], $_GET['agent_id']);
|
833 |
}
|
834 |
+
if (function_exists("wplc_register_pro_version")) {
|
835 |
+
wplc_pro_draw_chat_area($_GET['cid']);
|
836 |
+
} else {
|
837 |
+
wplc_draw_chat_area($_GET['cid']);
|
838 |
+
}
|
839 |
}
|
840 |
}
|
841 |
}
|
845 |
global $wpdb;
|
846 |
global $wplc_tblname_chats;
|
847 |
$results = $wpdb->get_results(
|
848 |
+
"
|
849 |
SELECT *
|
850 |
FROM $wplc_tblname_chats
|
851 |
WHERE `id` = '$cid'
|
852 |
LIMIT 1
|
853 |
"
|
854 |
+
);
|
855 |
+
?>
|
856 |
+
<style>
|
|
|
|
|
|
|
857 |
|
858 |
+
.wplc-clear-float-message{
|
859 |
+
clear: both;
|
860 |
+
}
|
861 |
|
|
|
|
|
862 |
|
863 |
+
</style>
|
864 |
+
<?php
|
865 |
foreach ($results as $result) {
|
866 |
+
$user_data = maybe_unserialize($result->ip);
|
867 |
$user_ip = $user_data['ip'];
|
868 |
$browser = wplc_return_browser_string($user_data['user_agent']);
|
869 |
+
$browser_image = wplc_return_browser_image($browser, "16");
|
870 |
global $wplc_basic_plugin_url;
|
871 |
+
if ($result->status == 1) {
|
872 |
+
$status = __("Previous", "wplivechat");
|
873 |
+
} else {
|
874 |
+
$status = __("Active", "wplivechat");
|
875 |
+
}
|
876 |
+
|
877 |
+
echo "<h2>$status " . __('Chat with', 'wplivechat') . " " . $result->name . "</h2>";
|
878 |
echo "<style>#adminmenuwrap { display:none; } #adminmenuback { display:none; } #wpadminbar { display:none; } #wpfooter { display:none; } .update-nag { display:none; }</style>";
|
879 |
+
|
880 |
+
echo "<div class=\"end_chat_div\"><a href=\"javascript:void(0);\" class=\"wplc_admin_close_chat button\" id=\"wplc_admin_close_chat\">" . __("End chat", "wplivechat") . "</a></div>";
|
881 |
+
|
882 |
echo "<div id='admin_chat_box'>";
|
883 |
+
|
884 |
+
echo"<div class='admin_chat_box'><div class='admin_chat_box_inner' id='admin_chat_box_area_" . $result->id . "'>" . wplc_return_chat_messages($cid) . "</div><div class='admin_chat_box_inner_bottom'>" . wplc_return_chat_response_box($cid) . "</div></div>";
|
885 |
echo "<div class='admin_visitor_info'>";
|
886 |
+
echo " <div style='float:left; width:100px;'><img src=\"http://www.gravatar.com/avatar/" . md5($result->email) . "\" class=\"admin_chat_img\" /></div>";
|
887 |
echo " <div style='float:left;'>";
|
888 |
+
|
889 |
echo " <div class='admin_visitor_info_box1'>";
|
890 |
+
echo " <span class='admin_chat_name'>" . $result->name . "</span>";
|
891 |
+
echo " <span class='admin_chat_email'>" . $result->email . "</span>";
|
892 |
echo " </div>";
|
893 |
echo " </div>";
|
894 |
+
|
895 |
echo "<div class='admin_visitor_advanced_info'>";
|
896 |
+
echo " <strong>" . __("Site Info", "wplivechat") . "</strong>";
|
897 |
echo " <hr />";
|
898 |
+
echo " <span class='part1'>" . __("Chat initiated on:", "wplivechat") . "</span> <span class='part2'>" . $result->url . "</span>";
|
899 |
echo "</div>";
|
900 |
|
901 |
echo "<div class='admin_visitor_advanced_info'>";
|
902 |
+
echo " <strong>" . __("Advanced Info", "wplivechat") . "</strong>";
|
903 |
echo " <hr />";
|
904 |
+
echo " <span class='part1'>" . __("Browser:", "wplivechat") . "</span><span class='part2'> $browser <img src='" . $wplc_basic_plugin_url . "/images/$browser_image' alt='$browser' title='$browser' /><br />";
|
905 |
+
echo " <span class='part1'>" . __("IP Address:", "wplivechat") . "</span><span class='part2'> <a href='http://www.ip-adress.com/ip_tracer/" . $user_ip . "' title='" . __('Whois for', 'wplivechat') . " " . $user_ip . "'>" . $user_ip . "</a>";
|
906 |
echo "</div>";
|
907 |
+
|
908 |
echo " <div id=\"wplc_sound_update\"></div>";
|
909 |
echo "</div>";
|
910 |
+
|
911 |
if ($result->status != 1) {
|
912 |
+
echo "<div class='admin_chat_quick_controls'>";
|
913 |
+
echo " <p style=\"text-align:left; font-size:11px;\">" . __('Press ENTER to send your message', 'wplivechat') . "</p>";
|
914 |
+
echo " " . __("Assign Quick Response", "wplivechat") . " <select name='wplc_macros_select' class='wplc_macros_select' disabled><option>" . __('Select', 'wplivechat') . "</option></select> <a href='http://wp-livechat.com/purchase-pro/?utm_source=plugin&utm_medium=link&utm_campaign=quick_resposnes' title='" . __('Add Quick Responses to your Live Chat', 'wplivechat') . "' target='_BLANK'>" . __("Pro version only", "wplivechat") . "</a>";
|
915 |
+
echo " </div>";
|
916 |
+
echo "</div>";
|
917 |
+
|
918 |
//echo wplc_return_admin_chat_javascript($_GET['cid']);
|
919 |
}
|
|
|
920 |
}
|
921 |
}
|
922 |
+
|
923 |
+
function wplc_return_chat_response_box($cid) {
|
924 |
$ret = "<div class=\"chat_response_box\">";
|
925 |
+
$ret .= "<input type='text' name='wplc_admin_chatmsg' id='wplc_admin_chatmsg' value='' placeholder='" . __("type here...", "wplivechat") . "' />";
|
926 |
$ret .= "<input id='wplc_admin_cid' type='hidden' value='$cid' />";
|
927 |
+
$ret .= "<input id='wplc_admin_send_msg' type='button' value='" . __("Send", "wplivechat") . "' style=\"display:none;\" />";
|
928 |
$ret .= "</div>";
|
929 |
return $ret;
|
|
|
930 |
}
|
931 |
+
|
932 |
function wplc_return_admin_chat_javascript($cid) {
|
933 |
+
$ajax_nonce = wp_create_nonce("wplc");
|
934 |
+
if (function_exists("wplc_pro_get_admin_picture")) {
|
935 |
+
$src = wplc_pro_get_admin_picture();
|
936 |
+
if ($src) {
|
937 |
+
$image = "<img src=" . $src . " width='20px' id='wp-live-chat-2-img'/>";
|
|
|
938 |
}
|
939 |
+
}
|
940 |
+
|
941 |
+
$wplc_settings = get_option("WPLC_SETTINGS");
|
942 |
|
943 |
+
if (isset($wplc_settings['wplc_display_name']) && $wplc_settings['wplc_display_name'] == 1) {
|
944 |
+
$display_name = 'display';
|
945 |
+
} else {
|
946 |
+
$display_name = 'hide';
|
947 |
+
}
|
948 |
+
if (isset($_COOKIE['wplc_email']) && $_COOKIE['wplc_email'] != "") {
|
949 |
+
$wplc_user_email_address = $_COOKIE['wplc_email'];
|
950 |
+
} else {
|
951 |
+
$wplc_user_email_address = "";
|
952 |
+
}
|
953 |
?>
|
954 |
+
<script type="text/javascript">
|
955 |
var wplc_ajaxurl = '<?php echo plugins_url('/ajax.php', __FILE__); ?>';
|
956 |
var chat_status = 3;
|
957 |
var cid = <?php echo $cid; ?>;
|
964 |
var wplc_run = true;
|
965 |
var wplc_display_name = '<?php echo $display_name; ?>';
|
966 |
var wplc_user_email_address = '<?php echo $wplc_user_email_address; ?>';
|
967 |
+
|
968 |
function wplc_call_to_server_admin_chat(data) {
|
969 |
jQuery.ajax({
|
970 |
url: wplc_ajaxurl,
|
971 |
+
data: data,
|
972 |
+
type: "POST",
|
973 |
+
success: function (response) {
|
974 |
+
if (response) {
|
975 |
+
|
976 |
response = JSON.parse(response);
|
977 |
+
// console.log(response);
|
978 |
+
if (response['action'] === "wplc_update_chat_status") {
|
979 |
data['chat_status'] = response['chat_status'];
|
980 |
+
wplc_display_chat_status_update(response['chat_status'], cid);
|
981 |
}
|
982 |
+
if (response['action'] === "wplc_new_chat_message") {
|
983 |
+
current_len = jQuery("#admin_chat_box_area_" + cid).html().length;
|
984 |
+
jQuery("#admin_chat_box_area_" + cid).append(response['chat_message']);
|
985 |
+
new_length = jQuery("#admin_chat_box_area_" + cid).html().length;
|
986 |
if (current_len < new_length) {
|
987 |
+
document.getElementById("wplc_sound_update").innerHTML = "<embed src='<?php echo plugins_url('/ding.mp3', __FILE__); ?>' hidden=true autostart=true loop=false>";
|
988 |
}
|
989 |
+
var height = jQuery('#admin_chat_box_area_' + cid)[0].scrollHeight;
|
990 |
+
jQuery('#admin_chat_box_area_' + cid).scrollTop(height);
|
991 |
}
|
992 |
+
if (response['action'] === "wplc_user_open_chat") {
|
993 |
data['action_2'] = "";
|
994 |
+
<?php $url = admin_url('admin.php?page=wplivechat-menu&action=ac&cid=' . $cid); ?>
|
995 |
window.location.replace('<?php echo $url; ?>');
|
996 |
}
|
997 |
+
|
998 |
}
|
999 |
},
|
1000 |
+
error: function (jqXHR, exception) {
|
1001 |
if (jqXHR.status == 404) {
|
1002 |
console.log('Requested page not found. [404]');
|
1003 |
+
wplc_run = false;
|
1004 |
} else if (jqXHR.status == 500) {
|
1005 |
console.log('Internal Server Error [500].');
|
1006 |
+
wplc_run = false;
|
1007 |
} else if (exception === 'parsererror') {
|
1008 |
console.log('Requested JSON parse failed.');
|
1009 |
+
wplc_run = false;
|
1010 |
} else if (exception === 'abort') {
|
1011 |
console.log('Ajax request aborted.');
|
1012 |
+
wplc_run = false;
|
1013 |
} else {
|
1014 |
console.log('Uncaught Error.\n' + jqXHR.responseText);
|
1015 |
+
wplc_run = false;
|
1016 |
}
|
1017 |
},
|
1018 |
+
complete: function (response) {
|
1019 |
//console.log(wplc_run);
|
1020 |
+
if (wplc_run) {
|
1021 |
+
wplc_call_to_server_admin_chat(data);
|
1022 |
}
|
1023 |
},
|
|
|
1024 |
timeout: 120000
|
1025 |
});
|
1026 |
+
}
|
1027 |
+
;
|
1028 |
+
|
1029 |
+
function wplc_display_chat_status_update(new_chat_status, cid) {
|
1030 |
+
if (new_chat_status === "0") {
|
1031 |
+
} else {
|
1032 |
if (chat_status !== new_chat_status) {
|
1033 |
previous_chat_status = chat_status;
|
1034 |
//console.log("previous chat status: "+previous_chat_status);
|
1036 |
//console.log("chat status: "+chat_status);
|
1037 |
|
1038 |
if ((previous_chat_status === "2" && chat_status === "3") || (previous_chat_status === "5" && chat_status === "3")) {
|
1039 |
+
jQuery("#admin_chat_box_area_" + cid).append("<em><?php _e("User has opened the chat window", "wplivechat"); ?></em><br />");
|
1040 |
+
var height = jQuery('#admin_chat_box_area_' + cid)[0].scrollHeight;
|
1041 |
+
jQuery('#admin_chat_box_area_' + cid).scrollTop(height);
|
1042 |
+
|
1043 |
+
} else if (chat_status == "10" && previous_chat_status == "3") {
|
1044 |
+
jQuery("#admin_chat_box_area_" + cid).append("<em><?php _e("User has minimized the chat window", "wplivechat"); ?></em><br />");
|
1045 |
+
var height = jQuery('#admin_chat_box_area_' + cid)[0].scrollHeight;
|
1046 |
+
jQuery('#admin_chat_box_area_' + cid).scrollTop(height);
|
1047 |
}
|
1048 |
+
else if (chat_status === "3" && previous_chat_status === "10") {
|
1049 |
+
jQuery("#admin_chat_box_area_" + cid).append("<em><?php _e("User has maximized the chat window", "wplivechat"); ?></em><br />");
|
1050 |
+
var height = jQuery('#admin_chat_box_area_' + cid)[0].scrollHeight;
|
1051 |
+
jQuery('#admin_chat_box_area_' + cid).scrollTop(height);
|
1052 |
}
|
1053 |
+
else if (chat_status === "1" || chat_status === "8") {
|
1054 |
+
jQuery("#admin_chat_box_area_" + cid).append("<em><?php _e("User has closed and ended the chat", "wplivechat"); ?></em><br />");
|
1055 |
+
var height = jQuery('#admin_chat_box_area_' + cid)[0].scrollHeight;
|
1056 |
+
jQuery('#admin_chat_box_area_' + cid).scrollTop(height);
|
1057 |
document.getElementById('wplc_admin_chatmsg').disabled = true;
|
1058 |
+
}
|
1059 |
}
|
1060 |
}
|
1061 |
}
|
|
|
|
|
1062 |
|
1063 |
+
|
1064 |
+
|
1065 |
+
jQuery(document).ready(function () {
|
1066 |
+
|
1067 |
+
var wplc_image = "<?php if (isset($image)) {
|
1068 |
+
echo $image;
|
1069 |
+
} else {
|
1070 |
+
echo "";
|
1071 |
+
} ?>";
|
1072 |
var wplc_ajaxurl = '<?php echo plugins_url('/ajax.php', __FILE__); ?>';
|
1073 |
+
|
1074 |
+
|
1075 |
jQuery("#wplc_admin_chatmsg").focus();
|
1076 |
+
|
1077 |
+
|
1078 |
+
|
1079 |
+
|
1080 |
wplc_call_to_server_admin_chat(data);
|
1081 |
+
|
1082 |
+
if (jQuery('#wplc_admin_cid').length) {
|
1083 |
var wplc_cid = jQuery("#wplc_admin_cid").val();
|
1084 |
+
var height = jQuery('#admin_chat_box_area_' + wplc_cid)[0].scrollHeight;
|
1085 |
+
jQuery('#admin_chat_box_area_' + wplc_cid).scrollTop(height);
|
1086 |
}
|
1087 |
|
1088 |
+
jQuery(".wplc_admin_accept").on("click", function () {
|
1089 |
+
wplc_title_alerts3 = setTimeout(function () {
|
1090 |
+
document.title = "WP Live Chat Support";
|
1091 |
+
}, 2500);
|
1092 |
var cid = jQuery(this).attr("cid");
|
1093 |
+
|
1094 |
var data = {
|
1095 |
+
action: 'wplc_admin_accept_chat',
|
1096 |
+
cid: cid,
|
1097 |
+
security: '<?php echo $ajax_nonce; ?>'
|
1098 |
};
|
1099 |
+
jQuery.post(wplc_ajaxurl, data, function (response) {
|
1100 |
//console.log("wplc_admin_accept_chat");
|
1101 |
+
wplc_refresh_chat_boxes[cid] = setInterval(function () {
|
1102 |
+
wpcl_admin_update_chat_box(cid);
|
1103 |
+
}, 3000);
|
1104 |
+
jQuery("#admin_chat_box_" + cid).show();
|
1105 |
});
|
1106 |
});
|
1107 |
|
1108 |
+
jQuery("#wplc_admin_chatmsg").keyup(function (event) {
|
1109 |
+
if (event.keyCode == 13) {
|
1110 |
jQuery("#wplc_admin_send_msg").click();
|
1111 |
}
|
1112 |
});
|
1113 |
|
1114 |
+
jQuery("#wplc_admin_close_chat").on("click", function () {
|
1115 |
var wplc_cid = jQuery("#wplc_admin_cid").val();
|
1116 |
var data = {
|
1117 |
+
action: 'wplc_admin_close_chat',
|
1118 |
+
security: '<?php echo $ajax_nonce; ?>',
|
1119 |
+
cid: wplc_cid
|
1120 |
+
|
1121 |
};
|
1122 |
+
jQuery.post(wplc_ajaxurl, data, function (response) {
|
1123 |
+
//console.log("wplc_admin_close_chat");
|
1124 |
+
//console.log(response);
|
1125 |
+
window.close();
|
1126 |
});
|
1127 |
+
|
1128 |
});
|
1129 |
|
1130 |
function wplc_strip(str) {
|
1131 |
+
str = str.replace(/<br>/gi, "\n");
|
1132 |
+
str = str.replace(/<p.*>/gi, "\n");
|
1133 |
+
str = str.replace(/<a.*href="(.*?)".*>(.*?)<\/a>/gi, " $2 ($1) ");
|
1134 |
+
str = str.replace(/<(?:.|\s)*?>/g, "");
|
1135 |
return str;
|
1136 |
}
|
1137 |
+
jQuery("#wplc_admin_send_msg").on("click", function () {
|
1138 |
var wplc_cid = jQuery("#wplc_admin_cid").val();
|
1139 |
var wplc_chat = wplc_strip(document.getElementById('wplc_admin_chatmsg').value);
|
1140 |
+
var wplc_name = "a" + "d" + "m" + "i" + "n";
|
1141 |
jQuery("#wplc_admin_chatmsg").val('');
|
1142 |
+
|
1143 |
+
if (wplc_display_name == 'display') {
|
1144 |
+
jQuery("#admin_chat_box_area_" + wplc_cid).append("<span class='wplc-admin-message'>" + wplc_image + " <strong>" + wplc_name + "</strong>:<hr/ style='margin-bottom: 0px;'>" + wplc_chat + "</span><br /><div class='wplc-clear-float-message'></div>");
|
1145 |
} else {
|
1146 |
+
jQuery("#admin_chat_box_area_" + wplc_cid).append("<span class='wplc-admin-message'>" + wplc_chat + "</span><br /><div class='wplc-clear-float-message'></div>");
|
1147 |
+
}
|
1148 |
+
var height = jQuery('#admin_chat_box_area_' + wplc_cid)[0].scrollHeight;
|
1149 |
+
jQuery('#admin_chat_box_area_' + wplc_cid).scrollTop(height);
|
1150 |
+
|
1151 |
|
1152 |
var data = {
|
1153 |
+
action: 'wplc_admin_send_msg',
|
1154 |
+
security: '<?php echo $ajax_nonce; ?>',
|
1155 |
+
cid: wplc_cid,
|
1156 |
+
msg: wplc_chat
|
1157 |
};
|
1158 |
+
jQuery.post(wplc_ajaxurl, data, function (response) {
|
1159 |
+
//console.log("wplc_admin_send_msg");
|
1160 |
+
|
1161 |
+
/* do nothing
|
1162 |
+
jQuery("#admin_chat_box_area_"+wplc_cid).html(response);
|
1163 |
+
var height = jQuery('#admin_chat_box_area_'+wplc_cid)[0].scrollHeight;
|
1164 |
+
jQuery('#admin_chat_box_area_'+wplc_cid).scrollTop(height);
|
1165 |
+
*/
|
1166 |
});
|
1167 |
|
1168 |
|
1169 |
+
});
|
1170 |
+
|
1171 |
+
|
1172 |
+
|
1173 |
+
|
1174 |
+
|
1175 |
+
|
1176 |
+
|
1177 |
});
|
1178 |
</script>
|
1179 |
<?php
|
|
|
1180 |
}
|
1181 |
+
|
1182 |
function wplc_activate() {
|
1183 |
wplc_handle_db();
|
1184 |
if (!get_option("WPLC_SETTINGS")) {
|
1185 |
+
$wplc_alt_text = __("Please click \'Start Chat\' to initiate a chat with an agent", "wplivechat");
|
1186 |
+
add_option('WPLC_SETTINGS', array(
|
1187 |
+
"wplc_settings_align" => "2",
|
1188 |
+
"wplc_settings_enabled" => "1",
|
1189 |
+
"wplc_settings_fill" => "ed832f",
|
1190 |
+
"wplc_settings_font" => "FFFFFF",
|
1191 |
+
"wplc_require_user_info" => '1',
|
1192 |
+
"wplc_loggedin_user_info" => '1',
|
1193 |
+
"wplc_user_alternative_text" => $wplc_alt_text,
|
1194 |
+
"wplc_enabled_on_mobile" => '1',
|
1195 |
+
"wplc_display_name" => '1'
|
1196 |
+
));
|
|
|
1197 |
}
|
1198 |
+
add_option("WPLC_HIDE_CHAT", "true");
|
1199 |
add_option("WPLC_FIRST_TIME", true);
|
|
|
1200 |
}
|
1201 |
|
|
|
1202 |
function wplc_handle_db() {
|
1203 |
+
global $wpdb;
|
1204 |
+
global $wplc_version;
|
1205 |
+
global $wplc_tblname_chats;
|
1206 |
+
global $wplc_tblname_msgs;
|
1207 |
|
1208 |
$sql = "
|
1209 |
+
CREATE TABLE " . $wplc_tblname_chats . " (
|
1210 |
id int(11) NOT NULL AUTO_INCREMENT,
|
1211 |
timestamp datetime NOT NULL,
|
1212 |
name varchar(700) NOT NULL,
|
1220 |
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
|
1221 |
";
|
1222 |
|
1223 |
+
require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
|
1224 |
+
dbDelta($sql);
|
1225 |
|
1226 |
+
$sql = '
|
1227 |
+
CREATE TABLE ' . $wplc_tblname_msgs . ' (
|
1228 |
id int(11) NOT NULL AUTO_INCREMENT,
|
1229 |
chat_sess_id int(11) NOT NULL,
|
1230 |
`from` varchar(150) CHARACTER SET utf8 NOT NULL,
|
1236 |
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
|
1237 |
';
|
1238 |
|
1239 |
+
require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
|
1240 |
+
@dbDelta($sql);
|
1241 |
+
|
1242 |
+
add_option("wplc_db_version", $wplc_version);
|
1243 |
+
update_option("wplc_db_version", $wplc_version);
|
1244 |
}
|
1245 |
|
1246 |
function wplc_add_user_stylesheet() {
|
1247 |
+
wp_register_style('wplc-font-awesome', plugins_url('/css/font-awesome.min.css', __FILE__));
|
1248 |
+
wp_enqueue_style('wplc-font-awesome');
|
1249 |
+
wp_register_style('wplc-style', plugins_url('/css/wplcstyle.css', __FILE__));
|
1250 |
+
wp_enqueue_style('wplc-style');
|
|
|
1251 |
}
|
1252 |
+
|
1253 |
function wplc_add_admin_stylesheet() {
|
1254 |
if (isset($_GET['page']) && ($_GET['page'] == 'wplivechat-menu' || $_GET['page'] == 'wplivechat-menu-settings' || $_GET['page'] == 'wplivechat-menu-offline-messages')) {
|
1255 |
+
wp_register_style('wplc-admin-style', plugins_url('/css/jquery-ui.css', __FILE__));
|
1256 |
+
wp_enqueue_style('wplc-admin-style');
|
1257 |
+
wp_register_style('wplc-chat-style', plugins_url('/css/chat-style.css', __FILE__));
|
1258 |
+
wp_enqueue_style('wplc-chat-style');
|
1259 |
+
wp_register_style('wplc-font-awesome', plugins_url('/css/font-awesome.min.css', __FILE__));
|
1260 |
+
wp_enqueue_style('wplc-font-awesome');
|
1261 |
}
|
|
|
1262 |
}
|
1263 |
|
1264 |
if (isset($_GET['page']) && $_GET['page'] == 'wplivechat-menu-settings') {
|
1265 |
add_action('admin_print_scripts', 'wplc_admin_scripts_basic');
|
1266 |
}
|
1267 |
+
|
1268 |
function wplc_admin_scripts_basic() {
|
1269 |
+
|
1270 |
if (isset($_GET['page']) && $_GET['page'] == "wplivechat-menu-settings") {
|
1271 |
+
wp_enqueue_script('jquery');
|
1272 |
wp_enqueue_script('jquery-ui-core');
|
1273 |
|
1274 |
+
wp_register_script('my-wplc-color', plugins_url('js/jscolor.js', __FILE__), false, '1.4.1', false);
|
1275 |
wp_enqueue_script('my-wplc-color');
|
1276 |
+
wp_enqueue_script('jquery-ui-tabs');
|
1277 |
+
wp_register_script('my-wplc-tabs', plugins_url('js/wplc_tabs.js', __FILE__), array('jquery-ui-core'), '', true);
|
1278 |
wp_enqueue_script('my-wplc-tabs');
|
1279 |
}
|
1280 |
}
|
1281 |
|
|
|
1282 |
function wplc_admin_settings_layout() {
|
1283 |
wplc_settings_page_basic();
|
1284 |
}
|
1285 |
+
|
1286 |
function wplc_admin_history_layout() {
|
1287 |
+
echo"<div class=\"wrap\"><div id=\"icon-edit\" class=\"icon32 icon32-posts-post\"><br></div><h2>" . __("WP Live Chat History", "wplivechat") . "</h2>";
|
1288 |
if (function_exists("wplc_register_pro_version")) {
|
1289 |
wplc_pro_admin_display_history();
|
1290 |
+
} else {
|
1291 |
+
echo "<br /><br >" . _('This option is only available in the ', 'wplivechat') . "<a href=\"http://www.wp-livechat.com/purchase-pro/?utm_source=plugin&utm_medium=link&utm_campaign=history1\" title=\"" . __("Pro Add-on", "wplivechat") . "\" target=\"_BLANK\">" . __('Pro Add-on', 'wplivechat') . "</a> of WP Live Chat. <a href=\"http://www.wp-livechat.com/purchase-pro/?utm_source=plugin&utm_medium=link&utm_campaign=history2\" title=\"" . __("Pro Add-on", "wplivechat") . "\" target=\"_BLANK\">" . __('Get it now for only $19.95 once off!', 'wplivechat') . "</a>";
|
|
|
1292 |
}
|
1293 |
}
|
1294 |
|
1295 |
function wplc_admin_missed_chats() {
|
1296 |
+
echo "<div class=\"wrap\"><div id=\"icon-edit\" class=\"icon32 icon32-posts-post\"><br></div><h2>" . __("WP Live Chat Missed Chats", "wplivechat") . "</h2>";
|
1297 |
+
if (function_exists('wplc_admin_display_missed_chats')) {
|
1298 |
wplc_admin_display_missed_chats();
|
1299 |
+
}
|
1300 |
}
|
1301 |
|
1302 |
+
function wplc_admin_offline_messages() {
|
1303 |
+
echo"<div class=\"wrap\"><div id=\"icon-edit\" class=\"icon32 icon32-posts-post\"><br></div><h2>" . __("WP Live Chat Offline Messages", "wplivechat") . "</h2>";
|
1304 |
if (function_exists("wplc_register_pro_version")) {
|
1305 |
+
if (function_exists('wplc_pro_admin_display_offline_messages')) {
|
1306 |
wplc_pro_admin_display_offline_messages();
|
1307 |
} else {
|
1308 |
+
echo "<div class='updated'><p>" . __('Please update to the latest version of WP Live Chat Support Pro to start recording any offline messages.', 'wplivechat') . "</p></div>";
|
1309 |
}
|
1310 |
+
} else {
|
1311 |
+
echo "<br /><br >" . _('This option is only available in the ', 'wplivechat') . "<a href=\"http://www.wp-livechat.com/purchase-pro/?utm_source=plugin&utm_medium=link&utm_campaign=history1\" title=\"" . __("Pro Add-on", "wplivechat") . "\" target=\"_BLANK\">" . __('Pro Add-on', 'wplivechat') . "</a> of WP Live Chat. <a href=\"http://www.wp-livechat.com/purchase-pro/?utm_source=plugin&utm_medium=link&utm_campaign=missed_chats2\" title=\"" . __("Pro Add-on", "wplivechat") . "\" target=\"_BLANK\">" . __('Get it now for only $19.95 once off!', 'wplivechat') . "</a>";
|
|
|
1312 |
}
|
1313 |
}
|
1314 |
|
1315 |
function wplc_settings_page_basic() {
|
1316 |
+
if (function_exists("wplc_register_pro_version")) {
|
1317 |
wplc_settings_page_pro();
|
1318 |
} else {
|
1319 |
include 'includes/settings_page.php';
|
1320 |
}
|
1321 |
}
|
1322 |
+
|
1323 |
function wplc_head_basic() {
|
1324 |
global $wpdb;
|
1325 |
|
1326 |
+
if (isset($_POST['wplc_save_settings'])) {
|
1327 |
+
|
1328 |
+
if (isset($_POST['wplc_settings_align'])) {
|
1329 |
+
$wplc_data['wplc_settings_align'] = esc_attr($_POST['wplc_settings_align']);
|
1330 |
+
}
|
1331 |
+
if (isset($_POST['wplc_settings_fill'])) {
|
1332 |
+
$wplc_data['wplc_settings_fill'] = esc_attr($_POST['wplc_settings_fill']);
|
1333 |
+
}
|
1334 |
+
if (isset($_POST['wplc_settings_font'])) {
|
1335 |
+
$wplc_data['wplc_settings_font'] = esc_attr($_POST['wplc_settings_font']);
|
1336 |
+
}
|
1337 |
+
if (isset($_POST['wplc_settings_enabled'])) {
|
1338 |
+
$wplc_data['wplc_settings_enabled'] = esc_attr($_POST['wplc_settings_enabled']);
|
1339 |
+
}
|
1340 |
+
if (isset($_POST['wplc_auto_pop_up'])) {
|
1341 |
+
$wplc_data['wplc_auto_pop_up'] = esc_attr($_POST['wplc_auto_pop_up']);
|
1342 |
+
}
|
1343 |
+
if (isset($_POST['wplc_require_user_info'])) {
|
1344 |
+
$wplc_data['wplc_require_user_info'] = esc_attr($_POST['wplc_require_user_info']);
|
1345 |
+
}
|
1346 |
+
if (isset($_POST['wplc_loggedin_user_info'])) {
|
1347 |
+
$wplc_data['wplc_loggedin_user_info'] = esc_attr($_POST['wplc_loggedin_user_info']);
|
1348 |
+
}
|
1349 |
+
if (isset($_POST['wplc_user_alternative_text']) && $_POST['wplc_user_alternative_text'] != '') {
|
1350 |
+
$wplc_data['wplc_user_alternative_text'] = esc_attr($_POST['wplc_user_alternative_text']);
|
1351 |
+
} else {
|
1352 |
+
$wplc_data['wplc_user_alternative_text'] = __("Please click 'Start Chat' to initiate a chat with an agent", "wplivechat");
|
1353 |
+
}
|
1354 |
+
if (isset($_POST['wplc_enabled_on_mobile'])) {
|
1355 |
+
$wplc_data['wplc_enabled_on_mobile'] = esc_attr($_POST['wplc_enabled_on_mobile']);
|
1356 |
+
}
|
1357 |
+
if (isset($_POST['wplc_display_name'])) {
|
1358 |
+
$wplc_data['wplc_display_name'] = esc_attr($_POST['wplc_display_name']);
|
1359 |
+
}
|
1360 |
+
if (isset($_POST['wplc_display_to_loggedin_only'])) {
|
1361 |
+
$wplc_data['wplc_display_to_loggedin_only'] = esc_attr($_POST['wplc_display_to_loggedin_only']);
|
1362 |
+
}
|
1363 |
+
|
1364 |
update_option('WPLC_SETTINGS', $wplc_data);
|
1365 |
+
if (isset($_POST['wplc_hide_chat'])) {
|
1366 |
+
update_option("WPLC_HIDE_CHAT", $_POST['wplc_hide_chat']);
|
1367 |
+
}
|
1368 |
+
|
1369 |
+
|
1370 |
+
|
1371 |
echo "<div class='updated'>";
|
1372 |
+
_e("Your settings have been saved.", "wplivechat");
|
1373 |
echo "</div>";
|
1374 |
}
|
1375 |
+
if (isset($_POST['action']) && $_POST['action'] == "wplc_submit_find_us") {
|
1376 |
if (function_exists('curl_version')) {
|
1377 |
$request_url = "http://www.wp-livechat.com/apif/rec.php";
|
1378 |
$ch = curl_init();
|
1383 |
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
|
1384 |
$output = curl_exec($ch);
|
1385 |
curl_close($ch);
|
1386 |
+
}
|
1387 |
+
echo "<div class=\"updated\"><p>" . __("Thank You for your feedback!", "wplivechat") . "</p></div>";
|
1388 |
}
|
1389 |
if (isset($_POST['wplc_nl_send_feedback'])) {
|
1390 |
+
if (wp_mail("nick@wp-livechat.com", "Plugin feedback", "Name: " . $_POST['wplc_nl_feedback_name'] . "\n\r" . "Email: " . $_POST['wplc_nl_feedback_email'] . "\n\r" . "Website: " . $_POST['wplc_nl_feedback_website'] . "\n\r" . "Feedback:" . $_POST['wplc_nl_feedback_feedback'])) {
|
1391 |
+
echo "<div id=\"message\" class=\"updated\"><p>" . __("Thank you for your feedback. We will be in touch soon", "wplc") . "</p></div>";
|
1392 |
} else {
|
1393 |
|
1394 |
if (function_exists('curl_version')) {
|
1401 |
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
|
1402 |
$output = curl_exec($ch);
|
1403 |
curl_close($ch);
|
1404 |
+
echo "<div id=\"message\" class=\"updated\"><p>" . __("Thank you for your feedback. We will be in touch soon", "wplc") . "</p></div>";
|
1405 |
+
} else {
|
|
|
1406 |
echo "<div id=\"message\" class=\"error\">";
|
1407 |
+
echo "<p>" . __("There was a problem sending your feedback. Please log your feedback on ", "wplc") . "<a href='http://wp-livechat.com/forums/forum/support/' target='_BLANK'>http://wp-livechat.com/forums/forum/support/</a></p>";
|
1408 |
echo "</div>";
|
1409 |
}
|
1410 |
}
|
1411 |
}
|
|
|
1412 |
}
|
1413 |
|
1414 |
function wplc_logout() {
|
1415 |
delete_transient('wplc_is_admin_logged_in');
|
1416 |
}
|
|
|
1417 |
|
1418 |
+
add_action('wp_logout', 'wplc_logout');
|
1419 |
|
1420 |
function wplc_get_home_path() {
|
1421 |
+
$home = get_option('home');
|
1422 |
+
$siteurl = get_option('siteurl');
|
1423 |
+
if (!empty($home) && 0 !== strcasecmp($home, $siteurl)) {
|
1424 |
+
$wp_path_rel_to_home = str_ireplace($home, '', $siteurl); /* $siteurl - $home */
|
1425 |
+
$pos = strripos(str_replace('\\', '/', $_SERVER['SCRIPT_FILENAME']), trailingslashit($wp_path_rel_to_home));
|
1426 |
+
$home_path = substr($_SERVER['SCRIPT_FILENAME'], 0, $pos);
|
1427 |
+
$home_path = trailingslashit($home_path);
|
1428 |
} else {
|
1429 |
+
$home_path = ABSPATH;
|
1430 |
}
|
1431 |
+
return str_replace('\\', '/', $home_path);
|
1432 |
}
|
1433 |
|
1434 |
/* Error Checks */
|