Skip to content

Commit fbaa6ae

Browse files
authored
Merge pull request #36816 from raccoongang/fix-courses-catalog-visibility-main
fix: correct course catalog visibility for "about" setting
2 parents 0611c78 + cd57ece commit fbaa6ae

2 files changed

Lines changed: 9 additions & 1 deletion

File tree

lms/lib/courseware_search/lms_filter_generator.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
from openedx.core.djangoapps.site_configuration import helpers as configuration_helpers
1010
from openedx.core.djangoapps.user_api.partition_schemes import RandomUserPartitionScheme
1111
from common.djangoapps.student.models import CourseEnrollment
12+
from xmodule.course_block import CATALOG_VISIBILITY_ABOUT, CATALOG_VISIBILITY_NONE
1213

1314
INCLUDE_SCHEMES = [CohortPartitionScheme, RandomUserPartitionScheme, ]
1415
SCHEME_SUPPORTS_ASSIGNMENT = [RandomUserPartitionScheme, ]
@@ -63,6 +64,6 @@ def exclude_dictionary(self, **kwargs):
6364
if not getattr(settings, "SEARCH_SKIP_INVITATION_ONLY_FILTERING", True):
6465
exclude_dictionary['invitation_only'] = True
6566
if not getattr(settings, "SEARCH_SKIP_SHOW_IN_CATALOG_FILTERING", True):
66-
exclude_dictionary['catalog_visibility'] = 'none'
67+
exclude_dictionary['catalog_visibility'] = [CATALOG_VISIBILITY_ABOUT, CATALOG_VISIBILITY_NONE]
6768

6869
return exclude_dictionary

lms/lib/courseware_search/test/test_lms_filter_generator.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
from lms.lib.courseware_search.lms_filter_generator import LmsSearchFilterGenerator
77
from common.djangoapps.student.models import CourseEnrollment
88
from common.djangoapps.student.tests.factories import UserFactory
9+
from xmodule.course_block import CATALOG_VISIBILITY_ABOUT, CATALOG_VISIBILITY_NONE
910
from xmodule.modulestore.tests.django_utils import ModuleStoreTestCase # lint-amnesty, pylint: disable=wrong-import-order
1011
from xmodule.modulestore.tests.factories import CourseFactory, BlockFactory # lint-amnesty, pylint: disable=wrong-import-order
1112

@@ -139,3 +140,9 @@ def test_excludes_multi_orgs_within(self):
139140
assert 'org' not in exclude_dictionary
140141
assert 'org' in field_dictionary
141142
assert ['TestSite3'] == field_dictionary['org']
143+
144+
@patch('django.conf.settings.SEARCH_SKIP_SHOW_IN_CATALOG_FILTERING', False)
145+
def test_excludes_catalog_visibility(self):
146+
_, _, exclude_dictionary = LmsSearchFilterGenerator.generate_field_filters(user=self.user)
147+
assert 'catalog_visibility' in exclude_dictionary
148+
assert exclude_dictionary['catalog_visibility'] == [CATALOG_VISIBILITY_ABOUT, CATALOG_VISIBILITY_NONE]

0 commit comments

Comments
 (0)