redesigned payment page + a lot of fixes
This commit is contained in:
@@ -4,6 +4,7 @@ import 'package:share_plus/share_plus.dart';
|
||||
|
||||
import 'package:pshared/api/errors/unauthorized.dart';
|
||||
import 'package:pshared/api/responses/organization.dart';
|
||||
import 'package:pshared/models/describable.dart';
|
||||
import 'package:pshared/models/organization/organization.dart';
|
||||
import 'package:pshared/data/mapper/organization.dart';
|
||||
import 'package:pshared/service/authorization/service.dart';
|
||||
@@ -41,6 +42,40 @@ class OrganizationService {
|
||||
);
|
||||
}
|
||||
|
||||
static Future<Organization> updateSettings(
|
||||
Organization organization, {
|
||||
String? name,
|
||||
String? description,
|
||||
String? timeZone,
|
||||
String? logoUrl,
|
||||
}) async {
|
||||
_logger.fine('Updating organization settings ${organization.id}');
|
||||
final updatedDescribable = (name != null || description != null)
|
||||
? organization.describable.copyWith(
|
||||
name: name,
|
||||
description: description != null ? () => description : null,
|
||||
)
|
||||
: organization.describable;
|
||||
|
||||
final updatedOrg = organization.copyWith(
|
||||
describable: updatedDescribable,
|
||||
timeZone: timeZone,
|
||||
logoUrl: logoUrl != null ? () => logoUrl : null,
|
||||
);
|
||||
|
||||
final updated = await update(updatedOrg);
|
||||
return updated.firstWhere(
|
||||
(org) => org.id == organization.id,
|
||||
orElse: () => updated.first,
|
||||
);
|
||||
}
|
||||
|
||||
static Future<Organization> uploadLogoAndUpdate(Organization organization, XFile logoFile) async {
|
||||
_logger.fine('Uploading logo for organization ${organization.id}');
|
||||
final url = await uploadLogo(organization.id, logoFile);
|
||||
return updateSettings(organization, logoUrl: url);
|
||||
}
|
||||
|
||||
static Future<String> uploadLogo(String organizationRef, XFile logoFile) async {
|
||||
_logger.fine('Uploading logo');
|
||||
return FilesService.uploadImage(_objectType, organizationRef, logoFile);
|
||||
|
||||
Reference in New Issue
Block a user