c9dbc12a44
feat: fullscreen stream on admin home, fix card titles 2-line clamp
...
- Remove greeting for admin view, render stream fullscreen (no scroll)
- AdminHome: stream fills full viewport height via flex layout
- StreamEmbed: fills parent height instead of fixed aspect-ratio
- Set Twitch channel to lofigirl
- CourseCard: clamp title to 2 lines with fixed min-height
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-16 06:47:10 +03:00
bea5f78b6e
feat: add StreamEmbed widget, move course progress to footer corner
...
- Add StreamEmbed component supporting Twitch and YouTube embeds
with live badge, platform icon, aspect-ratio 16:9, external link
- Replace AudioPlayer on AdminHome with StreamEmbed (configure
channel name in streamConfig ref)
- Move course progress % to bottom-right footer corner alongside
price/cert badge; remove separate progress row above footer
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-16 06:32:25 +03:00
ab329301bf
feat: add AudioPlayer widget on home, fix CourseCard stats alignment
...
- Add AudioPlayer component with playlist, seek, volume, animated EQ
- Replace "Courses Created" section on AdminHome with AudioPlayer
- Fix CourseCard stats row: use flex-1 spacer so stats + footer are
always anchored to the bottom regardless of description length
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-16 06:26:30 +03:00
e9b26ee639
fix: remove hero banners, fix theme tokens, align course card stats
...
- Remove dark gradient hero sections from Courses and Olympiads pages
- Move search input inline with tab filters
- Fix StudentProfile scoped styles to use Frappe UI CSS variables
instead of hardcoded hex colors (fixes white/dark theme compatibility)
- Fix CourseCard stats row jumping by adding min-height to description
and stats container
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-16 06:15:55 +03:00
3882787e50
feat: add Olympiads module and redesign course UI
...
- Add LMS Olympiad, Participant, Result doctypes with full API
- Add Olympiads pages (list, detail, leaderboard, registration)
- Redesign CourseCard with hover animations, badges, progress bar
- Improve Courses page with hero banner and filters
- Add Olympiads route and sidebar navigation entry
- Add CLAUDE.md project documentation
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-16 05:50:39 +03:00
Nicolai
ebcf9d5042
feat(i18n): add Russian translations + replace Frappe branding with IIE
...
Branding:
- 'Powered by Learning' -> 'Powered by IIE' (sidebar tooltip)
- 'Frappe Learning' -> 'IIE' (HelpModal title, email templates)
- frappe.io URLs -> enlightrussia.ru
- 'Install Frappe Learning' -> 'Установить приложение IIE'
- PersonaForm question translated
Translations (ru.po):
- Added 125 new Russian translations for client-facing strings
- Covers: sidebar nav, profiles, leaderboard, points, lessons,
batches, assignments, error messages, video stats, MPGU-specific
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-09 19:51:43 +03:00
Nicolai
8ac7eb5a29
refactor(sidebar): remove external URLs from hardcoded items
...
External web pages (chatgpt-schoolchild, ai-teachers, my-child)
removed from addEnlightCustomItems() — they should be managed
via the new "More +" sidebar page manager in v2.46.0.
Only Vue-router pages remain hardcoded:
- LeaderBoard (/leaderboard)
- MyPoints (/mypoints)
- Role-based profiles (StudentProfile, SchoolchildrenProfile,
CourseCreatorProfile, ParentProfile)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-09 18:51:01 +03:00
Nicolai
8bb7a61f56
fix(sidebar): restore custom Enlight sidebar items after v2.46.0 merge
...
Two bugs fixed:
1. updateSidebarLinks() was called AFTER custom add functions,
resetting sidebarLinks.value and erasing all custom items
2. Custom items were pushed as flat objects but the template
expects grouped structure { label, hideLabel, items: [] }
Refactored all custom functions into a single addEnlightCustomItems()
that builds a proper group and pushes it AFTER updateSidebarLinks().
Items: LeaderBoard, MyPoints, ChatGPT (role-based), MyChild, Profile.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-09 18:43:34 +03:00
Nicolai
ba99a48c88
Merge v2.46.0 into develop — resolve all conflicts
...
- yarn.lock, components.d.ts, ru.po: accepted upstream v2.46.0
- AppSidebar.vue: kept custom sidebar links (MyPoints, LeaderBoard,
ChatGPT, MyChild, Profile) + adopted async watch from v2.46.0
- MobileLayout.vue: merged onMounted with sidebarSettings.reload +
custom addSideBar() for role-based mobile links
- EditProfile.vue: adopted new Dialog options structure (size only)
- Courses/Courses.vue: unified tab values to lowercase (enrolled,
upcoming, new, created, unpublished)
- CourseDetail.vue (old): removed — logic migrated to Courses/CourseDetail.vue;
transferred custom tag flex-wrap styling to CourseOverview.vue
- LessonForm.vue: kept Rutube video support
- App.vue: clean (no conflict markers)
- user.py: merged imports + kept custom sign_up params (phone, user_role)
- utils.py: kept render_html (Rutube), is_mentor, is_eligible_to_review;
added type hints for get_course_progress from v2.46.0
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-09 18:25:58 +03:00
6d7c91ceeb
Before update v2.46.0
2026-03-09 10:54:44 +00:00
Nicolai
d3fda0be37
StudentProfile new design
2026-03-08 23:31:54 +03:00
Nicolai
41de21201e
LaderBoard design update
2026-03-08 12:48:34 +03:00
Jannat Patel
54e9396fdb
fix: pricing section issue in course form
...
(cherry picked from commit a0d6b2b6b626040572ddefb47f9ef09beec1a801)
2026-03-02 12:54:01 +00:00
Jannat Patel
eb33155db2
fix: enqueue progress calculation after validating enrollments
2026-02-24 18:13:02 +05:30
Jannat Patel
3088b14d83
fix: recalculate course progress when lesson is inserted or deleted
2026-02-24 17:40:58 +05:30
Jannat Patel
bf89f3ba2f
fix: show system timezone in certificate request
2026-02-24 13:01:29 +05:30
Jannat Patel
2198adf902
fix: sidebar settings issue if guest access was not allowed
2026-02-24 12:36:46 +05:30
Jannat Patel
499bcd5281
chore: resolved conflicts
2026-02-24 12:05:44 +05:30
Jannat Patel
dc4bbdaa55
Merge pull request #2116 from raizasafeel/fix/codesandbox-embed
...
fix(lesson): render codesandbox
2026-02-24 12:02:52 +05:30
Jannat Patel
bf19ebd3a8
fix: assignment submission issue
2026-02-24 12:02:10 +05:30
Jannat Patel
5a6a7ff646
Merge pull request #2117 from pateljannat/issues-189
...
chore: capture more events for analytics
2026-02-23 16:41:23 +05:30
Jannat Patel
b3c8fbd833
chore: capture more events for analytics
2026-02-23 16:31:58 +05:30
raizasafeel
2634a4e316
fix(lesson): render codesandbox properly
2026-02-23 15:12:08 +05:30
Jannat Patel
fb0517caa0
fix: show only instructor tab for admins on home page
2026-02-23 14:54:54 +05:30
Jannat Patel
90151be166
fix: updated app name in workspace and desktop
2026-02-23 12:35:13 +05:30
Jannat Patel
41d5ef5fd5
Merge pull request #2108 from pateljannat/issues-185
...
fix: misc permission issues
2026-02-23 11:22:52 +05:30
Jannat Patel
14937fd4fc
fix: check ptype for permission if not admin
2026-02-23 11:06:34 +05:30
Jannat Patel
58826fe30f
fix: removed badge page reference from the router
2026-02-23 10:41:13 +05:30
Jannat Patel
49d596216d
fix: zoom account link issue
2026-02-21 12:58:19 +05:30
Jannat Patel
faa9c94970
fix: zoom account link issue
2026-02-21 12:28:55 +05:30
Jannat Patel
c596d1e215
fix: misc permission issues
2026-02-21 12:25:47 +05:30
Jannat Patel
dfb7152aa3
fix: video watch time permission and other issues
2026-02-20 13:08:27 +05:30
Jannat Patel
07c58251a1
fix: lms certificate request will allow students to read only if they are owner
2026-02-19 16:27:35 +05:30
Jannat Patel
c88d36df1e
fix: permission issues on badges
2026-02-19 15:59:03 +05:30
Jannat Patel
08373dc2ab
fix: refactored job form and permissions
2026-02-19 15:58:44 +05:30
Jannat Patel
cb3af6fa63
fix: sanitised badge assignment api
2026-02-19 12:24:47 +05:30
Jannat Patel
35adf49015
fix: course form overflow issue
2026-02-19 11:47:17 +05:30
Jannat Patel
e5f0d55ff0
fix: course form permission issue
2026-02-19 11:46:56 +05:30
Jannat Patel
8ab6776fa9
fix: redirect from batch/details to batch
2026-02-18 15:36:55 +05:30
Jannat Patel
24bfe69985
chore: resolved conflicts
2026-02-18 11:16:00 +05:30
Jannat Patel
6f86b822bf
fix: mobile view for batch dashboard
2026-02-18 10:58:49 +05:30
Jannat Patel
af273a9a1c
refactor: batch student progress
2026-02-17 19:38:19 +05:30
Jannat Patel
3b80ccd8db
Merge pull request #2083 from raizasafeel/fix/dark-mode
...
fix: dark mode ui
2026-02-17 17:41:40 +05:30
Jannat Patel
44b7a210ce
chore: resolved conflicts
2026-02-17 15:04:31 +05:30
raizasafeel
7a1a247113
Merge upstream/develop into fix/dark-mode
2026-02-17 14:28:46 +05:30
raizasafeel
2c6ab3c331
Merge remote-tracking branch 'upstream/develop' into fix/video-embedding
2026-02-17 14:21:22 +05:30
Jannat Patel
d83f3464cd
fix: permission issue when cancelling evaluation
2026-02-17 13:35:15 +05:30
Jannat Patel
e2ef8f732d
test: fixed category input selection in course creation test
2026-02-17 12:09:29 +05:30
Jannat Patel
919904a7f1
refactor: autocomplete component
2026-02-17 12:05:40 +05:30
raizasafeel
8453226f29
fix: add vimeo emded URL to extract hash properly
2026-02-17 11:38:26 +05:30