Added emoji modifiers to Gallery model/controller

This commit is contained in:
Aleksei 2020-06-28 12:25:18 -04:00
parent 73e41b6c97
commit 3e7fad6410
2 changed files with 24 additions and 5 deletions

View File

@ -55,15 +55,16 @@ public class GalleryController {
} }
}); });
} }
// TODO: Refactor for proper Java-ing, add GalleryBuilder
private static void insertExec(GalleryChannel gallery) throws SQLException { private static void insertExec(GalleryChannel gallery) throws SQLException {
FSDB.get().insert("INSERT INTO galleries('server_id', 'server_name', 'channel_id', 'channel_name', 'tag')" + FSDB.get().insert("INSERT INTO galleries('server_id', 'server_name', 'channel_id', 'channel_name', 'tag', 'emoji')" +
"VALUES(?, ?, ?, ?, ?)", "VALUES(?, ?, ?, ?, ?)",
gallery.serverId, gallery.serverId,
gallery.serverName, gallery.serverName,
gallery.channelId, gallery.channelId,
gallery.channelName, gallery.channelName,
gallery.tag gallery.tag,
gallery.emoji
); );
} }
@ -95,6 +96,14 @@ public class GalleryController {
return tag; return tag;
} }
private static String getEmojiExec(String channelId) throws SQLException {
ResultSet rs = FSDB.get().select("SELECT * FROM galleries WHERE channel_id = ?");
String emoji = rs.getString("emoji");
FSDB.get().close(rs);
return emoji;
}
private static GalleryChannel mapObject(ResultSet rs) throws SQLException { // TODO: Builder this private static GalleryChannel mapObject(ResultSet rs) throws SQLException { // TODO: Builder this
GalleryChannel gallery = new GalleryChannel(); GalleryChannel gallery = new GalleryChannel();
gallery.serverId = rs.getString("server_id"); gallery.serverId = rs.getString("server_id");
@ -102,6 +111,7 @@ public class GalleryController {
gallery.channelId = rs.getString("channel_id"); gallery.channelId = rs.getString("channel_id");
gallery.channelName = rs.getString("channel_name"); gallery.channelName = rs.getString("channel_name");
gallery.tag = rs.getString("tag"); gallery.tag = rs.getString("tag");
gallery.emoji = rs.getString("emoji");
return gallery; return gallery;
} }

View File

@ -13,6 +13,10 @@ public class GalleryChannel extends DatabaseModel {
public String channelId; public String channelId;
public String channelName; public String channelName;
public String tag; public String tag;
// Normal emojis will be stored in plain text as :emoji:
// Server emojis will be stored in plain text as <:emoji:emoji-id>
// This can be acquired through CustomEmoji#getMentionTag()
public String emoji;
public GalleryChannel() { public GalleryChannel() {
@ -38,18 +42,23 @@ public class GalleryChannel extends DatabaseModel {
return tag; return tag;
} }
public String getEmoji() {
return emoji;
}
public static String schema() { public static String schema() {
return "CREATE TABLE IF NOT EXISTS galleries (" + return "CREATE TABLE IF NOT EXISTS galleries (" +
"server_id TEXT," + "server_id TEXT," +
"server_name TEXT," + "server_name TEXT," +
"channel_id TEXT," + // TODO: PRIMARY KEY? There can only be one gallery per channel. "channel_id TEXT," + // TODO: PRIMARY KEY? There can only be one gallery per channel.
"channel_name TEXT," + "channel_name TEXT," +
"emoji TEXT," +
"tag TEXT)"; "tag TEXT)";
} }
@Override @Override
public String toString() { public String toString() {
return String.format("Gallery: [server id: %s, server name: %s, channel id: %s, channel name: %s, tag: %s]", return String.format("Gallery: [server id: %s, server name: %s, channel id: %s, channel name: %s, tag: %s, emoji: %s]",
serverId, serverName, channelId, channelName, tag); serverId, serverName, channelId, channelName, tag, emoji);
} }
} }