MMCT TEAM
Server IP : 192.185.129.71  /  Your IP : 3.138.139.225
Web Server : Apache
System : Linux bh-ht-3.webhostbox.net 4.19.286-203.ELK.el7.x86_64 #1 SMP Wed Jun 14 04:33:55 CDT 2023 x86_64
User : svymadmin ( 4072)
PHP Version : 7.4.33
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON
Directory (0755) :  /home4/svymadmin/public_html/site/libraries/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : /home4/svymadmin/public_html/site/libraries/Facebook.php
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
 
// Autoload the required files
//require_once( APPPATH . '/vendor/facebook/autoload.php' );
 
require_once APPPATH .'vendor/Facebook/autoload.php';
// Make sure to load the Facebook SDK for PHP via composer or manually
 
use Facebook\FacebookSession;
use Facebook\FacebookRequest;
use Facebook\GraphUser;
use Facebook\FacebookRequestException;
use Facebook\FacebookRedirectLoginHelper;

 
class Facebook
{
  var $ci;
  var $session = false;
  var $fb;
  var $helper;
  public function __construct()
  {
    
    $this->ci =& get_instance();
 
    

    $this->fb = new Facebook\Facebook([
  'app_id' => $this->ci->config->item('api_id', 'facebook'),
  'app_secret' => $this->ci->config->item('app_secret', 'facebook'),
  'default_graph_version' => 'v2.8'
]);

  }
 
  /**
   * Get FB session.
   */

 
  /**
   * Login functionality.
   */
  public function login()
  {
    $this->get_session();
    if ( $this->session )
    {
      $this->ci->session->set_userdata( 'fb_token', $this->session->getToken() );
 
      $user = $this->get_user();
 
      if ( $user && ! empty( $user['email'] ) )
      {
         $result = $this->ci->user_model->get_user( $user['email'] );
 
          if ( ! $result )
          {
            // Not registered.
            $this->ci->session->set_flashdata( 'fb_user', $user );
            redirect( base_url( 'register' ) );
          }
          else
          {
            if ( $this->ci->user_model->sign_in( $result->username, $result->password ) )
            {
              redirect( base_url( 'home' ) );
            }
            else
            {
              die( 'ERROR' );
              redirect( base_url( 'login' ) );
            }
          }
      }
      else
      {
        die( 'ERROR' );
      }
    }
  }
 
  /**
   * Returns the login URL.
   */
  public function login_url()
  {
    
    $helper = $this->fb->getRedirectLoginHelper();
    return $helper->getLoginUrl($this->ci->config->item('redirect_url', 'facebook'), $this->ci->config->item('permissions', 'facebook'));
  }
 
  /**
   * Returns the current user's info as an array.
   */
/*  public function get_user()
  {
    $this->get_session();
    if ( $this->session )
    {
      $request = ( new FacebookRequest( $this->session, 'GET', '/me' ) )->execute();
      $user    = $request->getGraphObject()->asArray();
 
      return $user;
    }
    return false;
  }*/
 
  /**
   * Get user's profile picture.
   */
 /* public function get_profile_pic( $user_id )
  {
    $this->get_session();
    if ( $this->session )
    {
      $request = ( new FacebookRequest( $this->session, 'GET', '/' . $user_id . '/picture?redirect=false&type=large' ) )->execute();
      $pic     = $request->getGraphObject()->asArray();
 
      if ( ! empty( $pic ) && ! $pic['is_silhouette'] ) {
        return $pic['url'];
      }
    }
    return false;
  }*/




    public function set_session()
  {
    $helper = $this->fb->getRedirectLoginHelper();
try {
  $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)) {
  
  $this->ci->session->set_userdata("fb_token", (string) $accessToken) ;

}


$this->fb->setDefaultAccessToken((string) $accessToken);

echo $this->ci->session->userdata("fb_token"); 

return $this->ci->session->userdata("fb_token");
  }




  public function post_data($src, $message){

    try {

       
    $params = array("message" => $message,
  "source" => $this->fb->fileToUpload("".$src."")
  );

    $response = $this->fb->post('/me/photos', $params, $this->ci->session->userdata("fb_token"));

    return  'Successfully posted to Facebook';

  } catch(FacebookRequestException $e) {

    echo $e->getMessage();

  }

  }


}

MMCT - 2023