import 'dart:convert'; import 'package:intl/intl.dart'; 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 _contacts = List.empty(growable: true); List get contacts => _contacts; @override void handle(data) { _contacts = List.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'] ) ); }); } }