Commit Graph

14406 Commits

Author SHA1 Message Date
Taimoor Ahmed
86d9b08b5d feat: remove last cs_comments service references (#37503)
This commit removes all remaining references to cs_comments_service
except the ForumsConfig model. The only purpose of keeping the model
and table around is so that the webapp processes don't start throwing
errors during deployment because they're running the old code for a
few minutes after the database migration has run. We can drop
ForumsConfig and add the drop-table migration after Ulmo is cut.

Also bumps the openedx-forum version to 0.3.7

---------

Co-authored-by: Taimoor  Ahmed <taimoor.ahmed@A006-01711.local>
2025-10-23 10:48:39 -04:00
Tarun Tak
067ca72ed0 fix: remove unused waffle switch for optimizing learner retrieval (#37513) 2025-10-22 19:53:07 -04:00
Muhammad Anas
4afff6ef5c feat: shift progress calculation to backend, add never_but_include_grade (#37399)
This commit migrates the data calculation logic for the GradeSummary
table, which was previously in the frontend-app-learning.

This commit also introduces a new visibility option for assignment
scores: “Never show individual assessment results, but show overall
assessment results after the due date.”

With this option, learners cannot see question-level correctness or
scores at any time. However, once the due date has passed, they can
view their overall score in the total grades section on the Progress
page.

These two changes are coupled with each other because it compromises
the integrity of this data to do the score hiding logic on the front
end.

The corresponding frontend PR is: openedx/frontend-app-learning#1797
2025-10-22 10:15:42 -04:00
Feanil Patel
a0ab48921f fix: Handle a case that could cause infinite redirects.
If ENABLE_MKTG_SITE is True, MKTG_URLS['ROOT'] must be set.  However if
it is set to the same value as the LMS_ROOT_URL (which points to this
view), you can end up in an infinite redirect loop.  If the two URLs do
match, don't redirect, just fall through to the content that this page
would have responded with instead.
2025-10-21 12:11:57 -04:00
Feanil Patel
82073d395c fix: Drop references to the FEATURES dict.
These are out of date and while they still work with the proxy object we
don't need them anymore.  Just look up the setting directly.
2025-10-20 15:28:54 -04:00
Tobias Macey
0fdb6ed2fe fix: Convert UUIDField columns to uuid type for MariaDB (#37494)
The behavior of the MariaDB backend has changed behavior for UUIDField
from a `CharField(32)` to an actual `uuid` type. This is not converted
automatically, which results in all writes to the affected columns to
error with a message about the data being too long. This is because the
actual tring being written is a UUID with the `-` included, resulting in
a 36 character value which can't be inserted into a 32 character column.
2025-10-20 10:32:44 -04:00
Feanil Patel
fc374e7dfa Merge pull request #37474 from openedx/fix-assert-dict-contains-subset-depr
fix: replace deprecated assertDictContainsSubset()
2025-10-14 13:42:51 -04:00
usamasadiq
8aa2970c51 fix: fix pycodestyle error 2025-10-13 22:53:37 +05:00
usamasadiq
ebaf5e64de fix: fix pylint warning 2025-10-13 19:00:45 +05:00
usamasadiq
8a2c451439 fix: replace deprecated assertDictContainsSubset() 2025-10-12 11:10:36 +05:00
farhan
dc074d57cd chore: Move sharing_sites into video_configuration app
- https://github.com/openedx/edx-platform/issues/37456
2025-10-10 17:25:39 +05:00
Taimoor Ahmed
4c051378d0 feat!: remove last calls to cs_comments_service (#37376)
This removes the last remaining code that called out to the
cs_comments_service. All forums backend logic now uses the v2 API from
the forum repo (https://github.com/openedx/forum). This does NOT remove
MongoDB support.

This also implements the endpoint to retrieve all comments for a user
using the new forum backend. This is not actually called from any known
frontend code, but it has not been formally deprecated as an endpoint,
and therefore needs to be supported.

As part of the cleanup, the ENABLE_FORUM_V2 course waffle flag has also
been removed, along with all remaining switching logic that used to
route between the Python API in the forum repo and service calls to the
cs_comments_service Ruby service.

Other endpoints affected (switching logic removed):

* get course commentable counts
* get/update course user stats
* update comment/thread/user
* delete thread (implementation moved to forum repo)
* follow
* retire user

This is part of the following overall DEPR ticket:
  https://github.com/openedx/cs_comments_service/issues/437
2025-10-08 11:36:52 -04:00
Haftamu Kebede
e46cfa6b32 feat: Certificate sharing to linkedin (optionally) consider course level organization name (#37331)
By adjusting social media sharing settings(specifically linkedin) certificate parameters are autopopulated to LinkedIn API. Additional setting parameters(such as CERTIFICATE_LINKEDIN_DEFAULTS_TO_COURSE_ORGANIZATION_NAME) are introduced to override existing(platform level parameter for organization name) parameters for an operator to configure course level organization name. This will enable learners to share certificate in to LinkedIn with an option for course associated organization to be autopopulated.
2025-10-07 16:02:08 -04:00
Feanil Patel
c0ce868365 Merge pull request #37380 from openedx/feanil/move_user_util
feanil/move user util
2025-10-06 10:37:14 -04:00
Feanil Patel
c943c223b4 Merge pull request #36982 from WGU-Open-edX/refactor-36961-unify-certificate-apis
feat: add unified certificate task API with support for toggle, gener…
2025-10-03 11:46:16 -04:00
Serhii Nanai
6c31268a9d test: use ENABLE_CATALOG_MICROFRONTEND from settings 2025-09-30 11:00:43 +03:00
Serhii Nanai
7b127a4885 refactor: use get_link_for_about_page, remove duplicate function 2025-09-30 10:22:12 +03:00
Serhii Nanai
d6a2942ad0 refactor: switch to global mfe state check 2025-09-30 10:22:12 +03:00
Serhii Nanai
75b7a83dc6 feat: add redirects to mfe for catalog-related legacy pages 2025-09-30 10:22:12 +03:00
Chris Chávez
51bfd3febe feat: Add blockType to xblockPreview & title to xblock_iframe [FC-0097] (#37362)
- Adds `blockType` and `is_modified` to the `showXBlockLibraryChangesPreview` iframe message.
- Add title to the `xblock_iframe`
- Add `is-modified` to `studio_xblock_wrapper`
- Add `disable_staff_debug_info` as a query param in `render_xblock`
- `downstream_is_modified` added to ComponentLink and ContainerLink
2025-09-29 23:27:32 +00:00
Feanil Patel
d34a6b9c6f Merge pull request #37342 from raccoongang/nanai/axm-2166/update-link-generation
feat [FC-86]: update course_about & catalog link generation
2025-09-29 15:28:41 -04:00
Serhii Nanai
13f450ff29 fix: use getattr in use_catalog_mfe 2025-09-29 15:03:41 +03:00
Serhii Nanai
e2d50f5b4d test: fix ENABLE_CATALOG_MICROFRONTEND look up in tests 2025-09-29 14:47:22 +03:00
Serhii Nanai
b448b0fe69 fix: look up ENABLE_CATALOG_MICROFRONTEND in settings directly, adjust tests 2025-09-29 14:16:46 +03:00
Muhammad Arslan
51ac947caf fix: always generate block structure from "published-only" branch (#37335)
Block structures are meant to be an optimization for the LMS, meaning
that they should always be collecting from the published branch of
modulestore. This is what happens by default when it's run from the LMS
celery process, but this code is sometimes invoked from a Studio worker
(e.g. development mode celery, running in immediate in-proc mode).

---------

Co-authored-by: Peter Pinch <pdpinch@mit.edu>
2025-09-26 20:58:12 -04:00
coder1918
3591e87520 feat: add unified certificate task API with toggle, generate, and regenerate support 2025-09-24 09:30:18 -06:00
Serhii Nanai
47f5cb84bc test: fix ddt in test_link_with_new_catalog_page 2025-09-24 11:58:19 +03:00
Max Sokolski
2b478146f8 docs: add DEPR ticket for some mfe_config settings (#37370) 2025-09-23 14:48:53 -04:00
Serhii Nanai
18ec2a1517 fix: fix gettings ENABLE_CATALOG_MICROFRONTEND FEATURE 2025-09-23 20:45:07 +03:00
Serhii Nanai
1c1fa1b1a1 refactor: switch to global mfe state check 2025-09-23 20:45:07 +03:00
Serhii Nanai
f018cfe70e feat: update course_about & catalog link generation 2025-09-23 20:45:01 +03:00
Feanil Patel
89d72074fd refactor: Move user_util library to edx-platform
The library consisted of this set of utilities and a cli and was only
being used in the edx-platform repo.  The CLI will be DEPRed along with
the repo but the code that is being used for retirement will be moved
here.
2025-09-22 15:39:56 -04:00
Kyrylo Kireiev
777ba88218 feat: [AXM-2398] Add short label to assignment (#36970)
Rationale: The instructor may create short labels that are longer than
3 characters, and they can be hard to work with in the mobile UI. Thus,
on mobile, it was decided to add short labels to the api response by
getting them from section breakdown, which ensures they are consistent
with the labels the user sees in the Grading section.
2025-09-18 10:46:02 -04:00
Feanil Patel
f120a7cac5 Merge pull request #37067 from WGU-Open-edX/collapse-features-dictionary
refactor: flatten FEATURES dictionary with backward compatible proxy
2025-09-18 10:39:48 -04:00
Ali-Salman29
539666dc40 feat!: remove cs_comments_service support for forum's content APIs
- This will force the use of the new v2 forum's APIs for Threads & Comment.
- Update params for get_user_subscription function. It uses the same structure as we have in the get_user_threads.
2025-09-15 09:10:06 -04:00
ayesha waris
2a2942bc7f feat: automatically follow post when creating comments/responses (#37318)
* feat: automatically follow  post while createing comments/responses

* feat: follow post when a comment or response is created

* test: updated tests

---------

Co-authored-by: Ayesha Waris <ayesha.waris@192.168.10.28>
Co-authored-by: Muhammad Adeel Tajamul <muhammadadeeltajamul@hotmail.com>
2025-09-12 13:10:39 +05:00
coder1918
790a67a0d1 refactor: flatten FEATURES dictionary with backward compatible proxy 2025-09-09 14:11:39 -06:00
Kyrylo Kireiev
7f885c79f7 fix: [FC-0092] fix 500 when return_type is list (#36969)
There was problem in filter_discussion_xblocks_from_response(). This
function was breaking the list response for the BlocksInCourseView by
returning a dict instead of list.
2025-09-09 14:35:09 -04:00
Taimoor Ahmed
ed45fbba37 fix: Invalid read param in forum thread api
This PR fixes the invalid read parameter being passed in forum update_thread api.
this was somehow introduced in this commit 6f522f3992 (diff-b9d08209a02c673887f6ca72b0018758174e95508539adbcb6885f22c7844eb8L292)
2025-09-08 11:17:10 -04:00
Ahtisham Shahid
914887ff78 Revert "feat: added api for mobile configs (#37323)" (#37332)
This reverts commit 3d4652420c.
2025-09-08 19:33:33 +05:00
Ram Chandra Bhavirisetty
42afa1bb62 chore: remove deprecated DEFAULT_FILE_STORAGE and STATICFILES_STORAGE settings (#37002) 2025-09-05 17:52:33 -04:00
Feanil Patel
06b54e79f2 Merge pull request #36845 from raccoongang/rg/axm-course-catalog-extend-courseware-api
feat: [FC-86] extend courseware api with new fields
2025-09-04 09:46:25 -04:00
Ahtisham Shahid
3d4652420c feat: added api for mobile configs (#37323) 2025-09-04 16:21:07 +05:00
kshitij.sobti
0bed7d7127 feat: Add support for using LTI data to populate user profile
Currently the LTI provider implementation auto-creates a random user when
logging in, however, the LTI launch can include relevant user details such as
their email, full name and even a username. This change makes the LTI code
use the provided details if the "Use lti pii" setting is set in the Django
admin.
2025-09-01 09:36:48 +05:30
Shafqat Farhan
728a325781 feat: Added pluggable override on financial_assistance (#37303) 2025-08-29 11:56:33 +05:00
Mubbshar Anwar
052b930ef5 fix: fix script tag quot escaped (#37296) 2025-08-28 19:01:19 +05:00
Mubbshar Anwar
d2eba789ff fix: fix test_html_tags_removal (#37209) 2025-08-28 11:51:22 +05:00
ayesha waris
58d0839aff fix: added thread id in comment/response reported event (#37276)
Co-authored-by: Ayesha Waris <ayesha.waris@A006-01000.local>
2025-08-27 15:24:22 +05:00
Awais Qureshi
053abe33de fix: django52 tightened consistency around delete ordering and signal/delete() method invocation. (#37250) 2025-08-27 13:37:20 +05:00
kshitij.sobti
ba6026f999 feat: Allow adding custom LTI parameters via LTI_CUSTOM_PARAMS django setting
Adds a new Django setting called `LTI_CUSTOM_PARAMS` that allows extending the
list of optional LTI parameters processed by the platform. These parameters can
be used by plugins for deeper platform integration.
2025-08-26 01:53:07 +05:30