Skip to content

Commit 1cc1dca

Browse files
authored
Merge pull request #564 from AOSSIE-Org/dev
Deploy v2.5 of Resonate App
2 parents c7360e1 + ba67c1f commit 1cc1dca

File tree

63 files changed

+7750
-964
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

63 files changed

+7750
-964
lines changed

ios/Runner/Info.plist

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
<array>
99
<string>hi</string>
1010
<string>en</string>
11+
<string>gu</string>
1112
</array>
1213
<key>CFBundleDisplayName</key>
1314
<string>Resonate</string>

l10n.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
11
arb-dir: lib/l10n
22
template-arb-file: app_en.arb
33
output-localization-file: app_localizations.dart
4+
supported-locales:
5+
- en
6+
- hi
47
untranslated-messages-file: untranslated.txt

lib/controllers/about_app_screen_controller.dart

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ class AboutAppScreenController extends GetxController {
3838
void onInit() {
3939
super.onInit();
4040
_loadPackageInfo();
41+
checkForUpdate(launchUpdateIfAvailable: false, isManualCheck: false);
4142
}
4243

4344
Future<void> _loadPackageInfo() async {

lib/controllers/auth_state_controller.dart

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,8 @@ import 'package:flutter_callkit_incoming/flutter_callkit_incoming.dart';
1010
import 'package:flutter_local_notifications/flutter_local_notifications.dart';
1111
import 'package:get/get.dart';
1212
import 'package:get_storage/get_storage.dart';
13-
import 'package:resonate/controllers/about_app_screen_controller.dart';
1413
import 'package:resonate/controllers/friend_calling_controller.dart';
1514
import 'package:resonate/controllers/friends_controller.dart';
16-
import 'package:resonate/controllers/about_app_screen_controller.dart';
1715
import 'package:resonate/controllers/upcomming_rooms_controller.dart';
1816
import 'package:resonate/controllers/tabview_controller.dart';
1917
import 'package:resonate/models/follower_user_model.dart';
@@ -53,6 +51,7 @@ class AuthStateController extends GetxController {
5351
late int ratingCount;
5452
late User appwriteUser;
5553
late List<FollowerUserModel> followerDocuments;
54+
late int reportsCount;
5655

5756
FlutterLocalNotificationsPlugin flutterLocalNotificationsPlugin =
5857
FlutterLocalNotificationsPlugin();
@@ -109,7 +108,7 @@ class AuthStateController extends GetxController {
109108
await setUserProfileData();
110109

111110
// ask for settings permissions
112-
NotificationSettings settings = await messaging.requestPermission(
111+
await messaging.requestPermission(
113112
alert: true,
114113
announcement: false,
115114
badge: true,
@@ -219,6 +218,8 @@ class AuthStateController extends GetxController {
219218
return FollowerUserModel.fromJson(e);
220219
}).toList() ??
221220
[];
221+
reportsCount =
222+
(userDataDoc.data['userReports'] as List<dynamic>?)?.length ?? 0;
222223
}
223224

224225
update();
@@ -235,8 +236,9 @@ class AuthStateController extends GetxController {
235236
Future<void> isUserLoggedIn() async {
236237
try {
237238
await setUserProfileData();
238-
if (Get.isRegistered<AboutAppScreenController>()) {
239-
Get.find<AboutAppScreenController>().checkForUpdate();
239+
if (reportsCount > 5) {
240+
Get.offNamed(AppRoutes.userBlockedScreen);
241+
return;
240242
}
241243
if (isUserProfileComplete == false) {
242244
Get.offNamed(AppRoutes.onBoarding);

lib/controllers/create_room_controller.dart

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,7 @@ class CreateRoomController extends GetxController {
7979
state: RoomState.live,
8080
myDocId: myDocId,
8181
isUserAdmin: true,
82+
reportedUsers: [],
8283
);
8384
Get.find<TabViewController>().openRoomSheet(room);
8485

lib/controllers/explore_story_controller.dart

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@ import 'package:get/get.dart';
1010
import 'package:meilisearch/meilisearch.dart';
1111
import 'package:resonate/controllers/auth_state_controller.dart';
1212
import 'package:resonate/models/chapter.dart';
13+
import 'package:resonate/models/live_chapter_attendees_model.dart';
14+
import 'package:resonate/models/live_chapter_model.dart';
1315
import 'package:resonate/models/resonate_user.dart';
1416
import 'package:resonate/models/story.dart';
1517
import 'package:resonate/services/appwrite_service.dart';
@@ -97,6 +99,9 @@ class ExploreStoryController extends GetxController {
9799
story.chapters = storyChapters;
98100
story.isLikedByCurrentUser.value = hasUserLiked;
99101
story.likesCount.value = likes;
102+
103+
final liveChapter = await fetchLiveChapterForStory(story.storyId);
104+
story.liveChapter = liveChapter;
100105
isLoadingStoryPage.value = false;
101106
}
102107

@@ -671,6 +676,34 @@ class ExploreStoryController extends GetxController {
671676
return currentStoryChapters;
672677
}
673678

679+
Future<LiveChapterModel?> fetchLiveChapterForStory(String storyId) async {
680+
List<Document> liveStoryDocuments = await databases
681+
.listDocuments(
682+
databaseId: storyDatabaseId,
683+
collectionId: liveChaptersCollectionId,
684+
queries: [Query.equal('storyId', storyId)],
685+
)
686+
.then((value) => value.documents);
687+
if (liveStoryDocuments.isEmpty) {
688+
return null;
689+
}
690+
691+
final attendeesDocument = await databases.getDocument(
692+
databaseId: userDatabaseID,
693+
collectionId: liveChapterAttendeesCollectionId,
694+
documentId: liveStoryDocuments.first.data['\$id'],
695+
);
696+
697+
final attendeesModel = LiveChapterAttendeesModel.fromJson(
698+
attendeesDocument.data,
699+
);
700+
final liveChapterModel = LiveChapterModel.fromJson(
701+
liveStoryDocuments.first.data,
702+
).copyWith(attendees: attendeesModel);
703+
704+
return liveChapterModel;
705+
}
706+
674707
Future<bool> checkIfStoryLikedByUser(String storyId) async {
675708
List<Document> userLikeDocuments = await databases
676709
.listDocuments(

0 commit comments

Comments
 (0)