Fixing quality test
Testsing out a default value for the sake of jenkins tests. will revert
Fix footer test from being flaky
Moving an import statement
ran isort. adding a test. fixing 1 quality issue
Quality cleanups
Attempting more quality fixes
adding back in config variable name for default value
Adding ENTERPRISE_MARKETING_FOOTER_QUERY_PARAMS to common settings
Changing marketing_url logic to only concatenate enterprise url to root if the enterprise url is relative (starts with a /)
quality fixes
This commit adds personalization options for the Contact Us links on
edx-platform's
page.
To allow for this customization, two SiteConfiguration variables were
added:
* CONTACT_US_ENABLE: Switch to enable/disable the Contact Us page.
Setting this to
False will disable the contact page and the links on the footer will
disappear.
* CONTACT_US_CUSTOM_LINK: If the contact page is enabled, this setting
allows to set
a custom URL for the Contact Us links on edx-platform. If this setting
is not set,
the platform will use the default contact form.
It is a follow-up PR of the work that is already done for
removing specific links on footer.It is created because
two links are still appearing on spanish footer that need
not to be appeared on it.
LEARNER-6981
Currently, spanish website's main page has links in footer whose
pages are still un-translated.In this PR, links of them are
removed so that user-experience should be improved.
LEARNER-6981
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
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
Redirection to the newly created support form. If the server is production
it will take to production support form otherwise it will be forwarded to
Stage server support form.
LEARNER-4873
The New footer design implementation without using bootstrap. Using flexbox
creating new classes to assign different widths in different screen breakpoints.
LEARNER-2312
- Remove usage of django.urls.patterns
- Change urls tuples to lists
- Make all string view names callables
- This is the second of several urls updates for LMS; a work in progress
When you are on the Dashboard, or on any page in courseware, the logo
in the Header links to dashboard and the logo in the footer links
to edX home page.
LEARNER-2881
There are a number of Django Signals that are on the modulestore's
SignalHandler class, such as SignalHandler.course_published. These
signals can trigger very expensive processes to occur, such as course
overview or block structures generation. Most of the time, the test
author doesn't care about these side-effects.
This commit does a few things:
* Converts the signals on SignalHandler to be instances of a new
SwitchedSignal class, that allows signal sending to be disabled.
* Creates a SignalIsolationMixin helper similar in spirit to the
CacheIsolationMixin, and adds it to the ModuleStoreIsolationMixin
(and thus to ModuleStoreTestCase and SharedModuleStoreTestCase).
* Converts our various tests to use this new mechanism. In some cases,
this means adjusting query counts downwards because they no longer
have to account for publishing listener actions.
Modulestore generated signals are now muted by default during test runs.
Calls to send() them will result in no-ops. You can choose to enable
specific signals for a given subclass of ModuleStoreTestCase or
SharedModuleStoreTestCase by specifying an ENABLED_SIGNALS class
attribute, like the following example:
from xmodule.modulestore.tests.django_utils import ModuleStoreTestCase
class MyPublishTestCase(ModuleStoreTestCase):
ENABLED_SIGNALS = ['course_published', 'pre_publish']
You should take great care when disabling signals outside of a
ModuleStoreTestCase or SharedModuleStoreTestCase, since they can leak
out into other tests. Be sure to always clean up, and never disable
signals outside of testing. Because signals are essentially process
globals, it can have a lot of unpleasant side-effects if we start
mucking around with them during live requests.
Overall, this change has cut the total test execution time for
edx-platform by a bit over a third, though we still spend a lot in
pre-test setup during our test builds.
[PERF-413]
This adds functions to the catalog utils which munge data
collected from the program endpoint and LMS database to construct
data structures that are ready for use by view and templates
related to the Open EdX marketing pages that live in LMS.
WL-766