diff --git a/common/djangoapps/student/toggles.py b/common/djangoapps/student/toggles.py new file mode 100644 index 0000000000..9c50bd6290 --- /dev/null +++ b/common/djangoapps/student/toggles.py @@ -0,0 +1,24 @@ +""" +Toggles for Dashboard page. +""" +from edx_toggles.toggles import WaffleFlag + + +# Namespace for student waffle flags. +WAFFLE_FLAG_NAMESPACE = 'student' + +# Waffle flag to enable amplitude recommendations +# .. toggle_name: student.enable_amplitude_recommendations +# .. toggle_implementation: WaffleFlag +# .. toggle_default: False +# .. toggle_description: Supports rollout of a POC for amplitude recommendations. +# .. toggle_use_cases: temporary +# .. toggle_creation_date: 2022-06-24 +# .. toggle_target_removal_date: None +# .. toggle_warning: None +# .. toggle_tickets: VAN-984 +ENABLE_AMPLITUDE_RECOMMENDATIONS = WaffleFlag(f'{WAFFLE_FLAG_NAMESPACE}.enable_amplitude_recommendations', __name__) + + +def should_show_amplitude_recommendations(): + return ENABLE_AMPLITUDE_RECOMMENDATIONS.is_enabled() diff --git a/lms/static/js/learner_dashboard/RecommendationsPanel.jsx b/lms/static/js/learner_dashboard/RecommendationsPanel.jsx new file mode 100644 index 0000000000..c11561e82c --- /dev/null +++ b/lms/static/js/learner_dashboard/RecommendationsPanel.jsx @@ -0,0 +1,85 @@ +/* global gettext */ +import React from 'react'; + +class RecommendationsPanel extends React.Component { + render() { + return ( +
+
{gettext('Recommendations for you')}
+
+
+ course image +
+
+ The Chemistry of Life +
+
+
+
+ course image +
+
+ Drug Discovery & Medicinal Chemistry +
+
+
+
+ course image +
+
+ From Fossil Resources to Biomass: A Chemistry Perspective +
+
+
+
+ course image +
+
+ Digital Biomaterials +
+
+
+
+ course image +
+
+ Basic Steps in Magnetic Resonance +
+
+ {this.props.exploreCoursesUrl ? ( +
+ + {gettext('Explore courses')} + +
+ ) : null} +
+ ); + } +} + +export {RecommendationsPanel}; diff --git a/webpack.common.config.js b/webpack.common.config.js index 77d3d62156..7aa2d02d10 100644 --- a/webpack.common.config.js +++ b/webpack.common.config.js @@ -97,6 +97,7 @@ module.exports = Merge.smart({ DemographicsCollectionModal: './lms/static/js/demographics_collection/DemographicsCollectionModal.jsx', AxiosJwtTokenService: './lms/static/js/jwt_auth/AxiosJwtTokenService.js', EnterpriseLearnerPortalModal: './lms/static/js/learner_dashboard/EnterpriseLearnerPortalModal.jsx', + RecommendationsPanel: './lms/static/js/learner_dashboard/RecommendationsPanel.jsx', // Learner Dashboard EntitlementFactory: './lms/static/js/learner_dashboard/course_entitlement_factory.js',