Sida 1 av 1

Visa bild om användare varit registrerad i x antal år?

Postat: 2008-07-03 11:45
av ktd
Här kommer en till önskan om en mod från mig. :oops:

Jag skulle vilja visa en bild under avataren typ för medlemmar som varit registrerade i mer än 2 år.
Det ska vara en statiskbild som inte ska kunna ändras osv.

Jag tycker man borde kunna göra det med IF-sats och direktlänk till en bild i image-mappen och inte nån ändring i databasen men jag lämnar det till er smart människor att lösa! ;)

Tack på föhand!

Re: Visa bild om användare varit registrerad i x antal år?

Postat: 2008-07-05 07:38
av Marcus
På vilken sida sak det visas? Profilsidan?

/marcus

Re: Visa bild om användare varit registrerad i x antal år?

Postat: 2008-07-05 09:29
av ktd
Profilsidan och inläggen som jag tror heter viewtopic.php

Re: Visa bild om användare varit registrerad i x antal år?

Postat: 2008-07-05 12:02
av Marcus
Två PHP-filer ska ändras:
<forumrot>/viewtopic.php
<forumrot>/includes/usercp_viewprofile.php


Två TPL-filer (template), för enkelhetens skull har jag valt att ändra i Subsilver:
<forumrot>/templates/subSilver/profile_view_body.tpl
<forumrot>/templates/subSilver/viewtopic_body.tpl


Delar nu upp detta svar i flera inlägg, ett per fil... så hoppas jag att det blir lätt att hänga med.

Nedan förutsätter jag att bilden är samma oavsett Template, och lägger därför filen i <forumrot>/images.
Ändra "filename.png" om det behövs där.

Vidare har jag valt att använda en metod som enkelt kan kompletteras med inställningar i ACP.

Spårkhantering är inte nödvändig såg jag det som, men det går att komplettera med det också enkelt.

Kom ihåg, spara en backup på filerna du redigerar.

/marcus

Re: Visa bild om användare varit registrerad i x antal år?

Postat: 2008-07-05 12:03
av Marcus
I filen <forumrot>/viewtopic.php

Leta upp:

Kod: Markera allt

	$poster_avatar = '';
	if ( $postrow[$i]['user_avatar_type'] && $poster_id != ANONYMOUS && $postrow[$i]['user_allowavatar'] )
	{
		switch( $postrow[$i]['user_avatar_type'] )
		{
			case USER_AVATAR_UPLOAD:
				$poster_avatar = ( $board_config['allow_avatar_upload'] ) ? '<img src="' . $board_config['avatar_path'] . '/' . $postrow[$i]['user_avatar'] . '" alt="" border="0" />' : '';
				break;
			case USER_AVATAR_REMOTE:
				$poster_avatar = ( $board_config['allow_avatar_remote'] ) ? '<img src="' . $postrow[$i]['user_avatar'] . '" alt="" border="0" />' : '';
				break;
			case USER_AVATAR_GALLERY:
				$poster_avatar = ( $board_config['allow_avatar_local'] ) ? '<img src="' . $board_config['avatar_gallery_path'] . '/' . $postrow[$i]['user_avatar'] . '" alt="" border="0" />' : '';
				break;
		}
	}
Direkt efter, lägg in:

Kod: Markera allt

// BEGIN - MEMBER FOR LONG TIME
	$poster_long_time_member_img = '';
      if ($postrow[$i]['user_regdate'] < date(strtotime('-2 years')))
	{
		$poster_long_time_member_img = '<img src="./images/filename.png" alt="" border="0" />';
	}	
// END - MEMBER FOR LONG TIME

Leta upp:

Kod: Markera allt

		'POSTER_AVATAR' => $poster_avatar,
Direkt efter, lägg in:

Kod: Markera allt

// BEGIN - MEMBER FOR LONG TIME
		'POSTER_LONGTIME' => $poster_long_time_member_img ,
// END - MEMBER FOR LONG TIME
Spara filen!

Re: Visa bild om användare varit registrerad i x antal år?

Postat: 2008-07-05 12:14
av Marcus
I filen <forumrot>/includes/usercp_viewprofile.php

Leta upp:

Kod: Markera allt

// Calculate the number of days this user has been a member ($memberdays)
// Then calculate their posts per day
//
$regdate = $profiledata['user_regdate'];
$memberdays = max(1, round( ( time() - $regdate ) / 86400 ));
Här har vi en uträkning av antal dagar någon varit medlem, och detta skulle man kunna använda, men jag tycker det är bra om man har samma lösning som var tvungen i viewtopic.php.

Direkt efter, lägg in:

Kod: Markera allt

// BEGIN - MEMBER FOR LONG TIME
$long_time_member_img = '';
if ($profiledata['user_regdate'] < date(strtotime('-2 years')))
{
	$long_time_member_img = '<img src="./images/filename.png" alt="" border="0" />';
}   
// END - MEMBER FOR LONG TIME
Leta upp:

Kod: Markera allt

	'AVATAR_IMG' => $avatar_img,
Direkt efter, lägg in:

Kod: Markera allt

// BEGIN - MEMBER FOR LONG TIME
	'LONGTIME' => $long_time_member_img ,
// END - MEMBER FOR LONG TIME
Spara filen!

Re: Visa bild om användare varit registrerad i x antal år?

Postat: 2008-07-05 12:21
av Marcus
I filen <forumrot>/templates/subSilver/viewtopic_body.tpl

Leta upp raden:

Kod: Markera allt

	<!-- BEGIN postrow -->
	<tr> 
		<td width="150" align="left" valign="top" class="{postrow.ROW_CLASS}"><span class="name"><a name="{postrow.U_POST_ID}"></a><b>{postrow.POSTER_NAME}</b></span><br /><span class="postdetails">{postrow.POSTER_RANK}<br />{postrow.RANK_IMAGE}{postrow.POSTER_AVATAR}<br /><br />{postrow.POSTER_JOINED}<br />{postrow.POSTER_POSTS}<br />{postrow.POSTER_FROM}</span><br /></td>
I 3:e den raden, hitta:

Kod: Markera allt

{postrow.POSTER_AVATAR}
I raden, direkt efter, lägg till:

Kod: Markera allt

<br />{postrow.POSTER_LONGTIME}
Spara filen!

Re: Visa bild om användare varit registrerad i x antal år?

Postat: 2008-07-05 12:26
av Marcus
I filen <forumrot>/templates/subSilver/profile_view_body.tpl

Leta upp raden:

Kod: Markera allt

	<td class="row1" height="6" valign="top" align="center">{AVATAR_IMG}<br /><span class="postdetails">{POSTER_RANK}</span></td>
I den raden, hitta:

Kod: Markera allt

{AVATAR_IMG}
I raden, direkt efter, lägg till:

Kod: Markera allt

<br />{LONGTIME}
Spara filen!

Re: Visa bild om användare varit registrerad i x antal år?

Postat: 2008-07-05 12:31
av Marcus
Ladda upp alla filer på sina platser, och testa.

/marcus

PS!
Har inte haft möjlighet att testa där jag sitter nu... men det borde fungera.
DS!