2.7.4 | MySQL Bugfix
MySQL Bugfix ``` You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'IF NOT EXISTS `Slot` INT(1) NULL DEFAULT NULL AFTER `Status`' at line 1 ``` And minor code changes
This commit is contained in:
parent
ed810f31d7
commit
19822f7024
@ -6,7 +6,7 @@
|
||||
|
||||
<groupId>net.t2code</groupId>
|
||||
<artifactId>CommandGUI_V2</artifactId>
|
||||
<version>2.7.3</version>
|
||||
<version>2.7.4</version>
|
||||
<packaging>jar</packaging>
|
||||
|
||||
<name>CommandGUI</name>
|
||||
|
@ -1,5 +1,7 @@
|
||||
package de.jatitv.commandguiv2.Bungee;
|
||||
|
||||
import de.jatitv.commandguiv2.Spigot.objects.Obj_Select;
|
||||
import de.jatitv.commandguiv2.Util;
|
||||
import net.md_5.bungee.BungeeCord;
|
||||
import net.md_5.bungee.api.ProxyServer;
|
||||
import net.md_5.bungee.api.connection.ProxiedPlayer;
|
||||
@ -33,6 +35,7 @@ public class BListener implements Listener {
|
||||
}
|
||||
}
|
||||
} catch (IOException e) {
|
||||
Util.sendTryCatch(Obj_Select.class, e.getStackTrace()[0]);
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
@ -27,6 +27,9 @@ import java.util.logging.Level;
|
||||
import java.util.stream.Collectors;
|
||||
import java.util.zip.GZIPOutputStream;
|
||||
import javax.net.ssl.HttpsURLConnection;
|
||||
|
||||
import de.jatitv.commandguiv2.Spigot.objects.Obj_Select;
|
||||
import de.jatitv.commandguiv2.Util;
|
||||
import net.md_5.bungee.api.plugin.Plugin;
|
||||
import net.md_5.bungee.config.Configuration;
|
||||
import net.md_5.bungee.config.ConfigurationProvider;
|
||||
@ -291,6 +294,7 @@ public class BMetrics {
|
||||
// Send the data
|
||||
sendData(data);
|
||||
} catch (Exception e) {
|
||||
Util.sendTryCatch(Obj_Select.class, e.getStackTrace()[0]);
|
||||
// Something went wrong! :(
|
||||
if (logErrors) {
|
||||
errorLogger.accept("Could not submit bStats metrics data", e);
|
||||
|
@ -50,42 +50,46 @@ public class GUIListener implements Listener {
|
||||
|| (Main.PaPi && player.getOpenInventory().getTitle().equals(Replace.replace(prefix, player, GUICode + gui.guiName)))) {
|
||||
e.setCancelled(true);
|
||||
for (Slot slot : gui.slots) {
|
||||
Function function = Main.functionHashMap.get(slot.function);
|
||||
if (e.getSlot() != slot.slot) continue;
|
||||
if (slot.permission && !player.hasPermission(slot.permissionToSee)) continue;
|
||||
if (slot.permission && !player.hasPermission(slot.permissionToUse)) {
|
||||
player.sendMessage(SelectMessages.NoPermissionForItem.replace("[item]", Replace.replace(prefix, function.name))
|
||||
.replace("[perm]", slot.permissionToUse));
|
||||
continue;
|
||||
}
|
||||
if (e.getCurrentItem().getType() == ItemVersion.getHead() || e.getCurrentItem().getType() == ItemVersion.getGreenWool().getType() ||
|
||||
e.getCurrentItem().getType() == ItemVersion.getRedWool().getType() ||
|
||||
e.getCurrentItem().getType() == Material.valueOf(function.item.toUpperCase().replace(".", "_"))) {
|
||||
if (!slot.enable) continue;
|
||||
if (function.cost_Enable) {
|
||||
if (function.command_Enable || function.message_Enable || function.openGUI_Enable || function.serverChange) {
|
||||
execute(e,slot,player, gui);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (!Vault.buy(prefix, player, function.price)) {
|
||||
new BukkitRunnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
player.closeInventory();
|
||||
}
|
||||
}.runTaskLater(plugin, 1L);
|
||||
player.sendMessage(SelectMessages.No_money);
|
||||
if (SelectConfig.Sound_NoMoney_Enable && SelectConfig.Sound_Enable)
|
||||
player.playSound(player.getLocation(), SelectConfig.Sound_NoMoney, 3, 1);
|
||||
} else {
|
||||
player.sendMessage(SelectMessages.Buy_msg.replace("[itemname]", Replace.replace(prefix, function.name))
|
||||
.replace("[price]", function.price + " " + SelectConfig.Currency));
|
||||
execute(function, slot, player, e, gui);
|
||||
}
|
||||
private static void execute(InventoryClickEvent e, Slot slot, Player player, Gui gui){
|
||||
Function function = Main.functionHashMap.get(slot.function);
|
||||
if (e.getSlot() != slot.slot) return;
|
||||
if (slot.permission && !player.hasPermission(slot.permissionToSee)) return;
|
||||
if (slot.permission && !player.hasPermission(slot.permissionToUse)) {
|
||||
player.sendMessage(SelectMessages.NoPermissionForItem.replace("[item]", Replace.replace(prefix, function.name))
|
||||
.replace("[perm]", slot.permissionToUse));
|
||||
return;
|
||||
}
|
||||
if (e.getCurrentItem().getType() == ItemVersion.getHead() || e.getCurrentItem().getType() == ItemVersion.getGreenWool().getType() ||
|
||||
e.getCurrentItem().getType() == ItemVersion.getRedWool().getType() ||
|
||||
e.getCurrentItem().getType() == Material.valueOf(function.item.toUpperCase().replace(".", "_"))) {
|
||||
if (!slot.enable) return;
|
||||
if (function.cost_Enable) {
|
||||
if (function.command_Enable || function.message_Enable || function.openGUI_Enable || function.serverChange) {
|
||||
|
||||
if (!Vault.buy(prefix, player, function.price)) {
|
||||
new BukkitRunnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
player.closeInventory();
|
||||
}
|
||||
} else {
|
||||
execute(function, slot, player, e, gui);
|
||||
}
|
||||
}.runTaskLater(plugin, 1L);
|
||||
player.sendMessage(SelectMessages.No_money);
|
||||
if (SelectConfig.Sound_NoMoney_Enable && SelectConfig.Sound_Enable)
|
||||
player.playSound(player.getLocation(), SelectConfig.Sound_NoMoney, 3, 1);
|
||||
} else {
|
||||
player.sendMessage(SelectMessages.Buy_msg.replace("[itemname]", Replace.replace(prefix, function.name))
|
||||
.replace("[price]", function.price + " " + SelectConfig.Currency));
|
||||
execute(function, slot, player, e, gui);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
execute(function, slot, player, e, gui);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -61,24 +61,6 @@ public class CmdExecuter_GUITab implements CommandExecutor, TabCompleter {
|
||||
} else sender.sendMessage(SelectMessages.NoPermissionForCommand
|
||||
.replace("[cmd]", "/commandgui admin").replace("[perm]", "commandgui.admin"));
|
||||
break;
|
||||
case "debug":
|
||||
if (sender.hasPermission("commandgui.admin")) {
|
||||
Debug.onDebugFile(sender);
|
||||
/*if (args.length == 2) {
|
||||
if (args[1].equals("config")) {
|
||||
Debug.debugmsg();
|
||||
}
|
||||
if (args[1].equals("2")) {
|
||||
send.debug("2");
|
||||
}
|
||||
break;
|
||||
|
||||
} else Debug.debugmsg();
|
||||
|
||||
*/
|
||||
} else sender.sendMessage(SelectMessages.NoPermissionForCommand.replace("[cmd]", "/commandgui admin").replace("[perm]", "commandgui.admin"));
|
||||
break;
|
||||
|
||||
case "give":
|
||||
if (args.length == 3) {
|
||||
if (sender.hasPermission("commandgui.giveitem.other")) {
|
||||
|
@ -70,7 +70,7 @@ public class Commands {
|
||||
Main.plugin.reloadConfig();
|
||||
if (!Objects.equals(SelectDatabase.getStorage().toString(), SelectConfig.storage)) {
|
||||
if (sender instanceof Player) send.sender(sender, "You have changed the storage medium! To apply this change, you must restart the server!");
|
||||
send.console("You have changed the storage medium! To apply this change, you must restart the server!");
|
||||
send.warning(Main.plugin, "You have changed the storage medium! To apply this change, you must restart the server!");
|
||||
}
|
||||
|
||||
LanguagesCreate.langCreate();
|
||||
|
@ -5,6 +5,7 @@ import de.jatitv.commandguiv2.Spigot.cmdManagement.CmdExecuter_GUITab;
|
||||
import de.jatitv.commandguiv2.Spigot.objects.functions.Function;
|
||||
import de.jatitv.commandguiv2.Spigot.objects.guis.Gui;
|
||||
import de.jatitv.commandguiv2.Spigot.objects.slots.Slot;
|
||||
import de.jatitv.commandguiv2.Util;
|
||||
import net.t2code.lib.Spigot.Lib.messages.send;
|
||||
import net.t2code.lib.Spigot.Lib.minecraftVersion.MCVersion;
|
||||
import org.bukkit.configuration.file.YamlConfiguration;
|
||||
@ -28,63 +29,66 @@ public class Obj_Select {
|
||||
File[] fileArray = f.listFiles();
|
||||
|
||||
for (File config_gui : fileArray) {
|
||||
String sub = config_gui.getName().substring(config_gui.getName().length() - 4);
|
||||
if (sub.equals(".yml")) {
|
||||
String key = config_gui.getName().replace(".yml", "");
|
||||
Main.allAliases.add(key);
|
||||
YamlConfiguration yamlConfiguration_gui = YamlConfiguration.loadConfiguration(config_gui);
|
||||
|
||||
Boolean guiEnable = yamlConfiguration_gui.getBoolean("GUI.Enable");
|
||||
Integer guiLines = yamlConfiguration_gui.getInt("GUI.Lines");
|
||||
if (yamlConfiguration_gui.getInt("GUI.Lines") > 6) {
|
||||
yamlConfiguration_gui.set("GUI.Lines", 6);
|
||||
}
|
||||
if (yamlConfiguration_gui.getInt("GUI.Lines") < 1) {
|
||||
yamlConfiguration_gui.set("GUI.Lines", 1);
|
||||
}
|
||||
try {
|
||||
String sub = config_gui.getName().substring(config_gui.getName().length() - 4);
|
||||
if (sub.equals(".yml")) {
|
||||
String key = config_gui.getName().replace(".yml", "");
|
||||
Main.allAliases.add(key);
|
||||
YamlConfiguration yamlConfiguration_gui = YamlConfiguration.loadConfiguration(config_gui);
|
||||
|
||||
String guiName = yamlConfiguration_gui.getString("GUI.Name");
|
||||
Boolean guiFillItemEnable = yamlConfiguration_gui.getBoolean("GUI.FillItem.Enable");
|
||||
String guiFillItemItem;
|
||||
if (MCVersion.minecraft1_8 || MCVersion.minecraft1_9 || MCVersion.minecraft1_10 || MCVersion.minecraft1_11 || MCVersion.minecraft1_12) {
|
||||
guiFillItemItem = yamlConfiguration_gui.getString("GUI.FillItem.GlassPaneColor");
|
||||
} else guiFillItemItem = yamlConfiguration_gui.getString("GUI.FillItem.Item");
|
||||
|
||||
Boolean commandAliasEnable = yamlConfiguration_gui.getBoolean("Command.Alias");
|
||||
Boolean commandPermission = yamlConfiguration_gui.getBoolean("Command.Permission.Required");
|
||||
|
||||
ArrayList<Slot> slots = new ArrayList<>();
|
||||
for (String slotKey : yamlConfiguration_gui.getConfigurationSection("Slots").getKeys(false)) {
|
||||
Integer slotNumber = yamlConfiguration_gui.getInt("Slots." + slotKey + ".Slot") - 1;
|
||||
Boolean enable = yamlConfiguration_gui.getBoolean("Slots." + slotKey + ".Enable");
|
||||
String function = yamlConfiguration_gui.getString("Slots." + slotKey + ".Function");
|
||||
Function functionCheck = Main.functionHashMap.get(function);
|
||||
if (functionCheck == null) {
|
||||
send.error(Main.plugin, "The Function " + function + " in the GUI " + key + " does not exist!");
|
||||
Boolean guiEnable = yamlConfiguration_gui.getBoolean("GUI.Enable");
|
||||
Integer guiLines = yamlConfiguration_gui.getInt("GUI.Lines");
|
||||
if (yamlConfiguration_gui.getInt("GUI.Lines") > 6) {
|
||||
yamlConfiguration_gui.set("GUI.Lines", 6);
|
||||
}
|
||||
if (yamlConfiguration_gui.getInt("GUI.Lines") < 1) {
|
||||
yamlConfiguration_gui.set("GUI.Lines", 1);
|
||||
}
|
||||
Boolean permRequired = yamlConfiguration_gui.getBoolean("Slots." + slotKey + ".Permission.Required");
|
||||
String permSee = yamlConfiguration_gui.getString("Slots." + slotKey + ".Permission.See");
|
||||
String permUse = yamlConfiguration_gui.getString("Slots." + slotKey + ".Permission.Use");
|
||||
|
||||
Slot slot = new Slot(slotNumber, enable, function, permRequired,
|
||||
Objects.requireNonNull(permSee).replace("[function]", key).replace("[slot]", String.valueOf(slotNumber + 1))
|
||||
.replace("[slotname]", slotKey.toLowerCase()),
|
||||
Objects.requireNonNull(permUse).replace("[function]", key).replace("[slot]", String.valueOf(slotNumber + 1))
|
||||
.replace("[slotname]", slotKey.toLowerCase()));
|
||||
slots.add(slot);
|
||||
}
|
||||
Gui gui = new Gui(guiEnable, guiLines, guiName, guiFillItemEnable, guiFillItemItem,
|
||||
key, commandAliasEnable, commandPermission, slots);
|
||||
String guiName = yamlConfiguration_gui.getString("GUI.Name");
|
||||
Boolean guiFillItemEnable = yamlConfiguration_gui.getBoolean("GUI.FillItem.Enable");
|
||||
String guiFillItemItem;
|
||||
if (MCVersion.minecraft1_8 || MCVersion.minecraft1_9 || MCVersion.minecraft1_10 || MCVersion.minecraft1_11 || MCVersion.minecraft1_12) {
|
||||
guiFillItemItem = yamlConfiguration_gui.getString("GUI.FillItem.GlassPaneColor");
|
||||
} else guiFillItemItem = yamlConfiguration_gui.getString("GUI.FillItem.Item");
|
||||
|
||||
Boolean commandAliasEnable = yamlConfiguration_gui.getBoolean("Command.Alias");
|
||||
Boolean commandPermission = yamlConfiguration_gui.getBoolean("Command.Permission.Required");
|
||||
|
||||
ArrayList<Slot> slots = new ArrayList<>();
|
||||
for (String slotKey : yamlConfiguration_gui.getConfigurationSection("Slots").getKeys(false)) {
|
||||
Integer slotNumber = yamlConfiguration_gui.getInt("Slots." + slotKey + ".Slot") - 1;
|
||||
Boolean enable = yamlConfiguration_gui.getBoolean("Slots." + slotKey + ".Enable");
|
||||
String function = yamlConfiguration_gui.getString("Slots." + slotKey + ".Function");
|
||||
Function functionCheck = Main.functionHashMap.get(function);
|
||||
if (functionCheck == null) {
|
||||
send.error(Main.plugin, "The Function " + function + " in the GUI " + key + " does not exist!");
|
||||
}
|
||||
Boolean permRequired = yamlConfiguration_gui.getBoolean("Slots." + slotKey + ".Permission.Required");
|
||||
String permSee = yamlConfiguration_gui.getString("Slots." + slotKey + ".Permission.See");
|
||||
String permUse = yamlConfiguration_gui.getString("Slots." + slotKey + ".Permission.Use");
|
||||
|
||||
Slot slot = new Slot(slotNumber, enable, function, permRequired,
|
||||
permSee.replace("[function]", key).replace("[slot]", String.valueOf(slotNumber + 1))
|
||||
.replace("[slotname]", slotKey.toLowerCase()),
|
||||
permUse.replace("[function]", key).replace("[slot]", String.valueOf(slotNumber + 1))
|
||||
.replace("[slotname]", slotKey.toLowerCase()));
|
||||
slots.add(slot);
|
||||
}
|
||||
Gui gui = new Gui(guiEnable, guiLines, guiName, guiFillItemEnable, guiFillItemItem,
|
||||
key, commandAliasEnable, commandPermission, slots);
|
||||
|
||||
Main.guiHashMap.put(key, gui);
|
||||
CmdExecuter_GUITab.arg1.put(config_gui.getName()
|
||||
.replace(".yml", ""), "commandgui.gui." + key);
|
||||
|
||||
Main.guiHashMap.put(key, gui);
|
||||
CmdExecuter_GUITab.arg1.put(config_gui.getName()
|
||||
.replace(".yml", ""), "commandgui.gui." + key);
|
||||
|
||||
try {
|
||||
yamlConfiguration_gui.save(config_gui);
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
} catch (Exception e) {
|
||||
Util.sendTryCatch(Obj_Select.class, e.getStackTrace()[0]);
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -15,10 +15,8 @@ import java.util.List;
|
||||
|
||||
public class Debug {
|
||||
|
||||
private static Plugin plugin = Main.plugin;
|
||||
private static final Plugin plugin = Main.plugin;
|
||||
public static void debugmsg() {
|
||||
|
||||
|
||||
send.debug(plugin,"§5!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
|
||||
send.debug(plugin,"§3Bukkit Version: §e" + Bukkit.getBukkitVersion());
|
||||
send.debug(plugin,"§3NMS Version: §e" + Bukkit.getServer().getClass().getPackage().getName().replace("org.bukkit.craftbukkit.", ""));
|
||||
@ -45,52 +43,5 @@ public class Debug {
|
||||
}
|
||||
}
|
||||
send.debug(plugin,"§5!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
|
||||
|
||||
}
|
||||
|
||||
public static void onDebugFile(CommandSender sender){
|
||||
String timeStamp = new SimpleDateFormat("dd_MM_yyyy_HH_mm_ss").format(Calendar.getInstance().getTime());
|
||||
String timeStampcfg = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss").format(Calendar.getInstance().getTime());
|
||||
send.sender(sender, Main.prefix + " §5Debug file was createt: §e" + Main.getPath() + "\\debug\\commandgui_debug_"+ timeStamp +".yml");
|
||||
File debug = new File(Main.getPath(), "debug/commandgui_debug_"+ timeStamp +".yml");
|
||||
YamlConfiguration yamlConfiguration = YamlConfiguration.loadConfiguration(debug);
|
||||
|
||||
set("Time", timeStampcfg, yamlConfiguration);
|
||||
set("CommandGUI.Version", String.valueOf(plugin.getDescription().getVersion()), yamlConfiguration);
|
||||
|
||||
set("Server.Bukkit_Version", String.valueOf(Bukkit.getBukkitVersion()), yamlConfiguration);
|
||||
set("Server.NMS_Version", String.valueOf(Bukkit.getServer().getClass().getPackage().getName().replace("org.bukkit.craftbukkit.", "")), yamlConfiguration);
|
||||
set("Server.Version", String.valueOf(Bukkit.getVersion()), yamlConfiguration);
|
||||
set("Server.Java", String.valueOf(System.getProperty("java.version")), yamlConfiguration);
|
||||
set("Server.Worlds", String.valueOf(Bukkit.getServer().getWorlds()), yamlConfiguration);
|
||||
set("Server.Plugins", String.valueOf(Main.plugins) , yamlConfiguration);
|
||||
|
||||
try {
|
||||
yamlConfiguration.save(debug);
|
||||
} catch (IOException e) {
|
||||
send.warning(plugin,e.getMessage());
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
private static void set(String path, String value, YamlConfiguration config){
|
||||
if (!config.contains(path)) {
|
||||
config.set(path, value);
|
||||
}
|
||||
}
|
||||
private static void set(String path, Integer value, YamlConfiguration config){
|
||||
if (!config.contains(path)) {
|
||||
config.set(path, value);
|
||||
}
|
||||
}
|
||||
private static void set(String path, Boolean value, YamlConfiguration config){
|
||||
if (!config.contains(path)) {
|
||||
config.set(path, value);
|
||||
}
|
||||
}
|
||||
private static void set(String path, List value, YamlConfiguration config){
|
||||
if (!config.contains(path)) {
|
||||
config.set(path, value);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -20,6 +20,7 @@ import de.jatitv.commandguiv2.Spigot.config.config.SelectConfig;
|
||||
import de.jatitv.commandguiv2.Spigot.system.database.SQLITE;
|
||||
import de.jatitv.commandguiv2.Spigot.system.database.SelectDatabase;
|
||||
import de.jatitv.commandguiv2.Spigot.system.database.StorageType;
|
||||
import de.jatitv.commandguiv2.Util;
|
||||
import net.t2code.lib.Spigot.Lib.messages.T2CodeTemplate;
|
||||
import net.t2code.lib.Spigot.Lib.messages.send;
|
||||
import net.t2code.lib.Spigot.Lib.minecraftVersion.MCVersion;
|
||||
@ -177,15 +178,19 @@ public class Load {
|
||||
" `Name` TINYTEXT NOT NULL COLLATE 'utf8mb4_general_ci'," +
|
||||
" `Status` INT(1) NOT NULL DEFAULT '1'," +
|
||||
" `Slot` INT(1) NULL DEFAULT NULL," +
|
||||
" UNIQUE INDEX `UUID` (`UUID`)" +
|
||||
" UNIQUE INDEX `UUID` (`UUID`)" +
|
||||
")" +
|
||||
"COLLATE='utf8mb4_general_ci'" +
|
||||
"ENGINE=InnoDB" +
|
||||
";");
|
||||
MySQL.query("ALTER TABLE `gui-item` ADD COLUMN IF NOT EXISTS `Slot` INT(1) NULL DEFAULT NULL AFTER `Status`;");
|
||||
} catch (Exception e) {
|
||||
Util.sendTryCatch(Load.class, e.getStackTrace()[0]);
|
||||
e.printStackTrace();
|
||||
}
|
||||
try {
|
||||
MySQL.query("ALTER TABLE `gui-item` ADD COLUMN `Slot` INT(1) NULL DEFAULT NULL AFTER `Status`;");
|
||||
} catch (SQLException e) {
|
||||
}
|
||||
break;
|
||||
case YML:
|
||||
send.console(prefix + " §2Storage medium §6" + SelectDatabase.getStorage() + " §2is used.");
|
||||
@ -194,17 +199,17 @@ public class Load {
|
||||
case SQLITE:
|
||||
send.console(prefix + " §2Storage medium §6" + SelectDatabase.getStorage() + " §2is used.");
|
||||
try {
|
||||
SQLITE.main();
|
||||
SQLITE.query("CREATE TABLE IF NOT EXISTS `gui-item` (" +
|
||||
"UUID TEXT NOT NULL," +
|
||||
"Name TEXT NOT NULL," +
|
||||
"Status INTEGER NOT NULL DEFAULT 1," +
|
||||
"Slot INTEGER," +
|
||||
"PRIMARY KEY(UUID)" +
|
||||
");");
|
||||
} catch (SQLException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
SQLITE.main();
|
||||
SQLITE.query("CREATE TABLE IF NOT EXISTS `gui-item` (" +
|
||||
"UUID TEXT NOT NULL," +
|
||||
"Name TEXT NOT NULL," +
|
||||
"Status INTEGER NOT NULL DEFAULT 1," +
|
||||
"Slot INTEGER," +
|
||||
"PRIMARY KEY(UUID)" +
|
||||
");");
|
||||
} catch (SQLException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -3,7 +3,9 @@ package de.jatitv.commandguiv2.Spigot.system.database;
|
||||
import com.zaxxer.hikari.HikariConfig;
|
||||
import com.zaxxer.hikari.HikariDataSource;
|
||||
import de.jatitv.commandguiv2.Spigot.Main;
|
||||
import de.jatitv.commandguiv2.Spigot.config.config.SelectConfig;
|
||||
import net.t2code.lib.Spigot.Lib.messages.send;
|
||||
import org.bukkit.Bukkit;
|
||||
|
||||
import java.sql.*;
|
||||
import java.time.ZoneId;
|
||||
@ -40,37 +42,47 @@ public class MySQL {
|
||||
send.console(Main.prefix + " §4MYSQL not connected." + " §7- §e" + (System.currentTimeMillis() - long_) + "ms");
|
||||
send.error(Main.plugin, ex.getMessage() + " --- " + (System.currentTimeMillis() - long_) + "ms");
|
||||
}
|
||||
if (SelectConfig.Debug || Main.version.contains("DEV")){
|
||||
try {
|
||||
send.warning(Main.plugin, "MySQL DEBUG:");
|
||||
Connection con = ds.getConnection();
|
||||
DatabaseMetaData dbmd = con.getMetaData();
|
||||
Bukkit.getConsoleSender().sendMessage("Metadata of the database:");
|
||||
Bukkit.getConsoleSender().sendMessage("DB :" + dbmd.getDatabaseProductName());
|
||||
Bukkit.getConsoleSender().sendMessage("Version :" + dbmd.getDatabaseProductVersion());
|
||||
Bukkit.getConsoleSender().sendMessage("Driver :" + dbmd.getDriverName());
|
||||
Bukkit.getConsoleSender().sendMessage(" :" + dbmd.getDriverMajorVersion() + "." + dbmd.getDriverMinorVersion());
|
||||
Bukkit.getConsoleSender().sendMessage(" :" + dbmd.getDriverVersion());
|
||||
} catch (SQLException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//Bukkit.getConsoleSender().sendMessage((System.currentTimeMillis() - long_) + "ms");
|
||||
}
|
||||
|
||||
|
||||
public static void query(String query) {
|
||||
|
||||
if (ds == null){
|
||||
public static void query(String query) throws SQLException {
|
||||
if (ds == null) {
|
||||
return;
|
||||
}
|
||||
send.debug(Main.plugin, query);
|
||||
try (Connection con = ds.getConnection()) {
|
||||
Statement stmt = con.createStatement();
|
||||
stmt.execute(query);
|
||||
stmt.close();
|
||||
} catch (SQLException e) {
|
||||
System.err.println(e.getMessage());
|
||||
}
|
||||
Connection con = ds.getConnection();
|
||||
Statement stmt = con.createStatement();
|
||||
stmt.execute(query);
|
||||
stmt.close();
|
||||
}
|
||||
|
||||
public static void query(ArrayList<String> queryList) {
|
||||
try (Connection con = ds.getConnection()) {
|
||||
Statement stmt = con.createStatement();
|
||||
for (String query : queryList) {
|
||||
send.debug(Main.plugin, query);
|
||||
stmt.addBatch(query);
|
||||
}
|
||||
stmt.executeBatch();
|
||||
stmt.close();
|
||||
} catch (SQLException e) {
|
||||
System.err.println(e.getMessage());
|
||||
public static void query(ArrayList<String> queryList) throws SQLException {
|
||||
Connection con = ds.getConnection();
|
||||
Statement stmt = con.createStatement();
|
||||
for (String query : queryList) {
|
||||
send.debug(Main.plugin, query);
|
||||
stmt.addBatch(query);
|
||||
}
|
||||
stmt.executeBatch();
|
||||
stmt.close();
|
||||
}
|
||||
|
||||
|
||||
|
@ -1,9 +1,15 @@
|
||||
package de.jatitv.commandguiv2.Spigot.system.database;
|
||||
|
||||
import de.jatitv.commandguiv2.Spigot.Listener.UseItem_Listener.Events;
|
||||
import de.jatitv.commandguiv2.Spigot.Main;
|
||||
import de.jatitv.commandguiv2.Spigot.config.config.SelectConfig;
|
||||
import de.jatitv.commandguiv2.Spigot.system.Load;
|
||||
import de.jatitv.commandguiv2.Util;
|
||||
import net.t2code.lib.Spigot.Lib.messages.send;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
import java.sql.SQLException;
|
||||
|
||||
public class SelectDatabase {
|
||||
|
||||
private static StorageType Storage;
|
||||
@ -19,7 +25,12 @@ public class SelectDatabase {
|
||||
public static void nameCheck(Player player) {
|
||||
switch (Storage) {
|
||||
case MYSQL:
|
||||
MySQL.query("UPDATE `gui-item` SET Name='" + player.getName() + "' WHERE UUID='" + player.getUniqueId() + "';");
|
||||
try {
|
||||
MySQL.query("UPDATE `gui-item` SET Name='" + player.getName() + "' WHERE UUID='" + player.getUniqueId() + "';");
|
||||
} catch (SQLException e) {
|
||||
Util.sendTryCatch(SelectDatabase.class, e.getStackTrace()[0]);
|
||||
e.printStackTrace();
|
||||
}
|
||||
break;
|
||||
case YML:
|
||||
|
||||
@ -34,8 +45,13 @@ public class SelectDatabase {
|
||||
public static void setSlot(Player player, Integer slot) {
|
||||
switch (Storage) {
|
||||
case MYSQL:
|
||||
MySQL.query("INSERT INTO `gui-item` (`UUID`, `Name`, `Slot`) VALUES ('" + player.getUniqueId() + "', '" + player.getName()
|
||||
+ "','" + slot + "') ON DUPLICATE KEY UPDATE `Name` = '" + player.getName() + "', `Slot` = '" + slot + "';");
|
||||
try {
|
||||
MySQL.query("INSERT INTO `gui-item` (`UUID`, `Name`, `Slot`) VALUES ('" + player.getUniqueId() + "', '" + player.getName()
|
||||
+ "','" + slot + "') ON DUPLICATE KEY UPDATE `Name` = '" + player.getName() + "', `Slot` = '" + slot + "';");
|
||||
} catch (SQLException e) {
|
||||
Util.sendTryCatch(SelectDatabase.class, e.getStackTrace()[0]);
|
||||
e.printStackTrace();
|
||||
}
|
||||
break;
|
||||
case YML:
|
||||
YML.setGuiitemSlot(player, slot);
|
||||
@ -52,8 +68,13 @@ public class SelectDatabase {
|
||||
Events.useItemHashMap.replace(player.getName(), true);
|
||||
switch (Storage) {
|
||||
case MYSQL:
|
||||
MySQL.query("INSERT INTO `gui-item` (`UUID`, `Name`) VALUES ('" + player.getUniqueId() + "', '" + player.getName()
|
||||
+ "') ON DUPLICATE KEY UPDATE `Name` = '" + player.getName() + "', `Status` = '1';");
|
||||
try {
|
||||
MySQL.query("INSERT INTO `gui-item` (`UUID`, `Name`) VALUES ('" + player.getUniqueId() + "', '" + player.getName()
|
||||
+ "') ON DUPLICATE KEY UPDATE `Name` = '" + player.getName() + "', `Status` = '1';");
|
||||
} catch (SQLException e) {
|
||||
Util.sendTryCatch(SelectDatabase.class, e.getStackTrace()[0]);
|
||||
e.printStackTrace();
|
||||
}
|
||||
break;
|
||||
case YML:
|
||||
YML.setGuiitemOn(player);
|
||||
@ -70,8 +91,13 @@ public class SelectDatabase {
|
||||
Events.useItemHashMap.replace(player.getName(), false);
|
||||
switch (Storage) {
|
||||
case MYSQL:
|
||||
MySQL.query("INSERT INTO `gui-item` (`UUID`, `Name`, `Status`) VALUES ('" + player.getUniqueId() + "', '" + player.getName()
|
||||
+ "', '0') ON DUPLICATE KEY UPDATE `Name` = '" + player.getName() + "', `Status` = '0';");
|
||||
try {
|
||||
MySQL.query("INSERT INTO `gui-item` (`UUID`, `Name`, `Status`) VALUES ('" + player.getUniqueId() + "', '" + player.getName()
|
||||
+ "', '0') ON DUPLICATE KEY UPDATE `Name` = '" + player.getName() + "', `Status` = '0';");
|
||||
} catch (SQLException e) {
|
||||
Util.sendTryCatch(SelectDatabase.class, e.getStackTrace()[0]);
|
||||
e.printStackTrace();
|
||||
}
|
||||
break;
|
||||
case YML:
|
||||
YML.setGuiitemOff(player);
|
||||
|
@ -1,6 +1,8 @@
|
||||
package de.jatitv.commandguiv2.Spigot.system.database;
|
||||
|
||||
import de.jatitv.commandguiv2.Spigot.Main;
|
||||
import de.jatitv.commandguiv2.Spigot.objects.Obj_Select;
|
||||
import de.jatitv.commandguiv2.Util;
|
||||
import net.t2code.lib.Spigot.Lib.messages.send;
|
||||
import org.bukkit.configuration.file.YamlConfiguration;
|
||||
import org.bukkit.entity.Player;
|
||||
@ -45,6 +47,7 @@ public class YML {
|
||||
try {
|
||||
yamlConfigurationStorage.save(storage);
|
||||
} catch (IOException e) {
|
||||
Util.sendTryCatch(Obj_Select.class, e.getStackTrace()[0]);
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
@ -1,5 +1,8 @@
|
||||
package de.jatitv.commandguiv2;
|
||||
|
||||
import de.jatitv.commandguiv2.Spigot.Main;
|
||||
import net.t2code.lib.Spigot.Lib.messages.send;
|
||||
|
||||
public class Util {
|
||||
private static Integer configVersion = 5;
|
||||
private static double requiredT2CodeLibVersion = 11.8;
|
||||
@ -36,4 +39,8 @@ public class Util {
|
||||
public static Integer getConfigVersion() {
|
||||
return configVersion;
|
||||
}
|
||||
|
||||
public static void sendTryCatch(Class c, StackTraceElement line){
|
||||
send.error(Main.plugin, c.getName() + " Line: " + line.getLineNumber());
|
||||
}
|
||||
}
|
||||
|
@ -20,53 +20,4 @@ commands:
|
||||
description: CommandGUI Help
|
||||
aliases: [cguihelp, guihelp]
|
||||
commandgui-item:
|
||||
aliases: [gui-item]
|
||||
|
||||
|
||||
#permissions:
|
||||
# commandgui.admin:
|
||||
# description: All permissions from CommandGUI
|
||||
# default: op
|
||||
# children:
|
||||
# commandgui.command: true
|
||||
# commandgui.get.guiitem.at.login: true
|
||||
# commandgui.useitem: true
|
||||
# commandgui.useitem.toggle: true
|
||||
# commandgui.updatemsg: true
|
||||
# commandgui.bypass: true
|
||||
# commandgui.command.info: true
|
||||
# commandgui.command.give: true
|
||||
#
|
||||
# commandgui.player:
|
||||
# description: All permissions from CommandGUI
|
||||
# default: op
|
||||
# children:
|
||||
# commandgui.command: true
|
||||
# commandgui.get.guiitem.at.login: true
|
||||
# commandgui.useitem: true
|
||||
# commandgui.useitem.toggle: true
|
||||
#
|
||||
# commandgui.updatemsg:
|
||||
# description: Players with this permission get the update message when joining if an update is available
|
||||
# default: op
|
||||
# commandgui.command:
|
||||
# description: Required permission to open GUIs via command
|
||||
# default: op
|
||||
# commandgui.get.guiitem.at.login:
|
||||
# description: Only players with this permission will receive the GUI item
|
||||
# default: op
|
||||
# commandgui.useitem:
|
||||
# description: Required permission to use the GUI Item
|
||||
# default: op
|
||||
# commandgui.useitem.toggle:
|
||||
# description: Required permission to enable/disable the GUI Item for itself (if the function UseItem/AllowToggle is set to true)
|
||||
# default: op
|
||||
# commandgui.bypass:
|
||||
# description: Bypass to open disabled GUIs
|
||||
# default: op
|
||||
# commandgui.command.info:
|
||||
# description: Permission to view CommandGUI info
|
||||
# default: not op
|
||||
# commandgui.command.give:
|
||||
# description: Kommend in V2.1.0
|
||||
# default: op
|
||||
aliases: [gui-item]
|
Loading…
Reference in New Issue
Block a user