2017 © Pedro Peláez
 

library bridgevb

Laravel 4 and vBulletin 4 bridge for authentication services.

image

danjme/bridgevb

Laravel 4 and vBulletin 4 bridge for authentication services.

  • Thursday, May 4, 2017
  • by danjme
  • Repository
  • 1 Watchers
  • 0 Stars
  • 33 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 4 Forks
  • 0 Open issues
  • 5 Versions
  • 0 % Grown

The README.md

vBulletin 4 bridge for Laravel 4

This is a Laravel Composer package providing a method to authenticate against a vBulletin 4.x database to allow for Laravel 4 sites to be built beside a vBulletin forum without requiring users to create new accounts.

This package is based off of the pperon/vbauth package and the vb_auth package for CodeIgnitor., (*1)

Add eld/bridgevb as a requirement in composer.json:, (*2)

{
    "require": {
        "eld/bridgevb": "1.*"
    }
}

Run composer update to update your packages or composer install if you haven't already run the command, (*3)

To use the package, add this line to your providers array contained in the app/config/app.php file:, (*4)

'providers' => array(
                ...
                ...
                'Eld\Bridgevb\BridgevbServiceProvider',
),

In order to use the facade, add the following to your aliases array in app/config/app.php:, (*5)

'aliases' => array(
                ...
                ...
                'Bridgevb'        => 'Eld\Bridgevb\Facades\BridgeVb',
),

Configuration File:

The default configuration file is found in vender/eld/bridgevb/src/config/config.php but you should overwrite it with a app/config/packages/eld/bridgevb/config.php file., (*6)

The configuration file looks like:, (*7)

array(
    'connection' => 'mysql',
    'cookie_hash' => 'AdflkjEr90234asdlkj1349SDFkl',
    'cookie_prefix' => 'bb_',
    'db_prefix' => 'vb_',
    'forum_path' => 'http://example.com/',
    'user_groups' => array(
        'Admin' => array(6),
        'Moderator' => array(7),
        'Super Moderator' => array(5),
        'User' => array(2),
        'Banned' => array(8),
        'Guest' => array(3),
    ),
    'user_columns' => array(
        'userid',
        'username',
        'password',
        'usergroupid',
        'membergroupids',
        'email',
        'salt'
    ),
);

You need to replace the following fields in the existing config file or the config file in app/config/packages/eld/bridgevb/config.php file to suit your setup: connection, cookie_hash, cookie_prefix, db_prefix, db_prefix, forum_path, and add your forum's user groups in the user_groups portion and customize which user info you'd like to fetch with the user_columns option., (*8)

Exampe Usage:

This is what a filter could look like in app/filters.php if you were to authenticate users on every page they loaded., (*9)

Route::filter('vbauth', function()
{
    if (!Bridgevb::isLoggedIn()) return Redirect::to('login');
});

If you wanted to log in users externally from the vBulletin site, here's an snippet of how you'd do it:, (*10)

Route::post('/login', function()
{
    $creds = array(
        'username' => Input::get('username'),
        'password' => Input::get('password'),
        'remember_me' => Input::get('remember_me', false),
    );

    if (Bridgevb::attempt($creds))
        return Redirect::to('/');
    else
        return Redirect::to('/login');
});

The following are functions included in the library:

Examples of usage are included in each description of the method, (*11)

is()

The is() function takes in a string parameter an returns whether the user is a member of that user group., (*12)

Route::get('/isgroup', function()
{
    return (Bridgevb::is('Banned') ? 'You are banned' : 'You are not banned');
});

attempt()

The attempt method takes in an array of credentials and returns true if the authentication attempt was successful and returns false if the credentials were incorrect., (*13)

Route::post('/login', function()
{
    $creds = array(
        'username' => Input::get('username'),
        'password' => Input::get('password'),
        'remember_me' => Input::get('remember_me', false),
    );

    if (Bridgevb::attempt($creds))
        return Redirect::to('/');
    else
        return Redirect::to('/login');
});

isLoggedIn()

The isLoggedIn() function checks to authenticate the current user and retursn a non-zero value if the user is currently authenticated., (*14)

Route::get('/login', function()
{
    if(Bridgevb::isLoggedIn())
        return Redirect::to('/');
    return View::make('login');
});

getUserInfo()

The getUserInfo() function returns a stdClass object representing the user data retrieved from the vBulletin user table as specified in the configuration file., (*15)

$user = Bridgevb::getUserInfo();
echo 'Hello, ' . $user->username;

get()

The get method takes in a string and returns the particular piece of information about the user that's passed in., (*16)

$username = Bridgevb::get('username');
echo 'Hello, ' . $username;

getLogoutHash()

This function returns the logout hash for the user logged in that allows for you to link to vBulletin's logout function with teh proper logout hash., (*17)

return '<a href="http://www.example.com/login.php?do=logout&logouthash=' . Bridgevb::getLogoutHash() . '">Logout</a>';

logout()

Logs the user out manually instead of routing through vBulletin's logout function., (*18)

Bridgevb::logout();

Changelog

6/1/2013 (v1.0) - Initial Release
6/2/2013 (v1.0.1) - Revised code to be PSR-2 compliant
6/3/2013 (v1.1) - Patched bug causing multiple rows to be added to the database when the session was being authenticated
6/3/2013 (v1.1.1) - Fixed session creation bugs, (*19)

The Versions

04/05 2017

dev-master

9999999-dev https://github.com/danjme/bridgevb

Laravel 4 and vBulletin 4 bridge for authentication services.

  Sources   Download

MIT

The Requires

 

by Dan Jeffrey
by Eric L. D.

laravel auth l4 vbulletin vb

04/06 2013

1.1.1

1.1.1.0 https://github.com/ELD/bridgevb

Laravel 4 and vBulletin 4 bridge for authentication services.

  Sources   Download

MIT

The Requires

 

by Eric Dattore

laravel auth l4 vbulletin vb

04/06 2013

1.1

1.1.0.0 https://github.com/ELD/bridgevb

Laravel 4 and vBulletin 4 bridge for authentication services.

  Sources   Download

MIT

The Requires

 

by Eric Dattore

laravel auth l4 vbulletin vb

01/06 2013

1.0.1

1.0.1.0 https://github.com/ELD/bridgevb

Laravel 4 and vBulletin 4 bridge for authentication services.

  Sources   Download

MIT

The Requires

 

by Eric Dattore

laravel auth l4 vbulletin vb

01/06 2013

1.0

1.0.0.0 https://github.com/ELD/bridgevb

Laravel 4 and vBulletin 4 bridge for authentication services.

  Sources   Download

MIT

The Requires

 

by Eric Dattore

laravel auth l4 vbulletin vb