<?php
// pages/admin/users
?>
<div class="d-flex align-items-center justify-content-between mb-3">
  <h4 class="mb-0">إدارة المستخدمين</h4>
</div>

<?php if (empty($rbac_ready)): ?>
  <div class="alert alert-warning">
    لا توجد جداول الصلاحيات بعد. شغّل ملف التحديث:
    <b>sql/migrate_v1_19_auth_admin.sql</b>
  </div>
<?php else: ?>

<div class="row g-3">
  <div class="col-lg-5">
    <div class="card">
      <div class="card-header fw-bold"><?= $editUser ? 'تعديل مستخدم' : 'إضافة مستخدم' ?></div>
      <div class="card-body">
        <form method="post" action="<?= e(url('/admin/users')) ?>">
          <?= csrf_field() ?>
          <input type="hidden" name="action" value="<?= $editUser ? 'save' : 'create' ?>">
          <input type="hidden" name="id" value="<?= (int)($editUser['id'] ?? 0) ?>">

          <div class="mb-2">
            <label class="form-label">اسم المستخدم</label>
            <input name="username" class="form-control" value="<?= e($editUser['username'] ?? '') ?>" required>
          </div>

          <div class="mb-2">
            <label class="form-label">الاسم الكامل</label>
            <input name="full_name" class="form-control" value="<?= e($editUser['full_name'] ?? '') ?>">
          </div>

          <div class="mb-2">
            <label class="form-label"><?= $editUser ? 'كلمة المرور (اتركها فارغة بدون تغيير)' : 'كلمة المرور' ?></label>
            <input type="password" name="password" class="form-control" <?= $editUser ? '' : 'required' ?>>
          </div>

          <div class="mb-2">
            <label class="form-label">الخزنة الافتراضية للمستخدم</label>
            <select name="cashbox_id" class="form-select">
              <option value="0">-- بدون ربط --</option>
              <?php foreach (($cashboxes ?? []) as $cb): ?>
                <option value="<?= (int)$cb['id'] ?>" <?= ((int)($editUser['cashbox_id'] ?? 0) === (int)$cb['id']) ? 'selected' : '' ?>><?= e($cb['name']) ?></option>
              <?php endforeach; ?>
            </select>
            <div class="text-muted small mt-1">هذه الخزنة ستظهر له تلقائيًا في شاشة نقطة البيع.</div>
          </div>

          <div class="mb-2">
            <label class="form-label">الأدوار</label>
            <select name="role_ids[]" class="form-select" multiple size="5">
              <?php foreach ($roles as $r): ?>
                <?php $sel = in_array((int)$r['id'], $editRoles ?? [], true) ? 'selected' : ''; ?>
                <option value="<?= (int)$r['id'] ?>" <?= $sel ?>><?= e($r['name']) ?></option>
              <?php endforeach; ?>
            </select>
            <div class="text-muted small mt-1">Ctrl/⌘ لاختيار أكثر من دور.</div>
          </div>

          <div class="form-check mb-3">
            <input class="form-check-input" type="checkbox" name="is_active" value="1" id="is_active"
                   <?= empty($editUser) || !empty($editUser['is_active']) ? 'checked' : '' ?>>
            <label class="form-check-label" for="is_active">نشط</label>
          </div>

          <div class="d-flex gap-2">
            <button class="btn btn-primary px-4">حفظ</button>
            <?php if ($editUser): ?>
              <a class="btn btn-outline-secondary" href="<?= e(url('/admin/users')) ?>">جديد</a>
            <?php endif; ?>
          </div>
        </form>
      </div>
    </div>
  </div>

  <div class="col-lg-7">
    <div class="card">
      <div class="card-header fw-bold">قائمة المستخدمين</div>
      <div class="card-body p-0">
        <div class="table-responsive">
          <table class="table table-striped mb-0 align-middle">
            <thead class="table-light">
              <tr>
                <th>#</th>
                <th>المستخدم</th>
                <th>الاسم</th>
                <th>الأدوار</th>
                <th>الحالة</th>
                <th>الخزنة</th>
                <th class="text-end">إجراءات</th>
              </tr>
            </thead>
            <tbody>
              <?php foreach ($users as $u): ?>
                <tr>
                  <td><?= (int)$u['id'] ?></td>
                  <td class="fw-semibold"><?= e($u['username']) ?></td>
                  <td><?= e($u['full_name'] ?: '-') ?></td>
                  <td class="text-muted"><?= e($u['roles'] ?: '-') ?></td>
                  <td>
                    <?php if ((int)$u['is_active']===1): ?>
                      <span class="badge bg-success">نشط</span>
                    <?php else: ?>
                      <span class="badge bg-secondary">موقوف</span>
                    <?php endif; ?>
                  </td>
                  <td><?= e($u['cashbox_name'] ?: '-') ?></td>
                  <td class="text-end">
                    <a class="btn btn-sm btn-outline-primary"
                       href="<?= e(url('/admin/users?action=edit&id='.(int)$u['id'])) ?>">تعديل</a>
                    <?php if ((int)$u['id'] !== (int)current_user_id()): ?>
                      <form method="post" action="<?= e(url('/admin/users')) ?>" class="d-inline">
                        <?= csrf_field() ?>
                        <input type="hidden" name="action" value="delete">
                        <input type="hidden" name="id" value="<?= (int)$u['id'] ?>">
                        <button class="btn btn-sm btn-outline-danger" type="submit" onclick="return confirm('حذف المستخدم؟')">حذف</button>
                      </form>
                    <?php endif; ?>
                  </td>
                </tr>
              <?php endforeach; ?>
              <?php if (empty($users)): ?>
                <tr><td colspan="7" class="text-center text-muted p-4">لا يوجد بيانات</td></tr>
              <?php endif; ?>
            </tbody>
          </table>
        </div>
      </div>
    </div>
  </div>
</div>

<?php endif; ?>
