Implement user-deletion
This commit is contained in:
parent
8c0f0e3e8f
commit
3239a075fb
@ -179,6 +179,16 @@ class APIClient {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static Future<User> deleteUser(TokenSource auth, String uid) async {
|
||||||
|
return await _request(
|
||||||
|
name: 'deleteUser',
|
||||||
|
method: 'DELETE',
|
||||||
|
relURL: 'users/$uid',
|
||||||
|
fn: User.fromJson,
|
||||||
|
authToken: auth.getToken(),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
static Future<Client> addClient(TokenSource auth, String fcmToken, String agentModel, String agentVersion, String? name, String clientType) async {
|
static Future<Client> addClient(TokenSource auth, String fcmToken, String agentModel, String agentVersion, String? name, String clientType) async {
|
||||||
return await _request(
|
return await _request(
|
||||||
name: 'addClient',
|
name: 'addClient',
|
||||||
|
@ -503,7 +503,22 @@ class _AccountRootPageState extends State<AccountRootPage> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void _deleteAccount() async {
|
void _deleteAccount() async {
|
||||||
// TODO
|
final acc = AppAuth();
|
||||||
|
if (!acc.isAuth()) return;
|
||||||
|
|
||||||
|
try {
|
||||||
|
await APIClient.deleteUser(acc, acc.userID!);
|
||||||
|
|
||||||
|
Toaster.info('Logout', 'Successfully logged out');
|
||||||
|
|
||||||
|
acc.clear();
|
||||||
|
await acc.save();
|
||||||
|
|
||||||
|
//TODO clear messages/channels/etc in open views
|
||||||
|
} catch (exc, trace) {
|
||||||
|
Toaster.error("Error", 'Failed to delete user');
|
||||||
|
ApplicationLog.error('Failed to delete user: ' + exc.toString(), trace: trace);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void _changeUsername() async {
|
void _changeUsername() async {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user