You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

LuticatePermissionsUsersBusiness.php 1.9KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. <?php
  2. namespace Luticate\Auth\Business;
  3. use Luticate\Utils\LuBusiness;
  4. use Luticate\Auth\DataAccess\LuticatePermissionsUsersDataAccess;
  5. use Luticate\Auth\DBO\LuticatePermissionsUsersDbo;
  6. class LuticatePermissionsUsersBusiness extends LuBusiness {
  7. protected static function getDataAccess()
  8. {
  9. return new LuticatePermissionsUsersDataAccess();
  10. }
  11. public static function checkPermissionUserName($user_id, $permission_name)
  12. {
  13. LuticateUsersBusiness::checkUserId($user_id);
  14. LuticatePermissionsBusiness::checkPermissionName($permission_name);
  15. return LuticatePermissionsUsersDataAccess::getByName($user_id, $permission_name);
  16. }
  17. public static function get($user_id, $permission_name)
  18. {
  19. return LuticatePermissionsUsersDataAccess::getByName($user_id, $permission_name);
  20. }
  21. public static function add($user_id, $permission_name, $permission_value)
  22. {
  23. $perm = self::checkPermissionUserName($user_id, $permission_name);
  24. if (!is_null($perm)) {
  25. self::badInput("User permission already exists");
  26. }
  27. $perm = new LuticatePermissionsUsersDbo();
  28. $perm->setName($permission_name);
  29. $perm->setValue($permission_value);
  30. $perm->setUserId($user_id);
  31. LuticatePermissionsUsersDataAccess::add($perm);
  32. return true;
  33. }
  34. public static function del($user_id, $permission_name)
  35. {
  36. self::checkPermissionUserName($user_id, $permission_name);
  37. LuticatePermissionsUsersDataAccess::delete($user_id, $permission_name);
  38. return true;
  39. }
  40. public static function edit($user_id, $permission_name, $permission_value)
  41. {
  42. $perm = self::checkPermissionUserName($user_id, $permission_name);
  43. if (is_null($perm)) {
  44. self::badInput("Permission not found");
  45. }
  46. LuticatePermissionsUsersDataAccess::edit($user_id, $permission_name, $permission_value);
  47. return true;
  48. }
  49. }