function loginSSO () {
$url = 'http://'.$_SERVER[HTTP_HOST].$_SERVER[REQUEST_URI];
$lhtml = '';
if (!empty($_SESSION['user']['_id'])){
$data = array(
"id" =>$_SESSION['user']['_id'],
"username" =>$_SESSION['user']['name'],
"email" =>$_SESSION['user']['email']
);
$message = base64_encode(json_encode($data));
$timestamp = time();
$hmac = self::dsq_hmacsha1($message . ' ' . $timestamp, DISQUS_SECRET_KEY);
$fields = array(
'client_id'=>DISQUS_PUBLIC_KEY,
'remote_auth_s3'=>$hmac,
'scope'=>'read,write',
'response_type'=>'code',
'access_token'=>DISQUS_ACCOUNT_OWNER_ACCESS_TOKEN,
'redirect_uri'=>urlencode(self::trimquerystring('http://'.$_SERVER[HTTP_HOST].'/disqus-iframe'))
);
foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; }
$fields_string = rtrim($fields_string, "&");
$authurl = $aurl.$fields_string;
echo '<iframe src="'.$authurl.'" style="display: none;" id="disqusiframe"></iframe>';
if (!empty($resp)) {
// var_dump($resp);
}
}
else {
$lhtml = '
<div>
To automatically login to
one.om to use Disqus using your
one.om account.<hr/>
</div>';
}
$sso = self::dsq_sso();
if ($sso) {
foreach ($sso as $k=>$v) {
$soojs .= "this.page.{$k} = '{$v}';\n";
}
}
$html .= '
<div id="disqus_thread"></div>
<script type="text/javascript">
var authcodeval;
$(function() {
console.log(\'xcxxc\');
var cookiestring= RegExp("disqusauthcode[^;]+").exec(document.cookie);
authcodeval = unescape(!!cookiestring ? cookiestring.toString().replace(/^[^=]+./,"") : "");
var url = window.location.search;
console.log(url);
if(authcodeval && url == \'\' || authcodeval && url.match(\'code\').length == 0) {
window.location.href = window.location.href + \'?code=\' + authcodeval;
}
});
</script>
<script type="text/javascript">
/* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
var disqus_url = \''.$url.'\';
var disqus_identifier = \''.self::dsq_identifier_for_post().'\';
var disqus_container_id = \'disqus_thread\';
var disqus_shortname = \''.self::getshortname($url).'\';
var disqus_title = \''.self::getpagetitle($url).'\';
//var config = this;
/* * * DON\'T EDIT BELOW THIS LINE * * */
(function() {
var dsq = document.createElement(\'script\'); dsq.type = \'text/javascript\'; dsq.async = true;
//console.log(dsq.src);
(document.getElementsByTagName(\'head\')[0] || document.getElementsByTagName(\'body\')[0]).appendChild(dsq);
})();
</script>
<a href="
http://disqus.com" class="dsq-brlink">blog comments powered by <span class="logo-disqus">Disqus</span></a>';
$authcode = $_GET['code'];
//'redirect_uri'=>self::trimquerystring('http://'.$_SERVER[HTTP_HOST].$_SERVER[REQUEST_URI]),
if (isset($authcode)) {
unset($fields,$fields_string);
$fields = array(
'grant_type'=>'authorization_code',
'client_id'=>DISQUS_PUBLIC_KEY,
'client_secret'=>DISQUS_SECRET_KEY,
'redirect_uri'=>self::trimquerystring('http://'.$_SERVER[HTTP_HOST].'/disqus-iframe'),
'code'=>$authcode
);
foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; }
$fields_string = rtrim($fields_string, "&");
$authurl = $aurl.$fields_string;
var_dump($authurl);
$acurl = curl_init();
curl_setopt_array($acurl, array(
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_URL =>$aurl,
CURLOPT_VERBOSE => 1,
CURLOPT_HEADER => 1,
CURLOPT_POSTFIELDS => $fields
));
$response=curl_exec($acurl);
curl_close($acurl);
var_dump($response.' ');
}
return $html.$lhtml;
//.self::disqusjs();
}