Fix calendar color when creating a calendar

This commit is contained in:
Bruno Bernardino
2025-09-06 19:46:47 +01:00
parent 49dbc724c8
commit 7f81d2a0b5
5 changed files with 22 additions and 9 deletions

View File

@@ -2,7 +2,7 @@ import { Handlers } from 'fresh/server.ts';
import { FreshContextState } from '/lib/types.ts';
import { Calendar, CalendarModel } from '/lib/models/calendar.ts';
import { getColorAsHex } from '/lib/utils/calendar.ts';
import { CALENDAR_COLOR_OPTIONS, getColorAsHex } from '/lib/utils/calendar.ts';
interface Data {}
@@ -24,7 +24,8 @@ export const handler: Handlers<Data, FreshContextState> = {
const requestBody = await request.clone().json() as RequestBody;
if (requestBody.name) {
await CalendarModel.create(context.state.user.id, requestBody.name, getColorAsHex('bg-gray-700'));
const randomColor = CALENDAR_COLOR_OPTIONS[Math.floor(Math.random() * CALENDAR_COLOR_OPTIONS.length)];
await CalendarModel.create(context.state.user.id, requestBody.name, getColorAsHex(randomColor));
}
const newCalendars = await CalendarModel.list(context.state.user.id);

View File

@@ -4,7 +4,7 @@ import { FreshContextState } from '/lib/types.ts';
import { Calendar, CalendarEvent, CalendarEventModel, CalendarModel } from '/lib/models/calendar.ts';
import CalendarWrapper from '/islands/calendar/CalendarWrapper.tsx';
import { AppConfig } from '/lib/config.ts';
import { getColorAsHex, getDateRangeForCalendarView } from '/lib/utils/calendar.ts';
import { CALENDAR_COLOR_OPTIONS, getColorAsHex, getDateRangeForCalendarView } from '/lib/utils/calendar.ts';
interface Data {
userCalendars: Calendar[];
@@ -42,7 +42,8 @@ export const handler: Handlers<Data, FreshContextState> = {
// Create default calendar if none exists
if (userCalendars.length === 0) {
await CalendarModel.create(userId, 'Calendar', getColorAsHex('bg-red-700'));
const randomColor = CALENDAR_COLOR_OPTIONS[Math.floor(Math.random() * CALENDAR_COLOR_OPTIONS.length)];
await CalendarModel.create(userId, 'Calendar', getColorAsHex(randomColor));
userCalendars = await CalendarModel.list(userId);
}