Seite 2 von 2

Verfasst: 30.09.2004 18:59
von raphael
Ich habe das ganze jetzt nicht getestet. Es müsste aber funktionieren.

Usergruppen:

Code: Alles auswählen

#
#-----[ OPEN ]------------------------------------------------
#
includes/usercp_miniprofile.php

#
#-----[ FIND ]------------------------------------------------
#
$template->pparse('body');

# 
#-----[ BEFORE, ADD ]----------------------------------------- 
#

// Start add - Show usergroups MOD
include($phpbb_root_path . 'includes/functions_usergroup.'.$phpEx);
if (display_usergroups($userdata['user_id'],$profiledata[user_id],'','show_usergroup_as_dropdown'))
{
	$template->assign_vars(array(
	'L_USER_GROUP' =>$lang['Usergroups']));
} else
{
	$template->assign_vars(array(
	'L_NO_USER_GROUP' =>$lang['Usergroups'],
	'L_NO_USERGROUPS'=> $lang['None']));
} 
// End add - Show usergroups MOD

#
#-----[ OPEN ]------------------------------------------------
#
#
templates/subSilver/profile_view_mini.tpl 

# 
#-----[ FIND ]------------------------------------------------ 
#
{JOINED}</span></b></td>
</tr>

#
#-----[ AFTER, ADD ]------------------------------------------
#

<!-- Start add - Show usergroups MOD -->
<tr> 
   <td valign="middle" align="right"><span class="gen">{L_USER_GROUP}{L_NO_USER_GROUP}:</span></td> 
   <td class="row1" valign="middle" width="100%"><b><span class="gen">{SHOW_USERGROUPS}{L_NO_USERGROUPS}</span></b></td> 
</tr>
<!-- End add - Show usergroups MOD -->

Verfasst: 30.09.2004 19:01
von raphael
Medals (Teil1):

Code: Alles auswählen

# 
#-----[ OPEN ]------------------------------------------ 
# 
includes/usercp_miniprofile.php

# 
#-----[ FIND ]------------------------------------------ 
# 
$profiledata = get_userdata(intval($HTTP_GET_VARS[POST_USERS_URL]));

# 
#-----[ AFTER, ADD ]------------------------------------------ 
# 
// Medal MOD

//
// Category
//

$sql = "SELECT cat_id, cat_title
	FROM " . MEDAL_CAT_TABLE . "
	ORDER BY cat_order";
if( !($result = $db->sql_query($sql)) )
{
	message_die(GENERAL_ERROR, 'Could not query medal categories list', '', __LINE__, __FILE__, $sql);
}

$category_rows = array();
while ( $row = $db->sql_fetchrow($result) )
{
	$category_rows[] = $row;
}
$db->sql_freeresult($result);

$sql = "SELECT m.medal_id, mu.user_id
	FROM " . MEDAL_TABLE . " m, " . MEDAL_USER_TABLE . " mu
	WHERE mu.user_id = '" . $profiledata['user_id'] . "'
	AND m.medal_id = mu.medal_id
	ORDER BY m.medal_name";
	
if($result = $db->sql_query($sql))
{
	$medal_list = $db->sql_fetchrowset($result);
	$medal_count = count($medal_list);

	if ( $medal_count )
	{
		$medal_count = '<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $profiledata['user_id'] ) .'#medal" class="genmed">' . $medal_count . '</a>';

		$template->assign_block_vars('medal', array(
			'MEDAL_BUTTON' => '<button onclick="ToggleBox(\'toggle_medal\')">'.$lang['Medal_details'].'</button>')
		);

	} else { $medal_count = 0; }
}

for ($i = 0; $i < count($category_rows); $i++)
{
	$cat_id = $category_rows[$i]['cat_id'];

	$sql = "SELECT m.medal_id, m.medal_name,m.medal_description, m.medal_image, m.cat_id, mu.issue_reason, mu.issue_time, c.cat_id, c.cat_title
		FROM " . MEDAL_TABLE . " m, " . MEDAL_USER_TABLE . " mu, " . MEDAL_CAT_TABLE . " c
		WHERE mu.user_id = '" . $profiledata['user_id'] . "'
		AND m.cat_id = c.cat_id
		AND m.medal_id = mu.medal_id
		ORDER BY c.cat_order, m.medal_name, mu.issue_time";

	if ($result = $db->sql_query($sql))
	{
		$row = array();
		$rowset = array();
		$medal_time = $lang['Medal_time'] . ':&nbsp;';
		$medal_reason = $lang['Medal_reason'] . ':&nbsp;';
		while ($row = $db->sql_fetchrow($result))
		{
			if (empty($rowset[$row['medal_name']]))
			{
				$rowset[$row['medal_name']]['cat_id'] = $row['cat_id'];
				$rowset[$row['medal_name']]['cat_title'] = $row['cat_title'];
				$rowset[$row['medal_name']]['medal_description'] .= $row['medal_description'];
				$rowset[$row['medal_name']]['medal_image'] = $row['medal_image'];
				$row['issue_reason'] = ( $row['issue_reason'] ) ? $row['issue_reason'] : $lang['Medal_no_reason'];
				$rowset[$row['medal_name']]['medal_issue'] = '<tr><td><span class="genmed">' . $medal_time . create_date($board_config['default_dateformat'], $row['issue_time'], $board_config['board_timezone']) . '</span></td></tr><tr><td><span class="genmed">' . $medal_reason . $row['issue_reason']  . '</span><hr></td></tr>';
				$rowset[$row['medal_name']]['medal_count'] = '1';
			}
			else
			{
				$row['issue_reason'] = ( $row['issue_reason'] ) ? $row['issue_reason'] : $lang['Medal_no_reason'];
				$rowset[$row['medal_name']]['medal_issue'] .= '<tr><td><span class="genmed">' . $medal_time . create_date($board_config['default_dateformat'], $row['issue_time'], $board_config['board_timezone']) . '</span></td></tr><tr><td><span class="genmed">' . $medal_reason . $row['issue_reason'] . '</span><hr></td></tr>';
				$rowset[$row['medal_name']]['medal_count'] += '1';
			}
		}

		$medal_width = ( $board_config['medal_display_width'] ) ? 'width="'.$board_config['medal_display_width'].'"' : '';
		$medal_height = ( $board_config['medal_display_height'] ) ? 'height="'.$board_config['medal_display_height'].'"' : '';

		$medal_name = array();
		$data = array();

		//
		// Should we display this category/medal set?
		//
		$display_medal = 0;

		while (list($medal_name, $data) = @each($rowset))
		{
			if ( $cat_id == $data['cat_id'] ) { $display_medal = 1; }

			if ( !empty($display_medal) )
			{
				$template->assign_block_vars('details', array(
					'MEDAL_CAT' => $data['cat_title'],
					'MEDAL_NAME' => $medal_name,
					'MEDAL_DESCRIPTION' => $data['medal_description'],
					'MEDAL_IMAGE' => '<img src="'. $phpbb_root_path . $data['medal_image'] . '" border="0" alt="' . $medal_name . '" />',
					'MEDAL_IMAGE_SMALL' => '<img src="'. $phpbb_root_path . $data['medal_image'] . '" border="0" alt="' . $medal_name . '"' . $medal_width . $medal_height . ' />',
					'MEDAL_ISSUE' => $data['medal_issue'],
					'MEDAL_COUNT' => $lang['Medal_amount'] . $data['medal_count'],
				
					'L_MEDAL_DESCRIPTION' => $lang['Medal_description'])
				);
			$display_medal = 0;
			}
		}
	}
}

# 
#-----[ FIND ]------------------------------------------ 
# 
	'USERNAME' => $profiledata['username'],

# 
#-----[ AFTER, ADD ]------------------------------------------ 
# 
	'L_USER_MEDAL' =>$lang['Medals'],	// Medal MOD
	'USER_MEDAL_COUNT' => $medal_count,	// Medal MOD
	'L_MEDAL_INFORMATION' => $lang['Medal_Information'], // Medal MOD
	'L_MEDAL_NAME' => $lang['Medal_name'],			// Medal MOD
	'L_MEDAL_DETAIL' => $lang['Medal_details'],		// Medal MOD

Verfasst: 30.09.2004 19:01
von raphael
Medals (Teil2):

Code: Alles auswählen

# 
#-----[ OPEN ]------------------------------------------ 
# 
templates/subSilver/profile_view_mini.tpl

# 
#-----[ FIND ]------------------------------------------ 
#
<table class="forumline" width="100%" cellspacing="1" cellpadding="2" border="0" align="center">

# 
#-----[ BEFORE, ADD ]------------------------------------------ 
#
<script src="templates/toggle.js"></script>

# 
#-----[ FIND ]------------------------------------------ 
#
	</tr>
</table>

# 
#-----[ AFTER, ADD ]------------------------------------------ 
#
<br />
<table class="forumline" width="100%" cellspacing="1" cellpadding="3" border="0" align="center">
  <tr> 
	<td class="catLeft" align="center" height="28" colspan="2"><b><span class="gen">{L_MEDAL_INFORMATION}</span></b></td>
  </tr>
  <tr>
	<td class="row1"  align="center" valign="middle" width="10%"><span class="gen">{L_USER_MEDAL}:&nbsp;<b>{USER_MEDAL_COUNT}</b></span>
<!-- BEGIN medal -->
<br /><br />{medal.MEDAL_BUTTON}
<!-- END medal -->
	</td>
	<td class="row1" valign="middle" align="left" nowrap="nowrap" width="100%">
<!-- BEGIN details -->
&nbsp;{details.MEDAL_IMAGE_SMALL}&nbsp;
<!-- END details -->
	</td>
  </tr>
</table>

<br />
<div style="width: 100%; overflow: hidden; display: none;" id="toggle_medal">
<a name="medal">

<table class="forumline" width="100%" cellspacing="1" cellpadding="3" border="0" align="center">
  <tr> 
	<th class="thCornerL" align="center" nowrap="nowrap">&nbsp;{L_MEDAL_NAME}&nbsp;</th>
	<th class="thCornerR" align="center" nowrap="nowrap">&nbsp;{L_MEDAL_DETAIL}&nbsp;</th>
  </tr>
<!-- BEGIN details -->
  <tr>
	<td class="row2" nowrap="nowrap">
		<table width="100%" cellspacing="1" cellpadding="3" border="0">
		<tr><td align="center"><span class="genmed">{details.MEDAL_CAT}</span></td></tr>
		<tr><td align="center"><span class="genmed">{details.MEDAL_NAME}</span></td></tr>
		<tr><td align="center">{details.MEDAL_IMAGE}</td></tr>
		<tr><td align="center"><span class="genmed">{details.MEDAL_COUNT}</span></td></tr></table></td>
	<td class="row2" valign="top">
		<table width="100%" cellspacing="1" cellpadding="3" border="0">
		<tr><td><span class="gen">{details.L_MEDAL_DESCRIPTION}: <b>{details.MEDAL_DESCRIPTION}</b></span></td></tr>
		<tr><td class="quote">
			<table width="100%" cellspacing="1" cellpadding="3" border="0">
			<tr><td><span class="genmed">{details.MEDAL_ISSUE}</span></td></tr>
			</table>
		</td></tr>
	</table></td>
  </tr>
<!-- END details -->
</table>
</a>
</div>
So sollte es eigentlich hinhauen.
Probier es mal aus und sag, obs läuft.

Verfasst: 30.09.2004 19:24
von Eclipse16V
Besten Dank

Gehen alle beide AddOn´s.
Jetzt nur noch ein wenig feinarbeit. :)

Danke noch mal.

Als letztes hätte ich noch den User Word Counter MOD. :oops:

Verfasst: 30.09.2004 19:50
von raphael
Ist das der Mod hier?
## MOD Title: User Word Count MOD
## MOD Author: NoahK < Support@FFTrealm.com > ( Noah ) http://www.fftrealm.com
## MOD Description: This MOD stores a users total words posted
## and can display the result on viewtopic or
## viewprofile. The profile view also shows the
## average number of words per post.
## MOD Version: 1.0.8a
Dann musst du folgendes machen:

Code: Alles auswählen

#
#-----[ OPEN ]------------------------------------------------
#
includes/usercp_miniprofile.php

#
#-----[ FIND ]------------------------------------------
#

//
// Generate page
//

#
#-----[ BEFORE, ADD ]------------------------------------------------
#

// WORD COUNT START by NoahK
$sql = "SELECT user_wordcount FROM " . USERS_TABLE . " WHERE user_id='$profiledata[user_id]'";
$result = $db->sql_query($sql);
$words = $db->sql_fetchrow($result);
$wordcount = $words['user_wordcount'];
$rest3 = $wordcount;
// This next set of commands adds commas in the proper places for larger numbers. Up to 99,999,999.
$new_wordcount = strlen($wordcount);
if ($new_wordcount == "4" || $new_wordcount == "5" || $new_wordcount == "6")
{
	$rest4 = $new_wordcount - 3;
	$rest = substr($wordcount, $rest4);
	$rest2 = substr($wordcount, 0, $rest4);
	$rest3 = $rest2 . "," . $rest;
}
elseif ($new_wordcount == "7")
{
	$rest = substr($wordcount, 4);
	$rest1 = substr($wordcount, 1,3);
	$rest2 = substr($wordcount, 0,1);
	$rest3 = $rest2 . "," . $rest1 . "," . $rest;
}
elseif ($new_wordcount == "8")
{
	$rest = substr($wordcount, 5);
	$rest1 = substr($wordcount, 2,3);
	$rest2 = substr($wordcount, 0,2);
	$rest3 = $rest2 . "," . $rest1 . "," . $rest;
}
if (($wordcount == 0) || ($profiledata['user_posts'] == 0)) { // Stop division by 0.
	$avg_words = $lang['Word_NA']; // If a user has no posts. You may safely change N/A to 0 or any other text in the language file.
} else {
	$avg_words = round(($wordcount / $profiledata['user_posts']),2); // The 2 controls the numbers shown after the decimal. Use 0 if you want whole numbers.
}
// WORD COUNT END by NoahK

#
#-----[ FIND ]------------------------------------------
#
	'POSTER_RANK' => $poster_rank,

#
#-----[ AFTER, ADD ]------------------------------------------------
#
	'WORD_COUNT' => $rest3,
	'WORD_AVG' => $avg_words,
	'WORD_COUNT_TEXT' => $lang['Word_Count'],
	'WORD_TEXT' => $lang['Word_Text'],

#
#-----[ OPEN ]-------------------------------------------------
#
templates/subSilver/profile_view_mini.tpl

#
#-----[ FIND ]------------------------------------------
#

      <tr> 
        <td valign="middle" align="right" nowrap="nowrap"><span class="gen">{L_LOCATION}:&nbsp;</span></td> 
        <td><b><span class="gen">{LOCATION}</span></b></td> 
      </tr>

#
#-----[ BEFORE, ADD ]-------------------------------------------------
#
		<tr> 
		  <td valign="middle" align="right" nowrap="nowrap"><span class="gen">{WORD_COUNT_TEXT}</span></td>
		  <td><b><span class="genmed">{WORD_COUNT}<br>{WORD_AVG} {WORD_TEXT}</span></b></td>
		</tr>

Verfasst: 30.09.2004 23:36
von Eclipse16V
Noch mal besten Dank.

:grin: Will ja nicht nerven aber ein AddOn brauche ich noch.
Und zwar das mit den Trophäen aus dem Activity Mod Plus 1.0.7 oder 1.0.8 :-?

http://phpbb-amod.com/downloads.php?mode=sub&cid=14

Dann bin ich aber wirklich fertig.

Verfasst: 30.09.2004 23:53
von raphael
So, kurz vor dem Schlafengehen kommen jetzt meine letzten Zeilen für heute. Wenn es Probleme oder Fragen geben sollte kann ich erst morgen früh darauf eingehen.

Code: Alles auswählen

-----------------------------------
----[ OPEN ]-----------------------
-----------------------------------

Root/includes/usercp_miniprofile.php

-----------------------------------
----[ FIND ]-----------------------
-----------------------------------

$profiledata = get_userdata(intval($HTTP_GET_VARS[POST_USERS_URL]));

-----------------------------------
----[ ADD, AFTER ]-----------------
-----------------------------------

/* Start Activity Mod Plus By aUsTiN */ 
	$sql = "SELECT user_trophies, username
			FROM ". USERS_TABLE ."
			WHERE user_id = '" . $profiledata['user_id'] . "'";
	
	if(!$result = $db -> sql_query($sql))
		message_die(GENERAL_ERROR, "Error getting trophy information", "", __LINE__, __FILE__, $sql);
	$trophy_total 	= $db -> sql_fetchrow($result);
			
	$show_trophies 	= $board_config['ina_show_view_profile'];
	
	if(($show_trophies) && ($trophy_total['user_trophies'] > "0") && ($profiledata['user_id'] != ANONYMOUS))	
		{
	$trophy_count 	= $trophy_total['user_trophies'];
	$trophy_holder	= $trophy_total['username'];	
	$trophy			= "";	
	$trophy			= "<a href=\"javascript:Gk_PopTart('". $phpbb_root_path ."activity_trophy_popup.$phpEx?user=". $profiledata['user_id'] ."&sid=". $userdata['session_id'] ."','New_Window','400','380','yes')\" onclick=\"blur()\">". $lang['Trohpy'] ."</a>:&nbsp;&nbsp;". $trophy_count ."<br>";		
		}
	else
		{
	$trophy_count 	= "";
	$trophy_holder	= "";	
	$trophy			= "";				
		}
/* End Activity Mod Plus By aUsTiN */ 

-----------------------------------
----[ FIND ]-----------------------
-----------------------------------

//
// Output page header and profile_view template
//
$template->set_filenames(array(
	'body' => 'profile_view_mini.tpl')
);

-----------------------------------
----[ ADD, AFTER ]-----------------
-----------------------------------

/* Start Activity Mod Plus By aUsTiN */
		if(($show_trophies) && ($trophy_total['user_trophies'] > 0) && ($profiledata['user_id'] != ANONYMOUS))	
			{
		$template->assign_block_vars("trophy", array(
		'PROFILE_TROPHY'	=> $trophy,
		'TROPHY_TITLE'		=> $lang['Trohpy'])
				);
			}			
/* End Activity Mod Plus By aUsTiN */

-----------------------------------
----[ OPEN ]-----------------------
-----------------------------------

Root/templates/*/profile_view_mini.tpl

-----------------------------------
----[ FIND ]-----------------------
-----------------------------------

	<tr> 
	  <td valign="middle" nowrap="nowrap"><span class="gen">{L_LOCATION}:</span></td>

-----------------------------------
----[ ADD, BEFORE ]-----------------
-----------------------------------

		<!-- BEGIN trophy -->
	<tr> 
		<td align="right" nowrap="nowrap" class="explaintitle"><span class="gen">{trophy.TROPHY_TITLE}:</span></td>	
		<td><span class="gen">{trophy.PROFILE_TROPHY}</span></td>
	</tr>
		<!-- END trophy -->

Verfasst: 01.10.2004 00:28
von Eclipse16V
OK

Besten Dank.

Haben alle AddOn´s geklappt.

N8

*HUT AB*