diff --git a/cms/src/routes/qualifying/+page.server.ts b/cms/src/routes/qualifying/+page.server.ts index be10757..573a8b4 100644 --- a/cms/src/routes/qualifying/+page.server.ts +++ b/cms/src/routes/qualifying/+page.server.ts @@ -1,38 +1,35 @@ -import { env } from '$env/dynamic/private' +import { env } from '$env/dynamic/private'; import { error } from '@sveltejs/kit'; -import type {CalendarEvent,Exam} from '$lib/data/CMSDataType' -import dayjs from 'dayjs' -import type { PageServerLoad } from './$types' -export const load: PageServerLoad = async ({fetch}) => { - const res = await fetch(env.API_QUALIFYING_URL+"/qualifying") - if(!res.ok) - throw error(res.status, 'ไม่สามารถอ่านข้อมูลการสอบได้'); - const exams:Exam[] = await res.json() - const events:CalendarEvent[]=[] - - exams.forEach((ex)=>{ - const {id,title,announcement_startDate} = ex - const url = "/qualifying/"+id - ex.date = dayjs(announcement_startDate).format("DD MMM BBBB") - ex.image = ex.image?ex.image:"/images/exam_place_holder.png" - if(!ex.announcementExam) - return //ignore other date for normal post +import type { CalendarEvent, Exam } from '$lib/data/CMSDataType'; +import dayjs from 'dayjs'; +import type { PageServerLoad } from './$types'; +export const load: PageServerLoad = async ({ fetch }) => { + const res = await fetch(env.API_QUALIFYING_URL + '/qualifying'); + if (!res.ok) throw error(res.status, 'ไม่สามารถอ่านข้อมูลการสอบได้'); + const exams: Exam[] = await res.json(); + const events: CalendarEvent[] = []; - if(ex.register_startDate){ - const start = ex.register_startDate - const end = ex.register_endDate - events.push({id,"title":"สมัคร:"+title,start,end,url, backgroundColor:'#67a1ff4a'}) - } - if(ex.payment_startDate){ - const start = ex.payment_startDate - const end = ex.payment_endDate - events.push({id,"title":"ชำระเงิน:"+title,start,end,url,backgroundColor:'#D2B4DE'}) - } - if(ex.examDate){ - const start = ex.examDate - events.push({id,"title":"วันสอบ:"+title,start,url,backgroundColor:'#a2d9ce8f'}) - } - }) - return {exams,events} -} + exams.forEach((ex) => { + const { id, title, announcement_startDate } = ex; + const url = '/qualifying/' + id; + ex.date = dayjs(announcement_startDate).format('DD MMM BBBB'); + ex.image = ex.image ? ex.image : '/images/exam_place_holder.png'; + if (!ex.announcementExam) return; //ignore other date for normal post + if (ex.register_startDate) { + const start = ex.register_startDate; + const end = dayjs(ex.register_endDate).add(1, 'day').format('YYYY-MM-DD'); + events.push({ id, title: 'สมัคร:' + title, start, end, url, backgroundColor: '#67a1ff4a' }); + } + if (ex.payment_startDate) { + const start = ex.payment_startDate; + const end = ex.payment_endDate; + events.push({ id, title: 'ชำระเงิน:' + title, start, end, url, backgroundColor: '#D2B4DE' }); + } + if (ex.examDate) { + const start = ex.examDate; + events.push({ id, title: 'วันสอบ:' + title, start, url, backgroundColor: '#a2d9ce8f' }); + } + }); + return { exams, events }; +};