diff --git a/assets/pangea/Avatar_1.png b/assets/pangea/Avatar_1.png deleted file mode 100644 index 6bb59107f..000000000 Binary files a/assets/pangea/Avatar_1.png and /dev/null differ diff --git a/assets/pangea/Avatar_2.png b/assets/pangea/Avatar_2.png deleted file mode 100644 index 78733639e..000000000 Binary files a/assets/pangea/Avatar_2.png and /dev/null differ diff --git a/assets/pangea/Avatar_3.png b/assets/pangea/Avatar_3.png deleted file mode 100644 index e38807d8c..000000000 Binary files a/assets/pangea/Avatar_3.png and /dev/null differ diff --git a/assets/pangea/Avatar_4.png b/assets/pangea/Avatar_4.png deleted file mode 100644 index ba23b31d2..000000000 Binary files a/assets/pangea/Avatar_4.png and /dev/null differ diff --git a/assets/pangea/Avatar_5.png b/assets/pangea/Avatar_5.png deleted file mode 100644 index 5deb9c218..000000000 Binary files a/assets/pangea/Avatar_5.png and /dev/null differ diff --git a/lib/pangea/common/widgets/url_image_widget.dart b/lib/pangea/common/widgets/url_image_widget.dart index ea3b6eef9..23874ab36 100644 --- a/lib/pangea/common/widgets/url_image_widget.dart +++ b/lib/pangea/common/widgets/url_image_widget.dart @@ -6,6 +6,7 @@ import 'package:cached_network_image/cached_network_image.dart'; import 'package:cached_network_image_platform_interface/cached_network_image_platform_interface.dart'; import 'package:shimmer/shimmer.dart'; +import 'package:fluffychat/pangea/common/config/environment.dart'; import 'package:fluffychat/widgets/matrix.dart'; import 'package:fluffychat/widgets/mxc_image.dart'; @@ -29,6 +30,12 @@ class ImageByUrl extends StatelessWidget { return replacement ?? const SizedBox(); } + final Map headers = {}; + if (imageUrl.toString().contains(Environment.cmsApi)) { + headers['Authorization'] = + 'Bearer ${MatrixState.pangeaController.userController.accessToken}'; + } + return SizedBox( width: width, height: width, @@ -70,10 +77,7 @@ class ImageByUrl extends StatelessWidget { error, ) => replacement ?? const SizedBox(), - httpHeaders: { - 'Authorization': - 'Bearer ${MatrixState.pangeaController.userController.accessToken}', - }, + httpHeaders: headers, imageRenderMethodForWeb: ImageRenderMethodForWeb.HttpGet, ), ), diff --git a/lib/pangea/login/pages/create_pangea_account_page.dart b/lib/pangea/login/pages/create_pangea_account_page.dart index e199c2d12..01c876976 100644 --- a/lib/pangea/login/pages/create_pangea_account_page.dart +++ b/lib/pangea/login/pages/create_pangea_account_page.dart @@ -2,11 +2,11 @@ import 'dart:async'; import 'dart:math'; import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; import 'package:go_router/go_router.dart'; import 'package:matrix/matrix.dart'; +import 'package:fluffychat/config/app_config.dart'; import 'package:fluffychat/l10n/l10n.dart'; import 'package:fluffychat/pangea/common/utils/error_handler.dart'; import 'package:fluffychat/pangea/common/widgets/error_indicator.dart'; @@ -32,14 +32,6 @@ class CreatePangeaAccountPageState extends State { Object? _profileError; Object? _courseError; - final List avatarPaths = const [ - "assets/pangea/Avatar_1.png", - "assets/pangea/Avatar_2.png", - "assets/pangea/Avatar_3.png", - "assets/pangea/Avatar_4.png", - "assets/pangea/Avatar_5.png", - ]; - @override void initState() { super.initState(); @@ -49,6 +41,8 @@ class CreatePangeaAccountPageState extends State { String? _spaceId; String? _courseLangCode; + String avatarPath(int num) => "avatar_$num.png"; + Future get _cachedLangCode => LangCodeRepo.get(); Future get _targetLangCode async => @@ -122,16 +116,10 @@ class CreatePangeaAccountPageState extends State { final client = Matrix.of(context).client; try { final random = Random(); - final selectedAvatarPath = - avatarPaths[random.nextInt(avatarPaths.length)]; - - final ByteData byteData = await rootBundle.load(selectedAvatarPath); - final Uint8List bytes = byteData.buffer.asUint8List(); - final file = MatrixFile( - bytes: bytes, - name: selectedAvatarPath, - ); - await client.setAvatar(file); + final selectedAvatarPath = avatarPath(random.nextInt(4) + 1); + final avatarUrl = + Uri.parse("${AppConfig.assetsBaseURL}/$selectedAvatarPath"); + await client.setAvatarUrl(client.userID!, avatarUrl); } catch (err, s) { ErrorHandler.logError( e: err,