WP Live Chat Support - Version 2.0

Version Description

  • Bug fixes
  • Better front-end UI (Basic + Pro)
  • You can now get an email notification when a visitor wants to chat (Pro)
  • Allow your visitors to leave messages when you are offline (Pro)
  • More text fields can be customized
Download this release

Release Info

Developer WP-LiveChat
Plugin Icon 128x128 WP Live Chat Support
Version 2.0
Comparing to
See all releases

Code changes from version 1.0 to 2.0

Files changed (4) hide show
  1. readme.txt +9 -2
  2. screenshot-1.JPG +0 -0
  3. wp-live-chat-support.php +378 -41
  4. wplcstyle.css +61 -4
readme.txt CHANGED
@@ -10,7 +10,7 @@ The easiest to use Live Chat plugin. Chat with your visitors!
10
 
11
  == Description ==
12
 
13
- The easiest to use Live Chat plugin. Chat with your visitors! Perfect for small businesses. No third party connections or subscriptions required. There's no need to pay monthly subscriptions in order to better understand your visitors. This is a fully functional chat plugin. Increase your conversion rates by communicating directly with your visitors when they're ready to do so.
14
 
15
  = Free version =
16
  * Chat with your visitors
@@ -21,8 +21,8 @@ The easiest to use Live Chat plugin. Chat with your visitors! Perfect for small
21
 
22
 
23
  = Pro add-on =
 
24
  * Chat to more than one visitor at a time
25
- * Initiate chat's with online visitors
26
  * Access historical chat records
27
  * Set up your user profile
28
  * Add your company logo to the chat window
@@ -60,6 +60,13 @@ Once installed and activated, a link should appear in your left navigation panel
60
 
61
  == Changelog ==
62
 
 
 
 
 
 
 
 
63
  = 1.0 =
64
  * Launch!
65
 
10
 
11
  == Description ==
12
 
13
+ The easiest to use Live Chat plugin. Chat with your visitors! Perfect for small businesses. No third party connections or subscriptions required. There's no need to pay monthly subscriptions in order to better understand your visitors. This is a fully functional live chat plugin. Increase your conversion rates by communicating directly with your visitors when they're ready to do so.
14
 
15
  = Free version =
16
  * Chat with your visitors
21
 
22
 
23
  = Pro add-on =
24
+ * Initiate chats with online visitors
25
  * Chat to more than one visitor at a time
 
26
  * Access historical chat records
27
  * Set up your user profile
28
  * Add your company logo to the chat window
60
 
61
  == Changelog ==
62
 
63
+ = 2.0 =
64
+ * Bug fixes
65
+ * Better front-end UI (Basic + Pro)
66
+ * You can now get an email notification when a visitor wants to chat (Pro)
67
+ * Allow your visitors to leave messages when you are offline (Pro)
68
+ * More text fields can be customized
69
+
70
  = 1.0 =
71
  * Launch!
72
 
screenshot-1.JPG CHANGED
Binary file
wp-live-chat-support.php CHANGED
@@ -2,8 +2,8 @@
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. No third party connection required!
6
- Version: 1.0
7
  Author: WP-LiveChat
8
  Author URI: http://www.wp-livechat.com
9
  */
@@ -17,7 +17,7 @@ global $wplc_tblname_chats;
17
  global $wplc_tblname_msgs;
18
  $wplc_tblname_chats = $wpdb->prefix . "wplc_chat_sessions";
19
  $wplc_tblname_msgs = $wpdb->prefix . "wplc_chat_msgs";
20
- $wplc_version = "1.0";
21
 
22
 
23
  add_action('wp_footer', 'wplc_display_box');
@@ -76,7 +76,225 @@ function wplc_draw_user_box() {
76
 
77
  var ajaxurl = '<?php echo admin_url( 'admin-ajax.php' ); ?>';
78
  var wplc_nonce = '<?php echo $ajax_nonce; ?>';
79
- function wplc_relay_user_stage(e,t){if(t.length){var n={action:"wplc_relay_stage",security:wplc_nonce,stage:e,cid:t}}else{var n={action:"wplc_relay_stage",security:wplc_nonce,stage:e}}jQuery.post(ajaxurl,n,function(e){})}function wplc_user_await_session(e){var t={action:"wplc_user_awaiting_chat",security:wplc_nonce,id:e};jQuery.post(ajaxurl,t,function(t){if(t=="3"){clearInterval(wplc_user_waiting);var n=jQuery("#wplc_name").val();jQuery("#wplc_cid").val(e);jQuery("#wp-live-chat-3").hide();jQuery("#wp-live-chat-4").show();jQuery.cookie("wplc_cid",e,{expires:1,path:"/"});jQuery.cookie("wplc_name",n,{expires:1,path:"/"});jQuery.cookie("wplc_stage",3,{expires:1,path:"/"});wplc_user_auto_refresh=setInterval(function(){wpcl_user_auto_update_chat_box(e)},3500)}});return}function wpcl_user_auto_update_chat_box(e){var t={action:"wplc_update_user_chat_boxes",cid:e,security:wplc_nonce};jQuery.post(ajaxurl,t,function(e){jQuery("#wplc_chatbox").append(e);var t=jQuery("#wplc_chatbox")[0].scrollHeight;jQuery("#wplc_chatbox").scrollTop(t)})}var wplc_check_cookie_id;var wplc_check_cookie_stage;var wplc_check_hide_cookie;wplc_check_cookie_id=jQuery.cookie("wplc_cid");wplc_check_cookie_stage=jQuery.cookie("wplc_stage");wplc_check_hide_cookie=jQuery.cookie("wplc_hide");jQuery("#wp-live-chat-close").live("click",function(){jQuery("#wp-live-chat").hide();jQuery.cookie("wplc_hide","yes",{expires:1,path:"/"});clearInterval(wplc_user_auto_refresh);var e={action:"wplc_user_close_chat",security:wplc_nonce,cid:wplc_check_cookie_id};jQuery.post(ajaxurl,e,function(e){})});jQuery("#wplc-sb").live("click",function(){jQuery("#wp-live-chat-1").hide();jQuery("#wp-live-chat-2").show()});var wplc_user_waiting=null;jQuery("#wplc_start_chat_btn").live("click",function(){var e=jQuery("#wplc_name").val();var t=jQuery("#wplc_email").val();if(e.length<=0){alert("Please enter your name");return false}if(t.length<=0){alert("Please enter your email address");return false}jQuery("#wp-live-chat-2").hide();jQuery("#wp-live-chat-3").show();wplc_check_cookie_id=jQuery.cookie("wplc_cid");var n;var r={action:"wplc_start_chat",security:wplc_nonce,name:e,email:t};jQuery.post(ajaxurl,r,function(e){n=e;wplc_check_cookie_id=e;wplc_user_waiting=setInterval(function(){wplc_user_await_session(n)},5e3)})});jQuery("#wplc_chatmsg").keyup(function(e){if(e.keyCode==13){jQuery("#wplc_send_msg").click()}});jQuery("#wplc_send_msg").live("click",function(){var e=jQuery("#wplc_cid").val();var t=jQuery("#wplc_chatmsg").val();var n=jQuery("#wplc_name").val();if(typeof n=="undefined"||n==null||n==""){n=jQuery.cookie("wplc_name")}jQuery("#wplc_chatmsg").val("");jQuery("#wplc_chatbox").append("<strong>"+n+"</strong>: "+t+"<br />");var r=jQuery("#wplc_chatbox")[0].scrollHeight;jQuery("#wplc_chatbox").scrollTop(r);var i={action:"wplc_user_send_msg",security:wplc_nonce,cid:e,msg:t};jQuery.post(ajaxurl,i,function(e){})});if(wplc_check_hide_cookie=="yes"){jQuery("#wp-live-chat").hide()}else{if(typeof wplc_check_cookie_id=="undefined"||wplc_check_cookie_id==null){wplc_dc=setTimeout(function(){jQuery("#wp-live-chat").css({display:"block"})},1e4)}else{jQuery("#wplc_cid").val(wplc_check_cookie_id);jQuery("#wp-live-chat-1").hide();jQuery("#wp-live-chat-2").hide();jQuery("#wp-live-chat-3").hide();jQuery("#wp-live-chat-4").hide();jQuery("#wp-live-chat-react").show();jQuery("#wp-live-chat").css({display:"block"});var data={action:"wplc_user_reactivate_chat",security:wplc_nonce,cid:wplc_check_cookie_id};jQuery.post(ajaxurl,data,function(e){jQuery("#wp-live-chat-react").hide();jQuery("#wp-live-chat-4").show();wplc_user_auto_refresh=setInterval(function(){wpcl_user_auto_update_chat_box(wplc_check_cookie_id)},3500)})}}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
80
 
81
  });
82
  </script>
@@ -92,7 +310,7 @@ function wplc_output_box() {
92
 
93
 
94
  ?>
95
- <div id="wp-live-chat" style="position:fixed;bottom:0px; <?php echo $wplc_box_align; ?> ;z-index:105;display:none; background-color:#FFF; border:1px solid #CCC; padding:15px;">
96
 
97
 
98
  <?php if (function_exists("wplc_register_pro_version")) {
@@ -100,15 +318,16 @@ function wplc_output_box() {
100
  } else {
101
  ?>
102
 
103
- <div id="wp-live-chat-close">X</div>
104
  <div id="wp-live-chat-1">
105
- <h4>Need Help?</h4>
106
- <p>Click the link below for assistance</p>
107
- <a href="javascript:void(0);" id="wplc-sb">Start live chat</a>
108
  </div>
109
  <div id="wp-live-chat-2" style="display:none;">
110
- <h4>Start Live Chat</h4>
111
  <table>
 
 
 
 
112
  <tr>
113
  <td><?php _e("Name","wplivechat"); ?></td>
114
  <td><input type="text" name="wplc_name" id="wplc_name" value="" /></td>
@@ -130,11 +349,12 @@ function wplc_output_box() {
130
  <p>Reactivating your previous chat...</p>
131
  </div>
132
  <div id="wp-live-chat-4" style="display:none;">
133
- <div id="wplc_chatbox" style="height:200px; overflow:auto; width:100%;"></div>
 
134
  <p>
135
  <input type="text" name="wplc_chatmsg" id="wplc_chatmsg" value="" />
136
  <input type="hidden" name="wplc_cid" id="wplc_cid" value="" />
137
- <input id="wplc_send_msg" type="button" value="<?php _e("Send","wplc"); ?>" /></p>
138
  </div>
139
 
140
  </div>
@@ -144,17 +364,8 @@ function wplc_output_box() {
144
 
145
  function wplc_display_box() {
146
  $wplc_is_admin_logged_in = get_transient("wplc_is_admin_logged_in");
147
-
148
- if ($wplc_is_admin_logged_in == 1) {
149
- if (function_exists("wplc_register_pro_version")) {
150
- wplc_pro_draw_user_box();
151
- } else {
152
- wplc_draw_user_box();
153
- }
154
- }
155
- else {
156
- if (function_exists("wplc_register_pro_version")) { wplc_pro_draw_not_available_box(); }
157
- }
158
  }
159
 
160
 
@@ -216,7 +427,7 @@ function wplc_action_callback() {
216
  }
217
  }
218
  if ($_POST['action'] == "wplc_admin_set_transient") {
219
- set_transient("wplc_is_admin_logged_in", "1", 350 );
220
 
221
  }
222
 
@@ -254,6 +465,7 @@ function wplc_action_callback() {
254
  }
255
  if ($_POST['action'] == "wplc_user_reactivate_chat") {
256
  wplc_change_chat_status($_POST['cid'],3);
 
257
 
258
  }
259
 
@@ -288,7 +500,7 @@ function wplc_record_chat_msg($from,$cid,$msg) {
288
  $rows_affected = $wpdb->insert( $wplc_tblname_msgs, $ins_array );
289
 
290
  wplc_update_active_timestamp($cid);
291
-
292
  return true;
293
 
294
 
@@ -511,6 +723,10 @@ function wplc_user_initiate_chat($name,$email,$cid = null) {
511
  global $wpdb;
512
  global $wplc_tblname_chats;
513
 
 
 
 
 
514
  if ($cid != null) { // change from a visitor to a chat
515
  $query =
516
  "
@@ -689,7 +905,7 @@ function wplc_superadmin_javascript() {
689
 
690
  var wplc_set_transient = null;
691
 
692
- wplc_set_transient = setInterval(function (){wpcl_admin_set_transient();}, 300000);
693
  wpcl_admin_set_transient();
694
  function wpcl_admin_set_transient() {
695
  var data = {
@@ -719,7 +935,6 @@ function wplc_admin_javascript() {
719
  var wplc_refresh_chat_area = null;
720
  var wplc_refresh_status = null;
721
 
722
- var wplc_nonce = '<?php echo $ajax_nonce; ?>';
723
 
724
 
725
 
@@ -727,7 +942,7 @@ function wplc_admin_javascript() {
727
  function wpcl_admin_update_chats(cid) {
728
  var data = {
729
  action: 'wplc_update_admin_chat',
730
- security: wplc_nonce
731
  };
732
  jQuery.post(ajaxurl, data, function(response) {
733
  //console.log("wplc_update_admin_chat");
@@ -744,7 +959,7 @@ function wplc_admin_javascript() {
744
  function wplc_update_statuses() {
745
  var data = {
746
  action: 'wplc_update_admin_status',
747
- security: wplc_nonce
748
  };
749
  jQuery.post(ajaxurl, data, function(response) {
750
  //console.log("wplc_update_admin_status");
@@ -857,7 +1072,7 @@ function wplc_admin_menu_layout_display() {
857
 
858
  if ($_GET['action'] == 'ac') {
859
  wplc_change_chat_status($_GET['cid'],3);
860
- wplc_draw_chat_area($_GET['cid']);
861
  }
862
  }
863
  }
@@ -899,9 +1114,10 @@ function wplc_draw_chat_area($cid) {
899
  ";
900
  if ($result->status != 1) {
901
  echo "
902
- <input type='text' name='wplc_admin_chatmsg' id='wplc_admin_chatmsg' value='' />
 
903
  <input id='wplc_admin_cid' type='hidden' value='".$_GET['cid']."' />
904
- <input id='wplc_admin_send_msg' type='button' value='".__("Send","wplc")."' />
905
  </p>
906
  </div>
907
  ";
@@ -920,9 +1136,111 @@ function wplc_return_admin_chat_javascript($cid) {
920
  <script type="text/javascript">
921
  jQuery(document).ready(function() {
922
 
 
923
  var wplc_nonce = '<?php echo $ajax_nonce; ?>';
924
  var wplc_gcid = '<?php echo $cid; ?>';
925
- function wpcl_admin_auto_update_chat_box(e){var t={action:"wplc_update_admin_chat_boxes",cid:e,security:wplc_nonce};jQuery.post(ajaxurl,t,function(t){jQuery("#admin_chat_box_area_"+e).append(t);var n=jQuery("#admin_chat_box_area_"+e)[0].scrollHeight;jQuery("#admin_chat_box_area_"+e).scrollTop(n)})}function wpcl_admin_auto_check_status_of_chat(e){var t={action:"wplc_update_admin_return_chat_status",cid:e,security:wplc_nonce};jQuery.post(ajaxurl,t,function(t){var n=t;if(n=="1"){clearInterval(wplc_auto_check_status_of_chat);clearInterval(wplc_auto_refresh);jQuery("#admin_chat_box_area_"+e).append("<em>User has left the chat</em>");var r=jQuery("#admin_chat_box_area_"+e)[0].scrollHeight;jQuery("#admin_chat_box_area_"+e).scrollTop(r);jQuery("#wplc_admin_send_msg").attr("disabled","disabled")}})}if(jQuery("#wplc_admin_cid").length){var wplc_cid=jQuery("#wplc_admin_cid").val();var height=jQuery("#admin_chat_box_area_"+wplc_cid)[0].scrollHeight;jQuery("#admin_chat_box_area_"+wplc_cid).scrollTop(height)}jQuery(".wplc_admin_accept").live("click",function(){var e=jQuery(this).attr("cid");var t={action:"wplc_admin_accept_chat",cid:e,security:wplc_nonce};jQuery.post(ajaxurl,t,function(t){wplc_refresh_chat_boxes[e]=setInterval(function(){wpcl_admin_update_chat_box(e)},3e3);jQuery("#admin_chat_box_"+e).show()})});jQuery("#wplc_admin_chatmsg").keyup(function(e){if(e.keyCode==13){jQuery("#wplc_admin_send_msg").click()}});jQuery("#wplc_admin_send_msg").live("click",function(){var e=jQuery("#wplc_admin_cid").val();var t=jQuery("#wplc_admin_chatmsg").val();var n="a"+"d"+"m"+"i"+"n";jQuery("#wplc_admin_chatmsg").val("");jQuery("#admin_chat_box_area_"+e).append("<strong>"+n+"</strong>: "+t+"<br />");var r=jQuery("#admin_chat_box_area_"+e)[0].scrollHeight;jQuery("#admin_chat_box_area_"+e).scrollTop(r);var i={action:"wplc_admin_send_msg",security:wplc_nonce,cid:e,msg:t};jQuery.post(ajaxurl,i,function(e){})});wplc_auto_refresh=setInterval(function(){wpcl_admin_auto_update_chat_box(wplc_gcid)},3500);wplc_auto_check_status_of_chat=setInterval(function(){wpcl_admin_auto_check_status_of_chat(wplc_gcid)},5e3)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
926
 
927
 
928
 
@@ -1002,10 +1320,10 @@ function wplc_admin_history_layout() {
1002
  }
1003
 
1004
  function wplc_settings_page_basic() {
1005
- echo"<div class=\"wrap\"><div id=\"icon-edit\" class=\"icon32 icon32-posts-post\"><br></div><h2>".__("WP Live Chat Settings","wplivechat")."</h2>";
1006
 
1007
  $wplc_settings = get_option("WPLC_SETTINGS");
1008
-
1009
 
1010
  if ($wplc_settings["wplc_settings_align"]) { $wplc_settings_align[intval($wplc_settings["wplc_settings_align"])] = "SELECTED"; }
1011
 
@@ -1019,6 +1337,7 @@ function wplc_settings_page_basic() {
1019
  $wplc_pro_chat_logo = wplc_settings_page_pro('chat_logo');
1020
  $wplc_pro_chat_delay = wplc_settings_page_pro('chat_delay');
1021
  $wplc_pro_chat_fs = wplc_settings_page_pro('wplc_chat_window_text1');
 
1022
  } else {
1023
  $wplc_pro_chat_name = "
1024
  <tr>
@@ -1052,14 +1371,23 @@ function wplc_settings_page_basic() {
1052
  </td>
1053
  </tr>
1054
  ";
 
 
 
 
 
 
 
 
 
 
1055
  $wplc_pro_chat_fs = "
1056
  <tr style='height:30px;'><td></td><td></td></tr>
1057
  <tr>
1058
  <td width='200' valign='top'>".__("First Section Text","wplivechat").":</td>
1059
  <td>
1060
- <input type='text' size='50' maxlength='50' class='regular-text' readonly value='Need help?' /> <br />
1061
- <input type='text' size='50' maxlength='50' class='regular-text' readonly value='Click the link below for assistance' /> <br />
1062
- <input type='text' size='50' maxlength='50' class='regular-text' readonly value='Start live chat' /> <br />
1063
  </td>
1064
  </tr>
1065
  <tr>
@@ -1072,9 +1400,17 @@ function wplc_settings_page_basic() {
1072
  </td>
1073
  </tr>
1074
  <tr>
1075
- <td width='200' valign='top'>".__("Reactive Chat Section Text","wplivechat").":</td>
 
 
 
 
 
 
 
 
1076
  <td>
1077
- <input type='text' size='50' maxlength='50' class='regular-text' readonly value='Reactivating your previous chat...' /><small><i> ".__("Edit these text fields using the ","wplivechat")." <a href=\"http://www.wp-livechat.com/purchase-pro/?utm_source=plugin&utm_medium=link&utm_campaign=textfields\" title=\"".__("Pro Add-on","wplivechat")."\" target=\"_BLANK\">".__("Pro Add-on","wplivechat")."</a>. </i></small> <br />
1078
 
1079
 
1080
  </td>
@@ -1087,11 +1423,12 @@ function wplc_settings_page_basic() {
1087
  echo "
1088
 
1089
  <h3>".__("Chat Window Settings",'wplivechat')."</h3>
1090
- <table class='form-table'>
1091
  $wplc_pro_chat_name
1092
  $wplc_pro_chat_pic
1093
  $wplc_pro_chat_logo
1094
  $wplc_pro_chat_delay
 
1095
  <tr>
1096
  <td width='200' valign='top'>".__("Chat Box Alignment","wplivechat").":</td>
1097
  <td>
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: 2.0
7
  Author: WP-LiveChat
8
  Author URI: http://www.wp-livechat.com
9
  */
17
  global $wplc_tblname_msgs;
18
  $wplc_tblname_chats = $wpdb->prefix . "wplc_chat_sessions";
19
  $wplc_tblname_msgs = $wpdb->prefix . "wplc_chat_msgs";
20
+ $wplc_version = "2.0";
21
 
22
 
23
  add_action('wp_footer', 'wplc_display_box');
76
 
77
  var ajaxurl = '<?php echo admin_url( 'admin-ajax.php' ); ?>';
78
  var wplc_nonce = '<?php echo $ajax_nonce; ?>';
79
+ var wplc_check_cookie_id;
80
+ var wplc_check_cookie_stage;
81
+ var wplc_check_hide_cookie;
82
+
83
+ wplc_check_cookie_id = jQuery.cookie('wplc_cid');
84
+ wplc_check_cookie_stage = jQuery.cookie('wplc_stage');
85
+ wplc_check_hide_cookie = jQuery.cookie('wplc_hide');
86
+
87
+
88
+ function wplc_relay_user_stage(stage,cid) {
89
+ if (cid.length) {
90
+ var data = {
91
+ action: 'wplc_relay_stage',
92
+ security: wplc_nonce,
93
+ stage: stage,
94
+ cid: cid
95
+ };
96
+ } else {
97
+ var data = {
98
+ action: 'wplc_relay_stage',
99
+ security: wplc_nonce,
100
+ stage: stage
101
+ };
102
+ }
103
+ jQuery.post(ajaxurl, data, function(response) {
104
+ //console.log("wplc_relay_stage");
105
+ });
106
+ }
107
+
108
+ /* close chat window */
109
+ jQuery("#wp-live-chat-close").live("click", function() {
110
+ jQuery("#wp-live-chat-1").show();
111
+ jQuery("#wp-live-chat-1").css('cursor', 'pointer');
112
+
113
+ jQuery("#wp-live-chat-2").hide();
114
+ jQuery("#wp-live-chat-3").hide();
115
+ jQuery("#wp-live-chat-4").hide();
116
+ jQuery("#wp-live-chat-close").hide();
117
+ jQuery.cookie('wplc_hide', "yes", { expires: 1, path: '/' });
118
+ var data = {
119
+ action: 'wplc_user_close_chat',
120
+ security: wplc_nonce,
121
+ cid: wplc_check_cookie_id
122
+ };
123
+ jQuery.post(ajaxurl, data, function(response) {
124
+ //console.log("wplc_user_close_chat");
125
+ });
126
+ });
127
+
128
+
129
+
130
+ jQuery("#wp-live-chat-1").live("click", function() {
131
+ ///jQuery("#wp-live-chat-1").hide();
132
+ jQuery("#wp-live-chat-1").css('cursor', 'default');
133
+ jQuery.cookie('wplc_hide', "");
134
+ jQuery("#wp-live-chat-close").show();
135
+ jQuery("#wp-live-chat-2").show();
136
+ wplc_check_cookie_stage = jQuery.cookie('wplc_stage');
137
+ if (wplc_check_cookie_stage == "3") {
138
+ jQuery("#wp-live-chat-4").show();
139
+ jQuery("#wplc_chatmsg").focus();
140
+ jQuery("#wp-live-chat-2").hide();
141
+ }
142
+ else {
143
+ jQuery("#wp-live-chat-2").show();
144
+ }
145
+
146
+ });
147
+
148
+ var wplc_user_waiting = null;
149
+
150
+ jQuery("#wplc_start_chat_btn").live("click", function() {
151
+ var wplc_name = jQuery("#wplc_name").val();
152
+ var wplc_email = jQuery("#wplc_email").val();
153
+ if (wplc_name.length <= 0) { alert("Please enter your name"); return false; }
154
+ if (wplc_email.length <= 0) { alert("Please enter your email address"); return false; }
155
+
156
+ jQuery("#wp-live-chat-2").hide();
157
+ jQuery("#wp-live-chat-3").show();
158
+
159
+ wplc_check_cookie_id = jQuery.cookie('wplc_cid');
160
+ var wplc_chat_session_id;
161
+
162
+ var data = {
163
+ action: 'wplc_start_chat',
164
+ security: wplc_nonce,
165
+ name: wplc_name,
166
+ email: wplc_email
167
+ };
168
+ jQuery.post(ajaxurl, data, function(response) {
169
+ //console.log("wplc_start_chat");
170
+ wplc_chat_session_id = response;
171
+ wplc_check_cookie_id = response;
172
+ wplc_user_waiting = setInterval(function (){wplc_user_await_session(wplc_chat_session_id);}, 5000);
173
+
174
+ });
175
+ });
176
+
177
+ function wplc_user_await_session(cid) {
178
+ var data = {
179
+ action: 'wplc_user_awaiting_chat',
180
+ security: wplc_nonce,
181
+ id: cid
182
+ };
183
+ jQuery.post(ajaxurl, data, function(response) {
184
+ //console.log("wplc_user_awaiting_chat");
185
+ //alert("chat status"+response);
186
+ if (response == "3") {
187
+ clearInterval(wplc_user_waiting);
188
+ var wplc_name = jQuery("#wplc_name").val();
189
+ jQuery("#wplc_cid").val(cid)
190
+ jQuery("#wp-live-chat-3").hide();
191
+ jQuery("#wp-live-chat-4").show();
192
+ jQuery("#wplc_chatmsg").focus();
193
+
194
+ // chat is now active
195
+ jQuery.cookie('wplc_cid', cid, { expires: 1, path: '/' });
196
+ jQuery.cookie('wplc_name', wplc_name, { expires: 1, path: '/' });
197
+ jQuery.cookie('wplc_stage', 3, { expires: 1, path: '/' });
198
+ wplc_user_auto_refresh = setInterval(function (){wpcl_user_auto_update_chat_box(cid);}, 3500);
199
+
200
+ };
201
+ });
202
+ return;
203
+ }
204
+ jQuery("#wplc_chatmsg").keyup(function(event){
205
+ if(event.keyCode == 13){
206
+ jQuery("#wplc_send_msg").click();
207
+ }
208
+ });
209
+
210
+ jQuery("#wplc_send_msg").live("click", function() {
211
+ var wplc_cid = jQuery("#wplc_cid").val();
212
+ var wplc_chat = jQuery("#wplc_chatmsg").val();
213
+ var wplc_name = jQuery("#wplc_name").val();
214
+ if (typeof wplc_name == "undefined" || wplc_name == null || wplc_name == "") {
215
+ wplc_name = jQuery.cookie('wplc_name');
216
+ }
217
+ jQuery("#wplc_chatmsg").val('');
218
+ jQuery("#wplc_chatbox").append("<strong>"+wplc_name+"</strong>: "+wplc_chat+"<br />");
219
+ var height = jQuery('#wplc_chatbox')[0].scrollHeight;
220
+ jQuery('#wplc_chatbox').scrollTop(height);
221
+
222
+ var data = {
223
+ action: 'wplc_user_send_msg',
224
+ security: wplc_nonce,
225
+ cid: wplc_cid,
226
+ msg: wplc_chat
227
+ };
228
+ jQuery.post(ajaxurl, data, function(response) {
229
+ //console.log("wplc_user_send_msg");
230
+ });
231
+
232
+ });
233
+
234
+ function wpcl_user_auto_update_chat_box(cid) {
235
+ var data = {
236
+ action: 'wplc_update_user_chat_boxes',
237
+ cid: cid,
238
+ security: wplc_nonce
239
+ };
240
+ jQuery.post(ajaxurl, data, function(response) {
241
+ //console.log("wplc_update_user_chat_boxes");
242
+ jQuery("#wplc_chatbox").append(response);
243
+ var height = jQuery('#wplc_chatbox')[0].scrollHeight;
244
+ jQuery('#wplc_chatbox').scrollTop(height);
245
+
246
+ });
247
+
248
+ }
249
+
250
+
251
+ if (wplc_check_hide_cookie == "yes") {
252
+ jQuery("#wp-live-chat-1").show();
253
+ jQuery("#wp-live-chat-2").hide();
254
+ jQuery("#wp-live-chat-3").hide();
255
+ jQuery("#wp-live-chat-4").hide();
256
+ } else {
257
+ if (typeof wplc_check_cookie_id == "undefined" || wplc_check_cookie_id == null) {
258
+ wplc_dc = setTimeout(function (){jQuery("#wp-live-chat").css({ "display" : "block" }); }, 10000);
259
+ }
260
+ else {
261
+
262
+ jQuery("#wplc_cid").val(wplc_check_cookie_id);
263
+
264
+
265
+
266
+ jQuery("#wp-live-chat-1").show();
267
+ jQuery("#wp-live-chat-2").hide();
268
+ jQuery("#wp-live-chat-3").hide();
269
+ jQuery("#wp-live-chat-4").hide();
270
+ jQuery("#wp-live-chat-react").show();
271
+
272
+
273
+
274
+ jQuery("#wp-live-chat").css({ "display" : "block" });
275
+
276
+
277
+
278
+ var data = {
279
+ action: 'wplc_user_reactivate_chat',
280
+ security: wplc_nonce,
281
+ cid: wplc_check_cookie_id
282
+ };
283
+ jQuery.post(ajaxurl, data, function(response) {
284
+ //console.log("wplc_user_reactivate_chat");
285
+ jQuery("#wp-live-chat-react").hide();
286
+ jQuery("#wp-live-chat-4").show();
287
+ jQuery("#wplc_chatmsg").focus();
288
+ jQuery("#wp-live-chat-close").show();
289
+
290
+ jQuery("#wplc_chatbox").append(response);
291
+ var height = jQuery('#wplc_chatbox')[0].scrollHeight;
292
+ jQuery('#wplc_chatbox').scrollTop(height);
293
+
294
+ wplc_user_auto_refresh = setInterval(function (){wpcl_user_auto_update_chat_box(wplc_check_cookie_id);}, 3500);
295
+ });
296
+ }
297
+ }
298
 
299
  });
300
  </script>
310
 
311
 
312
  ?>
313
+ <div id="wp-live-chat" style="<?php echo $wplc_box_align; ?>;">
314
 
315
 
316
  <?php if (function_exists("wplc_register_pro_version")) {
318
  } else {
319
  ?>
320
 
321
+ <div id="wp-live-chat-close" style="display:none;"></div>
322
  <div id="wp-live-chat-1">
323
+ <strong>Questions?</strong> Chat with us
 
 
324
  </div>
325
  <div id="wp-live-chat-2" style="display:none;">
 
326
  <table>
327
+ <tr>
328
+ <td></td>
329
+ <td><strong>Start Live Chat</strong></td>
330
+ </tr>
331
  <tr>
332
  <td><?php _e("Name","wplivechat"); ?></td>
333
  <td><input type="text" name="wplc_name" id="wplc_name" value="" /></td>
349
  <p>Reactivating your previous chat...</p>
350
  </div>
351
  <div id="wp-live-chat-4" style="display:none;">
352
+ <div id="wplc_chatbox"></div>
353
+ <p style="text-align:center; font-size:11px;">Press ENTER to send your message</p>
354
  <p>
355
  <input type="text" name="wplc_chatmsg" id="wplc_chatmsg" value="" />
356
  <input type="hidden" name="wplc_cid" id="wplc_cid" value="" />
357
+ <input id="wplc_send_msg" type="button" value="<?php _e("Send","wplc"); ?>" style="display:none;" /></p>
358
  </div>
359
 
360
  </div>
364
 
365
  function wplc_display_box() {
366
  $wplc_is_admin_logged_in = get_transient("wplc_is_admin_logged_in");
367
+ if ($wplc_is_admin_logged_in != 1) { echo "<!-- wplc a-n-c -->"; }
368
+ if (function_exists("wplc_register_pro_version")) { wplc_pro_draw_user_box(); } else { wplc_draw_user_box(); }
 
 
 
 
 
 
 
 
 
369
  }
370
 
371
 
427
  }
428
  }
429
  if ($_POST['action'] == "wplc_admin_set_transient") {
430
+ set_transient("wplc_is_admin_logged_in", "1", 70 );
431
 
432
  }
433
 
465
  }
466
  if ($_POST['action'] == "wplc_user_reactivate_chat") {
467
  wplc_change_chat_status($_POST['cid'],3);
468
+ echo wplc_return_chat_messages($_POST['cid']);
469
 
470
  }
471
 
500
  $rows_affected = $wpdb->insert( $wplc_tblname_msgs, $ins_array );
501
 
502
  wplc_update_active_timestamp($cid);
503
+ wplc_change_chat_status($cid,3);
504
  return true;
505
 
506
 
723
  global $wpdb;
724
  global $wplc_tblname_chats;
725
 
726
+ if (function_exists("wplc_register_pro_version")) {
727
+ wplc_pro_notify_via_email();
728
+ }
729
+
730
  if ($cid != null) { // change from a visitor to a chat
731
  $query =
732
  "
905
 
906
  var wplc_set_transient = null;
907
 
908
+ wplc_set_transient = setInterval(function (){wpcl_admin_set_transient();}, 60000);
909
  wpcl_admin_set_transient();
910
  function wpcl_admin_set_transient() {
911
  var data = {
935
  var wplc_refresh_chat_area = null;
936
  var wplc_refresh_status = null;
937
 
 
938
 
939
 
940
 
942
  function wpcl_admin_update_chats(cid) {
943
  var data = {
944
  action: 'wplc_update_admin_chat',
945
+ security: '<?php echo $ajax_nonce; ?>'
946
  };
947
  jQuery.post(ajaxurl, data, function(response) {
948
  //console.log("wplc_update_admin_chat");
959
  function wplc_update_statuses() {
960
  var data = {
961
  action: 'wplc_update_admin_status',
962
+ security: '<?php echo $ajax_nonce; ?>'
963
  };
964
  jQuery.post(ajaxurl, data, function(response) {
965
  //console.log("wplc_update_admin_status");
1072
 
1073
  if ($_GET['action'] == 'ac') {
1074
  wplc_change_chat_status($_GET['cid'],3);
1075
+ if (function_exists("wplc_register_pro_version")) { wplc_pro_draw_chat_area($_GET['cid']); } else { wplc_draw_chat_area($_GET['cid']); }
1076
  }
1077
  }
1078
  }
1114
  ";
1115
  if ($result->status != 1) {
1116
  echo "
1117
+ <p style=\"text-align:left; font-size:11px;\">Press ENTER to send your message</p>
1118
+ <input type='text' name='wplc_admin_chatmsg' id='wplc_admin_chatmsg' value='' style=\"border:1px solid #666; width:290px;\" />
1119
  <input id='wplc_admin_cid' type='hidden' value='".$_GET['cid']."' />
1120
+ <input id='wplc_admin_send_msg' type='button' value='".__("Send","wplc")."' style=\"display:none;\" />
1121
  </p>
1122
  </div>
1123
  ";
1136
  <script type="text/javascript">
1137
  jQuery(document).ready(function() {
1138
 
1139
+
1140
  var wplc_nonce = '<?php echo $ajax_nonce; ?>';
1141
  var wplc_gcid = '<?php echo $cid; ?>';
1142
+
1143
+ if (jQuery('#wplc_admin_cid').length){
1144
+ var wplc_cid = jQuery("#wplc_admin_cid").val();
1145
+ var height = jQuery('#admin_chat_box_area_'+wplc_cid)[0].scrollHeight;
1146
+ jQuery('#admin_chat_box_area_'+wplc_cid).scrollTop(height);
1147
+ }
1148
+
1149
+ jQuery(".wplc_admin_accept").live("click", function() {
1150
+ var cid = jQuery(this).attr("cid");
1151
+
1152
+ var data = {
1153
+ action: 'wplc_admin_accept_chat',
1154
+ cid: cid,
1155
+ security: wplc_nonce
1156
+ };
1157
+ jQuery.post(ajaxurl, data, function(response) {
1158
+ //console.log("wplc_admin_accept_chat");
1159
+ wplc_refresh_chat_boxes[cid] = setInterval(function (){wpcl_admin_update_chat_box(cid);}, 3000);
1160
+ jQuery("#admin_chat_box_"+cid).show();
1161
+ });
1162
+ });
1163
+
1164
+ jQuery("#wplc_admin_chatmsg").keyup(function(event){
1165
+ if(event.keyCode == 13){
1166
+ jQuery("#wplc_admin_send_msg").click();
1167
+ }
1168
+ });
1169
+
1170
+ jQuery("#wplc_admin_send_msg").live("click", function() {
1171
+ var wplc_cid = jQuery("#wplc_admin_cid").val();
1172
+ var wplc_chat = jQuery("#wplc_admin_chatmsg").val();
1173
+ var wplc_name = "a"+"d"+"m"+"i"+"n";
1174
+ jQuery("#wplc_admin_chatmsg").val('');
1175
+
1176
+
1177
+ jQuery("#admin_chat_box_area_"+wplc_cid).append("<strong>"+wplc_name+"</strong>: "+wplc_chat+"<br />");
1178
+ var height = jQuery('#admin_chat_box_area_'+wplc_cid)[0].scrollHeight;
1179
+ jQuery('#admin_chat_box_area_'+wplc_cid).scrollTop(height);
1180
+
1181
+
1182
+ var data = {
1183
+ action: 'wplc_admin_send_msg',
1184
+ security: wplc_nonce,
1185
+ cid: wplc_cid,
1186
+ msg: wplc_chat
1187
+ };
1188
+ jQuery.post(ajaxurl, data, function(response) {
1189
+ //console.log("wplc_admin_send_msg");
1190
+
1191
+ });
1192
+
1193
+
1194
+ });
1195
+
1196
+
1197
+ wplc_auto_refresh = setInterval(function (){wpcl_admin_auto_update_chat_box(wplc_gcid);}, 3500);
1198
+ function wpcl_admin_auto_update_chat_box(cid) {
1199
+
1200
+ var data = {
1201
+ action: 'wplc_update_admin_chat_boxes',
1202
+ cid: cid,
1203
+ security: wplc_nonce
1204
+ };
1205
+ jQuery.post(ajaxurl, data, function(response) {
1206
+ //console.log("wplc_update_admin_chat_boxes");
1207
+ //alert(response);
1208
+ //jQuery("#admin_chat_box_area_"+cid).html(response);
1209
+ jQuery("#admin_chat_box_area_"+cid).append(response);
1210
+ var height = jQuery('#admin_chat_box_area_'+cid)[0].scrollHeight;
1211
+ jQuery('#admin_chat_box_area_'+cid).scrollTop(height);
1212
+ });
1213
+
1214
+ }
1215
+
1216
+
1217
+
1218
+ wplc_auto_check_status_of_chat = setInterval(function (){wpcl_admin_auto_check_status_of_chat(<?php echo $cid; ?>);}, 5000);
1219
+ var chat_status = 3;
1220
+ function wpcl_admin_auto_check_status_of_chat(cid) {
1221
+
1222
+ var data = {
1223
+ action: 'wplc_update_admin_return_chat_status',
1224
+ cid: <?php echo $cid; ?>,
1225
+ security: '<?php echo $ajax_nonce; ?>'
1226
+ };
1227
+ jQuery.post(ajaxurl, data, function(response) {
1228
+ //console.log("wplc_update_admin_return_chat_status");
1229
+ if (chat_status != response) {
1230
+ chat_status = response;
1231
+ if (chat_status == "1") {
1232
+ //clearInterval(wplc_auto_check_status_of_chat);
1233
+ //clearInterval(wplc_auto_refresh);
1234
+ jQuery("#admin_chat_box_area_"+cid).append("<em><?php _e("User has minimized the chat window","wplivechat"); ?></em><br />");
1235
+ var height = jQuery('#admin_chat_box_area_'+cid)[0].scrollHeight;
1236
+ jQuery('#admin_chat_box_area_'+cid).scrollTop(height);
1237
+
1238
+ }
1239
+ }
1240
+
1241
+ });
1242
+
1243
+ }
1244
 
1245
 
1246
 
1320
  }
1321
 
1322
  function wplc_settings_page_basic() {
1323
+ echo"<div class=\"wrap\"><div id=\"icon-edit\" class=\"icon32 icon32-posts-post\"><br></div><h2>".__("WP Live Chat Support Settings","wplivechat")."</h2>";
1324
 
1325
  $wplc_settings = get_option("WPLC_SETTINGS");
1326
+
1327
 
1328
  if ($wplc_settings["wplc_settings_align"]) { $wplc_settings_align[intval($wplc_settings["wplc_settings_align"])] = "SELECTED"; }
1329
 
1337
  $wplc_pro_chat_logo = wplc_settings_page_pro('chat_logo');
1338
  $wplc_pro_chat_delay = wplc_settings_page_pro('chat_delay');
1339
  $wplc_pro_chat_fs = wplc_settings_page_pro('wplc_chat_window_text1');
1340
+ $wplc_pro_chat_emailme = wplc_settings_page_pro('chat_email_on_chat');
1341
  } else {
1342
  $wplc_pro_chat_name = "
1343
  <tr>
1371
  </td>
1372
  </tr>
1373
  ";
1374
+ $wplc_pro_chat_emailme = "
1375
+ <tr>
1376
+ <td width='200' valign='top'>".__("Chat notifications","wplivechat").":</td>
1377
+ <td>
1378
+ <input id='wplc_pro_chat_notification' name='wplc_pro_chat_notification' type='checkbox' value='yes' disabled=\"disabled\" readonly/>
1379
+ ".__("Alert me via email as soon as someone wants to chat","wplivechat")."
1380
+ <small><i> ".__("available in the","wplivechat")." <a href=\"http://www.wp-livechat.com/purchase-pro/?utm_source=plugin&utm_medium=link&utm_campaign=alert\" title=\"".__("Pro Add-on","wplivechat")."\" target=\"_BLANK\">".__("Pro Add-on","wplivechat")."</a> ".__("only","wplivechat").". </i></small>
1381
+ </td>
1382
+ </tr>
1383
+ ";
1384
  $wplc_pro_chat_fs = "
1385
  <tr style='height:30px;'><td></td><td></td></tr>
1386
  <tr>
1387
  <td width='200' valign='top'>".__("First Section Text","wplivechat").":</td>
1388
  <td>
1389
+ <input type='text' size='50' maxlength='50' class='regular-text' readonly value='Questions?' /> <br />
1390
+ <input type='text' size='50' maxlength='50' class='regular-text' readonly value='Chat with us' /> <br />
 
1391
  </td>
1392
  </tr>
1393
  <tr>
1400
  </td>
1401
  </tr>
1402
  <tr>
1403
+ <td width='200' valign='top'>".__("Reactivate Chat Section Text","wplivechat").":</td>
1404
+ <td>
1405
+ <input type='text' size='50' maxlength='50' class='regular-text' readonly value='Reactivating your previous chat...' /><small><i> ".__("Edit these text fields using the ","wplivechat")." <a href=\"http://www.wp-livechat.com/purchase-pro/?utm_source=plugin&utm_medium=link&utm_campaign=textfields3\" title=\"".__("Pro Add-on","wplivechat")."\" target=\"_BLANK\">".__("Pro Add-on","wplivechat")."</a>. </i></small> <br />
1406
+
1407
+
1408
+ </td>
1409
+ </tr>
1410
+ <tr>
1411
+ <td width='200' valign='top'>".__("Offline Text","wplivechat").":</td>
1412
  <td>
1413
+ <input type='text' size='50' maxlength='50' class='regular-text' readonly value='Chat offline. Leave a message' /><small><i> ".__("Edit these text fields using the ","wplivechat")." <a href=\"http://www.wp-livechat.com/purchase-pro/?utm_source=plugin&utm_medium=link&utm_campaign=textfields4\" title=\"".__("Pro Add-on","wplivechat")."\" target=\"_BLANK\">".__("Pro Add-on","wplivechat")."</a>. </i></small> <br />
1414
 
1415
 
1416
  </td>
1423
  echo "
1424
 
1425
  <h3>".__("Chat Window Settings",'wplivechat')."</h3>
1426
+ <table class='form-table' width='700'>
1427
  $wplc_pro_chat_name
1428
  $wplc_pro_chat_pic
1429
  $wplc_pro_chat_logo
1430
  $wplc_pro_chat_delay
1431
+ $wplc_pro_chat_emailme
1432
  <tr>
1433
  <td width='200' valign='top'>".__("Chat Box Alignment","wplivechat").":</td>
1434
  <td>
wplcstyle.css CHANGED
@@ -1,10 +1,67 @@
1
  #wp-live-chat input[type="button"] { width:100px !important; }
2
- #wp-live-chat input[type="text"] { width:150px !important; }
3
- #wplc_chatbox { border: 1px solid #CCC; overflow: auto; padding-top:5px; }
4
- #wp-live-chat-close { position:absolute; right:5px; top:5px; width:10px; height:10px; cursor: pointer; }
 
 
 
 
 
 
 
 
 
5
  #wp-live-chat table { border: 0 !important; }
6
  #wp-live-chat table td { border: 0 !important; }
7
  #wp-live-chat h4 { font-size:20px; margin:3px; }
8
  #wp-live-chat p { font-size:14px; margin:3px; }
9
  #wp-live-chat #wplc-sb { font-size:14px; font-weight:bold; }
10
- #wp-live-chat-4 { padding-top:8px; }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  #wp-live-chat input[type="button"] { width:100px !important; }
2
+ #wp-live-chat input[type="text"] { width:150px; border:1px solid #CCC; }
3
+ #wp-live-chat textarea { width:145px; height:40px; border:1px solid #CCC; }
4
+ #wplc_chatbox {
5
+ border: 1px solid #CCC;
6
+ overflow: auto;
7
+ padding:5px;
8
+ height:200px;
9
+ overflow:auto;
10
+ width:230px;
11
+ margin-left:5px;
12
+ }
13
+ #wp-live-chat td { padding:5px; padding-left:10px; }
14
  #wp-live-chat table { border: 0 !important; }
15
  #wp-live-chat table td { border: 0 !important; }
16
  #wp-live-chat h4 { font-size:20px; margin:3px; }
17
  #wp-live-chat p { font-size:14px; margin:3px; }
18
  #wp-live-chat #wplc-sb { font-size:14px; font-weight:bold; }
19
+ #wp-live-chat-4 { padding-top:8px; }
20
+ #wp-live-chat {
21
+ box-shadow: 5px 5px 5px #888;
22
+ border:2px solid #888;
23
+ position:fixed;
24
+ bottom:0px;
25
+ z-index:105;
26
+ display:block;
27
+ background: #fff;
28
+ width:250px;
29
+
30
+ }
31
+ #wp-live-chat-1 {
32
+ background: #73BE28;
33
+ cursor: pointer;
34
+ padding:5px;
35
+ padding-left:20px;
36
+ padding-right:20px;
37
+ font-size:14px;
38
+
39
+ color:#FFF;
40
+ }
41
+ #wp-live-chat-close { position:absolute; right:5px; top:10px; width:10px; cursor: pointer; height:3px; background:#FFF; }
42
+ #wp-live-chat-2-info {
43
+ font-size:11px;
44
+ display:block;
45
+ width:212px;
46
+ margin-left:auto;
47
+ margin-right:auto;
48
+ margin-top:10px;
49
+ overflow:auto;
50
+ border:1px solid #ccc;
51
+ padding:2px;
52
+ }
53
+ #wp-live-chat-2-img {
54
+ float:left;
55
+ padding:5px;
56
+ }
57
+ #wplc_chatmsg {
58
+ width:215px !important;
59
+ margin-left:10px;
60
+ border:1px solid #9D9D9D;
61
+
62
+ }
63
+ .wplc_offline {
64
+ font-size:12px;
65
+ font-weight:bold;
66
+ }
67
+ .wplc_logo_class { max-width: 220px; }