From f23bd4b96cc5fa7fcc45407022b88ea3b618f9f5 Mon Sep 17 00:00:00 2001 From: rtldg <55846624+rtldg@users.noreply.github.com> Date: Tue, 21 Sep 2021 04:30:59 +0000 Subject: [PATCH] lowercase map names in db --- addons/sourcemod/scripting/include/shavit.inc | 7 +++++++ addons/sourcemod/scripting/shavit-core.sp | 12 ++++++++++++ 2 files changed, 19 insertions(+) diff --git a/addons/sourcemod/scripting/include/shavit.inc b/addons/sourcemod/scripting/include/shavit.inc index aae3db8e..0e78c840 100644 --- a/addons/sourcemod/scripting/include/shavit.inc +++ b/addons/sourcemod/scripting/include/shavit.inc @@ -100,6 +100,13 @@ enum Migration_FixOldCompletionCounts, // old completions accidentally started at 2 Migration_AddPrebuiltToMapZonesTable, // 15 Migration_AddPlaytime, + // sorry, this is kind of dumb but it's better than trying to manage which ones have + // finished and which tables exist etc etc in a transaction or a completion counter... + Migration_Lowercase_maptiers, + Migration_Lowercase_mapzones, + Migration_Lowercase_playertimes, + Migration_Lowercase_stagetimeswr, // 20 + Migration_Lowercase_startpositions, MIGRATIONS_END }; diff --git a/addons/sourcemod/scripting/shavit-core.sp b/addons/sourcemod/scripting/shavit-core.sp index 40f61ad4..e1a64d47 100644 --- a/addons/sourcemod/scripting/shavit-core.sp +++ b/addons/sourcemod/scripting/shavit-core.sp @@ -3135,6 +3135,11 @@ void ApplyMigration(int migration) case Migration_FixOldCompletionCounts: ApplyMigration_FixOldCompletionCounts(); case Migration_AddPrebuiltToMapZonesTable: ApplyMigration_AddPrebuiltToMapZonesTable(); case Migration_AddPlaytime: ApplyMigration_AddPlaytime(); + case Migration_Lowercase_maptiers: ApplyMigration_LowercaseMaps("maptiers", migration); + case Migration_Lowercase_mapzones: ApplyMigration_LowercaseMaps("mapzones", migration); + case Migration_Lowercase_playertimes: ApplyMigration_LowercaseMaps("playertimes", migration); + case Migration_Lowercase_stagetimeswr: ApplyMigration_LowercaseMaps("stagetimewrs", migration); + case Migration_Lowercase_startpositions: ApplyMigration_LowercaseMaps("startpositions", migration); } } @@ -3216,6 +3221,13 @@ public void SQL_Migration_AddPlaytime2222222_Callback(Database db, DBResultSet r gH_SQL.Query(SQL_TableMigrationSingleQuery_Callback, sQuery, Migration_AddPlaytime, DBPrio_High); } +void ApplyMigration_LowercaseMaps(const char[] table, int migration) +{ + char sQuery[192]; + FormatEx(sQuery, 192, "UPDATE `%s%s` SET map = LOWER(map);", gS_MySQLPrefix, table); + gH_SQL.Query(SQL_TableMigrationSingleQuery_Callback, sQuery, migration, DBPrio_High); +} + public void SQL_TableMigrationSingleQuery_Callback(Database db, DBResultSet results, const char[] error, any data) { InsertMigration(data);