Users Online Today

Iniciado por candidosa2, 05 de Janeiro de 2008, 20:43

Tópico anterior - Tópico seguinte

0 Membros e 7 Visitantes estão a ver este tópico.

candidosa2

sources/BoardIndex.php

Pesquisar
$context['num_users_online'] = count($context['users_online']) + $context['num_users_hidden'];

Adicionar
// Load the users online today.
$nowdate = @getdate(forum_time(false));
$midnight = mktime(0, 0, 0, $nowdate['mon'], $nowdate['mday'], $nowdate['year']) - ($modSettings['time_offset'] * 3600);

$s = strpos($user_info['time_format'], '%S') === false ? '' : ':%S';
if (strpos($user_info['time_format'], '%H') === false && strpos($user_info['time_format'], '%T') === false)
$time_fmt = '%I:%M' . $s . ' %p';
else
$time_fmt = '%H:%M' . $s;

$result = db_query("
SELECT
mem.ID_MEMBER, mem.lastLogin, mem.realName, mem.memberName, mem.showOnline,
mg.onlineColor, mg.ID_GROUP, mg.groupName
FROM {$db_prefix}members AS mem
LEFT JOIN {$db_prefix}membergroups AS mg ON (mg.ID_GROUP = IF(mem.ID_GROUP = 0, mem.ID_POST_GROUP, mem.ID_GROUP)) WHERE mem.lastLogin >= $midnight", __FILE__, __LINE__);

$context['num_hidden_users_online_today'] = 0;
$context['users_online_today'] = array();
$context['list_users_online_today'] = array();

while ($row = mysql_fetch_assoc($result))
{
if (empty($row['showOnline']))
{
$context['num_hidden_users_online_today'] = $context['num_hidden_users_online_today'] + 1;
if (!allowedTo('moderate_forum')) continue;
}

$userday = strftime('%d', forum_time(true));
$loginday = strftime('%d', forum_time(true, $row['lastLogin']));
$yesterday = $userday == $loginday ? '' : $txt['uot_yesterday'];

$lastLogin = $yesterday . strftime($time_fmt, forum_time(true, $row['lastLogin']));
$title = ' title="' . $lastLogin . '"';

// Some basic color coding...
if (!empty($row['onlineColor']))
$link = '<a href="' . $scripturl . '?action=profile;u=' . $row['ID_MEMBER'] . '"' . $title . ' style="color: ' . $row['onlineColor'] . ';">' . $row['realName'] . '</a>';
else
$link = '<a href="' . $scripturl . '?action=profile;u=' . $row['ID_MEMBER'] . '"' . $title . '>' . $row['realName'] . '</a>';

$is_buddy = in_array($row['ID_MEMBER'], $user_info['buddies']);
if ($is_buddy)
{
$link = '<b>' . $link . '</b>';
}

$context['users_online_today'][$row['lastLogin'] . $row['memberName']] = array(
'id' => $row['ID_MEMBER'],
'username' => $row['memberName'],
'name' => $row['realName'],
'group' => $row['ID_GROUP'],
'href' => $scripturl . '?action=profile;u=' . $row['ID_MEMBER'],
'link' => $link,
'is_buddy' => $is_buddy,
'hidden' => empty($row['showOnline']),
);

$context['list_users_online_today'][$row['lastLogin'] . $row['memberName']] = empty($row['showOnline']) ? '<i>' . $link . '</i>' : $link;
}
mysql_free_result($result);

krsort($context['users_online_today']);
krsort($context['list_users_online_today']);

$context['num_users_online_today'] = count($context['users_online_today']);
if (!allowedTo('moderate_forum'))
{
$context['num_users_online_today'] = $context['num_users_online_today'] + $context['num_hidden_users_online_today'];
}



sources/Stats.php

Pesquisar
$context['online_today'] = (int) $context['online_today'];

aDICIONAR
// Total members online today
$frag = explode('-', strftime('%Y-%m-%d', time()));
$midnight = forum_time(false, mktime(0, 0, 0, (int) $frag[1], (int) $frag[2], (int) $frag[0]));
$result = db_query("
SELECT
COUNT(*)
FROM {$db_prefix}members
WHERE lastLogin >= $midnight", __FILE__, __LINE__);
list ($context['total_users_online_today']) = mysql_fetch_row($result);



Themes/Stats.template.phP

Pesquisar
<td nowrap="nowrap">', $txt['users_online_today'], ':</td>
<td align="right">', $context['online_today'], '</td>';


Trocar por
<td nowrap="nowrap">', $txt['users_online_today'], ':</td>
<td align="right">', $context['online_today'], '</td>
</tr><tr>
<td nowrap="nowrap">', $txt['uot_total_users_online_today'], ':</td>
<td align="right">', $context['total_users_online_today'], '</td>';


BoardIndex.template.php

Pesquisar por
// If they are logged in, but SP1 style information is off... show a personal message bar.

Depois colocar este codigo

// Users online today
   echo '
   <tr>
      <td class="catbg" colspan="2"><b>', $txt['uot_users_online_today_title'], ' (', $context['num_users_online_today'], ')</b></td>
   </tr><tr>
      <td class="windowbg" width="20" valign="middle" align="center">
         <img src="', $settings['images_url'], '/icons/online.gif" alt="', $txt[158], ' ', $txt['uot_users_online_today_title'], '" border="0" />
      </td>
      <td class="windowbg2" width="100%">';

   echo '
         <div class="smalltext">';

   echo   $context['num_users_online_today'] == 1 ? $txt['uot_user_online_today'] : $txt['uot_users_online_today'];

   // Assuming there ARE users online... each user in users_online has an id, username, name, group, href, and link.
   if (!empty($context['users_online_today']))
      echo ':<br />', implode(', ', $context['list_users_online_today']);

   echo '
            <br />', $context['show_stats'] && !$settings['show_sp1_info'] ? '
            <a href="' . $scripturl . '?action=stats">' . $txt['smf223'] . '</a>' : '', '
         </div>
      </td>
   </tr>';



Modifications.portuguese_pt.php

Pesquisar por
?>

Colocar antes este código


$txt['uot_user_online_today']='Utilizador Online Hoje';
$txt['uot_users_online_today']='Utilizadores Online Hoje';
$txt['uot_total_users_online_today']='Recorde de Utilizadores Online';
$txt['uot_yesterday']='Ontem';

  ou

$txt['uot_total_users_online_today']='Membros Online Hoje';
$txt['uot_yesterday']='Ontem: ';
$txt['uot_total']='ToTal';
$txt['uot_visible']='Normal';
$txt['uot_hidden']='Escondido';
$txt['uot_users_online_today_title']='Membros Que passaram porque aqui Hoje';
$txt['uot_total_users_online_today']='Membros Online Hoje';
$txt['uot_yesterday']='Ontem: ';
$txt['uot_total']='Total';
$txt['uot_visible']='Normal';
$txt['uot_hidden']='Escondido';



languages/Stats.portuguese_pt.php

$txt['users_online_today'] = 'Hoje Online';
$txt['num_hits'] = 'Total de páginas vistas';
$txt['average_hits'] = 'Média de exibições de página por dia';


Mais detalhes coloque aqui

candidosa2

#1

sources/BoardIndex.php

Pesquisar
$context['num_users_online'] = count($context['users_online']) + $context['num_users_hidden'];

Adicionar
// Load the users online today.
$nowdate = @getdate(forum_time(false));
$midnight = mktime(0, 0, 0, $nowdate['mon'], $nowdate['mday'], $nowdate['year']) - ($modSettings['time_offset'] * 3600);

$s = strpos($user_info['time_format'], '%S') === false ? '' : ':%S';
if (strpos($user_info['time_format'], '%H') === false && strpos($user_info['time_format'], '%T') === false)
$time_fmt = '%I:%M' . $s . ' %p';
else
$time_fmt = '%H:%M' . $s;

$result = db_query("
SELECT
mem.ID_MEMBER, mem.lastLogin, mem.realName, mem.memberName, mem.showOnline,
mg.onlineColor, mg.ID_GROUP, mg.groupName
FROM {$db_prefix}members AS mem
LEFT JOIN {$db_prefix}membergroups AS mg ON (mg.ID_GROUP = IF(mem.ID_GROUP = 0, mem.ID_POST_GROUP, mem.ID_GROUP)) WHERE mem.lastLogin >= $midnight", __FILE__, __LINE__);

$context['num_hidden_users_online_today'] = 0;
$context['users_online_today'] = array();
$context['list_users_online_today'] = array();

while ($row = mysql_fetch_assoc($result))
{
if (empty($row['showOnline']))
{
$context['num_hidden_users_online_today'] = $context['num_hidden_users_online_today'] + 1;
if (!allowedTo('moderate_forum')) continue;
}

$userday = strftime('%d', forum_time(true));
$loginday = strftime('%d', forum_time(true, $row['lastLogin']));
$yesterday = $userday == $loginday ? '' : $txt['uot_yesterday'];

$lastLogin = $yesterday . strftime($time_fmt, forum_time(true, $row['lastLogin']));
$title = ' title="' . $lastLogin . '"';

// Some basic color coding...
if (!empty($row['onlineColor']))
$link = '<a href="' . $scripturl . '?action=profile;u=' . $row['ID_MEMBER'] . '"' . $title . ' style="color: ' . $row['onlineColor'] . ';">' . $row['realName'] . '</a>';
else
$link = '<a href="' . $scripturl . '?action=profile;u=' . $row['ID_MEMBER'] . '"' . $title . '>' . $row['realName'] . '</a>';

$is_buddy = in_array($row['ID_MEMBER'], $user_info['buddies']);
if ($is_buddy)
{
$link = '<b>' . $link . '</b>';
}

$context['users_online_today'][$row['lastLogin'] . $row['memberName']] = array(
'id' => $row['ID_MEMBER'],
'username' => $row['memberName'],
'name' => $row['realName'],
'group' => $row['ID_GROUP'],
'href' => $scripturl . '?action=profile;u=' . $row['ID_MEMBER'],
'link' => $link,
'is_buddy' => $is_buddy,
'hidden' => empty($row['showOnline']),
);

$context['list_users_online_today'][$row['lastLogin'] . $row['memberName']] = empty($row['showOnline']) ? '<i>' . $link . '</i>' : $link;
}
mysql_free_result($result);

krsort($context['users_online_today']);
krsort($context['list_users_online_today']);

$context['num_users_online_today'] = count($context['users_online_today']);
if (!allowedTo('moderate_forum'))
{
$context['num_users_online_today'] = $context['num_users_online_today'] + $context['num_hidden_users_online_today'];
}



sources/Stats.php
Pesquisar
$context['online_today'] = (int) $context['online_today'];

Adicionar
// Total members online today
$frag = explode('-', strftime('%Y-%m-%d', time()));
$midnight = forum_time(false, mktime(0, 0, 0, (int) $frag[1], (int) $frag[2], (int) $frag[0]));
$result = db_query("
SELECT
COUNT(*)
FROM {$db_prefix}members
WHERE lastLogin >= $midnight", __FILE__, __LINE__);
list ($context['total_users_online_today']) = mysql_fetch_row($result);



Themes/BoardIndex.template.php

Pesquisar...
', $txt['most_online_ever'], ': ', $modSettings['mostOnline'], ' (' , timeformat($modSettings['mostDate']), ')
</span>
</td>
</tr>';


[informacao]Codigo para colocar esta no primeiro topico pode pesquisar por esse codigo ou pelo que esta no primeiro topico[/informacao]


Themes/Stats.template.php

Pesquisar por
<td nowrap="nowrap">', $txt['users_online_today'], ':</td>
<td align="right">', $context['online_today'], '</td>';


Adicionar substituir por este
<td nowrap="nowrap">', $txt['users_online_today'], ':</td>
<td align="right">', $context['online_today'], '</td>
</tr><tr>
<td nowrap="nowrap">', $txt['uot_total_users_online_today'], ':</td>
<td align="right">', $context['total_users_online_today'], '</td>';



languages/Stats.portuguese_pt.php

Colocar este cod
$txt['users_online_today'] = 'Hoje Online';
$txt['num_hits'] = 'Total de páginas vistas';
$txt['average_hits'] = 'Média de exibições de página por dia';


andre-


candidosa2

[informacao]Tópico Actualiazado[/informacao]

tectonny

#4
Candido olha como que ficou o meu!

O que eu errei?

joguei aimagem para a pasta Themes/default/images


http://www.tectonny.com/forum/index.php?action=forum

candidosa2

Bem o teu forum nao abre veja bem sobre a questao

tectonny


Metron

nao consegui fazer no meu =/

issu so funciona com o template default?
pq na minha pasta theme do theme que eu uso nao tem alguns desses arquivos que vc manda adicionar neles.

candidosa2

teve algum erro
qual e foi o erro

Metron

essas arquivos ki vc disse pra edita nao tem eles na minha pasta do tema que uso,
so tem eles no tema default.

candidosa2

Podes colocar no default nao tem problemas
mais tens que ter este no teu themes

Teuthemes/BoardIndex.template.php

Metron

ok obrigado deu certo, + to com uma divida, olha a imagem em anexo como ki o meu fiko,

como eu escrevo la em cima onde tem o "10", escrever tipo "Membros que passaram por Aqui Hoje"
e otra duvida, quando eu estou na lingua em ingles nao aparece nada escrito, quanto ta na lingua portugues aparece "Utilizadores Online Hoje:" tem como na lingua ingles eu coloka tb? "Users Online Today"

obrigado.

candidosa2

o teu forum esta em pt ou esta En...
ponha ele em pt vai aparecer..

Metron

ele esta em pt, ai aperace escrito igual na imagem em anexo "Utilizadores Online Hoje:"
mas si eu mudo no  meu perfil pra en nao aparacese nada,
tem como eu escreve la no en "Users Online Today" ?

candidosa2

sim
aqui aonde vem isso


Modifications.portuguese_pt.php

Pesquisar por
Código:

?>


Colocar antes este código

Código:

$txt['uot_user_online_today']='Utilizador Online Hoje';
$txt['uot_users_online_today']='Utilizadores Online Hoje';
$txt['uot_total_users_online_today']='Recorde de Utilizadores Online';
$txt['uot_yesterday']='Ontem';


tens que colocar aqui Modifications.english.php