Avatar-Upload: zeitliche Sperre: Wie?

Probleme bei der regulären Arbeiten mit phpBB, Fragen zu Vorgehensweisen oder Funktionsweise sowie sonstige Fragen zu phpBB im Allgemeinen.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.1, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Matlock
Mitglied
Beiträge: 288
Registriert: 01.07.2003 12:32
Wohnort: Südpfalz
Kontaktdaten:

Beitrag von Matlock »

QCO hat geschrieben::D ok, war ja auch nur ein schuss ins blaue
hab noch ein paar fehler rausgemacht:

Code: Alles auswählen

    if ( !empty($userdata['user_avatar']) && ( @fileatime(@phpbb_realpath('./' . $board_config['avatar_path'] . '/' . $userdata['user_avatar']))+60*60*24*30 > time() ) && ( !empty($user_avatar_upload) || !empty($user_avatar_name) || !empty($user_avatar_remoteurl) || !empty($user_avatar_local) ) ) { 
        $error = true; 
        $error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . 'Du darfst deinen Avatar nur alle 30 Tage ändern.'; 
    }
leider hab ich grad keine boardinstallation, in der ich das gefahrlos testen könnte...

Jetzt funktionierts, danke :)

@Henne23: ja, Avatar war schon auf dem Server.



Aaaaaaber: Obwohl es funktioniert, ist es letztlich wirkungslos. Denn wenn der User nicht einfach nen neuen Avatar hochlädt, sondern in einem ersten Schritt den alten löscht, geht die Zeitabfrage ins Leere, da dann ja keine Datei mehr da ist.

Daher Folgefrage:
Wie deaktiviere ich für die User (also für alle User) das Löschen des Avatars?

Im Adminbereich sollte das Löschen aber weiterhin funktionieren, logo.


Matlock
Mitglied
Beiträge: 288
Registriert: 01.07.2003 12:32
Wohnort: Südpfalz
Kontaktdaten:

Beitrag von Matlock »

Die Folgefrage von eben hat sich erledigt. In der profile_add_body.tpl konnte ich die Löschfunktion rauskommentieren.

Danke nochmal an alle, die sich hier beteiligt haben.


Benutzeravatar
QCO
Mitglied
Beiträge: 708
Registriert: 15.03.2003 12:30
Wohnort: Leipzig

Beitrag von QCO »

ok, anderer vorschlag, der sicherer ist. allerdings verbunden mit einem neuen db-feld.

wieder includes/usercp_register.php
nach (etwa zeile 382)

Code: Alles auswählen

	$avatar_sql = '';
einfügen

Code: Alles auswählen

// uploadsperre 30 tage
    if ( ( $userdata['user_last_avatar_change']+60*60*24*30 > time() ) && ( !empty($user_avatar_upload) || !empty($user_avatar_name) || !empty($user_avatar_remoteurl) || !empty($user_avatar_local) || isset($HTTP_POST_VARS['avatardel']) ) )
    { 
        $error = true; 
        $error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . 'Du darfst deinen Avatar nur alle 30 Tage ändern.'; 
    }
    else
    {
// uploadsperre 30 tage ende
nach (etwa zeile 430)

Code: Alles auswählen

            $avatar_sql = user_avatar_gallery($mode, $error, $error_msg, $user_avatar_local);
        }
einfügen

Code: Alles auswählen

// uploadsperre 30 tage
	}
// uploadsperre 30 tage ende
und abschließend noch nach (etwa 436)

Code: Alles auswählen

		if ( $avatar_sql == '' )
		{
			$avatar_sql = ( $mode == 'editprofile' ) ? '' : "'', " . USER_AVATAR_NONE;
		}
einfügen

Code: Alles auswählen

// uploadsperre 30 tage
		else
		{
			$avatar_sql .= ', user_last_avatar_change = ' . time();
		}
// uploadsperre 30 tage ende
jetzt noch die db-änderung:

Code: Alles auswählen

ALTER TABLE `phpbb_users` ADD `user_last_avatar_change` INT( 11 ) DEFAULT '0' NOT NULL
damit wird jede änderung des avatars (löschen, neuanlegen, ändern in irgendeiner form) erfasst. ich hab es nur ganz kurz getestet und schien zu arbeiten
Schnelle direkte Hilfe? Modeinbau? Umfassender, persönlicher Support? Ein individuelles Design/Template?
Ich bin käuflich und löse zu kleinen Preisen Deine Probleme. Anfragen bitte per PN oder Mail.
Matlock
Mitglied
Beiträge: 288
Registriert: 01.07.2003 12:32
Wohnort: Südpfalz
Kontaktdaten:

Beitrag von Matlock »

QCO hat geschrieben:ok, anderer vorschlag, der sicherer ist. allerdings verbunden mit einem neuen db-feld.
Thanks nochmal. Wir versuchen es zunächst ne Weile mit der ersten Lösung, ich hab mir den Thread aber sicherheitshalber mal gebookmarked ;)
Antworten

Zurück zu „phpBB 2.0: Administration, Benutzung und Betrieb“