12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- <?php
-
- namespace Luticate\Auth\DataAccess;
-
- use Luticate\Auth\DataAccess\SP\SpLuGetAllUserPermission;
- use Luticate\Auth\DataAccess\SP\SpLuGetUserPermission;
- use Luticate\Utils\LuDataAccess;
- use Luticate\Auth\DataAccess\Models\LuticatePermissions;
- use Luticate\Auth\DBO\LuticatePermissionsDbo;
-
- class LuticatePermissionsDataAccess extends LuDataAccess {
- protected static function getModel()
- {
- return new LuticatePermissions();
- }
-
- protected static function getOrderBy()
- {
- return array(array("name", "ASC"));
- }
-
- protected static function getQueryPredicate($query)
- {
- return array(array("name", "ilike", "%" . $query . "%", "or"));
- }
-
- public static function getEffectivePermission($user_id, $permission_name)
- {
- return SpLuGetUserPermission::execute($user_id, $permission_name)->getVal();
- }
-
- public static function getAllEffectivePermission($user_id)
- {
- return SpLuGetAllUserPermission::execute($user_id);
- }
-
- public static function getModelByName($permission_name)
- {
- return LuticatePermissions::where("name", "=", $permission_name)->first();
- }
-
- public static function getByName($permission_name)
- {
- $perm = self::getModelByName($permission_name);
- if (is_null($perm)) {
- return null;
- }
- return $perm->toDbo();
- }
-
- public static function delete($permission_name)
- {
- $perm = self::getModelByName($permission_name);
- if (is_null($perm))
- return;
- $perm->delete();
- }
-
- public static function edit($permission_name, $permission_value)
- {
- $perm = self::getModelByName($permission_name);
- if (is_null($perm))
- return;
- $perm->value = $permission_value;
- $perm->save();
- }
- }
|