From da8ff077543abc010a8a31f7f5604a5a17b190b0 Mon Sep 17 00:00:00 2001 From: andrey-canon Date: Tue, 27 Aug 2024 15:55:15 -0500 Subject: [PATCH] feat: filter by current site organizations --- lms/djangoapps/mobile_api/users/views.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/lms/djangoapps/mobile_api/users/views.py b/lms/djangoapps/mobile_api/users/views.py index 81051057b7a..77423c9c086 100644 --- a/lms/djangoapps/mobile_api/users/views.py +++ b/lms/djangoapps/mobile_api/users/views.py @@ -36,6 +36,7 @@ from lms.djangoapps.courseware.views.index import save_positions_recursively_up from lms.djangoapps.mobile_api.models import MobileConfig from lms.djangoapps.mobile_api.utils import API_V1, API_V05, API_V2, API_V3, API_V4 +from openedx.core.djangoapps.site_configuration.helpers import get_current_site_orgs from openedx.features.course_duration_limits.access import check_course_expired from xmodule.modulestore.django import modulestore # lint-amnesty, pylint: disable=wrong-import-order from xmodule.modulestore.exceptions import ItemNotFoundError # lint-amnesty, pylint: disable=wrong-import-order @@ -345,6 +346,11 @@ def is_org(self, check_org, course_org): """ Check course org matches request org param or no param provided """ + current_orgs = get_current_site_orgs() + + if current_orgs and course_org not in current_orgs: + return False + return check_org is None or (check_org.lower() == course_org.lower()) def get_serializer_context(self):