use of me.totalfreedom.totalfreedommod.rank.Rank in project TotalFreedomMod by TotalFreedom.
the class FreedomCommandExecutor method hasPermission.
@Override
public boolean hasPermission(CommandSender sender, boolean sendMsg) {
final FreedomCommand command = getCommand();
if (command == null) {
return true;
}
final CommandPermissions perms = command.getPerms();
if (perms == null) {
return true;
}
// Block host console
if (FUtil.isFromHostConsole(sender.getName()) && perms.blockHostConsole()) {
if (sendMsg) {
sender.sendMessage(handler.getPermissionMessage());
}
return false;
}
final Player player = sender instanceof Player ? (Player) sender : null;
// Only console
if (perms.source() == SourceType.ONLY_CONSOLE && player != null) {
if (sendMsg) {
sender.sendMessage(handler.getOnlyConsoleMessage());
}
return false;
}
// Only in game
if (perms.source() == SourceType.ONLY_IN_GAME && player == null) {
if (sendMsg) {
sender.sendMessage(handler.getOnlyPlayerMessage());
}
return false;
}
// Player permissions
if (player != null) {
Rank rank = plugin.rm.getRank(player);
boolean result = rank.isAtLeast(perms.level());
if (!result && sendMsg) {
sender.sendMessage(handler.getPermissionMessage());
}
return result;
}
// Console permissions
Rank rank = plugin.rm.getRank(sender);
boolean result = rank.isAtLeast(perms.level());
if (!result && sendMsg) {
sender.sendMessage(handler.getPermissionMessage());
}
return result;
}
use of me.totalfreedom.totalfreedommod.rank.Rank in project TotalFreedomMod by TotalFreedom.
the class Command_rank method message.
public String message(Player player) {
Displayable display = plugin.rm.getDisplay(player);
Rank rank = plugin.rm.getRank(player);
StringBuilder sb = new StringBuilder();
sb.append(ChatColor.AQUA).append(player.getName()).append(" is ").append(display.getColoredLoginMessage());
if (rank != display) {
sb.append(ChatColor.AQUA).append(" (").append(rank.getColoredName()).append(ChatColor.AQUA).append(')');
}
return sb.toString();
}
use of me.totalfreedom.totalfreedommod.rank.Rank in project TotalFreedomMod by TotalFreedom.
the class ConfigConverter method convertSuperadmins.
private void convertSuperadmins(File oldFile) {
if (!oldFile.exists() || !oldFile.isFile()) {
logger.warning("No old superadmin list found!");
return;
}
// Convert old admin list
YamlConfig oldYaml = new YamlConfig(plugin, oldFile, false);
oldYaml.load();
ConfigurationSection admins = oldYaml.getConfigurationSection("admins");
if (admins == null) {
logger.warning("No admin section in superadmin list!");
return;
}
List<Admin> conversions = Lists.newArrayList();
for (String uuid : admins.getKeys(false)) {
ConfigurationSection asec = admins.getConfigurationSection(uuid);
if (asec == null) {
logger.warning("Invalid superadmin format for admin: " + uuid);
continue;
}
String username = asec.getString("last_login_name");
Rank rank;
if (asec.getBoolean("is_senior_admin")) {
rank = Rank.SENIOR_ADMIN;
} else if (asec.getBoolean("is_telnet_admin")) {
rank = Rank.TELNET_ADMIN;
} else {
rank = Rank.SUPER_ADMIN;
}
List<String> ips = asec.getStringList("ips");
String loginMessage = asec.getString("custom_login_message");
boolean active = asec.getBoolean("is_activated");
Admin admin = new Admin(username);
admin.setName(username);
admin.setRank(rank);
admin.addIps(ips);
admin.setLoginMessage(loginMessage);
admin.setActive(active);
admin.setLastLogin(new Date());
conversions.add(admin);
}
YamlConfig newYaml = new YamlConfig(plugin, AdminList.CONFIG_FILENAME);
for (Admin admin : conversions) {
admin.saveTo(newYaml.createSection(admin.getName().toLowerCase()));
}
newYaml.save();
logger.info("Converted " + conversions.size() + " admins");
}
Aggregations