summaryrefslogtreecommitdiff
path: root/modules/botserv
diff options
context:
space:
mode:
authorSadie Powell <sadie@witchery.services>2024-08-14 02:40:48 +0100
committerSadie Powell <sadie@witchery.services>2024-08-14 05:47:55 +0100
commit528b5938ec71abed396248cf5e00f346e685aaea (patch)
treee923fed32be3fb62f946d44c633cd85ce855550b /modules/botserv
parent03bee1706383d2766923e5d8edbb90d7ad1948b6 (diff)
Automatically determine SQL column type from the field.
Also add more column types to ensure we are storing data in the best format in the database.
Diffstat (limited to 'modules/botserv')
-rw-r--r--modules/botserv/bs_badwords.cpp6
-rw-r--r--modules/botserv/bs_kick.cpp39
2 files changed, 24 insertions, 21 deletions
diff --git a/modules/botserv/bs_badwords.cpp b/modules/botserv/bs_badwords.cpp
index e72e32a6e..2396a91c6 100644
--- a/modules/botserv/bs_badwords.cpp
+++ b/modules/botserv/bs_badwords.cpp
@@ -21,9 +21,9 @@ struct BadWordImpl final
void Serialize(Serialize::Data &data) const override
{
- data["ci"] << this->chan;
- data["word"] << this->word;
- data.SetType("type", Serialize::Data::DT_INT); data["type"] << this->type;
+ data.Store("ci", this->chan);
+ data.Store("word", this->word);
+ data.Store("type", this->type);
}
static Serializable *Unserialize(Serializable *obj, Serialize::Data &);
diff --git a/modules/botserv/bs_kick.cpp b/modules/botserv/bs_kick.cpp
index f2a39dbf1..ba2ace0dd 100644
--- a/modules/botserv/bs_kick.cpp
+++ b/modules/botserv/bs_kick.cpp
@@ -53,25 +53,28 @@ struct KickerDataImpl final
if (kd == NULL)
return;
- data.SetType("kickerdata:amsgs", Serialize::Data::DT_INT); data["kickerdata:amsgs"] << kd->amsgs;
- data.SetType("kickerdata:badwords", Serialize::Data::DT_INT); data["kickerdata:badwords"] << kd->badwords;
- data.SetType("kickerdata:bolds", Serialize::Data::DT_INT); data["kickerdata:bolds"] << kd->bolds;
- data.SetType("kickerdata:caps", Serialize::Data::DT_INT); data["kickerdata:caps"] << kd->caps;
- data.SetType("kickerdata:colors", Serialize::Data::DT_INT); data["kickerdata:colors"] << kd->colors;
- data.SetType("kickerdata:flood", Serialize::Data::DT_INT); data["kickerdata:flood"] << kd->flood;
- data.SetType("kickerdata:italics", Serialize::Data::DT_INT); data["kickerdata:italics"] << kd->italics;
- data.SetType("kickerdata:repeat", Serialize::Data::DT_INT); data["kickerdata:repeat"] << kd->repeat;
- data.SetType("kickerdata:reverses", Serialize::Data::DT_INT); data["kickerdata:reverses"] << kd->reverses;
- data.SetType("kickerdata:underlines", Serialize::Data::DT_INT); data["kickerdata:underlines"] << kd->underlines;
- data.SetType("capsmin", Serialize::Data::DT_INT); data["capsmin"] << kd->capsmin;
- data.SetType("capspercent", Serialize::Data::DT_INT); data["capspercent"] << kd->capspercent;
- data.SetType("floodlines", Serialize::Data::DT_INT); data["floodlines"] << kd->floodlines;
- data.SetType("floodsecs", Serialize::Data::DT_INT); data["floodsecs"] << kd->floodsecs;
- data.SetType("repeattimes", Serialize::Data::DT_INT); data["repeattimes"] << kd->repeattimes;
- data.SetType("dontkickops", Serialize::Data::DT_INT); data["dontkickops"] << kd->dontkickops;
- data.SetType("dontkickvoices", Serialize::Data::DT_INT); data["dontkickvoices"] << kd->dontkickvoices;
+ data.Store("kickerdata:amsgs", kd->amsgs);
+ data.Store("kickerdata:badwords", kd->badwords);
+ data.Store("kickerdata:bolds", kd->bolds);
+ data.Store("kickerdata:caps", kd->caps);
+ data.Store("kickerdata:colors", kd->colors);
+ data.Store("kickerdata:flood", kd->flood);
+ data.Store("kickerdata:italics", kd->italics);
+ data.Store("kickerdata:repeat", kd->repeat);
+ data.Store("kickerdata:reverses", kd->reverses);
+ data.Store("kickerdata:underlines", kd->underlines);
+ data.Store("capsmin", kd->capsmin);
+ data.Store("capspercent", kd->capspercent);
+ data.Store("floodlines", kd->floodlines);
+ data.Store("floodsecs", kd->floodsecs);
+ data.Store("repeattimes", kd->repeattimes);
+ data.Store("dontkickops", kd->dontkickops);
+ data.Store("dontkickvoices", kd->dontkickvoices);
+
+ std::ostringstream oss;
for (auto ttbtype : kd->ttb)
- data["ttb"] << ttbtype << " ";
+ oss << ttbtype << " ";
+ data.Store("ttb", oss.str());
}
void ExtensibleUnserialize(Extensible *e, Serializable *s, Serialize::Data &data) override