import 'package:jiffy/jiffy.dart'; import '../incomingPacket.dart'; class TalkContact { String name; String lastMessage; String lastTime; String profilePicture; bool unreadMessages; bool isGroup; String userToken; TalkContact(this.name, this.lastMessage, this.lastTime, this.profilePicture, this.unreadMessages, this.isGroup, this.userToken); } class TalkContactsPaket extends IncomingPacket { TalkContactsPaket() : super('talkContacts'); List<TalkContact> _contacts = List<TalkContact>.empty(growable: true); List<TalkContact> get contacts => _contacts; @override void handle(data) { _contacts = List<TalkContact>.empty(growable: true); //data["ocs"]["data"].sort((a, b) => a['lastActivity'].compareTo(b['lastActivity'])); data.forEach((value) async { await Jiffy.locale("de"); _contacts.add( TalkContact( value['displayName'], value['lastMessage']['message'], Jiffy(DateTime.fromMillisecondsSinceEpoch(value['lastActivity'] * 1000)).fromNow(), value['name'] != null ? "https://cloud.marianum-fulda.de/avatar/${value['name']}/128" : "", value['unreadMessages'] > 0, value['type'] != 1, value['token'] ) ); }); } }