'use strict';

appReady.then((user) => {
  const icons = {
    prices: '<svg class="icon icon-lg" viewBox="0 0 24 24"><path d="M4 6h16M4 12h16M4 18h10"/><circle cx="18" cy="18" r="2"/></svg>',
    custody: '<svg class="icon icon-lg" viewBox="0 0 24 24"><path d="M9 4h6l1 2h3v15H5V6h3l1-2Z"/><path d="M9 11h6M9 15h6"/></svg>',
    files: '<svg class="icon icon-lg" viewBox="0 0 24 24"><path d="M4 5h6l2 2h8v12H4V5Z"/><path d="M8 12h8M8 16h5"/></svg>',
  };
  const arrow = '<svg class="icon" viewBox="0 0 24 24"><path d="m15 18-6-6 6-6"/></svg>';
  const definitions = {
    prices: { title: 'أسعار الخضار', description: 'عرض أسعار البيع اليومية المعتمدة بوضوح.', href: '/app/prices.html' },
    custody: { title: 'تسجيل العهدة', description: 'عرض آخر عهدة أو تسجيل عهدة جديدة.', href: '/app/custody.html' },
    files: { title: 'ملفات الخضار', description: 'مراجعة جميع العهد وتنزيلها بصيغة Excel.', href: '/app/files.html' },
  };

  document.getElementById('welcomeUser').textContent = user.username;
  const now = new Date();
  document.getElementById('todayName').textContent = new Intl.DateTimeFormat('ar-SA', { weekday: 'long' }).format(now);
  document.getElementById('todayDate').textContent = new Intl.DateTimeFormat('ar-SA', { day: '2-digit', month: 'long', year: 'numeric' }).format(now);

  const container = document.getElementById('dashboardCards');
  user.permissions.forEach((key) => {
    const item = definitions[key];
    if (!item) return;
    const card = document.createElement('a');
    card.className = 'menu-card';
    card.href = item.href;
    card.innerHTML = `
      <div class="menu-icon">${icons[key]}</div>
      <div>
        <h3 class="menu-title">${VegApi.escapeHtml(item.title)}</h3>
        <p class="menu-description">${VegApi.escapeHtml(item.description)}</p>
      </div>
      <div class="menu-arrow"><span>فتح القائمة</span>${arrow}</div>`;
    container.appendChild(card);
  });

  if (!container.children.length) {
    container.innerHTML = '<div class="card empty-state">لم تُحدد لك أي قائمة. راجع الأدمن.</div>';
  }
});
