Commit Graph

5629 Commits

Author SHA1 Message Date
Pooja Kulkarni
9ddb1cc074 Implement public cohort
This PR is based on #19284 and is part of the
series of work related to the proposal #18134.

This PR avoids the assignment of
anonymous/unenrolled users to any cohort when
course is public. Anonymous or unenrolled users
will only see content that does not have a
content group assigned.
The "View Course" link to the course outline
is shown on the course about page for a course
marked public/public outline.
It also makes course handouts available for
public courses (not for public_outline).
This PR also hides the different warnings and
messages asking the user to sign-in and enroll
in the course, when the course is marked public.
It modifies the default public_view text to
include the component display_name when
unenrolled access is not available.
2019-02-07 21:42:21 +05:30
Robert Raposa
a213104790 add user_id scope and claim for JWT cookies
The following changes are made to add LMS user_id:
* Adds user_id scope to the JWT to provide the LMS user_id.
* JWT cookies always use the user_id claim.

ARCH-379
2019-02-07 10:44:35 -05:00
Waheed Ahmed
bf6301c11e Merge pull request #19291 from edx/waheed/LEARNER-4434-discovery-support-beta-langs
Add support for beta languages
2019-02-07 13:10:27 +05:00
Taranjeet Singh
3eb9058dd2 Adds optional "unsubscribe" link and api support to let users opt out of email updates.
Scheduled emails show "unsubscribe" link if waffle switch `schedules.course_update_show_unsubscribe` is enabled, and
settings.ACE_ENABLED_POLICIES respects `bulk_email_optout`.

API endpoint allows GET/POST requests, which:

* GET asks for confirmation of opt-out
* POST accepts "unsubscribe" or "cancel", where "unsubscribe" creates the
  Optout entry, and "cancel" does nothing.
2019-02-07 11:47:10 +10:30
Calen Pennington
419657d7a5 Prefetch course modes used in has_access calls in course api 2019-02-06 10:11:15 -05:00
Calen Pennington
6d22866e78 Cache org-site lookups in the RequestCache 2019-02-06 10:11:15 -05:00
Calen Pennington
6c596f7c49 Allow courses api to return data incrementally
Prior to this commit, the course api (/api/courses/v1/courses/)
performed all the work necessary to return all courses available
to the user, and then only actually returned on page's worth of those
courses.

With this change, the api now does the work incrementally, computing
only the data needed to fetch the courses up to and including the page
being returned. This still increases approximately linearly as
the page number accessed being increases, but should be more cache-friendly.
One side effect of this is that the max_page reported by pagination
will be an overestimate (it will include pages that are removed due
to a users access restrictions).

This change also changes the sort-order of courses being returned by the
course_api. By sorting by course-id, rather than course-number, we
can sort in the database, rather than in Python, and defer loading data
from the end of the list until it is requested.

REVMI-90
2019-02-06 10:11:15 -05:00
Calen Pennington
9ff9c33f59 Add a test that shows how bad course api query counts are 2019-02-06 10:11:15 -05:00
Waheed Ahmed
d76a2463fa Add support for beta languages.
Whenever user selects a beta language on account settings page,
show a page level warning message that this language is not
fully translated along with action to revert.

LEARNER-5654
2019-02-06 15:18:04 +05:00
Dave St.Germain
bf692acea6 Merge pull request #19690 from edx/dcs/retire-perm
Refactored the retirement permission to use Django rules
2019-02-04 15:17:38 -05:00
Matthew Piatetsky
b37bc75bb4 Revert "Revert "change banner date localization to use dateutilfactory""
This reverts commit 08cb56664b.
2019-02-04 12:42:27 -05:00
Michael Youngstrom
3bb44a540f Upgrade pycountry for python3 2019-02-01 10:24:12 -05:00
Julia Eskew
ed239ed0fd Read client ID/secret from DOT application instead of DOP client. 2019-01-31 13:57:23 -05:00
Dillon Dumesnil
dbd85410f8 Removing test file for removed review xblock 2019-01-31 10:19:54 -05:00
Michael Youngstrom
e7898d153d Move to python3-saml 2019-01-30 16:35:16 -05:00
Dave St.Germain
99368e63bc Refactored the retirement permission to use Django rules 2019-01-30 10:56:02 -05:00
Jansen Kantor
6f4bbf6a01 Merge pull request #19676 from edx/jkantor/failed-cert
fail a certificate if grades are modified to failing
2019-01-29 17:07:00 -05:00
jansenk
726fb0f6f0 fail a certificate if grades are modified to failing 2019-01-29 15:57:15 -05:00
Brian Mesick
c948f335bd Merge pull request #19665 from edx/bmedx/PLAT-2411
Use correct language code in retirement emails
2019-01-28 16:45:31 -05:00
Calen Pennington
daf6fd3330 Merge pull request #19599 from cpennington/fbe-adrs
Add ADRs for FBE decisions
2019-01-28 14:40:48 -05:00
bmedx
43e1bf8e3c Use correct language code in retirement emails 2019-01-28 13:33:39 -05:00
Calen Pennington
4ac3caab23 Add ADRs for FBE decisions
REVMI-39
2019-01-28 13:16:53 -05:00
noraiz-anwar
a0acbd616b logs to debug EDUCATOR-3965 2019-01-25 23:31:24 +05:00
Calen Pennington
805f32a357 Revert "Allow courses api to return data incrementally" 2019-01-25 12:56:57 -05:00
Calen Pennington
c9ed838991 Merge pull request #19642 from cpennington/fbe-improve-course-api-performance
Allow courses api to return data incrementally
2019-01-25 11:31:24 -05:00
Calen Pennington
0d273e9506 Prefetch course modes used in has_access calls in course api 2019-01-25 10:30:09 -05:00
Calen Pennington
a842921e1f Cache org-site lookups in the RequestCache 2019-01-25 10:30:09 -05:00
Calen Pennington
a3541d6e46 Allow courses api to return data incrementally
Prior to this commit, the course api (/api/courses/v1/courses/)
performed all the work necessary to return all courses available
to the user, and then only actually returned on page's worth of those
courses.

With this change, the api now does the work incrementally, computing
only the data needed to fetch the courses up to and including the page
being returned. This still increases approximately linearly as
the page number accessed being increases, but should be more cache-friendly.
One side effect of this is that the max_page reported by pagination
will be an overestimate (it will include pages that are removed due
to a users access restrictions).

This change also changes the sort-order of courses being returned by the
course_api. By sorting by course-id, rather than course-number, we
can sort in the database, rather than in Python, and defer loading data
from the end of the list until it is requested.

REVMI-90
2019-01-25 10:30:09 -05:00
Nadeem Shahzad
75977e9bb1 Merge pull request #19654 from edx/revert-19653-revert-19627-nadeem/OPS-3687
Move award program certificates tasks to background_process queue (OPS-3687)
2019-01-25 18:55:14 +05:00
nadeemshahzad
bc09bdf35a Move award program certificates tasks to background_process queue (OPS-3687) 2019-01-25 12:47:46 +00:00
DawoudSheraz
e820888154 create access denied fragment when HTTP request is null 2019-01-25 16:38:50 +05:00
Calen Pennington
ee75db2703 Add a test that shows how bad course api query counts are 2019-01-24 22:54:01 -05:00
Stu Young
4e1a3b05df Revert "Move award program certificates tasks to background_process queue (OPS-3687)" 2019-01-24 11:37:42 -05:00
nadeemshahzad
97dd3763d3 move program certificates tasks to background_process queue 2019-01-23 14:13:33 +00:00
Saleem Latif
46d97caa47 Consolidate recovery assistance forms 2019-01-22 15:09:11 +05:00
noraiz-anwar
33fab4b1e4 audit track content gating for staff preview 2019-01-21 18:35:29 +05:00
Matthew Piatetsky
08cb56664b Revert "change banner date localization to use dateutilfactory" 2019-01-20 18:27:03 -05:00
Matthew Piatetsky
58012317a1 Merge pull request #19590 from edx/REVMI-27
change banner date localization to use dateutilfactory
2019-01-17 12:49:56 -05:00
Ned Batchelder
48ac13e73e Merge pull request #19591 from cclauss/print_function
Use print() function in both Python 2 and Python 3
2019-01-16 17:59:11 -05:00
Ned Batchelder
1e5c753807 Fix quality violations 2019-01-16 08:44:56 -05:00
cclauss
b0c4c0c5f9 remove redundant backslashes in between brackets 2019-01-16 03:46:04 +01:00
Matthew Piatetsky
f870f7c635 change banner date localization to use dateutilfactory 2019-01-15 03:30:53 -05:00
Christie Rice
9d23dfe270 REVEM-130 Remove program info from user metadata 2019-01-14 14:32:32 -05:00
Calen Pennington
454acb492b Merge pull request #19578 from cpennington/fbe-group-configurations
Fix Studio Group Configurations for courses with FBE Enabled
2019-01-14 14:20:25 -05:00
Brian Mesick
72fa00050a Merge pull request #19571 from open-craft/jill/dot-app-cmd
SE-614 Adds optional args to create_dot_application command
2019-01-14 14:12:39 -05:00
Calen Pennington
bc32819ce0 Fix Studio Group Configurations for courses with FBE Enabled
This prevents the Feature-Based Enrollments groups from showing
in Group Configurations unless the studio_override_enabled flag
is enabled. It also fixes a bug where FBE group configurations were
displaying usage as though they were Track-based group configurations.

REVMI-78
2019-01-14 13:16:57 -05:00
cclauss
8fca11b85c Use print() function in both Python 2 and Python 3 2019-01-13 17:16:37 +01:00
Calen Pennington
67c23d503d Make the max Course Duration Limit 18 weeks 2019-01-11 13:01:08 -05:00
Matthew Piatetsky
e1fd793e86 Merge pull request #19560 from edx/REVMI-2
add informational banners when masquerading as user who would not have access due to start date
2019-01-10 13:48:29 -05:00
Matthew Piatetsky
5bb56fe45f add informational banners when masquerading as user who would not have access due to start date 2019-01-10 11:06:30 -05:00