<?php

include "ApiClient.php";

// We need session to store the token
session_start();

// Your facebook app information
$app_id     '127640753945147';
$app_secret '88d19b5134fb3ba60d3c33848e0fd53f';
$redirect    $_SERVER['PHP_SELF']; // The url to redirect to after authentication on facebook. In this case you need to set it to the current file url

// If the token is not saved to the session yet and we receive a token
// then save it to the session
if(!isset($_SESSION['fbtoken']) && isset($_REQUEST['access_token'])){
    
$_SESSION['fbtoken'] = $_REQUEST['access_token'];
}

// If we don't have the token in our session then redirect to facebook to get authentication
if(!isset($_SESSION['fbtoken'])){
    
header("Location: https://graph.facebook.com/oauth/authorize?client_id=$app_id&redirect_uri=$redirect&scope=user_photos,email,publish_stream&type=user_agent");
}

// Get my data from facebook graph API
$Client = new ApiClient();
$Client->addParam('access_token'$_SESSION['fbtoken']);
$data $Client->request('https://graph.facebook.com/me'ApiClient::CONTENT_JSON);

echo 
'First name: ' $data->first_name '<br />';
echo 
'Last name: ' $data->last_name '<br />';
echo 
'Birthday: ' $data->birthday '<br />';


// Get my likes
// We can reuse the settings we've done for our first call to do another call
$data $Client->request('https://graph.facebook.com/me/likes'ApiClient::CONTENT_JSON);

echo 
'<br /><strong>You like:</strong><br />';
foreach(
$data->data as $like) {
    echo 
$like->name '<br />';
}


// Post a message
$Client->setMethod(ApiClient::METHOD_POST);
$Client->addParam('message''PHP Post test');
$data $Client->request('https://graph.facebook.com/1038577668/feed'ApiClient::CONTENT_JSON);
print_r($data);