<?php require $_SERVER['DOCUMENT_ROOT'] . '/ts2/config/consts.php'; require DOCUMENT_ROOT . 'classes/LoginHelper.php'; session_start(); $loginHelper = new LoginHelper(); if ($loginHelper->IsLoggedIn()) { header('Location: ' . SITE_URL); exit; } $loginHelper->suppressRegistration(OAUTH_FACEBOOK); require 'config/app.php'; require 'config/login.php'; require 'Facebook/Facebook.php'; $facebook = new Facebook(APP_ID, APP_SECRET, REDIRECT_URI); $facebook->setScopes(unserialize(SCOPES)); $loginURL = $facebook->getLoginURL(); header("Location: {$loginURL}"); exit;
/* If user doesn't grant Facebook app the access, redirect to the login page */ if (isset($_GET['error']) && $_GET['error'] == 'access_denied') { header("Location: " . SITE_URL . "login/?access_denied"); exit; } /* User has granted Facebook app (some or all) permissions. */ if (isset($_GET['code'])) { require 'Facebook/Facebook.php'; require 'config/app.php'; require 'config/login.php'; $facebook = new Facebook(APP_ID, APP_SECRET, REDIRECT_URI); if ($facebook->IsAuthenticated()) { /* Verify that all of the required scopes have been granted */ if (!$facebook->verifyScopes(unserialize(SCOPES))) { //var_dump($facebook); exit; header("Location: " . $facebook->getLoginURL($facebook->denied_scopes, REREQUEST)); exit; } // All scopes have been granted // Login/Registration can be proceeded $fb_user = $facebook->getUserProfile(); // Check if the facebook user is already registered $loginHelper = new LoginHelper($db); $user_id = $loginHelper->IsRegistered(OAUTH_FACEBOOK, $fb_user['id']); if ($user_id) { // Facebook user is already registered - Login the user $redirect_uri = $loginHelper->Login($user_id, OAUTH_FACEBOOK, $fb_user['id']); header("Location: {$redirect_uri}"); exit; } else { // User is not registered - Register the user