Skip to content
131 changes: 131 additions & 0 deletions data_fixtures/migrations/0002_unit_page_copy_updates.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,131 @@
# Generated by Django 4.2.13 on 2024-07-08 17:08

from django.db import migrations

fixtures = [
{
"name": "ocw",
"offeror_configuration": {
"audience": ["Students", "Professionals", "Educators", "Lifelong Learners"],
"value_prop": (
"For millions of learners and educators around the "
"world, OpenCourseWare shares free open educational resources from "
"across the entire MIT curriculum. With no "
"sign-up needed, thousands of downloadable materials, "
"and convenient online access, you're "
"empowered for self-paced learning and adapting these materials in "
"the ways that suit you best."
),
},
"channel_configuration": {
"sub_heading": (
"For millions of learners and educators around "
"the world, OpenCourseWare shares free open educational resources"
" from across the entire MIT curriculum. With no sign-up needed, "
"thousands of downloadable materials, and convenient online access, "
"you're empowered for self-paced learning and adapting these "
"materials in the ways that suit you best."
),
},
},
{
"name": "mitx",
"channel_configuration": {},
"offeror_configuration": {
"audience": ["Lifelong Learners", "Students", "Professionals"],
"certifications": ["Certificate of Completion", "MicroMasters Credential"],
},
},
{
"name": "mitpe",
"offeror_configuration": {
"audience": [
"Engineering Professionals",
"Technical Professionals",
"Scientists and Researchers",
"Senior Executives",
],
"formats": ["Online", "In-Person", "Hybrid"],
"certifications": ["Certificate of Completion", "Professional Certificate"],
"content_types": ["Professional"],
"value_prop": (
"MIT Professional Education is a leader in "
"technology and engineering education"
" for working professionals pursuing career advancement, and "
"for organizations seeking to meet modern-day challenges "
"by expanding the knowledge and skills of their employees. "
"Courses are delivered in a range of formats—in-person "
"(on-campus and live virtual), online, and through hybrid "
"approaches—to meet the needs of today's learners."
),
},
"channel_configuration": {
"heading": (
"Join a powerful network of innovators and master "
"skills the global market needs in years to come."
),
"sub_heading": (
"MIT Professional Education is a leader in technology and engineering "
"education for working professionals pursuing career "
"advancement, and for organizations seeking to meet modern-day "
"challenges by expanding the knowledge and skills of their employees. "
"Courses are delivered in a range of formats—in-person (on-campus and"
" live virtual), online, and through hybrid approaches—to "
"meet the needs of today's learners."
),
},
},
{
"name": "see",
"offeror_configuration": {
"audience": [
"Business Professionals",
"Senior Executives",
"Entrepreneurs",
"Intrapreneurs",
],
"formats": ["Online", "In-Person", "Hybrid"],
"fee": ["Paid"],
"certifications": ["Certificate of Completion", "Professional Certificate"],
},
"channel_configuration": {},
},
{
"name": "xpro",
"offeror_configuration": {
"formats": ["Online", "In Person", "Hybrid"],
"certifications": ["Professional Certificate"],
},
"channel_configuration": {},
},
]


def update_copy(apps, schema_editor):
Channel = apps.get_model("channels", "Channel")
LearningResourceOfferor = apps.get_model(
"learning_resources", "LearningResourceOfferor"
)
for fixture in fixtures:
channel_configuration_updates = fixture["channel_configuration"]
offeror_configuration_updates = fixture["offeror_configuration"]
channel = Channel.objects.get(name=fixture["name"])
if Channel.objects.filter(name=fixture["name"]).exists():
for key, val in channel_configuration_updates.items():
channel.configuration[key] = val
channel.save()
if LearningResourceOfferor.objects.filter(code=fixture["name"]).exists():
offeror = LearningResourceOfferor.objects.get(code=fixture["name"])
for key, val in offeror_configuration_updates.items():
setattr(offeror, key, val)
offeror.save()


class Migration(migrations.Migration):
dependencies = [
("data_fixtures", "0001_add_testimonial_data"),
]

operations = [
migrations.RunPython(update_copy, migrations.RunPython.noop),
]
Original file line number Diff line number Diff line change
Expand Up @@ -88,9 +88,11 @@ const getFacetManifest = (channelType: ChannelTypeEnum) => {
{
name: "more_information",
title: "More Information",

labelFunction: (key: string, channelTitle: string) => (
<a href={key}>
{channelTitle} website <RiExternalLinkLine size={18} />
// eslint-disable react/jsx-no-target-blank
<a target="_blank" href={key} rel="noopener noreferrer">
{channelTitle} Website <RiExternalLinkLine size={18} />
</a>
),
order: 1,
Expand All @@ -107,7 +109,7 @@ const getFacetManifest = (channelType: ChannelTypeEnum) => {
},
{
name: "certifications",
title: "Certificate",
title: "Certificates",
order: 0,
},
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -390,7 +390,7 @@ const UnitsListingPage: React.FC = () => {
icon: <AcademicIcon />,
title: "Academic Units",
description:
"MIT's Academic courses, programs and materials mirror MIT curriculum and residential programs, making these available to a global audience. Approved by faculty committees, academic content furnishes a comprehensive foundation of knowledge, skills, and abilities for students pursuing their academic objectives. Renowned for their rigor and challenge, MIT's academic offerings deliver an experience on par with the campus environment.",
"MIT's Academic courses, programs, and materials mirror MIT curriculum and residential programs, making these available to a global audience. Approved by faculty committees, Academic content furnishes a comprehensive foundation of knowledge, skills, and abilities for students pursuing their academic objectives. Renowned for their rigor and challenge, MIT's Academic offerings deliver an experience on par with the campus environment.",
units: academicUnits,
},
{
Expand All @@ -415,7 +415,7 @@ const UnitsListingPage: React.FC = () => {
/>
}
title="Academic & Professional Learning"
description="Extending MIT's knowledge to the world"
description="Non-degree learning resources tailored to the needs of students and working professionals."
backgroundUrl={UNITS_BANNER_IMAGE}
/>
<Container>
Expand All @@ -426,7 +426,10 @@ const UnitsListingPage: React.FC = () => {
MIT is dedicated to advancing knowledge beyond students enrolled
in MIT's campus programs. Several units within MIT offer
educational opportunities accessible to learners worldwide,
catering to a diverse range of needs.
catering to a diverse range of needs. There are two types of
non-degree learning content: Academic and Professional. Each
unit and offering is tagged by content type to help learners
choose courses and programs aligned with their learning goals.
</PageHeaderText>
</PageHeaderContainerInner>
</PageHeaderContainer>
Expand Down