Change NSFW command detection
This commit is contained in:
parent
5d50c66842
commit
3183794599
@ -12,6 +12,7 @@ public interface Commande {
|
||||
void executed(boolean success, MessageReceivedEvent event);
|
||||
boolean isPrivateUsable();
|
||||
boolean isAdminCmd();
|
||||
boolean isNSFW();
|
||||
|
||||
|
||||
}
|
||||
|
@ -77,4 +77,9 @@ public class Cat implements Commande {
|
||||
public boolean isAdminCmd() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isNSFW() {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
@ -44,4 +44,9 @@ public class DayTrigger implements Commande{
|
||||
public boolean isAdminCmd() {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isNSFW() {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
@ -38,4 +38,9 @@ public class Error implements Commande{
|
||||
public boolean isAdminCmd() {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isNSFW() {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
@ -68,4 +68,9 @@ public class Flush implements Commande{
|
||||
public boolean isAdminCmd() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isNSFW() {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
@ -145,11 +145,7 @@ public class Help implements Commande {
|
||||
|
||||
if(!event.isFromType(ChannelType.PRIVATE)){
|
||||
Message rest = event.getTextChannel().sendMessage(new EmbedBuilder().setTitle("Command envoyées par message privé").setColor(Color.green).build()).complete();
|
||||
List<Message> messages = new ArrayList<Message>(){{
|
||||
add(rest);
|
||||
add(event.getMessage());
|
||||
}};
|
||||
new MessageTimeOut(messages,MainBot.messageTimeOut).start();
|
||||
new MessageTimeOut(MainBot.messageTimeOut, rest, event.getMessage()).start();
|
||||
}
|
||||
|
||||
|
||||
@ -160,10 +156,10 @@ public class Help implements Commande {
|
||||
role = "Non Admin";
|
||||
|
||||
try {
|
||||
PrivateMessage.send(event.getAuthor(),EmbedMessageUtils.getHelpList(role, txt),logger);
|
||||
PrivateMessage.send(event.getAuthor(), EmbedMessageUtils.getHelpList(role, txt),logger);
|
||||
} catch (FileNotFoundException e) {
|
||||
logger.catching(e);
|
||||
PrivateMessage.send(event.getAuthor(),EmbedMessageUtils.getInternalError(), logger);
|
||||
PrivateMessage.send(event.getAuthor(), EmbedMessageUtils.getInternalError(), logger);
|
||||
|
||||
}
|
||||
|
||||
@ -187,4 +183,9 @@ public class Help implements Commande {
|
||||
public boolean isAdminCmd() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isNSFW() {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
@ -209,4 +209,9 @@ public class Move implements Commande {
|
||||
public boolean isAdminCmd() {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isNSFW() {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
@ -172,6 +172,11 @@ public class Music implements Commande {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isNSFW() {
|
||||
return false;
|
||||
}
|
||||
|
||||
public AudioM getAudioManager(){
|
||||
return audio;
|
||||
}
|
||||
|
@ -26,4 +26,9 @@ public class Ass extends NumberedCommande {
|
||||
public boolean isAdminCmd() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isNSFW() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@ -25,4 +25,9 @@ public class Boobs extends NumberedCommande {
|
||||
public boolean isAdminCmd() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isNSFW() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@ -26,8 +26,6 @@ public class Madame implements Commande{
|
||||
@Override
|
||||
public void action(String[] args, MessageReceivedEvent event) {
|
||||
this.event = event;
|
||||
|
||||
if(event.getTextChannel().isNSFW()) {
|
||||
Redirection redirect = new Redirection();
|
||||
boolean success=false;
|
||||
boolean error=false;
|
||||
@ -64,13 +62,6 @@ public class Madame implements Commande{
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
event.getTextChannel().sendMessage(event.getAuthor().getAsMention()+"\n:warning: **__Channel règlementé! Go sur over18!__**:warning: ").queue();
|
||||
|
||||
logger.warn("Erreur chanel.");
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void executed(boolean success, MessageReceivedEvent event) {
|
||||
@ -87,22 +78,10 @@ public class Madame implements Commande{
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
private boolean isAdvertisementUrl(String url){
|
||||
//Scan url
|
||||
if(url.toLowerCase().contains("club") && (url.toLowerCase().contains("rejoindre") || url.toLowerCase().contains("rejoignez"))){
|
||||
logger.debug("Advertisement detected with \"club\" and \"rejoidre\" or \"rejoignez\"");
|
||||
@Override
|
||||
public boolean isNSFW() {
|
||||
return true;
|
||||
}
|
||||
else if(url.contains("samedi") && url.contains("dimanche")){
|
||||
logger.debug("Advertisement detected with \"samedi\" and \"dimanche\"");
|
||||
return true;
|
||||
}
|
||||
else{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private boolean scanPageForTipeee(String url) throws StringIndexOutOfBoundsException, IOException{
|
||||
String content = FindContentOnWebPage.getUrlSource(url);
|
||||
|
@ -11,40 +11,6 @@ public class Pipe extends NumberedCommande {
|
||||
super(LogManager.getLogger(), "http://feelation.com/","featured-img","img");
|
||||
}
|
||||
|
||||
/*
|
||||
System.out.println("ok");
|
||||
String pipeLine=null;
|
||||
URL pipeURL = new URL(redirect.get("http://feelation.com/random"));
|
||||
URLConnection cc = pipeURL.openConnection();
|
||||
BufferedReader in = new BufferedReader(new InputStreamReader(cc.getInputStream(), "UTF-8"));
|
||||
String inputLine;
|
||||
|
||||
|
||||
while ((inputLine = in.readLine()) != null)
|
||||
{
|
||||
System.out.println(inputLine);
|
||||
if(inputLine.contains("class=\"post photo\""))
|
||||
{
|
||||
String[] splited = inputLine.split("<");
|
||||
for(String aString:splited)
|
||||
{
|
||||
if(aString.startsWith("<img src"))
|
||||
{
|
||||
pipeLine=aString;
|
||||
pipeLine=inputLine.replaceAll("<img src=\"","");
|
||||
pipeLine=pipeLine.substring(0,pipeLine.indexOf("\""));
|
||||
System.out.println(pipeLine);
|
||||
break;
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
in.close();
|
||||
event.getTextChannel().sendMessage(redirect.get("http://feelation.com/random")).queue();
|
||||
*/
|
||||
@Override
|
||||
public String toString() {
|
||||
return "Pipe";
|
||||
@ -59,4 +25,9 @@ public class Pipe extends NumberedCommande {
|
||||
public boolean isAdminCmd() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isNSFW() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@ -20,8 +20,6 @@ public class SM implements Commande {
|
||||
@Override
|
||||
public void action(String[] args, MessageReceivedEvent event) {
|
||||
Redirection redirect= new Redirection();
|
||||
if(event.getTextChannel().getName().equals("nsfw-over18"))
|
||||
{
|
||||
event.getTextChannel().sendMessage(event.getAuthor().getAsMention() + "\n:warning: SM n'est plus disponible pour le moment. Pour plus d'info: https://lc.cx/cbSw :warning: ").queue();
|
||||
// try {
|
||||
// event.getTextChannel().sendMessage(redirect.get("https://bonjourfetish.tumblr.com/random")).queue();
|
||||
@ -29,14 +27,6 @@ public class SM implements Commande {
|
||||
// logger.warn("Erreur de redirection.");
|
||||
// event.getTextChannel().sendMessage(event.getAuthor().getAsMention() + "\n:warning: **__Erreur de redirection (5 essais), Réessayez__**:warning: ").queue();
|
||||
// }
|
||||
}
|
||||
else
|
||||
{
|
||||
event.getTextChannel().sendMessage(event.getAuthor().getAsMention()+"\n:warning: **__Channel règlementé! Go sur over18!__**:warning: ").queue();
|
||||
|
||||
logger.warn("Erreur chanel.");
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -54,4 +44,9 @@ public class SM implements Commande {
|
||||
public boolean isAdminCmd() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isNSFW() {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
@ -29,11 +29,7 @@ public class Ping implements Commande {
|
||||
event.getPrivateChannel().sendMessage(":arrow_right: Pong! `" + ping+ "ms`").queue();
|
||||
else {
|
||||
Message rest = event.getTextChannel().sendMessage(event.getAuthor().getAsMention()+"\n:arrow_right: Pong! `" + ping + "ms`").complete();
|
||||
List<Message> messages = new ArrayList<Message>(){{
|
||||
add(rest);
|
||||
add(event.getMessage());
|
||||
}};
|
||||
new MessageTimeOut(messages, MainBot.messageTimeOut).start();
|
||||
new MessageTimeOut(MainBot.messageTimeOut, event.getMessage(), rest).start();
|
||||
}
|
||||
LogManager.getLogger().debug("pong");
|
||||
}
|
||||
@ -41,7 +37,6 @@ public class Ping implements Commande {
|
||||
@Override
|
||||
public void executed(boolean success, MessageReceivedEvent event)
|
||||
{
|
||||
return;
|
||||
|
||||
}
|
||||
|
||||
@ -54,4 +49,9 @@ public class Ping implements Commande {
|
||||
public boolean isAdminCmd() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isNSFW() {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
@ -92,6 +92,11 @@ public class Spam implements Commande {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isNSFW() {
|
||||
return false;
|
||||
}
|
||||
|
||||
public void pardon(MessageReceivedEvent event, String[] args){
|
||||
|
||||
Guild serveur = event.getGuild();
|
||||
|
@ -109,6 +109,11 @@ public class SpamInfo implements Commande{
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isNSFW() {
|
||||
return false;
|
||||
}
|
||||
|
||||
public String formatSecond(int second){
|
||||
long days = TimeUnit.SECONDS.toDays(second);
|
||||
second -= TimeUnit.DAYS.toSeconds(days);
|
||||
|
@ -101,6 +101,7 @@ public class MainBot {
|
||||
{
|
||||
Commande cmdObj = commandes.get(cmd.commande);
|
||||
if(!cmdObj.isAdminCmd() || cmd.event.getMember().hasPermission(Permission.ADMINISTRATOR)){
|
||||
|
||||
if(cmd.event.isFromType(ChannelType.PRIVATE) && commandes.get(cmd.commande).isPrivateUsable())
|
||||
{
|
||||
|
||||
@ -109,9 +110,16 @@ public class MainBot {
|
||||
}
|
||||
else if (!cmd.event.isFromType(ChannelType.PRIVATE))
|
||||
{
|
||||
if(!cmdObj.isNSFW() || cmd.event.getTextChannel().isNSFW()){
|
||||
commandes.get(cmd.commande).action(cmd.args, cmd.event);
|
||||
commandes.get(cmd.commande).executed(true, cmd.event);
|
||||
}
|
||||
else{
|
||||
Message msg = cmd.event.getTextChannel().sendMessage(cmd.event.getAuthor().getAsMention() + "\n:warning: **__Channel règlementé! Go sur over18!__**:warning: ").complete();
|
||||
new MessageTimeOut(messageTimeOut, msg, cmd.event.getMessage()).start();
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
cmd.event.getPrivateChannel().sendMessage(EmbedMessageUtils.getNoPrivate()).queue();
|
||||
}
|
||||
@ -121,11 +129,7 @@ public class MainBot {
|
||||
}
|
||||
else{
|
||||
Message msg = cmd.event.getTextChannel().sendMessage(EmbedMessageUtils.getUnautorized()).complete();
|
||||
List<Message> messages = new ArrayList<Message>(){{
|
||||
add(msg);
|
||||
add(cmd.event.getMessage());
|
||||
}};
|
||||
new MessageTimeOut(messages, messageTimeOut).start();
|
||||
new MessageTimeOut(messageTimeOut, msg, cmd.event.getMessage()).start();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -15,7 +15,7 @@ import java.net.URL;
|
||||
* Created by seb65 on 07/11/2016.
|
||||
*/
|
||||
public abstract class NumberedCommande implements Commande{
|
||||
Logger logger = LogManager.getLogger();
|
||||
private Logger logger = LogManager.getLogger();
|
||||
public String HELP="T'es sérieux la?";
|
||||
int minNumber = 1;
|
||||
int maxNumber = -1;
|
||||
@ -49,45 +49,35 @@ public abstract class NumberedCommande implements Commande{
|
||||
{
|
||||
if(args.length == 0)
|
||||
{
|
||||
if(event.getTextChannel().getName().equals("nsfw-over18")) {
|
||||
Redirection redirect= new Redirection();
|
||||
int randomResult = (int) (minNumber + (Math.random() * (maxNumber - minNumber)));
|
||||
String result = FindContentOnWebPage.doYourJob(baseURL + randomResult + "-2", divClass, htmlType);
|
||||
event.getTextChannel().sendMessage(event.getAuthor().getAsMention()+"\n"+result).queue();
|
||||
}
|
||||
else
|
||||
{
|
||||
event.getTextChannel().sendMessage(event.getAuthor().getAsMention()+"\n:warning: **__Channel règlementé! Go sur over18!__**:warning: ").queue();
|
||||
|
||||
logger.warn("Erreur chanel.");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if(args[0].toLowerCase().equals("update"))
|
||||
{
|
||||
logger.info("update commande from "+event.getMessage().getAuthor().getName());
|
||||
event.getTextChannel().sendMessage(event.getAuthor().getAsMention()+"\n:arrow_right: Updating...").queue();
|
||||
switch (args[0].toLowerCase()) {
|
||||
case "update":
|
||||
logger.info("update commande from " + event.getMessage().getAuthor().getName());
|
||||
event.getTextChannel().sendMessage(event.getAuthor().getAsMention() + "\n:arrow_right: Updating...").queue();
|
||||
|
||||
int newNumber = maxNumber;
|
||||
try {
|
||||
newNumber = LimitChecker.doYourJob(baseURL,maxNumber);
|
||||
newNumber = LimitChecker.doYourJob(baseURL, maxNumber);
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
if(newNumber == maxNumber)
|
||||
{
|
||||
event.getTextChannel().sendMessage(event.getAuthor().getAsMention()+"\n:arrow_right: Aucune nouvelle image n'a était trouver :cry:").queue();
|
||||
}
|
||||
else if(newNumber-maxNumber == 1) event.getTextChannel().sendMessage(event.getAuthor().getAsMention()+"\n:arrow_right: "+(newNumber-maxNumber)+" nouvelle image a été trouvé :kissing_heart:").queue();
|
||||
if (newNumber == maxNumber) {
|
||||
event.getTextChannel().sendMessage(event.getAuthor().getAsMention() + "\n:arrow_right: Aucune nouvelle image n'a était trouver :cry:").queue();
|
||||
} else if (newNumber - maxNumber == 1)
|
||||
event.getTextChannel().sendMessage(event.getAuthor().getAsMention() + "\n:arrow_right: " + (newNumber - maxNumber) + " nouvelle image a été trouvé :kissing_heart:").queue();
|
||||
else
|
||||
event.getTextChannel().sendMessage(event.getAuthor().getAsMention()+"\n:arrow_right: "+(newNumber-maxNumber)+" nouvelles images on été trouvé :kissing_heart:").queue();
|
||||
logger.info((newNumber-maxNumber)+" new image(s) found.");
|
||||
event.getTextChannel().sendMessage(event.getAuthor().getAsMention() + "\n:arrow_right: " + (newNumber - maxNumber) + " nouvelles images on été trouvé :kissing_heart:").queue();
|
||||
logger.info((newNumber - maxNumber) + " new image(s) found.");
|
||||
maxNumber = newNumber;
|
||||
}
|
||||
else if(args[0].toLowerCase().equals("get")) {
|
||||
if (args.length >= 2)
|
||||
{
|
||||
break;
|
||||
case "get":
|
||||
if (args.length >= 2) {
|
||||
|
||||
int number = -1;
|
||||
try {
|
||||
@ -109,16 +99,15 @@ public abstract class NumberedCommande implements Commande{
|
||||
logger.catching(e);
|
||||
event.getTextChannel().sendMessage(event.getAuthor().getAsMention() + "\n:warning: **__Erreur__** :warning:\n:arrow_right: Erreur interne...").queue();
|
||||
}
|
||||
}
|
||||
else{
|
||||
} else {
|
||||
event.getTextChannel().sendMessage(event.getAuthor().getAsMention() + "\n:warning: **__Erreur__** :warning:\n:arrow_right: Erreur d'argument. `//help " + this.toString().toLowerCase() + "` pour plus d'info ").queue();
|
||||
logger.warn("Bad Argument: "+event.getMessage().getContent()+" From "+event.getAuthor().getName());
|
||||
logger.warn("Bad Argument: " + event.getMessage().getContent() + " From " + event.getAuthor().getName());
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
event.getTextChannel().sendMessage(event.getAuthor().getAsMention()+"\n:warning: **__Erreur__** :warning:\n:arrow_right: Erreur d'argument. `//help "+this.toString().toLowerCase()+"` pour plus d'info ").queue();
|
||||
logger.warn("Bad Argument: "+event.getMessage().getContent()+" From "+event.getAuthor().getName());
|
||||
break;
|
||||
default:
|
||||
event.getTextChannel().sendMessage(event.getAuthor().getAsMention() + "\n:warning: **__Erreur__** :warning:\n:arrow_right: Erreur d'argument. `//help " + this.toString().toLowerCase() + "` pour plus d'info ").queue();
|
||||
logger.warn("Bad Argument: " + event.getMessage().getContent() + " From " + event.getAuthor().getName());
|
||||
break;
|
||||
}
|
||||
}
|
||||
} catch (IOException e) {
|
||||
|
@ -15,6 +15,7 @@ public class EmbedMessageUtils {
|
||||
return new EmbedBuilder().setTitle(":warning: Commande inconnue! :warning:").setDescription(":arrow_right: Utilisez `//help` pour voirs les commandes disponible.").setColor(Color.orange).setFooter("bot.seb6596.ovh", MainBot.jda.getSelfUser().getAvatarUrl()).build();
|
||||
|
||||
}
|
||||
|
||||
public static EmbedBuilder getError(String message) {
|
||||
EmbedBuilder temp = new EmbedBuilder().setTitle(":warning: Error! :warning:").setColor(Color.red).setDescription(message);
|
||||
return temp;
|
||||
@ -45,7 +46,6 @@ public class EmbedMessageUtils {
|
||||
return new EmbedBuilder().setTitle(":mute: Spam Hunter :mute:").setDescription(autor.getAsMention() + " est de retour, fais gaffe!\nJe te surveille!").setImage("https://media.giphy.com/media/3o7TKwBctlv08kY08M/giphy.gif").setFooter("Spam info disponible via '//spaminfo' en privé", null).setColor(Color.orange).build();
|
||||
}
|
||||
|
||||
|
||||
public static MessageEmbed getHelp(String command) throws FileNotFoundException {
|
||||
String name = command.substring(0, 1).toUpperCase() + command.substring(1).toLowerCase();
|
||||
String message = new ResourceLoader().getFile("Help/"+name+"/fr/main.md");
|
||||
@ -79,7 +79,6 @@ public class EmbedMessageUtils {
|
||||
return new EmbedBuilder().setTitle(":warning: Flush Error :warning: ").setDescription(message).setColor(Color.red).setFooter("'//help flush' pour plus d'info ", MainBot.jda.getSelfUser().getAvatarUrl()).build();
|
||||
}
|
||||
|
||||
|
||||
public static MessageEmbed getRegister(String message) {
|
||||
return new EmbedBuilder().setTitle(":pencil: Web Registration :pencil:").setDescription(message).setColor(Color.green).setFooter("bot.seb6596.ovh", MainBot.jda.getSelfUser().getAvatarUrl()).build();
|
||||
}
|
||||
@ -105,4 +104,5 @@ public class EmbedMessageUtils {
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
@ -5,6 +5,8 @@ import net.dv8tion.jda.core.exceptions.ErrorResponseException;
|
||||
import org.apache.logging.log4j.LogManager;
|
||||
import org.apache.logging.log4j.Logger;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
public class MessageTimeOut extends Thread{
|
||||
@ -16,6 +18,11 @@ public class MessageTimeOut extends Thread{
|
||||
this.second = second;
|
||||
}
|
||||
|
||||
public MessageTimeOut(int second, Message... messages) {
|
||||
this.messages = Arrays.asList(messages);
|
||||
this.second = second;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
logger.debug("Timer for message deletion stated...");
|
||||
|
Loading…
Reference in New Issue
Block a user