ggurdin
2efd61bccd
4450 find course button overflow with german l1 ( #4488 )
...
* fix: text overflow in add course page German buttons
* feat: show warning popup when user selects course plan in new course page if user is already in a course with the same ID
* use firstWhereOrNull for room search
2025-10-22 10:20:52 -04:00
ggurdin
34fb8614c1
chore: on no courses found for language, log error ( #4434 )
2025-10-16 11:34:13 -04:00
Copilot
0b40b1c7ea
Remove L1 (base language) display from course info chips ( #4378 )
...
* Initial plan
* Remove L1 display from courses
Co-authored-by: ggurdin <46800240+ggurdin@users.noreply.github.com>
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: ggurdin <46800240+ggurdin@users.noreply.github.com>
2025-10-14 12:14:33 -04:00
ggurdin
b9e0ac6ee4
fix: on load course topics, also load location media to get topic images ( #4376 )
2025-10-14 12:01:43 -04:00
ggurdin
512d7f566d
fix: reload space course after updating course state event, wait for … ( #4359 )
...
* fix: reload space course after updating course state event, wait for course ID update in sync after returning from add course to space function
* Update lib/pangea/course_settings/course_settings.dart
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-10-13 14:00:58 -04:00
ggurdin
096567ecf6
4354 room stuck indefinitely loading ( #4357 )
...
* fix: stop loading course if course plan provider if courseId is null
* don't allow padding of null string to loadCoursePlan
2025-10-13 13:30:55 -04:00
ggurdin
d4b5d6d059
fix: filter courses only by short lang code ( #4350 )
...
* fix: filter courses only by short lang code
* Update lib/pangea/course_creation/course_search_provider.dart
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update lib/pangea/login/pages/public_trip_page.dart
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* fix: always call setState on update target language filter
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-10-13 13:02:29 -04:00
ggurdin
261e28abb7
Organize course repos ( #4262 )
...
* integrate CoursePlansRepo.translateActivity, translateTopic, translateCoursePlan
* move translation functions to requisite files
* integrate translation endpoint
* refactor: reorganize course-related repos, add request and response model classes
* remove l2s from translation requests
* update translation request and response models, use translation endpoint to get course info, cache courses with L1s in cache key
* update topics repo to use translation endpoint
* use activity translation endpoint
* refactor: incremental loading of individual course info, account for discrepancy between translated IDs and original IDs
* incremental loading of course batches
* Update lib/pangea/course_plans/courses/course_plan_room_extension.dart
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* cleanup
* cleanup
* fix: some name changes
* formatting
---------
Co-authored-by: WilsonLe <leanhminh2907@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: wcjord <32568597+wcjord@users.noreply.github.com>
2025-10-13 11:36:24 -04:00
ggurdin
76b267b10d
chore: add create at and updated at fields to course plan model ( #4340 )
2025-10-10 16:17:40 -04:00
ggurdin
7348024bf7
fix: don't assume that list of IDs to fetch and list of fetched objects are the same length ( #4322 )
2025-10-10 10:45:09 -04:00
ggurdin
c13c2eb1f6
feat: add selected course page for public courses, redirect there on click public course, filter out already-joined public courses ( #4276 )
2025-10-08 10:32:05 -04:00
ggurdin
5f137361bd
4242 change course redirect ( #4245 )
...
* feat: connect with synapse public courses endpoint
* intergate course IDs into response model
* remove course redirect, update user's l2 on return to language selection page
* display on public courses page to go to page to make your own and display on make your on page to skip to rooms
2025-10-03 12:51:39 -04:00
ggurdin
027a1b7c41
fix: refresh expired course cache ( #4240 )
2025-10-03 11:22:12 -04:00
ggurdin
341c3ec125
fix: disable ping course participants button if there are no no-bot users in course to ping
2025-10-01 11:09:17 -04:00
ggurdin
5e35b70604
chore: on course search, always load course IDs from server ( #4174 )
2025-09-29 12:39:39 -04:00
ggurdin
a9510d26f0
4152 onboarding tweaks ( #4163 )
...
* filter courses by short lang codes
* reduce padding in course details page
* update home / registration routes
* refactor: replace find your people page with new course page from onboarding
2025-09-29 11:28:20 -04:00
ggurdin
152a716aa8
chore: use synapse room_preview to determine which activities users have completed ( #4078 )
2025-09-22 13:14:38 -04:00
ggurdin
d89d852488
chore: fix practice mode icon / border contrast ( #4067 )
2025-09-22 09:19:42 -04:00
Wilson
171c8c760b
update course plan repo search to correctly query ( #4065 )
2025-09-22 09:09:55 -04:00
ggurdin
d29d69892d
Playtest updates ( #4054 )
...
* update emoji mode icon and tooltip
* upload CMS url instead of uploading image bytes to matrix
* re-init subscription controller after setting account creation date
2025-09-19 12:59:15 -04:00
ggurdin
54918d4969
4036 playtest 91825 ( #4051 )
...
* chore: improve constrast in message practice
* fix typo
* chore: disable learning settings save button until change is made
* show word card on click vocab in activity dropdown
2025-09-19 12:04:48 -04:00
ggurdin
1b353afbac
feat: integrate room preview endpoint ( #4014 )
...
* feat: integrate room preview endpoint
* initial work for intermediary activity page
* Update lib/pangea/activity_sessions/activity_session_start/activity_session_start_page.dart
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update lib/pangea/activity_sessions/activity_session_start/activity_session_start_page.dart
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update lib/pangea/chat_settings/utils/room_summary_extension.dart
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* formatting
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-09-19 09:55:13 -04:00
ggurdin
1b3a97d8db
feat: add ability to add course to existing space ( #4037 )
2025-09-18 16:05:24 -04:00
ggurdin
414d28f78d
chore: don't allow hover of non-selectable activity participants items ( #4002 )
2025-09-16 13:08:12 -04:00
ggurdin
d166f40849
3988 activitycourse tweaks ( #3989 )
...
* chore: set course and activity descriptions
* chore: remove redundant results button
2025-09-15 13:46:11 -04:00
ggurdin
7ab96467b3
fix: fix calculation of completed activities ( #3986 )
2025-09-15 12:07:54 -04:00
ggurdin
6c05ffaf2a
feat: always show new tokens with green underlines ( #3984 )
2025-09-15 10:46:20 -04:00
ggurdin
47f4740e63
chore: topic is completed if user has finished number of activities equal to number of 2 person activities in topic ( #3983 )
2025-09-15 10:26:09 -04:00
ggurdin
7348e655f4
3962 usability test todos ( #3973 )
...
* in new course pages, show images
* in space analytics, if no available languages, pick user's l2
* chore: add cooldown on ping participants
* replace image loading icon with shimmer
2025-09-12 14:03:08 -04:00
ggurdin
ecbeb4c6f5
fix: always reload course on ID change ( #3969 )
2025-09-12 12:43:16 -04:00
ggurdin
40137c226a
some activity / invite page tweaks ( #3958 )
2025-09-12 10:12:12 -04:00
ggurdin
141d3c5175
reload space hierarchy on invite update ( #3949 )
2025-09-11 12:15:56 -04:00
Wilson
4680c186b0
fix: Correctly fetch activity images ( #3943 )
...
* fix fetching images and parsing url
* small fix for getting activity image URLs
---------
Co-authored-by: ggurdin <46800240+ggurdin@users.noreply.github.com>
Co-authored-by: ggurdin <ggurdin@gmail.com>
2025-09-11 11:32:58 -04:00
ggurdin
c04466fdca
3915 course chat view updates ( #3919 )
2025-09-10 11:10:13 -04:00
ggurdin
08eb8fe19f
fix: update payload accessToken on new login ( #3916 )
2025-09-09 13:01:03 -04:00
ggurdin
2d6e075707
chore: go to course settings tab after archiving activity, show check over completed activites ( #3913 )
2025-09-09 11:33:26 -04:00
ggurdin
29543ef4a3
fix: always initialize course info after fetching ( #3907 )
2025-09-09 10:08:32 -04:00
ggurdin
5ce2a787b4
3890 activity start page changes ( #3901 )
...
* comment out unreferenced files
* decouple courses, topics, and activities
* update start page
* disable 'join open session' button
2025-09-08 15:25:56 -04:00
ggurdin
85ac0317b8
chore: pass location image URL as topic image URL ( #3876 )
2025-09-04 14:25:17 -04:00
Wilson
e49681be91
feat: consume topic location media ( #3849 )
2025-09-03 11:07:41 -04:00
ggurdin
677e9ce594
3822 begin activity design implementation ( #3827 )
...
* file reorganization
* added activity summary widget to show in chat view and activity launch view
* more updates to activity sessions start page
* function to ping course
* remove duplicate loading of participants
* nav bar visibility changes
* add generalized image from url widget
* update bottom of screen activity status message and add summaries to chat event list
* scroll to summary on click
* show invited activity sessions in course chats view
2025-09-02 12:37:16 -04:00
Wilson
58e6aa3298
fix: add authorization header and web image fetch method for activity suggestion cards ( #3839 )
...
* add authorization header and web image fetch method for all activity images
* formatting
---------
Co-authored-by: ggurdin <ggurdin@gmail.com>
Co-authored-by: ggurdin <46800240+ggurdin@users.noreply.github.com>
2025-09-02 09:07:22 -04:00
WilsonLe
d2ce1761d4
fix course plans query
2025-08-29 21:13:44 +10:00
WilsonLe
5f12be32a0
refactor module to topics
2025-08-29 19:41:20 +10:00
Wilson
a62d9f8643
feat: courses repo ( #3777 )
2025-08-28 12:02:58 -04:00