require $_SERVER['DOCUMENT_ROOT'].'/lib/global.php';
require_once $_SERVER['DOCUMENT_ROOT']."/facebook/php-graph-sdk/src/Facebook/autoload.php";
if(!session_id())
{
session_start();
}
$fb = new Facebook\Facebook([
'app_id' => '576528099627663',
'app_secret' => '6e172106be71f5b175149566e6a9fb44',
'default_graph_version' => 'v2.11',
'cookie' => true
]);
$helper = $fb->getRedirectLoginHelper();
//$permissions = ['email']; //optional
try
{
if (isset($_SESSION['facebook_access_token']))
{
$accessToken = $_SESSION['facebook_access_token'];
} else {
$accessToken = $helper->getAccessToken();
}
} catch(Facebook\Exceptions\FacebookResponseException $e)
{ // When Graph returns an error
echo 'Graph returned an error: ' . $e->getMessage();
exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) { // When validation fails or other local issues
echo 'Facebook SDK returned an error: ' . $e->getMessage();
exit;
}
if (isset($accessToken))
{
//var_dump($accessToken->getValue());
//$oAuth2Client = $fb->getOAuth2Client();
//$tokenMetadata = $oAuth2Client->debugToken($accessToken);
//var_dump($tokenMetadata);
//$tokenMetadata->validateAppId('576528099627663');
//$tokenMetadata->validateExpiration();
//var_dump($accessToken->getValue());
//$array[] = $accessToken->getValue();
//print_r($tokenMetadata->user_id);
/*
if(!$accessToken->isLongLived())
{
try {
$accessToken = $oAuth2Client->getLongLivedAccessToken($accessToken);
}catch (Facebook\Exceptions\FacebookSDKException $e){
echo $helper->getMessage();
exit;
}
//var_dump($accessToken->getValue());
//print_r($accessToken->getValue());
//$m_id = $accessToken->getValue();
}
*/
if (isset($_SESSION['facebook_access_token'])) {
$fb->setDefaultAccessToken($_SESSION['facebook_access_token']);
} else { // getting short-lived access token
$_SESSION['facebook_access_token'] = (string) $accessToken; // OAuth 2.0 client handler
$oAuth2Client = $fb->getOAuth2Client(); // Exchanges a short-lived access token for a long-lived one
$longLivedAccessToken = $oAuth2Client->getLongLivedAccessToken($_SESSION['facebook_access_token']);
$_SESSION['facebook_access_token'] = (string) $longLivedAccessToken; // setting default access token to be used in script
$fb->setDefaultAccessToken($_SESSION['facebook_access_token']);
} // redirect the user back to the same page if it has "code" GET variable
if (isset($_GET['code'])) {
//header('Location: ./index.siso');
$locationUrl = "index.siso";
} // getting basic info about user
try {
$profile_request = $fb->get('/me?fields=name,first_name,last_name,email');
$profile = $profile_request->getGraphNode()->asArray();
} catch(Facebook\Exceptions\FacebookResponseException $e) { // When Graph returns an error
echo 'Graph returned an error: ' . $e->getMessage(); session_destroy(); // redirecting user back to app login page
//header("Location: ./");
exit;
} catch(Facebook\Exceptions\FacebookSDKException $e) { // When validation fails or other local issues
echo 'Facebook SDK returned an error: ' . $e->getMessage();
exit;
} // printing $profile array on the screen which holds the basic info about user
//print_r($profile); // Now you can redirect to another page and use the access token from $_SESSION['facebook_access_token']
$m_id = $profile["id"];
$chkProfile = getValue("_MEMBER"," where m_id='".$m_id."' and m_logintype='facebook'","ar","*");
if($chkProfile)
{
$MEMIDX = $chkProfile["m_idx"];
if($chkProfile["m_level"]=="user")
{
$_SET_LEVEL = "1";
$locationUrl = "index.siso";
}else{
$_SET_LEVEL = "0";
$locationUrl = "reg_profile.siso?idx=".$MEMIDX;
}
}else{ //żżżżż żżż żżż.
$isql = "insert into _MEMBER set m_id='".$m_id."', m_pass='".$m_id."'";
if($profile["email"])
{
$isql .= ", m_email='".$profile["email"]."'";
}
$isql .= ", regdate = now(), m_ip = '".$_SERVER["REMOTE_ADDR"]."', m_agent = '".$_SERVER["HTTP_USER_AGENT"]."', m_expire_date = '0000-00-00', m_expire_time = '00:00:00', m_use = 'Y', m_level = 'user', m_lastlogindate = now(), m_logintype='facebook' ";
$irs = query($isql);
if($irs)
{
$MEMIDX = insert_id();
$SET_LEVEL = "0";
$locationUrl = "reg_profile.siso?idx=".$MEMIDX;
if($profile["email"])
{
$maillink = "https://lifeadvisor.ncue.net/mailaccept.php?midx=".$MEMIDX."&memail=".$profile["email"];
$mailcontents = "żż żżż żżż żżżż żżżżż żżż.
żż żż";
//1. żżż żż żż żż
//$sendMail = sendMail('yds5004@naver.com', 'żżż', 'żżż żżż żż' ,$mailcontents, $m_id, "żżż żżżż", true);
}
}else{
echo ("
");
exit;
}
}
//echo $locationUrl;
//exit;
//żżż żżżżżżżż żżżż żż żżż żżżżżż żżż.
setSession('_IDX', $MEMIDX);
setSession('_LEVEL', $_SET_LEVEL);
setSession('ltype', "facebook");
setCookie('_LEVEL', $_SET_LEVEL, time()+2678400, '/', '.'._HOST);
setCookie('_PW_NPLACE_SAVE',$m_id, time()+2678400,'/', _HOST);
echo ("
");
exit;
} else {
// replace your website URL same as added in the developers.facebook.com/apps e.g. if you used http instead of https and you used non-www version or www version of your website then you must add the same here
//$loginUrl = $helper->getLoginUrl('http://localhost/fb_oauth.php', $permissions);
//echo 'Log in with Facebook!';
if($helper->getError()){
header('HTTP/1.0 401 Unauthorized');
echo "Error : ".$helper->getError()."\n";
echo "Error Code: ".$helper->getErrorCode()."\n";
echo "Error Reason: ".$helper->getErrorReason()."\n";
echo "Error Description: ".$helper->getErrorDescription()."\n";
}else{
header('HTTP/1.0 400 Bad Request');
echo "Bad request";
}
exit;
}
/*
if(!isset($accessToken))
{
if($helper->getError()){
header('HTTP/1.0 401 Unauthorized');
echo "Error : ".$helper->getError()."\n";
echo "Error Code: ".$helper->getErrorCode()."\n";
echo "Error Reason: ".$helper->getErrorReason()."\n";
echo "Error Description: ".$helper->getErrorDescription()."\n";
}else{
header('HTTP/1.0 400 Bad Request');
echo "Bad request";
}
exit;
} else {
//var_dump($accessToken->getValue());
$oAuth2Client = $fb->getOAuth2Client();
$tokenMetadata = $oAuth2Client->debugToken($accessToken);
//var_dump($tokenMetadata);
$tokenMetadata->validateAppId('576528099627663');
$tokenMetadata->validateExpiration();
//var_dump($accessToken->getValue());
//$array[] = $accessToken->getValue();
print_r($tokenMetadata->user_id);
if(!$accessToken->isLongLived())
{
try {
$accessToken = $oAuth2Client->getLongLivedAccessToken($accessToken);
}catch (Facebook\Exceptions\FacebookSDKException $e){
echo $helper->getMessage();
exit;
}
//var_dump($accessToken->getValue());
//print_r($accessToken->getValue());
//$m_id = $accessToken->getValue();
}
}
*/
?>