From 9c09771845bdbff20433548a6203937b6a232aea Mon Sep 17 00:00:00 2001 From: KHobbits Date: Fri, 1 Feb 2013 00:01:57 +0000 Subject: Make gm API lookup respect offlineperms toggle properly. --- .../groupmanager/permissions/AnjoPermissionsHandler.java | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) (limited to 'EssentialsGroupManager/src/org') diff --git a/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/AnjoPermissionsHandler.java b/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/AnjoPermissionsHandler.java index a221c56a2..f303aea35 100644 --- a/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/AnjoPermissionsHandler.java +++ b/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/AnjoPermissionsHandler.java @@ -789,9 +789,9 @@ public class AnjoPermissionsHandler extends PermissionsReaderInterface { * We are in offline mode * and the player has the 'groupmanager.noofflineperms' permission. */ - if (user == null || targetPermission == null || targetPermission.isEmpty() || - (!Bukkit.getServer().getOnlineMode() - && (checkPermission(user, "groupmanager.noofflineperms", true).resultType == PermissionCheckResult.Type.FOUND))) { + if (user == null || targetPermission == null || targetPermission.isEmpty() + || (!Bukkit.getServer().getOnlineMode() + && (checkPermission(user, "groupmanager.noofflineperms", false).resultType == PermissionCheckResult.Type.FOUND))) { PermissionCheckResult result = new PermissionCheckResult(); result.accessLevel = targetPermission; @@ -1037,6 +1037,15 @@ public class AnjoPermissionsHandler extends PermissionsReaderInterface { userAccessLevelOffset = 1; result = PermissionCheckResult.Type.NEGATION; } + + if (fullPermissionName.equals(userAccessLevel)) { + return result; + } + + if ("groupmanager.noofflineperms".equals(fullPermissionName)) { + result = PermissionCheckResult.Type.NOTFOUND; + } + if ("*".regionMatches(0, userAccessLevel, userAccessLevelOffset, userAccessLevelLength - userAccessLevelOffset)) { return result; } -- cgit v1.2.3