Skip to content

Commit

Permalink
docs: refactor tabs
Browse files Browse the repository at this point in the history
  • Loading branch information
asajjad2 committed Feb 21, 2025
1 parent 4092b2b commit c194af7
Show file tree
Hide file tree
Showing 6 changed files with 43 additions and 84 deletions.
98 changes: 28 additions & 70 deletions src/edx_username_changer/README.rst
Original file line number Diff line number Diff line change
@@ -1,94 +1,52 @@
Edx Username Changer
=======================

Canvas Integration Plugin
=============================

A django app plugin to add Canvas integration to Open edX.

**NOTE:**

We had to make some changes to edx-platform itself in order to add the "Canvas" tab to the instructor dashboard.

The ``edx-platform`` branch/tag you're using must include one of the below commit for ``ol-openedx-canvas-integration`` plugin to work properly:

**For "Sumac" or more recent release of edX platform, you should cherry-pick below commit:**

TBA - Will be added when we merge the PR in edx-platform

**For "Quince" to "Redwood" release of edX platform, you should cherry-pick below commit:**

https://github.com/mitodl/edx-platform/commit/7a2edd5d29ead6845cb33d2001746207cf696383

**For "Nutmeg" to "Palm" release of edX platform, you should cherry-pick below commit:**

- https://github.com/mitodl/edx-platform/pull/297/commits/c354a99bd14393b89a780692d07b6e70b586d172

**For any release prior to "Nutmeg" you should cherry-pick below commit:**

- https://github.com/mitodl/edx-platform/pull/274/commits/97a51d208f3cdfd26df0a62281b0964de10ff40a

A plugin to enable update usernames through admin panel in Open edX (and other apps that log into Open edX via OAuth).

Version Compatibility
---------------------

**For "Sumac" or more recent release of edX platform**
It only supports koa and latest releases of Open edX.

Use ``0.4.0`` or a above version of this plugin

**For "Quince" to "Redwood" release of edX platform**

Use ``0.3.0`` or a above version of this plugin

**For "Nutmeg" to "Palm" release of edX platform**

Use ``0.2.4`` or a above version of this plugin

**For releases prior to "Nutmeg"**

Use ``0.1.1`` version of this plugin

Installation
------------
Installing The Plugin
---------------------

For detailed installation instructions, please refer to the `plugin installation guide <../../docs#installation-guide>`_.

Installation required in:

* LMS
* CMS

Configuration
------------

**1) edx-platform configuration**
Configurations
--------------
To configure this plugin, you need to do one of the following steps:

- Add the following configuration values to the config file in Open edX. For any release after Juniper, that config file is ``/edx/etc/lms.yml``. If using `private.py`, you will need to add these values in `lms/envs/private.py`. These should be added to the top level. **Ask a fellow developer or devops for these values.**
1. Add/Enable a feature flag (ENABLE_EDX_USERNAME_CHANGER) into your environment variables (through ``private.py`` in LMS)

.. code-block::
.. code-block::
FEATURES["ENABLE_EDX_USERNAME_CHANGER"] = True
CANVAS_ACCESS_TOKEN: <some access token value>
CANVAS_BASE_URL: <the base URL where Canvas is running>
2. Add/Enable a feature flag (ENABLE_EDX_USERNAME_CHANGER) into your environment variables (through ``lms.env.yml`` file)

- For Tutor installations, these values can also be managed through a `custom tutor plugin <https://docs.tutor.edly.io/tutorials/plugin.html#plugin-development-tutorial>`_.
.. code-block::
**2) Add course settings value**
FEATURES:
...
ENABLE_EDX_USERNAME_CHANGER: True
...
1) Open your course in Studio.
2) Navigate to "Advanced Settings".
3) Enable other course settings by enabling ``ENABLE_OTHER_COURSE_SETTINGS`` feature flag in CMS
4) Open course advanced settings in Open edX CMS, Add a dictionary in ``{"canvas_id": <canvas_course_id>}``. The ``canvas_course_id`` should be the id of a course that exists on Canvas. (NOTE: Canvas tab would only be visible if this value is set)
3. For Tutor installations, these values can also be managed through a `custom Tutor plugin <https://docs.tutor.edly.io/tutorials/plugin.html#plugin-development-tutorial>`_.


How To Use
How to use
----------
Its usage is as simple as changing the username of a user account through django's admin panel. Here are the steps (for clarity):

1. In Studio, create/navigate to a course and create some graded assignments/quizzes.
2. In LMS, open the above course, navigate to the "Instructor" tab, and make sure that you see can see a "Canvas" tab.


Some of the functionality available in this tab:
1. Install edx-username-changer plugin.
2. Use an admin account to access django admin panel.
3. Go to Users model and select an account to change its username.
4. In the account editor page change the username field.
5. Hit Save (present at the bottom-right of page).

- ``List enrollments on Canvas`` - Show all enrollments for the course on Canvas.
- ``Merge enrollment list using Canvas`` - Enroll all the users that are present on edX. For the users that don't exist on edX, a ``CourseEnrollmentAllowed`` object will be created.
- ``Overload enrollment list using Canvas`` - Ensure that enrollment records in edX match the enrollments in Canvas (i.e.: create any enrollments that exist in Canvas but don't exist in edX, and delete enrollments that exist in edX but not in Canvas)
- ``Push all MITx grades to Canvas`` - Ensure that Canvas has the equivalent assignments/quizzes for the course, and create/update the user grades for those assignments/quizzes in Canvas (The assignments must have a `Published` status on Canvas)
- ``List Canvas assignments`` - Show a dropdown of all the assignments that are present on Canvas, and upon selecting an assignment, show a list of grades.
The whole process can be done on lms or studio or on both of them.
4 changes: 2 additions & 2 deletions src/ol_openedx_canvas_integration/README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -59,15 +59,15 @@ Configuration

**1) edx-platform configuration**

- Add the following configuration values to the config file in Open edX. For any release after Juniper, that config file is ``/edx/etc/lms.yml``. If using `private.py`, you will need to add these values in `lms/envs/private.py`. These should be added to the top level. **Ask a fellow developer or devops for these values.**
- Add the following configuration values to the config file in Open edX. For any release after Juniper, that config file is ``/edx/etc/lms.yml``. If using `private.py`, you will need to add these values in `lms/envs/private.py`. These should be added to the top level. **Ask a fellow developer or devops for these values.**

.. code-block::
CANVAS_ACCESS_TOKEN: <some access token value>
CANVAS_BASE_URL: <the base URL where Canvas is running>
- For Tutor installations, these values can also be managed through a `custom tutor plugin <https://docs.tutor.edly.io/tutorials/plugin.html#plugin-development-tutorial>`_.
- For Tutor installations, these values can also be managed through a `custom tutor plugin <https://docs.tutor.edly.io/tutorials/plugin.html#plugin-development-tutorial>`_.

**2) Add course settings value**

Expand Down
4 changes: 2 additions & 2 deletions src/ol_openedx_checkout_external/README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -19,14 +19,14 @@ Configuration

**1) edx-platform configuration (Environment/Settings)**

- You might need to add the following configuration values to the config file in Open edX. For any release after Juniper, that config file is ``/edx/etc/lms.yml``. If using `private.py`, you will need to add these values in `lms/envs/private.py`. These should be added to the top level. **Ask a fellow developer or devops for these values.**
- You might need to add the following configuration values to the config file in Open edX. For any release after Juniper, that config file is ``/edx/etc/lms.yml``. If using `private.py`, you will need to add these values in `lms/envs/private.py`. These should be added to the top level. **Ask a fellow developer or devops for these values.**

.. code-block::
MARKETING_SITE_CHECKOUT_URL = <MARKETING_SITE_CHECKOUT_URL> # The URL of checkout/cart API in your marketing site
ECOMMERCE_PUBLIC_URL_ROOT = <LMS_BASE_URL> # Because we want to use external ecommerce using this API plugin for redirection
- For Tutor installations, these values can also be managed through a `custom tutor plugin <https://docs.tutor.edly.io/tutorials/plugin.html#plugin-development-tutorial>`_.
- For Tutor installations, these values can also be managed through a `custom tutor plugin <https://docs.tutor.edly.io/tutorials/plugin.html#plugin-development-tutorial>`_.

**2) edx-platform configuration (Django Admin)**

Expand Down
4 changes: 2 additions & 2 deletions src/ol_openedx_course_export/README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ Configuration

**1) edx-platform configuration**

- You might need to add the following configuration values to the config file in Open edX. For any release after Juniper, that config file is ``/edx/etc/lms.yml``. If using `private.py`, you will need to add these values in `lms/envs/private.py`. These should be added to the top level. **Ask a fellow developer or devops for these values.**
- You might need to add the following configuration values to the config file in Open edX. For any release after Juniper, that config file is ``/edx/etc/lms.yml``. If using `private.py`, you will need to add these values in `lms/envs/private.py`. These should be added to the top level. **Ask a fellow developer or devops for these values.**

.. code-block::
Expand All @@ -27,7 +27,7 @@ Configuration
AWS_SECRET_ACCESS_KEY: <your api access key>
COURSE_IMPORT_EXPORT_BUCKET: <bucket name to export the courses to>
- For Tutor installations, these values can also be managed through a `custom tutor plugin <https://docs.tutor.edly.io/tutorials/plugin.html#plugin-development-tutorial>`_.
- For Tutor installations, these values can also be managed through a `custom tutor plugin <https://docs.tutor.edly.io/tutorials/plugin.html#plugin-development-tutorial>`_.

How To Use
----------
Expand Down
15 changes: 8 additions & 7 deletions src/ol_openedx_git_auto_export/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,14 @@ Configuration
}
```
- Set your commit user in `cms/envs/common.py`, if you don't want to use the default one
```
GIT_EXPORT_DEFAULT_IDENT = {
'name': 'STUDIO_EXPORT_TO_GIT',
'email': 'STUDIO_EXPORT_TO_GIT@example.com'
}
```
- Restart the server using `make studio-restart`
```
GIT_EXPORT_DEFAULT_IDENT = {
'name': 'STUDIO_EXPORT_TO_GIT',
'email': 'STUDIO_EXPORT_TO_GIT@example.com'
}
```
- Restart the server using `make studio-restart` or on Tutor `tutor dev/local restart openedx`
- Note: For Tutor installations, these values can also be managed through a [custom tutor plugin](https://docs.tutor.edly.io/tutorials/plugin.html#plugin-development-tutorial).
#### Setup github authentication for plugin:
If you're testing from a docker machine running devstack setup github authentictaion for plugin, you'll need to generate SSH keys in that
Expand Down
2 changes: 1 addition & 1 deletion src/rapid_response_xblock/README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ the given values in
.. code:: python
{
"ALLOW_ALL_ADVANCED_COMPONENTS": true,
"ALLOW_ALL_ADVANCED_COMPONENTS": True,
"ADDL_INSTALLED_APPS": ["rapid_response_xblock"]
}
Expand Down

0 comments on commit c194af7

Please sign in to comment.