TheAdminMarket |
06-28-2016 08:58 AM |
To use vBulletin as a Facebook TAB application (does not works in normal FB profiles and also in Facebook groups), all you need is:
1.- To operate your site in SSL
2.- Your style must be fluid (100% width) or, if it's fixed, 810px width
3.- To add in the headinclude template
Code:
<style type="text/css">
overflow:auto;
overflow-x:hidden;
</style>
4.- To add at the end of footer template (just above </body>):
Code:
<div id="fb-root"></div>
<script type="text/javascript" src="//connect.facebook.net/en_US/all.js"></script>
<script>
FB.init({
status : true, // check login status
cookie : true, // enable cookies to allow the server to access the session
xfbml : true // parse XFBML
});
</script>
<script type="text/javascript">
FB.Canvas.setSize();
window.fbAsyncInit = function () {
FB.Canvas.setAutoResize();
}
FB.Canvas.scrollTo(0,0);
</script>
With the above modifications I was able to use vBulletin as Facebook tab application without any problem and without any plugin (even without the old vB FB app). Just keep in mind that you must have activated (and working) the Facebook connect in your site.
If your Facebook connect in your site does not works, still you can use vBulletin in FB, but in this case you must do some extra work by including and setting FB SDK. This can be done (as example only) by creating a php file with content:
Code:
// Required Facebook PHP SDK v4.0.9 or later.
// Include required files form Facebook SDK
require_once( 'Facebook/HttpClients/FacebookHttpable.php' );
require_once( 'Facebook/HttpClients/FacebookCurl.php' );
require_once( 'Facebook/HttpClients/FacebookCurlHttpClient.php' );
require_once( 'Facebook/Entities/AccessToken.php' );
require_once( 'Facebook/Entities/SignedRequest.php' );
require_once( 'Facebook/FacebookSession.php' );
require_once( 'Facebook/FacebookRedirectLoginHelper.php' );
require_once( 'Facebook/FacebookSignedRequestFromInputHelper.php' ); // added in v4.0.9
require_once( 'Facebook/FacebookRequest.php' );
require_once( 'Facebook/FacebookResponse.php' );
require_once( 'Facebook/FacebookSDKException.php' );
require_once( 'Facebook/FacebookRequestException.php' );
require_once( 'Facebook/FacebookOtherException.php' );
require_once( 'Facebook/FacebookAuthorizationException.php' );
// these two classes required for canvas and tab apps
require_once( 'Facebook/FacebookCanvasLoginHelper.php' );
require_once( 'Facebook/FacebookPageTabHelper.php' );
require_once( 'Facebook/GraphObject.php' );
require_once( 'Facebook/GraphSessionInfo.php' );
use Facebook\HttpClients\FacebookHttpable;
use Facebook\HttpClients\FacebookCurl;
use Facebook\HttpClients\FacebookCurlHttpClient;
use Facebook\Entities\AccessToken;
use Facebook\Entities\SignedRequest;
use Facebook\FacebookSession;
use Facebook\FacebookRedirectLoginHelper;
use Facebook\FacebookSignedRequestFromInputHelper; // added in v4.0.9
use Facebook\FacebookRequest;
use Facebook\FacebookResponse;
use Facebook\FacebookSDKException;
use Facebook\FacebookRequestException;
use Facebook\FacebookOtherException;
use Facebook\FacebookAuthorizationException;
use Facebook\GraphObject;
use Facebook\GraphSessionInfo;
// these two classes required for canvas and tab apps
use Facebook\FacebookCanvasLoginHelper;
use Facebook\FacebookPageTabHelper;
// Initialize Facebook Connection
FacebookSession::setDefaultApplication( ''.APP_ID.'',''.APP_SECRET.'' );
// init login helper
$helper = new FacebookRedirectLoginHelper( ''.APP_TAB_LINK.'' );
// init page tab helper
$pageHelper = new FacebookPageTabHelper();
// get session from the page
$session = $pageHelper->getSession();
As I said the last code is just an example. Is not the complete code. But I don't think that you'll need it. The included with vB Facebook connect works fine and is easy to activate it. The only addition is that you need SSL connection.
Christos
|