346 Commits

Author SHA1 Message Date
Rômulo Penido
85e81b32e4 feat: add full screen modal option to base_modal (#38001)
Adds a "Fullscreen" button to the iframe editors for advanced XBlocks
2026-02-27 16:12:04 +00:00
Ihor Romaniuk
f5c17bb88c feat: [FC-0070] add events and style for rendering Split xblock in chromeless template (#35813)
This feature introduces functionalities to improve XBlock interactions within iframes:

  * Add styles that adopt default styles for Split Test which renders chromless template via iframe in MFE Authoring.
  * When the isIframeEmbed option is enabled, the XBlock sends a postMessage to the parent window. When sending such a message, the standard link transition is cancelled and the transition is carried out in MFE Authoring.
2025-03-31 18:31:59 -03:00
Saad Yousaf
eaf6f66828 fix: styling fix for course optimizer legacy tool link 2025-02-07 15:46:19 +05:00
Raymond Zhou
02fc9c928f 2u/course optimizer (#35887) 2025-02-06 12:47:17 -05:00
Adolfo R. Brandes
f4d110c896 feat: Reimplement the Zooming Image Tool
This recreates the Zooming Image Tool template for the HTML block.  It
does it in such a way that doesn't depend on any external resources:
both the loupe code and sample image are inlined.

Some benefits to this version are:

* We can now maintain the loupe javascript code properly

* Because the javascript is included in the contents of the block
  itself, the course author can customize it as needed

* As opposed to the previous iteration, the magnified image URL is now
  optional: if it's not present, the regular image will be used for
  magnification

* There can now be two or more instances of the tool in the same unit.

This also removes some CSS left over from the previous iteration.
2024-12-13 11:34:28 -03:00
Jillian
784b2b8c3c feat: add "beta" label to libraries v2 content + item bank buttons (#35690) 2024-10-22 09:18:45 -07:00
Navin Karkera
7e8fb4393e feat: adds Library Content (v2) button to Studio Unit page (#35670)
Requires that v2 libraries are enabled.
2024-10-21 10:32:54 -07:00
Sagirov Evgeniy
e4a1e41367 feat: new Studio view for rendering a Unit in an iframe [FC-0070]
The first attempt at creating a new MFE-driven page for Studio Unit
rendering involved rendering each XBlock separately in its own iframe.
This turned out to be prohibitively slow because of the many redundant
assets and JavaScript processing (e.g. MathJax) that happens for each
XBlock component.

In order to mitigate some of these issues, we decided to try a hybrid
approach where we render the entire Unit's worth of XBlocks at once on
the server side in a Studio view + template, and then invoke that from
frontend-app-authoring as an iframe. The frontend-app-authoring MFE
would still be responsible for displaying most of the interactive UI,
but the per-component actions like "edit" would be triggered by buttons
on the server-rendered Unit display. When one of those buttons is
pressed, the server-rendered UI code in the iframe would use
postMessage to communicate to the frontend-app-authoring MFE, which
would then display the appropriate actions.

To make this work, we're making a new view and template that copies
a lot of existing code used to display the Unit in pre-MFE Studio, and
then modifying that to remove things like the header/footer so that it
can be invoked from an iframe.

This entire design is a compromise in order to do as much of the UI
development in frontend-app-authoring as possible while keeping
XBlock rendering performance tolerable. We hope that we can find
better solutions for this later.

Authored-by: Sagirov Eugeniy <evhenyj.sahyrov@raccoongang.com>
2024-10-18 10:03:07 -04:00
Bryann Valderrama
8f886734f6 feat: show message in subsection visibility tab when hft is enabled (#33981)
Shows a message in the visibility tab of the subsections when the Hide From TOC is enabled.

Ref: https://openedx.atlassian.net/wiki/spaces/OEPM/pages/3853975595/Feature+Enhancement+Proposal+Hide+Sections+from+course+outline
2024-03-07 15:31:50 -04:00
Bryann Valderrama
19bc5c802c feat: add share link button when hide from toc is enabled in sections (#34043)
* feat: add share link modal when hide from toc is enabled

Adds a new button in the child subsections of sections with Hide From TOC enabled.
This button displays a new modal with two tabs. The first tab displays a button
that allows you to copy the link of that subsection to the clipboard. The second
tab displays a button that allows you to copy the embedded link of the same
subsection to the clipboard.

Ref: https://openedx.atlassian.net/wiki/spaces/OEPM/pages/3853975595/Feature+Enhancement+Proposal+Hide+Sections+from+course+outline
2024-03-07 14:12:17 -04:00
Maria Grimaldi
f544a4825d feat: make hide from TOC a visibility section setting (#33952)
Exposes the hide_from_toc xblock attribute so course authors can configure it as a section visibility option in Studio. Before this change, the Hide from TOC functionality was mainly used by OLX components. Hence, it wasn't available for configuration through the Studio UI. Still, its implementation existed in the platform and could be used by setting the attribute: hide_from_toc=true as part of the OLX definition.
Ref: https://openedx.atlassian.net/wiki/spaces/OEPM/pages/3853975595/Feature+Enhancement+Proposal+Hide+Sections+from+course+outline
2024-02-29 11:13:33 -04:00
bogdan3d
09d4835d2b fix: fixing the prompt view cancel button style for color and cursor shape (#33895) 2024-02-02 11:03:02 -04:00
Chris Chávez
5838d68efc feat: Tagging UX refinements - refresh tag count on edit (#34059)
* style: drawer-cover color updated for all tagging drawers
* feat: Update TagList component when a tag is updated on Manage tags drawer
* feat: Refactor TagCount to be able to refresh the count
* feat: Sync tag count in units
2024-01-25 10:33:47 -08:00
Pooja Kulkarni
f5b246d0e9 feat: copy/paste unit from within a unit in Studio - feature flagged (#33724)
(requires the contentstore.enable_copy_paste_units waffle flag)
2023-12-01 11:33:34 -08:00
Chris Chávez
f72710e261 feat: Display tags on the Unit page in Studio (feature-flagged) - Take 2 (#33761) 2023-11-21 12:12:17 -08:00
Kyle McCormick
e800ae7622 feat: provisionally support V2 libraries in LibraryContentBlock (randomized only) (#33263)
Refactors and reworks the LibraryContentBlock so that its
sync-from-library operations are asynchronous and work with
V2 content libraries. This also required us to make
library_content block duplication asynchronous, as that
involves syncing from the source library.

For the sake of clarity, this PR includes two major method renames:

* update_children(...) -> sync_from_library(...)
* refresh_library(...) -> sync_from_library(upgrade_to_latest=True, ...)

an an XBlock HTTP handler rename:

  /refresh_children -> /upgrade_and_sync

There are still a couple issues with import or duplication
of library_content blocks referencing V2 libraries other than
latest. These will be resolved in an upcoming PR.

Part of: https://openedx.atlassian.net/wiki/spaces/COMM/pages/3820617729/Spec+Memo+Content+Library+Authoring+Experience+V2
Follow-up work: https://github.com/openedx/edx-platform/issues/33640

Co-authored-by: Connor Haugh <chaugh@2u.com>
Co-authored-by: Eugene Dyudyunov <evgen.dyudyunov@raccoongang.com>
2023-11-20 15:58:10 +00:00
Rebecca Graber
c66ed87f65 Revert "feat: Tag List on Unit page (feature-flagged) (#33645)" (#33740)
This reverts commit 104d42c67a.
2023-11-17 20:12:47 +00:00
Chris Chávez
104d42c67a feat: Tag List on Unit page (feature-flagged) (#33645) 2023-11-17 10:03:28 -08:00
Yusuf Musleh
e311ef50ec feat: Studio menu/button to display Unit's Tags (feature flagged) (#33563) 2023-11-08 12:23:05 -08:00
Yusuf Musleh
3eb4e0ce9c feat: Update new files notification banner styles (#33197)
Uses the updated styles for the notification based on the new designs.
Includes a button to open view the files directly in the notification.

This also fix a bug where the notification was not appearing when paste
a whole Unit.
2023-09-15 08:58:50 -07:00
German
3f20c75043 feat: [ACADEMIC-16209] Unit summary settings (#32855)
* feat: [ACADEMIC-16209] Unit summary settings

[https://jira.2u.com/browse/ACADEMIC-16209](https://jira.2u.com/browse/ACADEMIC-16209)

1. Add unit xpert unit summaries settings behind flag `summaryhook_summaries_configuration` added [here](https://github.com/edx/ai-aside/pull/45/files)
2. Only show the checkbox when the value is a `boolean` otherwise the feature is considerer `disabled` by the flag.
3. Update block handler to update this value via `api` exposed [here](https://github.com/edx/ai-aside/pull/43)
4. Create `AiAsideSummary` configuration class to provide access to the `ai_aside.api` endpoints.
2023-08-21 14:55:22 -03:00
Braden MacDonald
08fda1b3eb feat: new actions menu for copy/pasting units in Studio (behind waffle flag) (#32891) 2023-08-14 11:58:24 -07:00
Braden MacDonald
4b72194b98 feat: Show a preview of what's in the user's clipboard (#32132)
This also fixes Studio container view 404.
2023-05-05 17:35:03 +02:00
Braden MacDonald
8ee1f66ffb feat: Paste Components (OLX) into any Unit in Studio (#31969)
* feat: Implement paste button

* chore: improve docs and add tests for python API

* fix: drive-by fix to use a better API for comparing XML

* feat: track which XBlock something was copied from

* feat: add tests

* feat: enable import linter so content_staging's public API is respected

* fix: error seen when trying to paste drag-and-drop-v2 blocks

* fix: use strip_text=True consistently for XML comparisons

* refactor: rename get_user_clipboard_status to get_user_clipboard

* feat: Better error reporting when pasting in Studio

* chore: convert new test suite to pytest assertions

* refactor: push READY status check into the API per review suggestion

* fix: use strip_text=True consistently for XML comparisons

* fix: store "copied_from_block" as a string to avoid Reference field issues

* fix: minor lint error

* refactor: move data types to data.py per OEP-49
2023-04-27 09:58:04 -07:00
Kristin Aoki
766fdc5197 fix: missing blockquote margin xblock preview (#32120) 2023-04-24 16:59:12 -04:00
Jeremy Ristau
ef0a7bc50f Merge pull request #31671 from raccoongang/lunyachek/fix/cosmetic-fix-units-hover-tooltips-studio
fix: Fix units hover tooltips in studio which are overlapping by other page content
2023-03-21 14:42:13 -04:00
Braden MacDonald
6805654d40 feat: New actions menu for components in Studio (behind waffle flag) (#31853) 2023-03-03 10:09:27 -08:00
lunyachek
138e306eb6 fix: Fix units hover tooltips in studio which are overlapping by other page content 2023-01-30 20:38:24 +02:00
Kshitij Sobti
8fa962b1c8 feat: Add Studio UI to edit discussions toggle [TNL-7349] (#29720)
Adds a UI in studio to toggle discussions for a units if a course is using a discussion provider that supports it and per-unit discussion control is enabled.

Co-authored-by: Kshitij Sobti <kshitij@opencraft.com

Co-authored-by: Agrendalath <piotr@surowiec.it>
2022-01-19 11:21:32 +05:00
Awais Ansari
f59397e63f fix: update hover state for textbooks breadcrumbs (#28690) 2021-09-09 15:11:15 +05:00
Sofia Yoon
898684287a feat: AA-885 show offsets in studio self paced course outline for a subsection
feat: AA-883 basic prototype for custom pacing pls in studio

refactor: merge with basic prototype for self paced courses from AA-844

feat: add due date estimate message in self paced courses studio modal

refactor: merge with main that has up to date self paced custom pls editor and tests

fix: only display projected date if start date exists

fix: tests to check grading date in outline

fix: only one warning message show at a time

fix: do not show projected date when it is before the start date
2021-07-26 16:26:22 -04:00
Farhaan Bukhsh
30632f87cc Added Open response button to the component tray
Author needs to have a quick access to ORA menu in order
to get proceed with assesment design. This introduces ORA
button to the tray.

Signed-off-by: Farhaan Bukhsh <farhaan@opencraft.com>
2020-12-07 14:36:00 -03:00
Zainab Amir
87a1c06d4b Display encode and transcript status (#23919)
* Have separate column for transcript and encode status
* Display error message sent from VEM

PROD-1432
2020-05-12 16:12:07 +05:00
Adam Butterworth
307cb30208 Swap deprecated box-sizing mixin with the box-sizing property (#23928)
* Swap deprecated box-sizing mixin with the box-sizing property

* Linting now that box-sizing is no longer a mixin
2020-05-08 11:27:51 -04:00
Adam Butterworth
42cc0d0145 Fix all stylelint errors (#23920)
* Fix all stylelint errors

For any errors that fixing would require changing the output of the css disable stylelint for that line instead of modifying.

* Update quality.py

Make stylelint quality check pass when there are no errors

* Delete empty selectors
2020-05-06 16:07:14 -04:00
Marco Morales
2c0d89bee5 initial styling changes to Studio unit page navigation and breadcrumb context 2020-02-16 11:28:24 -05:00
Dave St.Germain
3e73ba3879 TNL-6929:
Improves navigation within Studio for Learning Sequences, speeding up authors who want to see how a learner progresses through content without needing to jump over to the LMS.

This adds a dropdown section navigator to the breadcrumbs on the unit page and copies the sequence navigator from LMS to the studio unit page.
2019-11-07 09:13:00 -05:00
Dave St.Germain
ea3232feac TNL-6920 Component Editor Efficiency Improvements
* Enlarges component modal for easier editing
* Allows display name to be edited in place
* Improves markdown button labeling
* Moves markdown cheatsheet to the edit modal, for quick reference
2019-09-26 09:34:14 -04:00
Awais Jibran
1dcfaef703 Fix Numeric input problems are backwards for right-to-left languages 2019-07-29 15:19:48 +05:00
Usman Khalid
0b27c62ca6 Convert VideoModule to VideoBlock.
Some deprecated functionality has been removed:

- Reading data field and transforms being applied in the init() method.
- The source field.
- The source_visible attribute.
2019-06-20 22:12:39 +05:00
Gavin Sidebottom
3dad2be55d Refactored XBlockAside rendering and added support for student view 2018-12-11 12:27:03 +05:00
Kshitij Sobti
c1e3e59771 Basic bulk stylelint fixes 2018-07-10 02:27:11 +05:30
Michael Roytman
f0b18a7a2d first attempt at adding checklists to tools dropdown in studio 2018-06-21 17:17:30 -04:00
Zia Fazal
90633c0956 Merge pull request #17974 from edx/ziafazal/WL-1239
WL-1239: Ability to gate section based on completion percentage
2018-05-30 12:52:43 +05:00
Zia Fazal
53cf5638b6 added radio input fields to pre-requisite selection
Initial changes to gate section based on completion percentage

code refactoring and added evaluation of completion milestone

Fixed broken unit tests and added new tests

Fixed broken tests and quality violations

Fixed Pep8 violation

Fixed eslint quality violations

Test changes as suggested by reviewer

changes after feedbacy from reviewer

Update the docstring with suggested changes

excluding chapter from the blocks

Disallow empty values for min score and min completion

Changes afte feedback from UX/Accessibility

removed blank line
2018-05-30 11:25:59 +05:00
Tyler Hallada
e9a04939d9 Upgrade SFE, unscrollable body when modal is open. 2018-05-15 14:49:08 -04:00
Tyler Hallada
1ba564c32e Edit highlights modal copy
Make modal intro text darker.

Make intro message dark in the base modal scss
2017-11-01 17:08:29 -04:00
Andy Armstrong
ae1c760ea4 Use Bootstrap theme colors and fonts in old stylesheets
LEARNER-2977

Fixes
2017-10-29 22:22:08 -04:00
Andy Armstrong
8fb993dcca Fix validation issues with Studio Sass files 2017-09-18 15:28:41 -04:00
Andy Armstrong
0f808cec78 Implement theme admin UI to support previewing
LEARNER-2017
2017-07-27 17:24:31 -04:00