import { ref, computed, mergeProps, createVNode, resolveDynamicComponent, unref, useSSRContext } from 'vue'; import { ssrRenderAttrs, ssrRenderVNode, ssrInterpolate, ssrRenderComponent, ssrRenderList, ssrRenderAttr, ssrRenderClass, ssrIncludeBooleanAttr } from 'vue/server-renderer'; import { Table2, Grid3x3, UserPlus, Loader2, Edit, Trash2, Mail, Phone, MapPin, FileText, Clock, AlertCircle } from 'lucide-vue-next'; import { u as useAuthStore } from './server.mjs'; import { u as useHead } from './composables-CK-Mp9jS.mjs'; import '../nitro/nitro.mjs'; import 'node:http'; import 'node:https'; import 'node:events'; import 'node:buffer'; import 'node:fs'; import 'node:path'; import 'node:crypto'; import 'node:url'; import '../routes/renderer.mjs'; import 'vue-bundle-renderer/runtime'; import 'unhead/server'; import 'devalue'; import 'unhead/utils'; import 'pinia'; import 'vue-router'; const _sfc_main = { __name: "mitglieder", __ssrInlineRender: true, setup(__props) { const authStore = useAuthStore(); const isLoading = ref(true); const isSaving = ref(false); const members = ref([]); const showModal = ref(false); const editingMember = ref(null); const errorMessage = ref(""); const viewMode = ref("cards"); const formData = ref({ firstName: "", lastName: "", email: "", phone: "", address: "", notes: "" }); const canEdit = computed(() => { return authStore.role === "admin" || authStore.role === "vorstand"; }); const canViewContactData = computed(() => { const role = authStore.role; console.log("Current role:", role, "Can view contact:", role === "vorstand"); return role === "vorstand"; }); const formatDate = (dateString) => { if (!dateString) return ""; const date = new Date(dateString); return date.toLocaleDateString("de-DE", { year: "numeric", month: "2-digit", day: "2-digit", hour: "2-digit", minute: "2-digit" }); }; useHead({ title: "Mitgliederliste - Harheimer TC" }); return (_ctx, _push, _parent, _attrs) => { _push(`
| Name | Telefon | Status | `); if (canEdit.value) { _push(`Aktionen | `); } else { _push(``); } _push(`|
|---|---|---|---|---|
${ssrInterpolate(member.name)} `);
if (member.notes) {
_push(`${ssrInterpolate(member.notes)} `);
} else {
_push(``);
}
_push(` | `); if (canViewContactData.value) { _push(``); if (member.email) { _push(`${ssrInterpolate(member.email)}`); } else { _push(`-`); } _push(``); } else { _push(`Nur für Vorstand`); } _push(` | `); if (canViewContactData.value) { _push(``); if (member.phone) { _push(`${ssrInterpolate(member.phone)}`); } else { _push(`-`); } _push(``); } else { _push(`Nur für Vorstand`); } _push(` | `);
if (member.hasLogin) {
_push(` Login `);
} else {
_push(``);
}
_push(`${ssrInterpolate(member.source === "manual" ? "Manuell" : "System")} | `);
if (canEdit.value) {
_push(``); if (member.editable) { _push(``); } else { _push(`Nicht editierbar`); } _push(` | `); } else { _push(``); } _push(`