Version Description
- [Bugfix] Social avatar url was broken when using LiveJournal login
- [Improvement] Social Share dialogue was being opened in new tab instead of the popup window, in the latest version of Google Chrome browser
- [Improvement] 3rd party library "Simple OpenID PHP Class" being used for LiveJournal Login was generating PHP warnings with PHP7
Download this release
Release Info
Developer | the_champ |
Plugin | WordPress Social Share, Social Login and Social Comments Plugin – Super Socializer |
Version | 7.9.3 |
Comparing to | |
See all releases |
Code changes from version 7.9.2 to 7.9.3
- inc/shortcode.php +1 -8
- js/front/combined.js +1 -1
- js/front/social_login/general.js +1 -1
- library/LiveJournalLogin/class.openid.v3.php +22 -22
- readme.txt +12 -2
- super_socializer.php +4 -4
inc/shortcode.php
CHANGED
@@ -84,14 +84,7 @@ function the_champ_sharing_shortcode($params){
|
|
84 |
$html .= the_champ_prepare_sharing_html($shortUrl == '' ? $targetUrl : $shortUrl, $type, $count, $total_shares == 'ON' ? 1 : 0, $shareCountTransientId);
|
85 |
$html .= '</div>';
|
86 |
if(($count || $total_shares == 'ON') && $cachedShareCount === false){
|
87 |
-
$html .= '<script>theChampLoadEvent(
|
88 |
-
function(){
|
89 |
-
// sharing counts
|
90 |
-
theChampCallAjax(function(){
|
91 |
-
theChampGetSharingCounts();
|
92 |
-
});
|
93 |
-
}
|
94 |
-
);</script>';
|
95 |
}
|
96 |
return $html;
|
97 |
}
|
84 |
$html .= the_champ_prepare_sharing_html($shortUrl == '' ? $targetUrl : $shortUrl, $type, $count, $total_shares == 'ON' ? 1 : 0, $shareCountTransientId);
|
85 |
$html .= '</div>';
|
86 |
if(($count || $total_shares == 'ON') && $cachedShareCount === false){
|
87 |
+
$html .= '<script>theChampLoadEvent(function(){theChampCallAjax(function(){theChampGetSharingCounts();});});</script>';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
88 |
}
|
89 |
return $html;
|
90 |
}
|
js/front/combined.js
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
theChampFBKey = typeof theChampFBKey != 'undefined' ? theChampFBKey : '', theChampFBLang = typeof theChampFBLang != 'undefined' ? theChampFBLang : 'en_US', theChampFbIosLogin = typeof theChampFbIosLogin != 'undefined' ? theChampFbIosLogin : 0;
|
2 |
// general.js
|
3 |
-
function theChampPopup(e){window.open(e,"
|
4 |
function heateorSsBrowserMsg(){var a=document.createElement("div");a.innerHTML='<button id="heateor_ss_browser_msg_close" class="close-button separated"><img src="'+theChampCloseIconPath+'" /></button><div id="the_champ_sharing_more_content"><div class="all-services" style="padding:20px 10px 0px 10px;height:auto;"><p>'+heateorSsSDKBlockedMsg+"</p></div></div>",a.setAttribute("id","the_champ_sharing_more_providers"),a.setAttribute("style","height:auto;");var b=document.createElement("div");b.setAttribute("id","heateor_ss_browser_popup_bg"),jQuery("body").append(a).append(b),document.getElementById("heateor_ss_browser_popup_bg").onclick=document.getElementById("heateor_ss_browser_msg_close").onclick=function(){a.parentNode.removeChild(a),b.parentNode.removeChild(b)}}
|
5 |
"undefined"!=typeof heateorSsSDKBlockedMsg&&jQuery(function(){"shown"!=localStorage.getItem("heateorSsBrowserMsg")&&(jQuery("<img/>").attr("src","//apps.facebook.com/favicon.ico").error(function(){heateorSsBrowserMsg()}).css("display","none").appendTo(document.body),localStorage.setItem("heateorSsBrowserMsg","shown"))});
|
6 |
function heateorSsLJLoginPopup(){var a=document.createElement("div");a.innerHTML='<button id="heateor_ss_lj_popup_close" class="close-button separated"><img src="'+theChampCloseIconPath+'" /></button><div id="the_champ_sharing_more_content"><div class="all-services" style="padding:20px 10px 0px 10px;height:auto;"><fieldset id="ss_openid"><legend>LiveJournal Login</legend><form action="'+theChampLJAuthUrl+'" method="post" onsubmit="this.login.disabled=true;"><input type="hidden" name="openid_action" value="SuperSocializerLogin"><div style="clear:both">'+theChampLJLoginUsernameString+'</div><div style="clear:both"><input type="text" name="openid_url" required class="openid_login"><input type="submit" name="login" value="Login"></div></form></fieldset></div></div></div>',a.setAttribute("id","the_champ_sharing_more_providers"),a.setAttribute("style","height:auto;");var b=document.createElement("div");b.setAttribute("id","heateor_ss_lj_popup_bg"),jQuery("body").append(a).append(b),document.getElementById("heateor_ss_lj_popup_bg").onclick=document.getElementById("heateor_ss_lj_popup_close").onclick=function(){a.parentNode.removeChild(a),b.parentNode.removeChild(b)}}
|
1 |
theChampFBKey = typeof theChampFBKey != 'undefined' ? theChampFBKey : '', theChampFBLang = typeof theChampFBLang != 'undefined' ? theChampFBLang : 'en_US', theChampFbIosLogin = typeof theChampFbIosLogin != 'undefined' ? theChampFbIosLogin : 0;
|
2 |
// general.js
|
3 |
+
function theChampPopup(e){window.open(e,"_blank","height=400,width=600,left=400,top=100,resizable,scrollbars,toolbar=0,personalbar=0,menubar=no,location=no,directories=no,status")}function theChampStrReplace(e,t,n){for(var r=0;r<e.length;r++){n=n.replace(new RegExp(e[r],"g"),t[r])}return n}function theChampCallAjax(e){if(typeof jQuery!="undefined"){e()}else{theChampGetScript("https://code.jquery.com/jquery-latest.min.js",e)}}function theChampGetScript(e,t){var n=document.createElement("script");n.src=e;var r=document.getElementsByTagName("head")[0],i=false;n.onload=n.onreadystatechange=function(){if(!i&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){i=true;t();n.onload=n.onreadystatechange=null;r.removeChild(n)}};r.appendChild(n)}function theChampGetElementsByClass(e,t){if(e.getElementsByClassName){return e.getElementsByClassName(t)}else{return function(e,t){if(t==null){t=document}var n=[],r=t.getElementsByTagName("*"),i=r.length,s=new RegExp("(^|\\s)"+e+"(\\s|$)"),o,u;for(o=0,u=0;o<i;o++){if(s.test(r[o].className)){n[u]=r[o];u++}}return n}(t,e)}}if(typeof String.prototype.trim!=="function"){String.prototype.trim=function(){return this.replace(/^\s+|\s+$/g,"")}}
|
4 |
function heateorSsBrowserMsg(){var a=document.createElement("div");a.innerHTML='<button id="heateor_ss_browser_msg_close" class="close-button separated"><img src="'+theChampCloseIconPath+'" /></button><div id="the_champ_sharing_more_content"><div class="all-services" style="padding:20px 10px 0px 10px;height:auto;"><p>'+heateorSsSDKBlockedMsg+"</p></div></div>",a.setAttribute("id","the_champ_sharing_more_providers"),a.setAttribute("style","height:auto;");var b=document.createElement("div");b.setAttribute("id","heateor_ss_browser_popup_bg"),jQuery("body").append(a).append(b),document.getElementById("heateor_ss_browser_popup_bg").onclick=document.getElementById("heateor_ss_browser_msg_close").onclick=function(){a.parentNode.removeChild(a),b.parentNode.removeChild(b)}}
|
5 |
"undefined"!=typeof heateorSsSDKBlockedMsg&&jQuery(function(){"shown"!=localStorage.getItem("heateorSsBrowserMsg")&&(jQuery("<img/>").attr("src","//apps.facebook.com/favicon.ico").error(function(){heateorSsBrowserMsg()}).css("display","none").appendTo(document.body),localStorage.setItem("heateorSsBrowserMsg","shown"))});
|
6 |
function heateorSsLJLoginPopup(){var a=document.createElement("div");a.innerHTML='<button id="heateor_ss_lj_popup_close" class="close-button separated"><img src="'+theChampCloseIconPath+'" /></button><div id="the_champ_sharing_more_content"><div class="all-services" style="padding:20px 10px 0px 10px;height:auto;"><fieldset id="ss_openid"><legend>LiveJournal Login</legend><form action="'+theChampLJAuthUrl+'" method="post" onsubmit="this.login.disabled=true;"><input type="hidden" name="openid_action" value="SuperSocializerLogin"><div style="clear:both">'+theChampLJLoginUsernameString+'</div><div style="clear:both"><input type="text" name="openid_url" required class="openid_login"><input type="submit" name="login" value="Login"></div></form></fieldset></div></div></div>',a.setAttribute("id","the_champ_sharing_more_providers"),a.setAttribute("style","height:auto;");var b=document.createElement("div");b.setAttribute("id","heateor_ss_lj_popup_bg"),jQuery("body").append(a).append(b),document.getElementById("heateor_ss_lj_popup_bg").onclick=document.getElementById("heateor_ss_lj_popup_close").onclick=function(){a.parentNode.removeChild(a),b.parentNode.removeChild(b)}}
|
js/front/social_login/general.js
CHANGED
@@ -1,4 +1,4 @@
|
|
1 |
-
function theChampPopup(e){window.open(e,"
|
2 |
function heateorSsBrowserMsg(){var a=document.createElement("div");a.innerHTML='<button id="heateor_ss_browser_msg_close" class="close-button separated"><img src="'+theChampCloseIconPath+'" /></button><div id="the_champ_sharing_more_content"><div class="all-services" style="padding:20px 10px 0px 10px;height:auto;"><p>'+heateorSsSDKBlockedMsg+"</p></div></div>",a.setAttribute("id","the_champ_sharing_more_providers"),a.setAttribute("style","height:auto;");var b=document.createElement("div");b.setAttribute("id","heateor_ss_browser_popup_bg"),jQuery("body").append(a).append(b),document.getElementById("heateor_ss_browser_popup_bg").onclick=document.getElementById("heateor_ss_browser_msg_close").onclick=function(){a.parentNode.removeChild(a),b.parentNode.removeChild(b)}}
|
3 |
"undefined"!=typeof heateorSsSDKBlockedMsg&&jQuery(function(){"shown"!=localStorage.getItem("heateorSsBrowserMsg")&&(jQuery("<img/>").attr("src","//apps.facebook.com/favicon.ico").error(function(){heateorSsBrowserMsg()}).css("display","none").appendTo(document.body),localStorage.setItem("heateorSsBrowserMsg","shown"))});
|
4 |
function heateorSsLJLoginPopup(){var a=document.createElement("div");a.innerHTML='<button id="heateor_ss_lj_popup_close" class="close-button separated"><img src="'+theChampCloseIconPath+'" /></button><div id="the_champ_sharing_more_content"><div class="all-services" style="padding:20px 10px 0px 10px;height:auto;"><fieldset id="ss_openid"><legend>LiveJournal Login</legend><form action="'+theChampLJAuthUrl+'" method="post" onsubmit="this.login.disabled=true;"><input type="hidden" name="openid_action" value="SuperSocializerLogin"><div style="clear:both">'+theChampLJLoginUsernameString+'</div><div style="clear:both"><input type="text" name="openid_url" required class="openid_login"><input type="submit" name="login" value="Login"></div></form></fieldset></div></div></div>',a.setAttribute("id","the_champ_sharing_more_providers"),a.setAttribute("style","height:auto;");var b=document.createElement("div");b.setAttribute("id","heateor_ss_lj_popup_bg"),jQuery("body").append(a).append(b),document.getElementById("heateor_ss_lj_popup_bg").onclick=document.getElementById("heateor_ss_lj_popup_close").onclick=function(){a.parentNode.removeChild(a),b.parentNode.removeChild(b)}}
|
1 |
+
function theChampPopup(e){window.open(e,"_blank","height=400,width=600,left=400,top=100,resizable,scrollbars,toolbar=0,personalbar=0,menubar=no,location=no,directories=no,status")}function theChampStrReplace(e,t,n){for(var r=0;r<e.length;r++){n=n.replace(new RegExp(e[r],"g"),t[r])}return n}function theChampCallAjax(e){if(typeof jQuery!="undefined"){e()}else{theChampGetScript("https://code.jquery.com/jquery-latest.min.js",e)}}function theChampGetScript(e,t){var n=document.createElement("script");n.src=e;var r=document.getElementsByTagName("head")[0],i=false;n.onload=n.onreadystatechange=function(){if(!i&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){i=true;t();n.onload=n.onreadystatechange=null;r.removeChild(n)}};r.appendChild(n)}function theChampGetElementsByClass(e,t){if(e.getElementsByClassName){return e.getElementsByClassName(t)}else{return function(e,t){if(t==null){t=document}var n=[],r=t.getElementsByTagName("*"),i=r.length,s=new RegExp("(^|\\s)"+e+"(\\s|$)"),o,u;for(o=0,u=0;o<i;o++){if(s.test(r[o].className)){n[u]=r[o];u++}}return n}(t,e)}}if(typeof String.prototype.trim!=="function"){String.prototype.trim=function(){return this.replace(/^\s+|\s+$/g,"")}}
|
2 |
function heateorSsBrowserMsg(){var a=document.createElement("div");a.innerHTML='<button id="heateor_ss_browser_msg_close" class="close-button separated"><img src="'+theChampCloseIconPath+'" /></button><div id="the_champ_sharing_more_content"><div class="all-services" style="padding:20px 10px 0px 10px;height:auto;"><p>'+heateorSsSDKBlockedMsg+"</p></div></div>",a.setAttribute("id","the_champ_sharing_more_providers"),a.setAttribute("style","height:auto;");var b=document.createElement("div");b.setAttribute("id","heateor_ss_browser_popup_bg"),jQuery("body").append(a).append(b),document.getElementById("heateor_ss_browser_popup_bg").onclick=document.getElementById("heateor_ss_browser_msg_close").onclick=function(){a.parentNode.removeChild(a),b.parentNode.removeChild(b)}}
|
3 |
"undefined"!=typeof heateorSsSDKBlockedMsg&&jQuery(function(){"shown"!=localStorage.getItem("heateorSsBrowserMsg")&&(jQuery("<img/>").attr("src","//apps.facebook.com/favicon.ico").error(function(){heateorSsBrowserMsg()}).css("display","none").appendTo(document.body),localStorage.setItem("heateorSsBrowserMsg","shown"))});
|
4 |
function heateorSsLJLoginPopup(){var a=document.createElement("div");a.innerHTML='<button id="heateor_ss_lj_popup_close" class="close-button separated"><img src="'+theChampCloseIconPath+'" /></button><div id="the_champ_sharing_more_content"><div class="all-services" style="padding:20px 10px 0px 10px;height:auto;"><fieldset id="ss_openid"><legend>LiveJournal Login</legend><form action="'+theChampLJAuthUrl+'" method="post" onsubmit="this.login.disabled=true;"><input type="hidden" name="openid_action" value="SuperSocializerLogin"><div style="clear:both">'+theChampLJLoginUsernameString+'</div><div style="clear:both"><input type="text" name="openid_url" required class="openid_login"><input type="submit" name="login" value="Login"></div></form></fieldset></div></div></div>',a.setAttribute("id","the_champ_sharing_more_providers"),a.setAttribute("style","height:auto;");var b=document.createElement("div");b.setAttribute("id","heateor_ss_lj_popup_bg"),jQuery("body").append(a).append(b),document.getElementById("heateor_ss_lj_popup_bg").onclick=document.getElementById("heateor_ss_lj_popup_close").onclick=function(){a.parentNode.removeChild(a),b.parentNode.removeChild(b)}}
|
library/LiveJournalLogin/class.openid.v3.php
CHANGED
@@ -17,38 +17,38 @@ if (!class_exists('SimpleOpenID')) {
|
|
17 |
'optional' => array(),
|
18 |
);
|
19 |
|
20 |
-
function
|
21 |
if (!function_exists('curl_exec')) {
|
22 |
die('Error: Class SimpleOpenID requires curl extension to work');
|
23 |
}
|
24 |
}
|
25 |
-
function SetOpenIDServer($a){
|
26 |
$this->URLs['openid_server'] = $a;
|
27 |
}
|
28 |
-
function SetTrustRoot($a){
|
29 |
$this->URLs['trust_root'] = $a;
|
30 |
}
|
31 |
-
function SetCancelURL($a){
|
32 |
$this->URLs['cancel'] = $a;
|
33 |
}
|
34 |
-
function SetApprovedURL($a){
|
35 |
$this->URLs['approved'] = $a;
|
36 |
}
|
37 |
-
function SetRequiredFields($a){
|
38 |
if (is_array($a)){
|
39 |
$this->fields['required'] = $a;
|
40 |
}else{
|
41 |
$this->fields['required'][] = $a;
|
42 |
}
|
43 |
}
|
44 |
-
function SetOptionalFields($a){
|
45 |
if (is_array($a)){
|
46 |
$this->fields['optional'] = $a;
|
47 |
}else{
|
48 |
$this->fields['optional'][] = $a;
|
49 |
}
|
50 |
}
|
51 |
-
function SetIdentity($a){ // Set Identity URL
|
52 |
if ((stripos($a, 'http://') === false)
|
53 |
&& (stripos($a, 'https://') === false)){
|
54 |
$a = 'http://'.$a;
|
@@ -68,15 +68,15 @@ if (!class_exists('SimpleOpenID')) {
|
|
68 |
//*/
|
69 |
$this->openid_url_identity = $a;
|
70 |
}
|
71 |
-
function GetIdentity(){ // Get Identity
|
72 |
return $this->openid_url_identity;
|
73 |
}
|
74 |
-
function GetError(){
|
75 |
$e = $this->error;
|
76 |
return array('code'=>$e[0],'description'=>$e[1]);
|
77 |
}
|
78 |
|
79 |
-
function ErrorStore($code, $desc = null){
|
80 |
$errs['OPENID_NOSERVERSFOUND'] = 'Cannot find OpenID Server TAG on Identity page.';
|
81 |
if ($desc == null){
|
82 |
$desc = $errs[$code];
|
@@ -84,7 +84,7 @@ if (!class_exists('SimpleOpenID')) {
|
|
84 |
$this->error = array($code,$desc);
|
85 |
}
|
86 |
|
87 |
-
function IsError(){
|
88 |
if (count($this->error) > 0){
|
89 |
return true;
|
90 |
}else{
|
@@ -92,7 +92,7 @@ if (!class_exists('SimpleOpenID')) {
|
|
92 |
}
|
93 |
}
|
94 |
|
95 |
-
function splitResponse($response) {
|
96 |
$r = array();
|
97 |
$response = explode("\n", $response);
|
98 |
foreach($response as $line) {
|
@@ -105,7 +105,7 @@ if (!class_exists('SimpleOpenID')) {
|
|
105 |
return $r;
|
106 |
}
|
107 |
|
108 |
-
function OpenID_Standarize($openid_identity = null){
|
109 |
if ($openid_identity === null)
|
110 |
$openid_identity = $this->openid_url_identity;
|
111 |
|
@@ -124,7 +124,7 @@ if (!class_exists('SimpleOpenID')) {
|
|
124 |
}
|
125 |
}
|
126 |
|
127 |
-
function array2url($arr){ // converts associated array to URL Query String
|
128 |
if (!is_array($arr)){
|
129 |
return false;
|
130 |
}
|
@@ -134,7 +134,7 @@ if (!class_exists('SimpleOpenID')) {
|
|
134 |
}
|
135 |
return $query;
|
136 |
}
|
137 |
-
function FSOCK_Request($url, $method="GET", $params = ""){
|
138 |
$fp = fsockopen("ssl://www.myopenid.com", 443, $errno, $errstr, 3); // Connection timeout is 3 seconds
|
139 |
if (!$fp) {
|
140 |
$this->ErrorStore('OPENID_SOCKETERROR', $errstr);
|
@@ -156,7 +156,7 @@ if (!class_exists('SimpleOpenID')) {
|
|
156 |
}
|
157 |
}
|
158 |
}
|
159 |
-
function CURL_Request($url, $method="GET", $params = "") { // Remember, SSL MUST BE SUPPORTED
|
160 |
if (is_array($params)) $params = $this->array2url($params);
|
161 |
$curl = curl_init($url . ($method == "GET" && $params != "" ? "?" . $params : ""));
|
162 |
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
|
@@ -176,7 +176,7 @@ if (!class_exists('SimpleOpenID')) {
|
|
176 |
return $response;
|
177 |
}
|
178 |
|
179 |
-
function HTML2OpenIDServer($content) {
|
180 |
$get = array();
|
181 |
|
182 |
// Get details of their OpenID server and (optional) delegate
|
@@ -194,7 +194,7 @@ if (!class_exists('SimpleOpenID')) {
|
|
194 |
return $ret;
|
195 |
}
|
196 |
|
197 |
-
function GetOpenIDServer(){
|
198 |
$response = $this->CURL_Request($this->openid_url_identity);
|
199 |
list($servers, $delegates) = $this->HTML2OpenIDServer($response);
|
200 |
if (count($servers) == 0){
|
@@ -209,7 +209,7 @@ if (!class_exists('SimpleOpenID')) {
|
|
209 |
return $servers[0];
|
210 |
}
|
211 |
|
212 |
-
function GetRedirectURL(){
|
213 |
$params = array();
|
214 |
$params['openid.return_to'] = urlencode($this->URLs['approved']);
|
215 |
$params['openid.mode'] = 'checkid_setup';
|
@@ -227,7 +227,7 @@ if (!class_exists('SimpleOpenID')) {
|
|
227 |
return $this->URLs['openid_server'] . "?". $this->array2url($params);
|
228 |
}
|
229 |
|
230 |
-
function Redirect(){
|
231 |
$redirect_to = $this->GetRedirectURL();
|
232 |
if (headers_sent()){ // Use JavaScript to redirect if content has been previously sent (not recommended, but safe)
|
233 |
echo '<script language="JavaScript" type="text/javascript">window.location=\'';
|
@@ -238,7 +238,7 @@ if (!class_exists('SimpleOpenID')) {
|
|
238 |
}
|
239 |
}
|
240 |
|
241 |
-
function ValidateWithServer(){
|
242 |
$params = array(
|
243 |
'openid.assoc_handle' => urlencode($_GET['openid_assoc_handle']),
|
244 |
'openid.signed' => urlencode($_GET['openid_signed']),
|
17 |
'optional' => array(),
|
18 |
);
|
19 |
|
20 |
+
public function __construct(){
|
21 |
if (!function_exists('curl_exec')) {
|
22 |
die('Error: Class SimpleOpenID requires curl extension to work');
|
23 |
}
|
24 |
}
|
25 |
+
public function SetOpenIDServer($a){
|
26 |
$this->URLs['openid_server'] = $a;
|
27 |
}
|
28 |
+
public function SetTrustRoot($a){
|
29 |
$this->URLs['trust_root'] = $a;
|
30 |
}
|
31 |
+
public function SetCancelURL($a){
|
32 |
$this->URLs['cancel'] = $a;
|
33 |
}
|
34 |
+
public function SetApprovedURL($a){
|
35 |
$this->URLs['approved'] = $a;
|
36 |
}
|
37 |
+
public function SetRequiredFields($a){
|
38 |
if (is_array($a)){
|
39 |
$this->fields['required'] = $a;
|
40 |
}else{
|
41 |
$this->fields['required'][] = $a;
|
42 |
}
|
43 |
}
|
44 |
+
public function SetOptionalFields($a){
|
45 |
if (is_array($a)){
|
46 |
$this->fields['optional'] = $a;
|
47 |
}else{
|
48 |
$this->fields['optional'][] = $a;
|
49 |
}
|
50 |
}
|
51 |
+
public function SetIdentity($a){ // Set Identity URL
|
52 |
if ((stripos($a, 'http://') === false)
|
53 |
&& (stripos($a, 'https://') === false)){
|
54 |
$a = 'http://'.$a;
|
68 |
//*/
|
69 |
$this->openid_url_identity = $a;
|
70 |
}
|
71 |
+
public function GetIdentity(){ // Get Identity
|
72 |
return $this->openid_url_identity;
|
73 |
}
|
74 |
+
public function GetError(){
|
75 |
$e = $this->error;
|
76 |
return array('code'=>$e[0],'description'=>$e[1]);
|
77 |
}
|
78 |
|
79 |
+
public function ErrorStore($code, $desc = null){
|
80 |
$errs['OPENID_NOSERVERSFOUND'] = 'Cannot find OpenID Server TAG on Identity page.';
|
81 |
if ($desc == null){
|
82 |
$desc = $errs[$code];
|
84 |
$this->error = array($code,$desc);
|
85 |
}
|
86 |
|
87 |
+
public function IsError(){
|
88 |
if (count($this->error) > 0){
|
89 |
return true;
|
90 |
}else{
|
92 |
}
|
93 |
}
|
94 |
|
95 |
+
public function splitResponse($response) {
|
96 |
$r = array();
|
97 |
$response = explode("\n", $response);
|
98 |
foreach($response as $line) {
|
105 |
return $r;
|
106 |
}
|
107 |
|
108 |
+
public function OpenID_Standarize($openid_identity = null){
|
109 |
if ($openid_identity === null)
|
110 |
$openid_identity = $this->openid_url_identity;
|
111 |
|
124 |
}
|
125 |
}
|
126 |
|
127 |
+
public function array2url($arr){ // converts associated array to URL Query String
|
128 |
if (!is_array($arr)){
|
129 |
return false;
|
130 |
}
|
134 |
}
|
135 |
return $query;
|
136 |
}
|
137 |
+
public function FSOCK_Request($url, $method="GET", $params = ""){
|
138 |
$fp = fsockopen("ssl://www.myopenid.com", 443, $errno, $errstr, 3); // Connection timeout is 3 seconds
|
139 |
if (!$fp) {
|
140 |
$this->ErrorStore('OPENID_SOCKETERROR', $errstr);
|
156 |
}
|
157 |
}
|
158 |
}
|
159 |
+
public function CURL_Request($url, $method="GET", $params = "") { // Remember, SSL MUST BE SUPPORTED
|
160 |
if (is_array($params)) $params = $this->array2url($params);
|
161 |
$curl = curl_init($url . ($method == "GET" && $params != "" ? "?" . $params : ""));
|
162 |
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
|
176 |
return $response;
|
177 |
}
|
178 |
|
179 |
+
public function HTML2OpenIDServer($content) {
|
180 |
$get = array();
|
181 |
|
182 |
// Get details of their OpenID server and (optional) delegate
|
194 |
return $ret;
|
195 |
}
|
196 |
|
197 |
+
public function GetOpenIDServer(){
|
198 |
$response = $this->CURL_Request($this->openid_url_identity);
|
199 |
list($servers, $delegates) = $this->HTML2OpenIDServer($response);
|
200 |
if (count($servers) == 0){
|
209 |
return $servers[0];
|
210 |
}
|
211 |
|
212 |
+
public function GetRedirectURL(){
|
213 |
$params = array();
|
214 |
$params['openid.return_to'] = urlencode($this->URLs['approved']);
|
215 |
$params['openid.mode'] = 'checkid_setup';
|
227 |
return $this->URLs['openid_server'] . "?". $this->array2url($params);
|
228 |
}
|
229 |
|
230 |
+
public function Redirect(){
|
231 |
$redirect_to = $this->GetRedirectURL();
|
232 |
if (headers_sent()){ // Use JavaScript to redirect if content has been previously sent (not recommended, but safe)
|
233 |
echo '<script language="JavaScript" type="text/javascript">window.location=\'';
|
238 |
}
|
239 |
}
|
240 |
|
241 |
+
public function ValidateWithServer(){
|
242 |
$params = array(
|
243 |
'openid.assoc_handle' => urlencode($_GET['openid_assoc_handle']),
|
244 |
'openid.signed' => urlencode($_GET['openid_signed']),
|
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Donate link: https://www.heateor.com/donate?action=Super+Socializer
|
|
4 |
Tags: social login, social share, social commenting, social comments, social plugin, profile data, social analytics, online identity, social profile storage, single sign-on, social media, facebook login
|
5 |
Requires at least: 2.5.0
|
6 |
Tested up to: 4.8
|
7 |
-
Stable tag: 7.9.
|
8 |
License: GPLv2 or later
|
9 |
|
10 |
The unique Social Plugin to let you integrate Social Login, Social Share and Social Comments at your website
|
@@ -204,6 +204,11 @@ Yes, we can help you with it. Just drop an email at support[ at ]heateor[ dot ]c
|
|
204 |
8. **Social Commenting**: Disqus Commenting selected
|
205 |
|
206 |
== Changelog ==
|
|
|
|
|
|
|
|
|
|
|
207 |
= 7.9.2 =
|
208 |
* [Bugfix] Share counts were being cached even when "Refresh Share Count cache every" option (in "Miscellaneous" section) was kept blank
|
209 |
* [Improvement] Improved Social Login icons
|
@@ -1288,4 +1293,9 @@ Yes, we can help you with it. Just drop an email at support[ at ]heateor[ dot ]c
|
|
1288 |
|
1289 |
= 7.9.2 =
|
1290 |
* [Bugfix] Share counts were being cached even when "Refresh Share Count cache every" option (in "Miscellaneous" section) was kept blank
|
1291 |
-
* [Improvement] Improved Social Login icons
|
|
|
|
|
|
|
|
|
|
4 |
Tags: social login, social share, social commenting, social comments, social plugin, profile data, social analytics, online identity, social profile storage, single sign-on, social media, facebook login
|
5 |
Requires at least: 2.5.0
|
6 |
Tested up to: 4.8
|
7 |
+
Stable tag: 7.9.3
|
8 |
License: GPLv2 or later
|
9 |
|
10 |
The unique Social Plugin to let you integrate Social Login, Social Share and Social Comments at your website
|
204 |
8. **Social Commenting**: Disqus Commenting selected
|
205 |
|
206 |
== Changelog ==
|
207 |
+
= 7.9.3 =
|
208 |
+
* [Bugfix] Social avatar url was broken when using LiveJournal login
|
209 |
+
* [Improvement] Social Share dialogue was being opened in new tab instead of the popup window, in the latest version of Google Chrome browser
|
210 |
+
* [Improvement] 3rd party library "Simple OpenID PHP Class" being used for LiveJournal Login was generating PHP warnings with PHP7
|
211 |
+
|
212 |
= 7.9.2 =
|
213 |
* [Bugfix] Share counts were being cached even when "Refresh Share Count cache every" option (in "Miscellaneous" section) was kept blank
|
214 |
* [Improvement] Improved Social Login icons
|
1293 |
|
1294 |
= 7.9.2 =
|
1295 |
* [Bugfix] Share counts were being cached even when "Refresh Share Count cache every" option (in "Miscellaneous" section) was kept blank
|
1296 |
+
* [Improvement] Improved Social Login icons
|
1297 |
+
|
1298 |
+
= 7.9.3 =
|
1299 |
+
* [Bugfix] Social avatar url was broken when using LiveJournal login
|
1300 |
+
* [Improvement] Social Share dialogue was being opened in new tab instead of the popup window, in the latest version of Google Chrome browser
|
1301 |
+
* [Improvement] 3rd party library "Simple OpenID PHP Class" being used for LiveJournal Login was generating PHP warnings with PHP7
|
super_socializer.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
Plugin Name: Super Socializer
|
4 |
Plugin URI: https://super-socializer-wordpress.heateor.com
|
5 |
Description: A complete 360 degree solution to provide all the social features like Social Login, Social Commenting, Social Sharing and more.
|
6 |
-
Version: 7.9.
|
7 |
Author: Team Heateor
|
8 |
Author URI: https://www.heateor.com
|
9 |
Text Domain: Super-Socializer
|
@@ -11,7 +11,7 @@ Domain Path: /languages
|
|
11 |
License: GPL2+
|
12 |
*/
|
13 |
defined('ABSPATH') or die("Cheating........Uh!!");
|
14 |
-
define('THE_CHAMP_SS_VERSION', '7.9.
|
15 |
|
16 |
require 'helper.php';
|
17 |
|
@@ -446,9 +446,9 @@ function the_champ_livejournal_auth(){
|
|
446 |
if( ! is_wp_error( $response ) && isset( $response['response']['code'] ) && 200 === $response['response']['code'] ){
|
447 |
$body = wp_remote_retrieve_body( $response );
|
448 |
if($body){
|
449 |
-
$userpicsHtmlParts = explode('
|
450 |
$userpicsId = explode("'", $userpicsHtmlParts[1]);
|
451 |
-
$userpicUrl = '
|
452 |
}
|
453 |
}
|
454 |
$profileData = array();
|
3 |
Plugin Name: Super Socializer
|
4 |
Plugin URI: https://super-socializer-wordpress.heateor.com
|
5 |
Description: A complete 360 degree solution to provide all the social features like Social Login, Social Commenting, Social Sharing and more.
|
6 |
+
Version: 7.9.3
|
7 |
Author: Team Heateor
|
8 |
Author URI: https://www.heateor.com
|
9 |
Text Domain: Super-Socializer
|
11 |
License: GPL2+
|
12 |
*/
|
13 |
defined('ABSPATH') or die("Cheating........Uh!!");
|
14 |
+
define('THE_CHAMP_SS_VERSION', '7.9.3');
|
15 |
|
16 |
require 'helper.php';
|
17 |
|
446 |
if( ! is_wp_error( $response ) && isset( $response['response']['code'] ) && 200 === $response['response']['code'] ){
|
447 |
$body = wp_remote_retrieve_body( $response );
|
448 |
if($body){
|
449 |
+
$userpicsHtmlParts = explode('https://l-userpic.livejournal.com', $body);
|
450 |
$userpicsId = explode("'", $userpicsHtmlParts[1]);
|
451 |
+
$userpicUrl = 'https://l-userpic.livejournal.com' . $userpicsId[0];
|
452 |
}
|
453 |
}
|
454 |
$profileData = array();
|