Simple Machines Community Forum

SMF Support => Español (Spanish) => Language Specific Support => Tutoriales => Topic started by: Dhayzon on May 28, 2020, 06:51:44 PM

Title: [WIP]SMF 2.1 cargar nuevos comentarios conAJAX /scroll
Post by: Dhayzon on May 28, 2020, 06:51:44 PM
les cuento la idea que tuve a se mucho tiempo y que lo  haré mod para esta versión de smf

se trata del paginado a la hora de ver un post, este post tiene mas o menos 130 respuestas

y si me pongo a ver y leer los comentarios tendría que hacer click  en cada link

Code: [Select]
index.php?topic=188.0
Code: [Select]
index.php?topic=188.15
Code: [Select]
index.php?topic=188.45

desventajas:

-click adicional para ver los comentarios siguientes
-se vuelve a cargar el header y footer los estilos  x archivos adicionales


la idea es que una vez que estemos en la pagina los comentarios se carguen a medida que llegamos al final con el scroll similar al inicio de facebook

sin construir consultas adicionales se puede logra con los hooks nativos de smf  ejemplo

agregando este gancho

Code: [Select]
add_integration_function('integrate_display_topic', 'miMod\miModHook::display_topic',false);

Code: [Select]
public  static  function  display_topic(&$topic_selects,&$topic_tables,&$topic_parameters){
        global $sourcedir,$context;
        if(!empty($_REQUEST['start']))
           $context['template_layers'] = array();
    } 


con esas lineas seria suficiente para  el lado del servidor y para el lado de cliente deberías toquetear la plantilla

explicación  de que trata

basicamente en primer lugar le digo que si estoy en la primera pagina cuando $_REQUEST['start'] = 0 no haga nada todo normal

pero cuando  $_REQUEST['start']  sea diferente de 0  solo carguemos los mensajes sin la necesidad de estilos el header o el footer

y si le agregamos una peticion via ajax al enlace
Code: [Select]
index.php?topic=188.15
podremos acomodarlo de manera sencilla al final del post con un append de jquery

seria fenomenal que smf venga a si por defecto ya que muchos foros lo trata a si


el resultado podría estár en formato json
Code: [Select]

{
 'success':true
 'html':'...'
}

ipboard lo maneja de esa forma escupe todo el html dentro de un json

 
Title: Re: [WIP]SMF 2.1 cargar nuevos comentarios conAJAX /scroll
Post by: D🅰️NIEL on May 28, 2020, 07:22:54 PM
Jajajja como es eso de que escupe el HTML ni que fuese un guanaco, SMF.


Un saludo
Title: Re: [WIP]SMF 2.1 cargar nuevos comentarios conAJAX /scroll
Post by: Rock Lee on May 28, 2020, 07:28:49 PM
Aun estoy poniendome al dia con 2.1 pero voy agarrando la idea principal en verdad y se puede jugar mucho con modificaciones en verdad, esta bueno el tip lo muevo a tutoriales ;)!


Saludos!
Title: Re: [WIP]SMF 2.1 cargar nuevos comentarios conAJAX /scroll
Post by: gohanjaja on June 01, 2020, 11:05:19 PM
les cuento la idea que tuve a se mucho tiempo y que lo  haré mod para esta versión de smf

se trata del paginado a la hora de ver un post, este post tiene mas o menos 130 respuestas

y si me pongo a ver y leer los comentarios tendría que hacer click  en cada link

Code: [Select]
index.php?topic=188.0
Code: [Select]
index.php?topic=188.15
Code: [Select]
index.php?topic=188.45

desventajas:

-click adicional para ver los comentarios siguientes
-se vuelve a cargar el header y footer los estilos  x archivos adicionales


la idea es que una vez que estemos en la pagina los comentarios se carguen a medida que llegamos al final con el scroll similar al inicio de facebook

sin construir consultas adicionales se puede logra con los hooks nativos de smf  ejemplo

agregando este gancho

Code: [Select]
add_integration_function('integrate_display_topic', 'miMod\miModHook::display_topic',false);

Code: [Select]
public  static  function  display_topic(&$topic_selects,&$topic_tables,&$topic_parameters){
        global $sourcedir,$context;
        if(!empty($_REQUEST['start']))
           $context['template_layers'] = array();
    } 


con esas lineas seria suficiente para  el lado del servidor y para el lado de cliente deberías toquetear la plantilla

explicación  de que trata

basicamente en primer lugar le digo que si estoy en la primera pagina cuando $_REQUEST['start'] = 0 no haga nada todo normal

pero cuando  $_REQUEST['start']  sea diferente de 0  solo carguemos los mensajes sin la necesidad de estilos el header o el footer

y si le agregamos una peticion via ajax al enlace
Code: [Select]
index.php?topic=188.15
podremos acomodarlo de manera sencilla al final del post con un append de jquery

seria fenomenal que smf venga a si por defecto ya que muchos foros lo trata a si


el resultado podría estár en formato json
Code: [Select]

{
 'success':true
 'html':'...'
}

ipboard lo maneja de esa forma escupe todo el html dentro de un json

Que genio, ojalá puedas llegar a hacer el mod...sería un gran cambio y una mejora superlativa en esta versión y mucha ayuda para los foros con usuarios con ideas muy básicas de su manejo.
Title: Re: [WIP]SMF 2.1 cargar nuevos comentarios conAJAX /scroll
Post by: d3vcho on June 02, 2020, 04:34:44 AM
La verdad es que la idea es interesante Dhayzon. Me interesaría ver el código una vez esté terminada la modificación.

Suerte :)