Commit Graph

22646 Commits

Author SHA1 Message Date
stvn
f08dcdbf51 refactor: Import a single function, not the whole module 2021-04-13 23:25:48 -07:00
stvn
43698fff0a refactor: Move get_course_by_id helper from LMS to core
This helper is used by the LMS, CMS, _and_ `openedx.core`,
so let's move it to `openedx.core` to reduce import complexity.

The following files no longer import from LMS:
- cms/djangoapps/contentstore/management/commands/edit_course_tabs.py
- lms/djangoapps/ccx/migrations/0006_set_display_name_as_override.py
- openedx/core/djangoapps/ccxcon/api.py
- openedx/core/djangoapps/verified_track_content/models.py
- openedx/features/course_experience/plugins.py

Note: The LTI XBlock has a dependency on this import path (!?);
a fix can be found here [1].

- [1] https://github.com/edx/xblock-lti-consumer/pull/154
2021-04-13 23:25:48 -07:00
Thomas Tracy
a4b338febc refactor: reformat the manual verifications command to allow for single user verification (#27305)
* refactor: reformat the manual verifications command to allow for single user verifications

* reformat error message

* linting

* linting: add doc string

* whitespace
2021-04-13 11:02:56 -04:00
Hammad Ahmad Waqas
d904534fc8 Merge pull request #27239 from edx/hammad/ENT-4361
ENT-4361 | Added user's "id" and "email" as public fields in ACCOUNT_VISIBILITY_CONFIGURATION.
2021-04-13 17:21:43 +05:00
Justin Hynes
2c96a2aca9 feat: stop removing verify_uuid value when revoking course certificates
[MB-1077]
- Stop removing the verify_uuid when revoking course certificates. In v2 of course certificates this will allow us to retain the same URL to the certificate. If a learner's certificate is revoked (from being invalidated or no longer passing the course) the UUID will remain intact and the URL will not change.
- Look for an existing cert for the user in a course-run during generation. If one exists, use the UUID from the existing certificate when updating the record.
- Stop generating a `key` for v2 web-certificates. This is not needed for web-certs (this is used in PDF cert generation).
2021-04-12 14:39:21 -04:00
HammadAhmadWaqas
3aa9248dcf * Added user's "id" and "email" as public fields in ACCOUNT_VISIBILITY_CONFIGURATION.
* Updated api/user/v1/accounts list view to search based on multiple emails as well.
2021-04-12 21:13:53 +05:00
Kyle McCormick
4531e15519 refactor!: stop using import_shims
Attempting to import packages from
lms/djangoapps, cms/djangoapps, or common/djangoapps
as if they are import roots will now
simply raise ImportErrors (like any other invalid
import) instead of DeprecatedEdxPlatformImportError.

See docs/decisions/0007-sys-path-modification-removal.rst
for more details.
2021-04-12 09:43:59 -04:00
Kyle McCormick
f92740b39f refactor: remove superfluous courseware/__init__.py warning 2021-04-12 09:43:59 -04:00
Awais Jibran
30c80082c3 Use config settings for olxcleaner (#27294)
* Use config settings for olxcleaner

Use config settings instead of hardcoded values for olx validation. This would help in adding a great deal of control when you want to change these settings in the future. With this approch we would not need a redeploy.

* Use configs and deprecate waffleflag and also add / update tests
2021-04-12 16:27:42 +05:00
Uzair Rasheed
488069f0cf Merge pull request #27292 from edx/add-separate-ratelimit-var
Add independent ratelimit setting for forms
2021-04-10 14:46:53 +05:00
Feanil Patel
16e4aa3c62 chore: Remove decentralized devstack config.
We have decided not to pursue the decentralized devstack design right
now and so we want to cleanup files and task that were built as a part
of the process.

Related Ticket: ARCHBOM-1685
2021-04-09 15:50:03 -04:00
uzairr
1d5a95facb Add independent ratelimit setting for forms
Currently, login and registration forms and view to log the user in
are sharing same ratelimit settings which is causing too much noise
while rendering forms.This PR will introduce a separate
setting for logistration forms.

VAN-436
2021-04-09 21:10:08 +05:00
Bianca Severino
83ceefc4c5 Merge pull request #27244 from edx/bseverino/proctoring-info-masquerade
[MST-738] Pass username into CourseHomeMetadataView
2021-04-09 10:44:04 -04:00
Carla Duarte
ad59e31832 Merge pull request #27293 from edx/ciduarte/AA-721
feat: add letter grade to MFE Progress Tab API
2021-04-09 10:22:01 -04:00
Christie Rice
811a6cd6df feat!: Remove unused api and prefix methods that are only used internally with _ (#27286)
MICROBA-1106
2021-04-09 09:48:32 -04:00
Carla Duarte
ae5733f176 feat: add letter grade to MFE Progress Tab API 2021-04-09 09:25:53 -04:00
Pooja Kulkarni
86bfcea19c feat: Django app to allow user retirement via API (#25800)
This adds a new django app to allow the GDPR user retirement via
Open edX's REST API. Prior to this the only way to trigger the user
retirement was either by the user themself clicking "Delete my account"
in the account setting page or via creating a User Retirement request
by admin. With these changes, the user retirement process can be
triggered using REST API.
2021-04-08 13:50:12 -04:00
JJ
ffd196ca2f refactor: move social media icons on course dashboard for mobile [REV-2128] (#27107)
Move the social media icons around the course dashboard; particularly for the mobile view.
2021-04-08 10:41:33 -04:00
HamzaIbnFarooq
582c02afc4 feat!: remove sysadmin dashboard feature w.r.t 0002-deprecate-sysadmin-dashboard-adr.rst
The sysadmin dashboard feature is converted into a plugable app named edx-sysadmin (https://github.com/mitodl/edx-sysadmin) according to the decisison made at https://github.com/edx/edx-platform/blob/master/lms/djangoapps/dashboard/decisions/0002-deprecate-sysadmin-dashboard-adr.rst. Instances using sysadmin dashboard should use the new plugin from now onwards.

BREAKING CHANGE: sysadmin dashboard is removed
2021-04-08 09:15:11 -04:00
Christie Rice
8d4d4f5e79 fix: Clear error reason when setting a non-error status (#27273)
MICROBA-1106
2021-04-07 14:11:13 -04:00
Kyle McCormick
19ba691e33 refactor: clean up some courseware URL handling docs & tests
Based on Julia's code review.
2021-04-07 10:24:58 -04:00
Kyle McCormick
a69567b18b feat: default staff to courseware MFE if active (via jump_to)
The /jump_to/ LMS endpoint is used in a number of places
to direct users to courseware. It currently only redirects to
Legacy courseware URLs, which then conditionally may
redirect to the Learning MFE.

Two issues with this:
1. Performance Impact: In most cases, going to Legacy first
   is just an extra redirect.
2. Confusion for Privileged Users: Neither course nor global
   staff are auto-redirected from the Legacy experience to the
   MFE. Thus, these priviliged users confusingly never see the
   MFE by default; they must always manually click into it.

This commit makes it so that /jump_to/ directs
users to whatever the default courseware experience is
for them. For staff of courses active in the new experience,
this will impact (at a minimum) the "View Live"
links in Studio, all links on the old and new LMS
course outline, and the "Resume" links on the course
dashboard. Learners should see no difference other than
a performance improvement when following courseware links
from the LMS.

This also adds an optional 'experience=[legacy|new]'
query param to /jump_to/, allowing us to specifically
generate Legacy courseware URLs for the
"View in Legacy Experience" tool.

TNL-7796
2021-04-07 10:24:58 -04:00
Kyle McCormick
4a5928d3e8 refactor: in TestJumpTo, say 'sequence' instead of 'section'
'section' is a very outdated (<2012) way to refer sequences,
which we also call 'subsections'. The old terminology still exists
throughout the courseware djangoapps, but I decided to clean up this
one test case while I'm working on it.
2021-04-07 10:24:58 -04:00
Kyle McCormick
4c027b99a2 refactor: factor out _toggle_mfe_waffle_flag test util 2021-04-07 10:24:58 -04:00
Jansen Kantor
079f43f40d EDUCATOR-5571: filter gradebook api by course staff role (#26994)
feat: add excluded_course_roles parameter to gradebook view to allow omitting staff
2021-04-07 10:09:16 -04:00
Piotr Surowiec
bc1e9afe4b feat: allow overriding unit icons (#21433)
This:
1. Introduces a new override using the `pluggable_override` decorator.
It is now possible to specify a custom way of getting XBlock's icon
by defining `GET_UNIT_ICON_IMPL` in settings.
2. Introduces a way to add custom `XBLOCK_MIXINS` by defining
`XBLOCK_EXTRA_MIXINS` in settings. This allows, e.g. to add
new fields to XBlocks.
2021-04-07 09:42:12 -04:00
Christie Rice
3d20c848f8 style: Use constants for certificate status. Update certificate status and grade documentation. (#27250)
MICROBA-1074
2021-04-07 09:38:56 -04:00
Ahtisham Shahid
581230d16d Fixed notes background color contrast (#27004)
* Fixed notes background color contrast
2021-04-07 17:26:02 +05:00
Saqib
10fc3f4b38 docs: add annotations for CUSTOM_CERTIFICATE_TEMPLATES_ENABLED feature flag (#27185) 2021-04-07 08:21:14 -04:00
Jawayria
707f940770 Refactor: Removed unused imports
Removed unused imports from lms/djangoapps/{course_wiki, coursewarehistoryextended, discussion}
2021-04-07 12:54:21 +05:00
Justin Hynes
6645d0348a Merge pull request #27258 from edx/jhynes/microba-974_invalidate_cert_properly
fix: invalidate certificate properly when regenerating certs from the support tool
2021-04-06 11:27:22 -04:00
Justin Hynes
2d6a4126e7 fix: invalidate certificate properly when using regeneration from support tool
[MICROBA-974]
* Update `regen_cert` function to call the certificate objects `invalidate` method, instead of just setting the certificate status as 'unavailable'. This change will make it so the certificate revoked signal is sent in an attempt to keep data in the Credentials IDA in sync
2021-04-06 10:30:19 -04:00
Justin Hynes
13d174fdda fix: update v2 certificate generation eligibility logic
[MICROBA-1109]
* Remove the requirement for the `auto_certificate_generation` waffle switch to be enabled in order for a learner to be eligible for a certificate. This switch should control _when_ a certificate is generated, not _if_ a certificate will be generated for a learner.
* Move the `auto_certificate_generation_enabled` check to happen before we try to generate v2 certificates in signals.py
* Update unit tests
* Update documentation
2021-04-06 08:50:54 -04:00
Sarina Canelake
6e71251f57 Merge pull request #27209 from raccoongang/ideg/fix_language_preferences_change
fix: Language preferences change enhancement.
2021-04-06 08:09:40 -04:00
Bianca Severino
8cee215c01 feat: pass username into CourseHomeMetadataView
Passes the request username into the course home metadata view so that
masquerade functionality can be used with the proctoring info panel.
2021-04-05 15:15:05 -04:00
Christie Rice
1181fb343e feat!: Remove allow_certificate checks from course certificates (#27206)
DEPR-140 MICROBA-985
2021-04-05 14:00:07 -04:00
Robert Raposa
96be45f1bd Merge pull request #27222 from edx/robrap/ARCHBOM-1721-toggle-doc-cleanup
ARCHBOM-1721: docs: update toggle docs
2021-04-05 10:47:55 -04:00
alangsto
4640280daa fix: Update expiration timeline on dashboard and specify ID verification (#27199)
MST-706. ID Verification is now valid for 2 years, so messaging used to notify learners about their ID expiration should be updated to reflect this. We have chosen to only update the messaging that is related to the current IDV flow (going through IDV on the account MFE), as the old IDV flow is no longer used by learners on edX.
2021-04-05 10:18:54 -04:00
Justin Hynes
85af4e81ec Merge pull request #27216 from edx/jhynes/microba-1100-remove-allowlist-mgmt-cmd
chore: remove `cert_allowlist_generation` management command
2021-04-05 08:06:59 -04:00
Ali Akbar
4b954855cb Merge pull request #27229 from edx/aakbar/PROD-2327
refactor: update contact us form
2021-04-05 13:13:32 +05:00
Feanil Patel
9f4a8e6724 Merge pull request #27233 from edx/feanil/flag_management
feat!: Replace logging WaffleSwitch with a django settinge.
2021-04-02 15:12:11 -04:00
Feanil Patel
ba4d98898e Merge pull request #27231 from edx/feanil/more_safe_sessions_updates
fix: Reduce safe-sessions false alarms.
2021-04-02 14:45:22 -04:00
Feanil Patel
8e7144ae2e revert: "test: Update query counts."
This reverts commit c2eabf6cca.

We are changing this from a waffle setting to a django setting so we can
undo this query count bump.
2021-04-02 14:42:55 -04:00
Feanil Patel
4f725aa152 test: Add a test for setup_masquerade.
Test to verify the side-effects of calling this function since we now
rely on one of them in the SafeSessionMiddleware.
2021-04-02 14:19:10 -04:00
Feanil Patel
c45ffd7509 test: Test login redirects prefer session cookies.
Add a test to ensure that the login page redirect as long as we have a
valid session even if we have expired on non-existent JWT cookies.
2021-04-02 14:19:10 -04:00
Michael Terry
b897bd4b44 Merge pull request #27230 from edx/mikix/video-completion-typo
fix: fix typo that prevented video completion working as intended
2021-04-02 12:30:51 -04:00
Asad Iqbal
82c90b40b0 Added setting to manage from_email address (#24951)
Co-authored-by: asadiqbal08 <asad.iqbal@arbisoft.com>
2021-04-02 12:08:51 -04:00
Michael Terry
5169d70b14 fix: fix typo that prevented video completion working as intended
Neither of these settings were being correctly set:
* COMPLETION_BY_VIEWING_DELAY_MS
* COMPLETION_VIDEO_COMPLETE_PERCENTAGE

AA-743
2021-04-02 11:50:19 -04:00
Bianca Severino
3712e0ee2e Merge pull request #27205 from edx/bseverino/idv-validate-image-data
[MST-718] Validate the media type of uploaded IDV images
2021-04-02 11:38:47 -04:00
Bianca Severino
4fc5713792 fix: validate the media type of uploaded IDV images 2021-04-02 10:49:08 -04:00