Commit Graph

24571 Commits

Author SHA1 Message Date
Yagnesh1998
e7b69200d0 Merge branch 'master' into edx-depr31 2023-07-19 10:28:30 +05:30
Kyle McCormick
4aedeb8988 refactor: remove XModule JS from Django Pipeline (#32530)
`module-js` and `module-descriptor-js` are old JavaScript group
indicators, left over from when we managed XModule assets via Django
Pipeline. We would like to get rid of them in order to make it easier to
build XModule JS without using Python.

There is one single usage of `module-js` in the entire platform (the
rest have been replaced with Webpack references, which is the
less-outdated way of managing XModule assets :). The lone `module-js`
reference was added in 2013 [1] so that circuit diagrams would display
in the course wiki. However, the ability to render circuits in the wiki
was removed in 2015 [2], so it is safe to remove the reference.

There is also one single usage of `module-descriptor-js`. It's in the
legacy bulk email editor, which hackily cribs from the old HtmlBlock
editor. Fortunately, we are able to simply replace the Django Pipeline
reference with the equivalent XModule JS Webpack bundle. (Note: The old
email editor is currently still supported, but is currently being
replaced by frontend-app-communications, so this hack will be gone
eventually).

Finally, this commit also sneaks in one styling fix: it adds the
HtmlBlockEditor CSS back to the aforementioned legacy bulk email page.
The missing CSS was causing a read-only 1-line codemirror editor to
appear below the HTML editor [3]. This bug was introduced during the
original XModule SCSS decoupling [4], which removed builtin block CSS
from the LMS-wide bundle, thus removing the HTML editor CSS from the
bulk email page. We imagine that nobody noticed because the bug only
exists in master (not Palm) and frontend-app-communications seems to be
globally enabled on edx.org. As a simple fix, we add the new CSS link to
the legacy bulk email page, and it renders fine again [5].

References:

1. 3fc59b3da5
2. https://github.com/openedx/edx-platform/pull/10324
3. Before fix: https://github.com/openedx/edx-platform/assets/3628148/25fc41b2-403d-4339-8c49-0b04664dfa02
4. https://github.com/openedx/edx-platform/pull/32018
5. After fix: https://github.com/openedx/edx-platform/assets/3628148/9a5d74f1-cc83-4ebe-8f0c-ee270f7721b8

Part of: https://github.com/openedx/edx-platform/issues/32481
2023-07-18 09:32:12 -04:00
Nawfal Ahmed
8cd0cb0d07 feat: get subscription upsell values from env (#32770) 2023-07-18 17:43:39 +05:00
Mubbshar Anwar
6562fad7df revert: Removing save_far_later models (#32712)
This is the second phase of removing save_for_later app in which migrations would be run to drop the DB tables.

VAN-1451
2023-07-18 17:07:28 +05:00
Mubbshar Anwar
2e2687ad38 revert: Removing the save_far_later (#32710)
Removing the save_for_later app after analysing the experiment results. We are not going to make this feature permanent.

VAN-1451
2023-07-18 15:35:27 +05:00
Braden MacDonald
9b9b88df52 chore: remove some usages of six (Python2 compat) (#32554)
* get rid of six.text_type(s)
* get rid of six.b()
* get rid of six.string_types
* get rid of six.PY2/six.PY3
* get rid of six.iteritems() and six.viewvalues()
2023-07-17 12:18:43 -07:00
Yagnesh1998
6e8c10c791 Merge branch 'openedx:master' into edx-depr31 2023-07-17 15:54:46 +05:30
Ahtisham Shahid
eebd7d236b fix: added correct url in notification content_url (#32725)
* fix: added correct URL in notification content_url
* fix: updated logic to compare user ids
2023-07-14 10:44:14 +05:00
Piotr Surowiec
fa06be106e Revert "feat: remove field-data binding from the runtime [FC-0026]" (#32740)
* Revert "feat: remove `field-data` service from runtime initialization"

This reverts commit 6c435bb68c.

* Revert "feat: remove field data binding from the runtime"

This reverts commit 5f46ea52cd.
2023-07-13 13:04:02 -04:00
Leangseu Kim
aa987c3c0a feat: add open responses card to page and resources 2023-07-13 10:35:23 -04:00
Piotr Surowiec
c6bd98e51a Revert "refactor: reuse services and wrappers between XBlocks" (#32730)
This reverts commit 36cc415fc2.
2023-07-13 10:05:34 -04:00
Yusuf Musleh
4ad8ba1b41 feat: list courses details by keys
This adds the ability to get a list of detailed courses based on their
keys provided in the newly added `keys` query param in the `GET /courses/v1/courses/`
endpoint.
2023-07-12 17:22:38 +03:00
Nawfal Ahmed
5c0dddd9bd fix: fix padding for mobile users in program dashboard (#32711) 2023-07-11 19:54:33 +05:00
Nawfal Ahmed
84f4d2fb6f fix: ui fixes for subscription programs (#32693)
* fix: hide title for mobile users in program dashboard

* fix: fix subscription trial remaining days logic
2023-07-11 14:17:29 +05:00
Jenkins
b70e3dc6ae chore(i18n): update translations 2023-07-10 18:04:53 -04:00
Dmytro
bb4beab5eb fix: Incorrect symbols on wiki create article page (#32628)
The message was being double-escaped by React with the
StatusAlertRenderer. This fixes the problem by removing the
first layer of HTML-escaping so it is only escaped once.
2023-07-10 17:25:06 -04:00
Braden MacDonald
7a89f2e5d3 fix: remove deprecated django-debug-toolbar Logging Panel (#32553) 2023-07-10 11:16:16 -07:00
Awais Qureshi
b528a27237 fix: upgrading celery version and fixing tests. (#32468)
* fix: upgrading celery version and fixing tests.

---------

Co-authored-by: edX requirements bot <49161187+edx-requirements-bot@users.noreply.github.com>
Co-authored-by: zubairshakoorarbisoft <zubair.shakoor@arbisoft.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: awais786 <awais786@users.noreply.github.com>
2023-07-10 18:36:30 +05:00
Robert Raposa
6d6893ca56 Merge pull request #32638 from openedx/robrap/restore-teams-test
test: fix team tests for multiple courses
2023-07-07 11:08:07 -04:00
Robert Raposa
0a4bc11d8c test: fix team tests for multiple courses
The original tests looked like helpers,
but we are guessing that they were supposed
to be tests.

Additionally, one test had a small bug as written.
It would be more resilient to actually parse the
JSON, but that work is being left for a later time.
For now, it works, but is not resilient.

The original PR can be found here:
https://github.com/openedx/edx-platform/pull/10804
2023-07-07 09:34:17 -04:00
Mohammad Ahtasham ul Hassan
ee871730c8 feat: add course_status utility (#32545)
* feat: add course_status utility
2023-07-07 12:38:05 +05:00
Kyle McCormick
127c5c1ce2 fix: make built-in XBlock Sass theme-aware again
In ~Palm and earlier, all built-in XBlock Sass was included into LMS and CMS
styles before being compiled. The generated CSS was coupled together with
broader LMS/CMS CSS. This means that comprehensive themes have been able to
modify built-in XBlock appearance by setting certain Sass variables. We say that
built-in XBlock Sass was, and is expected to be, "theme-aware".

Shortly after Palm, we decoupled XBlock Sass from LMS and CMS Sass [1]. Each
built-in block's Sass is now compiled into two separate CSS targets, one for
block editing and one for block display. The CSS, now located at
`common/static/css/xmodule`, is injected into the running Webpack context with
the new `XModuleWebpackLoader`. Built-in XBlocks already used
`add_webpack_to_fragment` in order to add JS Webpack bundles to their view
fragments, so when CSS was added to Webpack, it Just Worked.

This unlocked a slieu of simplifications for static asset processing [2];
however, it accidentally made XBlock Sass theme-*unaware*, or perhaps
theme-confused, since the CSS was targeted at `common/static/css/xmodule`
regardless of the theme. The result of this is that **built-in XBlock views will
use CSS based on the Sass variables _last theme to be compiled._** Sass
variables are only used in a handful of places in XBlocks, so the bug is subtle,
but it is there for those running off of master. For example, using edX.org's
theme on master, we can see that there is a default blue underline in the Studio
sequence nav [3]. With this bugfix, it becomes the standard edX.org
greenish-black [4].

This commit makes several changes, firstly to fix the bug, and secondly to leave
ourselves with a more comprehensible asset setup in the `xmodule/` directory.

* We remove the `XModuleWebpackLoader`, thus taking built-in XBlock Sass back
  out of Webpack.

* We compile XBlock Sass not to `common/static/css/xmodule`, but to:

  * `[lms|cms]/static/css` for the default theme, and
  * `<THEME_ROOT>/[lms|cms]/static/css`, for any custom theme.

  This is where the comprehensive theming system expects to find themable
  assets. Unfortunately, this does mean that the Sass is compiled twice, both
  for LMS and CMS. We would have liked to compile it once to somewhere in the
  `common/`, but comprehensive theming does not consider `common/` assets to be
  themable.

* We split `add_webpack_to_fragment` into two more specialized functions:
  * `add_webpack_js_to_fragment` , for adding *just* JS from a Webpack bundle,
    and
  * `add_sass_to_fragment`, for adding static links to CSS compiled themable
    Sass (not Webpack). Both these functions are moved to a new module
    `xmodule/util/builtin_assets.py`, since the original module
    (`xmodule/util/xmodule_django.py`) didn't make a ton of sense.

* In an orthogonal bugfix, we merge Sass `CourseInfoBlock`, `StaticTabBlock`,
  `AboutBlock` into the `HtmlBlock` Sass files. The first three were never used,
  as their styling was handled by `HtmlBlock` (their shared parent class).

* As a refactoring, we change Webpack bundle names and Sass module names to be
  less misleading:
  * student_view, public_view, and author_view: was `<Name>BlockPreview`, is now
    `<Name>BlockDisplay`.
  * studio_view: was `<Name>BlockStudio`, is now `<Name>BlockEditor`.

* As a refactoring, we move the contents of `xmodule/static` into the existing
  `xmodule/assets` directory, and adopt its simper structure. We now have:
  *  `xmodule/assets/*.scss`: Top-level compiled Sass modules. These could be
     collapsed away in a future refactoring.
  * `xmodule/assets/<blocktype>/*`: Resources for each block, including both JS
    modules and Sass includes (underscore-prefixed so that they aren't
    compiled). This structure maps closely with what externally-defined XBlocks
    do.
  * `xmodule/js` still exists, but it will soon be folded into the
    `xmodule/assets`.

* We add a new README [4] to explain the new structure, and also update a
  docstring in `openedx/lib/xblock/utils` which had fallen out of date with
  reality.

* Side note: We avoid the term "XModule" in all of this, because that's
  (thankfully) become a much less useful/accurate way to describe these blocks.
  Instead, we say "built-in XBlocks".

Refs:
1. https://github.com/openedx/edx-platform/pull/32018
2. https://github.com/openedx/edx-platform/issues/32292
3. https://github.com/openedx/edx-platform/assets/3628148/8b44545d-0f71-4357-9385-69d6e1cca86f
4. https://github.com/openedx/edx-platform/assets/3628148/d0b7b309-b8a4-4697-920a-8a520e903e06
5. https://github.com/openedx/edx-platform/tree/master/xmodule/assets#readme

Part of: https://github.com/openedx/edx-platform/issues/32292
2023-07-06 11:58:06 -04:00
alangsto
6f00f63da6 feat: add course waffle flag for learner assistant (#32657) 2023-07-06 10:19:58 -04:00
Yagnesh1998
a68a1ed434 feat: Removed JWT_AUTH_REFRESH_COOKIE in depr. (#32664) 2023-07-06 09:14:30 -04:00
Nawfal Ahmed
139d0b2392 feat: sort subscription programs in program dashboard (#32651) 2023-07-06 09:01:40 +00:00
Ahtisham Shahid
b477a20ad2 Added notifications for discussions events (#32432)
* feat: added notifications for discussions app

* feat: added unit tests for handler

* feat: updated openedx-events package

* fix: updated notification creation logic and tests

* refactor: updated openedx-event version and event name

* refactor: moved logic to separate methods
2023-07-06 13:33:20 +05:00
Edward Zarecor
9e5f7bb782 Merge branch 'master' into edx-depr31 2023-07-05 09:53:55 +02:00
Jody Bailey
02084fa372 feat: added endpoint for context needed for recommendations experiment (#32645)
* feat: added endpoint for context needed for recommendations experiment

* chore: Removed unnecessary decorator
2023-07-04 16:38:58 +02:00
Muhammad Adeel Tajamul
a71c34a969 feat: added management command to delete expired notifications (#32556) 2023-07-04 11:59:54 +05:00
Edward Zarecor
aff9d82b7d Merge branch 'master' into edx-depr31 2023-07-04 08:39:10 +02:00
Robert Raposa
65fc388d71 Revert "test: remove unused helper functions from test_views.py"
This reverts commit ad3b5610f1.

Follow-up commit will convert these helpers to actual
tests so they are run.
2023-07-03 13:36:07 -04:00
Feanil Patel
286a9cddaf Merge pull request #32559 from raju249/31696-unused-helper-functions
test: remove unused helper functions from test_views.py
2023-07-03 10:36:20 -04:00
Jenkins
dab865c4ee chore(i18n): update translations 2023-07-02 17:04:33 -04:00
Braden MacDonald
83f54aeebe refactor: Split base.in into kernel.in (required) and bundled.in (optional) (#32552)
Plus remove a few unused and indirect dependencies
2023-06-30 09:51:43 -07:00
kenclary
d6b76c800e Merge pull request #32566 from open-craft/navin/youtube-transcripts-language-codes
feat: configure acceptable language codes for youtube transcripts
2023-06-30 11:10:36 -04:00
Agrendalath
6a8e695a0e refactor: remove redundant masquerade handling from runtime initialization
This part was added in 3d7246ecc8.
Then, 0dd4978f37 refactored the approach, but
did not remove these lines.
2023-06-30 15:06:43 +02:00
Agrendalath
36cc415fc2 refactor: reuse services and wrappers between XBlocks 2023-06-30 15:06:43 +02:00
Piotr Surowiec
80374ed1ce Merge pull request #32357 from open-craft/agrendalath/fc-0026-field-data
feat: remove field-data binding from the runtime [FC-0026]
2023-06-30 15:06:17 +02:00
Edward Zarecor
462e8bef36 Merge branch 'master' into 31696-unused-helper-functions 2023-06-30 12:57:43 +02:00
Navin Karkera
93006b476d feat: configure acceptable language codes for youtube transcripts 2023-06-30 11:02:58 +05:30
Jody Bailey
92301a245f fix: field adjustments to product recommendations endpoint (#32593)
* fix: field adjustments to product recommendations endpoint

* chore: formatting for files

* chore: indenting fix

* chore: removed f-strings
2023-06-28 15:46:33 +02:00
Rajendra Kadam
ad3b5610f1 test: remove unused helper functions from test_views.py
Since they were not used anywhere, it is ideal to delete them.

It would be redundant to keep them.
2023-06-28 14:35:53 +05:30
Awais Qureshi
4aca4d3fbb chore: Rename the bucket to bucket_name. (#32576)
https://github.com/jschneier/django-storages/blob/master/CHANGELOG.rst#1101-2020-09-13
2023-06-27 13:17:28 +05:00
Agrendalath
6c435bb68c feat: remove field-data service from runtime initialization 2023-06-26 19:21:22 +02:00
Agrendalath
5f46ea52cd feat: remove field data binding from the runtime 2023-06-26 19:21:22 +02:00
Edward Zarecor
0ad7ab30f2 Merge branch 'master' into edx-depr31 2023-06-26 13:02:28 +02:00
Nawfal Ahmed
80d151b404 feat: add marketing url to subscription upsell (#32560) 2023-06-23 12:54:15 +00:00
Jenkins
22989f4fe8 chore(i18n): update translations 2023-06-22 12:34:48 -04:00
Jody Bailey
b559a61c14 fix: added response for austin masters program in CPR views (#32544)
* fix: added response for austin masters program in CPR views

* test: fixed test names and docstrings

* chore: pylint check fixes
2023-06-22 14:21:25 +02:00
Alejandro Matta
fd08f26e5d feat: change wording ccpa footer link (#32303)
Co-authored-by: Alejandro Matta <amatta2u@gmail.com>
2023-06-21 16:12:42 -04:00