403Webshell
Server IP : 104.21.84.107  /  Your IP : 104.23.243.197
Web Server : Apache/2.4.63 (Ubuntu)
System : Linux adminpruebas-Virtual-Machine 6.14.0-37-generic #37-Ubuntu SMP PREEMPT_DYNAMIC Fri Nov 14 22:10:32 UTC 2025 x86_64
User : www-data ( 33)
PHP Version : 8.4.5
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /var/www/biblioteca/includes/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/biblioteca/includes/slider_capacitaciones_banners.php
<?php
declare(strict_types=1);

require_once __DIR__ . '/home_slider_helpers.php';

$mesesCortosBanners = [
    1 => 'ENE', 2 => 'FEB', 3 => 'MAR', 4 => 'ABR', 5 => 'MAY', 6 => 'JUN',
    7 => 'JUL', 8 => 'AGO', 9 => 'SEP', 10 => 'OCT', 11 => 'NOV', 12 => 'DIC',
];

$fechaReferenciaBanners = new DateTimeImmutable('today');
$mesActualBanners = $fechaReferenciaBanners->modify('first day of this month');
$mesSiguienteBanners = $mesActualBanners->modify('+1 month');
$mesesPermitidosBanners = [
    $mesActualBanners->format('Y-m'),
    $mesSiguienteBanners->format('Y-m'),
];

$bannersCapacitaciones = [];

foreach ($capacitaciones as $item) {
    $capacitacion = buildCapacitacionItem((array) $item);
    if ($capacitacion === null) {
        continue;
    }

    if (!in_array($capacitacion['fecha']->format('Y-m'), $mesesPermitidosBanners, true)) {
        continue;
    }

    $bannersCapacitaciones[] = $capacitacion;
}

sortCapacitacionesChronologically($bannersCapacitaciones);
?>

<section class="home-slider home-slider--cap-banners" id="inicio-capacitaciones-destacadas" aria-labelledby="capacitaciones-banners-title">
  <div class="cap-banners">
    <div class="cap-banners__head">
      <h2 id="capacitaciones-banners-title" class="u-visually-hidden">Capacitaciones destacadas</h2>

      <div class="cap-banners__controls">
        <button type="button" class="cap-banners__arrow" data-cap-banner-prev aria-label="Banner anterior">
          <span aria-hidden="true">&lt;</span>
        </button>
        <button type="button" class="cap-banners__arrow" data-cap-banner-next aria-label="Siguiente banner">
          <span aria-hidden="true">&gt;</span>
        </button>
      </div>
    </div>

    <div class="cap-banners__viewport" data-cap-banner-viewport>
      <div class="cap-banners__track" data-cap-banner-track>
        <?php foreach ($bannersCapacitaciones as $banner): ?>
          <article class="cap-banner" style="--cap-banner-accent: <?= htmlspecialchars((string) $banner['acento'], ENT_QUOTES, 'UTF-8') ?>;">
            <div class="cap-banner__content">
              <div class="cap-banner__chips">
                <span><?= htmlspecialchars((string) $banner['categoria'], ENT_QUOTES, 'UTF-8') ?></span>
                <span><?= htmlspecialchars((string) $banner['modalidad'], ENT_QUOTES, 'UTF-8') ?></span>
              </div>

              <h3><?= htmlspecialchars((string) $banner['titulo'], ENT_QUOTES, 'UTF-8') ?></h3>
              <p><?= htmlspecialchars((string) $banner['descripcion'], ENT_QUOTES, 'UTF-8') ?></p>

              <div class="cap-banner__meta">
                <span><?= htmlspecialchars($banner['fecha']->format('d/m/Y'), ENT_QUOTES, 'UTF-8') ?></span>
                <span><?= htmlspecialchars((string) $banner['hora'], ENT_QUOTES, 'UTF-8') ?></span>
                <?php $detalleMeta = trim((string) ($banner['capacitador'] !== '' ? $banner['capacitador'] : $banner['plataforma'])); ?>
                <?php if ($detalleMeta !== ''): ?>
                  <span><?= htmlspecialchars($detalleMeta, ENT_QUOTES, 'UTF-8') ?></span>
                <?php endif; ?>
              </div>

              <a
                class="cap-banner__link"
                href="<?= htmlspecialchars((string) $banner['boton_url'], ENT_QUOTES, 'UTF-8') ?>"
                target="_blank"
                rel="noopener noreferrer"
              >
                <?= htmlspecialchars((string) $banner['boton_texto'], ENT_QUOTES, 'UTF-8') ?>
              </a>
            </div>

            <div class="cap-banner__aside">
              <div class="cap-banner__date-card">
                <strong><?= htmlspecialchars($banner['fecha']->format('d'), ENT_QUOTES, 'UTF-8') ?></strong>
                <span><?= htmlspecialchars($mesesCortosBanners[(int) $banner['fecha']->format('n')], ENT_QUOTES, 'UTF-8') ?></span>
              </div>

              <?php if ((string) $banner['cupo'] !== ''): ?>
                <div class="cap-banner__capacity">
                  <span>Cupos disponibles</span>
                  <strong><?= htmlspecialchars((string) $banner['cupo'], ENT_QUOTES, 'UTF-8') ?></strong>
                </div>
              <?php endif; ?>

              <?php if ((string) $banner['qr_imagen'] !== ''): ?>
                <div class="cap-banner__qr">
                  <span>Código QR</span>
                  <img
                    src="<?= htmlspecialchars((string) $banner['qr_imagen'], ENT_QUOTES, 'UTF-8') ?>"
                    alt="<?= htmlspecialchars((string) ($banner['qr_alt'] !== '' ? $banner['qr_alt'] : 'QR de registro para ' . $banner['titulo']), ENT_QUOTES, 'UTF-8') ?>"
                    loading="lazy"
                    decoding="async"
                  >
                </div>
              <?php endif; ?>
            </div>
          </article>
        <?php endforeach; ?>
      </div>
    </div>

    <div class="cap-banners__dots" data-cap-banner-dots></div>
  </div>
</section>

Youez - 2016 - github.com/yon3zu
LinuXploit