Commit Graph
145 Commits
Author SHA1 Message Date
tienduy 19321223b4 Fix: warning migration 2026-04-23 13:11:14 +07:00
tienduy e9356be04c Merge branch 'develop' of https://gits.techvanguard.vn/UKSOURCE/cms.lams into develop 2026-04-23 01:18:53 +07:00
tienduy 26e6b9e7cf Merge branch 'develop' of https://gits.techvanguard.vn/UKSOURCE/cms.lams into develop 2026-04-23 01:18:23 +07:00
tienduy 9c266f71f3 Fix: about feature 2026-04-23 01:17:51 +07:00
tienduy 897d1d658f Merge pull request 'fix: center EditorJS image block in editor; rename Programmes button to Edit' (#8) from feat/truong-20042026-ProgrammeBlog into develop
Reviewed-on: UKSOURCE/cms.lams#8
2026-04-22 18:12:58 +00:00
tienduy 2094ada80f Merge pull request 'fea/dat-20042026-CMS-Partnerships-Accreditation-History-Admissions-Policies' (#7) from fea/dat-20042026-CMS-Partnerships-Accreditation-History-Admissions-Policies into develop
Reviewed-on: UKSOURCE/cms.lams#7
2026-04-22 16:43:05 +00:00
nhuttruong 5d201db3e4 fix: center EditorJS image block in editor; rename Programmes button to Edit 2026-04-22 23:01:19 +07:00
Tống Thành Đạt c736b96d36 Merge branch 'develop' into fea/dat-20042026-CMS-Partnerships-Accreditation-History-Admissions-Policies 2026-04-22 20:58:56 +07:00
Tống Thành Đạt 2dd5769416 feat(admissions): implement tuition section in admin editor
Add functionality to manage tuition data within the admissions admin editor. This includes implementing state normalization for tuition series, label extraction, and the rendering logic for the tuition tab.
- Add `renderTuitionSection` and `normalizeTuitionState` logic
- Implement helper functions for tuition series and point normalization
- Integrate tuition tab routing in the editor script
2026-04-22 20:39:47 +07:00
Tống Thành Đạt 2cee0172f2 refactor(cms): replace custom icon comboboxes with standardized icon picker
Replace the legacy `cms-icon-combobox` implementation with a new, standardized `icon-picker` across multiple admin modules. This change simplifies the UI by using a Bootstrap input group with a dedicated "Pick Icon" button and a preview cell.

Affected areas:
- Policies block editor
- Accreditation, Admissions, History, and Policies admin editor scripts
- Admissions calculator options view
This removes redundant icon list generation and manual dropdown management in favor of a centralized icon picker utility.
2026-04-22 20:27:42 +07:00
tienduy d05589deb7 Group popular icon 2026-04-22 19:54:25 +07:00
Tống Thành Đạt c0ea0dcb4d Merge branch 'develop' into fea/dat-20042026-CMS-Partnerships-Accreditation-History-Admissions-Policies 2026-04-22 19:28:05 +07:00
tienduy ad0a64b9ce Merge pull request 'Add icon colection' (#6) from feat/duy-20042026-HomepageAbout into develop
Reviewed-on: UKSOURCE/cms.lams#6
2026-04-22 12:20:36 +00:00
tienduy 7c21bbd1af Add icon colection 2026-04-22 19:15:52 +07:00
Tống Thành Đạt 64b1b77d30 Merge branch 'develop' into fea/dat-20042026-CMS-Partnerships-Accreditation-History-Admissions-Policies 2026-04-22 18:08:53 +07:00
Tống Thành Đạt a39c336dd4 feat(cms): enhance content editors with dynamic UI configs and validation
Implement a more flexible, configuration-driven approach for CMS editors across accreditation, admissions, and partnerships modules.
- Move UI labels, help texts, and field limits from hardcoded views to `editorUi` configurations in config files.
- Add server-side and client-side validation to prevent duplicate category tabs in accreditation and partnerships editors.
- Refactor partnership and admission views to dynamically render tabs and fields based on the provided configuration.
- Update field length constraints and default values across multiple content editors to better align with frontend requirements.
- Improve the admissions calculator editor with dynamic field configurations and default value fallbacks.
2026-04-22 18:06:03 +07:00
tienduy 06de6535da Merge pull request 'feat/duy-20042026-HomepageAbout' (#5) from feat/duy-20042026-HomepageAbout into develop
Reviewed-on: UKSOURCE/cms.lams#5
2026-04-22 09:40:39 +00:00
tienduy f685ff88ee Fix: migrate footer, delete more file view 2026-04-22 16:40:30 +07:00
tienduy ffb22134f4 Merge branch 'develop' of https://gits.techvanguard.vn/UKSOURCE/cms.lams into feat/duy-20042026-HomepageAbout 2026-04-22 15:40:47 +07:00
tienduy 23516414fb Merge pull request 'header' (#4) from feat/toan-22042026-header into develop
Reviewed-on: UKSOURCE/cms.lams#4
2026-04-22 08:34:44 +00:00
tienduy 3ede974215 Refactor Homepage, About, Footer (Controller,Model, View, Data), Update: Dashboard, Delete old file 2026-04-22 15:30:09 +07:00
nthanhtoan 0750c35e92 header 2026-04-22 15:22:22 +07:00
Tống Thành Đạt a44d005c13 feat(cms): enhance policy editor with fullscreen mode and date picking
Improve the policy content management experience by adding a dedicated fullscreen editing mode and a structured date picker for effective dates.
- Implement fullscreen toggle in `policies-block-editor.js` with corresponding CSS for an expanded workspace
- Add `date` field type to `sharedFields.js` and integrate it into `policiesConfig.js`
- Implement date parsing and formatting utilities in `editor-script.ejs` to handle "Effective Date" strings
- Update `policiesController.js` to use `updateOne` for more reliable document persistence and state reloading
- Add support for `ICON_OPTIONS` in the policy editor configuration
- Refine editor UI layout and overflow handling for better stability with long content strings
2026-04-22 12:02:00 +07:00
Tống Thành Đạt cdaddddfeb refactor(policies): migrate to block-based content editor
Replace the legacy section-based policy editor with a flexible block-based system. This transition enables real-time previews, a wider variety of content types (headings, quotes, callouts), and improved data normalization.
- Implement `policies-block-editor.js` for dynamic content management
- Add `normalizePoliciesDocument` and `validateContent` utilities to handle data migration and integrity
- Update `policiesController.js` to support the new block structure and validation logic
- Migrate `policies.json` from `sections` array to a `content.blocks` structure
- Remove obsolete section editor views and partials
- Update `policiesConfig.js` to reflect the new editor capabilities
2026-04-22 10:14:54 +07:00
Tống Thành Đạt f26b072954 feat(cms): implement structured tuition data normalization and editor
Refactor tuition data from a simple numeric array to a structured object
containing time labels and values. This allows for more flexible
charting and precise data entry in the CMS.
- Add `normalizeTuition`, `normalizeTuitionSeries`, and `normalizeTuitionPoint` to `admissionsController.js`
- Update `admissionsConfig.js` to use `objectList` for tuition data points instead of `stringList`
- Migrate existing tuition data in `admissions.json` to the new structured format
- Fix duplicate text in `admissions.json` grant amounts and descriptions
2026-04-22 03:48:02 +07:00
Tống Thành Đạt 5d0fae6d51 feat(cms): enhance content editors and implement automatic ID generation
Improve the CMS administration interface across multiple pages (Accreditation, Admissions, History, Partnerships, and Policies) with a focus on usability and data integrity.
Key changes include:
- Implement `ensureUniqueIds` utility to automatically generate and maintain unique slugs for content items, removing the need for manual ID entry in the UI.
- Refactor the Admissions calculator to support detailed per-option editing via a new dedicated view and routes.
- Replace basic datalists with a custom, searchable icon combobox component for better visual selection.
- Update `_renderSingletonPageView` to handle active tab persistence via query parameters.
- Streamline editor configurations by removing redundant fields and improving help text.
- Enhance the Admissions "Key Dates" editor with a dynamic table interface for managing columns and rows.
- Normalize data payloads in controllers to ensure consistent API responses and internal linking.
2026-04-21 12:37:19 +07:00
Tống Thành Đạt 122df1a46e Merge branch 'develop' into fea/dat-20042026-CMS-Partnerships-Accreditation-History-Admissions-Policies 2026-04-21 12:33:11 +07:00
Tống Thành Đạt 5615c494cf style(cms): improve editor ui and implement collapsible item cards
Enhance the CMS administration interface by introducing a more refined design system for content editors. This update replaces generic Bootstrap utility classes with dedicated CMS styling to improve visual hierarchy and usability.
Key changes:
- Introduce `cms-editor-group` and `cms-item-card` classes for consistent grouping and item styling.
- Implement collapsible functionality for item cards to manage long lists of content more effectively.
- Standardize editor buttons, including new styles for drag handles, remove buttons, and add buttons.
- Update the fixed bottom action bar with improved backdrop filters, shadows, and spacing.
- Refactor editor scripts across Accreditation, Admissions, History, Partnerships, and Policies to utilize the new UI components and collapse logic.
- Add comprehensive CSS to `main.ejs` to support the new CMS design tokens and layout behaviors.
2026-04-20 20:10:27 +07:00
Tống Thành Đạt 7df3a6f6bf feat(cms): refactor page content management and implement detailed editors
Refactor the CMS page content system to use a more modular configuration-driven approach. This replaces the monolithic `pageContentConfig.js` with individual configuration files for each page and introduces a shared field utility to standardize editor components.
Key changes:
- Implement a generic `_renderSingletonPageView` helper to reduce duplication across controllers.
- Enhance `_createPageContentController` with `normalizeForEditor`, `normalizeForApi`, and `preparePayload` hooks for custom data transformation.
- Create dedicated configuration and view structures for Partnerships, History, Accreditation, Admissions, and Policies pages.
- Add a specialized section editor for Policies to manage complex nested content.
- Improve the frontend `page-content-editor.js` with support for visibility logic, auto-sequencing for arrays, and URL synchronization for active tabs.
- Update data JSON files to align with the new schema.
2026-04-20 19:43:28 +07:00
tienduy cb5e4b0ceb Merge pull request 'feat/truong-20042026-ProgrammeBlog' (#2) from feat/truong-20042026-ProgrammeBlog into develop
Reviewed-on: UKSOURCE/cms.lams#2
2026-04-20 11:53:46 +00:00
tienduy e230acd936 Merge pull request 'Adding backend of Student Support, Contact, Request' (#1) from feat/duong-20042026-CMSIntergration into develop
Reviewed-on: UKSOURCE/cms.lams#1
2026-04-20 11:49:09 +00:00
nhuttruong 30b90051c9 feat: add programme module and blog integration
- Add Programme Mongoose model with sub-schemas and migrateFromJson static method
- Add programme CRUD controller with audit logging and icon sanitization
- Add programme admin views (index, edit) with tabbed form and dynamic arrays
- Add seed migration script for programmes
- Add /api/programmes and /api/programmes/:id public API endpoints
- Register programme routes in admin and public router
- Update dashboard with Programmes card and API endpoint entries
- Update admin sidebar layout to include Programmes nav link
2026-04-20 18:40:29 +07:00
xuanduong ac5fa14c97 Adding backend of Student Support, Contact, Request 2026-04-20 16:22:37 +07:00
Tống Thành Đạt 8b6bf5fe6e feat(cms): add management for partnerships, history, accreditation, admissions, and policies pages
Implement a singleton page content system to manage static informational pages. This includes:
- New controllers, models, and data files for Partnerships, History, Accreditation, Admissions, and Policies.
- Admin routes and views for updating page content.
- Public API endpoints for fetching page data.
- Migration scripts for initializing page data.
- Updated admin navigation layout to include a dropdown for "About" sections.
- Audit action constants for tracking updates to these pages.
2026-04-20 14:08:38 +07:00
admin fab72e86a6 change || to ?? 2026-04-11 19:15:01 +07:00
admin ac40097bdd add logs 2026-04-11 19:04:26 +07:00
admin 1cc0c66835 add logs 2026-04-11 18:49:05 +07:00
admin b15c4ed525 Merge branch 'main' of ssh://gits.techvanguard.vn:8822/UKSOURCE/cms.hailearning.edu.vn into main 2026-04-11 16:11:39 +07:00
admin 033cec29f1 fix cors 2026-04-11 16:11:26 +07:00
tranthanh e86e5d2c46 Merge pull request 'fix: standardize model import names for HeaderMenu across controllers and scripts' (#40) from fix/thanh-19032026-rename-file into main
Reviewed-on: UKSOURCE/cms.hailearning.edu.vn#40
2026-03-19 02:54:08 +00:00
Wini_Fy e85c80ab2f fix: standardize model import names for HeaderMenu across controllers and scripts 2026-03-19 09:54:17 +07:00
Wini_Fy 45077b858b fix: correct date filtering logic to ensure proper date range handling 2026-03-19 09:49:22 +07:00
tranthanh 46403d4fcb Merge pull request 'fix/thanh-19032026-rename-file' (#39) from fix/thanh-19032026-rename-file into main
Reviewed-on: UKSOURCE/cms.hailearning.edu.vn#39
2026-03-19 02:49:06 +00:00
Wini_Fy 4e4042e075 feat: Create new file 2026-03-19 09:39:53 +07:00
Wini_Fy f26a4b7e25 feat: Remove file 2026-03-19 09:39:12 +07:00
Wini_Fy 63d6bd7c8f feat: Rename file 2026-03-19 09:36:14 +07:00
admin 6002e04c2e add rebuild 2026-03-15 17:23:33 +07:00
nthanhtoan 79487fa60d Update package.json 2026-03-07 16:14:17 +07:00
tranthanh 7319eba9a6 Merge pull request 'feat: implement comprehensive audit logging system' (#37) from fea/bao-10022026-AuditLog into main
Reviewed-on: UKSOURCE/cms.hailearning.edu.vn#37
2026-02-11 04:50:46 +00:00
nguyenvanbao c37b355f06 fix(): fix conflict 2026-02-10 16:48:58 +07:00