Commit Graph

59845 Commits

Author SHA1 Message Date
oliviaruizknott
dbfe2a3f2b feat: notify_credentials of changed overrides
We use the `notify_credentials` management command to keep certificate-
related data in the LMS and Credentials service in sync. We can run it
with specific arguments (user_ids, course_keys, etc.) when we notice a
data discrepancy; and it is run regularly by a Jenkins job with the
`--auto` flag every ~4 hours to keep things up-to-date.

Because we probably never want to notify credentials of of ALL the
GeneratedCertificates, the celery task must be given some arguments
to filter down to the relevant certificates. Running the management
command with the `--auto` flag (as the Jenkins job does) adds
`start_date` and `end_date` arguments of 4 hours ago and now,
respectively.

The handle_notify_credentials celery task then takes those arguments and
looks for any GeneratedCertificates that have been modified within the
given time range by checking the GeneratedCertificate modified_date.
It will send the current data for those certificates to credentials.

However, we also want to notify credentials about certificates that have
an associated CertificateDateOverride that has changed within that time
range: added, updated, or deleted. But changes to a
CertificateDateOverride won’t affect the GeneratedCertificate’s modified
date, and therefore wouldn’t be included in the list of certs cent to
credentials.

This commit adds a check for changed CertificateDateOverrides and
includes their associated GeneratedCertificates in the list of certs. We
use the CertificateDateOverride’s history model for this check so that
we can include certificates whose override was deleted.

MICROBA-1489
2021-09-10 12:32:17 -06:00
Farhaan Bukhsh
48ad7effb1 feat: grant course/library creation rights by organization (#26616)
Current State (before this commit):

  Studio, as of today doesn't have a way to restrict a user to
  create a course in a particular organization. What Studio
  provides right now is a CourseCreator permission which gives
  an Admin the power to grant a user the permission to create
  a course.

  For example: If the Admin has given a user Spiderman the
  permission to create courses, Spiderman can now create courses
  in any organization i.e Marvel as well as DC.
  There is no way to restrict Spiderman from creating courses
  under DC.

Purpose of this commit:

  The changes done here gives Admin the ability to restrict a
  user on an Organization level from creating courses via the
  Course Creators section of the Studio Django administration
  panel.

  For example: Now, the Admin can give the user Spiderman the
  privilege of creating courses only under Marvel organization.
  The moment Spiderman tries to create a course under some
  other organization(i.e DC), Studio will show an error message.

  This change is available to all Studio instances that
  enable the FEATURES['ENABLE_CREATOR_GROUP'] flag.
  Regardless of the flag, it will not affect any instances that choose
  not to use it.

BB-3622
2021-09-10 12:43:26 -04:00
Binod Pant
42035b669b feat: upgrade for ent-4784 (#28711)
fixes issue with get_remote_id when multiple idps
2021-09-10 11:42:49 -04:00
Michael Terry
d5bacad86f Merge pull request #28698 from edx/mikix/hide-after-due-mfe
feat: notify MFE when a sequence is hidden-after-due
2021-09-10 09:12:57 -04:00
Andrew Shultz
ced1bca95a Merge pull request #28688 from edx/ashultz0/idv-submitted-name
Do not immediately update profile name from IDV when name affirmation is on
2021-09-10 09:07:22 -04:00
Aarif
475a6af2af fix: fixed the workflow for publishing ci runner docker image (#28703) 2021-09-10 12:13:48 +05:00
Aarif
0d58faa926 added a workflow to build and push CI runner docker image (#28539) 2021-09-10 05:44:21 +05:00
Michael Terry
cd7d13cd6d feat: notify MFE when a sequence is hidden-after-due
Currently, if a learner manually loads a sequence page that would
normally be skipped for them because it is hidden-after-due, the
sequence renders anyway.

This commit tells the frontend when it should not show a sequence
because it's hidden.

AA-1000
2021-09-09 14:43:00 -04:00
Andy Shultz
dc01bf3aad feat: add parameter to submit attempt to carry full name through
original behavior does pass the empty name through to
_update_full_name rather than just considering that as full name not
set. That's a little weird but outside the scope of this work so I've
preserved it by checking is not None rather than just using full_name
as a boolean.

MST-1015
2021-09-09 14:18:38 -04:00
Andy Shultz
695f2cd4c8 feat: prevent name update on photo verification if the name is already updated
MST-1015
2021-09-09 11:56:06 -04:00
Andy Shultz
f158fedd15 feat: only update full name if not verified name enabled
MST-1015
2021-09-09 11:56:06 -04:00
Andy Shultz
1288d964b8 docs: clarify docs for _update_full_name 2021-09-09 11:56:06 -04:00
Zia Fazal
1578b0c6ea Merge pull request #28642 from edly-io/ERTE-55
feat: Added support for enterprise id in course_grade_passed_first_time event
2021-09-09 18:37:51 +05:00
AsadAzam
f721c62555 refactor: Refactor the program configuration string (#28696) 2021-09-09 18:16:39 +05:00
Awais Qureshi
28d2908588 Merge pull request #28649 from edx/upgrade-django-cors-headers-320--
feat: upgrade django-cors-headers to lateast version.
2021-09-09 18:06:01 +05:00
Binod Pant
1097db005e feat: upgrade edx-enterprise 3.28.4 (#28693)
ENT-4847

ENT-4847
2021-09-09 09:03:09 -04:00
Awais Ansari
f59397e63f fix: update hover state for textbooks breadcrumbs (#28690) 2021-09-09 15:11:15 +05:00
Zainab Amir
40dba56cff fix: auto register send_activation_email task (#28694) 2021-09-09 14:13:35 +05:00
RehanAziz
1fffdc66fc feat: Added support for enterprise id in course_grade_passed_first_time event 2021-09-09 13:44:25 +05:00
edX Transifex Bot
58d6173479 geoip2: update maxmind geolite country database 2021-09-09 02:09:25 +05:00
Binod Pant
8058074c61 feat: ENT-4784 only logging part to help with debugging (#28689) 2021-09-08 15:35:20 -04:00
kenclary
78e01aaee8 Merge pull request #28687 from edx/pin-edx-when
pin edx-when to 2.1.0 for testing
2021-09-08 15:08:55 -04:00
Albert (AJ) St. Aubin
a28f54bf4a feat: Added lms_user_id and email to data sent to Credentials for Program certs
[MICROBA-1466]
2021-09-08 15:05:09 -04:00
Bianca Severino
2fe08ce5c1 Merge pull request #28670 from edx/bseverino/idv-pending-name
[MST-1025] Use pending name change in IDV post_save signal
2021-09-08 14:40:50 -04:00
Ken Clary
e3a465b85b pin edx-when to 2.1.0 for testing 2021-09-08 14:23:45 -04:00
Matt Hughes
7089a3fbb4 build: man. comm. fails more loudly when nothing to do
JIRA:EDUCATOR-5112
2021-09-08 13:51:14 -04:00
Awais Qureshi
36df86d829 feat!: Major upgrade django-cors-headers to new version 3.2.0
BREAKING CHANGES:
- `CORS_ORIGIN_WHITELIST` now requires URI schemes.
- Added new list `CORS_ORIGIN_WHITELIST_WITH_SCHEME` which contains all links of `CORS_ORIGIN_WHITELIST` with schemes and load the desired list after checking installed version.
- For more details, visit this: https://github.com/adamchainz/django-cors-headers/blob/main/HISTORY.rst#320-2019-11-15
2021-09-08 21:39:57 +05:00
Bianca Severino
bdc8653cca fix: use pending name change in IDV post_save signal 2021-09-08 12:25:29 -04:00
Tim McCormack
035dfd8522 feat: Add feature to display a global maintenance banner (#28673)
This is intended for use in the Studio OAuth transition (ARCHBOM-1887) but
may be useful in the future as well.
2021-09-08 16:21:43 +00:00
David Ormsbee
309cadc973 Revert "Use new version of edx-when." (#28684)
Reverting because of errors seen in proctoring. The error from splunk:

 File "/edx/app/edxapp/venvs/edxapp/lib/python3.8/site-packages/edx_proctoring/views.py", line 590, in get
    data['onboarding_release_date'] = effective_start.isoformat()
AttributeError: 'NoneType' object has no attribute 'isoformat'

The effective date is coming from learning_sequences, which ultimately
comes from edx-when.
2021-09-08 11:05:35 -04:00
Olivia Ruiz-Knott
217f9b4660 Merge pull request #28601 from edx/ork/MICROBA-1487_fix-bulk-delete-date-override
refactor: Use post_delete for date override
2021-09-08 08:32:39 -06:00
Zainab Amir
517c4af90c fix: rename send_activation_email task (#28678) 2021-09-08 17:52:03 +05:00
Matthew Piatetsky
ea22d08909 Merge pull request #28464 from open-craft/jvdm/feat/importable-courses-api
Feature: Add permissions filter to courses API [SE-4588]
2021-09-08 08:10:08 -04:00
Muhammad Ammar
fcafdac54e Merge pull request #28676 from edx/ammar/upgrade-edx-enterprise-to-3.28.2
chore: upgrade edx-enterprise to 3.28.2
2021-09-08 16:30:11 +05:00
Tinuade Adeleke
5b9e84d321 feat: created custom pages course app plugin (#28579)
created CustomPagesCourseApp class

feat: created custom pages course app plugin

created CustomPagesCourseApp class
added CUSTOM_PAGES_HELP_URL to lms and cms settings
added entry point to setup.py

feat: added toggle to ENABLE_CUSTOM_PAGES in lms and cms settings

feat: removed the option to enable/disable the availability of custom pages course apps.
2021-09-08 12:44:37 +05:00
Kshitij Sobti
9f356b90d1 feat!: Add data model for course app API [BD-38] [TNL-8506] [BB-4470] (#28165)
* feat!: Add data model for course app API
The current course apps API makes individual queries to determine if a course app is enabled, which can be inefficient. With this change we now have a Django model that contains this information, allowing us to make bulk queries about all the course apps for a course in the API.
It also adds a new signal handler that initialises the status of all course apps in a course on course publish.

* Use celery tasks and a management commands to make cache async

* Review feedback

* update log messages
use separate celery task for each course task
2021-09-08 11:54:19 +05:00
muhammad-ammar
d8d7a6aa59 chore: upgrade edx-enterprise to 3.28.2 2021-09-08 11:32:44 +05:00
Zainab Amir
bf76fb3f7f move send_activation_email celery task (#28666)
- moved send_activation_email to user_authn app
- registered task under both new and old name
- exposed the old name for task invocation

VAN-417
2021-09-08 10:44:54 +05:00
J. Victor Martins
6adf45df2f feat: Add permissions filter to list courses API
The new filter, called `permissions`, allows callers to filter courses
per access granted to the specified username.  Callers can now filter
courses per roles, actions, etc.
2021-09-07 14:41:50 -07:00
Bianca Severino
d25ace50b4 Merge pull request #28672 from edx/bseverino/name-affirmation-0.9.1
chore: upgrade edx-name-affirmation to 0.9.1
2021-09-07 15:36:16 -04:00
Bianca Severino
3673ac67f2 chore: upgrade edx-name-affirmation to 0.9.1 2021-09-07 14:54:50 -04:00
julianajlk
fd3290e00d fix: updates to Value Prop Track Selection from QA (#28665)
REV-2133
2021-09-07 14:23:35 -04:00
Chris Deery
4078443969 fix: [AA-950] Add unit test to verify segment called correctly (#28668)
* fix: [AA-950] Add unit test to verify segment called correctly

Add positive and negative test
Moved flag update to same block as segment
Moved WaffleFlag check to can_show_streak_discount_coupon for consistency
2021-09-07 12:53:13 -04:00
Chris Deery
a13587af3a feat: AA-940 Remove split_test from Masquerade dropdown (#28501)
* feat: [AA-940] Remove split_test from Masquerade dropdown
Filter content groups that are not part of a cohort from the selection
available to the select in the Masquerade bar.

Refs AA-940

Co-authored-by: cdeery <cdeery@edx.edu>
2021-09-07 12:52:06 -04:00
Jawayria
caf95002a2 Merge pull request #28403 from edx/jawayria/django32-settings
chore: Updated lms and cms settings
2021-09-07 19:27:10 +05:00
Kshitij Sobti
982c98d1bd fix: loading of profile images in devstack (#28555)
Profile images don't load in the devstack since the path for media files is
broader than the path for profile images, reorderig them fixes this.
2021-09-07 09:58:28 -04:00
Jawayria
d3a3f52d69 Merge pull request #28613 from edx/jawayria/bom-2773
fix: Replaced '&#39' with '&#x27' to prevent tests from failing on Django 3
2021-09-07 18:34:05 +05:00
kenclary
42e7e785e3 Merge pull request #28551 from edx/juliasq/TNL_8061_optimize_outline_block_data_retrieval
Use new version of edx-when.
2021-09-07 09:31:18 -04:00
Jawayria
e6ce376105 Merge pull request #28654 from edx/jawayria/bom-2766
chore: Removed django.utils.six as not supported in Django3
2021-09-07 18:06:53 +05:00
Jawayria
b3cb59b07f fix: Replaced '&#39' with '&#x27' to prevent test_reset_password_email from failing on Django 3 2021-09-07 17:31:14 +05:00