<?php
require __DIR__ . '/app/bootstrap.php';
require __DIR__ . '/app/layout.php';

$incomingProviderId=(int)request('provider_id',0);$incomingToken=trim((string)request('token',''));
if($incomingProviderId>0&&$incomingToken!=='')store_pending_provider_join_invite($incomingProviderId,$incomingToken);
$invite=pending_provider_join_invite();
if(!$invite){
    render_public_header('Convite inválido');
    ?><section class="auth-shell"><div class="auth-card"><h1>Convite inválido</h1><p>Este QR Code não é válido ou o prestador não está disponível.</p><div class="form-actions"><a class="btn btn-primary" href="<?=e(url('index.php'))?>">Voltar ao início</a></div></div></section><?php
    render_public_footer();exit;
}
$provider=$invite['provider'];$providerId=(int)$invite['provider_id'];$user=current_user();$error='';
if($user&&user_needs_onboarding($user))redirect('complete_registration.php');
if($user){
    try{$joined=link_user_to_provider_from_invite((int)$user['id'],$providerId);clear_pending_provider_join_invite();flash('success','Cadastro confirmado com '.$joined['name'].'.');redirect('dashboard.php?page=affiliations');}
    catch(Throwable $e){$error=$e->getMessage();}
}
render_public_header('Cadastro com prestador');
?>
<section class="auth-shell"><div class="auth-card" style="width:min(650px,100%)">
  <span class="hero-badge"><i></i> Cadastro por QR Code</span>
  <div class="profile-hero" style="margin-bottom:20px"><?=avatar_html($provider,'profile-avatar')?><div><h1 style="margin-bottom:5px"><?=e(user_public_name($provider))?></h1><p style="margin:0">Prestador de serviços<?=!empty($provider['city'])?' • '.e($provider['city'].(!empty($provider['state'])?'/'.$provider['state']:'')):''?></p></div></div>
  <div class="notice"><strong>Você foi convidado para se cadastrar como cliente deste prestador.</strong><br>O vínculo não altera o tipo nem as permissões da sua conta LinkExpress.</div>
  <?php if($error):?><div class="alert alert-error" style="margin-top:16px"><?=e($error)?></div><?php endif;?>
  <?php if(!$user):?><p style="margin-top:20px">Entre com qualquer conta LinkExpress ou crie uma conta. O convite será aplicado após o acesso.</p><div class="form-actions"><a class="btn btn-secondary" href="<?=e(url('login.php'))?>">Já tenho conta</a><a class="btn btn-primary" href="<?=e(url('register.php'))?>">Criar conta</a></div><?php else:?><div class="form-actions"><a class="btn btn-secondary" href="<?=e(url('dashboard.php?page=affiliations'))?>">Meus vínculos</a></div><?php endif;?>
</div></section>
<?php render_public_footer(); ?>
