Skip to content

Commit

Permalink
Merge pull request #56 from Xyntexx/feature/slashcommands
Browse files Browse the repository at this point in the history
Feature/slashcommands
  • Loading branch information
Shimell committed Jul 27, 2021
2 parents 9908407 + 4e843db commit a425172
Show file tree
Hide file tree
Showing 16 changed files with 1,844 additions and 1,539 deletions.
4 changes: 2 additions & 2 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

<groupId>uk.co.angrybee.joe</groupId>
<artifactId>discord-whitelister</artifactId>
<version>1.4.8</version>
<version>1.4.9</version>

<name>discord-whitelister</name>
<url>https://github.com/JoeShimell/DiscordWhitelisterSpigot</url>
Expand Down Expand Up @@ -49,7 +49,7 @@
<dependency>
<groupId>org.spigotmc</groupId>
<artifactId>spigot-api</artifactId>
<version>1.17-R0.1-SNAPSHOT</version>
<version>1.17.1-R0.1-SNAPSHOT</version>
<scope>provided</scope>
</dependency>

Expand Down
106 changes: 106 additions & 0 deletions src/main/java/uk/co/angrybee/joe/AuthorPermissions.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package uk.co.angrybee.joe;

import net.dv8tion.jda.api.entities.Role;
import net.dv8tion.jda.api.events.interaction.SlashCommandEvent;
import net.dv8tion.jda.api.events.message.MessageReceivedEvent;

import java.util.Arrays;
Expand All @@ -13,6 +14,111 @@ public class AuthorPermissions
private boolean userIsBanned = false;
private boolean userCanUseClear = false;

public AuthorPermissions(SlashCommandEvent event) {
for (Role role : event.getMember().getRoles())
{
if(!DiscordWhitelister.useIdForRoles)
{
if (Arrays.stream(DiscordClient.allowedToAddRemoveRoles).parallel().anyMatch(role.getName()::equalsIgnoreCase))
{
userCanAddRemove = true;
break;
}
}
else
{
if (Arrays.stream(DiscordClient.allowedToAddRemoveRoles).parallel().anyMatch(role.getId()::equalsIgnoreCase))
{
userCanAddRemove = true;
break;
}
}
}

for (Role role : event.getGuild().getMember(event.getUser()).getRoles())
{
if (!DiscordWhitelister.useIdForRoles)
{
if (Arrays.stream(DiscordClient.allowedToAddRoles).parallel().anyMatch(role.getName()::equalsIgnoreCase))
{
userCanAdd = true;
break;
}
}
else
{
if (Arrays.stream(DiscordClient.allowedToAddRoles).parallel().anyMatch(role.getId()::equalsIgnoreCase))
{
userCanAdd = true;
break;
}
}
}

for (Role role : event.getGuild().getMember(event.getUser()).getRoles())
{
if(!DiscordWhitelister.useIdForRoles)
{
if (Arrays.stream(DiscordClient.allowedToAddLimitedRoles).parallel().anyMatch(role.getName()::equalsIgnoreCase))
{
userHasLimitedAdd = true;
break;
}
}
else
{
if (Arrays.stream(DiscordClient.allowedToAddLimitedRoles).parallel().anyMatch(role.getId()::equalsIgnoreCase))
{
userHasLimitedAdd = true;
break;
}
}
}

if(DiscordWhitelister.useOnBanEvents)
{
for(Role role : event.getGuild().getMember(event.getUser()).getRoles())
{
if(!DiscordWhitelister.useIdForRoles)
{
if (Arrays.stream(DiscordWhitelister.bannedRoles).parallel().anyMatch(role.getName()::equalsIgnoreCase))
{
userIsBanned = true;
break;
}
}
else
{
if (Arrays.stream(DiscordWhitelister.bannedRoles).parallel().anyMatch(role.getId()::equalsIgnoreCase))
{
userIsBanned = true;
break;
}
}
}
}

for(Role role : event.getGuild().getMember(event.getUser()).getRoles())
{
if(!DiscordWhitelister.useIdForRoles)
{
if(Arrays.stream(DiscordClient.allowedToClearNamesRoles).parallel().anyMatch(role.getName()::equalsIgnoreCase))
{
userCanUseClear = true;
break;
}
}
else
{
if(Arrays.stream(DiscordClient.allowedToClearNamesRoles).parallel().anyMatch(role.getId()::equalsIgnoreCase))
{
userCanUseClear = true;
break;
}
}
}
}

public boolean isUserCanAddRemove() {
return userCanAddRemove;
}
Expand Down
Loading

0 comments on commit a425172

Please sign in to comment.