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 ] |
---|
<?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(); } } }