pperon/vbauth

用于Laravel 4(Illuminate)的Vbulletin认证库

v1.1.3 2013-11-26 14:43 UTC

This package is not auto-updated.

Last update: 2024-09-14 13:40:39 UTC


README

VBulletin中为Laravel 4用户提供认证。已测试与VBulletin 4.x兼容。

安装

pperon/vbauth添加到composer.json中的需求

{
    "require": {
        "pperon/vbauth": "1.*"
    }
}

使用composer update更新您的包或使用composer install安装。

Composer安装或更新您的包后,您需要将Vbauth与Laravel本身进行注册。打开app/config/app.php,找到底部的providers键并添加

'providers' => array(
		...
		...
		'Pperon\Vbauth\VbauthServiceProvider',
),

为了使用更短的类别名,将其添加到app/config/app.php中的别名部分

'aliases' => array(
		...
		...
		'Vbauth'		  => 'Pperon\Vbauth\Facades\Vbauth',
),

配置

默认配置文件位于vendor/pperon/vbauth/src/config/config.php,但您应使用app/config/packages/pperon/vbauth/config.php文件覆盖它。

用法

控制器中的示例用法

if(Vbauth::isAdmin()){
	// Show administrator page
	View::make('admin.index');
} elseif (Vbauth::isLoggedin()) {
	// Show user page
	View::make('user.index');	
} else {
	// Show guest page
	View::make('guest.index');
}

###Vbulletin用户变量

您可以通过调用Vbauth::get('fieldname')直接访问用户信息。字段在config.php(select_columns)中定义。

示例

if(Vbauth::isLoggedin()) {
    $user_id  = Vbauth::get('userid');
    $username = Vbauth::get('username');
    $email    = Vbauth::get('email');
}

###isLoggedIn()

检查VBulletin用户cookie并返回

TRUE - 用户已登录,FALSE - 没有vbulletin cookie(用户未登录)

###isAdmin()

检查用户是否属于管理员用户组。通常这意味着用户属于ID为6的用户组,但您可以在config.php文件中通过更改管理员组ID来修改。

TRUE - 用户属于管理员用户组 FALSE - 用户不属于管理员用户组

###is()

检查用户是否属于特定用户组。默认可用组:admin, moderator, user, banned, guest。您可以在config.php中添加更多。

TRUE - 用户属于特定组

示例

if(Vbauth::is('moderator')) {
    View::make('moderator.panel');
}

###logoutUrl()

返回VBulletin安装中的注销脚本的URL。

示例

Redirect::to(Vbauth::logoutURL());

###getUserInfo()

返回任何选择论坛用户的用户数据。

示例

$user_id = 8;
$user = Vbauth::getUserInfo($user_id);
echo $user['email']; // displays email for user with user_id = 8
echo $user['username']; // show username

变更日志

###v1.1.2

添加了对单独数据库连接的支持(当vbulletin论坛数据库位于与laravel不同的数据库中时)

在app/config/database.php中设置连接,并将连接名称添加到config/packages/pperon/vbauth/config.php中

  'db_connection' => 'vbconn', // vbconn is the connection name in database.php

###v1.0.7

添加了getUserInfo()方法,该方法返回任何论坛用户的用户信息

示例

$user_id = 8;
$user = Vbauth::getUserInfo($user_id);
echo $user['email']; // displays email for user with user_id = 8