TOPIC IN WHO IS ON LINE

Con l'avvento della versione phpBB 3.1 Beta 2 e successive abbiamo rimosso tutte le MOD per sperimentare le estensioni.
Rispondi
Avatar utente
Darkman
Amministratore
Amministratore
Messaggi: 1204
Iscritto il: marzo 28, 2009, 11:04 pm

TOPIC IN WHO IS ON LINE

Messaggio da Darkman »

Bellissima MOD cui tenevo molto e sono davvero contento di averla messa.
Tutto su files in root
In pratica si visualizza il topic e la sezione che un utente sta leggendo o rispondendo.

Author
Username: izstas
Email: [email protected]

Files to Edit
viewonline.php,
language/en/common.php

Apri: viewonline.php

Cerca

Codice: Seleziona tutto

$logged_visible_online = $logged_hidden_online = $counter = 0;
Dopo aggiungi

Codice: Seleziona tutto

// BEGIN: Topic in "Who is online"
$topic_ids = $post_ids = $topic_post_ids = $topic_titles = array();
while ($row = $db->sql_fetchrow($result))
{
	if ($row['user_id'] != ANONYMOUS && !isset($prev_id[$row['user_id']]))
	{
		$view_online = false;
		if (!$row['session_viewonline'])
		{
			$view_online = ($auth->acl_get('u_viewonline')) ? true : false;
		}
		else
		{
			$view_online = true;
		}

		$prev_id[$row['user_id']] = 1;

		if (!$view_online)
		{
			continue;
		}
	}
	else if ($show_guests && $row['user_id'] == ANONYMOUS && !isset($prev_ip[$row['session_ip']]))
	{
		$prev_ip[$row['session_ip']] = 1;
	}
	else
	{
		continue;
	}

	preg_match('#^([a-z/]+)#i', $row['session_page'], $on_page);
	if (!sizeof($on_page))
	{
		$on_page[1] = '';
	}
	if (!in_array($on_page[1], array('viewtopic', 'posting')))
	{
		continue;
	}

	preg_match('#t=([0-9]+)#', $row['session_page'], $on_page);
	if (sizeof($on_page))
	{
		$topic_ids[] = $on_page[1];
		continue;
	}

	preg_match('#p=([0-9]+)#', $row['session_page'], $on_page);
	if (sizeof($on_page))
	{
		$post_ids[] = $on_page[1];
		continue;
	}
}

unset($prev_id, $prev_ip);

if (sizeof($topic_ids) || sizeof($post_ids))
{
	if (sizeof($post_ids))
	{
		$sql = 'SELECT topic_id, post_id FROM ' . POSTS_TABLE . ' WHERE ' . $db->sql_in_set('post_id', $post_ids);
		$post_result = $db->sql_query($sql);
		while ($row = $db->sql_fetchrow($post_result))
		{
			$topic_post_ids[$row['post_id']] = $row['topic_id'];
			$topic_ids[] = $row['topic_id'];
		}
		$db->sql_freeresult($post_result);
	}

	$sql = 'SELECT topic_id, topic_title FROM ' . TOPICS_TABLE . ' WHERE ' . $db->sql_in_set('topic_id', array_unique($topic_ids));
	$topic_result = $db->sql_query($sql);
	while ($row = $db->sql_fetchrow($topic_result))
	{
		$topic_titles[$row['topic_id']] = $row['topic_title'];
	}
	$db->sql_freeresult($topic_result);
}

$db->sql_rowseek(0, $result);
// END: Topic in "Who is online"

Trova

Codice: Seleziona tutto

$location = sprintf($user->lang['REPLYING_MESSAGE'], $forum_data[$forum_id]['forum_name']);
Rimpiazza con

Codice: Seleziona tutto

// BEGIN: Topic in "Who is online"
								preg_match('#t=([0-9]+)#', $row['session_page'], $on_page);
								preg_match('#p=([0-9]+)#', $row['session_page'], $on_page_p);
								if (sizeof($on_page) && isset($topic_titles[$on_page[1]]))
								{
									$location = sprintf($user->lang['REPLYING_MESSAGE_TOPIC'], $forum_data[$forum_id]['forum_name'], $topic_titles[$on_page[1]]);
									$location_url = append_sid("{$phpbb_root_path}viewtopic.$phpEx", 'f=' . $forum_id . '&t=' . $on_page[1]);
								}
								else if (sizeof($on_page_p) && isset($topic_post_ids[$on_page_p[1]]))
								{
									$location = sprintf($user->lang['REPLYING_MESSAGE_TOPIC'], $forum_data[$forum_id]['forum_name'], $topic_titles[$topic_post_ids[$on_page[1]]]);
									$location_url = append_sid("{$phpbb_root_path}viewtopic.$phpEx", 'f=' . $forum_id . '&p=' . $on_page_p[1]);
								}
								else
								{
									$location = sprintf($user->lang['REPLYING_MESSAGE'], $forum_data[$forum_id]['forum_name']);
								}
								// END: Topic in "Who is online"

Cerca

Codice: Seleziona tutto

$location = sprintf($user->lang['READING_TOPIC'], $forum_data[$forum_id]['forum_name']);
Rimpiazza con

Codice: Seleziona tutto

// BEGIN: Topic in "Who is online"
						preg_match('#t=([0-9]+)#', $row['session_page'], $on_page);
						preg_match('#p=([0-9]+)#', $row['session_page'], $on_page_p);
						if (sizeof($on_page) && isset($topic_titles[$on_page[1]]))
						{
							$location = sprintf($user->lang['READING_TOPIC_TOPIC'], $forum_data[$forum_id]['forum_name'], $topic_titles[$on_page[1]]);
							$location_url = append_sid("{$phpbb_root_path}viewtopic.$phpEx", 'f=' . $forum_id . '&t=' . $on_page[1]);
						}
						else if (sizeof($on_page_p) && isset($topic_post_ids[$on_page_p[1]]))
						{
							$location = sprintf($user->lang['READING_TOPIC_TOPIC'], $forum_data[$forum_id]['forum_name'], $topic_titles[$topic_post_ids[$on_page_p[1]]]);
							$location_url = append_sid("{$phpbb_root_path}viewtopic.$phpEx", 'f=' . $forum_id . '&p=' . $on_page_p[1]);
						}
						else
						{
							$location = sprintf($user->lang['READING_TOPIC'], $forum_data[$forum_id]['forum_name']);
						}
						// END: Topic in "Who is online"
Adesso aprite: language/it/common.php

Cerca (ma è una parte):

Codice: Seleziona tutto

'READING_TOPIC'				=> 
Nella riga successiva a capo mettere

Codice: Seleziona tutto

'READING_TOPIC_TOPIC'		=> 'Staleggendo il topic %2$s in %1$s',
Cerca il parziale

Codice: Seleziona tutto

'REPLYING_MESSAGE'			=> 
nella riga a capo mettere

Codice: Seleziona tutto

'REPLYING_MESSAGE_TOPIC'	=> 'Sta rispondendo al messaggio %2$s in %1$s',
Avatar utente
Darkman
Amministratore
Amministratore
Messaggi: 1204
Iscritto il: marzo 28, 2009, 11:04 pm

Re: TOPIC IN WHO IS ON LINE

Messaggio da Darkman »

Per il common it riporto le mie traduzioni

cercate

Codice: Seleziona tutto

'READING_TOPIC'            => 
 
Nel rigo successivo mettete

Codice: Seleziona tutto

'READING_TOPIC_TOPIC'      => 'Sta leggendo il topic %2$s in %1$s',
Cerca

Codice: Seleziona tutto

'REPLYING_MESSAGE'         => 
nel rigo successivo metti

Codice: Seleziona tutto

'REPLYING_MESSAGE_TOPIC'   => 'Sta rispondendo al messaggio nel topic %2$s in %1$s',
:ok:
Allegati
scrren.jpg
Avatar utente
systemcrack
V.I.P.
V.I.P.
Messaggi: 293
Iscritto il: maggio 21, 2010, 11:38 am
Contatta:

Re: TOPIC IN WHO IS ON LINE

Messaggio da systemcrack »

Davvero carina questa stavo proprio cercando qualche cosa del genere... Immagine


P.S.
Ho provato a montarla ma non mi da nulla... dovrei visualizzare la tabellina in fondo alla pagina index?
Se si cavolo non mi viene fuori!
eppure ho eseguito alla perfezione le tue istruzioni... d_bbio
Hai qualche consiglio da darmi per caso...?
Very Ignorant People
Avatar utente
plasma
Utenti registrati
Utenti registrati
Messaggi: 12
Iscritto il: maggio 29, 2010, 4:44 pm

Re: TOPIC IN WHO IS ON LINE

Messaggio da plasma »

systemcrack ha scritto:Davvero carina questa stavo proprio cercando qualche cosa del genere... Immagine


P.S.
Ho provato a montarla ma non mi da nulla... dovrei visualizzare la tabellina in fondo alla pagina index?
Se si cavolo non mi viene fuori!
eppure ho eseguito alla perfezione le tue istruzioni... d_bbio
Hai qualche consiglio da darmi per caso...?
lo vedi nella pagina degli utenti online, in pratica ti dice esattamente cosa sta faendo un utente.

ciauzzzzzzzz
Avatar utente
Darkman
Amministratore
Amministratore
Messaggi: 1204
Iscritto il: marzo 28, 2009, 11:04 pm

Re: TOPIC IN WHO IS ON LINE

Messaggio da Darkman »

plasma ha scritto:
systemcrack ha scritto:Davvero carina questa stavo proprio cercando qualche cosa del genere... Immagine


P.S.
Ho provato a montarla ma non mi da nulla... dovrei visualizzare la tabellina in fondo alla pagina index?
Se si cavolo non mi viene fuori!
eppure ho eseguito alla perfezione le tue istruzioni... d_bbio
Hai qualche consiglio da darmi per caso...?
lo vedi nella pagina degli utenti online, in pratica ti dice esattamente cosa sta faendo un utente.

ciauzzzzzzzz
Esatto: ti dice esattamente quale topic sta leggendo o rispondendo.
Mi raccomando...edita il fili common.phP solo con notepaD++

Ciao plasma! Che piacere!
Avatar utente
systemcrack
V.I.P.
V.I.P.
Messaggi: 293
Iscritto il: maggio 21, 2010, 11:38 am
Contatta:

Re: TOPIC IN WHO IS ON LINE

Messaggio da systemcrack »

Ok grazie ragazzi, non ci sarei mai arrivato da solo! Per fortuna avevo lasciato tutto montato... e ho controllato subito e funziona! uuu
Bella li!
Very Ignorant People
D_evil91
Utenti registrati
Utenti registrati
Messaggi: 22
Iscritto il: dicembre 4, 2014, 2:15 am

Re: TOPIC IN WHO IS ON LINE

Messaggio da D_evil91 »

mi fate avere un immagine demo ?
Avatar utente
Darkman
Amministratore
Amministratore
Messaggi: 1204
Iscritto il: marzo 28, 2009, 11:04 pm

Messaggio da Darkman »

La trovi nell altro mio forum http://www.sospcforum.com domani ti passo account di test

Inviato dal mio ME301T utilizzando Tapatalk
Avatar utente
Darkman
Amministratore
Amministratore
Messaggi: 1204
Iscritto il: marzo 28, 2009, 11:04 pm

Re: TOPIC IN WHO IS ON LINE

Messaggio da Darkman »

Ti mando via MP la psw, tiene presente che quel forum nei prossimi mesi lo aggiornerò alla 3.1.2
D_evil91
Utenti registrati
Utenti registrati
Messaggi: 22
Iscritto il: dicembre 4, 2014, 2:15 am

Re: TOPIC IN WHO IS ON LINE

Messaggio da D_evil91 »

messa.. però cavolo dimenticavo che io ho il portal anzichè di index quindi non mi compare nulla =( come faccio?

PS. lo vista nel forum di darkman è molto carina come mod spero di risolvere il problema
Rispondi