Tul xxx Tul
User / IP
:
216.73.217.33
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
/
Config
/
Viewing: Validation.php
<?php namespace Config; use App\Validation\CustomRules; use CodeIgniter\Config\BaseConfig; use CodeIgniter\Validation\StrictRules\CreditCardRules; use CodeIgniter\Validation\StrictRules\FileRules; use CodeIgniter\Validation\StrictRules\FormatRules; use CodeIgniter\Validation\StrictRules\Rules; class Validation extends BaseConfig { // -------------------------------------------------------------------- // Setup // -------------------------------------------------------------------- /** * Stores the classes that contain the * rules that are available. * * @var list<string> */ public array $ruleSets = [ Rules::class, FormatRules::class, FileRules::class, CreditCardRules::class, ]; /** * Specifies the views that are used to display the * errors. * * @var array<string, string> */ public array $templates = [ 'list' => 'CodeIgniter\Validation\Views\list', 'single' => 'CodeIgniter\Validation\Views\single', ]; // -------------------------------------------------------------------- // Rules // -------------------------------------------------------------------- /** * Validation rules for user creation * * @var array<string, array> */ public array $userRules = [ 'name' => [ 'rules' => 'required|min_length[3]|max_length[255]', 'errors' => [ 'required' => 'El nombre es obligatorio.', 'min_length' => 'El nombre debe tener al menos 3 caracteres.', 'max_length' => 'El nombre no puede tener más de 255 caracteres.' ] ], 'dni' => [ 'rules' => 'required|is_unique[users.dni]', 'errors' => [ 'required' => 'El DNI es obligatorio.', 'is_unique' => 'El DNI ya está en uso.' ] ], 'email' => [ 'rules' => 'required|valid_email|is_unique[users.email]', 'errors' => [ 'required' => 'El correo electrónico es obligatorio.', 'valid_email' => 'El correo electrónico ingresado no es válido.', 'is_unique' => 'El correo electrónico ya está en uso.' ] ], 'password' => [ 'rules' => 'required|min_length[6]', 'errors' => [ 'required' => 'La contraseña es obligatoria.', 'min_length' => 'La contraseña debe tener al menos 6 caracteres.' ] ], 'confirm_password' => [ 'rules' => 'required|matches[password]', 'errors' => [ 'required' => 'La confirmación de la contraseña es obligatoria.', 'matches' => 'Las contraseñas no coinciden.' ] ], 'phone' => [ 'rules' => 'required|numeric|min_length[9]', 'errors' => [ 'required' => 'El teléfono es obligatorio.', 'numeric' => 'El teléfono debe contener solo números.', 'min_length' => 'El teléfono debe tener al menos 9 dígitos.' ] ], 'address' => [ 'rules' => 'required|min_length[5]|max_length[255]', 'errors' => [ 'required' => 'La dirección es obligatoria.', 'min_length' => 'La dirección debe tener al menos 5 caracteres.', 'max_length' => 'La dirección no puede tener más de 255 caracteres.' ] ], 'avatar' => [ 'rules' => 'permit_empty|uploaded[avatar]|is_image[avatar]|max_size[avatar,2048]', 'errors' => [ 'permit_empty' => 'El avatar es opcional.', 'uploaded' => 'El archivo del avatar es requerido.', 'is_image' => 'El archivo debe ser una imagen válida.', 'max_size' => 'La imagen no puede exceder los 2 MB.' ] ], 'role' => [ 'rules' => 'required|is_natural_no_zero', 'errors' => [ 'required' => 'El rol es obligatorio.', 'is_natural_no_zero' => 'Debe seleccionar un rol válido.' ] ] ]; public array $clientRules = [ 'name' => [ 'rules' => 'required|min_length[3]|max_length[255]', 'errors' => [ 'required' => 'El nombre es obligatorio.', 'min_length' => 'El nombre debe tener al menos 3 caracteres.', 'max_length' => 'El nombre no puede tener más de 255 caracteres.' ] ], 'lastname' => [ 'rules' => 'required|min_length[2]|max_length[255]', 'errors' => [ 'required' => 'El apellido es obligatorio.', 'min_length' => 'El apellido debe tener al menos 2 caracteres.', 'max_length' => 'El apellido no puede tener más de 255 caracteres.' ] ], 'dni' => [ 'rules' => 'required|is_unique[users.dni]', 'errors' => [ 'required' => 'El DNI es obligatorio.', 'is_unique' => 'El DNI ya está en uso.' ] ], 'birthdate' => [ 'rules' => 'required|valid_date[Y-m-d]', 'errors' => [ 'required' => 'La fecha de nacimiento es obligatoria.', 'valid_date' => 'La fecha de nacimiento debe tener un formato válido (YYYY-MM-DD).' ] ], 'email' => [ 'rules' => 'required|valid_email|is_unique[users.email]', 'errors' => [ 'required' => 'El correo electrónico es obligatorio.', 'valid_email' => 'El correo electrónico ingresado no es válido.', 'is_unique' => 'El correo electrónico ya está en uso.' ] ], 'phone' => [ 'rules' => 'required|numeric|max_length[15]', 'errors' => [ 'required' => 'El teléfono es obligatorio.', 'numeric' => 'El teléfono debe contener solo números.', 'max_length' => 'El teléfono no puede superar 15 caracteres.' ] ], 'address' => [ 'rules' => 'required|min_length[5]|max_length[255]', 'errors' => [ 'required' => 'La dirección es obligatoria.', 'min_length' => 'La dirección debe tener al menos 5 caracteres.', 'max_length' => 'La dirección no puede tener más de 255 caracteres.' ] ], 'avatar' => [ 'rules' => 'permit_empty|uploaded[avatar]|is_image[avatar]|max_size[avatar,2048]', 'errors' => [ 'permit_empty' => 'El avatar es opcional.', 'uploaded' => 'El archivo del avatar es requerido.', 'is_image' => 'El archivo debe ser una imagen válida.', 'max_size' => 'La imagen no puede exceder los 2 MB.' ] ], ]; public array $instructorRules = [ 'name' => [ 'rules' => 'required|min_length[3]|max_length[255]', 'errors' => [ 'required' => 'El nombre es obligatorio.', 'min_length' => 'El nombre debe tener al menos 3 caracteres.', 'max_length' => 'El nombre no puede tener más de 255 caracteres.' ] ], 'email' => [ 'rules' => 'required|valid_email|is_unique[instructors.email]', 'errors' => [ 'required' => 'El correo electrónico es obligatorio.', 'valid_email' => 'El correo electrónico ingresado no es válido.', 'is_unique' => 'El correo electrónico ya está en uso.' ] ], 'phone' => [ 'rules' => 'required|numeric|min_length[9]', 'errors' => [ 'required' => 'El teléfono es obligatorio.', 'numeric' => 'El teléfono debe contener solo números.', 'min_length' => 'El teléfono debe tener al menos 9 dígitos.' ] ], 'specialty' => [ 'rules' => 'required|min_length[3]|max_length[255]', 'errors' => [ 'required' => 'La especialidad es obligatoria.', 'min_length' => 'La especialidad debe tener al menos 3 caracteres.', 'max_length' => 'La especialidad no puede tener más de 255 caracteres.' ] ] ]; public array $classRules = [ 'name' => [ 'rules' => 'required|min_length[3]|max_length[255]', 'errors' => [ 'required' => 'El nombre es obligatorio.', 'min_length' => 'El nombre debe tener al menos 3 caracteres.', 'max_length' => 'El nombre no puede tener más de 255 caracteres.' ] ], 'description' => [ 'rules' => 'permit_empty|max_length[1000]', 'errors' => [ 'max_length' => 'La descripción no puede tener más de 1000 caracteres.' ] ], 'instructor_id' => [ 'rules' => 'required|is_not_unique[instructors.id]', 'errors' => [ 'required' => 'El instructor es obligatorio.', 'is_not_unique' => 'El instructor seleccionado no existe.' ] ], 'start_time' => [ 'rules' => 'required|valid_date', 'errors' => [ 'required' => 'La hora de inicio es obligatoria.', 'valid_date' => 'La hora de inicio debe ser una fecha válida.' ] ], 'end_time' => [ 'rules' => 'required|valid_date', 'errors' => [ 'required' => 'La hora de finalización es obligatoria.', 'valid_date' => 'La hora de finalización debe ser una fecha válida.', ] ], 'day_of_week' => [ 'rules' => 'required|in_list[Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday]', 'errors' => [ 'required' => 'El día de la semana es obligatorio.', 'in_list' => 'El día de la semana seleccionado no es válido.' ] ] ]; public array $membershipTypeRules = [ 'name' => [ 'rules' => 'required|min_length[3]|max_length[255]', 'errors' => [ 'required' => 'El nombre del tipo de membresía es obligatorio.', 'min_length' => 'El nombre del tipo de membresía debe tener al menos 3 caracteres.', 'max_length' => 'El nombre del tipo de membresía no puede tener más de 255 caracteres.' ] ], 'duration' => [ 'rules' => 'required|in_list[Por día,Semanal,Quincenal,Mensual,Anual]', 'errors' => [ 'required' => 'La duración de membresía es obligatoria.', 'in_list' => 'La duración debe ser uno de los siguientes: Por día, Semanal, Quincenal, Mensual o Anual.' ] ], 'amount' => [ 'rules' => 'required|numeric|greater_than_equal_to[0]', 'errors' => [ 'required' => 'El monto de membresía es obligatorio.', 'numeric' => 'El monto debe ser un número válido.', 'greater_than_equal_to' => 'El monto debe ser mayor o igual a 0.' ] ], 'description' => [ 'rules' => 'permit_empty|max_length[1000]', 'errors' => [ 'max_length' => 'La descripción no puede tener más de 1000 caracteres.' ] ], 'status' => [ 'rules' => 'required|in_list[active,inactive]', 'errors' => [ 'required' => 'El estado del tipo de membresía es obligatorio.', 'in_list' => 'El estado debe ser uno de los siguientes: active, inactive.' ] ], 'discount_type' => [ 'rules' => 'permit_empty|in_list[percent,fixed]', 'errors' => [ 'in_list' => 'El tipo de descuento debe ser porcentaje o monto fijo.' ] ], 'discount_value' => [ 'rules' => 'permit_empty|numeric|greater_than_equal_to[0]|required_with[discount_type]', 'errors' => [ 'required_with' => 'Debe ingresar un valor de descuento si selecciona un tipo de descuento.', 'numeric' => 'El valor de descuento debe ser un número válido.', 'greater_than_equal_to' => 'El valor de descuento debe ser mayor o igual a 0.' ] ], 'image' => [ 'rules' => 'permit_empty|is_image[image]|max_size[image,2048]|mime_in[image,image/jpg,image/jpeg,image/png]', 'errors' => [ 'is_image' => 'El archivo debe ser una imagen válida.', 'max_size' => 'La imagen no puede pesar más de 2MB.', 'mime_in' => 'La imagen debe ser jpg o png.', ] ], ]; public array $membershipRules = [ 'user_id' => [ 'rules' => 'required|is_not_unique[users.id]', 'errors' => [ 'required' => 'El usuario es obligatorio.', 'is_not_unique' => 'El usuario seleccionado no existe.' ] ], 'membership_type_id' => [ 'rules' => 'required|is_not_unique[membership_types.id]', 'errors' => [ 'required' => 'El tipo de membresía es obligatorio.', 'is_not_unique' => 'El tipo de membresía seleccionado no existe.' ] ], 'payment_method_id' => [ 'rules' => 'required|is_not_unique[payment_methods.id]', 'errors' => [ 'required' => 'El método de pago es obligatorio.', 'is_not_unique' => 'El método de pago seleccionado no es válido.' ] ], 'box_id' => [ 'rules' => 'required', 'errors' => [ 'required' => 'La caja es obligatorio.', ] ], 'start_date' => [ 'rules' => 'required|valid_date', 'errors' => [ 'required' => 'La fecha de inicio es obligatoria.', 'valid_date' => 'La fecha de inicio debe ser una fecha válida.' ] ], 'end_date' => [ 'rules' => 'required|valid_date', 'errors' => [ 'required' => 'La fecha de finalización es obligatoria.', 'valid_date' => 'La fecha de finalización debe ser una fecha válida.' ] ], 'status' => [ 'rules' => 'required|in_list[active,inactive]', 'errors' => [ 'required' => 'El estado de la membresía es obligatorio.', 'in_list' => 'El estado debe ser uno de los siguientes: active, inactive.' ] ] ]; public array $attendanceRules = [ 'user_id' => [ 'rules' => 'required|is_not_unique[users.id]', 'errors' => [ 'required' => 'El usuario es obligatorio.', 'is_not_unique' => 'El usuario seleccionado no existe.' ] ], 'attendance_date' => [ 'rules' => 'required|valid_date', 'errors' => [ 'required' => 'La fecha de asistencia es obligatoria.', 'valid_date' => 'La fecha de asistencia debe ser una fecha válida.' ] ] ]; public array $aboutSectionRules = [ 'title' => 'required|max_length[255]', 'description' => 'permit_empty', 'image' => 'uploaded[image]|is_image[image]|max_size[image,2048]', 'image2' => 'uploaded[image2]|is_image[image2]|max_size[image2,2048]' ]; public array $aboutSectionRulesUpdate = [ 'title' => 'required|max_length[255]', 'description' => 'permit_empty', 'image' => 'is_image[image]|max_size[image,2048]', 'image2' => 'is_image[image2]|max_size[image2,2048]' ]; public array $paymentMethodRules = [ 'name' => [ 'rules' => 'required|min_length[3]|max_length[255]', 'errors' => [ 'required' => 'El nombre del método de pago es obligatorio.', 'min_length' => 'El nombre del método de pago debe tener al menos 3 caracteres.', 'max_length' => 'El nombre del método de pago no puede tener más de 255 caracteres.' ] ] ]; public array $paymentRules = [ 'box_id' => [ 'rules' => 'required', 'errors' => [ 'required' => 'La caja es obligatorio.', ] ], 'membership_id' => [ 'rules' => 'required|is_not_unique[memberships.id]', 'errors' => [ 'required' => 'El ID de membresía es obligatorio.', 'is_not_unique' => 'El ID de membresía seleccionado no es válido.' ] ], 'amount' => [ 'rules' => 'required|decimal', 'errors' => [ 'required' => 'El monto es obligatorio.', 'decimal' => 'El monto debe ser un número decimal.' ] ], 'payment_date' => [ 'rules' => 'required|valid_date[Y-m-d]', 'errors' => [ 'required' => 'La fecha de pago es obligatoria.', 'valid_date' => 'La fecha de pago debe ser una fecha válida en el formato YYYY-MM-DD.' ] ], 'coverage_start' => [ 'rules' => 'permit_empty|valid_date[Y-m-d]', 'errors' => [ 'valid_date' => 'La fecha "Cubrirá desde" debe ser válida.' ] ], 'coverage_end' => [ 'rules' => 'permit_empty|valid_date[Y-m-d]', 'errors' => [ 'valid_date' => 'La fecha "Cubrirá hasta" debe ser válida.' ] ], 'payment_method_id' => [ 'rules' => 'required|is_not_unique[payment_methods.id]', 'errors' => [ 'required' => 'El método de pago es obligatorio.', 'is_not_unique' => 'El método de pago seleccionado no es válido.' ] ] ]; public array $warehouseRules = [ 'name' => [ 'rules' => 'required|min_length[3]|max_length[150]|is_unique[warehouses.name]', 'errors' => [ 'required' => 'El nombre de la bodega es obligatorio.', 'min_length' => 'El nombre debe tener al menos 3 caracteres.', 'max_length' => 'El nombre no puede tener más de 150 caracteres.', 'is_unique' => 'Ya existe una bodega con ese nombre.' ] ], 'description' => [ 'rules' => 'permit_empty|max_length[500]', 'errors' => [ 'max_length' => 'La descripción no puede tener más de 500 caracteres.' ] ], 'address' => [ 'rules' => 'permit_empty|max_length[255]', 'errors' => [ 'max_length' => 'La dirección no puede tener más de 255 caracteres.' ] ] ]; public array $productRules = [ 'barcode' => [ 'rules' => 'required|min_length[3]|max_length[255]|is_unique[products.barcode]', 'errors' => [ 'required' => 'El código de barras es obligatorio.', 'min_length' => 'El código de barras debe tener al menos 3 caracteres.', 'max_length' => 'El código de barras no puede tener más de 255 caracteres.', 'is_unique' => 'El código de barras ya está en uso.' ] ], 'warehouse_id' => [ 'rules' => 'required|is_not_unique[warehouses.id]', 'errors' => [ 'required' => 'La bodega es obligatoria.', 'is_not_unique' => 'La bodega seleccionada no existe.' ] ], 'category_id' => [ 'rules' => 'required|is_not_unique[product_categories.id]', 'errors' => [ 'required' => 'La categoría es obligatoria.', 'is_not_unique' => 'La categoría seleccionada no existe.' ] ], 'name' => [ 'rules' => 'required|min_length[3]|max_length[255]', 'errors' => [ 'required' => 'El nombre del producto es obligatorio.', 'min_length' => 'El nombre debe tener al menos 3 caracteres.', 'max_length' => 'El nombre no puede tener más de 255 caracteres.' ] ], 'sale_price' => [ 'rules' => 'required|decimal', 'errors' => [ 'required' => 'El precio de venta es obligatorio.', 'decimal' => 'El precio de venta debe ser un número decimal válido.' ] ], 'purchase_price' => [ 'rules' => 'required|decimal', 'errors' => [ 'required' => 'El precio de compra es obligatorio.', 'decimal' => 'El precio de compra debe ser un número decimal válido.' ] ], 'quantity' => [ 'rules' => 'required|integer', 'errors' => [ 'required' => 'La cantidad es obligatoria.', 'integer' => 'La cantidad debe ser un número entero válido.' ] ], 'status' => [ 'rules' => 'required|in_list[0,1]', 'errors' => [ 'required' => 'El estado es obligatorio.', 'in_list' => 'El estado debe ser 0 (inactivo) o 1 (activo).' ] ] ]; public array $boxRules = [ 'name' => [ 'rules' => 'required', 'errors' => [ 'required' => 'El nombre es obligatorio.' ] ], 'initial_amount' => [ 'rules' => 'required', 'errors' => [ 'required' => 'El monto inicial es obligatorio.' ] ], 'opening_date' => [ 'rules' => 'required|valid_date', 'errors' => [ 'required' => 'La fecha de apertura es obligatoria.', 'valid_date' => 'La fecha de apertura debe ser una fecha válida.' ] ] ]; public array $billRules = [ 'payment_method_id' => [ 'rules' => 'required|is_not_unique[payment_methods.id]', 'errors' => [ 'required' => 'El método de pago es obligatorio.', 'is_not_unique' => 'El método de pago seleccionado no es válido.' ] ], 'box_id' => [ 'rules' => 'permit_empty', 'errors' => [] ], 'subcategory_id' => [ 'rules' => 'required', 'errors' => [ 'required' => 'La subcategoría es obligatoria.', ] ], 'amount' => [ 'rules' => 'required|decimal', 'errors' => [ 'required' => 'El monto es obligatorio.', 'decimal' => 'El monto debe ser un valor decimal válido.' ] ], 'description' => [ 'rules' => 'permit_empty|max_length[1000]', 'errors' => [ 'max_length' => 'La descripción no puede tener más de 1000 caracteres.' ] ], 'expense_date' => [ 'rules' => 'required|valid_date', 'errors' => [ 'required' => 'La fecha del gasto es obligatoria.', 'valid_date' => 'La fecha del gasto debe ser una fecha válida.' ] ], 'photo' => [ 'rules' => 'permit_empty|uploaded[photo]|max_size[photo,2048]|is_image[photo]|mime_in[photo,image/jpg,image/jpeg,image/png]', 'errors' => [ 'uploaded' => 'Debe subir una foto.', 'max_size' => 'El tamaño de la foto no debe exceder los 2MB.', 'is_image' => 'El archivo subido debe ser una imagen.', 'mime_in' => 'El archivo debe ser de tipo jpg, jpeg o png.' ] ] ]; public array $transferStockRules = [ 'product_id' => [ 'rules' => 'required|is_not_unique[products.id]', 'errors' => [ 'required' => 'El producto es obligatorio.', 'is_not_unique' => 'El producto seleccionado no existe.' ] ], 'origin_warehouse_id' => [ 'rules' => 'required|is_not_unique[warehouses.id]', 'errors' => [ 'required' => 'La bodega de origen es obligatoria.', 'is_not_unique' => 'La bodega de origen no existe.' ] ], 'destination_warehouse_id' => [ 'rules' => 'required|is_not_unique[warehouses.id]|differs[origin_warehouse_id]', 'errors' => [ 'required' => 'La bodega de destino es obligatoria.', 'is_not_unique' => 'La bodega de destino no existe.', 'differs' => 'La bodega de destino debe ser diferente a la de origen.' ] ], 'quantity' => [ 'rules' => 'required|is_natural_no_zero', 'errors' => [ 'required' => 'La cantidad es obligatoria.', 'is_natural_no_zero' => 'La cantidad debe ser un número entero mayor a cero.' ] ] ]; }
Coded With 💗 by
0x6ick