Compare commits

...

No commits in common. "master" and "ai-dev" have entirely different histories.

12 changed files with 237 additions and 25 deletions

5
.gitignore vendored
View File

@ -1,3 +1,2 @@
node_modules/
*/node_modules/
*/build/
/backend/node_modules
/frontend/node_modules

View File

@ -43,6 +43,26 @@ const AnalyticsData = [
instructor_performance: 90,
},
{
// type code here for "relation_one" field
student_engagement: 70,
completion_rate: 75,
instructor_performance: 78,
},
{
// type code here for "relation_one" field
student_engagement: 88,
completion_rate: 85,
instructor_performance: 87,
},
];
const CoursesData = [
@ -76,6 +96,27 @@ const CoursesData = [
// type code here for "relation_many" field
},
{
title: 'Business Management',
description:
'Understand the fundamentals of managing a business effectively.',
// type code here for "relation_many" field
// type code here for "relation_many" field
},
{
title: 'Environmental Science',
description: 'Study the impact of human activities on the environment.',
// type code here for "relation_many" field
// type code here for "relation_many" field
},
];
const DiscussionBoardsData = [
@ -102,9 +143,33 @@ const DiscussionBoardsData = [
// type code here for "relation_many" field
},
{
// type code here for "relation_one" field
topic: 'Business Strategies',
// type code here for "relation_many" field
},
{
// type code here for "relation_one" field
topic: 'Environmental Impact',
// type code here for "relation_many" field
},
];
const EnrollmentsData = [
{
// type code here for "relation_one" field
// type code here for "relation_one" field
payment_status: 'Completed',
},
{
// type code here for "relation_one" field
@ -118,7 +183,15 @@ const EnrollmentsData = [
// type code here for "relation_one" field
payment_status: 'Pending',
payment_status: 'Failed',
},
{
// type code here for "relation_one" field
// type code here for "relation_one" field
payment_status: 'Failed',
},
{
@ -154,6 +227,22 @@ const InstructorsData = [
// type code here for "relation_many" field
},
{
first_name: 'Michael',
last_name: 'Johnson',
// type code here for "relation_many" field
},
{
first_name: 'Sarah',
last_name: 'Lee',
// type code here for "relation_many" field
},
];
const StudentsData = [
@ -180,6 +269,22 @@ const StudentsData = [
// type code here for "relation_many" field
},
{
first_name: 'David',
last_name: 'Williams',
// type code here for "relation_many" field
},
{
first_name: 'Eve',
last_name: 'Davis',
// type code here for "relation_many" field
},
];
// Similar logic for "relation_many"
@ -217,6 +322,28 @@ async function associateAnalyticWithCourse() {
if (Analytic2?.setCourse) {
await Analytic2.setCourse(relatedCourse2);
}
const relatedCourse3 = await Courses.findOne({
offset: Math.floor(Math.random() * (await Courses.count())),
});
const Analytic3 = await Analytics.findOne({
order: [['id', 'ASC']],
offset: 3,
});
if (Analytic3?.setCourse) {
await Analytic3.setCourse(relatedCourse3);
}
const relatedCourse4 = await Courses.findOne({
offset: Math.floor(Math.random() * (await Courses.count())),
});
const Analytic4 = await Analytics.findOne({
order: [['id', 'ASC']],
offset: 4,
});
if (Analytic4?.setCourse) {
await Analytic4.setCourse(relatedCourse4);
}
}
// Similar logic for "relation_many"
@ -256,6 +383,28 @@ async function associateDiscussionBoardWithCourse() {
if (DiscussionBoard2?.setCourse) {
await DiscussionBoard2.setCourse(relatedCourse2);
}
const relatedCourse3 = await Courses.findOne({
offset: Math.floor(Math.random() * (await Courses.count())),
});
const DiscussionBoard3 = await DiscussionBoards.findOne({
order: [['id', 'ASC']],
offset: 3,
});
if (DiscussionBoard3?.setCourse) {
await DiscussionBoard3.setCourse(relatedCourse3);
}
const relatedCourse4 = await Courses.findOne({
offset: Math.floor(Math.random() * (await Courses.count())),
});
const DiscussionBoard4 = await DiscussionBoards.findOne({
order: [['id', 'ASC']],
offset: 4,
});
if (DiscussionBoard4?.setCourse) {
await DiscussionBoard4.setCourse(relatedCourse4);
}
}
// Similar logic for "relation_many"
@ -293,6 +442,28 @@ async function associateEnrollmentWithStudent() {
if (Enrollment2?.setStudent) {
await Enrollment2.setStudent(relatedStudent2);
}
const relatedStudent3 = await Students.findOne({
offset: Math.floor(Math.random() * (await Students.count())),
});
const Enrollment3 = await Enrollments.findOne({
order: [['id', 'ASC']],
offset: 3,
});
if (Enrollment3?.setStudent) {
await Enrollment3.setStudent(relatedStudent3);
}
const relatedStudent4 = await Students.findOne({
offset: Math.floor(Math.random() * (await Students.count())),
});
const Enrollment4 = await Enrollments.findOne({
order: [['id', 'ASC']],
offset: 4,
});
if (Enrollment4?.setStudent) {
await Enrollment4.setStudent(relatedStudent4);
}
}
async function associateEnrollmentWithCourse() {
@ -328,6 +499,28 @@ async function associateEnrollmentWithCourse() {
if (Enrollment2?.setCourse) {
await Enrollment2.setCourse(relatedCourse2);
}
const relatedCourse3 = await Courses.findOne({
offset: Math.floor(Math.random() * (await Courses.count())),
});
const Enrollment3 = await Enrollments.findOne({
order: [['id', 'ASC']],
offset: 3,
});
if (Enrollment3?.setCourse) {
await Enrollment3.setCourse(relatedCourse3);
}
const relatedCourse4 = await Courses.findOne({
offset: Math.floor(Math.random() * (await Courses.count())),
});
const Enrollment4 = await Enrollments.findOne({
order: [['id', 'ASC']],
offset: 4,
});
if (Enrollment4?.setCourse) {
await Enrollment4.setCourse(relatedCourse4);
}
}
// Similar logic for "relation_many"

View File

@ -1,14 +0,0 @@
steps:
- name: 'gcr.io/cloud-builders/docker'
entrypoint: 'bash'
args: ['-c', 'docker pull gcr.io/fldemo2/test4-29853-dev:latest || exit 0']
- name: 'gcr.io/cloud-builders/docker'
args: [
'build',
'-t', 'gcr.io/fldemo2/test4-29853-dev:latest',
'--file', 'Dockerfile.dev',
'--cache-from', 'gcr.io/fldemo2/test4-29853-dev:latest',
'.'
]
images: ['gcr.io/fldemo2/test4-29853-dev:latest']
logsBucket: 'gs://fldemo2-cloudbuild-logs'

1
docker/.gitignore vendored Normal file
View File

@ -0,0 +1 @@
data/

33
frontend/.gitignore vendored Normal file
View File

@ -0,0 +1,33 @@
# dependencies
/node_modules
/.pnp
.pnp.js
# testing
/coverage
# next.js
/.next/
/out/
# production
/build
# misc
.DS_Store
*.pem
# debug
npm-debug.log*
yarn-debug.log*
yarn-error.log*
# local.js env files
.env.local
.env.development.local
.env.test.local
.env.production.local
# vercel
.vercel
/.idea/

View File

@ -2,4 +2,4 @@
/// <reference types="next/image-types/global" />
// NOTE: This file should not be edited
// see https://nextjs.org/docs/pages/building-your-application/configuring/typescript for more information.
// see https://nextjs.org/docs/basic-features/typescript for more information.

View File

@ -18,7 +18,7 @@ export default function WebSiteFooter({
const borders = useAppSelector((state) => state.style.borders);
const websiteHeder = useAppSelector((state) => state.style.websiteHeder);
const style = FooterStyle.WITH_PROJECT_NAME;
const style = FooterStyle.WITH_PAGES;
const design = FooterDesigns.DESIGN_DIVERSITY;

View File

@ -19,7 +19,7 @@ export default function WebSiteHeader({
const websiteHeder = useAppSelector((state) => state.style.websiteHeder);
const borders = useAppSelector((state) => state.style.borders);
const style = HeaderStyle.PAGES_RIGHT;
const style = HeaderStyle.PAGES_LEFT;
const design = HeaderDesigns.DESIGN_DIVERSITY;
return (

View File

@ -151,7 +151,7 @@ export default function WebSite() {
<FeaturesSection
projectName={'test4'}
image={['Dashboard showcasing key features']}
withBg={1}
withBg={0}
features={features_points}
mainText={`Explore ${projectName} Services and Features`}
subTitle={`Discover the innovative features of ${projectName} designed to enhance your online education experience. From course management to analytics, we have you covered.`}

View File

@ -145,7 +145,7 @@ export default function WebSite() {
<FeaturesSection
projectName={'test4'}
image={['Interactive dashboard with analytics']}
withBg={0}
withBg={1}
features={features_points}
mainText={`Innovative Features of ${projectName}`}
subTitle={`Explore the cutting-edge features that make ${projectName} a leader in online education. Designed to enhance learning and streamline management.`}

View File

@ -139,7 +139,7 @@ export default function WebSite() {
<FeaturesSection
projectName={'test4'}
image={['Interactive dashboard with analytics']}
withBg={0}
withBg={1}
features={features_points}
mainText={`Explore Key Features of ${projectName}`}
subTitle={`Unlock the full potential of online education with ${projectName}. Discover features designed to enhance learning and streamline management.`}

View File

@ -151,7 +151,7 @@ export default function WebSite() {
<FeaturesSection
projectName={'test4'}
image={['Dashboard showcasing key features']}
withBg={1}
withBg={0}
features={features_points}
mainText={`Explore ${projectName} Services and Features`}
subTitle={`Discover the innovative features of ${projectName} designed to enhance your online education experience. From course management to analytics, we have you covered.`}