finished customizable grade rarities
This commit is contained in:
@@ -67,6 +67,7 @@ const userDataDB = DatabaseStruct("user_data", {
|
||||
"todo_items": String, "self_notes": String,
|
||||
// v5 shit
|
||||
"roundings": String,
|
||||
"grade_rarities": String,
|
||||
});
|
||||
|
||||
Future<void> createTable(Database db, DatabaseStruct struct) =>
|
||||
@@ -128,6 +129,7 @@ Future<Database> initDB(DatabaseProvider database) async {
|
||||
"todo_items": "{}", "self_notes": "[]",
|
||||
// v5 shit
|
||||
"roundings": "{}",
|
||||
"grade_rarities": "{}",
|
||||
});
|
||||
} catch (error) {
|
||||
print("ERROR: migrateDB: $error");
|
||||
|
||||
@@ -316,4 +316,14 @@ class UserDatabaseQuery {
|
||||
return (jsonDecode(roundingsJson) as Map)
|
||||
.map((key, value) => MapEntry(key.toString(), value.toString()));
|
||||
}
|
||||
|
||||
Future<Map<String, String>> getGradeRarities({required String userId}) async {
|
||||
List<Map> userData =
|
||||
await db.query("user_data", where: "id = ?", whereArgs: [userId]);
|
||||
if (userData.isEmpty) return {};
|
||||
String? raritiesJson = userData.elementAt(0)["grade_rarities"] as String?;
|
||||
if (raritiesJson == null) return {};
|
||||
return (jsonDecode(raritiesJson) as Map)
|
||||
.map((key, value) => MapEntry(key.toString(), value.toString()));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -201,4 +201,11 @@ class UserDatabaseStore {
|
||||
await db.update("user_data", {"roundings": roundingsJson},
|
||||
where: "id = ?", whereArgs: [userId]);
|
||||
}
|
||||
|
||||
Future<void> storeGradeRarities(Map<String, String> rarities,
|
||||
{required String userId}) async {
|
||||
String raritiesJson = jsonEncode(rarities);
|
||||
await db.update("user_data", {"grade_rarities": raritiesJson},
|
||||
where: "id = ?", whereArgs: [userId]);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user