|  | @@ -52,6 +52,9 @@ class LuticateBusiness
 | 
		
	
		
			
			| 52 | 52 |              }
 | 
		
	
		
			
			| 53 | 53 |          }
 | 
		
	
		
			
			| 54 | 54 |          if (is_null($user)) {
 | 
		
	
		
			
			|  | 55 | +            if ($token != null && $token != "") {
 | 
		
	
		
			
			|  | 56 | +                return "Invalid token";
 | 
		
	
		
			
			|  | 57 | +            }
 | 
		
	
		
			
			| 55 | 58 |              $user = LuticateUsersBusiness::getById(0);
 | 
		
	
		
			
			| 56 | 59 |          }
 | 
		
	
		
			
			| 57 | 60 |  
 | 
		
	
	
		
			
			|  | @@ -61,10 +64,10 @@ class LuticateBusiness
 | 
		
	
		
			
			| 61 | 64 |          $permissions[] = LuticatePermissions::USER_LOGIN;
 | 
		
	
		
			
			| 62 | 65 |          foreach ($permissions as $permission) {
 | 
		
	
		
			
			| 63 | 66 |              if (!LuticatePermissionsBusiness::getUserPermission(self::$_currentUser->getId(), $permission)) {
 | 
		
	
		
			
			| 64 |  | -                return false;
 | 
		
	
		
			
			|  | 67 | +                return "Permission denied";
 | 
		
	
		
			
			| 65 | 68 |              }
 | 
		
	
		
			
			| 66 | 69 |          }
 | 
		
	
		
			
			| 67 |  | -        return true;
 | 
		
	
		
			
			|  | 70 | +        return null;
 | 
		
	
		
			
			| 68 | 71 |      }
 | 
		
	
		
			
			| 69 | 72 |  
 | 
		
	
		
			
			| 70 | 73 |      /**
 | 
		
	
	
		
			
			|  | @@ -74,7 +77,12 @@ class LuticateBusiness
 | 
		
	
		
			
			| 74 | 77 |      {
 | 
		
	
		
			
			| 75 | 78 |          $route->setMiddleware(function($permissions, $request)
 | 
		
	
		
			
			| 76 | 79 |          {
 | 
		
	
		
			
			| 77 |  | -            return self::authFilter($permissions, $request);
 | 
		
	
		
			
			|  | 80 | +            $auth = self::authFilter($permissions, $request);
 | 
		
	
		
			
			|  | 81 | +            if (is_null($auth)) {
 | 
		
	
		
			
			|  | 82 | +                return true;
 | 
		
	
		
			
			|  | 83 | +            }
 | 
		
	
		
			
			|  | 84 | +            abort(401, $auth);
 | 
		
	
		
			
			|  | 85 | +            return false;
 | 
		
	
		
			
			| 78 | 86 |          });
 | 
		
	
		
			
			| 79 | 87 |      }
 | 
		
	
		
			
			| 80 | 88 |  
 | 
		
	
	
		
			
			|  | @@ -85,12 +93,22 @@ class LuticateBusiness
 | 
		
	
		
			
			| 85 | 93 |      {
 | 
		
	
		
			
			| 86 | 94 |          $prefix = "/luticate";
 | 
		
	
		
			
			| 87 | 95 |          $ns = 'Luticate\Auth\Business\\';
 | 
		
	
		
			
			|  | 96 | +        $int = "[0-9]+";
 | 
		
	
		
			
			|  | 97 | +        $group_id = "{group_id:$int}";
 | 
		
	
		
			
			|  | 98 | +        $user_id = "{user_id:$int}";
 | 
		
	
		
			
			| 88 | 99 |  
 | 
		
	
		
			
			| 89 | 100 |          $route->post("$prefix/users/login", "${ns}LuticateUsersBusiness", "login");
 | 
		
	
		
			
			| 90 | 101 |          $route->put("$prefix/users/logout", "${ns}LuticateUsersBusiness", "logout");
 | 
		
	
		
			
			| 91 | 102 |          $route->post("$prefix/users/add", "${ns}LuticateUsersBusiness", "add", LuticatePermissions::USER_ADD);
 | 
		
	
		
			
			|  | 103 | +        $route->post("$prefix/users/$user_id/edit", "${ns}LuticateUsersBusiness", "edit", LuticatePermissions::USER_EDIT);
 | 
		
	
		
			
			|  | 104 | +        $route->post("$prefix/users/me/edit", "${ns}LuticateUsersBusiness", "editMe", LuticatePermissions::USER_EDIT_MYSELF);
 | 
		
	
		
			
			|  | 105 | +        $route->post("$prefix/users/$user_id/setPassword", "${ns}LuticateUsersBusiness", "setPassword", LuticatePermissions::USER_SET_PASSWORD);
 | 
		
	
		
			
			|  | 106 | +        $route->post("$prefix/users/me/setPassword", "${ns}LuticateUsersBusiness", "setPasswordMe", LuticatePermissions::USER_SET_PASSWORD_MYSELF);
 | 
		
	
		
			
			| 92 | 107 |  
 | 
		
	
		
			
			| 93 | 108 |  
 | 
		
	
		
			
			| 94 | 109 |          $route->post("$prefix/groups/add", "${ns}LuticateGroupsBusiness", "add", LuticatePermissions::GROUP_ADD);
 | 
		
	
		
			
			|  | 110 | +        $route->post("$prefix/groups/del/$group_id", "${ns}LuticateGroupsBusiness", "del", LuticatePermissions::GROUP_DEL);
 | 
		
	
		
			
			|  | 111 | +        $route->post("$prefix/groups/$group_id/addUser/$user_id", "${ns}LuticateGroupsBusiness", "addUser", LuticatePermissions::GROUP_ADD_USER);
 | 
		
	
		
			
			|  | 112 | +        $route->post("$prefix/groups/$group_id/delUser/$user_id", "${ns}LuticateGroupsBusiness", "delUser", LuticatePermissions::GROUP_DEL_USER);
 | 
		
	
		
			
			| 95 | 113 |      }
 | 
		
	
		
			
			| 96 | 114 |  }
 |