Tul xxx Tul
User / IP
:
216.73.216.191
Host / Server
:
45.84.207.204 / aircan.me
System
:
Linux lt-bnk-web1726.main-hosting.eu 5.14.0-611.36.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Mar 3 11:23:52 EST 2026 x86_64
Command
|
Upload
|
Create
Mass Deface
|
Jumping
|
Symlink
|
Reverse Shell
Ping
|
Port Scan
|
DNS Lookup
|
Whois
|
Header
|
cURL
:
/
home
/
u931257429
/
domains
/
aircan.me
/
public_html
/
gimnasiofitnes
/
app
/
Views
/
admin
/
memberships
/
Viewing: edit.php
<?= $this->extend('layout/app'); ?> <?php $this->section('title'); ?> Editar Membresía <?php $this->endSection(); ?> <?php $this->section('content'); ?> <div class="app-title"> <div> <h1><i class="bi bi-credit-card"></i> Membresia</h1> <p>Editar Membresia</p> </div> <ul class="app-breadcrumb breadcrumb"> <li class="breadcrumb-item"><i class="bi bi-house-door fs-6"></i></li> <li class="breadcrumb-item"><a href="<?= base_url('admin'); ?>">Admin</a></li> <li class="breadcrumb-item"><a href="#">Membresia</a></li> </ul> </div> <div class="card"> <div class="card-body"> <h6 class="card-title">Editar Membresía</h6> <hr> <?php if (session()->get('errors')) : ?> <div class="alert alert-danger"> <ul> <?php foreach (session()->get('errors') as $error) : ?> <li><?= esc($error) ?></li> <?php endforeach ?> </ul> </div> <?php endif; ?> <form action="<?= base_url('admin/memberships/' . $membership['id']); ?>" method="post"> <?= csrf_field() ?> <input type="hidden" name="_method" value="PUT"> <div class="row"> <div class="mb-3 col-md-6"> <label for="user_id" class="form-label">Usuario</label> <select class="form-select" id="user_id" name="user_id"> <option value="">Seleccione un usuario</option> <?php foreach ($users as $user) : ?> <option value="<?= $user['id'] ?>" <?= set_select('user_id', $user['id'], $membership['user_id'] == $user['id']) ?>> <?= esc($user['dni'] . ' - ' . $user['name'] . ' ' . $user['lastname']) ?> </option> <?php endforeach; ?> </select> </div> <div class="mb-3 col-md-6"> <label for="membership_type_id" class="form-label">Tipo de Membresía</label> <select class="form-select" id="membership_type_id" name="membership_type_id"> <option value="">Seleccione un tipo de membresía</option> <?php foreach ($membership_types as $type) : ?> <option value="<?= $type['id'] ?>" <?= set_select('membership_type_id', $type['id'], $membership['membership_type_id'] == $type['id']) ?>> <?= esc($type['name']) ?> </option> <?php endforeach; ?> </select> </div> <div class="mb-3 col-md-3"> <label for="amount" class="form-label">Monto</label> <input type="text" class="form-control" id="amount" name="amount" value="<?= old('amount') ?>" placeholder="0.00" readonly> </div> <div class="mb-3 col-md-3"> <label for="discount_type" class="form-label">Tipo Descuento</label> <input type="text" class="form-control" id="discount_type" name="discount_type" value="<?= old('discount_type') ?>" placeholder="Tipo" readonly> </div> <div class="mb-3 col-md-3"> <label for="discount_value" class="form-label">Descuento</label> <input type="text" class="form-control" id="discount_value" name="discount_value" value="<?= old('discount_value') ?>" placeholder="0.00" readonly> </div> <div class="mb-3 col-md-3"> <label for="amount_pait" class="form-label">Monto Final</label> <input type="text" class="form-control" id="amount_pait" name="amount_pait" value="<?= old('amount_pait') ?>" placeholder="Monto Final" readonly> </div> <div class="mb-3 col-md-4"> <label for="box_id" class="form-label">Caja *</label> <select class="form-select" id="box_id" name="box_id"> <option value="">Seleccionar</option> <?php foreach ($boxes as $box) : ?> <option value="<?= $box['id']; ?>" <?= set_select('box_id', $box['id'], $membership['box_id'] == $box['id']); ?>> <?= $box['name'] . ' - ' . $box['opening_date']; ?> </option> <?php endforeach; ?> </select> </div> <div class="mb-3 col-md-4"> <label for="payment_method_id" class="form-label">Método de Pago</label> <select class="form-select" id="payment_method_id" name="payment_method_id"> <option value="">Seleccione un método de pago</option> <?php foreach ($payment_methods as $method) : ?> <option value="<?= $method['id'] ?>" <?= set_select('payment_method_id', $method['id'], $membership['payment_method_id'] == $method['id']); ?>> <?= esc($method['name']) ?> </option> <?php endforeach; ?> </select> </div> <div class="mb-3 col-md-4"> <label for="payment_type" class="form-label">Tipo de Venta <span class="text-danger">*</span></label> <select class="form-select" id="payment_type" name="payment_type" required> <option value="contado" <?= set_select('payment_type', 'contado', $membership['payment_type'] == 'contado') ?>>Contado</option> <option value="credito" <?= set_select('payment_type', 'credito', $membership['payment_type'] == 'credito') ?>>Crédito</option> </select> </div> <div class="mb-3 col-md-4" id="div_initial_payment" style="<?= $membership['payment_type'] == 'credito' ? '' : 'display: none;' ?>"> <label for="initial_payment" class="form-label">Abono Inicial / Pagado</label> <div class="input-group"> <span class="input-group-text"><?= get_currency() ?></span> <input type="number" step="0.01" class="form-control" id="initial_payment" name="initial_payment" value="<?= old('initial_payment', $membership['payment_type'] == 'credito' ? (float)$membership['membership_price'] - (float)$membership['balance'] : 0) ?>" placeholder="0.00"> </div> </div> <div class="mb-3 col-md-4"> <label for="start_date" class="form-label">Fecha de Inicio</label> <input type="date" class="form-control" id="start_date" name="start_date" value="<?= set_value('start_date', $membership['start_date']) ?>"> </div> <div class="mb-3 col-md-4"> <label for="end_date" class="form-label">Fecha de Fin</label> <input type="date" class="form-control" id="end_date" name="end_date" value="<?= set_value('end_date', $membership['end_date']) ?>"> </div> <div class="mb-3 col-md-4"> <label for="status" class="form-label">Estado</label> <select class="form-select" id="status" name="status"> <option value="">Seleccione un estado</option> <option value="active" <?= set_select('status', 'active', $membership['status'] == 'active') ?>>Activo</option> <option value="inactive" <?= set_select('status', 'inactive', $membership['status'] == 'inactive') ?>>Inactivo</option> </select> </div> </div> <div class="text-end"> <a href="<?= base_url('admin/memberships'); ?>" class="btn btn-danger">Cancelar</a> <button type="submit" class="btn btn-primary">Actualizar Membresía</button> </div> </form> </div> </div> <?php $this->endSection(); ?> <?php $this->section('js'); ?> <script> const membership_type_id = document.querySelector('#membership_type_id'); const start_date = document.querySelector('#start_date'); const end_date = document.querySelector('#end_date'); const payment_type = document.querySelector('#payment_type'); const div_initial_payment = document.querySelector('#div_initial_payment'); const initial_payment = document.querySelector('#initial_payment'); const amount = document.querySelector('#amount'); const discount_type = document.querySelector('#discount_type'); const discount_value = document.querySelector('#discount_value'); const amount_pait = document.querySelector('#amount_pait'); document.addEventListener('DOMContentLoaded', function() { // Manejar cambio en el tipo de venta payment_type.addEventListener('change', function() { if (this.value === 'credito') { div_initial_payment.style.display = 'block'; initial_payment.setAttribute('required', 'required'); } else { div_initial_payment.style.display = 'none'; initial_payment.removeAttribute('required'); initial_payment.value = '0.00'; } }); // Al cambiar el tipo de membresía, recalcular fechas y montos membership_type_id.addEventListener('change', function() { const fecha = start_date.value || new Date().toISOString().split('T')[0]; durationMembership(this.value, fecha); }); // Al cambiar la fecha de inicio, recalcular fecha fin start_date.addEventListener('change', function(e) { if (membership_type_id.value !== '') { durationMembership(membership_type_id.value, e.target.value); } else { alertaPesonalizada('warning', 'SELECCIONA TIPO DE MEMBRESIA'); e.target.value = ''; } }); // Cargar datos del tipo actual al abrir el formulario SOLO si están vacíos if (amount.value === '' || amount.value === '0.00' || end_date.value === '') { durationMembership(membership_type_id.value, start_date.value); } }); function durationMembership(membership_type, fecha) { if (membership_type != '') { const http = new XMLHttpRequest(); http.open("GET", base_url + 'admin/durationMembership/' + membership_type + '/' + fecha, true); http.send(); http.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { const res = JSON.parse(this.responseText); let monto = parseFloat(res.amount) || 0; let descuento = parseFloat(res.discount_value) || 0; let tipoDescuento = res.discount_type ? res.discount_type.toLowerCase() : ''; amount.value = monto.toFixed(2); let displayTipo = ''; if (tipoDescuento === 'percent') { displayTipo = 'Porcentaje (%)'; } else if (tipoDescuento === 'fixed') { displayTipo = 'Monto Fijo'; } else { displayTipo = res.discount_type || 'Ninguno'; } discount_type.value = displayTipo; discount_value.value = descuento.toFixed(2); start_date.value = res.fecha_inicio; end_date.value = res.fecha_fin; let montoFinal = monto; if (tipoDescuento === 'percent') { montoFinal = monto - (monto * (descuento / 100)); } else if (tipoDescuento === 'fixed') { montoFinal = monto - descuento; } amount_pait.value = montoFinal.toFixed(2); } }; } } </script> <?php $this->endSection(); ?>
Coded With 💗 by
0x6ick