Archived
0

Made links clickable, changed format, removed errors. Yay \o/

This commit is contained in:
Pepich
2018-01-14 19:43:49 +01:00
parent 94b1c3fa5b
commit cbaf35c35b

View File

@@ -3,10 +3,11 @@ package com.redstoner.modules.check;
import java.io.IOException; import java.io.IOException;
import java.io.InputStreamReader; import java.io.InputStreamReader;
import java.io.Serializable; import java.io.Serializable;
import java.net.MalformedURLException;
import java.net.URL; import java.net.URL;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Scanner; import java.util.Scanner;
@@ -17,7 +18,6 @@ import org.bukkit.event.Listener;
import org.json.simple.JSONArray; import org.json.simple.JSONArray;
import org.json.simple.JSONObject; import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser; import org.json.simple.parser.JSONParser;
import org.json.simple.parser.ParseException;
import com.nemez.cmdmgr.Command; import com.nemez.cmdmgr.Command;
import com.nemez.cmdmgr.Command.AsyncType; import com.nemez.cmdmgr.Command.AsyncType;
@@ -33,7 +33,9 @@ import com.redstoner.misc.mysql.elements.MysqlDatabase;
import com.redstoner.misc.mysql.elements.MysqlTable; import com.redstoner.misc.mysql.elements.MysqlTable;
import com.redstoner.modules.Module; import com.redstoner.modules.Module;
@Version(major = 4, minor = 0, revision = 0, compatible = 4) import net.nemez.chatapi.click.Message;
@Version(major = 4, minor = 0, revision = 1, compatible = 4)
public class Check implements Module, Listener public class Check implements Module, Listener
{ {
MysqlTable table; MysqlTable table;
@@ -95,9 +97,7 @@ public class Check implements Module, Listener
return data; return data;
} }
catch (IOException e) catch (IOException e)
{ {}
e.printStackTrace();
}
return null; return null;
} }
@@ -117,7 +117,6 @@ public class Check implements Module, Listener
} }
catch (Exception e) catch (Exception e)
{ {
e.printStackTrace();
return null; return null;
} }
} }
@@ -128,9 +127,7 @@ public class Check implements Module, Listener
return (JSONObject) new JSONParser().parse(rawJson); return (JSONObject) new JSONParser().parse(rawJson);
} }
catch (Exception e) catch (Exception e)
{ {}
e.printStackTrace();
}
return null; return null;
} }
@@ -188,32 +185,29 @@ public class Check implements Module, Listener
try try
{ {
String rawJson = read(new URL("https://api.mojang.com/user/profiles/" + uuid + "/names")); String rawJson = read(new URL("https://api.mojang.com/user/profiles/" + uuid + "/names"));
System.out.println("name for " + uuid + " : " + rawJson);
JSONArray names = (JSONArray) new JSONParser().parse(rawJson); JSONArray names = (JSONArray) new JSONParser().parse(rawJson);
for (Object obj : names) for (Object obj : names)
{ {
nameString += ((JSONObject) obj).get("name") + ", "; nameString += "&e" + ((JSONObject) obj).get("name") + "&7, ";
} }
nameString = nameString.substring(0, nameString.length() - 2); nameString = nameString.substring(0, nameString.length() - 2);
return nameString; return nameString;
} }
catch (MalformedURLException | ParseException e) catch (Exception e)
{ {}
e.printStackTrace();
}
return null; return null;
} }
public void sendData(CommandSender sender, OfflinePlayer player) public void sendData(CommandSender sender, OfflinePlayer player)
{ {
JSONObject ipInfo = getIpInfo(player);
try try
{ {
JSONObject ipInfo = getIpInfo(player);
// data // data
String firstJoin = getFirstJoin(player); String firstJoin = getFirstJoin(player);
String lastSeen = getLastSeen(player); String lastSeen = getLastSeen(player);
firstJoin = (firstJoin.equals("1970-01-01 01:00")) ? "&eNever" : "&7(yyyy-MM-dd hh:mm:ss) &e" + firstJoin; firstJoin = (firstJoin.equals("1970-01-01 01:00")) ? "&eNever" : "&7(yyyy-MM-dd hh:mm) &e" + firstJoin;
lastSeen = (lastSeen.equals("1970-1-1 01:00")) ? "&eNever" : "&7(yyyy-MM-dd hh:mm:ss) &e" + lastSeen; lastSeen = (lastSeen.equals("1970-1-1 01:00")) ? "&eNever" : "&7(yyyy-MM-dd hh:mm) &e" + lastSeen;
Object[] websiteData = getWebsiteData(player); Object[] websiteData = getWebsiteData(player);
String websiteUrl = (websiteData[0] == null) ? "None" : (String) websiteData[0]; String websiteUrl = (websiteData[0] == null) ? "None" : (String) websiteData[0];
String email = (websiteData[0] == null) ? "Unknown" : (String) websiteData[1]; String email = (websiteData[0] == null) ? "Unknown" : (String) websiteData[1];
@@ -223,26 +217,30 @@ public class Check implements Module, Listener
if (namesUsed == null) if (namesUsed == null)
namesUsed = "None"; namesUsed = "None";
// messages // messages
// @noformat List<Message> messages = new ArrayList<>();
String[] message = new String[] { messages.add(new Message(sender, null).appendText(getLogger().getHeader()));
"&7Data provided by Redstoner:", messages.add(new Message(sender, null).appendText("&7Data provided by redstoner:"));
"&6> UUID: &e" + player.getUniqueId(), messages.add(new Message(sender, null).appendSuggestHover("&6> UUID: &e" + player.getUniqueId().toString(),
"&6> First joined: " + firstJoin, player.getUniqueId().toString(), "Click to copy into chatbox!"));
"&6> Last seen: " + lastSeen, messages.add(new Message(sender, null).appendText("&6> First joined: &e" + firstJoin));
"&6> Website account: &e" + websiteUrl, messages.add(new Message(sender, null).appendText("&6> Last seen: &e" + lastSeen));
"&6> email: &e" + (emailNotConfirmed ? "&6> &4Email NOT Confirmed!" : email), messages.add(
"&7Data provided by ipinfo:", new Message(sender, null).appendText("&6> Website account: &e").appendLink(websiteUrl, websiteUrl));
"&6> Country: &e" + country, messages.add(new Message(sender, null).appendText("&6> Email: &e")
"&7Data provided by Mojang:", .appendLink((emailNotConfirmed ? "&6> &4Email NOT Confirmed!" : "") + email, "mailto:" + email));
"&6> All ingame names used so far: &e" + namesUsed messages.add(new Message(sender, null).appendText("&7Data provided by ipinfo:"));
}; messages.add(new Message(sender, null).appendText("&6> Country: &e" + country));
//@format messages.add(new Message(sender, null).appendText("&6> "));
getLogger().message(sender, message); messages.add(new Message(sender, null).appendText("&6> "));
messages.add(new Message(sender, null).appendText("&7Data provided by mojang:"));
messages.add(new Message(sender, null).appendText("&6> All ingame names used so far: &e" + namesUsed));
for (Message m : messages)
m.send();
} }
catch (Exception e) catch (Exception e)
{ {
e.printStackTrace();
getLogger().message(sender, true, "Sorry, something went wrong while fetching data"); getLogger().message(sender, true, "Sorry, something went wrong while fetching data");
e.printStackTrace();
} }
} }
@@ -251,7 +249,7 @@ public class Check implements Module, Listener
public String getCommandString() public String getCommandString()
{ {
return "command check {\n" + return "command check {\n" +
" perm getLogger().check;\n" + " perm utils.check;\n" +
" \n" + " \n" +
" [string:player] {\n" + " [string:player] {\n" +
" run checkCommand player;\n" + " run checkCommand player;\n" +