Heiko schrieb am 08.03.2003 um 11:37 Uhr
Hallo,
wenn ich im Admincenter einen User bearbeite, habe ich die Möglichkeit, als Avatar "notallowed" einzutragen. Der User hat dann auch bei freigeschalteten Avataren keine Möglichkeit mehr, selbst ein Avatar festzulegen.
Aber nur solange, bis er sein Profil ändert. Nach einer Speicherung seines Profils hat er wieder die Möglichkeit, eigene Avatare festzulegen.
Kann mir nicht vorstellen, daß das so gewünscht ist.
? ThWboard-Version 2.81
? PHP-Version 4.2.3
? Web-Server-Version Microsoft-IIS/5.0
? MySQL-Version 3.23.39
? Provider: Webjanssen
? eingebaute Hacks: eigener Moderatoren-Hack
Gruß
Heiko
www.scheidungskinder.de/board/ (Testversion)
Jonas schrieb am 09.03.2003 um 13:57 Uhr
scheinbar dadurch, dass sein avatar dann als leerer string gespeichert wird, und net mehr als notallowed...
Heiko schrieb am 09.03.2003 um 20:59 Uhr
Habe in der "do_editprofile.php" folgenden Code (ab ~117) gefunden.
if ( $user['useravatar'] == "notallowed" )
{
$user['useravatar'] = "";
}
Beim ersten Userseitigen speichern des Profils wird also das "notallowed" gelöscht.
Den Code herauszukommentieren macht keinen Sinn, dann käme eine Fehlermeldung. Bin aber mal am Nachschauen, wie das geht.
Heiko schrieb am 09.03.2003 um 21:57 Uhr
Folgendes sollte funktionieren.
In der "do_editprofile.php" ab Zeile ~117 den Code
if ( $user['useravatar'] == "notallowed" )
{
$user['useravatar'] = "";
}
if ( $config['useravatar'] == 1 )
{
if ( $intavatar == "avatar/noavatar.gif" )
{
$user['useravatar'] = "";
}
else
{
$user['useravatar'] = $intavatar;
}
}
elseif ( $config['useravatar'] == 2 )
{
if ( $user['useravatar'] )
{
checksize($user['useravatar']);
}
}
elseif ( $config['useravatar'] == 3 )
{
if( ( $intavatar != "avatar/noavatar.gif" ) && ( !$user['useravatar'] ) )
{
$user['useravatar'] = $intavatar;
}
elseif ( $user['useravatar'] )
{
checksize($user['useravatar']);
}
else
{
$user['useravatar'] = "";
}
}
else
{
$user['useravatar'] = "";
}
durch folgenden Code ersetzen:
if ( $user['useravatar'] != "notallowed" )
{
if ( $config['useravatar'] == 1 )
{
if ( $intavatar == "avatar/noavatar.gif" )
{
$user['useravatar'] = "";
}
else
{
$user['useravatar'] = $intavatar;
}
}
elseif ( $config['useravatar'] == 2 )
{
if ( $user['useravatar'] )
{
checksize($user['useravatar']);
}
}
elseif ( $config['useravatar'] == 3 )
{
if( ( $intavatar != "avatar/noavatar.gif" ) && ( !$user['useravatar'] ) )
{
$user['useravatar'] = $intavatar;
}
elseif ( $user['useravatar'] )
{
checksize($user['useravatar']);
}
else
{
$user['useravatar'] = "";
}
}
else
{
$user['useravatar'] = "";
}
}
Danach in der "editprofile.php" den Code ab Zeile ~51
if( ( $config['useravatar'] != '0' ) && ( $user['useravatar'] != 'notallowed' ) )
{
$Tavatarrow = new Template("templates/" . $style['styletemplate'] . "/avatarrow.html");
$Tavatarpre = new Template("templates/" . $style['styletemplate'] . "/avatarpre.html");
$Tavatarop = new Template("templates/" . $style['styletemplate'] . "/avatarop.html");
durch folgenden ersetzen:
if ( $config['useravatar'] != '0' )
{
if ( $user['useravatar'] == 'notallowed' )
{
$ava_type = 'hidden';
}
else
{
$ava_type = 'text';
}
$Tavatarrow = new Template("templates/" . $style['styletemplate'] . "/avatarrow.html");
$Tavatarpre = new Template("templates/" . $style['styletemplate'] . "/avatarpre.html");
$Tavatarop = new Template("templates/" . $style['styletemplate'] . "/avatarop.html");
Als letztes muß in der "avatarop.html in Zeile 2 folgender Code
<input class="tbinput" type="text" size="70" name="user[useravatar]" value="$avatarentry"><br>
durch diesen ersetzt werden:
<input class="tbinput" type="$ava_type" size="70" name="user[useravatar]" value="$avatarentry"><br>
Jetzt kann der User keine Avatare mehr auswählen. Er hat allerdings selber die Möglichkeit, sich zu sperren, wenn er selbst "notallowed" eingibt. Er kann aber im Admincenter wieder freigegeben werden.
Gruß
Heiko
Superhausi schrieb am 31.03.2003 um 22:47 Uhr
-> Fixed in CVS