<?= $this->extend('layouts/admin') ?>

<?= $this->section('title') ?>Nueva Promoción<?= $this->endSection() ?>

<?= $this->section('content') ?>
<div class="form-container">
    <h2>Nueva Promoción</h2>

    <?php if (session()->getFlashdata('errors')): ?>
        <div class="alert alert-danger">
            <ul>
                <?php foreach (session()->getFlashdata('errors') as $error): ?>
                    <li><?= esc($error) ?></li>
                <?php endforeach; ?>
            </ul>
        </div>
    <?php endif; ?>

    <form method="POST" action="<?= base_url('admin/promociones/guardar') ?>">
        <div class="form-group">
            <label for="nombre">Nombre de la Promoción</label>
            <input type="text" name="nombre" id="nombre" value="<?= old('nombre') ?>" required placeholder="Ej. 2x1 Martes, Combo Familiar">
        </div>

        <div class="form-group">
            <label for="descripcion">Descripción</label>
            <textarea name="descripcion" id="descripcion" rows="3" placeholder="Ej. Dos entradas al precio de una..."><?= old('descripcion') ?></textarea>
        </div>

        <div class="form-group">
            <label for="imagen">Imagen (nombre de archivo en /uploads/promociones/, o URL completa)</label>
            <input type="text" name="imagen" id="imagen" value="<?= old('imagen') ?>" placeholder="Ej. promo_2x1.jpg">
        </div>

        <div class="form-group">
            <label for="tipo">Tipo de promoción</label>
            <select name="tipo" id="tipo" required>
                <option value="ENTRADA" <?= old('tipo') === 'ENTRADA' ? 'selected' : '' ?>>ENTRADA (aplica al comprar boletos, ej. 2x1)</option>
                <option value="COMBO" <?= old('tipo') === 'COMBO' ? 'selected' : '' ?>>COMBO (bundle de productos, se agrega al carrito)</option>
                <option value="PRODUCTO" <?= old('tipo') === 'PRODUCTO' ? 'selected' : '' ?>>PRODUCTO (un producto puntual con descuento)</option>
                <option value="GENERAL" <?= old('tipo') === 'GENERAL' ? 'selected' : '' ?>>GENERAL</option>
            </select>
        </div>

        <div class="form-group">
            <label for="tipo_descuento">Tipo de descuento</label>
            <select name="tipo_descuento" id="tipo_descuento" required>
                <option value="PORCENTAJE" <?= old('tipo_descuento') === 'PORCENTAJE' ? 'selected' : '' ?>>Porcentaje (%)</option>
                <option value="PRECIO_FIJO" <?= old('tipo_descuento') === 'PRECIO_FIJO' ? 'selected' : '' ?>>Precio fijo (S/.)</option>
            </select>
        </div>

        <div class="form-group">
            <label for="valor_descuento">Valor del descuento</label>
            <input type="number" step="0.01" name="valor_descuento" id="valor_descuento" min="0" value="<?= old('valor_descuento', '0') ?>" required>
            <small>Si es Porcentaje: 50 = -50%. Si es Precio fijo: es el precio final del combo o de la entrada.</small>
        </div>

        <div class="form-group">
            <label for="cantidad_minima">Cantidad mínima requerida</label>
            <input type="number" name="cantidad_minima" id="cantidad_minima" min="1" value="<?= old('cantidad_minima', '1') ?>" required>
            <small>Ej. "2x1" exige 2 entradas de la misma función para activarse. Dejar en 1 si no aplica mínimo.</small>
        </div>

        <div class="form-group">
            <label for="aplica_tipo_sala">Restringir a tipo de sala (Opcional)</label>
            <select name="aplica_tipo_sala" id="aplica_tipo_sala">
                <option value="">Cualquier sala</option>
                <?php foreach (['2D', '3D', 'IMAX', '4DX'] as $tipoSala): ?>
                    <option value="<?= $tipoSala ?>" <?= old('aplica_tipo_sala') === $tipoSala ? 'selected' : '' ?>><?= $tipoSala ?></option>
                <?php endforeach; ?>
            </select>
            <small>Ej. "Domingo 3D" solo debe aplicar a funciones en salas 3D: al usar el botón "Aprovechar promoción" la cartelera se filtrará automáticamente.</small>
        </div>

        <div class="form-group">
            <label for="stock">Stock disponible (Opcional)</label>
            <input type="number" name="stock" id="stock" min="0" value="<?= old('stock') ?>" placeholder="Dejar en blanco para stock ilimitado">
        </div>

        <div class="form-group">
            <label for="fecha_inicio">Fecha de Inicio</label>
            <input type="date" name="fecha_inicio" id="fecha_inicio" value="<?= old('fecha_inicio', date('Y-m-d')) ?>" required>
        </div>

        <div class="form-group">
            <label for="fecha_fin">Fecha de Finalización</label>
            <input type="date" name="fecha_fin" id="fecha_fin" value="<?= old('fecha_fin', date('Y-12-31')) ?>" required>
        </div>

        <div class="form-group">
            <label>Días de la semana en que aplica (dejar todo sin marcar = todos los días)</label>
            <div class="checkbox-group">
                <?php foreach (\App\Models\PromocionDiaModel::DIAS_VALIDOS as $dia): ?>
                    <label style="margin-right:14px;">
                        <input type="checkbox" name="dias[]" value="<?= $dia ?>" <?= in_array($dia, (array) old('dias', []), true) ? 'checked' : '' ?>>
                        <?= ucfirst(strtolower($dia)) ?>
                    </label>
                <?php endforeach; ?>
            </div>
        </div>

        <div class="form-group checkbox-group">
            <label>
                <input type="checkbox" name="activo" value="1" <?= old('activo', '1') == '1' ? 'checked' : '' ?>> Activa
            </label>
        </div>

        <div class="form-actions">
            <button type="submit" class="btn btn-primary">Guardar</button>
            <a href="<?= base_url('admin/promociones') ?>" class="btn btn-cancel">Cancelar</a>
        </div>
    </form>
</div>
<?= $this->endSection() ?>
