Commit Graph

72 Commits

Author SHA1 Message Date
=Awais Jibran
30ca1804d6 fix: Update provider features list for discussions
This Pr updates the features list of the discussion providers for,
1. Combines LTI basic configuration and LTI integration into 1 feature.
2.Enables Primary discussion app experience for Yellowdig
3. Hides Automatic learner enrollment from this list

FE changes (in Other PR):
1. Turn edX to Full Support instead of partial support
2. Rename Partial support to Basic support

https://openedx.atlassian.net/browse/TNL-8546
2021-07-29 18:15:10 +05:00
Mehak Nasir
7b29d1bdf2 fix: description updates for pages and resources 2021-07-27 20:32:31 +05:00
João Cabrita
0879568023 feat(discussions): Add messages field to provider descriptions
This adds an `messages` field containing messages relevant
for configuring the provider to the DiscussionsConfigurationView.

Related tickets:
* [TNL-8339](https://openedx.atlassian.net/browse/TNL-8339)
* [TNL-8523](https://openedx.atlassian.net/browse/TNL-8523)
* [BB-4249 (OpenCraft Internal)](https://tasks.opencraft.com/browse/BB-4249)
2021-07-26 13:51:23 +05:00
Mehak Nasir
79181b3db0 fix:link fix for the yellowdig general documentation 2021-07-14 22:54:09 +05:00
Kshitij Sobti
666a50d298 feat: allow optionally passing PII in course LTI tab (#26982) 2021-07-09 18:13:42 +05:00
João Cabrita
530e4932bb fix!: Disable changing discussions providers once a course run has started
For authenticated users that are not global staff, changing discussion
providers after a course has started fails with 403 Forbidden.

Related issues:
* [BB-4253](https://tasks.opencraft.com/browse/BB-4253)
* [TNL-8142](https://openedx.atlassian.net/browse/TNL-8142)

BREAKING CHANGE:
Course staff, who were previously allowed to do this operation,
will instead receive a 403 Forbidden response.
2021-07-09 12:14:23 +05:00
AsadAzam
7212c74713 fix: remove edx-next as a discussion provider (#28059) 2021-06-30 11:08:37 +05:00
AsadAzam
f9082a082e fix: re-order the discussion features (#28046) 2021-06-28 19:13:14 +05:00
SaadYousaf
16972b4991 test: add tests to test override_legacy_discussion_settings flag with different roles 2021-06-28 11:54:17 +05:00
SaadYousaf
608f1994b7 refactor: move waffle flag calculation to utils file and other updates 2021-06-28 11:54:16 +05:00
SaadYousaf
039a816e57 refactor: move pages_and_resources_mfe WaffleFlag to use in both LMS and Studio 2021-06-28 11:54:16 +05:00
SaadYousaf
09c8ef931e feat: Add CourseWaffleFlag for overriding course discussion settings for legacy experience. 2021-06-28 11:54:16 +05:00
Kshitij Sobti
d2c2fcdefe feat: Course Apps API [BD-38] [TNL-8103] [BB-2716] (#27542)
* feat: Course Apps API

This adds a new concept called course apps. These are exposed via a new
"openedx.course_app" entrypoint, which helps the LMS and studio discover such
apps and list them in a new rest api for the same.

These course apps will drive the pages and resources view in the course authoring
MFE. This system will track which apps are enabled and which are disabled. It
also allows third-party apps to be listed here by using the plugin entrypoint.

* Apply feedback from review
2021-06-23 21:51:12 +05:00
Usama Sadiq
2e33565320 fix: fixed the pylint violations causing quality failures (#27934) 2021-06-11 19:49:17 +05:00
Mehak Nasir
baa9fd8831 Merge pull request #27860 from edx/TNL-7832
feat: documentation links added in discussion api
2021-06-11 14:57:42 +05:00
Mehak Nasir
222d898e39 refactor: renaming external keys and improved code review fixes 2021-06-10 21:51:08 +05:00
Mehak Nasir
b6f96f25b9 fix: removed google drive link from codebase 2021-06-10 14:17:35 +05:00
Mehak Nasir
d4431455a1 refactor: updated provider map structure and test cases 2021-06-10 12:01:51 +05:00
Kyle McCormick
d42b0c401d refactor: normalize xmodule imports
Code in ./common/lib/xmodule/xmodule should
be imported as `from xmodule`, since `xmodule`
is a locally-installed package.

This is weird, but as long as it is the case,
we should be consistent.

(In BOM-2584, I propose moving the files to
 ./xmodule, which would quell this confusion.)
2021-06-07 16:36:38 -04:00
Mehak Nasir
b9fc89a328 feat: documentation links added in discussion model 2021-06-07 13:57:01 +05:00
Ahtisham Shahid
73226f527b refactor: updated feature names as per convention 2021-05-11 18:20:17 +05:00
Ahtisham Shahid
e025c9bb64 refactor: sorted imports and misc cont renames 2021-05-11 18:20:17 +05:00
Ahtisham Shahid
1a43a4ca29 feat: Added new discussion providers and features
refactor: Fixed linter issues

refactor: Fixed styling issues

refactor: Code refactor and removed conflicts

refactor: Replaced feature dict with enum
2021-05-11 18:20:11 +05:00
Usama Sadiq
4f4be6538a BOM-2477: pylint warnings lint-amnesty (#27585) 2021-05-11 17:22:40 +05:00
stvn
8ed13dfbc3 tests: Add data tests for Discussions API
Closes stvstnfrd/openedx-meta#3
Closes CENG-58
Closes TNL-8230
2021-05-07 09:23:40 -07:00
stvn
165944c091 fix: Improve validation in Discussions API 2021-05-07 09:23:40 -07:00
stvn
718458115a docs: Remove completed TODO discussions item 2021-04-30 11:47:34 -07:00
stvn
e62705a365 feat: Add support to Discussions API for legacy cohort settings 2021-04-30 11:47:34 -07:00
stvn
eaeec735a9 feat: Add support for legacy discussions settings to API 2021-04-27 12:50:53 -07:00
stvn
4776ab1504 test: Add CourseFactory to discussions API tests 2021-04-27 12:37:29 -07:00
stvn
a99c95da64 feat: Hide lti_configuration from non-LTI discussions providers 2021-04-17 00:59:17 -07:00
stvn
33e499ea04 fix: Update discussions lti_configuration during provider_type change
Else, we risk updating it when we don't intend to, eg:
- changing from an LTI-backed provider (Piazza) to a non-LTI-backed
  provider (legacy)
  - the settings are no longer relevant
- changing from a non-LTI-backed provider (legacy) to an LTI-backed
  provider (Piazza)
  - the settings _are_ now relevant
2021-04-17 00:59:17 -07:00
stvn
c1742b7b66 feat: Add helper for discussions configuration to indicate feature support 2021-04-17 00:52:51 -07:00
stvn
fb2f8e6291 refactor: Remove superfluous dict comprehension 2021-04-17 00:48:01 -07:00
stvn
49594d92e6 fix: Grant course staff access to discussions API
to match expected behavior.
2021-04-16 11:23:44 -07:00
stvn
5284f397b4 refactor: Make discussions helper method more accessible
so we can use it elsewhere.
2021-04-16 11:23:44 -07:00
stvn
2fa36fb0cf refactor: Move StaffFactory helper to common/ 2021-04-14 07:26:39 -07:00
stvn
5dd8302d8b refactor: Move GlobalStaffFactory helper to common/ 2021-04-14 07:26:39 -07:00
stvn
eba78682c9 test: Test (incorrect) behavior of discussions API access
As implemented, course staff members will not have access to this API
endpoint. This will be addressed with pending work [1].

- [1] https://openedx.atlassian.net/browse/TNL-8231
2021-04-13 23:57:49 -07:00
stvn
4f0415f5cb test: Add tests for discussions API access
This checks for expected API access [1];
data integrity will be checked later [2].

This work exposes that the code currently does _not_ grant access to
_course_ staff, only _global_ staff. This is being addressed next [3].

Fix: TNL-8229 [1]

- [1] https://openedx.atlassian.net/browse/TNL-8229
- [2] https://openedx.atlassian.net/browse/TNL-8230
- [3] https://openedx.atlassian.net/browse/TNL-8231
2021-04-13 23:57:49 -07:00
stvn
fc39c3e073 fix: Stop using view_auth_classes helper in discussions API
as it conflicts with the manually-assigned `permission_classes`;
the decorator erases them.
2021-04-09 09:38:27 -07:00
stvn
67e045b5e0 refactor: Move discussions api LTI serialization logic 2021-04-08 09:31:48 -07:00
stvn
862ba01208 style: Add more typehints to discussions API 2021-04-07 21:05:33 -07:00
stvn
2053da2a9e fix: Update default provider returned by discussions API 2021-04-07 11:54:21 -07:00
stvn
d884967e2c refactor: Split kwargs out to individual lines
to make further addition/deletion cleaner.
2021-04-07 11:43:12 -07:00
stvn
6eabae0d9e feat: Implement POST endpoint for discussions API 2021-04-07 10:48:59 -07:00
stvn
87e375d627 feat: Implement update helper for discussions API 2021-04-07 10:48:59 -07:00
stvn
342d922034 feat: Implement to_internal_value helper for discussion API 2021-04-07 10:48:59 -07:00
stvn
def644b9aa feat: Add lti_configuration to discussions API payload 2021-04-07 10:48:59 -07:00
stvn
0cce315539 refactor: Base discussions serializer off of ModelSerializer
to make Django operations easier.
2021-04-07 10:48:59 -07:00