Foros del Web » Creando para Internet » Sistemas de gestión de contenidos »

Simular boton de gracias de VBulletin en Icy Phoenix 1.3.0.53

Estas en el tema de Simular boton de gracias de VBulletin en Icy Phoenix 1.3.0.53 en el foro de Sistemas de gestión de contenidos en Foros del Web. Saludos amigos soy nuevo en esto del PHP y espero me ayuden por favor. Estoy trabajando en un foro basado en "Icy Phoenix 1.3.0.53" la ...
  #1 (permalink)  
Antiguo 05/01/2010, 00:04
 
Fecha de Ingreso: enero-2010
Mensajes: 2
Antigüedad: 14 años, 3 meses
Puntos: 0
Exclamación Simular boton de gracias de VBulletin en Icy Phoenix 1.3.0.53

Saludos amigos soy nuevo en esto del PHP y espero me ayuden por favor.

Estoy trabajando en un foro basado en "Icy Phoenix 1.3.0.53" la cosa es que he activado el MOD DE GRACIAS y puesto andar en Addons o mejora del mod que viene predeterminado; haciendo que No solo se den gracias por los temas sino por los post individuales o respuesta en topics diferentes dentro del mismo tema (parecido a Vbulletin).

El caso es que quiero lograr que cuando lo usuarios agradezcan los post de los demás usuarios que comentan o responden en el mismo tema automáticamente salgan las gracias recibidas y desaparezca el boton de gracias cuando se preciona, evitando actualizar la página para que esto suceda.

Prácticamente simular el fresco de página o caché que hace el mod thanks o mod de gracias en vbulltenin.

Espero haberme explicado.

Aquí les dejo las modificaciones a realizar en el foro para que aprecien mejor al testearlo y me puedan ayudar entendiendo lo que aqui quiero lograr.


Código:
## Author: esnola ([email protected])
## Author Web: http://www.todo-mods.com
##
## Descripción en español:
        Añade un botón para dar gracias al posteador del post al estilo de VBulletin.
        Y muestra los resultados en cada post que haya sido agradecido.
##
##
## Installation Level: Easy (Fácil)
## Installation Time: 2 Minutes
## Ficheros a Editar:(2)   viewtopic.php,
##                         templates/mg_themes/viewtopic_body.tpl  
##       * Deberás editar este archivo en todos los estilos o plantillas que tengas.
#########################################################
## Antes realizar cualquier modificación en los ficheros de tu foro realiza una copia de seguridad de los mismos.
## Before Adding This MOD To Your Forum, You Should Back Up All Files Related To This MOD
#########################################################

#
#-----[ SQL ]------------------------------------------
#

CREATE TABLE IF NOT EXISTS `ip_thanks_2` (
  `topic_id` mediumint(8) NOT NULL,
  `user_id` mediumint(8) NOT NULL,
  `user_poster` mediumint(8) NOT NULL,
  `post_id` mediumint(8) NOT NULL,
  `thanks_time` int(11) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

#
#-----[ ABRIR / OPEN ]------------------------------------------
#
viewtopic.php

#
#-----[ BUSCAR / FIND ]------------------------------------------
#

// End add - Birthday MOD 

#
#-----[ AÑADIR DESPUES / AFTER ADD ]------------------------------------------
#       

 $activar_gracias = 1;  // Poner en 1 para activar, Poner en 0 para desactivar.      
 if ($activar_gracias == 1)
       {
         $nom_gracias = "";   
         $boton_gra = ($userdata['user_id'] != ANONYMOUS) ? TRUE : FALSE;  
         $forma_tiem = "d F"; 
 
        $sql = mysql_query("SELECT thanks_time
                           FROM ip_thanks_2
                           WHERE user_id =". $userdata['user_id']."
                           AND post_id =".$post_id)  ;
        $ya_votado = mysql_num_rows($sql); 
     
         if($ya_votado) $boton_gra =  false ;
         if($_REQUEST['mode'] == "thanks_2" && !$ya_votado)
         { 
           $sql = mysql_query("SELECT thanks_time
                               FROM ip_thanks_2
                               WHERE user_id =". $userdata['user_id']."
                               AND post_id =".$_REQUEST['p'])  ;
          $ya_votado2 = mysql_num_rows($sql);   
          if(!$ya_votado2 && $userdata['user_id'] != $postrow[$i]['poster_id'] && $userdata['user_id'] != ANONYMOUS)
          {                                            
             $sql = "INSERT INTO ip_thanks_2 (post_id, topic_id, user_poster, user_id, thanks_time)
                    VALUES(".$_REQUEST['p'].", ".$_REQUEST['t'].",".$_REQUEST['poster'].",".$userdata['user_id'].", ".time().")";
             if ( !($result = $db->sql_query($sql)) )
             {
                message_die(GENERAL_ERROR, "No se actualiza la tabla thanks2", '', __LINE__, __FILE__, $sql);
             }                                                                                                        
          }
         }          
          $sql = "SELECT user_id, thanks_time
                  FROM ip_thanks_2
                  WHERE post_id =". $postrow[$i]['post_id'];

          if ( !($result = $db->sql_query($sql)) )
          {
              message_die(GENERAL_ERROR, "No se puede obtener datos de gracias", '', __LINE__, __FILE__, $sql);
          } 
          $j=0; 
          $num_agrad = "";
          $cuantos = $db->sql_numrows($result);
          while($gracias = $db->sql_fetchrow($result))       
          {   
            $j++;       
            $agradecido = colorize_username($gracias['user_id']);                                                  
            $nom_gracias .= '<span class="gensmall">' .$agradecido."(".create_date_ip($forma_tiem, $gracias['thanks_time'], $board_config['board_timezone']).")</span>";    
            $nom_gracias .=  ($cuantos > 1 && $cuantos > $j) ? ", " : ""; 
          }  
          $sql = "SELECT user_poster
                  FROM ip_thanks_2
                  WHERE user_poster =". $postrow[$i]['poster_id'];

          if ( !($result = $db->sql_query($sql)) )
          {
              message_die(GENERAL_ERROR, "No se puede obtener datos de gracias", '', __LINE__, __FILE__, $sql);
          }
          if($db->sql_numrows($result))
          {
           
              $num_agrad =  "<br />Agradecimientos recibidos: ".$db->sql_numrows($result);
          }   
            
          $lectura_gracias = ($userdata['user_id'] != $postrow[$i]['poster_id'])? "Agradecimientos a " .  colorize_username($postrow[$i]['poster_id']) : "Has recibido agradecimientos";
          $lectura_gracias .= " por este post de:";                                                                                                                           
      }             
          
#
#-----[ BUSCAR / FIND ]------------------------------------------
#

$template->assign_block_vars('postrow', array(

#
#-----[ AÑADIR DESPUES / AFTER ADD ]------------------------------------------
#
                                              
            'U_THANKS_2' =>  append_sid('viewtopic.'. PHP_EXT .'?mode=thanks_2&amp;f='.$forum_id .'&amp;t='.$topic_id .'&amp;poster='.$postrow[$i]['poster_id'].'&amp;p='.$post_id.'#p'.$post_id),
            'THANKS_IMG_2' => ($boton_gra) ? $images['thanks'] : "",
            'THANKS_POSTER' => $lectura_gracias,  
            'LISTA_GRACIAS' => $nom_gracias,
            'NO_BOTON' =>   ($boton_gra && $userdata['user_id'] != $postrow[$i]['poster_id'] ) ? true : false, 
            'VECES_AGRAD' => $num_agrad, 
            
#
#-----[ ABRIR / OPEN ]------------------------------------------
#
templates/mg_themes/viewtopic_body.tpl

#
#-----[ BUSCAR / FIND ]------------------------------------------
#
            <!-- END switch_poster_info -->
            
#
#-----[ AÑADIR DESPUES / AFTER ADD ]------------------------------------------
#

            {postrow.VECES_AGRAD}  


#
#-----[ BUSCAR / FIND ]------------------------------------------
#
                {postrow.ALBUM_IMG}  
            </div>
            
#
#-----[ AÑADIR DESPUES / AFTER ADD ]------------------------------------------
#

 <!-- IF postrow.NO_BOTON --><a href="{postrow.U_THANKS_2}"><img src="{postrow.THANKS_IMG_2}" alt="Agradecer contribución" title="Agradecer contribución" width="62" /></a><!-- ENDIF -->   

#
#-----[ BUSCAR / FIND ]------------------------------------------
#
            <a href="{U_BACK_BOTTOM}"><img src="{IMG_ARD}" alt="{L_BACK_BOTTOM}" title="{L_BACK_BOTTOM}" /></a>   
        </div>
        
#
#-----[ AÑADIR DESPUES / AFTER ADD ]------------------------------------------
#

<!-- IF postrow.LISTA_GRACIAS -->
<tr><th colspan="3" align="left">{postrow.THANKS_POSTER}</th></tr> 
<tr><td colspan="3" class="row-post" valign="top" align="left"><span class="gensmall">{postrow.thanks.THANKS}&nbsp;</span>
{postrow.LISTA_GRACIAS}
        </td></tr>
<tr><td>
</td></tr>     
<!-- ENDIF -->


Saludos! Nos leemos.
  #2 (permalink)  
Antiguo 11/03/2011, 20:23
 
Fecha de Ingreso: enero-2010
Mensajes: 2
Antigüedad: 14 años, 3 meses
Puntos: 0
Exclamación Respuesta: Simular boton de gracias de VBulletin en Icy Phoenix 1.3.0.53

Saludos a todos! Espero esten bien. a un año de haber publicado el topic nisiquiera 1 sola respuesta. no es que este haciendo spam. Pero si recordarles que he estado al pendiente de uqe alguien me heche un cable, alguna ayuda o lo que se le parezca en este tema.

Disculpen, pero es que aun no he podido hacer nada!

Etiquetas: gracias, phpbb, simular, vbulletin, botones
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:14.