mirror of
https://gitlab.com/comunic/comunicmobile
synced 2024-12-26 12:58:51 +00:00
Can change group members visibility settings
This commit is contained in:
parent
bd548fe532
commit
6d1fc388d0
@ -4,14 +4,14 @@
|
||||
|
||||
// ignore_for_file: lines_longer_than_80_chars
|
||||
|
||||
// ignore: implementation_imports
|
||||
import 'package:file_picker/src/file_picker_web.dart';
|
||||
import 'package:flutter_web_plugins/flutter_web_plugins.dart';
|
||||
import 'package:shared_preferences_web/shared_preferences_web.dart';
|
||||
import 'package:url_launcher_web/url_launcher_web.dart';
|
||||
import 'package:video_player_web/video_player_web.dart';
|
||||
import 'package:wakelock_web/wakelock_web.dart';
|
||||
|
||||
import 'package:flutter_web_plugins/flutter_web_plugins.dart';
|
||||
|
||||
// ignore: public_member_api_docs
|
||||
void registerPlugins(Registrar registrar) {
|
||||
FilePickerWeb.registerWith(registrar);
|
||||
|
@ -236,6 +236,7 @@ class GroupsHelper {
|
||||
"posts_level",
|
||||
invertMap(
|
||||
_APIGroupsPostsCreationLevelsMap)[settings.postCreationLevel])
|
||||
.addBool("is_members_list_public", settings.isMembersListPublic)
|
||||
.addString("description", settings.description)
|
||||
.addString("url", settings.url)
|
||||
.execWithThrow();
|
||||
@ -356,6 +357,7 @@ class GroupsHelper {
|
||||
registrationLevel:
|
||||
_APIGroupsRegistrationLevelsMap[map["registration_level"]],
|
||||
postCreationLevel: _APIGroupsPostsCreationLevelsMap[map["posts_level"]],
|
||||
isMembersListPublic: map["is_members_list_public"],
|
||||
virtualDirectory: nullToEmpty(map["virtual_directory"]),
|
||||
following: map["following"],
|
||||
timeCreate: map["time_create"],
|
||||
|
@ -9,6 +9,7 @@ import 'group.dart';
|
||||
/// @author Pierre Hubert
|
||||
|
||||
class AdvancedGroupInfo extends Group implements LikeElement {
|
||||
bool isMembersListPublic;
|
||||
final int timeCreate;
|
||||
String description;
|
||||
String url;
|
||||
@ -26,6 +27,7 @@ class AdvancedGroupInfo extends Group implements LikeElement {
|
||||
@required GroupPostCreationLevel postCreationLevel,
|
||||
@required String virtualDirectory,
|
||||
@required bool following,
|
||||
@required this.isMembersListPublic,
|
||||
@required this.timeCreate,
|
||||
@required this.description,
|
||||
@required this.url,
|
||||
|
@ -88,6 +88,14 @@ class AboutGroupSection extends StatelessWidget {
|
||||
? tr("Private group")
|
||||
: tr("Open group"))),
|
||||
),
|
||||
|
||||
// Group members visibility
|
||||
ListTile(
|
||||
leading: Icon(Icons.remove_red_eye),
|
||||
title: Text(tr("Members list visibility")),
|
||||
subtitle:
|
||||
Text(group.isMembersListPublic ? tr("Public") : tr("Private")),
|
||||
),
|
||||
],
|
||||
);
|
||||
}
|
||||
|
@ -243,6 +243,16 @@ class _GroupSettingsScreenState extends SafeState<GroupSettingsScreen> {
|
||||
_groupSettings.postCreationLevel = s;
|
||||
_updateSettings();
|
||||
}),
|
||||
|
||||
// Groups members list visibility
|
||||
SettingsTile.switchTile(
|
||||
title: tr("Make members list public"),
|
||||
onToggle: (s) {
|
||||
_groupSettings.isMembersListPublic = s;
|
||||
_updateSettings();
|
||||
},
|
||||
switchValue: _groupSettings.isMembersListPublic,
|
||||
)
|
||||
],
|
||||
);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user