Commit Graph

282 Commits

Author SHA1 Message Date
Mohammad Ahtasham ul Hassan
6a63cfcaa4 feat: add override option to upgrade CTA utils and add course_run_key identifier (#35441)
* feat: add override option to upgrade CTAs and send course_run_key identifier
2024-09-16 13:15:51 +05:00
michaelroytman
f94a7f7f68 feat: send IDV approval email in approve_id_verifications management command
This commit modifies the approve_id_verifications management command to send an IDV approval email to learners. This ensures that learners are informed of approvals to their IDV attempts when performed using the management command. This more closely mirrors the way IDV approvals work when using an IDV vendor.
2024-05-30 15:03:44 -04:00
Michael Roytman
95b3e88ba5 temp: add supplemental logging to debug IDV issues (#34248)
This commit adds some supplemental, more verbose logging to the results_callback view in the verify_student Djangoapp. This endpoint is called by identity verification (IDV) providers to POST an IDV review to edX.

We are experiencing issues with receiving IDV reviews from our IDV provider, and these logs will help us diagnose whether there is an issue in edX's systems.

These logs will be removed after our investigation is complete.
2024-02-16 08:48:29 -05:00
Eugene Dyudyunov
289e682b8f FC-0001: Remove old EdxRestAPIClient usage across the platform (#30301)
* refactor: remove EdxRestAPIClient

* test: update tests according to EdxRestAPIClient removal

* fix: remove unused import
2022-05-09 12:48:26 -04:00
Michael Terry
b8ecfed67d fix: use safer ip-chain logic when checking ip for embargos
Specifically:
- check ALL ip addresses in the client ip chain for blocking
- check RIGHTMOST ip address in the client ip chain for allowing

Before, we always checked the LEFTMOST ip address in both cases.

AA-1234
2022-04-22 11:15:02 -04:00
Bianca Severino
5895f49683 fix: remove code related to IDV experiment 2022-01-25 16:32:40 -05:00
Jawayria
305bd8ff76 chore: Applied lint-amnesty on lms/djangoapps/{teams, verify_student} 2021-12-20 15:45:00 +05:00
M. Zulqarnain
95dbcaa323 feat: Django codemods on LMS (4) (#28854) 2021-11-19 15:10:58 +05:00
michaelroytman
bb299c9521 feat: Remove Use of VERIFIED_NAME_FLAG Waffle Flag and is_verified_enabled Utility
The VERIFIED_NAME_FLAG, the VerifiedNameEnabledView, and the verified_name_enabled key removed from responses for both VerifiedNameView view and VerifiedNameHistoryView
were removed as part https://github.com/edx/edx-name-affirmation/pull/12. This was released in version 2.0.0 of the edx-name-affirmation PyPI package. Please see below for additional context for the removal, copied from the name-affirmation commit message.

The VERIFIED_NAME_FLAG was added as part https://github.com/edx/edx-name-affirmation/pull/12, [MST-801](https://openedx.atlassian.net/browse/MST-801) in order to control the release of the Verified Name project. It was used for a phased roll out by percentage of users.

The release reached a percentage of 50% before it was observed that, due to the way percentage roll out works in django-waffle, the code to create or update VerifiedName records was not working properly. The code was written such that any change to a SoftwareSecurePhotoVerification model instance sent a signal, which was received and handled by the Name Affirmation application. If the VERIFIED_NAME_FLAG was on for the requesting user, a Celery task was launched from the Name Affirmation application to perform the creation of or update to the appropriate VerifiedName model instances based on the verify_student application signal. However, we observed that when SoftwareSecurePhotoVerification records were moved into the "created" or "ready" status, a Celery task in Name Affirmation was created, but when SoftwareSecurePhotoVerification records were moved into the "submitted" status, the corresponding Celery task in Name Affirmation was not created. This caused VerifiedName records to stay in the "pending" state.

The django-waffle waffle flag used by the edx-toggle library implements percentage rollout by setting a cookie in a learner's browser session to assign them to the enabled or disabled group.
It turns out that the code that submits a SoftwareSecurePhotoVerification record, which moves it into the "submitted" state, happens as part of a Celery task in the verify_student application in the edx-platform. Therefore, we believe that because there is no request object in a Celery task, the edx-toggle code is defaulting to the case where there is no request object. In this case, the code checks whether the flag is enabled for everyone when determining whether the flag is enabled. Because of the percentage rollout (i.e. waffle flag not enabled for everyone), the Celery task in Name Affirmation is not created. This behavior was confirmed by logging added as part of https://github.com/edx/edx-name-affirmation/pull/62.

We have determined that we do not need the waffle flag, as we are comfortable that enabling the waffle flag for everyone will fix the issue and are comfortable releasing the feature to all users. For this reason, we are removing references to the flag.

[MST-1130](https://openedx.atlassian.net/browse/MST-1130)
2021-11-01 13:33:55 -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
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
Jhony Avella
95a6abcd1f revert: removing read_committed argument from outer_atomic function (#28161)
In the PR https://github.com/edx/edx-platform/pull/10659 the outer_atomic decorator/context manager was created to prevent nested atomic blocks. This method received a boolean parameter read_committed to enforce read-committed MySQL isolation level. From Django 2, the default isolation level Django sets is read-committed, so the aforementioned parameter for outer_atomic can be removed
2021-08-31 16:39:35 -04:00
Bianca Severino
a8957fd118 refactor: remove verification approved emails from ACE 2021-04-26 14:55:47 -04:00
alangsto
a45bcd158b feat: Add tracking event for IDV photo mode (#27349)
As part of the ongoing A/B experiment for IDV, we would like to know how users submitted their photos (either by upload or camera) in addition to the other information we are tracking
2021-04-15 11:07:40 -04:00
Bianca Severino
4fc5713792 fix: validate the media type of uploaded IDV images 2021-04-02 10:49:08 -04:00
Usama Sadiq
aa618c460c refactor: remove unused-imports (#27083) 2021-03-19 22:42:14 +05:00
Simon Chen
69da33cc9c Update the logging messages on ID Verification backend (#27061)
Currently in edx.org production, we have seen unhelpful error message that produces noises covering real important errors. This change would update the logging so we can have better and informative error messages for ID Verification
2021-03-18 10:32:25 -04:00
alangsto
027704adae Added optional param on submit post request to mark experiment name (#26925) 2021-03-11 10:31:47 -05:00
M. Zulqarnain
ba86198519 pyupgrade on verify_students app (#26648) 2021-03-02 16:45:01 +05:00
M. Zulqarnain
42fc6aef03 Upgrade django-ipware (#24827) 2021-02-23 18:14:17 +05:00
alangsto
f88181c3c8 update context key/value pair being used for approved email (#26635) 2021-02-19 14:15:09 -05:00
M. Zulqarnain
feaf5011c8 BOM-2287 : Pylint amnesty in teams,tests,survey and verify_student (#26305)
* lint amnesty in teams,tests,survey and verify_student
2021-02-03 18:15:03 +05:00
alangsto
e9dc5baf79 added two endpoints for IDV decryption on stage (#25939)
simplified public keys

made migration

fixes for quality

added pylint fixes

fixed for pylint

added endpoint to retrieve user's receipt_ids

added tests for 404 with decryption error

fixed for quality

fixed for quality

updates for feedback

removed unnecessary method

fixed quality issue

updated tests
2021-01-07 09:05:33 -05:00
alangsto
30d4106659 added endpoint to retrieve IDV photo urls (#25909)
fixed quality issues

added comment

updated for comments

fixing test

removed typo

readded files

moved settings override

testing adding other keys

not overriding setting
2020-12-18 08:14:44 -05:00
Kyle McCormick
bb30a27b3e Revert "added endpoint to retrieve IDV photo urls (#25903)"
This reverts commit 356f187559.
2020-12-17 17:08:58 -05:00
alangsto
356f187559 added endpoint to retrieve IDV photo urls (#25903)
fixed quality issues

added comment

updated for comments
2020-12-17 16:13:32 -05:00
Bianca Severino
d8bfbe96bb Remove course_key from IDV SubmitPhotosView 2020-12-14 15:52:00 -05:00
Bianca Severino
d9bd1c3f0b Add logging for 400 errors when submitting IDV photos 2020-12-04 13:57:02 -05:00
Simon Chen
00ad36839d MST-542 Roll out Accounts MFE IDV workflow (#25613)
* MST-542 remove the IDV redirect to Account MFE waffle flag to permanently redirect learners to new IDV workflow. This completes the rollout process on edx-platform
2020-12-01 09:08:12 -05:00
Bianca Severino
56d7ff8017 Set expiration_date field in IDVerificationAttempt model 2020-11-10 15:29:47 -05:00
Bianca Severino
82e8592fbe Revert "Set expiration_date field in IDVerificationAttempt model" 2020-11-10 14:24:07 -05:00
Bianca Severino
3342524699 Update IDVerificationAttempt to use expiration_date field 2020-11-10 11:15:04 -05:00
Kyle McCormick
151bd13666 Use full names for common.djangoapps imports; warn when using old style (#25477)
* Generate common/djangoapps import shims for LMS
* Generate common/djangoapps import shims for Studio
* Stop appending project root to sys.path
* Stop appending common/djangoapps to sys.path
* Import from common.djangoapps.course_action_state instead of course_action_state
* Import from common.djangoapps.course_modes instead of course_modes
* Import from common.djangoapps.database_fixups instead of database_fixups
* Import from common.djangoapps.edxmako instead of edxmako
* Import from common.djangoapps.entitlements instead of entitlements
* Import from common.djangoapps.pipline_mako instead of pipeline_mako
* Import from common.djangoapps.static_replace instead of static_replace
* Import from common.djangoapps.student instead of student
* Import from common.djangoapps.terrain instead of terrain
* Import from common.djangoapps.third_party_auth instead of third_party_auth
* Import from common.djangoapps.track instead of track
* Import from common.djangoapps.util instead of util
* Import from common.djangoapps.xblock_django instead of xblock_django
* Add empty common/djangoapps/__init__.py to fix pytest collection
* Fix pylint formatting violations
* Exclude import_shims/ directory tree from linting
2020-11-10 07:02:01 -05:00
sarina
f414fad0cc Change gendered language to gender-neutral 'they/them/their' 2020-11-02 18:23:13 -05:00
Jeremy Bowman
d19368525b DEPR-43 Remove most of the shoppingcart app (#24692)
Removed most of the deprecated shoppingcart app, leaving just enough to allow us to cleanly remove the related database tables later. Also removed the relevant Django settings that weren't in use elsewhere.
2020-10-14 14:24:52 -04:00
Diana Huang
657da20c6e DEPR-43 - Remove JS that refers to shoppingcart receipt page. (#24890)
https://openedx.atlassian.net/browse/DEPR-43

Co-authored-by: Jeremy Bowman <jbowman@edx.org>
2020-09-29 16:08:42 -04:00
Bianca Severino
4d19d9687c Change URLs in IDV related emails to the new experience 2020-08-12 09:22:42 -04:00
Bianca Severino
041becc846 Implement waffle flag for IDV redirect
Created helper function to render url dynamically

Modify helper function to include reverify links

Fix code based on failing tests

Fixed query string in redirect URL
2020-07-13 16:43:59 -04:00
Awais Jibran
adaa701a76 Deprecate old idv code 2020-07-09 11:53:16 +05:00
Awais Jibran
44bde2f9da Patch IDV emails approved 2020-07-02 14:47:09 +05:00
Awais Jibran
0142dcdf86 Adding ID Verification Approved email template.
PROD-1639
2020-06-29 12:17:55 +05:00
Diana Huang
61563697c7 Remove shoppingcart references from verify_student. 2020-06-09 13:06:44 -04:00
Aarif
98af9ce418 remove useless-supression warnings 2020-05-01 19:42:15 +05:00
Kyle McCormick
29932a986e Add APIView for ID verification status (#23760)
For Hackathon XXIV IDv page overhaul.
2020-04-17 17:20:29 -04:00
Awais Jibran
804fac9358 Adds retry logic for software secure 2020-04-13 14:14:11 +05:00
Aarif
6ee2089077 fixed warnings for wrong-import-order 2020-04-08 23:43:06 +05:00
Waheed Ahmed
3dc3e10819 Revert "Adds retry logic for software secure." 2020-04-07 20:40:06 +05:00
Awais Jibran
4ead215665 Adds retry logic for ss.
1. Created a new celery queue with key `SOFTWARE_SECURE_VERIFICATION_ROUTING_KEY`.
2. Added a celery task with retry logic.
3. sorted imports with isort.
4. Changed deprecated `log.warn` => `log.warning`.
2020-04-06 15:16:56 +05:00
Feanil Patel
6e3fe00fff Fix all E303 pep8 errors. 2019-12-30 12:25:38 -05:00