Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package fr.zencraft.zenapi.Utils;
- import fr.zencraft.zenapi.Listeners.staffListener;
- import fr.zencraft.zenapi.Main;
- import net.md_5.bungee.api.chat.ClickEvent;
- import net.md_5.bungee.api.chat.ComponentBuilder;
- import net.md_5.bungee.api.chat.HoverEvent;
- import net.md_5.bungee.api.chat.TextComponent;
- import org.bukkit.Bukkit;
- import org.bukkit.Material;
- import org.bukkit.entity.Player;
- import org.bukkit.inventory.ItemStack;
- import org.bukkit.potion.PotionEffect;
- import org.bukkit.potion.PotionEffectType;
- import java.sql.*;
- import java.text.DateFormat;
- import java.text.ParseException;
- import java.text.SimpleDateFormat;
- import java.util.Date;
- public class Sql {
- private Main main;
- public Sql(Main main) {
- this.main = main;
- }
- private Connection connection;
- private String urlbase, host, database, user, password;
- public Sql(String urlbase, String host, String database, String user, String password) {
- this.urlbase = urlbase;
- this.host = host;
- this.database = database;
- this.user = user;
- this.password = password;
- }
- @SuppressWarnings("static-access")
- public void connection() {
- if (!isconnected()) {
- try {
- connection = DriverManager.getConnection(urlbase + host + "/" + database, user, password);
- main.logSend("§6ZenAPI: §aConnexion à la base de données effectué avec succès !");
- } catch (SQLException e) {
- e.printStackTrace();
- main.logSend("§6ZenAPI: §cErreur de connexion à la base de données !");
- }
- createTable();
- }
- }
- @SuppressWarnings("static-access")
- public void disconnect() {
- if (isconnected()) {
- try {
- connection.close();
- main.logSend("§6ZenAPI: §aDéconnecté de la base de données avec succès !");
- } catch (SQLException e) {
- e.printStackTrace();
- main.logSend("§6ZenAPI: §cErreur de déconnexion à la base de données !");
- }
- }
- }
- public boolean isconnected() {
- return connection != null;
- }
- public void createTable() {
- try {
- PreparedStatement q = connection.prepareStatement(
- "CREATE TABLE IF NOT EXISTS players ("
- + "id INT(11) NOT NULL AUTO_INCREMENT, "
- + "name VARCHAR(255) NOT NULL, "
- + "IP VARCHAR(255) NOT NULL,"
- + "nick VARCHAR(255),"
- + "argent DOUBLE(64,2) NOT NULL,"
- + "flytime INT(11) NOT NULL,"
- + "points_de_vote INT(11) NOT NULL,"
- + "homes LONGTEXT,"
- + "notes LONGTEXT,"
- + "last_death TEXT,"
- + "last_connexion TEXT,"
- + "last_position TEXT,"
- + "freeze BOOLEAN,"
- + "freezed_by VARCHAR(255),"
- + "freeze_item_head TEXT,"
- + "last_inventory LONGTEXT,"
- + "reports LONGTEXT,"
- + "date_last_reports TEXT,"
- + "timeplayed TEXT,"
- + "date_created TIMESTAMP,"
- + "mention TEXT,"
- + "msg_death TEXT,"
- + "PRIMARY KEY (id))");
- q.execute();
- q.close();
- } catch (SQLException e) {
- e.printStackTrace();
- }
- }
- public void createplayersqlaccount(String p) {
- if (!playerhassqlaccount(p)) {
- try {
- PreparedStatement q = connection.prepareStatement("INSERT INTO players(name,IP,argent,flytime,points_de_vote,date_created) VALUES (?,?,?,?,?,now())");
- q.setString(1, p);
- Player pl = Bukkit.getPlayer(p);
- q.setString(2, pl.getAddress().getAddress().toString());
- q.setDouble(3, 100.00);
- q.setInt(4, 0);
- q.setInt(5, 0);
- q.execute();
- q.close();
- } catch (SQLException e) {
- e.printStackTrace();
- }
- }
- }
- public boolean playerhassqlaccount(String p) {
- try {
- PreparedStatement q = connection.prepareStatement("SELECT name FROM players WHERE name = ?");
- q.setString(1, p);
- ResultSet res = q.executeQuery();
- boolean hasaccount = res.next();
- q.close();
- return hasaccount;
- } catch (SQLException e) {
- e.printStackTrace();
- }
- return false;
- }
- public String getplayername(String p) {
- if (!playerhassqlaccount(p)) {
- createplayersqlaccount(p);
- }
- try {
- PreparedStatement q = connection.prepareStatement("SELECT name FROM players WHERE name = ?");
- q.setString(1, p);
- String name = "";
- ResultSet res = q.executeQuery();
- while (res.next()) {
- name = res.getString("name");
- }
- q.close();
- return name;
- } catch (SQLException e) {
- e.printStackTrace();
- }
- return null;
- }
- public String getplayerip(String p) {
- if (!playerhassqlaccount(p)) {
- createplayersqlaccount(p);
- }
- try {
- PreparedStatement q = connection.prepareStatement("SELECT IP FROM players WHERE name = ?");
- q.setString(1, p);
- String ip = "";
- ResultSet res = q.executeQuery();
- while (res.next()) {
- ip = res.getString("IP");
- }
- q.close();
- return ip;
- } catch (SQLException e) {
- e.printStackTrace();
- }
- return "";
- }
- public String getplayernick(String p) {
- if (!playerhassqlaccount(p)) {
- createplayersqlaccount(p);
- }
- try {
- PreparedStatement q = connection.prepareStatement("SELECT nick FROM players WHERE name = ?");
- q.setString(1, p);
- String ip = "";
- ResultSet res = q.executeQuery();
- while (res.next()) {
- ip = res.getString("nick");
- if((ip == null) || (ip == "")){
- ip = "Aucun";
- }
- }
- q.close();
- return ip;
- } catch (SQLException e) {
- e.printStackTrace();
- }
- return "";
- }
- public Integer getplayerflytime(String p) {
- if (!playerhassqlaccount(p)) {
- createplayersqlaccount(p);
- }
- try {
- PreparedStatement q = connection.prepareStatement("SELECT flytime FROM players WHERE name = ?");
- q.setString(1, p);
- Integer flytime = 0;
- ResultSet res = q.executeQuery();
- while (res.next()) {
- flytime = res.getInt("flytime");
- }
- q.close();
- return flytime;
- } catch (SQLException e) {
- e.printStackTrace();
- }
- return 0;
- }
- public Integer getplayervotepoint(String p) {
- if (!playerhassqlaccount(p)) {
- createplayersqlaccount(p);
- }
- try {
- PreparedStatement q = connection.prepareStatement("SELECT points_de_vote FROM players WHERE name = ?");
- q.setString(1, p);
- Integer points_de_vote = 0;
- ResultSet res = q.executeQuery();
- while (res.next()) {
- points_de_vote = res.getInt("points_de_vote");
- }
- q.close();
- return points_de_vote;
- } catch (SQLException e) {
- e.printStackTrace();
- }
- return 0;
- }
- //Argent
- public double getplayermoney(String p) {
- if (!playerhassqlaccount(p)) {
- createplayersqlaccount(p);
- }
- try {
- PreparedStatement q = connection.prepareStatement("SELECT argent FROM players WHERE name = ?");
- q.setString(1, p);
- double money = 0.00;
- ResultSet res = q.executeQuery();
- while (res.next()) {
- money = res.getDouble("argent");
- }
- q.close();
- return money;
- } catch (SQLException e) {
- e.printStackTrace();
- }
- return 0.00;
- }
- public boolean playerhassqlmoney(String p, double montant) {
- if (!playerhassqlaccount(p)) {
- createplayersqlaccount(p);
- }
- try {
- PreparedStatement q = connection.prepareStatement("SELECT argent FROM players WHERE name = ?");
- q.setString(1, p);
- double money = 0.00;
- ResultSet res = q.executeQuery();
- while (res.next()) {
- money = res.getDouble("argent");
- }
- q.close();
- if (money >= montant) {
- return true;
- }
- } catch (SQLException e) {
- e.printStackTrace();
- }
- return false;
- }
- public void addmoney(String p, double amount) {
- Double money = getplayermoney(p);
- Double nvmontant = money + amount;
- try {
- PreparedStatement q = connection.prepareStatement("UPDATE players SET argent = ? WHERE name = ?");
- q.setDouble(1, nvmontant);
- q.setString(2, p);
- q.executeUpdate();
- q.close();
- } catch (SQLException e) {
- e.printStackTrace();
- }
- }
- public void setmoney(String p, double amount) {
- try {
- PreparedStatement q = connection.prepareStatement("UPDATE players SET argent = ? WHERE name = ?");
- q.setDouble(1, amount);
- q.setString(2, p);
- q.executeUpdate();
- q.close();
- } catch (SQLException e) {
- e.printStackTrace();
- }
- }
- public void removemoney(String p, double amount) {
- Double money = getplayermoney(p);
- Double nvmontant = money - amount;
- if (nvmontant <= 0) {
- return;
- }
- try {
- PreparedStatement q = connection.prepareStatement("UPDATE players SET argent = ? WHERE name = ?");
- q.setDouble(1, nvmontant);
- q.setString(2, p);
- q.executeUpdate();
- q.close();
- } catch (SQLException e) {
- e.printStackTrace();
- }
- }
- public void getclassement(Player p, int nbr) {
- try {
- PreparedStatement q = connection.prepareStatement("SELECT * FROM players WHERE argent ORDER BY argent DESC");
- ResultSet resultat = q.executeQuery();
- p.sendMessage("§9§m\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0");
- p.sendMessage("§aClassement des fortunes sur le serveur :");
- p.sendMessage("§9§m\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0");
- for (int i = 1; i <= nbr; i++) {
- if (resultat.next()) {
- String pseudo = resultat.getString("name");
- String argent = resultat.getString("argent");
- p.sendMessage("§a[" + String.valueOf(i) + "] §6" + pseudo + "§a avec§6 " + String.valueOf(argent) + " $");
- }
- }
- q.close();
- } catch (SQLException e) {
- e.printStackTrace();
- }
- }
- //Fin eco
- public void searchIP(Player p, String ip) {
- try {
- PreparedStatement q = connection.prepareStatement("SELECT * FROM players TRY where IP = ?");
- int reponse = 0;
- q.setString(1,"/"+ip);
- ResultSet resultat = q.executeQuery();
- p.sendMessage("§7§m\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0");
- p.sendMessage("§7Recherche des comptes associés à §6" + ip);
- p.sendMessage("§7§m\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0\u25a0");
- while (resultat.next()) {
- reponse ++;
- String pseudo = resultat.getString("name");
- TextComponent pip = new TextComponent("§7Nom du joueur: §6" + pseudo + " [Cliquer ici pour voir ces infos]");
- pip.setHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT,
- new ComponentBuilder("§7Clique pour voir les infos du joueur §6" + pseudo)
- .create()));
- pip.setClickEvent(new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/seen " + pseudo));
- p.spigot().sendMessage(pip);
- }
- if(reponse == 0){
- p.sendMessage("\n§7Aucun joueur trouvé ...");
- } else {
- p.sendMessage("\n§6"+reponse + " §7joueurs trouvés");
- }
- q.close();
- } catch (SQLException e) {
- e.printStackTrace();
- }
- }
- public boolean playerhasfreeze(String p) {
- if (!playerhassqlaccount(p)) {
- createplayersqlaccount(p);
- }
- try {
- PreparedStatement q = connection.prepareStatement("SELECT freeze FROM players WHERE name = ?");
- q.setString(1, p);
- ResultSet res = q.executeQuery();
- while (res.next()) {
- if(res.getBoolean("freeze")){
- return true;
- }
- }
- q.close();
- } catch (SQLException e) {
- e.printStackTrace();
- }
- return false;
- }
- @SuppressWarnings("deprecation")
- public void freeze(String cible, String author) {
- if (!playerhassqlaccount(cible)) {
- createplayersqlaccount(cible);
- }
- if (playerhasfreeze(cible)) {
- try {
- PreparedStatement q = connection.prepareStatement("UPDATE players SET freeze = ?,freezed_by = ? WHERE name = ?");
- q.setBoolean(1, false);
- q.setString(2, null);
- q.setString(3, cible);
- q.executeUpdate();
- q.close();
- if(staffListener.freeze.containsKey(cible)){
- staffListener.freeze.remove(cible);
- }
- if (Bukkit.getPlayer(cible) != null) {
- Player pcible = Bukkit.getPlayer(cible);
- pcible.sendMessage("§aVous avez été unfreeze par " + author + " !");
- pcible.setAllowFlight(false);
- pcible.removePotionEffect(PotionEffectType.BLINDNESS);
- freezerunnable.bar1.removePlayer(pcible);
- pcible.getInventory().setHelmet(null);
- if(freezegetheaditem(pcible.getName()) != null && freezegetheaditem(pcible.getName()) != ""){
- Material m = Material.matchMaterial(freezegetheaditem(pcible.getName()));
- ItemStack stack = new ItemStack(m, 1);
- pcible.getInventory().setHelmet(stack);
- }
- freezesetheaditem(pcible.getName(),null);
- }
- if (Bukkit.getPlayer(author) != null) {
- Player pauthor = Bukkit.getPlayer(author);
- pauthor.sendMessage("§2[STAFF] §6>> Vous avez unfreeze avec succès " + cible);
- }
- } catch (SQLException e) {
- e.printStackTrace();
- }
- } else {
- try {
- PreparedStatement q = connection.prepareStatement("UPDATE players SET freeze = ?,freezed_by = ? WHERE name = ?");
- q.setBoolean(1, true);
- q.setString(2, author);
- q.setString(3, cible);
- q.executeUpdate();
- q.close();
- if(!staffListener.freeze.containsKey(cible)){
- staffListener.freeze.put(cible,author);
- }
- if (Bukkit.getPlayer(cible) != null) {
- Player pcible = Bukkit.getPlayer(cible);
- pcible.sendMessage("§cVous avez été freeze par " + author + " !");
- pcible.setAllowFlight(true);
- pcible.sendTitle("","§cVous avez été freeze par " + staffListener.freeze.get(pcible.getName()));
- pcible.addPotionEffect(new PotionEffect(PotionEffectType.BLINDNESS, Integer.MAX_VALUE, 255, false, false));
- if(pcible.getInventory().getHelmet() != null){
- freezesetheaditem(pcible.getName(),pcible.getInventory().getHelmet().getType().toString());
- }
- pcible.getInventory().setHelmet(new ItemStack(Material.ICE,1));
- }
- if (Bukkit.getPlayer(author) != null) {
- Player pauthor = Bukkit.getPlayer(author);
- pauthor.sendMessage("§2[STAFF] §6>> Vous avez freeze avec succès " + cible);
- }
- } catch (SQLException e) {
- e.printStackTrace();
- }
- }
- }
- public String freezedby(String cible) {
- if (!playerhassqlaccount(cible)) {
- createplayersqlaccount(cible);
- }
- try {
- PreparedStatement q = connection.prepareStatement("SELECT freezed_by FROM players WHERE name = ?");
- q.setString(1, cible);
- String name = "";
- ResultSet res = q.executeQuery();
- while (res.next()) {
- name = res.getString("freezed_by");
- }
- q.close();
- return name;
- } catch (SQLException e) {
- e.printStackTrace();
- }
- return null;
- }
- public void freezesetheaditem(String p, String item){
- try {
- PreparedStatement q = connection.prepareStatement("UPDATE players SET freeze_item_head = ? WHERE name = ?");
- q.setString(1, item);
- q.setString(2, p);
- q.executeUpdate();
- q.close();
- } catch (SQLException e) {
- e.printStackTrace();
- }
- }
- public String freezegetheaditem(String p){
- try {
- PreparedStatement q = connection.prepareStatement("SELECT freeze_item_head FROM players WHERE name = ?");
- q.setString(1, p);
- ResultSet res = q.executeQuery();
- String item = null;
- while (res.next()) {
- item = res.getString("freeze_item_head");
- }
- q.close();
- return item;
- } catch (SQLException e) {
- e.printStackTrace();
- }
- return null;
- }
- public void setreport(String p,String report,Boolean editdate) {
- if (!playerhassqlaccount(p)) {
- createplayersqlaccount(p);
- }
- String stringrequete;
- if(editdate){
- stringrequete = "UPDATE players SET reports = ?,date_last_reports = NOW() WHERE name = ?";
- } else {
- stringrequete = "UPDATE players SET reports = ? WHERE name = ?";
- }
- try {
- PreparedStatement q = connection.prepareStatement(stringrequete);
- q.setString(1, report);
- q.setString(2, p);
- q.executeUpdate();
- q.close();
- } catch (SQLException e) {
- e.printStackTrace();
- }
- }
- public void removereport(String p) {
- if (!playerhassqlaccount(p)) {
- createplayersqlaccount(p);
- }
- try {
- PreparedStatement q = connection.prepareStatement("UPDATE players SET reports = ?,date_last_reports = ? WHERE name = ?");
- q.setString(1,null);
- q.setString(2,null);
- q.setString(3, p);
- q.executeUpdate();
- q.close();
- } catch (SQLException e) {
- e.printStackTrace();
- }
- }
- public String getreportplayer(String p) {
- if (!playerhassqlaccount(p)) {
- createplayersqlaccount(p);
- }
- try {
- PreparedStatement q = connection.prepareStatement("SELECT reports FROM players WHERE name = ?");
- q.setString(1, p);
- String report = "Aucun";
- ResultSet res = q.executeQuery();
- while (res.next()) {
- if(res.getString("reports") != null){
- report = res.getString("reports");
- }
- }
- q.close();
- return report;
- } catch (SQLException e) {
- e.printStackTrace();
- }
- return "Aucun";
- }
- public String getdatelastreportplayer(String p) {
- if (!playerhassqlaccount(p)) {
- createplayersqlaccount(p);
- }
- try {
- PreparedStatement q = connection.prepareStatement("SELECT date_last_reports FROM players WHERE name = ?");
- q.setString(1, p);
- String report = "Aucun";
- ResultSet res = q.executeQuery();
- while (res.next()) {
- if(res.getString("date_last_reports") != null){
- report = res.getString("date_last_reports");
- }
- }
- q.close();
- return report;
- } catch (SQLException e) {
- e.printStackTrace();
- }
- return "Aucun";
- }
- // homes
- public void setHomeString(String player, String result) {
- try {
- PreparedStatement q = connection.prepareStatement("UPDATE players SET homes = ? WHERE name = ?");
- q.setString(1, result);
- q.setString(2, player);
- q.executeUpdate();
- q.close();
- } catch (SQLException e) {
- e.printStackTrace();
- }
- }
- public String getHomeString(String player) {
- if (!playerhassqlaccount(player)) {
- createplayersqlaccount(player);
- }
- try {
- PreparedStatement q = connection.prepareStatement("SELECT homes FROM players WHERE name = ?");
- q.setString(1, player);
- String result = null;
- ResultSet res = q.executeQuery();
- while (res.next()) {
- result = res.getString("homes");
- }
- q.close();
- return result;
- } catch (SQLException e) {
- e.printStackTrace();
- }
- return null;
- }
- public String getDateCreated(String player) {
- if (!playerhassqlaccount(player)) {
- createplayersqlaccount(player);
- }
- try {
- PreparedStatement q = connection.prepareStatement("SELECT date_created FROM players WHERE name = ?");
- q.setString(1, player);
- String result = "";
- ResultSet res = q.executeQuery();
- while (res.next()) {
- result = res.getString("date_created");
- }
- q.close();
- return result;
- } catch (SQLException e) {
- e.printStackTrace();
- }
- return "";
- }
- public void setLastConnexion(String p) {
- SimpleDateFormat formater = null;
- Date aujourdhui = new Date();
- formater = new SimpleDateFormat("dd MMMM yyyy 'à' hh:mm:ss aa");
- try {
- PreparedStatement q = connection.prepareStatement("UPDATE players SET Last_Connexion = ? WHERE name = ?");
- q.setString(1,formater.format(aujourdhui));
- q.setString(2, p);
- q.executeUpdate();
- q.close();
- } catch (SQLException e) {
- e.printStackTrace();
- }
- }
- public void setTimePlayed(String p,String timeplayed) {
- try {
- PreparedStatement q = connection.prepareStatement("UPDATE players SET timeplayed = ? WHERE name = ?");
- q.setString(1,timeplayed);
- q.setString(2, p);
- q.executeUpdate();
- q.close();
- } catch (SQLException e) {
- e.printStackTrace();
- }
- }
- public String getTimePlayed(String p) {
- if (!playerhassqlaccount(p)) {
- createplayersqlaccount(p);
- }
- try {
- PreparedStatement q = connection.prepareStatement("SELECT timeplayed FROM players WHERE name = ?");
- q.setString(1, p);
- String timeplayed = "0";
- ResultSet res = q.executeQuery();
- while (res.next()) {
- timeplayed = res.getString("timeplayed");
- if(timeplayed == null){
- timeplayed = "0";
- }
- }
- q.close();
- return timeplayed;
- } catch (SQLException e) {
- e.printStackTrace();
- }
- return "0";
- }
- public String getLastConnexion(String p) {
- if (!playerhassqlaccount(p)) {
- createplayersqlaccount(p);
- }
- try {
- PreparedStatement q = connection.prepareStatement("SELECT Last_Connexion FROM players WHERE name = ?");
- q.setString(1, p);
- String result = null;
- ResultSet res = q.executeQuery();
- while (res.next()) {
- String dateStr = res.getString("Last_Connexion");
- DateFormat inFormat = new SimpleDateFormat( "dd MMMM yyyy 'à' hh:mm:ss aa");
- DateFormat outFormat = new SimpleDateFormat( "yyyy/MM/dd HH:mm:ss");
- Date date = null;
- try
- {
- date = inFormat.parse(dateStr);
- }
- catch ( ParseException e )
- {
- e.printStackTrace();
- }
- if( date != null )
- {
- result = outFormat.format(date);
- }
- }
- q.close();
- return result;
- } catch (SQLException e) {
- e.printStackTrace();
- }
- return null;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement