|
|
|
// • ▌ ▄ ·. ▄▄▄· ▄▄ • ▪ ▄▄· ▄▄▄▄· ▄▄▄· ▐▄▄▄ ▄▄▄ .
|
|
|
|
// ·██ ▐███▪▐█ ▀█ ▐█ ▀ ▪██ ▐█ ▌▪▐█ ▀█▪▐█ ▀█ •█▌ ▐█▐▌·
|
|
|
|
// ▐█ ▌▐▌▐█·▄█▀▀█ ▄█ ▀█▄▐█·██ ▄▄▐█▀▀█▄▄█▀▀█ ▐█▐ ▐▌▐▀▀▀
|
|
|
|
// ██ ██▌▐█▌▐█ ▪▐▌▐█▄▪▐█▐█▌▐███▌██▄▪▐█▐█ ▪▐▌██▐ █▌▐█▄▄▌
|
|
|
|
// ▀▀ █▪▀▀▀ ▀ ▀ ·▀▀▀▀ ▀▀▀·▀▀▀ ·▀▀▀▀ ▀ ▀ ▀▀ █▪ ▀▀▀
|
|
|
|
// Magicbane Emulator Project © 2013 - 2022
|
|
|
|
// www.magicbane.com
|
|
|
|
|
|
|
|
|
|
|
|
package engine.db.handlers;
|
|
|
|
|
|
|
|
import engine.Enum;
|
|
|
|
import engine.gameManager.DbManager;
|
|
|
|
import engine.objects.Petition;
|
|
|
|
import org.pmw.tinylog.Logger;
|
|
|
|
|
|
|
|
import java.sql.Connection;
|
|
|
|
import java.sql.PreparedStatement;
|
|
|
|
import java.sql.SQLException;
|
|
|
|
|
|
|
|
public class dbPetitionHandler extends dbHandlerBase {
|
|
|
|
|
|
|
|
public dbPetitionHandler() {
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
public void CREATE_PETITION_TABLE() {
|
|
|
|
|
|
|
|
try (Connection connection = DbManager.getConnection();
|
|
|
|
PreparedStatement preparedStatement = connection.prepareStatement("CREATE TABLE IF NOT EXISTS dyn_petition " +
|
|
|
|
" (petitionNumber INT AUTO_INCREMENT NOT NULL," +
|
|
|
|
" petitionTime DATETIME," +
|
|
|
|
" primaryType VARCHAR(50)," +
|
|
|
|
" subType VARCHAR(50)," +
|
|
|
|
" message VARCHAR(255)," +
|
|
|
|
" accountID INT," +
|
|
|
|
" accountName VARCHAR(255)," +
|
|
|
|
" characterID INT," +
|
|
|
|
" characterName VARCHAR(255)," +
|
|
|
|
" location VARCHAR(255), " +
|
|
|
|
" PRIMARY KEY (petitionNumber))" +
|
|
|
|
" ENGINE = innodb ROW_FORMAT = DEFAULT;")) {
|
|
|
|
|
|
|
|
preparedStatement.executeUpdate();
|
|
|
|
|
|
|
|
} catch (SQLException e) {
|
|
|
|
Logger.error(e);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
public void WRITE_PETITION_TO_TABLE(Petition petition) {
|
|
|
|
|
|
|
|
try (Connection connection = DbManager.getConnection();
|
|
|
|
|
|
|
|
//check that table exists
|
|
|
|
|
|
|
|
PreparedStatement preparedStatement = connection.prepareStatement("INSERT INTO `dyn_petition` (`petitionTime`, `primaryType`, `subType`, `accountID`, `accountName`, `characterID`, `characterName`, `location`, `message`)" +
|
|
|
|
" VALUES (?,?,?,?,?,?,?,?,?);")) {
|
|
|
|
|
|
|
|
preparedStatement.setTimestamp(1, new java.sql.Timestamp(System.currentTimeMillis()));
|
|
|
|
preparedStatement.setString(2, Enum.PetitionType.values()[petition.primaryType].name());
|
|
|
|
preparedStatement.setString(3, Enum.PetitionSubType.values()[petition.subType].name());
|
|
|
|
preparedStatement.setInt(4, petition.reportAccount.getObjectUUID());
|
|
|
|
preparedStatement.setString(5, petition.reportAccount.getUname());
|
|
|
|
preparedStatement.setInt(6, petition.reportPlayer.getObjectUUID());
|
|
|
|
preparedStatement.setString(7, petition.reportPlayer.getFirstName());
|
|
|
|
preparedStatement.setString(8, petition.playerLocation.toString());
|
|
|
|
|
|
|
|
String messageCleaned = petition.message.substring(0, Math.min(petition.message.length(), 255));
|
|
|
|
preparedStatement.setString(9, messageCleaned);
|
|
|
|
|
|
|
|
preparedStatement.executeUpdate();
|
|
|
|
|
|
|
|
} catch (SQLException e) {
|
|
|
|
Logger.error("CREATE PETITION FAILED: " + e);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|