Smoothness
This commit is contained in:
+45
-6
@@ -527,16 +527,29 @@ for ($h = $startHour; $h <= $endHour; $h++) {
|
||||
<h1 class="text-2xl sm:text-3xl font-black tracking-tight text-slate-900 dark:text-white">
|
||||
Fociz
|
||||
</h1>
|
||||
<p class="text-xs sm:text-sm text-slate-500 dark:text-slate-400 mt-0.5">
|
||||
Jouw centrale werkstation • Taken, Agenda, Mail & Jira
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<!-- Instellingen Knop (Widgets & Indeling) -->
|
||||
<div class="flex items-center space-x-2">
|
||||
<button onclick="openWidgetManagerModal()" class="p-2 rounded-xl text-slate-400 hover:text-slate-700 dark:hover:text-slate-200 hover:bg-slate-100 dark:hover:bg-slate-800/80 transition cursor-pointer border border-transparent hover:border-slate-200 dark:hover:border-slate-700" title="Widgets & Indeling beheren">
|
||||
<!-- Instellingen Dropdown (Widgets, Indeling & Dagen Blokkeren) -->
|
||||
<div class="relative">
|
||||
<button id="plannerSettingsDropdownBtn" onclick="togglePlannerSettingsMenu(event)" class="p-2 rounded-xl text-slate-400 hover:text-slate-700 dark:hover:text-slate-200 hover:bg-slate-100 dark:hover:bg-slate-800/80 transition cursor-pointer border border-transparent hover:border-slate-200 dark:hover:border-slate-700" title="Dashboard Opties & Instellingen">
|
||||
<i data-lucide="settings" class="w-5 h-5"></i>
|
||||
</button>
|
||||
<div id="plannerSettingsDropdownMenu" class="hidden absolute right-0 mt-2 w-56 rounded-2xl bg-white dark:bg-[#111624] border border-slate-200 dark:border-slate-800 shadow-xl py-1.5 z-50 text-xs text-slate-700 dark:text-slate-300">
|
||||
<button onclick="closePlannerSettingsMenu(); openWidgetManagerModal();" class="w-full text-left px-3.5 py-2 hover:bg-slate-50 dark:hover:bg-slate-800/70 flex items-center space-x-2.5 transition cursor-pointer">
|
||||
<i data-lucide="layout-grid" class="w-4 h-4 text-indigo-500"></i>
|
||||
<span class="font-medium">Widgets & Indeling</span>
|
||||
</button>
|
||||
<button onclick="closePlannerSettingsMenu(); openCalendarBlockModal();" class="w-full text-left px-3.5 py-2 hover:bg-slate-50 dark:hover:bg-slate-800/70 flex items-center space-x-2.5 transition cursor-pointer">
|
||||
<i data-lucide="palmtree" class="w-4 h-4 text-amber-500"></i>
|
||||
<span class="font-medium">Vakantie / Dagen Blokkeren</span>
|
||||
</button>
|
||||
<?php if ($isOutlookConnected): ?>
|
||||
<button onclick="closePlannerSettingsMenu(); triggerManualSync();" class="w-full text-left px-3.5 py-2 hover:bg-slate-50 dark:hover:bg-slate-800/70 flex items-center space-x-2.5 transition cursor-pointer border-t border-slate-100 dark:border-slate-800/80">
|
||||
<i data-lucide="refresh-cw" class="w-4 h-4 text-sky-500"></i>
|
||||
<span class="font-medium">Outlook Synchroniseren</span>
|
||||
</button>
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -2816,6 +2829,32 @@ if ($isAjaxRequest) {
|
||||
</div>
|
||||
|
||||
<script>
|
||||
// --- Dashboard Banner Instellingen Dropdown Menu ---
|
||||
function togglePlannerSettingsMenu(e) {
|
||||
if (e) e.stopPropagation();
|
||||
const menu = document.getElementById('plannerSettingsDropdownMenu');
|
||||
if (menu) {
|
||||
menu.classList.toggle('hidden');
|
||||
}
|
||||
}
|
||||
|
||||
function closePlannerSettingsMenu() {
|
||||
const menu = document.getElementById('plannerSettingsDropdownMenu');
|
||||
if (menu) {
|
||||
menu.classList.add('hidden');
|
||||
}
|
||||
}
|
||||
|
||||
document.addEventListener('click', function(e) {
|
||||
const menu = document.getElementById('plannerSettingsDropdownMenu');
|
||||
const btn = document.getElementById('plannerSettingsDropdownBtn');
|
||||
if (menu && !menu.classList.contains('hidden')) {
|
||||
if (!menu.contains(e.target) && !btn.contains(e.target)) {
|
||||
closePlannerSettingsMenu();
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
// --- Fociz Widget Beheer & Configuratielogica (v2.0) ---
|
||||
let focizWidgets = <?= json_encode(array_values($userWidgetLayout), JSON_UNESCAPED_UNICODE) ?>;
|
||||
const defaultWidgetLayout = <?= json_encode(array_values($availableWidgets), JSON_UNESCAPED_UNICODE) ?>;
|
||||
|
||||
Reference in New Issue
Block a user