Search in sources :

Example 6 with Member

use of net.dv8tion.jda.core.entities.Member in project Rubicon by Rubicon-Bot.

the class VerificationKickHandler method loadVerifyKicks.

public static void loadVerifyKicks() {
    try {
        PreparedStatement selectStatement = MySQL.getConnection().prepareStatement("SELECT * FROM `verifykicks` ");
        ResultSet channelResult = selectStatement.executeQuery();
        while (channelResult.next()) {
            Guild guild = RubiconBot.getJDA().getGuildById(channelResult.getString("guildid"));
            Member member = guild.getMember(RubiconBot.getJDA().getUserById(channelResult.getString("userid")));
            Date date = new Date(Long.parseLong(channelResult.getString("kicktime")));
            String text = channelResult.getString("kickText");
            long messageId = Long.parseLong(channelResult.getString("message"));
            if (!member.getUser().isBot())
                new VerifyKick(guild, member, date, text, messageId, false, false);
        }
    } catch (SQLException | NullPointerException e) {
        Logger.error("Could not load verifykicks.");
        Logger.error(e);
    }
}
Also used : SQLException(java.sql.SQLException) ResultSet(java.sql.ResultSet) PreparedStatement(java.sql.PreparedStatement) Guild(net.dv8tion.jda.core.entities.Guild) Member(net.dv8tion.jda.core.entities.Member) Date(java.util.Date)

Example 7 with Member

use of net.dv8tion.jda.core.entities.Member in project Rubicon by Rubicon-Bot.

the class VerificationUserHandler method loadVerifyUser.

public static void loadVerifyUser() {
    try {
        PreparedStatement selectStatement = MySQL.getConnection().prepareStatement("SELECT * FROM `verifyusers` ");
        ResultSet channelResult = selectStatement.executeQuery();
        while (channelResult.next()) {
            Guild guild = RubiconBot.getJDA().getGuildById(channelResult.getString("guildid"));
            Member member = guild.getMemberById(channelResult.getLong("userid"));
            Message message = guild.getTextChannelById(RubiconBot.getMySQL().getVerificationValue(guild, "channelid")).getMessageById(channelResult.getString("messageid")).complete();
            new VerifyUser(member, message);
        }
    } catch (SQLException e) {
        Logger.error("Could not load verifykicks!");
        Logger.error(e);
    }
}
Also used : Message(net.dv8tion.jda.core.entities.Message) SQLException(java.sql.SQLException) ResultSet(java.sql.ResultSet) PreparedStatement(java.sql.PreparedStatement) Guild(net.dv8tion.jda.core.entities.Guild) Member(net.dv8tion.jda.core.entities.Member)

Example 8 with Member

use of net.dv8tion.jda.core.entities.Member in project Rubicon by Rubicon-Bot.

the class CommandBan method execute.

@Override
protected Message execute(CommandManager.ParsedCommandInvocation parsedCommandInvocation, UserPermissions userPermissions) {
    Message msg = parsedCommandInvocation.getMessage();
    if (msg.getMentionedUsers().isEmpty()) {
        return new MessageBuilder().setEmbed(EmbedUtil.info("Usage", "ban <@User>").build()).build();
    }
    Member target = msg.getGuild().getMember(msg.getMentionedUsers().get(0));
    if (!msg.getGuild().getSelfMember().canInteract(target)) {
        return new MessageBuilder().setEmbed(EmbedUtil.error("No permissions", "Sorry I can't ban this User.").build()).build();
    } else {
        if (!target.getUser().isBot()) {
            PrivateChannel channel = target.getUser().openPrivateChannel().complete();
            channel.sendMessage(EmbedUtil.success("Banned", "You got banned").build()).queue();
        }
        msg.getGuild().getController().ban(target, 7).queue();
        return new MessageBuilder().setEmbed(EmbedUtil.success("Banned", "Successfully banned " + target.getAsMention()).build()).build();
    }
}
Also used : PrivateChannel(net.dv8tion.jda.core.entities.PrivateChannel) Message(net.dv8tion.jda.core.entities.Message) MessageBuilder(net.dv8tion.jda.core.MessageBuilder) Member(net.dv8tion.jda.core.entities.Member)

Example 9 with Member

use of net.dv8tion.jda.core.entities.Member in project Rubicon by Rubicon-Bot.

the class CommandKick method execute.

@Override
protected Message execute(CommandManager.ParsedCommandInvocation parsedCommandInvocation, UserPermissions userPermissions) {
    Message msg = parsedCommandInvocation.getMessage();
    if (msg.getMentionedUsers().isEmpty()) {
        return createHelpMessage();
    }
    Member target = msg.getGuild().getMember(msg.getMentionedUsers().get(0));
    if (!msg.getGuild().getSelfMember().canInteract(target)) {
        return new MessageBuilder().setEmbed(EmbedUtil.error("No permissions", "I can't kick this user because his role is higher then my role.").build()).build();
    } else {
        if (!target.getUser().isBot()) {
            PrivateChannel channel = target.getUser().openPrivateChannel().complete();
            channel.sendMessage(EmbedUtil.success("Kicked", "You got kicked").build()).queue();
        }
        msg.getGuild().getController().kick(target).queue();
        return new MessageBuilder().setEmbed(EmbedUtil.success("Kicked", "Succesfully kicked " + target.getAsMention()).build()).build();
    }
}
Also used : PrivateChannel(net.dv8tion.jda.core.entities.PrivateChannel) Message(net.dv8tion.jda.core.entities.Message) MessageBuilder(net.dv8tion.jda.core.MessageBuilder) Member(net.dv8tion.jda.core.entities.Member)

Example 10 with Member

use of net.dv8tion.jda.core.entities.Member in project Rubicon by Rubicon-Bot.

the class CommandNick method execute.

@Override
protected Message execute(CommandManager.ParsedCommandInvocation parsedCommandInvocation, UserPermissions userPermissions) {
    Message message = parsedCommandInvocation.getMessage();
    String[] args = parsedCommandInvocation.getArgs();
    if (args.length < 1) {
        return createHelpMessage();
    }
    Member member;
    if (!message.getMentionedUsers().isEmpty())
        member = message.getGuild().getMember(message.getMentionedUsers().get(0));
    else
        member = message.getMember();
    String oldName = member.getEffectiveName();
    String nickname = String.join(" ", new ArrayList<>(Arrays.asList(args).subList(1, args.length))).replace(member.getEffectiveName(), "").replace("@", "");
    if (!message.getGuild().getSelfMember().canInteract(member) || !message.getGuild().getSelfMember().hasPermission(Permission.NICKNAME_MANAGE))
        return new MessageBuilder().setEmbed(EmbedUtil.error("No permission", "Sorry but Rubicon has no permission to change " + member.getAsMention() + "'s nickname").build()).build();
    if (nickname.length() > 32) {
        return new MessageBuilder().setEmbed(EmbedUtil.error("Nickname to long", "Your nickname can not be longer than 32 chars").build()).build();
    }
    if (nickname.equals("reset")) {
        message.getGuild().getController().setNickname(member, member.getUser().getName()).queue();
        return new MessageBuilder().setEmbed(EmbedUtil.success("Reset Nickname", "Succesfully reset " + member.getAsMention() + "'s nickname").build()).build();
    } else {
        message.getGuild().getController().setNickname(member, nickname).queue();
        return new MessageBuilder().setEmbed(EmbedUtil.success("Changed nickname", "Successfully changed nickname of " + oldName + " to `" + nickname + "`").build()).build();
    }
}
Also used : Message(net.dv8tion.jda.core.entities.Message) MessageBuilder(net.dv8tion.jda.core.MessageBuilder) Member(net.dv8tion.jda.core.entities.Member)

Aggregations

Member (net.dv8tion.jda.core.entities.Member)69 Message (net.dv8tion.jda.core.entities.Message)23 Guild (net.dv8tion.jda.core.entities.Guild)22 EmbedBuilder (net.dv8tion.jda.core.EmbedBuilder)19 User (net.dv8tion.jda.core.entities.User)19 TextChannel (net.dv8tion.jda.core.entities.TextChannel)18 MessageBuilder (net.dv8tion.jda.core.MessageBuilder)11 ArrayList (java.util.ArrayList)10 List (java.util.List)10 GuildWrapper (stream.flarebot.flarebot.objects.GuildWrapper)10 Permission (net.dv8tion.jda.core.Permission)9 MessageUtils (stream.flarebot.flarebot.util.MessageUtils)9 Role (net.dv8tion.jda.core.entities.Role)8 CommandType (stream.flarebot.flarebot.commands.CommandType)8 Collectors (java.util.stream.Collectors)7 FlareBot (stream.flarebot.flarebot.FlareBot)6 Permission (stream.flarebot.flarebot.permissions.Permission)6 Track (com.arsenarsen.lavaplayerbridge.player.Track)5 GuildPlayer (fredboat.audio.player.GuildPlayer)5 AudioTrackContext (fredboat.audio.queue.AudioTrackContext)5