Version Description
- Maintenance update: More curl robustness enhancements.
Download this release
Release Info
Developer | bencxr |
Plugin | Zendesk Chat |
Version | 1.0.2 |
Comparing to | |
See all releases |
Code changes from version 1.0.1 to 1.0.2
- readme.txt +3 -0
- zopim.php +18 -29
readme.txt
CHANGED
@@ -30,6 +30,9 @@ Great for improving interaction with your users and increasing the time they spe
|
|
30 |
|
31 |
== Changelog ==
|
32 |
|
|
|
|
|
|
|
33 |
= 1.0.1 =
|
34 |
* Maintenance update: More robust connectivity, CURL errors caught
|
35 |
* Note: PHP Curl is required (and has always been).
|
30 |
|
31 |
== Changelog ==
|
32 |
|
33 |
+
= 1.0.2 =
|
34 |
+
* Maintenance update: More curl robustness enhancements.
|
35 |
+
|
36 |
= 1.0.1 =
|
37 |
* Maintenance update: More robust connectivity, CURL errors caught
|
38 |
* Note: PHP Curl is required (and has always been).
|
zopim.php
CHANGED
@@ -5,7 +5,7 @@ Plugin Name: Zopim Widget
|
|
5 |
Plugin URI: http://www.zopim.org
|
6 |
Description: Zopim embeds a chatbar on your website, so that any visitor can chat with you directly by clicking on the chatbar.
|
7 |
Author: Isidore
|
8 |
-
Version: 1.0
|
9 |
Author URI: http://www.isidorechan.com/
|
10 |
*/
|
11 |
|
@@ -40,7 +40,7 @@ function zopimme() {
|
|
40 |
|
41 |
// Use zopim's code...
|
42 |
echo "
|
43 |
-
<!-- Start of Zopim Live Chat Script -->
|
44 |
<script type=\"text/javascript\">
|
45 |
document.write(unescape(\"%3Cscript src='\" + document.location.protocol + \"//".ZOPIM_SCRIPT_DOMAIN."/?".$code."' charset='utf-8' type='text/javascript'%3E%3C/script%3E\"));
|
46 |
</script>
|
@@ -51,7 +51,7 @@ document.write(unescape(\"%3Cscript src='\" + document.location.protocol + \"//"
|
|
51 |
if (get_option('zopimLang') != "" && get_option('zopimLang') != "--") {
|
52 |
$theoptions[] = " language: '".get_option('zopimLang')."'";
|
53 |
}
|
54 |
-
|
55 |
|
56 |
if ( isset($current_user) && get_option("zopimGetVisitorInfo") == "checked" )
|
57 |
{
|
@@ -96,10 +96,10 @@ document.write(unescape(\"%3Cscript src='\" + document.location.protocol + \"//"
|
|
96 |
if (get_option('zopimGreetings') != "") {
|
97 |
$greetings = json_to_array(get_option('zopimGreetings'));
|
98 |
echo "\n\$zopim.livechat.setGreetings({
|
99 |
-
|
100 |
'offline': ['".addslashes($greetings->offline->bar)."', '".addslashes($greetings->offline->window)."'],
|
101 |
'away': ['".addslashes($greetings->away->bar)."', '".addslashes($greetings->away->window)."'] });
|
102 |
-
|
103 |
}
|
104 |
echo "</script>";
|
105 |
}
|
@@ -108,7 +108,7 @@ function zopim_create_menu() {
|
|
108 |
|
109 |
//create new top-level menu
|
110 |
add_menu_page('Account Configuration', 'Zopim Chat', 'administrator', 'zopim_account_config', 'zopim_account_config', ZOPIM_SMALL_LOGO);
|
111 |
-
// add_submenu_page('zopim_about', "About", "About", "administrator", 'zopim_about', 'zopim_about');
|
112 |
add_submenu_page('zopim_account_config', 'Account Configuration', 'Account Setup', 'administrator', 'zopim_account_config', 'zopim_account_config');
|
113 |
add_submenu_page('zopim_account_config', 'Customize Widget', 'Customize', 'administrator', 'zopim_customize_widget', 'zopim_customize_widget');
|
114 |
add_submenu_page('zopim_account_config', 'IM Integration', 'IM Chat Bots', 'administrator', 'zopim_instant_messaging', 'zopim_instant_messaging');
|
@@ -120,7 +120,7 @@ function zopim_create_menu() {
|
|
120 |
|
121 |
function check_zopimCode() {
|
122 |
/*
|
123 |
-
// if (get_option('zopimCode') == '' && ($_GET["page"] != "zopim_account_config")) {
|
124 |
if (ereg("zopim", $_GET["page"] )) {
|
125 |
//add_action( 'admin_notices', create_function( '', 'echo "<div class=\"error\"><p>" . sprintf( "Please <a href=\"%s\">input your Zopim account details</a>.", "admin.php?page=zopim_account_config" ) . "</p></div>";' ) );
|
126 |
add_action( 'admin_notices', create_function( '', 'echo "<div class=\"error\"><p>This Zopim plugin is a work in progress. We will launch on the 25th of January. Thank you for your interest.</p></div>";' ) );
|
@@ -144,7 +144,7 @@ function zopim_about() {
|
|
144 |
function zopim_dashboard() {
|
145 |
|
146 |
echo '<div id="dashboarddiv"><iframe id="dashboardiframe" src="'.ZOPIM_DASHBOARD_URL.'" height=700 width=98% scrolling="no"></iframe></div> You may also <a href="'.ZOPIM_DASHBOARD_URL.'" target="_newWindow" onClick="javascript:document.getElementById(\'dashboarddiv\').innerHTML=\'\'; ">access the dashboard in a new window</a>.
|
147 |
-
|
148 |
}
|
149 |
|
150 |
// Register the option settings we will be using
|
@@ -199,35 +199,24 @@ add_action('admin_menu', 'zopim_create_menu');
|
|
199 |
|
200 |
function do_post_request($url, $_data, $optional_headers = null)
|
201 |
{
|
202 |
-
$gadURL = ZOPIM_GETACCOUNTDETAILS_URL;
|
203 |
if (get_option('zopimUseSSL') != "zopimUseSSL") {
|
204 |
-
$
|
205 |
}
|
206 |
|
207 |
-
$data = array();
|
208 |
-
|
209 |
while(list($n,$v) = each($_data)){
|
210 |
$data[] = urlencode($n)."=".urlencode($v);
|
211 |
}
|
212 |
|
213 |
$data = implode('&', $data);
|
214 |
-
$
|
215 |
-
|
216 |
-
|
217 |
-
)
|
218 |
-
|
219 |
-
$params['http']['header'] = $optional_headers;
|
220 |
-
}
|
221 |
-
$ctx = stream_context_create($params);
|
222 |
-
$fp = @fopen($url, 'rb', false, $ctx);
|
223 |
|
224 |
-
|
225 |
-
|
226 |
-
}
|
227 |
-
$response = @stream_get_contents($fp);
|
228 |
-
if ($response === false) {
|
229 |
-
// echo("Problem reading data from $url, $php_errormsg");
|
230 |
-
}
|
231 |
|
232 |
return $response;
|
233 |
}
|
@@ -246,7 +235,7 @@ function to_json($variable) {
|
|
246 |
|
247 |
// json_decode does exist but only in php > 5.2.0
|
248 |
require_once('JSON.php');
|
249 |
-
|
250 |
$jsonparser = new Services_JSON();
|
251 |
|
252 |
return ($jsonparser->encode($variable));
|
5 |
Plugin URI: http://www.zopim.org
|
6 |
Description: Zopim embeds a chatbar on your website, so that any visitor can chat with you directly by clicking on the chatbar.
|
7 |
Author: Isidore
|
8 |
+
Version: 1.0.2
|
9 |
Author URI: http://www.isidorechan.com/
|
10 |
*/
|
11 |
|
40 |
|
41 |
// Use zopim's code...
|
42 |
echo "
|
43 |
+
<!-- Start of Zopim Live Chat Script -->
|
44 |
<script type=\"text/javascript\">
|
45 |
document.write(unescape(\"%3Cscript src='\" + document.location.protocol + \"//".ZOPIM_SCRIPT_DOMAIN."/?".$code."' charset='utf-8' type='text/javascript'%3E%3C/script%3E\"));
|
46 |
</script>
|
51 |
if (get_option('zopimLang') != "" && get_option('zopimLang') != "--") {
|
52 |
$theoptions[] = " language: '".get_option('zopimLang')."'";
|
53 |
}
|
54 |
+
|
55 |
|
56 |
if ( isset($current_user) && get_option("zopimGetVisitorInfo") == "checked" )
|
57 |
{
|
96 |
if (get_option('zopimGreetings') != "") {
|
97 |
$greetings = json_to_array(get_option('zopimGreetings'));
|
98 |
echo "\n\$zopim.livechat.setGreetings({
|
99 |
+
'online': ['".addslashes($greetings->online->bar)."', '".addslashes($greetings->online->window)."'],
|
100 |
'offline': ['".addslashes($greetings->offline->bar)."', '".addslashes($greetings->offline->window)."'],
|
101 |
'away': ['".addslashes($greetings->away->bar)."', '".addslashes($greetings->away->window)."'] });
|
102 |
+
";
|
103 |
}
|
104 |
echo "</script>";
|
105 |
}
|
108 |
|
109 |
//create new top-level menu
|
110 |
add_menu_page('Account Configuration', 'Zopim Chat', 'administrator', 'zopim_account_config', 'zopim_account_config', ZOPIM_SMALL_LOGO);
|
111 |
+
// add_submenu_page('zopim_about', "About", "About", "administrator", 'zopim_about', 'zopim_about');
|
112 |
add_submenu_page('zopim_account_config', 'Account Configuration', 'Account Setup', 'administrator', 'zopim_account_config', 'zopim_account_config');
|
113 |
add_submenu_page('zopim_account_config', 'Customize Widget', 'Customize', 'administrator', 'zopim_customize_widget', 'zopim_customize_widget');
|
114 |
add_submenu_page('zopim_account_config', 'IM Integration', 'IM Chat Bots', 'administrator', 'zopim_instant_messaging', 'zopim_instant_messaging');
|
120 |
|
121 |
function check_zopimCode() {
|
122 |
/*
|
123 |
+
// if (get_option('zopimCode') == '' && ($_GET["page"] != "zopim_account_config")) {
|
124 |
if (ereg("zopim", $_GET["page"] )) {
|
125 |
//add_action( 'admin_notices', create_function( '', 'echo "<div class=\"error\"><p>" . sprintf( "Please <a href=\"%s\">input your Zopim account details</a>.", "admin.php?page=zopim_account_config" ) . "</p></div>";' ) );
|
126 |
add_action( 'admin_notices', create_function( '', 'echo "<div class=\"error\"><p>This Zopim plugin is a work in progress. We will launch on the 25th of January. Thank you for your interest.</p></div>";' ) );
|
144 |
function zopim_dashboard() {
|
145 |
|
146 |
echo '<div id="dashboarddiv"><iframe id="dashboardiframe" src="'.ZOPIM_DASHBOARD_URL.'" height=700 width=98% scrolling="no"></iframe></div> You may also <a href="'.ZOPIM_DASHBOARD_URL.'" target="_newWindow" onClick="javascript:document.getElementById(\'dashboarddiv\').innerHTML=\'\'; ">access the dashboard in a new window</a>.
|
147 |
+
';
|
148 |
}
|
149 |
|
150 |
// Register the option settings we will be using
|
199 |
|
200 |
function do_post_request($url, $_data, $optional_headers = null)
|
201 |
{
|
|
|
202 |
if (get_option('zopimUseSSL') != "zopimUseSSL") {
|
203 |
+
$url = str_replace("https", "http", $url);
|
204 |
}
|
205 |
|
206 |
+
$data = array();
|
|
|
207 |
while(list($n,$v) = each($_data)){
|
208 |
$data[] = urlencode($n)."=".urlencode($v);
|
209 |
}
|
210 |
|
211 |
$data = implode('&', $data);
|
212 |
+
$ch = curl_init();
|
213 |
+
curl_setopt($ch, CURLOPT_URL, $url);
|
214 |
+
curl_setopt($ch, CURLOPT_POST, true);
|
215 |
+
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
|
216 |
+
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
|
|
|
|
|
|
|
|
|
217 |
|
218 |
+
$response = curl_exec($ch);
|
219 |
+
curl_close($ch);
|
|
|
|
|
|
|
|
|
|
|
220 |
|
221 |
return $response;
|
222 |
}
|
235 |
|
236 |
// json_decode does exist but only in php > 5.2.0
|
237 |
require_once('JSON.php');
|
238 |
+
|
239 |
$jsonparser = new Services_JSON();
|
240 |
|
241 |
return ($jsonparser->encode($variable));
|