get('admin_bewerform_page_title') ?? '✏️ Bewerbungsformular bearbeiten'; $backLink = './?AdminBewer'; $footerNote = ''; ob_start(); ?>
✅ get('admin_bewerform_saved_success') ?? 'Änderungen wurden erfolgreich gespeichert.' ?> ✖
$feld): $id = (int)($feld['etchat_id'] ?? 0); $label = $feld['etchat_field_name'] ?? ''; $type = $feld['etchat_field_type'] ?? ''; $visible = !empty($feld['etchat_visible']); $required = !empty($feld['etchat_required']); $custom = !empty($feld['etchat_custom']); $bgStyle = ($index % 2 == 0) ? '' : 'background: rgba(255,255,255,0.05);'; ?>
↕️ get('admin_bewerform_th_label') ?? '📝 Label' ?> get('admin_bewerform_th_type') ?? '🔧 Typ' ?> 👁️ get('admin_bewerform_th_visible') ?? 'Sichtbar' ?> ⚠️ get('admin_bewerform_th_required') ?? 'Pflicht' ?> get('admin_bewerform_th_options') ?? '⚙️ Optionen' ?> 🗑️ get('admin_bewerform_th_action') ?? 'Aktion' ?>
☰ > > 🗑️ get('admin_bewerform_delete') ?? 'Löschen' ?>
📭 get('admin_bewerform_no_fields') ?? 'Keine Felder vorhanden' ?>

get('admin_bewerform_add_field') ?? '➕ Neues Feld hinzufügen' ?>

get('admin_bewerform_visible_label') ?? '👁️ Sichtbar' ?>     get('admin_bewerform_required_label') ?? '⚠️ Pflicht' ?>
// Drag & Drop für Tabelle const tableBody = document.querySelector("#bewerbungsTable tbody"); let dragSrcEl = null; let formChanged = false; if (tableBody) { tableBody.addEventListener('mousedown', e => { if (e.target.classList.contains('drag-handle')) { const row = e.target.closest('tr'); if (row) row.draggable = true; } }); tableBody.addEventListener('dragstart', e => { dragSrcEl = e.target.closest('tr'); if (dragSrcEl) dragSrcEl.classList.add('dragging'); }); tableBody.addEventListener('dragover', e => { e.preventDefault(); const target = e.target.closest('tr'); if (target && target !== dragSrcEl && tableBody) { const rect = target.getBoundingClientRect(); const next = (e.clientY - rect.top) > rect.height / 2; tableBody.insertBefore(dragSrcEl, next ? target.nextSibling : target); } }); tableBody.addEventListener('dragend', () => { if (dragSrcEl) { dragSrcEl.classList.remove('dragging'); dragSrcEl.draggable = false; } updateOrder(); }); } function updateOrder() { const order = []; if (tableBody) { tableBody.querySelectorAll('tr').forEach(row => { if (row.dataset.id) order.push(row.dataset.id); }); } const orderInput = document.getElementById('orderInput'); if (orderInput) orderInput.value = order.join(','); formChanged = true; } // Formular-Änderungen überwachen document.querySelectorAll("input, textarea, select").forEach(el => { el.addEventListener("input", () => formChanged = true); el.addEventListener("change", () => formChanged = true); }); window.addEventListener("beforeunload", e => { if (formChanged) { e.preventDefault(); e.returnValue = ''; } }); const adminForm = document.getElementById('adminForm'); if (adminForm) { adminForm.addEventListener("submit", () => { formChanged = false; }); } function closeSuccessBanner() { const banner = document.getElementById("successBanner"); if (banner) banner.remove(); } JS; $content = ob_get_clean(); include "admin_master_template.php"; ?>