Advertisement
Guest User

Untitled

a guest
Jan 28th, 2018
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.38 KB | None | 0 0
  1. package sk.YMasterSk.VIP;
  2.  
  3. import java.sql.Connection;
  4. import java.sql.DriverManager;
  5. import java.sql.SQLException;
  6. import java.sql.Statement;
  7. import java.text.DateFormat;
  8. import java.text.SimpleDateFormat;
  9. import java.util.Calendar;
  10. import java.util.Date;
  11.  
  12. import org.bukkit.Bukkit;
  13. import org.bukkit.command.Command;
  14. import org.bukkit.command.CommandSender;
  15. import org.bukkit.plugin.java.JavaPlugin;
  16.  
  17. public class Main extends JavaPlugin {
  18.  
  19. static String JDBCuser;
  20. static String JDBCpass;
  21. static String JDBCurl;
  22. static Connection connection;
  23. static Statement st;
  24. private static final DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  25.  
  26. public void onEnable(){
  27.  
  28. getConfig().options().copyDefaults(true);
  29. saveConfig();
  30.  
  31. JDBCuser = getConfig().getString("user");
  32. JDBCpass = getConfig().getString("password");
  33. JDBCurl = getConfig().getString("uri");
  34.  
  35. try {
  36.  
  37. connection = DriverManager.getConnection(JDBCurl, JDBCuser, JDBCpass);
  38.  
  39. Bukkit.getConsoleSender().sendMessage("§8[§cVIP§8] §aVIP has been connected to MySQL Server!");
  40.  
  41. st = connection.createStatement();
  42. st.execute("CREATE TABLE IF NOT EXISTS `vip` (`steamid` VARCHAR(20), `timestamp` VARCHAR(40), `enddate` VARCHAR(40));");
  43.  
  44. } catch (SQLException e){
  45.  
  46. Bukkit.getPluginManager().disablePlugin(this);
  47.  
  48. Bukkit.getConsoleSender().sendMessage("§8[§cVIP§8] §cCouldn't connect to MySQL database, disabling plugin.");
  49. Bukkit.getConsoleSender().sendMessage("§8[§cVIP§8] §7SQLException: §a" + e.getMessage());
  50. Bukkit.getConsoleSender().sendMessage("§8[§cVIP§8] §7SQLState: §a" + e.getSQLState());
  51.  
  52. }
  53.  
  54. }
  55.  
  56. public void onDisable(){
  57.  
  58. try {
  59.  
  60. if(connection != null && connection.isClosed()){
  61.  
  62. connection.close();
  63.  
  64. }
  65.  
  66. } catch (Exception e){
  67.  
  68. e.printStackTrace();
  69.  
  70. }
  71.  
  72. }
  73.  
  74. public void setVIP(String steamid){
  75.  
  76. try {
  77.  
  78. Date cd = new Date();
  79. Calendar c = Calendar.getInstance();
  80. c.setTime(cd);
  81.  
  82. c.add(Calendar.DATE, 31);
  83. boolean vyber;
  84. vyber = st.execute("SELECT enddate FROM `vip` WHERE steamid ='" + steamid + "' AND enddate >= '\"+df.format(cd)+\"';\");
  85. Date nd = c.getTime();
  86. if (!vyber) {
  87. st.execute("INSERT INTO `vip` (`playername`, `steamid`, `timestamp`, `enddate`) VALUES ('SMS', '\"" + steamid + "\"', '\"" + df.format(cd) + "\"', '\"" + df.format(nd) + "\"') ON DUPLICATE KEY UPDATE enddate=now()+INTERVAL 1 MONTH;");
  88. } else {
  89. st.execute("INSERT INTO `vip` (`playername`, `steamid`, `timestamp`, `enddate`) VALUES ('SMS', '\"" + steamid + "\"', '\"" + df.format(cd) + "\"', '\"" + df.format(nd) + "\"') ON DUPLICATE KEY UPDATE enddate=DATE_ADD('\"" + df.format(nd) + "\"', interval 1 month);");
  90. }
  91.  
  92. } catch (Exception e){
  93.  
  94. e.printStackTrace();
  95.  
  96. }
  97.  
  98. }
  99.  
  100. public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args){
  101.  
  102. if(cmd.getName().equalsIgnoreCase("vipadd")){
  103.  
  104. if(sender.hasPermission("*")){
  105. //
  106. if(args.length == 1){
  107.  
  108. String steamid = args[0];
  109.  
  110. setVIP(steamid);
  111.  
  112. sender.sendMessage("§7Inserted to database, where Steam ID is: §a" + steamid);
  113.  
  114. }else {
  115.  
  116. sender.sendMessage("§cUsage: §7/vipadd <steamid>");
  117.  
  118. }
  119.  
  120. }
  121. //
  122. }
  123. return false;
  124.  
  125. }
  126.  
  127. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement