Sida 1 av 1

Dölja inaktiva medlemmars födelsedagar

Postat: 2008-10-16 13:22
av Holger
Hejsan,

jag har installerat Nils födelsedagshack.
http://www.phpbbhacks.com/download/187
Nu visas dock inaktiva medlemmars födelsedagar på index-sidan.
Går det att ta bort det?

Detta har jag i min index.php:

Kod: Markera allt

// Start Birthday Mod, Show users with birthday
$sql = ($board_config['birthday_check_day']) ? "SELECT user_id, username, user_birthday,user_level FROM " . USERS_TABLE. " WHERE user_birthday!=999999 ORDER BY username" :"";
if($result = $db->sql_query($sql))
{
	if (!empty($result))
	{
		$time_now = time();
		$this_year = create_date('Y', $time_now, $board_config['board_timezone']);
		$date_today = create_date('Ymd', $time_now, $board_config['board_timezone']);
		$date_forward = create_date('Ymd', $time_now+($board_config['birthday_check_day']*86400), $board_config['board_timezone']);
	      while ($birthdayrow = $db->sql_fetchrow($result))
		{
		      $user_birthday2 = $this_year.($user_birthday = realdate("md",$birthdayrow['user_birthday'] ));
      		if ( $user_birthday2 < $date_today ) $user_birthday2 += 10000;
			if ( $user_birthday2 > $date_today  && $user_birthday2 <= $date_forward )
			{
				// user are having birthday within the next days
				$user_age = ( $this_year.$user_birthday < $date_today ) ? $this_year - realdate ('Y',$birthdayrow['user_birthday'])+1 : $this_year- realdate ('Y',$birthdayrow['user_birthday']);
				switch ($birthdayrow['user_level'])
				{
					case ADMIN :
		      			$birthdayrow['username'] = '<b>' . $birthdayrow['username'] . '</b>';
      					$style_color = 'style="color:#' . $theme['fontcolor3'] . '"';
						break;
					case MOD :
		      			$birthdayrow['username'] = '<b>' . $birthdayrow['username'] . '</b>';
      					$style_color = 'style="color:#' . $theme['fontcolor2'] . '"';
						break;
					default: $style_color = '';
				}
				$birthday_week_list .= ' <a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $birthdayrow['user_id']) . '"' . $style_color .'>' . $birthdayrow['username'] . ' ('.$user_age.')</a>,';
			} else if ( $user_birthday2 == $date_today )
      		{
				//user have birthday today
				$user_age = $this_year - realdate ( 'Y',$birthdayrow['user_birthday'] );
				switch ($birthdayrow['user_level'])
				{
					case ADMIN :
		      			$birthdayrow['username'] = '<b>' . $birthdayrow['username'] . '</b>';
      					$style_color = 'style="color:#' . $theme['fontcolor3'] . '"';
						break;
					case MOD :
			      		$birthdayrow['username'] = '<b>' . $birthdayrow['username'] . '</b>';
      					$style_color = 'style="color:#' . $theme['fontcolor2'] . '"';
						break;
					default: $style_color = '';
				}
				$birthday_today_list .= ' <a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $birthdayrow['user_id']) . '"' . $style_color .'>' . $birthdayrow['username'] . ' ('.$user_age.')</a>,';
		      }

		}
		if ($birthday_today_list) $birthday_today_list[ strlen( $birthday_today_list)-1] = ' ';
		if ($birthday_week_list) $birthday_week_list[ strlen( $birthday_week_list)-1] = ' ';
	}
	$db->sql_freeresult($result);

// Begin Simple Subforums MOD
$subforums_list = array();
// End Simple Subforums MOD

}
// End Birthday Mod, Show users with birthday
Sedan så undrar man ju vad i helskotta simple subforums kodsnutten har där att göra! :o

Kod: Markera allt

// Start add - Birthday MOD
		'L_WHOSBIRTHDAY_WEEK' => ($board_config['birthday_check_day'] > 1) ? sprintf( (($birthday_week_list) ? $lang['Birthday_week'] : $lang['Nobirthday_week']), $board_config['birthday_check_day']).$birthday_week_list : '',
		'L_WHOSBIRTHDAY_TODAY' => ($board_config['birthday_check_day']) ? ($birthday_today_list) ? $lang['Birthday_today'].$birthday_today_list : $lang['Nobirthday_today'] : '',
// End add - Birthday MOD

Re: Dölja inaktiva medlemmars födelsedagar

Postat: 2008-10-16 13:42
av tumba25
Vad simple subforums kodsnutt har där att göra vet nog bara du.

Ändra

Kod: Markera allt

$sql = ($board_config['birthday_check_day']) ? "SELECT user_id, username, user_birthday,user_level FROM " . USERS_TABLE. " WHERE user_birthday!=999999 ORDER BY username" :"";
Till

Kod: Markera allt

$sql = ($board_config['birthday_check_day']) ? "SELECT user_id, username, user_birthday, user_level FROM " . USERS_TABLE. " WHERE user_birthday!=999999 AND user_active = 1 ORDER BY username" :"";

Re: Dölja inaktiva medlemmars födelsedagar

Postat: 2008-10-16 13:43
av Marcus
Det ska räcka med att justera SQL-satsen i början på koden, och lägga till " AND user_active != 0"

Så här:

Kod: Markera allt

$sql = ($board_config['birthday_check_day']) ? "SELECT user_id, username, user_birthday,user_level FROM " . USERS_TABLE. " WHERE user_birthday!=999999 AND user_active != 0 ORDER BY username" :"";
Edit: Andra gången som våra inlägg kommer på millisekunder isär... :D (Jo, det står olika minuter... men jag ger mig 17 på att du postade 13:42:59.999 och jag 13:43:00.000)

/marcus

Re: Dölja inaktiva medlemmars födelsedagar

Postat: 2008-10-16 14:09
av tumba25
Vad ska jag säga. Svårt att vara ödmjuk när... :D

Re: Dölja inaktiva medlemmars födelsedagar

Postat: 2008-10-16 14:11
av Holger
Spelar det roll?
user_active != 0
user_active = 1
Ingen skillnad väl?




Hrrrrrrmmmm, ordningsföljden visar ju VEM som var snabbast :lol:

Re: Dölja inaktiva medlemmars födelsedagar

Postat: 2008-10-16 14:17
av tumba25
Jag har precis kollat och den har bara 1 = aktiv och 0 = inaktiv som lägen. Så det är ingen skillnad vilken du väljer.

Re: Dölja inaktiva medlemmars födelsedagar

Postat: 2008-10-16 14:18
av Holger
Tackar!

Re: Dölja inaktiva medlemmars födelsedagar

Postat: 2008-10-16 14:51
av Marcus
Bara för att veta vem av oss du litar mest på... vilken valde du? ;-)

Re: Dölja inaktiva medlemmars födelsedagar

Postat: 2008-10-16 14:58
av Holger

Kod: Markera allt

$sql = ($board_config['birthday_check_day']) ? "SELECT user_id, username, user_birthday,user_level FROM " . USERS_TABLE. " WHERE user_birthday!=999999 AND user_active < 0 ORDER BY username" :"";
:lol:

Re: Dölja inaktiva medlemmars födelsedagar

Postat: 2008-10-16 15:14
av tumba25
Ska user_active vara mindre än noll?

Re: Dölja inaktiva medlemmars födelsedagar

Postat: 2008-10-16 15:17
av Marcus
Men Holger, men den koden får du inte ut någon användare ur databasen... :)

/marcus

Re: Dölja inaktiva medlemmars födelsedagar

Postat: 2008-10-16 15:37
av Holger
AAAAAHHHHHHHHHHHHHH!!!!
Där TÄNKTE man vara lite rolig och vad blir det? Pannkaka!!!!!

Kod: Markera allt

$sql = ($board_config['birthday_check_day']) ? "SELECT user_id, username, user_birthday,user_level FROM " . USERS_TABLE. " WHERE user_birthday!=999999 AND user_active > 0 ORDER BY username" :"";
Sk#t, sk#t, sk#t! :oops:

Re: Dölja inaktiva medlemmars födelsedagar

Postat: 2008-10-17 07:38
av Marcus
Skyll på det... :lol: :wink:

Re: Dölja inaktiva medlemmars födelsedagar

Postat: 2008-10-17 07:49
av Holger
Det funkar perfekt i alla fall! Tack ska ni ha!