mirror of
				https://gitlab.com/comunic/comunicmobile
				synced 2025-11-04 12:14:11 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			34 lines
		
	
	
		
			865 B
		
	
	
	
		
			Dart
		
	
	
	
	
	
			
		
		
	
	
			34 lines
		
	
	
		
			865 B
		
	
	
	
		
			Dart
		
	
	
	
	
	
import 'package:comunic/models/group.dart';
 | 
						|
 | 
						|
/// Group membership information
 | 
						|
///
 | 
						|
/// @author Pierre Hubert
 | 
						|
 | 
						|
class GroupMembership {
 | 
						|
  final int userID;
 | 
						|
  final int groupID;
 | 
						|
  final int timeCreate;
 | 
						|
  final GroupMembershipLevel level;
 | 
						|
 | 
						|
  const GroupMembership({
 | 
						|
    required this.userID,
 | 
						|
    required this.groupID,
 | 
						|
    required this.timeCreate,
 | 
						|
    required this.level,
 | 
						|
  })  : assert(userID != null),
 | 
						|
        assert(groupID != null),
 | 
						|
        assert(timeCreate != null),
 | 
						|
        assert(level != null);
 | 
						|
 | 
						|
  String get membershipText => membershipToText(level);
 | 
						|
 | 
						|
  bool get isAtLeastMember =>
 | 
						|
      level == GroupMembershipLevel.ADMINISTRATOR ||
 | 
						|
      level == GroupMembershipLevel.MODERATOR ||
 | 
						|
      level == GroupMembershipLevel.MEMBER;
 | 
						|
 | 
						|
  bool get isPending => level == GroupMembershipLevel.PENDING;
 | 
						|
 | 
						|
  bool get isInvited => level == GroupMembershipLevel.INVITED;
 | 
						|
}
 |