consolidate ENABLE_FORUM_DAILY_DIGEST config (#24423)
The ENABLE_FORUM_DAILY_DIGEST config was using both a Django Setting and a waffle flag. This consolidates this to simply use the single Django Setting: FEATURES['ENABLE_FORUM_DAILY_DIGEST']. ARCHBOM-132
This commit is contained in:
22
lms/djangoapps/discussion/config/settings.py
Normal file
22
lms/djangoapps/discussion/config/settings.py
Normal file
@@ -0,0 +1,22 @@
|
||||
"""
|
||||
Discussion settings.
|
||||
"""
|
||||
from django.conf import settings
|
||||
|
||||
# .. toggle_name: FEATURES['ENABLE_FORUM_DAILY_DIGEST']
|
||||
# .. toggle_implementation: DjangoSetting
|
||||
# .. toggle_default: True
|
||||
# .. toggle_description: Set to True to enable forum notification features.
|
||||
# .. toggle_category: discussion
|
||||
# .. toggle_use_cases: open_edx
|
||||
# .. toggle_creation_date: 2020-03-09
|
||||
# .. toggle_expiration_date: None
|
||||
# .. toggle_tickets: None
|
||||
# .. toggle_status: supported
|
||||
# .. toggle_warnings: None
|
||||
ENABLE_FORUM_DAILY_DIGEST = 'enable_forum_daily_digest'
|
||||
|
||||
|
||||
def is_forum_daily_digest_enabled():
|
||||
"""Returns whether forum notification features should be visible"""
|
||||
return settings.FEATURES.get('ENABLE_FORUM_DAILY_DIGEST')
|
||||
@@ -1,27 +0,0 @@
|
||||
"""
|
||||
Discussion settings and flags.
|
||||
"""
|
||||
|
||||
from openedx.core.djangoapps.waffle_utils import WaffleFlag, WaffleFlagNamespace
|
||||
|
||||
ENABLE_FORUM_DAILY_DIGEST = 'enable_forum_daily_digest'
|
||||
|
||||
|
||||
def waffle_flags():
|
||||
"""
|
||||
Returns the namespaced, cached, audited Waffle flags dictionary for Grades.
|
||||
"""
|
||||
namespace = WaffleFlagNamespace(name='edx_discussions')
|
||||
return {
|
||||
# By default, enable forum notifications. Can be disabled platform wide.
|
||||
ENABLE_FORUM_DAILY_DIGEST: WaffleFlag(
|
||||
namespace,
|
||||
ENABLE_FORUM_DAILY_DIGEST,
|
||||
flag_undefined_default=True
|
||||
),
|
||||
}
|
||||
|
||||
|
||||
def is_forum_daily_digest_enabled():
|
||||
"""Returns whether forum notification features should be visible"""
|
||||
return waffle_flags()[ENABLE_FORUM_DAILY_DIGEST].is_enabled()
|
||||
@@ -30,7 +30,7 @@ import openedx.core.djangoapps.django_comment_common.comment_client as cc
|
||||
from lms.djangoapps.courseware.access import has_access
|
||||
from lms.djangoapps.courseware.courses import get_course_with_access
|
||||
from lms.djangoapps.courseware.views.views import CourseTabView
|
||||
from lms.djangoapps.discussion.config.waffle import is_forum_daily_digest_enabled
|
||||
from lms.djangoapps.discussion.config.settings import is_forum_daily_digest_enabled
|
||||
from lms.djangoapps.discussion.django_comment_client.base.views import track_thread_viewed_event
|
||||
from lms.djangoapps.discussion.django_comment_client.constants import TYPE_ENTRY
|
||||
from lms.djangoapps.discussion.django_comment_client.permissions import has_permission
|
||||
|
||||
@@ -26,6 +26,7 @@ from lms.djangoapps.courseware.views import views as courseware_views
|
||||
from lms.djangoapps.courseware.views.index import CoursewareIndex
|
||||
from lms.djangoapps.courseware.views.views import CourseTabView, EnrollStaffView, StaticCourseTabView
|
||||
from lms.djangoapps.discussion import views as discussion_views
|
||||
from lms.djangoapps.discussion.config.settings import is_forum_daily_digest_enabled
|
||||
from lms.djangoapps.discussion.notification_prefs import views as notification_prefs_views
|
||||
from lms.djangoapps.instructor.views import instructor_dashboard as instructor_dashboard_views
|
||||
from lms.djangoapps.instructor_task import views as instructor_task_views
|
||||
@@ -701,7 +702,7 @@ if settings.FEATURES.get('ENABLE_DISCUSSION_SERVICE'):
|
||||
),
|
||||
]
|
||||
|
||||
if settings.FEATURES.get('ENABLE_FORUM_DAILY_DIGEST'):
|
||||
if is_forum_daily_digest_enabled():
|
||||
urlpatterns += notification_prefs_urls
|
||||
|
||||
urlpatterns += [
|
||||
|
||||
Reference in New Issue
Block a user