feat: add email, scheduler, and Zulip integration services
- Add email service for sending meeting invites with ICS attachments - Add scheduler for background calendar sync jobs - Add Zulip service for meeting notifications - Make ics_url optional for participants - Add /api/schedule endpoint with 2-hour lead time validation - Update frontend to support scheduling flow Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -25,16 +25,16 @@ export const ParticipantManager = ({
|
||||
const handleSubmit = (e: React.FormEvent) => {
|
||||
e.preventDefault();
|
||||
|
||||
if (!name.trim() || !email.trim() || !icsLink.trim()) {
|
||||
if (!name.trim() || !email.trim()) {
|
||||
toast({
|
||||
title: "Missing fields",
|
||||
description: "Please fill in all fields",
|
||||
description: "Please fill in name and email",
|
||||
variant: "destructive",
|
||||
});
|
||||
return;
|
||||
}
|
||||
|
||||
onAddParticipant({ name: name.trim(), email: email.trim(), icsLink: icsLink.trim() });
|
||||
onAddParticipant({ name: name.trim(), email: email.trim(), icsLink: icsLink.trim() || '' });
|
||||
setName('');
|
||||
setEmail('');
|
||||
setIcsLink('');
|
||||
@@ -89,7 +89,7 @@ export const ParticipantManager = ({
|
||||
</div>
|
||||
|
||||
<div className="space-y-2">
|
||||
<Label htmlFor="icsLink">Calendar ICS Link</Label>
|
||||
<Label htmlFor="icsLink">Calendar ICS Link (optional)</Label>
|
||||
<Input
|
||||
id="icsLink"
|
||||
placeholder="https://calendar.google.com/..."
|
||||
|
||||
Reference in New Issue
Block a user