reorganize module

This commit is contained in:
Timur Gordon
2025-04-04 08:28:07 +02:00
parent 1ea37e2e7f
commit 939b6b4e57
375 changed files with 7580 additions and 191 deletions

View File

@@ -0,0 +1,92 @@
// event_model.rhai - Event data model
// Create a new event object
fn create_event(id, title, description, start_time, end_time, location, calendar_id, organizer_id, attendees, recurring, status) {
return #{
id: id,
title: title,
description: description,
start_time: start_time,
end_time: end_time,
location: location,
calendar_id: calendar_id,
organizer_id: organizer_id,
attendees: attendees,
recurring: recurring,
status: status
};
}
// Create a recurring event object (extends regular event)
fn create_recurring_event(id, title, description, start_time, end_time, location, calendar_id, organizer_id, attendees, recurrence_pattern, status) {
let event = create_event(id, title, description, start_time, end_time, location, calendar_id, organizer_id, attendees, true, status);
event.recurrence_pattern = recurrence_pattern;
return event;
}
// Sample events data
fn get_sample_events() {
let events = [];
// Event 1: Team Meeting
events.push(create_event(
"event1",
"Team Meeting",
"Weekly team sync meeting",
"2025-04-04T10:00:00",
"2025-04-04T11:00:00",
"Conference Room A",
"cal1",
"user1",
["user1", "user2", "user3"],
false,
"confirmed"
));
// Event 2: Project Deadline
events.push(create_event(
"event2",
"Project Deadline",
"Final submission for Q2 project",
"2025-04-15T17:00:00",
"2025-04-15T18:00:00",
"Virtual",
"cal1",
"user2",
["user1", "user2", "user4"],
false,
"confirmed"
));
// Event 3: Lunch with Client
events.push(create_event(
"event3",
"Lunch with Client",
"Discuss upcoming partnership",
"2025-04-10T12:30:00",
"2025-04-10T14:00:00",
"Downtown Cafe",
"cal2",
"user1",
["user1", "user5"],
false,
"tentative"
));
// Event 4: Weekly Status Update (recurring)
events.push(create_recurring_event(
"event4",
"Weekly Status Update",
"Regular status update meeting",
"2025-04-05T09:00:00",
"2025-04-05T09:30:00",
"Conference Room B",
"cal1",
"user3",
["user1", "user2", "user3", "user4"],
"weekly",
"confirmed"
));
return events;
}