<?php
$realmLabel=class_exists('NexoraRealm')?NexoraRealm::label():'Actual';
echo '<h2>Crear código — '.htmlspecialchars($realmLabel,ENT_QUOTES,'UTF-8').'</h2>';
echo '<p>El código se crea solamente para el reino administrativo actual.</p>';
$type=isset($_GET['type'])?strtolower((string)$_GET['type']):'';
if($type!=='') {
    try {
        if(!in_array($type,array('regular','limited','account'),true)) throw new Exception('Tipo de código inválido.');
        $creditSystem=new CreditSystem();
        if(isset($_POST['code_submit'])) {
            $r=new \Plugin\RedeemCode\RedeemCode();
            $r->setCode($_POST['code_value']??''); $r->setCodeType($type);
            if($type==='limited') $r->setLimit($_POST['code_limit']??0);
            if($type==='account') $r->setUser($_POST['code_user']??'');
            $r->setCreditsConfigId($_POST['code_configid']??0); $r->setReward($_POST['code_reward']??0); $r->addRewardCode();
            message('success','Código creado correctamente en '.$realmLabel.'.');
        }
        echo '<div class="row"><div class="col-xs-12 col-md-6"><div class="panel panel-default"><div class="panel-heading">Nuevo código: <strong>'.htmlspecialchars($type,ENT_QUOTES,'UTF-8').'</strong></div><div class="panel-body">';
        echo '<form method="post">';
        echo '<div class="form-group"><label>Código</label><input type="text" class="form-control" name="code_value" maxlength="50" placeholder="NEXORA-2026" required></div>';
        if($type==='limited') echo '<div class="form-group"><label>Límite global de usos</label><input type="number" min="1" class="form-control" name="code_limit" required></div>';
        if($type==='account') echo '<div class="form-group"><label>Cuenta autorizada (username)</label><input type="text" class="form-control" name="code_user" required></div>';
        echo '<div class="form-group"><label>Configuración de créditos</label>'.$creditSystem->buildSelectInput('code_configid',0,'form-control').'<p class="help-block">Usa una configuración basada en cuenta (username/userid/email), no personaje.</p></div>';
        echo '<div class="form-group"><label>Recompensa</label><input type="number" min="1" class="form-control" name="code_reward" required></div>';
        echo '<button type="submit" name="code_submit" value="1" class="btn btn-success">Crear código</button></form></div></div></div></div>';
    } catch(Exception $e){message('error',$e->getMessage());}
} else {
    echo '<div class="row">';
    foreach(array('regular'=>array('Regular','Una vez por cuenta, sin límite global.','info'),'limited'=>array('Limited','Una vez por cuenta hasta alcanzar un límite global.','warning'),'account'=>array('Account','Reservado para una cuenta específica.','danger')) as $k=>$d) {
        echo '<div class="col-xs-12 col-md-4"><div class="panel panel-'.$d[2].'"><div class="panel-heading">'.$d[0].'</div><div class="panel-body text-center"><p>'.$d[1].'</p><a class="btn btn-'.$d[2].'" href="'.admincp_base('redeem&page=create&type='.$k).'">Crear</a></div></div></div>';
    }
    echo '</div>';
}
