\Controller_Auth

ネクストエンジンAPIの認証処理を行うコントローラ

NOTE: Controllerとコアと同名のクラスにするとこちらが先にロードされてしまうのでControllerという命名を避けている

Summary

Methods
Properties
Constants
_init()
get_login()
get_logout()
get_callback()
before()
No public properties found
No constants found
_create_company()
_create_user()
_fetch_company_info()
_fetch_user_info()
$client
$company
$user
N/A
getLocale()
No private properties found
N/A

Properties

$client

$client : \Nextengine\Api\Client

ネクストエンジンAPIクライアントのインスタンスを保持する

Type

\Nextengine\Api\Client

$company

$company : \Model_Company

現在ログインしている企業情報を保持する

ログインしていない場合はnullが格納されている

Type

\Model_Company

$user

$user : \Model_User

現在ログインしているユーザ情報を保持する

ログインしていない場合はnullが格納されている

Type

\Model_User

Methods

_init()

_init() : void

言語の設定、言語ファイルの読み込みを行う

ここに書いておくことで継承クラスは言語ファイルのロードを考慮せずコーディングできる このクラスを継承したクラスで_initを定義したい場合には、"必ず"parent::_init()をコールして下さい

get_login()

get_login() : void

route: [GET] /auth/login

ネクストエンジンAPIクライアントクラスのneLoginメソッドを呼び出す。 neLoginの認証処理につきましては、SDKのドキュメントを御覧下さい。 http://api.next-e.jp/sdk.php#php

get_logout()

get_logout() : void

route: [GET] /auth/logout

現在のセッションを破棄し、リダイレクトを行う

get_callback()

get_callback() : void

route: [GET] /auth/callback

ネクストエンジンAPIの認証が済むとリダイレクトされるメソッドです。 セッションやGETパラメータの値を見て、認証済みのデータをDBとセッションに保存します。

before()

before() : void

アクションの実行前に企業情報とユーザ情報をセットする

ただしログイン済みの場合のみ。未ログインの場合はプロパティはnullのままです。 この仕様を利用してログイン判定をすることができます。 が、Controller_Neapiクラスを継承しているならその処理を記述済みなのであえて書く必要はありません。

Fuelのドキュメントにもありますが、互換性を維持するため継承したクラスでbeforeメソッドを使用する場合には必ずparent::before()をコールして下さい。

_create_company()

_create_company(\Model_Company  $company, array  $company_info) : \Model_Company

APIから取得した情報を元にCompanyモデルを作成し返却する

インスタンスは、既にDBに存在するデータから取得するか、存在しない場合newされたものが渡される ログイン処理の度に毎回更新すべき情報を全てセットすること。

Parameters

\Model_Company $company

(DBから取得した or newした)企業モデルのインスタンス

array $company_info

ログイン企業の情報(連想配列)

Returns

\Model_Company

プロパティに値をセットしたインスタンス

_create_user()

_create_user(\Model_User  $user, array  $user_info, integer  $company_id) : \Model_User

APIから取得した情報を元にUserモデルを作成し返却する

インスタンスは、既にDBに存在するデータから取得するか、存在しない場合newされたものが渡される ログイン処理の度に毎回更新すべき情報を全てセットすること。

Parameters

\Model_User $user

(DBから取得した or newした)ユーザモデルのインスタンス

array $user_info

ログインユーザの情報(連想配列)

integer $company_id

所属している企業ID

Returns

\Model_User

プロパティに値をセットしたインスタンス

_fetch_user_info()

_fetch_user_info() : array

NE APIからユーザ情報を取得するユーティリティ

Returns

array —

ユーザ情報の連想配列。参照:http://api.next-e.jp/fields_login.php#pic

getLocale()

getLocale(string  $raw_locale) : string

アクセスされたユーザの言語ロケールを取得する

複数指定されている場合は、もっとも先頭に指定されている言語を返却します。 先頭の2文字だけを見るので、3文字以上の言語略称が現れた場合にはバグります。直して下さい。

example

  • 'en' => 'en'
  • 'ja;q=0.6' => 'ja'
  • 'xxx' => 'xx'

Parameters

string $raw_locale

ブラウザから送信された言語情報を表す文字列

Returns

string