Seite 1 von 1

avatar resize mod beim 2.0.5

Verfasst: 05.07.2003 16:59
von Gast
leider ist dieser mod nur für das phpbb 2.0.1 ausgelegt. beim 2.0.3 hat er auch noch funktioniert. das problem ist, dass der teil der in der usercp_avatar.php ersetzt werden soll nicht mehr dem in der installationsanweisung entspricht.

in der anweisung sieht er so aus:

Code: Alles auswählen

function user_avatar_url($mode, &$error, &$error_msg, $avatar_filename)
{
	if ( !preg_match('#^(http)|(ftp):\/\/#i', $avatar_filename) )
	{
		$avatar_filename = 'http://' . $avatar_filename;
	}
	
	//if ( !preg_match('#^((http)|(ftp):\/\/[a-zA-Z0-9\-]+?\.([a-zA-Z0-9\-]+\.)+[a-zA-Z]+(:[0-9]+)*\/.*?\.(gif|jpg|jpeg|png)$)#is', $avatar_filename) )
		
	if ( !preg_match('(gif|jpg|jpeg|png)', end(split("\.",$avatar_filename))) )
	{
		$error = true;
		$error_msg = ( !empty($error_msg) ) ? $error_msg . '<br />' . $lang['Wrong_remote_avatar_format'] : $lang['Wrong_remote_avatar_format'];
		return;
	}
	
	return ( $mode == 'editprofile' ) ? ", user_avatar = '" . str_replace("\'", "''", $avatar_filename) . "', user_avatar_type = " . USER_AVATAR_REMOTE : '';
}
und in der aktuellen usercp_avatar.php so:

Code: Alles auswählen

function user_avatar_url($mode, &$error, &$error_msg, $avatar_filename)
{
        if ( !preg_match('#^(http)|(ftp):\/\/#i', $avatar_filename) )
        {
                $avatar_filename = 'http://' . $avatar_filename;
        }

        if ( !preg_match('#^((http)|(ftp):\/\/[\w\-]+?\.([\w\-]+\.)+[\w]+(:[0-9]+)*\/.*?\.(gif|jpg|jpeg|png)$)#is', $avatar_filename) )
        {
                $error = true;
                $error_msg = ( !empty($error_msg) ) ? $error_msg . '<br />' . $lang['Wrong_remote_avatar_format'] : $lang['Wrong_remote_avatar_format'];
                return;
        }

        return ( $mode == 'editprofile' ) ? ", user_avatar = '" . str_replace("\'", "''", $avatar_filename) . "', user_avatar_type = " . USER_AVATAR_REMOTE : '';

}
ersetzt werden soll das ganze damit:

Code: Alles auswählen

function user_avatar_url($mode, &$error, &$error_msg, $avatar_filename)
{
	global $board_config, $lang;
	
	if ( !preg_match('#^(http)|(ftp):\/\/#i', $avatar_filename) )
	{
		$avatar_filename = 'http://' . $avatar_filename;
	}
	
	//if ( !preg_match('#^((http)|(ftp):\/\/[a-zA-Z0-9\-]+?\.([a-zA-Z0-9\-]+\.)+[a-zA-Z]+(:[0-9]+)*\/.*?\.(gif|jpg|jpeg|png)$)#is', $avatar_filename) )
		
	if ( !preg_match('(gif|jpg|jpeg|png)', end(split("\.",$avatar_filename))) )
	{
		$error = true;
		$error_msg = ( !empty($error_msg) ) ? $error_msg . '<br />' . $lang['Wrong_remote_avatar_format'] : $lang['Wrong_remote_avatar_format'];
		return;
	}
	
	list($width, $height) = @getimagesize($avatar_filename);
	
	if ( ($width > $board_config['avatar_max_width']) || ($height > $board_config['avatar_max_height']) )
	{
		$l_avatar_size = sprintf($lang['Avatar_imagesize'], $board_config['avatar_max_width'], $board_config['avatar_max_height']);

		$error = true;
		$error_msg = ( !empty($error_msg) ) ? $error_msg . '<br />' . $l_avatar_size : $l_avatar_size;
		return;
	}
	
	return ( $mode == 'editprofile' ) ? ", user_avatar = '" . str_replace("\'", "''", $avatar_filename) . "', user_avatar_type = " . USER_AVATAR_REMOTE : '';

}
kann ich den block trotzdem einfach ersetzen? :-?

Verfasst: 05.07.2003 17:17
von Chaze
Mach einfach ein Backup der Datei und probiere es aus ;-)

Verfasst: 05.07.2003 17:44
von Gast
ok habe ich. funktioniert leider nicht. es kam aber auch keine fehlermeldung.

Verfasst: 05.07.2003 23:05
von Gast
diese funktion wäre mir schon sehr wichtig.... :-?

Verfasst: 06.07.2003 08:58
von Chaze