1
0
mirror of https://gitlab.com/comunic/comunicmobile synced 2025-06-19 00:05:16 +00:00

Can update conversation settings from mobile application

This commit is contained in:
2021-04-11 14:31:38 +02:00
parent f546cdb060
commit 15ba251440
4 changed files with 117 additions and 0 deletions

View File

@ -4,6 +4,7 @@ import 'package:comunic/models/api_request.dart';
import 'package:comunic/models/data_conservation_policy_settings.dart';
import 'package:comunic/models/general_settings.dart';
import 'package:comunic/models/new_emoji.dart';
import 'package:comunic/models/notifications_settings.dart';
import 'package:comunic/models/security_settings.dart';
import '../models/api_request.dart';
@ -232,4 +233,28 @@ class SettingsHelper {
.addInt("likes_lifetime", newSettings.likesLifetime ?? 0)
.execWithThrow();
}
/// Get notifications settings
///
/// Throws in case of failure
static Future<NotificationsSettings> getNotificationsSettings() async {
final response = await APIRequest.withLogin("settings/get_notifications")
.execWithThrowGetObject();
return NotificationsSettings(
allowConversations: response["allow_conversations"],
allowNotificationsSound: response["allow_notifications_sound"],
);
}
/// Apply new notifications settings
///
/// Throws in case of failure
static Future<void> setNotificationsSettings(
NotificationsSettings settings) async =>
await APIRequest.withLogin("settings/set_notifications")
.addBool(
"allow_notifications_sound", settings.allowNotificationsSound)
.addBool("allow_conversations", settings.allowConversations)
.execWithThrow();
}