Initial commit

This commit is contained in:
2023-01-22 19:44:38 +01:00
parent 021bc02992
commit 1baa8028fa
164 changed files with 6587 additions and 2 deletions

View File

@ -0,0 +1,19 @@
import 'dart:developer';
import 'package:marianum_mobile/data/incomingPacket.dart';
import 'package:shared_preferences/shared_preferences.dart';
class AuthenticatePacket extends IncomingPacket {
AuthenticatePacket() : super("authenticate");
@override
void handle(data) {
SharedPreferences.getInstance().then((value) => {
invoke(data: {
'username': value.getString("username"),
'password': value.getString("password")
})
});
}
}

View File

@ -0,0 +1,29 @@
import 'package:marianum_mobile/data/incomingPacket.dart';
class FileEntry {
String name;
bool isFolder;
String path;
FileEntry(this.name, this.isFolder, this.path);
}
class FileListPacket extends IncomingPacket {
FileListPacket() : super("fileList");
List<FileEntry> _entries = List<FileEntry>.empty(growable: true);
List<FileEntry> get entries => _entries;
String _lastPath = "/";
String get lastPath => _lastPath;
@override
void handle(data) {
_entries = List<FileEntry>.empty(growable: true);
_lastPath = data['backLink'];
data['files'].forEach((value) => {
_entries.add(FileEntry(value['name'], value['is_folder'], value['path']))
});
}
}

View File

@ -0,0 +1,28 @@
import 'dart:convert';
import 'package:flutter/cupertino.dart';
import 'package:marianum_mobile/data/socketConnection.dart';
import '../incomingPacket.dart';
class ServerInfoPacket extends IncomingPacket {
ServerInfoPacket() : super('serverInfo');
String _serverName = "Unbekannt";
String _serverOwner = "Unbekannt";
String _serverVersion = "?";
String _legal = "Keine";
String get serverName => _serverName;
String get serverOwner => _serverOwner;
String get serverVersion => _serverVersion;
String get legal => _legal;
@override
void handle(data) {
_serverName = data['name'];
_serverOwner = data['owner'];
_serverVersion = data['version'];
_legal = data['legal'];
}
}

View File

@ -0,0 +1,26 @@
import 'package:marianum_mobile/data/incomingPacket.dart';
class TalkMessage {
bool self;
String sender;
String content;
String date;
TalkMessage(this.self, this.sender, this.content, this.date);
}
class TalkChatPacket extends IncomingPacket {
TalkChatPacket() : super("talkChat");
List<TalkMessage> _messages = List<TalkMessage>.empty(growable: true);
List<TalkMessage> get messages => _messages;
@override
void handle(data) {
_messages = List<TalkMessage>.empty(growable: true);
print(data);
data.forEach((message) => {
_messages.add(TalkMessage(true, message['actorId'], message['message'], message['timestamp']))
});
}
}

View File

@ -0,0 +1,46 @@
import 'dart:convert';
import 'package:intl/intl.dart';
import 'package:jiffy/jiffy.dart';
import 'package:marianum_mobile/data/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']
)
);
});
}
}

View File

@ -0,0 +1,13 @@
import 'package:marianum_mobile/data/incomingPacket.dart';
class TalkNotificationsPacket extends IncomingPacket {
TalkNotificationsPacket() : super("talkNotifications");
int _amount = 0;
int get amount => _amount;
@override
void handle(data) {
_amount = data['amount'];
}
}