Compare commits

..

2 Commits

Author SHA1 Message Date
6e1250ec91 #15 - Update Images to CDN
All checks were successful
CodyOps Core Builder / build-conteiner (pull_request) Successful in 6m7s
2025-08-21 17:14:40 -03:00
0e904c3024 #15 - Apply course filters and remove wildcard from fields 2025-08-21 16:32:35 -03:00
4 changed files with 7 additions and 55 deletions

View File

@ -7,19 +7,7 @@ type Props = {
const { course }: Props = Astro.props;
const isDev = import.meta.env.DEV;
const statusFilter = isDev ? { '_neq': 'archived' } : { '_eq': 'published' };
const filteredModules = course.modules.filter((module: any) => {
if (statusFilter._neq) {
return module.status !== statusFilter._neq;
} else if (statusFilter._eq) {
return module.status === statusFilter._eq;
}
return true;
});
const courseDurations = filteredModules.flatMap((time:any) => (time.duration));
const courseDurations = course.modules.flatMap((time:any) => (time.duration));
const totalCourseDuration = sumTimes(courseDurations);
---
@ -40,7 +28,7 @@ const totalCourseDuration = sumTimes(courseDurations);
</div>
</div>
<div class="accordion accordion-btn-icon-start">
{filteredModules.map((item: any, index:number) => (
{course.modules.map((item: any, index:number) => (
<div class="accordion-item">
<div class="accordion-header" id={`headingCourse${index}`}>
<a

View File

@ -39,8 +39,7 @@ export const courses = await directus.request(
'duration',
'title',
'description',
'video',
'status'
'video'
]
}
],

View File

@ -1,28 +1,10 @@
import directus from "./directus";
import { readItems, type Query } from "@directus/sdk";
import type { DirectusSchema, Review } from "../types/codyops-reviews";
const isDev = import.meta.env.DEV; // Astro's way to check for development mode
import { readItems } from "@directus/sdk";
export const reviews = await directus.request(
readItems<DirectusSchema, 'codyops_reviews', Query<DirectusSchema, Review>>("codyops_reviews", {
fields: [
'stars',
'date_created',
'course_id',
'feedback',
{
user_created: [
'first_name',
'last_name',
'avatar'
]
},
],
filter: {
status: isDev ? { '_neq': 'archived' } : { '_eq': 'published' }
},
}
readItems("codyops_reviews", {
fields: ['*', 'user_created.*']
}
)
);

View File

@ -1,17 +0,0 @@
import type { Users } from "./codyops-users";
export interface Review {
slug: string;
status: string;
user_created?: Partial<Users>;
user_updated: string | null;
date_created: string | null;
date_updated: string | null;
stars: number;
course_id: number;
feedback: string;
}
export interface DirectusSchema {
codyops_reviews: Review[];
}