class wakarana_permission
wakarana_data_itemの派生クラス。権限の情報を読み書きするために使用する。1インスタンスごとに1権限の情報が割り当てられる。- wakarana_permission::__construct
- wakarana_permission::get_resource_id
- wakarana_permission::get_name
- wakarana_permission::get_description
- wakarana_permission::set_info
- wakarana_permission::get_actions
- wakarana_permission::add_action
- wakarana_permission::delete_action
- wakarana_permission::get_parent_permission
- wakarana_permission::get_descendant_permissions
- wakarana_permission::get_roles
- wakarana_permission::get_users
- wakarana_permission::delete_permission
wakarana_permission::__construct($wakarana, $permission_info)
コンストラクタ。wakarana::get_permissionの実行時に呼び出されるものであり、直接インスタンス化するべきではない。$wakarana : 呼び出し元のwakaranaインスタンス
$permission_info : 権限情報("resource_id"(権限対象リソースID)、"permission_name"(権限名)、"permission_description"(権限の説明文))を格納した連想配列
wakarana_permission::get_resource_id()
権限の対象リソースIDを取得する。返り値 : 権限のリソースIDを返す。
wakarana_permission::get_name()
権限の表示名を取得する。返り値 : 権限の表示名を返す。
wakarana_permission::get_description()
権限の説明文を取得する。返り値 : 権限についての説明文を返す。
wakarana_permission::set_info($permission_name=NULL, $permission_description=NULL)
権限の情報を変更する。$permission_name : 権限の表示名。変更しない場合はNULL。
$permission_description : 権限についての説明文。変更しない場合は省略。
返り値 : 成功した場合はTRUE、失敗した場合はFALSEを返す。
wakarana_permission::get_actions()
権限に存在する動作の一覧を取得する。親権限から継承した動作も区別なく合わせて取得される。
返り値 : 動作識別名をアルファベット順に配列で返す。失敗した場合はFALSEを返す。
wakarana_permission::add_action($action)
権限で使用可能な動作を追加する。親権限に動作を追加すると、子権限にも同じ動作が自動的に追加される。
特権管理者ロールには追加した動作が自動的に割り当てられる。
$action : 動作識別名。半角英数字及びアンダーバーが使用可能。アルファベット大文字は小文字に変換される。
返り値 : 成功した場合はTRUE、失敗した場合はFALSEを返す。
wakarana_permission::delete_action($action=NULL)
権限で使用可能な動作を削除する。削除された動作は全てのロールから剥奪される。親権限に存在する動作、及び、初期動作「any」を削除することはできない。
$action : 動作識別名。NULLまたは省略した場合は「any」以外の全ての動作が削除される。
返り値 : 成功した場合はTRUE、失敗した場合はFALSEを返す。
wakarana_permission::get_parent_permission()
権限の親権限を取得する。返り値 : 親権限のwakarana_permissionインスタンスを返す。親権限が存在しなければNULLを返し、失敗した場合はFALSEを返す。
wakarana_permission::get_descendant_permissions()
権限の子孫権限一覧を取得する。返り値 : 子孫の権限のwakarana_permissionインスタンスを配列で返す。子孫権限が存在しなければ空配列を返し、失敗した場合はFALSEを返す。
wakarana_permission::get_roles($action="any")
権限が割り当てられているロールの一覧を取得する。$action : 動作識別名
返り値 : ロールのwakarana_roleインスタンスをロールIDの順に配列で返す。失敗した場合はFALSEを返す。
wakarana_permission::get_users($action="any")
権限が割り当てられているユーザーの一覧を取得する。$action : 動作識別名
返り値 : ユーザーのwakarana_userインスタンスをユーザーIDの順に配列で返す。権限を持つユーザーが存在しなければ空配列を返し、失敗した場合はFALSEを返す。
wakarana_permission::delete_permission()
権限を全てのロールから剥奪して完全に削除する。子孫権限が存在する場合、それらも同様に削除される。返り値 : 成功した場合はTRUE、失敗した場合はFALSEを返す。
