Seite 1 von 1

Avatar Größe wird ignoriert

Verfasst: 09.03.2011 10:56
von -Sun-
Hi,

ich hab ein Problem mit den Avataren. Ich hab im ACP die Max-Größe auf 152 x 152 gesetzt. Es können aber beliebig große Bilder hochgeladen werden. Dies zerschießt natürlich dann das Layout. Bei der Dateigröße kommt richtigerweise eine Fehlermeldung.

Es scheint auch das die Einstellung für Bildgrößen in den Beiträgen ignoriert wird. Meine Vermutung geht in Richtung PHP. Kann es sein das mir eine Extension fehlt oder ich noch etwas einstellen muss?

Server:
Windows Server 2008

PHPBB:
PHPBB3 V3.0.8
Subsilver2
deutsche Verion

PHP:
PHP V5.2.9

Wenn Ihr noch mer Infos braucht bitte sagen.

Vielen Dank im Voraus
Gerhard

Re: Avatar Größe wird ignoriert

Verfasst: 09.03.2011 20:12
von -Sun-
Hab jetzt nochmal ein wenig in die \includes\functions_user.php geschaut und einen Bug / Workaround gefunden.

Die Function "avatar_process_user" hat IMO einen Fehler.

Der Upload eines Avatars läuft in Zeile 2350 in folgenden Code

Code: Alles auswählen

	if ((!empty($_FILES['uploadfile']['name']) || $data['uploadurl']) && $can_upload)
	{
		list($sql_ary['user_avatar_type'], $sql_ary['user_avatar'], $sql_ary['user_avatar_width'], $sql_ary['user_avatar_height']) = avatar_upload($data, $error);
	}
Danach geht es auf Grund des IF Konstruktes nicht mehr in eine Größenüberprüfung. Ich hab den obigen IF wie folgt abgeändert

Code: Alles auswählen

	if ((!empty($_FILES['uploadfile']['name']) || $data['uploadurl']) && $can_upload)
	{
		list($sql_ary['user_avatar_type'], $sql_ary['user_avatar'], $sql_ary['user_avatar_width'], $sql_ary['user_avatar_height']) = avatar_upload($data, $error);
		$data['width'] = $sql_ary['user_avatar_width'];
		$data['height'] = $sql_ary['user_avatar_height'];
		if (($config['avatar_max_width'] || $config['avatar_max_height']))
		{
			if ($data['width'] > $config['avatar_max_width'] || $data['height'] > $config['avatar_max_height'])
			{
				$error[] = sprintf($user->lang['AVATAR_WRONG_SIZE'], $config['avatar_min_width'], $config['avatar_min_height'], $config['avatar_max_width'], $config['avatar_max_height'], $data['width'], $data['height']);
			}
		}
	}
Und so scheints einwandfrei und wie erwartet zu funktionieren.

Da ich aber nur so nebenbei ein wenig PHP mache, wäre es super wenn das noch jemand prüfen könnte ;)

Ciao
Gerhard

Re: Avatar Größe wird ignoriert

Verfasst: 09.03.2011 21:12
von DeepSurfer
Benutzt Du eines von den Standard Styles oder hast Du ein anderen hinzufügt ?

EDIT: Jo...subsilver2...hab ich doch tatsächlich übersehen.

Re: Avatar Größe wird ignoriert

Verfasst: 09.03.2011 21:54
von -Sun-
Siehe erster Post. Ist Subsilver2, also standard.