Commit Graph

1230 Commits

Author SHA1 Message Date
a26f02065a fix: increase card image height, fix title overflow, fix Twitch error 2000
- CourseCard: raise image from h-40 to h-52 (less cropping)
- CourseCard: use -webkit-line-clamp inline style to hard-clip title overflow
- CourseCard: reduce footer bottom padding (pb-1)
- StreamEmbed: pass both current hostname and localhost as Twitch parent
  params to fix error 2000 in local/dev environments

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-16 06:59:34 +03:00
4d80c84775 feat: fix leaderboard, redesign student profile, olympiad admin, ru i18n
LeaderBoard:
- Fix bug: allUsers now loaded before logsResource on mount
- Fallback: show users with 0 points when Energy Point Log is empty
- Replace FontAwesome with lucide-vue-next (Crown, Medal, Trophy, User)
- Replace all hardcoded hex colors with Frappe UI CSS variables

StudentProfile:
- Remove ~40 debug console.log statements
- Increase avatar to 96px, use amber CSS token gradient
- All scoped CSS colors converted to rgb(var(--color-*)) tokens

Olympiads admin:
- Add OlympiadForm.vue for create/edit with all fields
- Add routes /olympiads/new and /olympiads/:name/edit
- Add "Create Olympiad" button for moderators/instructors
- Add sidebar entry for admin users

Russian translations:
- Add Olympiad module strings to lms/locale/ru.po

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-16 06:52:15 +03:00
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