| 
<?php
 declare(strict_types=1);
 
 /**************************************************************************************
 *
 * Catalyst PHP Framework
 * PHP Version 8.3 (Required).
 *
 * @package   Catalyst
 * @subpackage Assets
 * @see       https://github.com/arcanisgk/catalyst
 *
 * @author    Walter Nuñez (arcanisgk/original founder) <[email protected]>
 * @copyright 2023 - 2025
 * @license   http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License
 *
 * @note      This program is distributed in the hope that it will be useful
 *            WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
 *            or FITNESS FOR A PARTICULAR PURPOSE.
 *
 * @category  Framework
 * @filesource
 *
 * @link      https://catalyst.dock Local development URL
 *
 */
 
 ?>
 
 use Catalyst\Helpers\Security\CsrfProtection;
 
 $csrfProtection = CsrfProtection::getInstance();
 
 ?>
 <div class="row">
 <div class="col-lg-12">
 <div class="ibox">
 <div class="ibox-title">
 <h5>Developer Tools & Settings</h5>
 <div class="ibox-tools">
 <a class="collapse-link">
 <i class="fa fa-chevron-up"></i>
 </a>
 </div>
 </div>
 <div class="ibox-content">
 <form id="tools-config-form" class="form-horizontal">
 <?= $csrfProtection->getTokenField('mail_config'); ?>
 <div class="row">
 <div class="col-md-6">
 <div class="mb-1">
 <div class="form-check">
 <input type="checkbox" class="form-check-input" id="app_setting" name="app_setting"
 <?= isset($configData['app_setting']) && $configData['app_setting'] ? 'checked' : '' ?>>
 <label class="form-check-label" for="app_setting">Enable Application Settings Panel</label>
 </div>
 <small class="form-text text-muted">Allows access to this configuration interface.</small>
 </div>
 </div>
 
 <div class="col-md-6">
 <div class="mb-1">
 <div class="form-check">
 <input type="checkbox" class="form-check-input" id="dev_tool" name="dev_tool"
 <?= isset($configData['dev_tool']) && $configData['dev_tool'] ? 'checked' : '' ?>>
 <label class="form-check-label" for="dev_tool">Enable Developer Tools</label>
 </div>
 <small class="form-text text-muted">Enables debugging and development tools</small>
 </div>
 </div>
 </div>
 
 <div class="hr-line-dashed"></div>
 
 <div class="row">
 <div class="col-md-12">
 <div class="form-group">
 <label for="translate_tool">Translation Tool</label>
 <select class="form-control" id="translate_tool" name="translate_tool">
 <option value="" <?= empty($configData['translate_tool']) ? 'selected' : '' ?>>None</option>
 <option value="basic" <?= ($configData['translate_tool'] ?? '') === 'basic' ? 'selected' : '' ?>>Basic Translation Editor</option>
 <option value="advanced" <?= ($configData['translate_tool'] ?? '') === 'advanced' ? 'selected' : '' ?>>Advanced Translation Suite</option>
 </select>
 <small class="text-muted">Select which translation tool to enable for content management</small>
 </div>
 </div>
 </div>
 
 <div class="hr-line-dashed"></div>
 
 <!-- Security Config Change Password -->
 
 <div class="row">
 <div class="col-md-12">
 <h4>Configuración de Seguridad</h4>
 </div>
 <div class="col-md-6">
 <div class="form-group mb-3">
 <label for="config_username">Nombre de Usuario para Configuración</label>
 <input type="text" class="form-control" id="config_username" name="config_username"
 value="<?= $configData['config']['username'] ?? 'admin' ?>">
 <small class="form-text text-muted">Usuario para acceder al panel de configuración</small>
 </div>
 </div>
 <div class="col-md-6">
 <div class="form-group mb-3">
 <label for="config_password">Contraseña para Configuración</label>
 <div class="input-group">
 <input type="password" class="form-control" id="config_password" name="config_password"
 value="<?= $configData['config']['password'] ?? 'admin' ?>">
 <button class="btn btn-outline-secondary toggle-password" type="button">
 <i class="bi bi-eye"></i>
 </button>
 </div>
 <small class="form-text text-muted">Contraseña para acceder al panel de configuración</small>
 </div>
 </div>
 </div>
 
 <div class="hr-line-dashed"></div>
 
 
 <div class="row">
 <div class="col-md-12 text-center">
 <button type="submit" class="btn btn-primary btn-lg">
 <i class="fa fa-save"></i> Save Configuration
 </button>
 </div>
 </div>
 
 
 </form>
 </div>
 </div>
 </div>
 </div>
 
 
 <script>
 'use strict';
 
 /**
 * Tools Configuration Manager
 * Modern ES6+ implementation for developer tools configuration
 */
 document.addEventListener('DOMContentLoaded', () => {
 // DOM Elements
 const configForm = document.getElementById('tools-config-form');
 
 // Initialize iCheck
 if ($.fn.iCheck) {
 $('.i-checks input').iCheck({
 checkboxClass: 'icheckbox_square-green',
 radioClass: 'iradio_square-green',
 });
 }
 
 // Form submission handler
 configForm.addEventListener('submit', async (event) => {
 event.preventDefault();
 
 // Verifica que el token CSRF esté presente
 const csrfToken = document.querySelector('input[name="csrf_token"]');
 console.log('CSRF Token:', csrfToken?.value); // Para depuración
 
 await handleConfigSubmit(configForm, '/configure/tools/save');
 });
 });
 </script>
 |