From 5c45c0a9f7563d65439227b31d68e9b6bec0213f Mon Sep 17 00:00:00 2001 From: sarina Date: Tue, 28 Jul 2026 12:40:51 -0400 Subject: [PATCH 1/2] Add Copyright Acceptance release note --- .../verawood/copyright_acceptance.rst | 38 +++++++++ .../verawood/feature_release_notes.rst | 1 + .../configure_copyright_acceptance.rst | 78 +++++++++++++++++++ 3 files changed, 117 insertions(+) create mode 100644 source/community/release_notes/verawood/copyright_acceptance.rst create mode 100644 source/site_ops/how-tos/configure_copyright_acceptance.rst diff --git a/source/community/release_notes/verawood/copyright_acceptance.rst b/source/community/release_notes/verawood/copyright_acceptance.rst new file mode 100644 index 000000000..3f3c37e1e --- /dev/null +++ b/source/community/release_notes/verawood/copyright_acceptance.rst @@ -0,0 +1,38 @@ +.. _Verawood Copyright Acceptance: + +Gating Studio Uploads Behind User Agreement Acceptance +####################################################### + +Administrators can now configure user agreements that must be accepted before a +user can access the file or video upload pages for a course in Studio. This +can be used to gate access to these features behind acceptance of terms and +conditions, such as a copyright agreement or fair use policy. + +When configured, users see an alert on the upload page, and the file or video +management UI is blurred and disabled. Once users accept the agreement, the +alert disappears and the UI becomes fully available. + +You can use the same agreement or different agreements for both pages, and you +can require multiple agreements for either or both pages. No agreements are +configured in the default platform unless explicitly set up by an operator. + +The system tracks user acceptance. If an agreement is updated, it prompts users +to re-accept. + +Site operators should see :ref:`Configure copyright acceptance` to set up this feature on the backend. + + +.. seealso:: + + :ref:`Verawood Product Notes` (reference) + + :ref:`Verawood Dev Notes` (reference) + + +**Maintenance chart** + ++--------------+-------------------------------+----------------+--------------------------------+ +| Review Date | Working Group Reviewer | Release |Test situation | ++--------------+-------------------------------+----------------+--------------------------------+ +| 2025-07-30 | OpenCraft | Verawood | Pass | ++--------------+-------------------------------+----------------+--------------------------------+ diff --git a/source/community/release_notes/verawood/feature_release_notes.rst b/source/community/release_notes/verawood/feature_release_notes.rst index ee3f5a411..106589986 100644 --- a/source/community/release_notes/verawood/feature_release_notes.rst +++ b/source/community/release_notes/verawood/feature_release_notes.rst @@ -9,6 +9,7 @@ Open edX Verawood Release - Product Release Notes :maxdepth: 1 verawood_lti_cert + copyright_accptance Information for site operators and developers, including information on how to enable and/or configure new features that require additional work, can be found diff --git a/source/site_ops/how-tos/configure_copyright_acceptance.rst b/source/site_ops/how-tos/configure_copyright_acceptance.rst new file mode 100644 index 000000000..039720bdc --- /dev/null +++ b/source/site_ops/how-tos/configure_copyright_acceptance.rst @@ -0,0 +1,78 @@ +.. _Configure copyright acceptance: + +Configure User Agreement Acceptance for Studio Uploads +******************************************************* + +.. tags:: site operator, how-to + +Setting this up requires two steps: creating the agreement record and then +configuring where it applies. + +Step 1: Create a UserAgreement +============================== + +In the Django admin, go to :guilabel:`/agreements/useragreement/` and create a +new ``UserAgreement``. Each agreement requires the following fields: + +- **Type** — a unique identifier used to track where this agreement applies + (for example, ``fair-use-terms`` or ``copyright-assignment``). +- **Name** and **Summary** — these appear in the alert banner shown to users. +- **URL** — required; displayed as a **Learn more** link in the alert banner. + +Step 2: Configure Agreement Gating via SiteConfiguration +========================================================= + +Configure where the agreement applies using the ``MFE_CONFIG_API`` in +``SiteConfiguration``. In the ``MFE_CONFIG`` section, add an +``AGREEMENT_GATING`` key. Under it, create a key for each gated feature with +one or more agreement types that must be accepted. + +The supported feature keys are: + +- ``upload`` — applies to both file and video upload pages +- ``upload.files`` — applies only to the file upload page +- ``upload.videos`` — applies only to the video upload page + +For a single agreement, provide the agreement type as a string. For multiple +agreements, provide a list of type strings. + +Example configuration: + +.. code-block:: json + + { + "MFE_CONFIG": { + "AGREEMENT_GATING": { + "upload": "fair-use-terms", + "upload.files": "copyright-assignment", + "upload.videos": [ + "video-format-agreement" + ] + } + } + } + +In this example: + +- All users uploading files or videos see the ``fair-use-terms`` agreement. +- Users uploading files also see the ``copyright-assignment`` agreement. +- Users uploading videos also see the ``video-format-agreement`` agreement. + +Acceptance is tracked by agreement type only, so a user who accepted +``fair-use-terms`` on the files page does not need to accept it again on the +videos page. + +Prompt Users to Re-accept an Updated Agreement +*********************************************** + +If you update an agreement and need users to re-accept it, update the +agreement's **updated date** field. Any user who accepted the agreement before +that date will be prompted to re-accept. + +**Maintenance chart** + ++--------------+-------------------------------+----------------+--------------------------------+ +| Review Date | Working Group Reviewer | Release |Test situation | ++--------------+-------------------------------+----------------+--------------------------------+ +| 2025-07-30 | OpenCraft | Verawood | Pass | ++--------------+-------------------------------+----------------+--------------------------------+ \ No newline at end of file From e2e00de8c00187322e8b669f0646fbea363d2869 Mon Sep 17 00:00:00 2001 From: Sarina Canelake Date: Tue, 28 Jul 2026 12:46:41 -0400 Subject: [PATCH 2/2] Fix typo --- .../community/release_notes/verawood/feature_release_notes.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/community/release_notes/verawood/feature_release_notes.rst b/source/community/release_notes/verawood/feature_release_notes.rst index 106589986..89cb46d2f 100644 --- a/source/community/release_notes/verawood/feature_release_notes.rst +++ b/source/community/release_notes/verawood/feature_release_notes.rst @@ -9,7 +9,7 @@ Open edX Verawood Release - Product Release Notes :maxdepth: 1 verawood_lti_cert - copyright_accptance + copyright_acceptance Information for site operators and developers, including information on how to enable and/or configure new features that require additional work, can be found