Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

LMS Export Bookmarks #355

Merged
merged 9 commits into from
Feb 26, 2025
Merged

LMS Export Bookmarks #355

merged 9 commits into from
Feb 26, 2025

Conversation

laritakr
Copy link
Contributor

@laritakr laritakr commented Feb 25, 2025

Story

Ref:

Expected Behavior Before Changes

The only option to download was in an XML format.

Expected Behavior After Changes

The user can bookmark questions and download the questions into a plain text file or a markdown file

Screenshots / Video

Photo: Download button

Screenshot 2025-02-25 at 5 01 00 PM

Photo: Plain text download output

questions-2025-02-25_22_01_01_794.txt

image

Photo:Markdown download output

questions-2025-02-25_22_01_04_057.md

image

This commit adds ability to download bookmarked questions as a formatted
plain text file.
Each question has a specific format based on type:

- Essay/Upload questions include HTML content converted to plain text
- Multiple Choice and Select All show correct/incorrect answers
- Matching questions show terms and their correct matches
- Categorization questions group items by category
- Bow Tie questions display center/left/right sections
- Stimulus Case Study questions include all sub-questions

The text download provides a simple way for users to export their
bookmarked questions in a readable format, with proper spacing and
structure maintained for each question type.

Ref:
- #344
This commit:
- refactors routes and controllers to allow multiple download formats

Ref:
- #348
This commit:
- Adds `BaseFormatterService` to handle common formatting logic for all
download formats
- Adds `PlainTextFormatterService` to handle formatting specific for
plain text
- Adds a model_exporter class method to each question type model with
the name of each question type
- Updates specs to reflect changes to PlainTextFormatterService

Ref:
- #348
Copy link

github-actions bot commented Feb 25, 2025

Test Results

98 tests  +6   98 ✅ +6   0s ⏱️ ±0s
 1 suites ±0    0 💤 ±0 
 1 files   ±0    0 ❌ ±0 

Results for commit 21c2107. ± Comparison against base commit b8c87d1.

♻️ This comment has been updated with latest results.

@laritakr laritakr force-pushed the i348-export-plain-text branch from 0f35dba to afb9fed Compare February 25, 2025 21:52
@ShanaLMoore
Copy link
Contributor

I really like the way these features were designed! I left a comment with an idea for the specs to help optimize test performance. Great job!

LaRita Robinson added 3 commits February 26, 2025 11:31
@laritakr laritakr force-pushed the i348-export-plain-text branch from 5c8906d to 21c2107 Compare February 26, 2025 18:34
@laritakr laritakr merged commit 40cb118 into main Feb 26, 2025
11 checks passed
@laritakr laritakr deleted the i348-export-plain-text branch February 26, 2025 20:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants