Allow per-user configuration of which events trigger notifications
For "Going to lunch" notifications, filter recipients by matching location
Store notification preferences in the database per user
## Feature: External Notification Support (Gotify, Discord, MS Teams)
**Source:** TODO.md lines 14-18
### Implementation Notes
Add support for sending notifications to external systems like Gotify, Discord, and MS Teams.
**Sub-tasks from TODO.md:**
- [ ] Allow users to configure notification URLs/tokens (per-user settings)
- [ ] Allow users to configure which notification types they want to receive
- [ ] Introduce "Going to lunch" notification type
- [ ] Only notify users who have the same location selected
**Approach:**
1. Add a notification settings page/section in user preferences
2. Create a notification service abstraction on the server with adapters for each platform:
- Gotify adapter (REST API)
- Discord adapter (webhook)
- MS Teams adapter (webhook)
3. Define notification event types (e.g., "lunch_departure", "pizza_day_created", "order_locked")
4. Allow per-user configuration of which events trigger notifications
5. For "Going to lunch" notifications, filter recipients by matching location
6. Store notification preferences in the database per user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Feature: External Notification Support (Gotify, Discord, MS Teams)
Source: TODO.md lines 14-18
Implementation Notes
Add support for sending notifications to external systems like Gotify, Discord, and MS Teams.
Sub-tasks from TODO.md:
Approach: