Commit Graph

50 Commits

Author SHA1 Message Date
Muhammad Umar Khan
a389a9ff10 Revert "Revert "refactor: move xmodule folder to root"" 2022-06-20 18:20:06 +05:00
Muhammad Umar Khan
d890f06507 Revert "refactor: move xmodule folder to root" 2022-06-20 16:03:48 +05:00
M Umar Khan
a91df0c40f refactor: move xmodule folder to root
- Moving xmodule folder to root as we're dissolving sub-projects of common folder in edx-platform
    - More info: https://openedx.atlassian.net/browse/BOM-2579
- -e common/lib/xmodule has been removed from the requirements as xmodule has itself become the part of edx-platform and not being installed through requirements
- The test files common/lib/xmodule/test_files/ have been removed as they are not being used anymore
2022-06-20 14:33:45 +05:00
Muhammad Adeel Tajamul
93dbb03984 Revert "feat: removed piazza from discussion providers" 2022-05-11 13:27:38 +05:00
adeel.tajamul
0b69c7b638 feat: removed piazza from discussion providers 2022-05-10 12:28:07 +05:00
SaadYousaf
149ca028d7 feat: update discussion settings API to handle changes reported_content_email_notification field 2022-04-13 15:10:48 +05:00
Juan David Buitrago
860dfde5b2 refactor: modified the imports to use openedx-events library (#29930)
* refactor: modified the imports to use openedx-events library

* chore: upgrade openedx-events to latest version

* fix: ran isort to avoid style errors

Co-authored-by: Maria Grimaldi <maria.grimaldi@edunext.co>
2022-03-07 19:42:13 +05:00
AsadAzam
60a21ad664 fix: add separate flag for new structure discussions (#29962)
* fix: add separate flag for new structure discussions

* fix: fixed tests
2022-02-23 10:57:19 +05:00
Michael Terry
cb1bb7fa64 test: switch default test store to the split store
It's long past time that the default test modulestore was Split,
instead of Old Mongo. This commit switches the default store and
fixes some tests that now fail:
- Tests that didn't expect MFE to be enabled (because we don't
  enable MFE for Old Mongo) - opt out of MFE for those
- Tests that hardcoded old key string formats
- Lots of other random little differences

In many places, I didn't spend much time trying to figure out how to
properly fix the test, and instead just set the modulestore to Old
Mongo.

For those tests that I didn't spend time investigating, I've set
the modulestore to TEST_DATA_MONGO_AMNESTY_MODULESTORE - search for
that string to find further work.
2022-02-04 14:32:50 -05:00
AsadAzam
e2bb15cda8 fix: added admin only config in available providers (#29865)
* fix: added admin only config in available providers

* fix: fixed tests
2022-02-04 15:32:43 +05:00
Kshitij Sobti
16881afcad feat: Allow fetching details of inactive providers [BD-38] (#29656)
* feat: Allow fetching details of inactive providers

* squash!: update tests add docs

* squash!: review feedback

* squash!: fix quality issue

* squash!: review feedback
2022-01-31 15:58:27 +05:00
Kshitij Sobti
2758301c31 feat: Discussion Topics API v2 [BD-38] [TNL-9332] [BB-5189] (#29530)
* feat: New API for discussion topics

Creates a new API for discussion topics that uses auto-crated discussion topic links for the new discussion provider.

* squash!: refresh migration
2022-01-31 15:57:49 +05:00
Jawayria
7f5b4a6a47 chore: removed 'wrong-import-order' from disabled imports (#29365)
* chore: removed 'wrong-import-order' from disabled imports
2022-01-06 19:14:51 +05:00
Kshitij Sobti
b5f045dc5f fix: update discussions MFE path [BD-38] [TNL-9347] (#29691)
* fix: update discussiosn MFE path

* squash!: fix tests
2022-01-06 18:34:53 +05:00
Awais Jibran
371a3ef1c6 fix: add pii sharing allowed flag (#29628) 2021-12-21 15:07:49 +05:00
Jawayria
67b44d3b45 chore: Applied lint-amnesty on openedx/core/djangoapps 2021-12-09 13:35:36 +05:00
Kshitij Sobti
9f4bc9900b feat: add discussions context to course blocks API (#29300)
Add a new course blocks transformer that adds discussion context for units.
2021-12-07 11:10:48 +05:00
Awais Jibran
72ec00cbb7 fix: include pii sharing values in the API (#29385) 2021-11-24 17:44:28 +05:00
Awais Jibran
5c2f8b23d4 fix: edx provider data in the api (#29331)
* fix: edx provider data in the api

* refactor: remove comments in the code

* test: update the test cases

* fix: quality changes
2021-11-19 18:58:28 +05:00
Kshitij Sobti
285e2c4f29 feat: Adds a new discussion topic configuration mechanism [BD-38] [TNL-8623] [BB-4968] (#29082)
* feat: Adds a new discussion topic configuration mechanism

The new discussion configuration system links discussion topics directly to the course structure. This change adds a new task that sends a discussion update signal if there are any changes to the course. This signal includes all the context needed to update the configuration of the course.

The handler for this new event will create a new entry for each unit that needs a topic in the database. In the future this will be used to see the topics in the course.

* fix: add support for marking a provider as supporting LTI

* fix: review feedback
2021-11-12 19:08:43 +05:00
Awais Jibran
5f97bc60cf test: adds discussion API permissions test cases (#29135) 2021-10-28 14:54:32 +05:00
Kshitij Sobti
79cd0b1ef8 feat: Adds discussions settings for new discusions experience [BD-38] [TNL-8621] [BB-4854] (#29131)
* feat: Adds discussions settings for new discusions experience
This commit adds new discussions settings for the new discussions experience. These are stored in the course so they can be a part of course import/export flow.
These are also added to the discussions configuraiton API to allow MFEs to update the settings.
The discussions API is currently available via LMS, however that means it cannot save changes to the modulestore. This also adds the API to the studio config so it can now also be accessed from studio and be used to save course settings.

* fix: tests
2021-10-28 11:56:17 +05:00
David Ormsbee
5d0132305d Revert "feat: Adds discussions settings for new discusions experience (#28749)"
This reverts commit bb0c03123c.
2021-10-27 10:40:12 -04:00
Kshitij Sobti
bb0c03123c feat: Adds discussions settings for new discusions experience (#28749)
This commit adds new discussions settings for the new discussions experience. These are stored in the course so they can be a part of course import/export flow.
These are also added to the discussions configuraiton API to allow MFEs to update the settings.
The discussions API is currently available via LMS, however that means it cannot save changes to the modulestore. This also adds the API to the studio config so it can now also be accessed from studio and be used to save course settings.
2021-10-27 15:41:27 +05:00
Awais Jibran
f1957a7cf7 fix: lms discussion tab url should be accurate (#29110)
* fix: lms discussion tab url should be accurate

* refactor: change supports_lti feature

* refactor: rename variable

* refactor: rename feature variable.

* fix: update supports_lti method

* test: fix failing tests.

* test: fix quality test failure

Co-authored-by: SaadYousaf <saadyousaf@A006-00314.local>
2021-10-26 19:57:41 +05:00
SaadYousaf
91fcad813d fix: update discussion features with support level added to API response 2021-10-11 17:40:44 +05:00
Awais Jibran
aac6c4c4cb fix: default discussion config (#28900)
* fix: default discussion config

* refactor: add closing bracket

Co-authored-by: Asad <asadazam93@gmail.com>
2021-10-06 16:37:16 +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
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
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
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
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
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
49594d92e6 fix: Grant course staff access to discussions API
to match expected behavior.
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
2053da2a9e fix: Update default provider returned by discussions API 2021-04-07 11:54:21 -07:00
David Joy
8c6a06cf5b fix: adjust discussions app APIs to match consuming frontend (#27085)
This commit adjusts a few values in our discussions configuration APIs to make them match what the frontend needs, as well as to more accurately reflect the providers available today.

- The `active` provider ID is expressed as None if it doesn’t exist
- The “cs_comments_service” provider has been renamed “legacy” - when we implement the new discussions micro-frontend, we’ll also have a separate provider for that, so they can’t both be “cs_comments_service”.  Also, cs_comments_service is such a bad name for anything.
- The hard-coded providers list in get_supported_providers now includes ‘legacy’ and ‘piazza’, our two known providers.  This list will be updated as more known providers come online.
- The PROVIDER_FEATURE_MAP has similarly been updated.

Part of this task: TNL-8093
2021-03-23 13:37:16 -04:00
usamasadiq
96f0915b0f Fixed new pylint warnings.
use generator in any/all()
disable not-callable warnings
disable no-member warnings
Suppressed smaller pylint warnings
Pin edx-proctoring==3.5.0
2021-02-22 16:36:53 +05:00
Aarif
c880a44947 replaced unittest assertions pytest assertions (#26566) 2021-02-22 12:24:07 +05:00
stvn
c36c343c58 style: Fix pylint issues in discussions app 2021-02-02 16:57:39 -08:00
stvn
cff2cb8941 feat: Allow filtering of discussion providers
Propose and implement organization-wide discussion-provider filtering.

Fixes: TNL-7814
2021-02-02 06:51:41 -08:00
stvn
c7a4f97ba1 Add get-accessor helper for discussions plugins 2020-12-17 20:08:57 -08:00
stvn
590286f3be Add is_enabled helper for discussions plugins 2020-12-17 19:40:41 -08:00
stvn
39acbf2f21 Implement a new configuration system for discussions plugins
Additional details available in the attached decisions document.

Co-authored-by: Kshitij Sobti <kshitij@sobti.in>
Co-authored-by: stvn <stvn@mit.edu>
2020-12-17 18:23:46 -08:00