1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- <?php
-
- namespace Luticate\Auth\Business;
-
- use Luticate\Auth\DBO\LuticatePermissionsDbo;
- use Luticate\Utils\LuBusiness;
- use Luticate\Auth\DataAccess\LuticatePermissionsUsersDataAccess;
- use Luticate\Auth\DBO\LuticatePermissionsUsersDbo;
- use Luticate\Utils\LuMultipleDbo;
-
- class LuticatePermissionsUsersBusiness extends LuBusiness {
- protected static function getDataAccess()
- {
- return new LuticatePermissionsUsersDataAccess();
- }
-
- public static function checkPermissionUserName($user_id, $permission_name)
- {
- LuticateUsersBusiness::checkUserId($user_id);
- LuticatePermissionsBusiness::checkPermissionName($permission_name);
- return LuticatePermissionsUsersDataAccess::getByName($user_id, $permission_name);
- }
-
- public static function getAllByUser($user_id, $page = 0, $perPage = PHP_INT_MAX)
- {
- $values = LuticatePermissionsUsersDataAccess::getAllByUser($user_id, $page, $perPage);
- $dbos = [];
- foreach ($values->getData() as $value) {
- $dbo = new LuticatePermissionsDbo();
- $dbo->setValue($value->getValue());
- $dbo->setName($value->getName());
- $dbos[] = $dbo;
- }
- return new LuMultipleDbo($values->getCount(), $dbos);
- }
-
- public static function get($user_id, $permission_name)
- {
- return LuticatePermissionsUsersDataAccess::getByName($user_id, $permission_name);
- }
-
- public static function add($user_id, $permission_name, $permission_value)
- {
- $perm = self::checkPermissionUserName($user_id, $permission_name);
- if (!is_null($perm)) {
- self::badInput("User permission already exists");
- }
- $perm = new LuticatePermissionsUsersDbo();
- $perm->setName($permission_name);
- $perm->setValue($permission_value);
- $perm->setUserId($user_id);
- LuticatePermissionsUsersDataAccess::add($perm);
- return true;
- }
-
- public static function del($user_id, $permission_name)
- {
- self::checkPermissionUserName($user_id, $permission_name);
- LuticatePermissionsUsersDataAccess::delete($user_id, $permission_name);
- return true;
- }
-
- public static function edit($user_id, $permission_name, $permission_value)
- {
- self::del($user_id, $permission_name);
- return self::add($user_id, $permission_name, $permission_value);
- }
- }
|