Package ru.tehkode.permissions

Examples of ru.tehkode.permissions.PermissionUser


      syntax = "user <user> delete",
      permission = "permissions.manage.users.<user>",
      description = "Remove <user>")
  public void userDelete(PermissionsEx plugin, CommandSender sender, Map<String, String> args) {
    String userName = this.autoCompletePlayerName(args.get("user"));
    PermissionUser user = plugin.getPermissionsManager().getUser(userName);

    if (user == null) {
      sender.sendMessage(ChatColor.RED + "User \"" + userName + "\" doesn't exist.");
      return;
    }

    if (user.isVirtual()) {
      sender.sendMessage(ChatColor.RED + "User \"" + describeUser(user) + "\" is virtual.");
    }

    user.remove();

    plugin.getPermissionsManager().resetUser(user.getIdentifier());

    sender.sendMessage(ChatColor.WHITE + "User \"" + describeUser(user) + "\" removed!");
  }
View Full Code Here


      description = "Add <permission> to <user> in [world]")
  public void userAddPermission(PermissionsEx plugin, CommandSender sender, Map<String, String> args) {
    String userName = this.autoCompletePlayerName(args.get("user"));
    String worldName = this.autoCompleteWorldName(args.get("world"));

    PermissionUser user = plugin.getPermissionsManager().getUser(userName);

    if (user == null) {
      sender.sendMessage(ChatColor.RED + "User \"" + userName + "\" doesn't exist.");
      return;
    }

    user.addPermission(args.get("permission"), worldName);

    sender.sendMessage(ChatColor.WHITE + "Permission \"" + args.get("permission") + "\" added!");

    this.informPlayer(plugin, user, "Your permissions have been changed!");
  }
View Full Code Here

      description = "Remove permission from <user> in [world]")
  public void userRemovePermission(PermissionsEx plugin, CommandSender sender, Map<String, String> args) {
    String userName = this.autoCompletePlayerName(args.get("user"));
    String worldName = this.autoCompleteWorldName(args.get("world"));

    PermissionUser user = plugin.getPermissionsManager().getUser(userName);

    if (user == null) {
      sender.sendMessage(ChatColor.RED + "User \"" + userName + "\" doesn't exist.");
      return;
    }

    String permission = this.autoCompletePermission(user, args.get("permission"), worldName);

    user.removePermission(permission, worldName);
    user.removeTimedPermission(permission, worldName);

    sender.sendMessage(ChatColor.WHITE + "Permission \"" + permission + "\" removed!");
    this.informPlayer(plugin, user, "Your permissions have been changed!");
  }
View Full Code Here

      description = "Swap <permission> and <targetPermission> in permission list. Could be number or permission itself")
  public void userSwapPermission(PermissionsEx plugin, CommandSender sender, Map<String, String> args) {
    String userName = this.autoCompletePlayerName(args.get("user"));
    String worldName = this.autoCompleteWorldName(args.get("world"));

    PermissionUser user = plugin.getPermissionsManager().getUser(userName);

    if (user == null) {
      sender.sendMessage(ChatColor.RED + "User \"" + userName + "\" doesn't exist.");
      return;
    }

    List<String> permissions = user.getOwnPermissions(worldName);

    try {
      int sourceIndex = this.getPosition(this.autoCompletePermission(user, args.get("permission"), worldName, "permission"), permissions);
      int targetIndex = this.getPosition(this.autoCompletePermission(user, args.get("targetPermission"), worldName, "targetPermission"), permissions);

      String targetPermission = permissions.get(targetIndex);

      permissions.set(targetIndex, permissions.get(sourceIndex));
      permissions.set(sourceIndex, targetPermission);

      user.setPermissions(permissions, worldName);

      sender.sendMessage("Permissions swapped!");
    } catch (Throwable e) {
      sender.sendMessage(ChatColor.RED + "Error: " + e.getMessage());
    }
View Full Code Here

    if (args.containsKey("lifetime")) {
      lifetime = DateUtils.parseInterval(args.get("lifetime"));
    }

    PermissionUser user = plugin.getPermissionsManager().getUser(userName);

    if (user == null) {
      sender.sendMessage(ChatColor.RED + "User \"" + userName + "\" doesn't exist.");
      return;
    }

    String permission = args.get("permission");

    user.addTimedPermission(permission, worldName, lifetime);

    sender.sendMessage(ChatColor.WHITE + "Timed permission \"" + permission + "\" added!");
    this.informPlayer(plugin, user, "Your permissions have been changed!");

    plugin.getLogger().info("User \"" + userName + "\" get timed permission \"" + args.get("permission") + "\" "
View Full Code Here

  public void userRemoveTimedPermission(PermissionsEx plugin, CommandSender sender, Map<String, String> args) {
    String userName = this.autoCompletePlayerName(args.get("user"));
    String worldName = this.autoCompleteWorldName(args.get("world"));
    String permission = args.get("permission");

    PermissionUser user = plugin.getPermissionsManager().getUser(userName);

    if (user == null) {
      sender.sendMessage(ChatColor.RED + "User \"" + userName + "\" doesn't exist.");
      return;
    }

    user.removeTimedPermission(args.get("permission"), worldName);

    sender.sendMessage(ChatColor.WHITE + "Timed permission \"" + permission + "\" removed!");
    this.informPlayer(plugin, user, "Your permissions have been changed!");
  }
View Full Code Here

      description = "Set <option> to <value> in [world]")
  public void userSetOption(PermissionsEx plugin, CommandSender sender, Map<String, String> args) {
    String userName = this.autoCompletePlayerName(args.get("user"));
    String worldName = this.autoCompleteWorldName(args.get("world"));

    PermissionUser user = plugin.getPermissionsManager().getUser(userName);

    if (user == null) {
      sender.sendMessage(ChatColor.RED + "User \"" + userName + "\" doesn't exist.");
      return;
    }

    user.setOption(args.get("option"), args.get("value"), worldName);


    if (args.containsKey("value") && args.get("value").isEmpty()) {
      sender.sendMessage(ChatColor.WHITE + "Option \"" + args.get("option") + "\" cleared!");
    } else {
View Full Code Here

      description = "List all <user> groups")
  public void userListGroup(PermissionsEx plugin, CommandSender sender, Map<String, String> args) {
    String userName = this.autoCompletePlayerName(args.get("user"));
    String worldName = this.autoCompleteWorldName(args.get("world"));

    PermissionUser user = plugin.getPermissionsManager().getUser(userName);

    if (user == null) {
      sender.sendMessage(ChatColor.RED + "User \"" + userName + "\" doesn't exist.");
      return;
    }

    sender.sendMessage("User \"" + describeUser(user) + "\" @" + worldName + " currently in:");
    for (PermissionGroup group : user.getParents(worldName)) {
      sender.sendMessage("  " + group.getIdentifier());
    }
  }
View Full Code Here

  public void userAddGroup(PermissionsEx plugin, CommandSender sender, Map<String, String> args) {
    String userName = this.autoCompletePlayerName(args.get("user"));
    String groupName = this.autoCompleteGroupName(args.get("group"));
    String worldName = this.autoCompleteWorldName(args.get("world"));

    PermissionUser user = plugin.getPermissionsManager().getUser(userName);

    if (user == null) {
      sender.sendMessage(ChatColor.RED + "User \"" + userName + "\" doesn't exist.");
      return;
    }

    if (args.containsKey("lifetime")) {
      try {
        int lifetime = DateUtils.parseInterval(args.get("lifetime"));

        user.addGroup(groupName, worldName, lifetime);
      } catch (NumberFormatException e) {
        sender.sendMessage(ChatColor.RED + "Group lifetime should be number!");
        return;
      }

    } else {
      user.addGroup(groupName, worldName);
    }


    sender.sendMessage(ChatColor.WHITE + "User \"" + describeUser(user) + "\" added to group \"" + groupName + "\"!");
    this.informPlayer(plugin, user, "You are assigned to group \"" + groupName + "\"");
View Full Code Here

  public void userSetGroup(PermissionsEx plugin, CommandSender sender, Map<String, String> args) {
    String userName = this.autoCompletePlayerName(args.get("user"));
    String worldName = this.autoCompleteWorldName(args.get("world"));

    PermissionManager manager = plugin.getPermissionsManager();
    PermissionUser user = manager.getUser(userName);

    if (user == null) {
      sender.sendMessage(ChatColor.RED + "User \"" + userName + "\" doesn't exist.");
      return;
    }

    String groupName = args.get("group");

    List<PermissionGroup> groups;

    if (groupName.contains(",")) {
      String[] groupsNames = groupName.split(",");
      groups = new ArrayList<>(groupsNames.length);

      for (String addName : groupsNames) {
        if (sender instanceof Player && !manager.has((Player) sender, "permissions.manage.membership." + addName.toLowerCase())) {
          sender.sendMessage(ChatColor.RED + "Don't have enough permission for group " + addName);
          return;
        }

        groups.add(manager.getGroup(this.autoCompleteGroupName(addName)));
      }

    } else {
      groupName = this.autoCompleteGroupName(groupName);

      if (groupName != null) {
        groups = Collections.singletonList(manager.getGroup(groupName));

        if (sender instanceof Player && !manager.has((Player) sender, "permissions.manage.membership." + groupName.toLowerCase())) {
          sender.sendMessage(ChatColor.RED + "Don't have enough permission for group " + groupName);
          return;
        }

      } else {
        sender.sendMessage(ChatColor.RED + "No groups set!");
        return;
      }
    }

    if (!groups.isEmpty()) {
      user.setParents(groups, worldName);
      sender.sendMessage(ChatColor.WHITE + "User groups set!");
    } else {
      sender.sendMessage(ChatColor.RED + "No groups set!");
    }
View Full Code Here

TOP

Related Classes of ru.tehkode.permissions.PermissionUser

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.