Ultimas Actividades [Bloque by leo]Buenas noches a todos amigos de spirate! En esta ocacion les vengo a presentar mi primer aporte al foro! :P
En el foro estoy hace rato pero no habia posteado nada debido a que he estado muy ocupado (Mentira :D)
Primero que nada quiero aclarar que no se si esta aportado esto! sinceramente busque por lados y no encontre nada, solo la seccion ultimas actividades!
Este nuevo aporte se basa en un bloque para la pagina principal, basado en el mod de Fede y *******
http://www.spirate.net/foro/mods-v2-3/(mod)-ultimas-actividades-url-amigable-(update-con-comunidades)/Aclaro algo, ese mod de Fedex y ******* se basa en una seccion en la que se muestran las ultimas acticidades (Comentarios, Post, Puntos, Favoritos, Muros), mi aporte es un bloque con el mismo contenido :D
Creditos!Fedex & ******* - Por hacer el mod en el cual me base -
Leo - Por hacerlo bloque -
Bueno vamos a lo importante!
Primero unas imagenes!



La Demo! www.*********.net
:zs: 1. Abrimos nuestro index.template.php (Themes/Tu Theme)
Buscamos...
<link rel="stylesheet" type="text/css" href="'.$settings['theme_url'].'/estilos-sp.css"/>
y debajo de ese codigo agregamos el siguiente...
<link rel="stylesheet" type="text/css" href="'.$settings['theme_url'].'/actividades.css"/>
:zs: 2. Abrimos nuestro acciones-sp-1.1.js (Theme/Tu Theme)
Agregamos al final del archivo...
$(document).ready(function()
{
$(".tab_act").hide();
$("ul.actividad li:first").addClass("active").show();
$(".tab_act:first").show();
$("ul.actividad li").click(function()
{
$("ul.actividad li").removeClass("active");
$(this).addClass("active");
$(".tab_act").hide();
var activeTab = $(this).find("a").attr("href");
$(activeTab).fadeIn();
return false;
});
});
:zs: 3. Abrimos nuestro Recent.template.php (Themes/Tu Theme)
Buscamos por...
<!-- fin de estadisticas -->';
Y debajo de eso agregamos lo siguiente...
//Ultimas Actividades by leo
echo'<div style="width: 450px; margin-left:50px;" class="perfil-content general">
<div class="clearfix" style="margin-top:8px;">
<ul class="actividad">
<li><a href="#tab1">Comentarios</a></li>
<li><a href="#tab2">Puntos</a></li>
<li><a href="#tab3">Favoritos</a></li>
<li><a href="#tab4">Post</a></li>
<li><a href="#tab5">Muros</a></li>
</u>
</div>
</div>
<div class="tab_container" style="margin-left:66px;">
<div id="tab1" class="tab_act">';
echo'<div class="info-actividad">Actividad en Comentarios</div>';
comentariosvivo();
echo '</div>
<div id="tab2" class="tab_act">';
echo'<div class="info-actividad">Actividad en Puntos</div>';
puntosvivo();
echo '</div>
<div id="tab3" class="tab_act">';
echo'<div class="info-actividad">Actividad en favoritos</div>';
favoritosvivo();
echo '</div>
<div id="tab4" class="tab_act">';
echo'<div class="info-actividad">Actividad en Post</div>';
postsvivo();
echo '</div>
<div id="tab5" class="tab_act">';
echo'<div class="info-actividad" style="margin-bottom:8px">Actividad en Muros</div>';
$request2 = db_query("
SELECT c.comment, c.date, c.ID_COMMENT, c.ID_MEMBER AS ID_COMENTADOR, m1.memberName AS nombrecomentador, m2.avatar as imagenuser,c.COMMENT_MEMBER_ID AS ID_MURO_USUARIO, m2.memberName AS nombremuro
FROM (smf_profile_comments AS c, smf_members AS m1, smf_members AS m2)
WHERE c.ID_MEMBER = m1.ID_MEMBER
AND c.COMMENT_MEMBER_ID = m2.ID_MEMBER
ORDER BY c.ID_COMMENT DESC
LIMIT 7", __FILE__, __LINE__);
echo'';
while($row2 = mysql_fetch_assoc($request2)){
echo'<table cellspacing="0" cellpadding="0" border="0" width="100%">
<tr>
<td width="7%"><img src="'.$row2['imagenuser'].' " width="60" height="50"></td>
<td width="93%">
<table><tbody><tr><td><div style="clear: left; float: left; height: 29px; width: auto;">
<a style="font-weight: bold; color: rgb(59, 89, 152); font-size: 13px;" href="' .$scripturl. '?action=profile;sa=' .$row2['nombrecomentador'] . '">' .$row2['nombrecomentador'] . '</a> comentó en el muro de <span class="namemen2"> <a style="font-weight: bold; color: rgb(59, 89, 152); font-size: 13px;" href="' .$boarurl. '?action=profile;user=' .$row2['nombremuro'] . '">' .$row2['nombremuro'] . '</a> </span>:
<br /> <span class="hoora">El día ' . timeformat($row2['date']) . '</span>
</div></td><td valign="top">
<div style="clear: left; float: left; width: auto;"> ' . parse_bbc($row2['comment']) . '</div></td></tr></tbody></table>
</td>
</tr>
</table>
<hr style="margin: 6px 0px;" class="divider">
';
}
echo'</div>';
echo '</div>
</div>
';
¡ATENCION! si lo quieren poner en algun otro lado solo deben tener en cuenta de que antes de agregar el codigo aya un '; y si no lo tiene le agregan al final '; y cuando comienza todo el bloque echo'
:zs: 4. En el mismo archivo [Recent.template.php (Themes/Tu Theme)]
Agregamos antes de...
?>
esto...
function comentariosvivo()
{
global $context, $settings, $scripturl, $txt, $db_prefix, $ID_MEMBER;
global $user_info, $modSettings, $func;
$rs = db_query("SELECT c.id_post, c.id_coment, m.subject, m.ID_TOPIC, c.id_user, mem.ID_MEMBER, mem.RealName, mem.avatar, mem.memberName
FROM (smf_comentarios AS c, smf_messages AS m, smf_members AS mem)
WHERE id_post = m.ID_TOPIC AND c.id_user = mem.ID_MEMBER
ORDER BY c.id_coment DESC
LIMIT 7", __FILE__, __LINE__);
$context['comentarios25'] = array();
while ($row = mysql_fetch_assoc($rs))
$context['comentarios25'][] = array(
'id_coment' => $row['id_coment'],
'titulo' => $row['subject'],
'ID_TOPIC' => $row['ID_TOPIC'],
'memberName' => $row['memberName'],
'RealName' => $row['RealName'],
'avatar' => $row['avatar'],
);
mysql_free_result($rs);echo'';
foreach ($context['comentarios25'] as $coment25){
echo '<div class="noticia"><table cellspacing="0" cellpadding="0" border="0" width="100%">
<tbody><tr>
<td style="width: 40px;"><img style="width: 40px; height: 40px;" src="'. $coment25['avatar'] .'"></td>
<td style="width: 730px;">
<div class="nombre"><b><a href="', $scripturl, '?action=profile;user='. $coment25['memberName'] .'">'. $coment25['RealName'] .'</a></b> comento el post <a href="', $scripturl, '?topic='. $coment25['ID_TOPIC'] .'#cmt_'. $coment25['id_coment'] .'">'. $coment25['titulo'] .'</a></div></td></tr></tbody></table></div>';
}
}
function puntosvivo()
{
global $context, $settings, $scripturl, $txt, $db_prefix, $ID_MEMBER;
global $user_info, $modSettings, $func;
$rs = db_query("SELECT p.id, p.id_member,p.id_post, p.amount, m.ID_MEMBER, m.avatar, m.memberName,ms.ID_TOPIC,ms.subject
FROM ({$db_prefix}puntos as p, {$db_prefix}members as m, {$db_prefix}messages as ms)
WHERE p.id_member = m.ID_MEMBER AND ms.ID_MEMBER
AND p.id_post = ms.ID_TOPIC
ORDER BY p.id DESC
LIMIT 7", __FILE__, __LINE__);
$context['pensp'] = array();
while ($row = mysql_fetch_assoc($rs))
$context['pensp'][] = array(
'ID_MEMBER' => $row['ID_MEMBER'],
'memberName' => $row['memberName'],
'cantidad' => $row['amount'],
'subject' => $row['subject'],
'ID_TOPIC' => $row['ID_TOPIC'],
'avatar' => $row['avatar'],
);
mysql_free_result($rs);
foreach ($context['pensp'] as $pensp){
echo'<div class="noticia"><table cellspacing="0" cellpadding="0" border="0" width="100%">
<tbody><tr>
<td style="width: 40px;"><img style="width: 40px; height: 40px;" src="',$pensp['avatar'],'"></td>
<td style="width: 730px;">
<div class="nombre">
<a href="/?action=profile;user=',$pensp['memberName'],'"><b>',$pensp['memberName'],'</b></a> dio ',$pensp['cantidad'],' puntos al post <a href="/?topic=',$pensp['ID_TOPIC'],'">',$pensp['subject'],'</a></div></td></tr></tbody></table></div>
';}}
function favoritosvivo()
{
global $context, $settings, $scripturl, $txt, $db_prefix, $ID_MEMBER;
global $user_info, $modSettings, $func;
$rs = db_query("SELECT f.id, f.id_member, f.id_topic, m.avatar, m.ID_MEMBER,m.memberName,ms.ID_TOPIC, ms.subject
FROM ({$db_prefix}bookmarks as f, {$db_prefix}members as m, {$db_prefix}messages as ms)
WHERE f.id_member = m.ID_MEMBER AND ms.ID_MEMBER
AND f.id_topic = ms.ID_TOPIC
ORDER BY f.id DESC
LIMIT 7", __FILE__, __LINE__);
$context['favoritosvivo'] = array();
while ($row = mysql_fetch_assoc($rs))
$context['favoritosvivo'][] = array(
'ID_MEMBER' => $row['ID_MEMBER'],
'memberName' => $row['memberName'],
'subject' => $row['subject'],
'ID_TOPIC' => $row['ID_TOPIC'],
'avatar' => $row['avatar'],
);
mysql_free_result($rs);
foreach ($context['favoritosvivo'] as $favi){
echo'<div class="noticia"><table cellspacing="0" cellpadding="0" border="0" width="100%">
<tbody><tr>
<td style="width: 40px;"><img style="width: 40px; height: 40px;" src="',$favi['avatar'],'"></td>
<td style="width: 730px;">
<div class="nombre">
<a href="/?action=profile;user=',$favi['memberName'],'"><b>',$favi['memberName'],'</b></a> agrego a favoritos el post <a href="/?topic=',$favi['ID_TOPIC'],'">',$favi['subject'],'</a></div></td></tr></tbody></table></div>
';}}
function postsvivo()
{
global $context, $settings, $scripturl, $txt, $db_prefix, $ID_MEMBER;
global $user_info, $modSettings, $func;
$request=db_query("
SELECT m.ID_MEMBER, m.ID_TOPIC, subject, name, t.ID_BOARD, posterName, puntos, posterTime, a.avatar, a.ID_MEMBER
FROM {$db_prefix}messages as m, {$db_prefix}boards as c, {$db_prefix}topics as t, {$db_prefix}members as a
WHERE c.ID_BOARD=m.ID_BOARD AND t.ID_TOPIC=m.ID_TOPIC AND t.isSticky = 0 {$cat_condition} AND m.ID_MEMBER = a.ID_MEMBER
ORDER BY m.ID_TOPIC DESC
LIMIT 7", __FILE__, __LINE__);
while($posts = mysql_fetch_array($request))
{
$context['postsvivo'][] = array(
'ID_MEMBER' => $posts['ID_MEMBER'],
'id' => $posts['ID_TOPIC'],
'title' => $posts['subject'],
'category' => $posts['name'],
'user' => $posts['posterName'],
'avatar' => $posts['avatar'],
);
}
mysql_free_result($request);
foreach ($context['postsvivo'] as $povi)
{
echo'<div class="noticia"><table cellspacing="0" cellpadding="0" border="0" width="100%">
<tbody><tr>
<td style="width: 40px;"><img style="width: 40px; height: 40px;" src="',$povi['avatar'],'"></td>
<td style="width: 730px;"><div class="nombre">
<a href="/?action=profile;user=',$povi['user'],'"><b>',$povi['user'],'</b></a> publico <a href="/?topic=',$povi['id'],'">',$povi['title'],'</a></div><br></td></tr></tbody></table></div>';
}
}
:zs: 5. Subir los siguientes archivos e imagenes que dejo adjuntas a sus respectivas carpetas...
actividades.css a Themes/Tu Theme
bg-menu-li.gif a Themes/Tu Theme/images
Bueno ahora unas pequeñas aclaraciones para aquellos usuarios que no tienen los muros:
OPCION 1!Bueno les dare dos opciones, aunque hay mas, para mi son las dos mas importantes jeje :P!
Bueno esta opcion consta de agregar los muros... a continuacion les dare 3 muros posteados en sp, entre ellos un perfil con muro de comentarios:
:zs: Perfil con muro de comentarios:
http://spirate.net/foro/mods-v2-3/perfil-con-muro-de-comemtarios-(mod)/ by *******
:zs: Perfil igual a Facebook:
http://www.spirate.net/foro/mods-v2-3/(mod)-muro-fb-(v1-0)/ by fivezone
:zs: Muros 1.0:
http://spirate.net/foro/mods-v2-3/muros-1-0(mod)/ by Lantude
OPCION 2!Bueno ahora les dare la segunda opcion, la cual consta de eliminar la seccion de muros... Para ello hagan lo siguiente...
:zs: 1. Abren el Recent.template.php (Themes/Tu Theme)
Buscan por...
<li><a href="#tab5">Muros</a></li>
Esa linea la eliminan...
:zs: 2. En el mismo archivo [Recent.template.php (Themes/Tu Theme)]
Buscan por...
<div id="tab5" class="tab_act">';
y seleccionan hasta...
echo '</div>
Lo seleccionado se debra eliminar...
y listo eso es todo, seccion muros del bloque eliminada!
Bueno espero les aya gustado, sus puntitos y espero ser lo mas explicativo posible... :biggrin:Desde ya muchas gracias por pasar! :hi: