<?php
$current=app()->auth()->user();$path=app()->request()->path();
$menus=[['dashboard','dashboard','Tableau de bord'],['customers','customers','Clients'],['suppliers','suppliers','Fournisseurs'],['products','products','Produits & services'],['stock','stock','Stock'],['warehouse','warehouses','Entrepôts'],['purchases','purchases','Achats fournisseurs'],['quotes','quotes','Devis clients'],['orders','orders','Commandes clients'],['deliveries','deliveries','Bons de livraison'],['invoices','invoices','Factures clients'],['payments','payments','Paiements clients'],['checks','checks','Chèques clients'],['cashboxes','cashboxes','Caisses'],['bank_accounts','bank-accounts','Banques'],['bank_reconciliation','bank-reconciliation','Rapprochement bancaire'],['expenses','expenses','Dépenses'],['reports','reports','Rapports'],['users','users','Utilisateurs'],['roles','roles','Rôles et permissions'],['activity_logs','activity-logs','Journal d’activité'],['settings','settings','Paramètres']];
$bs=app()->db()->connection()->prepare('SELECT * FROM branding_settings WHERE company_id=:company');$bs->execute(['company'=>$current['company_id']]);$brand=$bs->fetch()?:[];$short=$brand['app_short_name']??'GCPro';
?>
<!doctype html><html lang="fr"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><title><?=e($title??'Gestion Commerciale')?></title><link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet"><link rel="stylesheet" href="<?=e(asset('css/app.css'))?>"><style>:root{--brand-primary:<?=e($brand['primary_color']??'#2563eb')?>;--brand-secondary:<?=e($brand['secondary_color']??'#132238')?>}.btn-primary{--bs-btn-bg:var(--brand-primary);--bs-btn-border-color:var(--brand-primary)}.sidebar{background:var(--brand-secondary)!important}</style></head><body>
<div class="app-shell"><aside class="sidebar" id="sidebar"><div class="brand"><?php if(!empty($brand['logo_path'])):?><img src="<?=e(url($brand['logo_path']))?>" alt="<?=e($short)?>" style="max-width:150px;max-height:52px"><?php else:?><?=e($short)?><?php endif;?></div><nav class="nav flex-column gap-1"><?php foreach($menus as[$permission,$route,$label]):if(can($permission)):?><a class="nav-link <?=str_starts_with($path,'/'.$route)||($route==='products'&&str_starts_with($path,'/catalog'))?'active':''?>" href="<?=e(url($route))?>"><?=e($label)?></a><?php endif;endforeach;?></nav></aside>
<div class="main-column"><header class="topbar"><button class="btn btn-light d-lg-none" id="menuToggle" aria-label="Menu">☰</button><div class="ms-auto dropdown"><button class="btn btn-light dropdown-toggle" data-bs-toggle="dropdown"><strong><?=e($current['first_name'].' '.$current['last_name'])?></strong> · <?=e($current['role_names']?:'Sans rôle')?></button><div class="dropdown-menu dropdown-menu-end"><a class="dropdown-item" href="<?=e(url('profile'))?>">Mon profil</a><div class="dropdown-divider"></div><form method="post" action="<?=e(url('logout'))?>"><?=csrf_field()?><button class="dropdown-item text-danger">Déconnexion</button></form></div></div></header>
<main class="content-area"><div class="container-fluid py-4"><?php if($m=app()->session()->pullFlash('success')):?><div class="alert alert-success alert-dismissible fade show"><?=e($m)?><button class="btn-close" data-bs-dismiss="alert"></button></div><?php endif;?><?php if($m=app()->session()->pullFlash('error')):?><div class="alert alert-danger"><?=e($m)?></div><?php endif;?><?php if($errors=app()->session()->pullFlash('errors')):?><div class="alert alert-danger"><ul class="mb-0"><?php foreach($errors as$error):?><li><?=e($error)?></li><?php endforeach;?></ul></div><?php endif;?><?=$content?><?php if(!empty($brand['footer_text'])):?><footer class="text-center text-muted small py-4"><?=e($brand['footer_text'])?></footer><?php endif;?></div></main></div></div>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script><script src="<?=e(asset('js/app.js'))?>"></script></body></html>
