From 0d77cc8ef0af609b572a598ad2f8e6bf134df99a Mon Sep 17 00:00:00 2001 From: Ben Warzeski Date: Thu, 22 Sep 2022 10:54:59 -0400 Subject: [PATCH] feat: connect to real api --- .../CourseCardBanners/CourseBanner.jsx | 6 ++-- .../components/CourseCardBanners/messages.js | 5 ---- src/data/redux/app/selectors.js | 4 +-- src/data/services/lms/fakeData/courses.js | 28 ++++++++----------- src/data/services/lms/urls.js | 4 ++- 5 files changed, 19 insertions(+), 28 deletions(-) diff --git a/src/containers/CourseCard/components/CourseCardBanners/CourseBanner.jsx b/src/containers/CourseCard/components/CourseCardBanners/CourseBanner.jsx index f9eea53..847d9fa 100644 --- a/src/containers/CourseCard/components/CourseCardBanners/CourseBanner.jsx +++ b/src/containers/CourseCard/components/CourseCardBanners/CourseBanner.jsx @@ -53,17 +53,17 @@ export const CourseBanner = ({ cardId }) => { )} - {isTooEarly && ( + + {(!isStaff && isTooEarly) && ( {formatMessage(messages.courseHasNotStarted, { startDate: formatDate(courseRun.startDate), })} )} - {hasUnmetPrerequisites && ( + {(!isStaff && hasUnmetPrerequisites) && ( {formatMessage(messages.prerequisitesNotMet)} )} - {isStaff && {formatMessage(messages.staffAccessOnly)}} ); }; diff --git a/src/containers/CourseCard/components/CourseCardBanners/messages.js b/src/containers/CourseCard/components/CourseCardBanners/messages.js index 0d49392..4336697 100644 --- a/src/containers/CourseCard/components/CourseCardBanners/messages.js +++ b/src/containers/CourseCard/components/CourseCardBanners/messages.js @@ -106,11 +106,6 @@ export const messages = StrictDict({ description: 'Course has not started message', defaultMessage: 'You can\'t access this course just yet because the course hasn\'t started yet. The course will start on {startDate}.', }, - staffAccessOnly: { - id: 'learner-dash.courseCard.banners.staffAccessOnly', - description: 'Message to learners with staff access only', - defaultMessage: 'Staff access only.', - }, }); export default messages; diff --git a/src/data/redux/app/selectors.js b/src/data/redux/app/selectors.js index 0ef6a4e..46883d1 100644 --- a/src/data/redux/app/selectors.js +++ b/src/data/redux/app/selectors.js @@ -55,7 +55,7 @@ export const courseCard = StrictDict({ isRestricted: certificate.isRestricted, })), course: mkCardSelector(({ course }) => ({ - bannerImgSrc: course.bannerImgSrc, + bannerImgSrc: process.env.LMS_BASE_URL + course.bannerImgSrc, courseNumber: course.courseNumber, courseName: course.courseName, website: course.website, @@ -92,7 +92,7 @@ export const courseCard = StrictDict({ }; }), entitlement: mkCardSelector(({ entitlement }) => { - if (!entitlement) { + if (!entitlement || Object.keys(entitlement).length === 0) { return { isEntitlement: false }; } const deadline = new Date(entitlement.changeDeadline); diff --git a/src/data/services/lms/fakeData/courses.js b/src/data/services/lms/fakeData/courses.js index 91495dd..5a5e9ce 100644 --- a/src/data/services/lms/fakeData/courses.js +++ b/src/data/services/lms/fakeData/courses.js @@ -33,11 +33,7 @@ export const genCourseNumber = (index) => `course-number${index}`; export const genCourseTitle = (index) => `Course Name ${index}`; export const genEntitlementUUID = (index) => `entitlement-course-uuid-${index}`; -const logos = { - edx: 'https://edx-cdn.org/v3/prod/logo.svg', - social: 'https://courses.edx.org/asset-v1:USMx+LDT200x+2T2021+type@thumbnail+block@course_image-375x200.jpg', - science: 'https://courses.edx.org/asset-v1:HarvardX+PH525.5x+3T2020+type@thumbnail+block@course_image-375x200.jpg', -}; +const bannerImgSrc = '/asset-v1:edX+DemoX+Demo_Course+type@asset+block@images_course_image.jpg'; const farPastDate = '1900-11-11T00:00:00Z'; const pastDate = '2000-11-11T00:00:00Z'; @@ -357,7 +353,7 @@ export const courseRuns = [ isEarned: true, isDownloadable: true, availableDate: pastDate, - certPreviewUrl: logos.edx, + certPreviewUrl: bannerImgSrc, }, }, // verified, course ended, learner finished, cert earned, downloadable (link only), @@ -393,7 +389,7 @@ export const courseRuns = [ isEarned: true, isDownloadable: true, availableDate: pastDate, - certPreviewUrl: logos.edx, + certPreviewUrl: bannerImgSrc, }, }, // Entitlement - not started @@ -508,7 +504,7 @@ export const courseRuns = [ isEarned: true, isDownloadable: true, availableDate: pastDate, - certPreviewUrl: logos.edx, + certPreviewUrl: bannerImgSrc, }, }, // Entitlement - Learner finished and failed. cannot refund. course ended. @@ -556,7 +552,7 @@ export const courseRuns = [ isEarned: true, isDownloadable: true, availableDate: pastDate, - certPreviewUrl: logos.edx, + certPreviewUrl: bannerImgSrc, }, }, ]; @@ -624,19 +620,19 @@ export const courseRunData = courseRuns.map( const lastEnrolled = lastEnrolledDate.toISOString(); const iteratedData = [ { - course: { courseName, bannerImgSrc: logos.edx, courseNumber }, + course: { courseName, bannerImgSrc, courseNumber }, emailSettings: { isEmailEnabled: false, hasOptedOutOfEmail: false }, programs: { relatedPrograms }, courseProvider: providers.edx, }, { - course: { courseName, bannerImgSrc: logos.science, courseNumber }, + course: { courseName, bannerImgSrc, courseNumber }, emailSettings: { isEmailEnabled: true, hasOptedOutOfEmail: false }, courseProvider: providers.mit, programs: { relatedPrograms: [relatedPrograms[0]] }, }, { - course: { courseName, bannerImgSrc: logos.social, courseNumber }, + course: { courseName, bannerImgSrc, courseNumber }, emailSettings: { isEmailEnabled: true, hasOptedOutOfEmail: true }, courseProvider: null, programs: { relatedPrograms: [] }, @@ -668,17 +664,17 @@ export const entitlementData = entitlementCourses.map( const iteratedData = [ { courseProvider: providers.edx, - course: { courseNumber, courseName, bannerImgSrc: logos.edx }, + course: { courseNumber, courseName, bannerImgSrc }, programs: { relatedPrograms }, }, { courseProvider: providers.mit, - course: { courseNumber, courseName, bannerImgSrc: logos.science }, + course: { courseNumber, courseName, bannerImgSrc }, programs: { relatedPrograms: [relatedPrograms[0]] }, }, { courseProvider: null, - course: { courseNumber, courseName, bannerImgSrc: logos.social }, + course: { courseNumber, courseName, bannerImgSrc }, programs: { relatedPrograms: [] }, }, ]; @@ -704,7 +700,6 @@ export const entitlementData = entitlementCourses.map( }, ); -/* console.log('%j', { courses: [ ...courseRunData, @@ -712,7 +707,6 @@ console.log('%j', { ], ...globalData, }); -*/ export default { courseRunData, diff --git a/src/data/services/lms/urls.js b/src/data/services/lms/urls.js index 1463f78..810777a 100644 --- a/src/data/services/lms/urls.js +++ b/src/data/services/lms/urls.js @@ -4,7 +4,9 @@ import { configuration } from 'config'; const baseUrl = `${configuration.LMS_BASE_URL}`; const api = `${baseUrl}/api/`; -const init = `${api}learner_home/mock/init`; + +// const init = `${api}learner_home/mock/init`; // mock endpoint for testing +const init = `${api}learner_home/init`; const courseUnenroll = `${api}/courses/unenroll`; // TODO: Fix const updateEmailSettings = `${api}/change_email_settings`;