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:
38
lib/helpers/settings_helper.dart
Normal file
38
lib/helpers/settings_helper.dart
Normal 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;
|
||||
}
|
Reference in New Issue
Block a user