Deprecated: str_replace(): Passing null to parameter #3 ($subject) of type array|string is deprecated in /var/www/mybb-es.com/html/inc/class_language.php on line 201
[1.6.4][Tutorial] Mostrar Avatares en "Who is Online Today?"
Páginas (2): 1 2   
Jaizu   21 Nov, 2011, 2:33 pm
#1
Lograremos esto:

[Imagen: onlineik.png]

Se lo he triturado al máximo para que estea bastante fácil =P

Eligen su Tema en plantillas, en el Admin CP, van a Quién está en línea - Plantillas
Cambian la plantilla online por:

Código PHP:
<?php 
<html>
<
head>
<
title>{$mybb->settings['bbname']} - {$lang->users_online}</title>
{
$headerinclude}
{
$refresh}
</
head>
<
body>
{
$header}
{
$multipage}
<
table border="0" cellspacing="{$theme['borderwidth']}" cellpadding="{$theme['tablespace']}" class="tborder">
<
tr>
<
td class="thead" colspan="4"><strong>{$lang->users_online}</strong></td>
</
tr>
<
tr>
<
td class="tcat" align="center" width="5%"></td>
<
td class="tcat" align="center"><a href="online.php?sortby=username"><span class="smalltext"><strong>{$lang->on_username}</strong></span></a></td>
<
td class="tcat" align="center"><a href="online.php?sortby=time"><span class="smalltext"><strong>{$lang->time}</strong></span></a></td>
<
td class="tcat" width="50%"><a href="online.php?sortby=location"><span class="smalltext"><strong>{$lang->location}</strong></span></a></td>
</
tr>
{
$online_rows}
<
tr>
<
td class="tfoot" colspan="4" align="right"><span class="smalltext"><strong><a href="online.php?action=today">{$lang->online_today}</a> | <a href="online.php">{$lang->refresh_page}</a></strong></span></td>
</
tr>
</
table>
<
br />
{
$multipage}
{
$footer}
</
body>
</
html>

Y la online_row por:
Código PHP:
<?php 
<tr>
<
td align="center" class="trow1">{$user_avatar}</td>
<
td class="trow1">{$online_name}{$user_ip}</td>
<
td align="center" class="trow2">{$online_time}</td>
<
td class="trow1" width="50%">{$location}</td>
</
tr>

En su FTP, sustituyen el archivo /inc/functions_online.php por este:
[attachment=1314]

Saludos =D
Gustavo R.   21 Nov, 2011, 2:47 pm
#2
haha buena idea de modificación
Omar G.   21 Nov, 2011, 7:45 pm
#3
Podrias colocas el codigo exacto a modificar en el archivo php?
InfraWorld   21 Nov, 2011, 9:04 pm
#4
(21 Nov, 2011, 7:45 pm)Sama34 escribió: Podrias colocas el codigo exacto a modificar en el archivo php?

El Codigo que hay que Modificar en el functions_online.php

Es este:
Código:
function build_wol_row($user)
{
    global $mybb, $lang, $templates, $theme, $session;

    // We have a registered user
    if($user['uid'] > 0)
    {
        // Only those with "canviewwolinvis" permissions can view invisible users
        if($user['invisible'] != 1 || $mybb->usergroup['canviewwolinvis'] == 1 || $user['uid'] == $mybb->user['uid'])
        {
            // Append an invisible mark if the user is invisible
            if($user['invisible'] == 1)
            {
                $invisible_mark = "*";
            }
            else
            {
                $invisible_mark = '';
            }

            $user['username'] = format_name($user['username'], $user['usergroup'], $user['displaygroup']);
            $online_name = build_profile_link($user['username'], $user['uid']).$invisible_mark;
        }
    }

Cambiar por este:

Código:
function build_wol_row($user)
{
    global $db, $mybb, $lang, $templates, $theme, $session;

    // We have a registered user
    if($user['uid'] > 0)
    {
        // Only those with "canviewwolinvis" permissions can view invisible users
        if($user['invisible'] != 1 || $mybb->usergroup['canviewwolinvis'] == 1 || $user['uid'] == $mybb->user['uid'])
        {
            // Append an invisible mark if the user is invisible
            if($user['invisible'] == 1)
            {
                $invisible_mark = "*";
            }
            else
            {
                $invisible_mark = '';
            }

            $query = $db->simple_select("users", "*", "uid='{$user['uid']}'");
            $us = $db->fetch_array($query);

            if ($us['avatar'] != "")
            {
                $user_avatar = '<img src="'.$us['avatar'].'" alt="Avatar" title="'.$user['username'].' \'s Avatar" width="35px" height="35px">';
            }
            else
            {
                $user_avatar = '<img src="images/default_avatar.gif" alt="Avatar" title="'.$user['username'].' \'s Avatar" width="35px" height="35px">';
            }

            $user['username'] = format_name($user['username'], $user['usergroup'], $user['displaygroup']);
            $online_name = build_profile_link($user['username'], $user['uid']).$invisible_mark;
        }
    }
::Leon::   31 Oct, 2012, 4:45 pm
#5
Está buena la modificación, pero es para "Quién está en línea" y no para "Quién estuvo en línea hoy".
Agradezco a jaizu e infraworld Smile

PD: Sabrán cómo agregarle un avatar por defecto a los invitados? Tongue
Omar G.   1 Nov, 2012, 1:37 am
#6
Tendras que modificar el codigo para revisar si el usuario es invitado y darle un avatar predeterminado.
stiffler   1 Nov, 2012, 7:29 am
#7
Gracias muí interesante
::Leon::   1 Nov, 2012, 9:43 am
#8
(1 Nov, 2012, 1:37 am)Omar G. escribió: Tendras que modificar el codigo para revisar si el usuario es invitado y darle un avatar predeterminado.

Lamentablemente no sé de php, por eso pregunté... pero bueno.
InfraWorld   1 Nov, 2012, 9:53 am
#9
(31 Oct, 2012, 4:45 pm)::Leon:: escribió: Está buena la modificación, pero es para "Quién está en línea" y no para "Quién estuvo en línea hoy".
Agradezco a jaizu e infraworld Smile

PD: Sabrán cómo agregarle un avatar por defecto a los invitados? Tongue

Aqui te dejo un Plugin:
http://mods.mybb.com/view/default-avatar
::Leon::   4 Nov, 2012, 6:24 pm
#10
Ese plugin ya la tengo y no sirve para eso xD
Bueno, no importa.
Páginas (2): 1 2   
  
Powered By MyBB, © 2002-2024 MyBB Group.
Made with by Curves UI.