mirror of
https://git.krews.org/morningstar/Arcturus-Community.git
synced 2025-03-05 01:42:35 +01:00
87 lines
3.4 KiB
Java
87 lines
3.4 KiB
Java
package com.eu.habbo.habbohotel.modtool;
|
|
|
|
import com.eu.habbo.Emulator;
|
|
import org.slf4j.Logger;
|
|
import org.slf4j.LoggerFactory;
|
|
|
|
import java.sql.Connection;
|
|
import java.sql.PreparedStatement;
|
|
import java.sql.ResultSet;
|
|
import java.sql.SQLException;
|
|
import java.text.SimpleDateFormat;
|
|
|
|
public class ModToolBan implements Runnable {
|
|
private static final Logger LOGGER = LoggerFactory.getLogger(ModToolBan.class);
|
|
|
|
public static SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
public int userId;
|
|
public String ip;
|
|
public String machineId;
|
|
public int staffId;
|
|
public int expireDate;
|
|
public int timestamp;
|
|
public String reason;
|
|
public ModToolBanType type;
|
|
public int cfhTopic;
|
|
|
|
private boolean needsInsert;
|
|
|
|
public ModToolBan(ResultSet set) throws SQLException {
|
|
this.userId = set.getInt("user_id");
|
|
this.ip = set.getString("ip");
|
|
this.machineId = set.getString("machine_id");
|
|
this.staffId = set.getInt("user_staff_id");
|
|
this.timestamp = set.getInt("timestamp");
|
|
this.expireDate = set.getInt("ban_expire");
|
|
this.reason = set.getString("ban_reason");
|
|
this.type = ModToolBanType.fromString(set.getString("type"));
|
|
this.cfhTopic = set.getInt("cfh_topic");
|
|
this.needsInsert = false;
|
|
}
|
|
|
|
public ModToolBan(int userId, String ip, String machineId, int staffId, int expireDate, String reason, ModToolBanType type, int cfhTopic) {
|
|
this.userId = userId;
|
|
this.staffId = staffId;
|
|
this.timestamp = Emulator.getIntUnixTimestamp();
|
|
this.expireDate = expireDate;
|
|
this.reason = reason;
|
|
this.ip = ip;
|
|
this.machineId = machineId;
|
|
this.type = type;
|
|
this.cfhTopic = cfhTopic;
|
|
this.needsInsert = true;
|
|
}
|
|
|
|
@Override
|
|
public void run() {
|
|
if (this.needsInsert) {
|
|
try (Connection connection = Emulator.getDatabase().getDataSource().getConnection(); PreparedStatement statement = connection.prepareStatement("INSERT INTO bans (user_id, ip, machine_id, user_staff_id, timestamp, ban_expire, ban_reason, type, cfh_topic) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)")) {
|
|
statement.setInt(1, this.userId);
|
|
statement.setString(2, this.ip);
|
|
statement.setString(3, this.machineId);
|
|
statement.setInt(4, this.staffId);
|
|
statement.setInt(5, Emulator.getIntUnixTimestamp());
|
|
statement.setInt(6, this.expireDate);
|
|
statement.setString(7, this.reason);
|
|
statement.setString(8, this.type.getType());
|
|
statement.setInt(9, this.cfhTopic);
|
|
statement.execute();
|
|
} catch (SQLException e) {
|
|
LOGGER.error("Caught SQL exception", e);
|
|
}
|
|
}
|
|
}
|
|
|
|
public String listInfo() {
|
|
return "Banned User Id: " + this.userId + "\r" +
|
|
"Type: " + this.type.getType() + "\r" +
|
|
"Reason: " + "<i>" + this.reason + "</i>" + "\r" +
|
|
"Moderator Id: " + this.staffId + "\r" +
|
|
"Date: " + dateFormat.format(this.timestamp * 1000L) + "\r" +
|
|
"Expire Date: " + dateFormat.format(this.expireDate * 1000L) + "\r" +
|
|
"IP: " + this.ip + "\r" +
|
|
"MachineID: " + this.machineId + "\r" +
|
|
"Topic: " + this.cfhTopic;
|
|
}
|
|
}
|