¡Bienvenido a PHPost!

Para participar en el foro, descargar complementos y acceder al chat, es necesario tener una cuenta activa. Por favor, regístrate utilizando un correo electrónico válido para completar la activación.

Usamos BanaHosting para alojar tanto la demo oficial como este mismo foro de Risus Nova. Cumple todos los requisitos del script (PHP 8, mod_rewrite, SSL gratis) — si quieres usar el mismo hosting que nosotros, aquí tienes el enlace.

⚠️ Aviso de seguridad

Risus Nova solo se distribuye de forma segura y verificada a través de phpost.es. Hemos detectado copias modificadas en sitios de terceros que contienen código malicioso, backdoors y funciones ocultas diseñadas para el robo de credenciales y datos sensibles. No confíes en descargas provenientes de foros, canales de Telegram o webs externas; no podemos garantizar la integridad de esos archivos. Tu seguridad es nuestra prioridad: Descarga siempre la versión oficial desde el botón inferior para asegurar una instalación limpia y libre de amenazas.

🔄 Mantente actualizado

Al estar en desarrollo activo, recibe cambios constantes — échale un vistazo de vez en cuando al changelog y a las notas de administración para estar al día de qué ha cambiado.

Risus Nova 2.0 Estable En desarrollo activo Actualizado: 24/06/2026 - 14:00 h (Hora España) Desarrollo Tema: 75% (Ver notas de la versión) (Ver Demo)

Descargar desde phpost.es
Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5

COMPLEMENTOS Pequeño ajuste para los botones del modal
#1

3
Mejor respuesta del mensaje Pequeño ajuste para los botones del modalBueno hace tiempo hice este cambio para el modal, el cual facilitaría la creaciones de modales con botones.
 
Antes se tenia que usar así: 
mydialog.buttons(true, true, 'SI', "bloquear('"+user+"', true, '"+lugar+"', true)", true, false, true, 'NO', 'close', true, true); 

Ahora es poco más largo, pero más fácil de entender
mydialog.buttons([
   {mostrar:true,texto:'SI',accion:"bloquear('"+user+"', true, '"+lugar+"', true)",activo:true},
   {mostrar:true,texto:'NO',accion:'cerrar',activo:true}
]) 

Tiene varias maneras de poder emplearlo, la primera es como se muestra en el código de arriba ↑ y las otras 2 son de estas formas:
mydialog.buttons({mostrar:true,texto:'SI',accion:"bloquear('"+user+"', true, '"+lugar+"', true)",activo:true})
mydialog.buttons(false) // Puede ser true
Y se le podrá agregar más de 2 botones, puede ser 3, 4, etc...
 
Vamos al archivo acciones.js, buscamos
buttons: function(display_all, btn1_display, btn1_val, btn1_action, btn1_enabled, btn1_focus, btn2_display, btn2_val, btn2_action, btn2_enabled, btn2_focus){
... TODO EL CODIGO INCLUIDO ...
},

La reemplazamos por
buttons: function(object) {
    let agregar_botones = '';
    // Es un objeto...
    if(typeof object === 'object') {
        // Es un Arreglo (array)...
        if(Array.isArray(object)) {
            for(let i = 0; i < object.length; i++) {
            if(object.mostrar) {
                let clase = !empty(object.clase) ? object.clase : (!i ? 'btnOk' : 'btnCancel');
                let activo = object.activo ? '' : ' disabled'
// Si la acción es igual a "cerrar"
               let accion = (object.accion == 'cerrar') ? ` onclick="mydialog.close()"` : ` onclick="${object.accion}"`
                agregar_botones += `<input type="button" class="mBtn ${clase}${activo}" style="display:inline-block" value="${object.texto}"${accion}${activo} >`;
            }
            }
        } else {
            if(object.mostrar) {
            let clase = !empty(object.clase) ? object.clase : 'btnOk';
            let activo = object.activo ? '' : ' disabled'
// Si la acción es igual a "cerrar" o contiene una función
            let accion = (object.accion == 'cerrar') ? `onclick="mydialog.close()"` : ` onclick="${object.accion}"`
            agregar_botones += `<input type="button" class="mBtn ${clase}${activo}" style="display:inline-block" value="${object.texto}"${accion}${activo}>`;
            }
        }
// Si el boolean es TRUE entonces mostrará este botón por defecto, si es FALSE no mostrará nada
    } else if(typeof object === 'boolean') {
        agregar_botones += object ? `<input type="button" class="mBtn btnOk" style="display:inline-block" value="Aceptar" onclick="mydialog.close()">` : ''
    }
   $('#mydialog #buttons').html(agregar_botones)
}, 

El objeto que se puede pasar, si solo contendrá un botón pude ir solo el objeto, en caso que sean 2 o más botones deberá ir así

   { ... PARAMETROS DEL OBJETO 1 ... },
   { ... PARAMETROS DEL OBJETO 2 ... }
]

Los parámetros que se pueden usar
{
   mostrar: boolean, // TRUE o FALSE
   texto: string,  // El texto que se mostrará
   accion: string, // Función que se empleará o "cerrar"
   activo: boolean, // TRUE o FALSE
   clase: string // Opcional, puede incluir clase para modificar la apariencia del botón

Espero que sea clara la explicación y lo puedan entender...
Responder


Compartir en:

Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)