<?php defined('ABSPATH') || exit;
$roles=\DZQCOD\Modules::get_dzqcod_roles(); $caps=\DZQCOD\Modules::CAPS;
$all_roles=wp_roles()->roles; ?>
<div class="wrap dza-wrap" dir="rtl">
<div class="dza-header"><h1>إدارة الصلاحيات</h1></div>
<?php include __DIR__.'/nav.php'; ?>
<div class="dza-content">
<div class="dza-card" style="max-width:600px;margin-bottom:16px">
<h3>➕ إنشاء / تعديل دور</h3>
<div style="display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px">
<div><label style="font-size:12px;font-weight:600">معرّف الدور (إنجليزي)</label>
<input type="text" id="role-slug" placeholder="dzqcod_supervisor" style="padding:8px;border:1px solid #ddd;border-radius:6px;direction:ltr"></div>
<div><label style="font-size:12px;font-weight:600">اسم الدور</label>
<input type="text" id="role-name" placeholder="مشرف DZQCOD" style="padding:8px;border:1px solid #ddd;border-radius:6px"></div>
</div>
<div style="display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:6px;margin-bottom:10px">
<?php foreach($caps as $c=>$l): ?>
<label style="display:flex;align-items:center;gap:6px;font-size:13px;cursor:pointer"><input type="checkbox" class="role-cap" value="<?php echo esc_html($c); ?>"><span><?php echo esc_html($l); ?></span></label>
<?php endforeach; ?>
</div>
<button class="dza-btn primary" id="save-role">💾 حفظ الدور</button>
</div>
<h2 class="dza-section-title">👥 الأدوار الحالية</h2>
<table class="dza-table"><thead><tr><th>الدور</th><th>الاسم</th><th>الصلاحيات</th><th>إجراء</th></tr></thead><tbody>
<?php foreach($roles as $slug=>$r): ?>
<tr><td class="ltr bold"><?php echo esc_html($slug); ?></td>
<td><?php echo esc_html($r['name']); ?></td>
<td class="sm"><?php foreach($r['caps'] as $c){echo '<span class="dza-badge" style="background:#667eea;margin:1px">'.esc_html($caps[$c]??$c).'</span> ';} ?></td>
<td><?php if(str_starts_with($slug,'dzqcod_')): ?>
<button class="dza-btn sm" onclick="jQuery('#role-slug').val('<?php echo esc_html($slug); ?>');jQuery('#role-name').val('<?php echo esc_html(esc_js($r['name'])); ?>');<?php foreach($r['caps'] as $c) echo "jQuery('.role-cap[value={$c}]').prop('checked',true);"; ?>">✏️</button>
<button class="dza-btn sm danger del-role" data-role="<?php echo esc_html($slug); ?>">🗑️</button>
<?php else: ?><button class="dza-btn sm" onclick="jQuery('#role-slug').val('<?php echo esc_html($slug); ?>');jQuery('#role-name').val('<?php echo esc_html(esc_js($r['name'])); ?>');jQuery('.role-cap').prop('checked',false);<?php foreach($r['caps'] as $c) echo "jQuery('.role-cap[value={$c}]').prop('checked',true);"; ?>">✏️ تعديل</button><?php endif; ?></td></tr>
<?php endforeach; ?>
<?php if(empty($roles)): ?><tr><td colspan="4" class="empty">لا توجد أدوار DZQCOD بعد. الإدارة لديها كل الصلاحيات تلقائياً.</td></tr><?php endif; ?>
</tbody></table>
<div class="dza-card" style="margin-top:14px;max-width:600px"><h3>💡 الأدوار الافتراضية</h3>
<p style="font-size:13px"><strong>dzqcod_agent</strong> — عامل مركز الاتصال: عرض + تأكيد الطلبات</p>
<p style="font-size:13px"><strong>dzqcod_shipper</strong> — عامل الشحن: عرض + إدارة الشحنات</p>
<p style="font-size:13px"><strong>administrator / shop_manager</strong> — كل الصلاحيات تلقائياً</p></div>
</div></div>
<script>jQuery(function($){
$('#save-role').on('click',function(){var caps=[];$('.role-cap:checked').each(function(){caps.push($(this).val())});
$.post(dza.ajax,{action:'dzqcod_save_role',nonce:dza.nonce,role:$('#role-slug').val(),role_name:$('#role-name').val(),caps:caps},function(r){
if(r.success){alert(r.data.message);location.reload()}else alert(r.data?r.data.message:'خطأ')})});
$(document).on('click','.del-role',function(){if(!confirm('حذف هذا الدور؟'))return;
$.post(dza.ajax,{action:'dzqcod_delete_role',nonce:dza.nonce,role:$(this).data('role')},function(){location.reload()})});
});</script>

</div><!--dza-main-->
</div><!--dza-layout-->
