Update dependencies to include TinyMCE and Quill, enhance Navigation component with a new Newsletter submenu, and implement role-based access control for CMS features. Refactor user role handling to support multiple roles and improve user management functionality across various API endpoints.

This commit is contained in:
Torsten Schulz (local)
2025-12-19 09:51:28 +01:00
parent baf6c59c0d
commit 435e28fd55
69 changed files with 5034 additions and 276 deletions

View File

@@ -0,0 +1,38 @@
import { readSubscribers } from '../../utils/newsletter.js'
export default defineEventHandler(async (event) => {
try {
const query = getQuery(event)
const { email, groupId } = query
if (!email || !groupId) {
throw createError({
statusCode: 400,
statusMessage: 'E-Mail und Gruppen-ID sind erforderlich'
})
}
const subscribers = await readSubscribers()
const emailLower = email.toLowerCase()
const subscriber = subscribers.find(s => {
const sEmail = (s.email || '').toLowerCase()
return sEmail === emailLower && s.groupIds && s.groupIds.includes(groupId) && s.confirmed && !s.unsubscribedAt
})
return {
success: true,
subscribed: !!subscriber
}
} catch (error) {
console.error('Fehler beim Prüfen der Newsletter-Anmeldung:', error)
if (error.statusCode) {
throw error
}
throw createError({
statusCode: 500,
statusMessage: 'Fehler beim Prüfen der Newsletter-Anmeldung'
})
}
})