mirror of
https://gitlab.com/comunic/comunicmobile
synced 2025-06-19 00:05:16 +00:00
Can change group name
This commit is contained in:
@ -3,6 +3,7 @@ import 'package:comunic/models/advanced_group_info.dart';
|
||||
import 'package:comunic/models/api_request.dart';
|
||||
import 'package:comunic/models/group.dart';
|
||||
import 'package:comunic/utils/api_utils.dart';
|
||||
import 'package:comunic/utils/map_utils.dart';
|
||||
|
||||
/// Groups helper
|
||||
///
|
||||
@ -192,6 +193,29 @@ class GroupsHelper {
|
||||
return groupInfo.info;
|
||||
}
|
||||
|
||||
/// Update (set) new group settings
|
||||
///
|
||||
/// Throws in case of error
|
||||
static Future<void> setSettings(AdvancedGroupInfo settings) async {
|
||||
await APIRequest(uri: "groups/set_settings", needLogin: true)
|
||||
.addInt("id", settings.id)
|
||||
.addString("name", settings.name)
|
||||
.addString("virtual_directory", settings.virtualDirectory)
|
||||
.addString("visibility",
|
||||
invertMap(_APIGroupsVisibilityLevelsMap)[settings.visibilityLevel])
|
||||
.addString(
|
||||
"registration_level",
|
||||
invertMap(
|
||||
_APIGroupsRegistrationLevelsMap)[settings.registrationLevel])
|
||||
.addString(
|
||||
"posts_level",
|
||||
invertMap(
|
||||
_APIGroupsPostsCreationLevelsMap)[settings.postCreationLevel])
|
||||
.addString("description", settings.description)
|
||||
.addString("url", settings.url)
|
||||
.execWithThrow();
|
||||
}
|
||||
|
||||
/// Turn an API entry into a group object
|
||||
Group _getGroupFromAPI(Map<String, dynamic> map) {
|
||||
return Group(
|
||||
@ -224,7 +248,7 @@ class GroupsHelper {
|
||||
following: map["following"],
|
||||
timeCreate: map["time_create"],
|
||||
description: map["description"],
|
||||
url: map["url"],
|
||||
url: map["url"] == "null" ? "" : map["url"],
|
||||
likes: map["number_likes"],
|
||||
userLike: map["is_liking"],
|
||||
);
|
||||
|
Reference in New Issue
Block a user