1
0
mirror of https://gitlab.com/comunic/comunicmobile synced 2025-06-19 00:05:16 +00:00

Can upload new account image

This commit is contained in:
2020-04-16 19:16:44 +02:00
parent 7071600c3f
commit 8feea380a4
6 changed files with 243 additions and 10 deletions

View File

@ -0,0 +1,38 @@
import 'dart:io';
import 'package:comunic/models/account_image_settings.dart';
import 'package:comunic/models/api_request.dart';
/// Settings helper
///
/// @author Pierre Hubert
const _APIAccountImageVisibilityAPILevels = {
"open": AccountImageVisibilityLevels.EVERYONE,
"public": AccountImageVisibilityLevels.COMUNIC_USERS,
"friends": AccountImageVisibilityLevels.FRIENDS_ONLY,
};
class SettingsHelper {
/// Get & return account image settings
static Future<AccountImageSettings> getAccountImageSettings() async {
final response =
(await APIRequest(uri: "settings/get_account_image", needLogin: true)
.exec())
.assertOk()
.getObject();
return AccountImageSettings(
hasImage: response["has_image"],
imageURL: response["image_url"],
visibility:
_APIAccountImageVisibilityAPILevels[response["visibility"]]);
}
/// Upload a new account image
static Future<bool> uploadAccountImage(File newImage) async =>
(await APIRequest(uri: "settings/upload_account_image", needLogin: true)
.addFile("picture", newImage)
.execWithFiles())
.isOK;
}