Merge pull request #338 from necrodoom/patch-57

if variable is inside ' ', strip them
This commit is contained in:
ElgarL 2013-02-17 09:22:36 -08:00
commit 36e354388c

View File

@ -718,6 +718,11 @@ public class GroupManager extends JavaPlugin {
sender.sendMessage(ChatColor.RED + "Review your arguments count! (/<command> <player> <permission>)"); sender.sendMessage(ChatColor.RED + "Review your arguments count! (/<command> <player> <permission>)");
return false; return false;
} }
String auxString = args[1];
if (auxString.startsWith("'") && auxString.endsWith("'"))
{
auxString = auxString.substring(1, auxString.length() - 1)
}
if ((validateOnlinePlayer) && ((match = validatePlayer(args[0], sender)) == null)) { if ((validateOnlinePlayer) && ((match = validatePlayer(args[0], sender)) == null)) {
return false; return false;
} }
@ -739,13 +744,13 @@ public class GroupManager extends JavaPlugin {
} }
// Validating permissions of user // Validating permissions of user
permissionResult = permissionHandler.checkUserOnlyPermission(auxUser, args[1]); permissionResult = permissionHandler.checkUserOnlyPermission(auxUser, args[1]);
if (args[1].startsWith("+")) { if (auxString.startsWith("+")) {
if (permissionResult.resultType.equals(PermissionCheckResult.Type.EXCEPTION)) { if (permissionResult.resultType.equals(PermissionCheckResult.Type.EXCEPTION)) {
sender.sendMessage(ChatColor.RED + "The user already has direct access to that permission."); sender.sendMessage(ChatColor.RED + "The user already has direct access to that permission.");
sender.sendMessage(ChatColor.RED + "Node: " + permissionResult.accessLevel); sender.sendMessage(ChatColor.RED + "Node: " + permissionResult.accessLevel);
return false; return false;
} }
} else if (args[1].startsWith("-")) { } else if (auxString.startsWith("-")) {
if (permissionResult.resultType.equals(PermissionCheckResult.Type.EXCEPTION)) { if (permissionResult.resultType.equals(PermissionCheckResult.Type.EXCEPTION)) {
sender.sendMessage(ChatColor.RED + "The user already has an exception for this node."); sender.sendMessage(ChatColor.RED + "The user already has an exception for this node.");
sender.sendMessage(ChatColor.RED + "Node: " + permissionResult.accessLevel); sender.sendMessage(ChatColor.RED + "Node: " + permissionResult.accessLevel);
@ -763,8 +768,8 @@ public class GroupManager extends JavaPlugin {
} }
} }
// Seems OK // Seems OK
auxUser.addPermission(args[1]); auxUser.addPermission(auxString);
sender.sendMessage(ChatColor.YELLOW + "You added '" + args[1] + "' to player '" + auxUser.getName() + "' permissions."); sender.sendMessage(ChatColor.YELLOW + "You added '" + auxString + "' to player '" + auxUser.getName() + "' permissions.");
targetPlayer = this.getServer().getPlayer(auxUser.getName()); targetPlayer = this.getServer().getPlayer(auxUser.getName());
if (targetPlayer != null) if (targetPlayer != null)
@ -954,6 +959,11 @@ public class GroupManager extends JavaPlugin {
sender.sendMessage(ChatColor.RED + "Review your arguments count! (/<command> <group> <permission>)"); sender.sendMessage(ChatColor.RED + "Review your arguments count! (/<command> <group> <permission>)");
return false; return false;
} }
String auxString = args[1];
if (auxString.startsWith("'") && auxString.endsWith("'"))
{
auxString = auxString.substring(1, auxString.length() - 1)
}
auxGroup = dataHolder.getGroup(args[0]); auxGroup = dataHolder.getGroup(args[0]);
if (auxGroup == null) { if (auxGroup == null) {
sender.sendMessage(ChatColor.RED + "The specified group does not exist!"); sender.sendMessage(ChatColor.RED + "The specified group does not exist!");
@ -967,13 +977,13 @@ public class GroupManager extends JavaPlugin {
} }
// Validating permissions of user // Validating permissions of user
permissionResult = permissionHandler.checkGroupOnlyPermission(auxGroup, args[1]); permissionResult = permissionHandler.checkGroupOnlyPermission(auxGroup, args[1]);
if (args[1].startsWith("+")) { if (auxString.startsWith("+")) {
if (permissionResult.resultType.equals(PermissionCheckResult.Type.EXCEPTION)) { if (permissionResult.resultType.equals(PermissionCheckResult.Type.EXCEPTION)) {
sender.sendMessage(ChatColor.RED + "The group already has direct access to that permission."); sender.sendMessage(ChatColor.RED + "The group already has direct access to that permission.");
sender.sendMessage(ChatColor.RED + "Node: " + permissionResult.accessLevel); sender.sendMessage(ChatColor.RED + "Node: " + permissionResult.accessLevel);
return false; return false;
} }
} else if (args[1].startsWith("-")) { } else if (auxString.startsWith("-")) {
if (permissionResult.resultType.equals(PermissionCheckResult.Type.EXCEPTION)) { if (permissionResult.resultType.equals(PermissionCheckResult.Type.EXCEPTION)) {
sender.sendMessage(ChatColor.RED + "The group already has an exception for this node."); sender.sendMessage(ChatColor.RED + "The group already has an exception for this node.");
sender.sendMessage(ChatColor.RED + "Node: " + permissionResult.accessLevel); sender.sendMessage(ChatColor.RED + "Node: " + permissionResult.accessLevel);
@ -991,8 +1001,8 @@ public class GroupManager extends JavaPlugin {
} }
} }
// Seems OK // Seems OK
auxGroup.addPermission(args[1]); auxGroup.addPermission(auxString);
sender.sendMessage(ChatColor.YELLOW + "You added '" + args[1] + "' to group '" + auxGroup.getName() + "' permissions."); sender.sendMessage(ChatColor.YELLOW + "You added '" + auxString + "' to group '" + auxGroup.getName() + "' permissions.");
BukkitPermissions.updateAllPlayers(); BukkitPermissions.updateAllPlayers();
@ -1234,6 +1244,10 @@ public class GroupManager extends JavaPlugin {
auxString += " "; auxString += " ";
} }
} }
if (auxString.startsWith("'") && auxString.endsWith("'"))
{
auxString = auxString.substring(1, auxString.length() - 1)
}
auxUser.getVariables().addVar(args[1], Variables.parseVariableValue(auxString)); auxUser.getVariables().addVar(args[1], Variables.parseVariableValue(auxString));
sender.sendMessage(ChatColor.YELLOW + "Variable " + ChatColor.GOLD + args[1] + ChatColor.YELLOW + ":'" + ChatColor.GREEN + auxString + ChatColor.YELLOW + "' added to the user " + auxUser.getName()); sender.sendMessage(ChatColor.YELLOW + "Variable " + ChatColor.GOLD + args[1] + ChatColor.YELLOW + ":'" + ChatColor.GREEN + auxString + ChatColor.YELLOW + "' added to the user " + auxUser.getName());
@ -1382,6 +1396,10 @@ public class GroupManager extends JavaPlugin {
auxString += " "; auxString += " ";
} }
} }
if (auxString.startsWith("'") && auxString.endsWith("'"))
{
auxString = auxString.substring(1, auxString.length() - 1)
}
auxGroup.getVariables().addVar(args[1], Variables.parseVariableValue(auxString)); auxGroup.getVariables().addVar(args[1], Variables.parseVariableValue(auxString));
sender.sendMessage(ChatColor.YELLOW + "Variable " + ChatColor.GOLD + args[1] + ChatColor.YELLOW + ":'" + ChatColor.GREEN + auxString + ChatColor.YELLOW + "' added to the group " + auxGroup.getName()); sender.sendMessage(ChatColor.YELLOW + "Variable " + ChatColor.GOLD + args[1] + ChatColor.YELLOW + ":'" + ChatColor.GREEN + auxString + ChatColor.YELLOW + "' added to the group " + auxGroup.getName());