{ "title": "Instalar Módulo", "upload_title": "Subir Módulo", "back": "Volver", "file_label": "Archivo del Módulo (.zip)", "file_help": "Seleccione el archivo ZIP que contiene todos los archivos del módulo.", "enable_for_all": "Habilitar para todas las empresas", "enable_for_all_help": "Marque esta opción para habilitar el módulo para todas las empresas después de la instalación.", "cancel": "Cancelar", "install_button": "Instalar Módulo", "info_title": "Información", "zip_content_info": "El archivo ZIP del módulo debe contener:", "zip_content_list": { "json": "Archivo module.json con la configuración del módulo", "classes": "Directorio classes/ con controladores y modelos", "views": "Directorio views/ con plantillas", "migrations": "Directorio database/migrations/ con migraciones (opcional)" }, "warning_title": "Atención:", "warning_message": "La instalación de módulos afecta directamente al sistema. Asegúrese de que el módulo sea seguro y compatible.", "security_title": "Seguridad", "security_intro": "Antes de instalar un módulo, verifique:", "security_list": { "source": "Fuente confiable del módulo", "compatibility": "Compatibilidad con la versión actual del sistema", "dependencies": "Dependencias necesarias" }, "error_no_file": "Ningún archivo subido", "error_invalid_zip": "El archivo debe ser un archivo ZIP válido", "error_open_zip": "No se pudo abrir el archivo ZIP", "error_extract_zip": "No se pudo extraer el archivo ZIP", "error_missing_file": "Archivo obligatorio '{file}' no encontrado", "error_missing_config": "Archivo de configuración module.json no encontrado", "error_invalid_config": "Archivo module.json inválido: {error}", "error_missing_field": "Campo obligatorio '{field}' no encontrado en module.json", "error_module_exists": "El módulo ya existe", "success_install": "Módulo instalado con éxito", "success_menus_updated": "Menús actualizados para {count} módulos." }