-
Notifications
You must be signed in to change notification settings - Fork 3.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: Add override option to upgrade CTA utils and add course_run_key identifier #35441
Conversation
230a2cb
to
37e2d65
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice work!
Hi @aht007 , I was working with @grmartin on this deprecation ticket: openedx/public-engineering#272 . This PR seems like an incremental step toward the goals in that ticket, which is great! As mentioned in the ticket, the whole The hope was that we could add in those extension points as part of the deprecation to prevent you all from having to do all of this work now, then have to redo everything again when we deprecate To be clear, I don't have any problems with this PR as-is but want to make sure the direction is clear and hopefully save you all some work going forward. |
Thank you for sharing your thoughts and reviewing the PR. However, since the discussions around this could take some time, I would appreciate it if we could proceed with this PR for now. |
@aht007 I think you pinged the wrong Brian, but yes I think you can consider that feedback non-blocking. It looks like you already have the required approvals so you should be all set. |
@bmtcril Ah sorry for the oversight and thank you. |
b30f7e2
to
104ac81
Compare
2U Release Notice: This PR has been deployed to the edX staging environment in preparation for a release to production. |
2U Release Notice: This PR has been deployed to the edX production environment. |
1 similar comment
2U Release Notice: This PR has been deployed to the edX production environment. |
Description
This PR introduces override capabilities to the
EcommerceService
class utilities. Currently, upgrade CTA URLs acrossedx-platform
depend on theget_checkout_page_url
andget_absolute_ecommerce_url
methods, both of which are closely tied to the Oscar-basedecommerce
system. This tight coupling presents challenges when attempting to integrate alternative ecommerce systems. With this PR, alternative implementations for these methods can be provided by leveraging the pluggable_override functionality fromedx_django_utils
.Other information
To utilize this functionality, developers must define the path to the alternative implementations in the settings file using the override flags.
Override flags being introduced in this PR:
OVERRIDE_GET_CHECKOUT_PAGE_URL
OVERRIDE_GET_ABSOLUTE_ECOMMERCE_URL
Override implementation needs to be housed somewhere else outside of
edx-platform
which can be a pluggable app installed independently in edx-platform requirements