user avatar im shoutbox_1.1.5em

Allgemeiner Support zum phpBB 2 Board und phpBB 2 Modifikationen
Forumsregeln
Auch wenn hier der Support für phpBB 2 weiterhin aufrecht erhalten bleibt, weisen wir darauf hin, dass das phpBB 2 nicht mehr offiziell unterstützt und weiterentwickelt wird!
Antworten
Benutzeravatar
cuchirice
Beiträge: 123
Registriert: Fr 14.Jan, 2005 21:08

user avatar im shoutbox_1.1.5em

Beitrag von cuchirice »

Hi,

ich habe heut früh ein mods gefunden, wo useravatar im memberlist einfügen kann mit folgendem codes.

Code: Alles auswählen

######################################################## 
##
## Mod Title:   Avatar in memberlist 
## Mod Version: 1.0.0
## Author:      Kenny aka Gordon (http://kdg.fm.pri.ee/)
##
## Description:  
## This mod will add user's avatar to the memberlist
## if the user has specified it in his/her profile.

## It was designed for PHPBB 2.0+
## 
## Installation Level:  Easy as hell! 
## Installation Time:   pretty short 
##
########################################################

// Directions: -----------------------------------------

› Open /templates/themename/memberlist_body.tpl

Find: >>>
 <th class="thCornerR" nowrap="nowrap">{L_WEBSITE}</th>
After add: >>>
 <th class="thCornerR" nowrap="nowrap">Avatar</th>
 

Find: >>>
 <td class="{memberrow.ROW_CLASS}" align="center">&nbsp;{memberrow.WWW_IMG}&nbsp;</td>
After add: >>>
 <td class="{memberrow.ROW_CLASS}" align="center">&nbsp;{memberrow.AVATAR_IMG}&nbsp;</td>
 
 
Find: >>>
 <td class="catbottom" colspan="9"
NOTE: if u have installed other hacks that modify the memberlist, there could be different nunber (not 9)
Replace with: >>>
 <td class="catbottom" colspan="10"
 


› Open /memberlist.php

Find: >>>
 $www = ( $row['user_website'] ) ? '<a href="' . $row['user_website'] . '" target="_userwww">' . $lang['Visit_website'] . '</a>' : '';
After add: >>>
 $avatar_img = ($row['user_avatar'] && $row['user_avatar_type']==2 ? '<img src=' . $row['user_avatar'] . '>' : ($row['user_avatar'] && $row['user_avatar_type']==3 ? '<img src=images/avatars/gallery/' . $row['user_avatar'] . '>' : false));
 
 
Find: >>>
 'WWW' => $www,
After add: >>>
 'AVATAR_IMG' => $avatar_img,

nun jetz will ich so was ähnl. machen, und zwar im shoutbox...
leider weiss ich nicht wie man es macht. ich nehme an dass es so ähnl. wie bei memberlist oder? ^_^' doch ich weiss nicht wo man den codes einfügen kann.
hat jemand lust zubasteln =) hilf mir bitte.

hier ist der shoutboxview.php code

Code: Alles auswählen

<?php
/***************************************************************************
 *                               shoutbox_view.php
 *                            -------------------
 *   begin                :  Feb, 2003
 *   author               : Niels Chr. Denmark <ncr@db9.dk> (http://mods.db9.dk)
 *
 * version 0.9.3
 *
 * History:
 *   0.9.0. - initial BETA
 *   0.9.1. - header added
 *   0.9.2. - now support cenzored words
 *   0.9.3. - username is a link to users profile
 *
 * a fully phpBB2 integrated shoutbox
 *
 ***************************************************************************/

/***************************************************************************
 *
 *   This program is free software; you can redistribute it and/or modify
 *   it under the terms of the GNU General Public License as published by
 *   the Free Software Foundation; either version 2 of the License, or
 *   (at your option) any later version.
 *
 ***************************************************************************/

define('IN_PHPBB', true);
$phpbb_root_path = './';
require_once($phpbb_root_path . 'extension.inc');
require_once($phpbb_root_path . 'common.'.$phpEx);
require_once($phpbb_root_path . 'includes/bbcode.'.$phpEx);
define ('NUM_SHOUT', 20);

//
// Start session management
//
$userdata = session_pagestart($user_ip, PAGE_SHOUTBOX);
init_userprefs($userdata);
//
// End session management
//

//
// Start auth check
//
switch ($userdata['user_level'])
{
	case ADMIN : 
	case MOD :	$is_auth['auth_mod'] = 1;
	default:
			$is_auth['auth_read'] = 1;
			$is_auth['auth_view'] = 1;
			if ($userdata['user_id']==ANONYMOUS)
			{
				$is_auth['auth_delete'] = 0;
				$is_auth['auth_post'] = 0;
			} else
			{
				$is_auth['auth_delete'] = 1;
				$is_auth['auth_post'] = 1;
			}
}

if( !$is_auth['auth_read'] )
{
	message_die(GENERAL_MESSAGE, $lang['Not_Authorised']);
}

//
// End auth check
//

// see if we need offset
if (isset($HTTP_POST_VARS['start']) || isset($HTTP_GET_VARS['start']))
{
	$start=(isset($HTTP_POST_VARS['start'])) ? intval($HTTP_POST_VARS['start']) : intval($HTTP_GET_VARS['start']);
} else $start=0;

$template->set_filenames(array( 
      'body' => 'shoutbox_view_body.tpl')); 

//
// Define censored word matches
//
$orig_word = array();
$replacement_word = array();
obtain_word_list($orig_word, $replacement_word);

//
// display the shoutbox
//
	$sql = "SELECT s.*, u.user_allowsmile, u.username FROM " . SHOUTBOX_TABLE . " s, ".USERS_TABLE." u
			WHERE s.shout_user_id=u.user_id ORDER BY s.shout_session_time DESC LIMIT $start, ".NUM_SHOUT;
	if ( !($result = $db->sql_query($sql)) )
	{
		message_die(GENERAL_ERROR, 'Could not get shoutbox information', '', __LINE__, __FILE__, $sql);
	}
	while ($shout_row = $db->sql_fetchrow($result))
	{
		$i++;
		$row_color = ( !($i % 2) ) ? $theme['td_color1'] : $theme['td_color2'];
		$row_class = ( !($i % 2) ) ? $theme['td_class1'] : $theme['td_class2'];
		$user_id = $shout_row['shout_user_id'];
		$username = ( $user_id == ANONYMOUS ) ? (( $shout_row['shout_username'] == '' ) ? $lang['Guest'] : $shout_row['shout_username'] ) : "<a href='".append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=".$shout_row['shout_user_id'])."' target='_top'>".$shout_row['username']."</a>" ;
		$shout = (! $shout_row['shout_active']) ? $shout_row['shout_text'] : $lang['Shout_censor'];
		if ( $board_config['allow_smilies'] && $shout_row['user_allowsmile'] && $shout != '' & $shout_row['enable_smilies'])
		{
			$shout = smilies_pass($shout);
		} 
		$shout = bbencode_second_pass($shout,$shout_row['shout_bbcode_uid']);
		$shout = preg_replace($orig_word, $replacement_word, $shout);
		$shout = str_replace("\n", "\n<br />\n", $shout);

		$template->assign_block_vars('shoutrow', array(
			'ROW_COLOR' => '#' . $row_color,
			'ROW_CLASS' => $row_class,
			'SHOUT' => $shout,
			'TIME' => create_date($lang['Shoutbox_date'], $shout_row['shout_session_time'], $board_config['board_timezone']),
			'USERNAME' => $username
		));
}
$template->assign_vars(array( 
	'U_SHOUTBOX_VIEW' => append_sid("shoutbox_view.$phpEx?$start"),
	'T_NAME' => $theme['template_name'],
'T_URL' => "templates/".$theme['template_name'],
	'T_HEAD_STYLESHEET' => $theme['head_stylesheet'],
'S_CONTENT_ENCODING' => $lang['ENCODING']
));

 $template->pparse('body'); 

?>

und hier ist der shoubox.tpl

Code: Alles auswählen

<HEAD><META http-equiv="refresh" content="120;url={U_SHOUTBOX_VIEW}?auto_refresh=1">
<meta http-equiv="Content-Type" content="text/html; charset={S_CONTENT_ENCODING}" />
<link rel="stylesheet" href="{T_URL}/{T_HEAD_STYLESHEET}" type="text/css">
</HEAD>
<body bgcolor="{T_BODY_BGCOLOR}" text="{T_BODY_TEXT}" link="{T_BODY_LINK}" vlink="{T_BODY_VLINK}"> 
<table width="100%" height="100%" cellpadding="0" cellspacing="1" border="0" class="forumline">
<!-- BEGIN shoutrow -->
<tr>
	<td class="{shoutrow.ROW_CLASS}" width="100%" higth="100%">
<span class="gensmall">
	{shoutrow.TIME}<br />
	<b>{shoutrow.USERNAME}:</b><br />
	{shoutrow.SHOUT}<br/></span>
	</td>
</tr>
<!-- END shoutrow -->
</table>
</body>


so ungefäht müsste am ende ausschauen ^_^

Bild
Zuletzt geändert von cuchirice am Mo 21.Mär, 2005 13:33, insgesamt 3-mal geändert.
Benutzeravatar
Bootenks
Beiträge: 1836
Registriert: Sa 29.Mai, 2004 23:36
Wohnort: G?rlitz (?stlichste Stadt Deutschlands)

Beitrag von Bootenks »

versuche es einfach mal so:

shoutbox.tpl

FIND:

Code: Alles auswählen

 <span class="gensmall">
    {shoutrow.TIME}<br />
    <b>{shoutrow.USERNAME}:</b><br />
    {shoutrow.SHOUT}<br/></span>
REPLACE WITH

Code: Alles auswählen

<table><tr><td><span class="gensmall">
    {shoutrow.TIME}<br />
    <b>{shoutrow.USERNAME}</b><br />{shoutrow.AVATAR_IMG}</td><td><span class="gensmall">{shoutrow.SHOUT}</span></td></tr></table>
shoutboxview.php

FIND

Code: Alles auswählen

      $shout = str_replace("\n", "\n<br />\n", $shout);
AFTER, ADD

Code: Alles auswählen

$avatar_img = ($row['user_avatar'] && $row['user_avatar_type']==2 ? '<img width="40" height="40" src=' . $row['user_avatar'] . '>' : ($row['user_avatar'] && $row['user_avatar_type']==3 ? '<img width="40" height="40" src=images/avatars/gallery/' . $row['user_avatar'] . '>' : false));
FIND

Code: Alles auswählen

         'SHOUT' => $shout,
AFTER, ADD

Code: Alles auswählen

'AVATAR_IMG' => $avatar_img,
So könnte es klappen... ~.~ Sag wenn es geklappt hat. ;)
Zuletzt geändert von Bootenks am Mo 21.Mär, 2005 15:04, insgesamt 1-mal geändert.
Benutzeravatar
cuchirice
Beiträge: 123
Registriert: Fr 14.Jan, 2005 21:08

Beitrag von cuchirice »

uhmmm heheh danke erstmal, doch leider funkt. es leider nicht, avatar im shoutbox nichts zusehen. ^_^

liegt es vielleicht an datenbank bitte?
Zuletzt geändert von cuchirice am Mo 21.Mär, 2005 19:25, insgesamt 1-mal geändert.
Benutzeravatar
Bootenks
Beiträge: 1836
Registriert: Sa 29.Mai, 2004 23:36
Wohnort: G?rlitz (?stlichste Stadt Deutschlands)

Beitrag von Bootenks »

lol ja mein Fehler ersetze mal das:

Code: Alles auswählen

$avatar_img = ($row['user_avatar'] && $row['user_avatar_type']==2 ? '<img width="40" height="40" src=' . $row['user_avatar'] . '>' : ($row['user_avatar'] && $row['user_avatar_type']==3 ? '<img width="40" height="40" src=images/avatars/gallery/' . $row['user_avatar'] . '>' : false));
mit dem diesem hier:

Code: Alles auswählen

$avatar_img = ($shout_row['user_avatar'] && $shout_row['user_avatar_type']==2 ? '<img width="40" height="40" src=' . $shout_row['user_avatar'] . '>' : ($shout_row['user_avatar'] && $shout_row['user_avatar_type']==3 ? '<img width="40" height="40" src=images/avatars/gallery/' . $shout_row['user_avatar'] . '>' : false));
so nu müsste es aber klappen :-P
Nur ein Informatik Student. ^^
Benutzeravatar
cuchirice
Beiträge: 123
Registriert: Fr 14.Jan, 2005 21:08

Beitrag von cuchirice »

wieder nichts heheheheh =p

uhmm zwischen frage


memberlist will ich dass die user avatar 60% von originale grösse haben. wie ändern ich das hier bitte


memberlist.tpl

Code: Alles auswählen

<td class="{memberrow.ROW_CLASS}" align="center">&nbsp;{memberrow.AVATAR_IMG}&nbsp;</td>

memberlist.php

Code: Alles auswählen

$avatar_img = ($row['user_avatar'] && $row['user_avatar_type']==2 ? '<img src=' . $row['user_avatar'] . '>' : ($row['user_avatar'] && $row['user_avatar_type']==3 ? '<img src=images/avatars/gallery/' . $row['user_avatar'] . '>' : false));
Zuletzt geändert von cuchirice am Mo 21.Mär, 2005 21:17, insgesamt 1-mal geändert.
Benutzeravatar
Bootenks
Beiträge: 1836
Registriert: Sa 29.Mai, 2004 23:36
Wohnort: G?rlitz (?stlichste Stadt Deutschlands)

Beitrag von Bootenks »

jett bau ich den mod in mein test board ein ~.~ und teste :-P

so änderst du das:
$avatar_img = ($row['user_avatar'] && $row['user_avatar_type']==2 ? '<img width="60%" height="60%" src=' . $row['user_avatar'] . '>' : ($row['user_avatar'] && $row['user_avatar_type']==3 ? '<img width="60%" height="60%" src=images/avatars/gallery/' . $row['user_avatar'] . '>' : false));
Zuletzt geändert von Bootenks am Mo 21.Mär, 2005 21:23, insgesamt 1-mal geändert.
Benutzeravatar
cuchirice
Beiträge: 123
Registriert: Fr 14.Jan, 2005 21:08

Beitrag von cuchirice »

das mit dem memberlist gehts auch nicht heheheh =p
Bild
Benutzeravatar
Bootenks
Beiträge: 1836
Registriert: Sa 29.Mai, 2004 23:36
Wohnort: G?rlitz (?stlichste Stadt Deutschlands)

Beitrag von Bootenks »

So habs eingebaut und gesehen dass es da andee Änderungen bedarf:

Entferne die Änderungen von vorhin und mach folgendes:

shoutbox_view.php

Code: Alles auswählen

##
## FIND
##
	$sql = "SELECT s.*, u.user_allowsmile, u.username FROM " . SHOUTBOX_TABLE . " s, ".USERS_TABLE." u

##
## IN-LINE FIND
##
, u.username

##
## IN-LINE AFTER
##
, u.user_avatar, u.user_avatar_type, u.user_allowavatar

##
## FIND
##
		$shout = str_replace("\n", "\n<br />\n", $shout);

##
## AFTER ADD
##
$avatar_img = '';
if ( $shout_row['user_avatar_type'] && $shout_row['user_allowavatar'] )
{
	switch( $shout_row['user_avatar_type'] )
	{
		case USER_AVATAR_UPLOAD:
			$avatar_img = ( $board_config['allow_avatar_upload'] ) ? '<img width=50% height=50% src="' . $board_config['avatar_path'] . '/' . $shout_row['user_avatar'] . '" alt="" border="0" />' : '';
			break;
		case USER_AVATAR_REMOTE:
			$avatar_img = ( $board_config['allow_avatar_remote'] ) ? '<img width=50% height=50% src="' . $shout_row['user_avatar'] . '" alt="" border="0" />' : '';
			break;
		case USER_AVATAR_GALLERY:
			$avatar_img = ( $board_config['allow_avatar_local'] ) ? '<img width=50% height=50% src="' . $board_config['avatar_gallery_path'] . '/' . $shout_row['user_avatar'] . '" alt="" border="0" />' : '';
			break;
	}
}

##
## FIND
##
			'SHOUT' => $shout,

##
## AFTER ADD
##
			'AVATAR_IMG' => $avatar_img,

##
## save and upload this file
##
Und dann noch hier die tpl Veränderung (die kannste nat. noch nach deinen Wünschen anpassen)

templates/subSilver/shoutbox_view_body.tpl

Code: Alles auswählen

##
## FIND
##
 <span class="gensmall">
     {shoutrow.TIME}<br />
     <b>{shoutrow.USERNAME}:</b><br />
     {shoutrow.SHOUT}<br/></span>

##
## REPLACE WITH
##
   <table><tr><td><span class="gensmall"><center><b>{shoutrow.TIME}<br /><br />{shoutrow.AVATAR_IMG}<br />{shoutrow.USERNAME}</center></b></span></td><td><span class="gensmall">&nbsp;&nbsp;&nbsp;<b><i>{shoutrow.SHOUT}</i></b></span></td></tr></table>
So funktioniert das :-P
Zuletzt geändert von Bootenks am Mo 21.Mär, 2005 22:49, insgesamt 1-mal geändert.
Benutzeravatar
cuchirice
Beiträge: 123
Registriert: Fr 14.Jan, 2005 21:08

Beitrag von cuchirice »

morgen,

also danke! es geht ^_^'

doch bei der shout_view.tpl
ich noch nicht ganz bei mir verzehrt den useravatar,
ich dachte es wär wie html code, ich habs versucht doch ich bringe die verkleinerung von 60% nicht hin =(´sowie hier etwa


Bild


ps. wo kann man ambesten die grundlagen von .php .tpl .css lernen.

danke.
#euch einen schönen tag noch


edit: bei diesem gelegentheit kannst du doch daraus einen mods-addon machen bootenks^_^
Zuletzt geändert von cuchirice am Di 22.Mär, 2005 05:45, insgesamt 2-mal geändert.
Benutzeravatar
Bootenks
Beiträge: 1836
Registriert: Sa 29.Mai, 2004 23:36
Wohnort: G?rlitz (?stlichste Stadt Deutschlands)

Beitrag von Bootenks »

also die Verkleinerung habe ich eigentlich gemacht und das hat auch funktioniert bei mir jeednfalls... allerdings habe ich mir das auch nur mit Firefox angeschaut... Da igng es in dem ich in der img Zeile noch "width=50%" und "height=50%" angegeben habe... Mhm wundert mich, dass es im ie scheinbar da wieder muckiert... mhm wenn es nicht shilft versuche das alles mal vorzu definieren sowas wie: width="40" height="50" oder so ... das ist zwar mist bei einiegen Bilder aber erstmal fällt mir nichts anderes dazu ein...

Diese Modchanges reichen max. für ein Snippet. Also wenn Oxpus hier vorbei fliegt kann er ja das ja dahin kopieren und vielleicht den wichtigen / richten Text mit dem ersten da oben ersetzen oder er macht da ein neuen auf mit diesem Inhalt...

Oder ich mache das dafür brauche ich aber erstmal Oxpus Erlaubnis da zu posten. ;) *jaja ich könnte auch jetzt schon posten aber ich denke in so einem wichtigen Sektor frage ich dann doch lieber ob es genehm ist*
Nur ein Informatik Student. ^^
Benutzeravatar
cuchirice
Beiträge: 123
Registriert: Fr 14.Jan, 2005 21:08

Beitrag von cuchirice »

vielleicht habe ich auch fehler gemacht,

könntest du bitte die 2 file per code hier posten bitte.
danke
Bild
Benutzeravatar
Bootenks
Beiträge: 1836
Registriert: Sa 29.Mai, 2004 23:36
Wohnort: G?rlitz (?stlichste Stadt Deutschlands)

Beitrag von Bootenks »

ich glob bei dem mödchen muss noch was gechanged werden... ich vermute das er so nur deinen eigenen Ava ausgibt... weiss ich aber nicht genau ... ~.~ Geb dir dann in laufe des Tages bescheid. ^^


EDIT: Nö funktioniert alles wunderbar habe es gerade getestet!

Der einzige Hacken ist der Internet Explorer der wertet die % width anzeige nicht nach der Bildgrösse aus sondern nach dem Umfeld... deswegen musst die 50% Werte in der shoutbox_view.php durch feste werte ersetzen was nat. bei verschiedenen Formaten blöd aussehen kann!
Zuletzt geändert von Bootenks am Di 22.Mär, 2005 19:15, insgesamt 1-mal geändert.
Antworten