Constants

RANDAMSTR

RANDAMSTR = '1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ' : \const

認証キー用のランダム文字列

CONFIRMATION_USER_OWN

CONFIRMATION_USER_OWN = '0' : string

アカウント登録の最終決定(ユーザ自身による確認)

CONFIRMATION_AUTO_REGIST

CONFIRMATION_AUTO_REGIST = '1' : string

アカウント登録の最終決定(自動で登録する)

CONFIRMATION_ADMIN_APPROVAL

CONFIRMATION_ADMIN_APPROVAL = '2' : string

アカウント登録の最終決定(管理者の承認が必要)

STATUS_KEY_NOT_AVAILABLE

STATUS_KEY_NOT_AVAILABLE = 'status_0' : string

ユーザステータス(利用不可)

STATUS_KEY_AVAILABLE

STATUS_KEY_AVAILABLE = 'status_1' : string

ユーザステータス(公開)

STATUS_KEY_WAIT_ACCEPTANCE

STATUS_KEY_WAIT_ACCEPTANCE = 'status_2' : string

ユーザステータス(管理者の承認待ち)

STATUS_KEY_WAIT_APPROVAL

STATUS_KEY_WAIT_APPROVAL = 'status_3' : string

ユーザステータス(本人の確認待ち)

INVALIDATE_BAD_REQUEST

INVALIDATE_BAD_REQUEST = 'bad_request' : string

バリデーションエラーのキー(不正リクエスト)

INVALIDATE_ALREADY_ACTIVATED

INVALIDATE_ALREADY_ACTIVATED = 'already_activated' : string

バリデーションエラーのキー(既に承認済み)

INVALIDATE_CANCELLED_OUT

INVALIDATE_CANCELLED_OUT = 'cancelled_out' : string

バリデーションエラーのキー(既に削除された)

Properties

$validate

$validate : array

Validation rules

Type

array

$useDbConfig

$useDbConfig : string

Use database config

Type

string

$blockId

$blockId : string

ブロックId Behaviorで関連データ削除する際に使用する

Type

string

$blockKey

$blockKey : string

ブロックKey Behaviorで関連データ削除する際に使用する

Type

string

$contentKey

$contentKey : string

コンテンツKey Behaviorで関連データ削除する際に使用する

Type

string

$useTable

$useTable : boolean

テーブル名

Type

boolean

$__changeDbConfig

$__changeDbConfig : string

接続先DB master slave変更用

Type

string

$__oldSlaveDbConfig

$__oldSlaveDbConfig : string

接続先DB 古いslave保存用

Type

string

Methods

__construct()

__construct(boolean|integer|string|array  $id = false, string  $table = null, string  $ds = null) : void

Constructor. DataSourceの選択

接続先DBをランダムに選択します。

Parameters

boolean|integer|string|array $id

Set this ID for this model on startup, can also be an array of options, see above.

string $table

Name of database table to use.

string $ds

DataSource connection name.

setMasterDataSource()

setMasterDataSource() : void

Masterの接続先に変更する。

setSlaveDataSource()

setSlaveDataSource() : void

以前のSlaveの接続先に戻す。なければ、ランダムに選択

getDataSource()

getDataSource() : \DataSource

Gets the DataSource to which this model is bound.

Returns

\DataSource —

A DataSource object

create()

create(boolean|array  $data = array(), boolean  $filterKey = false) : array

NetCommonsで使用する共通の値がセットされた結果を返します。<br> CakePHPのSchemaは、not null指定されたカラムのdefaultがnullになっているため、<br> ''(長さ0の文字列)に書き換えています。<br> https://github.com/NetCommons3/NetCommons3/issues/7

セットされるデータ

'room_id' => Current::read('Room.id'),
'language_id' => Current::read('Language.id'),
'block_id' => Current::read('Block.id'),
'block_key' => Current::read('Block.key'),
'frame_id' => Current::read('Frame.id'),
'frame_key' => Current::read('Frame.key'),
'plugin_key' => Inflector::underscore($this->plugin),

Parameters

boolean|array $data

Optional data array to assign to the model after it is created. If null or false, schema data defaults are not merged.

boolean $filterKey

If true, overwrites any primary key input with an empty value

Returns

array —

The current Model::data; after merging $data and/or defaults from database

createAll()

createAll(boolean|array  $data = array(), boolean  $filterKey = false) : array

Initializes the model for writing a new record, loading the default values for those fields that are not defined in $data, and clearing previous validation errors.

Especially helpful for saving data in loops.

Parameters

boolean|array $data

Optional data array to assign to the model after it is created. If null or false, schema data defaults are not merged.

boolean $filterKey

If true, overwrites any primary key input with an empty value

Returns

array —

The current Model::data; after merging $data and/or defaults from database

begin()

begin() : void

transaction begin

commit()

commit() : void

transaction commit

rollback()

rollback(mixed  $ex = null) : void

transaction rollback

Parameters

mixed $ex

Exception

Throws

\Exception

loadModels()

loadModels(array  $models = array()) : void

Load models

Parameters

array $models

models to load

beforeValidate()

beforeValidate(array  $options = array()) : boolean

Called during validation operations, before validation. Please note that custom validation rules can be defined in $validate.

Parameters

array $options

Options passed from Model::save().

Returns

boolean —

True if validate operation should continue, false to abort

getUserAttribures()

getUserAttribures() : array

UserAttribureデータ取得

Returns

array

createUser()

createUser() : array

Userデータ生成

Returns

array

validateRequest()

validateRequest(array  $data) : boolean

新規登録の入力チェック

Parameters

array $data

リクエストデータ

Returns

boolean

saveAutoUserRegist()

saveAutoUserRegist(array  $data) : boolean

新規登録処理

Parameters

array $data

リクエストデータ

Returns

boolean

saveActivateKey()

saveActivateKey(integer  $userId) : array

アクティベートキーを登録する

Parameters

integer $userId

ユーザID

Returns

array —

アクティベートキーとアクティベート日時

saveUserStatus()

saveUserStatus(array  $data, integer  $status, boolean  $validate = true) : boolean|array

ステータスを更新する

Parameters

array $data

リクエストデータ

integer $status

ステータス

boolean $validate

バリデーションの有無

Returns

boolean|array —

バリデーションエラーの場合、falseを返す。
正常の場合で、管理者の承認有無は、本人の登録確認のためのユーザ情報を返す。
また、本人の登録確認の場合、trueを返す。

_getDefaultValue()

_getDefaultValue() : array

全カラムのデフォルト値をセットした配列を返す。

Returns

array —

デフォルト値をセットした配列

_doSave()

_doSave(array  $data = null, array  $options = array()) : mixed

cakephpの登録処理をオーバーライド

cakephpのsave時にcreated,modifiedの項目にセットする時間が、date_default_timezone_setに影響してしまうため、 登録直前にUTCに変更し、登録後にdate_default_timezone_setを元に戻すため、オーバライドする

Parameters

array $data

Data to save.

array $options

can have following keys:

  • validate: Set to true/false to enable or disable validation.
  • fieldList: An array of fields you want to allow for saving.
  • callbacks: Set to false to disable callbacks. Using 'before' or 'after' will enable only those callbacks.
  • counterCache: Boolean to control updating of counter caches (if any)

Throws

\PDOException

Returns

mixed —

On success Model::$data if its not empty or true, false on failure

_readDataSource()

_readDataSource(string  $type, array  $query) : array

Findの結果をキャッシュする際、afterFindは実行させたいので、CakeのModelを継承して、カスタマイズする。

Parameters

string $type

Type of find operation (all / first / count / neighbors / list / threaded)

array $query

Option fields (conditions / fields / joins / limit / offset / order / page / group / callbacks)

Returns

array

__getRandomlySlave()

__getRandomlySlave() : string

Find the slaves we have

Returns

string —

The name of the DataSource, as defined in app/Config/database.php

__changeDataSource()

__changeDataSource() : void

MasterDBに切り替える処理

__getModel()

__getModel(array  $userAttribute) : string

model名(UserもしくはUsersLanguage)の取得

Parameters

array $userAttribute

会員項目データ

Returns

string —

model名(UserもしくはUsersLanguage)

__getUserStatusCode()

__getUserStatusCode(string  $statusKey) : string

初期値データの取得

Parameters

string $statusKey

ステータスのキー

Returns

string —

ステータス値

__getDefaultData()

__getDefaultData() : array

初期値データの取得

Returns

array

__setValidateRequest()

__setValidateRequest() : boolean

新規登録の入力チェック用のバリデーションルールをセット

Returns

boolean

__saveUser()

__saveUser(array  $update) : boolean

登録処理

Parameters

array $update

更新データ

Throws

\InternalErrorException

Returns

boolean

__validateUserStatus()

__validateUserStatus(integer  $userId, integer  $status, string  $activateKey, integer  $activateTime, string  $hash) : boolean|array

メールでの承認バリデーション

Parameters

integer $userId

ユーザID

integer $status

ステータス値

string $activateKey

アクティベートキー

integer $activateTime

アクティベート日時(int)

string $hash

ユーザIDとアクティベートキーのハッシュ値(改竄チェック用)

Returns

boolean|array —

ユーザ情報 or エラー