<?php
$u=current_user();
if(!is_role('service_provider')||!provider_clients_enabled_for_user($u)){http_response_code(403);echo '<div class="alert alert-warning">A área de clientes ainda não foi liberada pelo administrador.</div>';return;}
$status=provider_client_status((int)$u['id']);
$q=db()->prepare('SELECT pc.*,c.name,c.public_id,c.email,c.phone,c.city,c.state,c.avatar,(SELECT COUNT(*) FROM service_requests sr WHERE sr.provider_id=pc.provider_user_id AND sr.client_id=pc.client_user_id) service_count FROM provider_clients pc JOIN users c ON c.id=pc.client_user_id WHERE pc.provider_user_id=? ORDER BY pc.id DESC');$q->execute([(int)$u['id']]);$clients=$q->fetchAll();
$inviteUrl=provider_client_invite_url((int)$u['id']);$qrImage='https://api.qrserver.com/v1/create-qr-code/?size=320x320&margin=12&data='.rawurlencode($inviteUrl);
?>
<section class="page-intro"><div><span class="mini-label">PRESTADOR DE SERVIÇOS</span><h2>Meus Clientes</h2><p>Usuários vinculados aos seus atendimentos. O tipo de perfil original de cada pessoa é preservado.</p></div><div class="actions"><button class="btn btn-secondary" data-modal-open="#providerClientQr">▦ QR Code</button><button class="btn btn-primary" data-modal-open="#addProviderClient">+ Adicionar por ID</button></div></section>
<div class="stats-grid"><article class="stat-card"><div class="stat-top"><span>Clientes vinculados</span><span class="stat-icon">🤝</span></div><strong><?= (int)$status['used'] ?></strong><small><?= $status['limit']>0?'Limite: '.$status['limit']:'Sem limite definido' ?></small></article><article class="stat-card"><div class="stat-top"><span>Vagas disponíveis</span><span class="stat-icon">👥</span></div><strong><?= $status['limit']>0?(int)$status['remaining']:'∞' ?></strong><small>Configurado pelo administrador</small></article></div>
<section class="panel"><div class="cards-list"><?php if(!$clients):?><div class="empty-state"><strong>Nenhum cliente vinculado</strong>Quando um cliente solicitar um serviço, ele poderá entrar automaticamente nesta área.</div><?php endif;?><?php foreach($clients as $c):?><article class="item-card"><div class="item-body"><div class="profile-hero"><?= avatar_html($c) ?><div><h3><?= e($c['name']) ?></h3><small><?= e($c['public_id']) ?></small></div></div><p><?= e(($c['city']?:'Cidade não informada').($c['state']?'/'.$c['state']:'')) ?></p><div class="item-meta"><span><?= (int)$c['service_count'] ?> atendimento(s)</span><span><?= e($c['phone']?:'Sem WhatsApp') ?></span></div><div class="actions"><?php if($c['phone']):?><a class="btn btn-accent btn-sm" target="_blank" href="<?= e(whatsapp_url($c['phone'],'Olá, aqui é seu prestador de serviços na '.platform_name().'.')) ?>">WhatsApp</a><?php endif;?><a class="btn btn-secondary btn-sm" href="<?= e(url('perfil.php?id='.(int)$c['client_user_id'])) ?>">Ver perfil</a><form method="post" action="actions.php"><?= csrf_field() ?><input type="hidden" name="action" value="delete_provider_client"><input type="hidden" name="return_page" value="provider_clients"><input type="hidden" name="id" value="<?= (int)$c['id'] ?>"><button class="btn btn-danger btn-sm" data-confirm="Remover este cliente da sua área?">Remover</button></form></div></div></article><?php endforeach;?></div></section>
<div class="modal" id="addProviderClient"><div class="modal-card"><div class="modal-head"><h2>Adicionar cliente</h2><button class="close-btn" data-modal-close>×</button></div><form method="post" action="actions.php"><?= csrf_field() ?><input type="hidden" name="action" value="add_provider_client"><input type="hidden" name="return_page" value="provider_clients"><div class="form-group"><label>ID público do usuário</label><input class="input" name="client_public_id" placeholder="LXU-AB7K-9Q2M" required><small>Qualquer perfil ativo pode ser vinculado como seu cliente.</small></div><div class="form-actions"><button class="btn btn-primary">Adicionar cliente</button></div></form></div></div>
<div class="modal" id="providerClientQr"><div class="modal-card" style="width:min(560px,100%)"><div class="modal-head"><h2>Cadastrar cliente por QR Code</h2><button class="close-btn" data-modal-close>×</button></div><div class="notice"><strong>Como funciona</strong><br>O usuário lê este QR Code e confirma o vínculo com a própria conta, sem alterar o perfil que já utiliza na plataforma.</div><div style="display:grid;place-items:center;padding:22px 0"><img src="<?=e($qrImage)?>" alt="QR Code para cadastro com prestador" width="320" height="320" style="width:min(320px,90vw);height:auto;background:#fff;padding:10px;border-radius:18px"></div><div class="form-group"><label>Link do convite</label><div class="inline-filter"><input class="input" value="<?=e($inviteUrl)?>" readonly><button class="btn btn-secondary" type="button" data-copy-text="<?=e($inviteUrl)?>">Copiar link</button></div></div></div></div>
