Pagina 1 van 1

Mouseover?

Geplaatst: 03 jul 2007, 15:31
door marian0810
Deze mod geeft keurig een lijst van alle leden die de afgelopen 24 uur online geweest zijn. Alleen heb ik nu een extra wens, ik zou zo graag bij elke naam de tijd van inloggen willen zien in een pop-upje als je met de muis over die naam gaat. Is zoiets makkelijk toe te voegen?

Re: Mouseover?

Geplaatst: 07 jul 2007, 20:53
door Stef
Ik weet niet of dit ook werkt met de 24 uurs mod maar anders:
Vervang je in page_header.php dit:

Code: Selecteer alles

$user_online_link = '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $row['user_id']) . '"' . $style_color .'>' . $row['username'] . '</a>';
Met:

Code: Selecteer alles

$user_online_link = '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $row['user_id']) . '"' . $style_color .' alt="'  . $row['session_logged_in'] . '">' . $row['username'] . '</a>';

Code: Selecteer alles

$user_online_link = '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $row['user_id']) . '"' . $style_color .'><i>' . $row['username'] . '</i></a>';

Code: Selecteer alles

$user_online_link = '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $row['user_id']) . '"' . $style_color .' alt="'  . $row['session_logged_in'] . '"><i>' . $row['username'] . '</i></a>';
Ik heb het niet getest, maar ik geloof dat dit werkt!

Re: Mouseover?

Geplaatst: 07 jul 2007, 21:38
door marian0810
Meteen geprobeerd, maar helaas het maakt geen verschil. Geen popupje te bekennen.
Moet er misschien ook nog wat in overall_header.tpl veranderd worden?

Re: Mouseover?

Geplaatst: 07 jul 2007, 21:42
door Stef
Je moet je cursor over de naam gaan, dan licht na een tijdje zo'n standaard dingetje op. Als het echt niet werkt, kan het ook zijn dat het "title" is ipv. "alt".

Re: Mouseover?

Geplaatst: 07 jul 2007, 21:57
door marian0810
Hmmm... met title ipv alt gebeurt er wel íets... dan krijg ik een popupje met het getal "1" erin als ik over een naam ga maar alleen bij wie op dat moment online is, niet in de lijst van de afgelopen 24 uur. Daar gebeurt nog steeds helemaal niets.

Re: Mouseover?

Geplaatst: 08 jul 2007, 12:25
door Stef
Dan is dat een andere var en is de row niet duidelijk. Ehmm.. dump page_header.php eens :) En ik hoop dat er duidelijk staat aangegeven waar 24 uur geval zit. :D

Re: Mouseover?

Geplaatst: 08 jul 2007, 12:54
door marian0810
page_header.php
Stef schreef:En ik hoop dat er duidelijk staat aangegeven waar 24 uur geval zit. :D
:idea: Door die opmerking kwam ik er wel achter dat het inderdaad op de verkeerde plaats veranderd was. Heb het nu binnen het mod-gedeelte nog een keer gedaan... helaas nog steeds zonder resultaat, zowel met title als met alt gebeurt er niks :(

Re: Mouseover?

Geplaatst: 08 jul 2007, 13:06
door Stef

Code: Selecteer alles

$sql = "SELECT user_id, username, user_allow_viewonline, user_level, user_session_time
    FROM ".USERS_TABLE."
    WHERE user_id > 0
    ORDER BY IF(user_level=1,3,user_level) DESC, username ASC";
wordt:

Code: Selecteer alles

$sql = "SELECT user_id, username, user_allow_viewonline, user_level, user_session_time, user_lastvisit
    FROM ".USERS_TABLE."
    WHERE user_id > 0
    ORDER BY IF(user_level=1,3,user_level) DESC, username ASC";

Code: Selecteer alles

    if ( $row['user_allow_viewonline'] )
    {
        $user_day_link = '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $row['user_id']) . '"' . $style_color .' alt="'  . $row['session_logged_in'] . '">' . $row['username'] . '</a>';
    }
    else
    {
        $user_day_link = '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $row['user_id']) . '"' . $style_color .'><i>' . $row['username'] . '</i></a>';
    }
wordt:

Code: Selecteer alles

    $u_last_visit = create_date($board_config['default_dateformat'], $row['user_lastvisit'], $board_config['board_timezone']);
if ( $row['user_allow_viewonline'] )
    {
        $user_day_link = '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $row['user_id']) . '"' . $style_color .' title="'  . $u_last_visit . '">' . $row['username'] . '</a>';
    }
    else
    {
        $user_day_link = '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $row['user_id']) . '"' . $style_color .' title="'  . $u_last_visit . '"><i>' . $row['username'] . '</i></a>';
    }
Ook weer los uit de hand. :)

Re: Mouseover?

Geplaatst: 08 jul 2007, 15:07
door marian0810
Dat ziet er al veel beter uit! Er verschijnt nu inderdaad een tijd in een popup als je met de muis over een naam gaat. Alleen lijkt die tijd niet altijd te kloppen, bij sommigen is die van een paar dagen of zelfs nog langer geleden, terwijl het toch echt een lijst van de laatste 24 uur is en de "laatste keer actief" hack ook aangeeft dat ze vandaag nog langsgeweest zijn :?: :?:

Re: Mouseover?

Geplaatst: 08 jul 2007, 15:20
door Stef
Mmm, daar kan ik weinig aan doen, dat is informatie uit de database.

Maar we kunnen eventueel wel session_time gebruiken:

Code: Selecteer alles

$u_last_visit = create_date($board_config['default_dateformat'], $row['user_session_time'], $board_config['board_timezone']);

Re: Mouseover?

Geplaatst: 08 jul 2007, 15:39
door marian0810
Zo is het helemaal geweldig, precies wat ik zocht! Hartstikke bedankt!!
Afbeelding

Re: Mouseover?

Geplaatst: 08 jul 2007, 16:30
door Tom V
IK heb de mod zelf ook een beetje aangepast, hij laat nu zien hoe lang geleden.
bv:
10 secoden geleden
1 minuut geleden
3 minuten geleden
2 uur geleden
5 uur geleden



page_header.php
zoek
$sql = "SELECT user_id, username, user_allow_viewonline, user_level, user_session_time
plaats ervoor

Code: Selecteer alles

function ago($timestamp)
{
	global $lang;
	
	$difference = time() - $timestamp;
	$periods = array($lang['second'],$lang['seconds'],$lang['minute'],$lang['minutes'],$lang['hour'],$lang['hours'],$lang['day'],$lang['days'],$lang['week'],$lang['weeks'],$lang['month'],$lang['months'],$lang['year'],$lang['years'],$lang['decade'],$lang['decades'],$lang['century'],$lang['centurys'],$lang['millenium']);
	$lengths = array("1","60","1","60","1","24","1","7","1","4.35","1","12","1","10","1","10","10");

	for($j = 0; $difference >= $lengths[$j]; $j++)
	{
		$difference = $difference / $lengths[$j];
	}
	
	$difference = round($difference);
	
	if($difference == 1)
	{
		--$j;		
	}
	
	$text = "$difference $periods[$j] ".$lang["ago"];
	return $text;
}
en

Code: Selecteer alles

    if ( $row['user_allow_viewonline'] )
    {
        $user_day_link = '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $row['user_id']) . '"' . $style_color .' alt="'  . $row['session_logged_in'] . '">' . $row['username'] . '</a>';
    }
    else
    {
        $user_day_link = '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $row['user_id']) . '"' . $style_color .'><i>' . $row['username'] . '</i></a>';
    }
wordt

Code: Selecteer alles

	if ( $row['user_allow_viewonline'] )
	{
		$user_day_link = '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $row['user_id']) . '"' . $style_color .' title="' . ago($row['user_session_time']) . '">' . $row['username'] . '</a>';
	}
	else
	{
		$user_day_link = '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $row['user_id']) . '"' . $style_color .' title="' . ago($row['user_session_time']) . '"><i>' . $row['username'] . '</i></a>';
	}
en lang_main.php

Code: Selecteer alles

//
// That's all, Folks!
// -------------------------------------------------
hiervoor

Code: Selecteer alles

$lang['second'] = 'second';
$lang['seconds'] = 'seconden';
$lang['minute'] = 'minuut';
$lang['minutes'] = 'minuten';
$lang['hour'] = 'uur';
$lang['hours'] = 'uur';
$lang['day'] = 'dag';
$lang['dags'] = 'dagen';
$lang['week'] = 'week';
$lang['weeks'] = 'weken';
$lang['month'] = 'maand';
$lang['months'] = 'maanden';
$lang['year'] = 'jaar';
$lang['years'] = 'jaren';
$lang['decade'] = 'decade';
$lang['decades'] = 'decades';
$lang['century'] = 'eeuw';
$lang['centurys'] = 'eeuwen';
$lang['millenium'] = 'millenium';
$lang['ago'] = 'geleden';