[pSys 0.6.3 beta: Blog] Kommentare in Kommentarübersicht sind nun löschbar

Begonnen von k00ni, 09. Dezember 2007, 14:19:01

Vorheriges Thema - Nächstes Thema

k00ni

(pSys-Version: pSys 0.6.3 beta, mit FCK Editor 2.5)
Zur Zeit gibt es keine Möglichkeit, Kommentare zu löschen. Außer man geht in den phpMyAdmin und macht dies dort. Sehr umständlich finde ich.
Hier mal ein kleiner Hack, welches erlaubt, in der Kommentarübersicht durch klick auf ein kleines \"X\", bestimmte Kommentare zu löschen.
Eines vorne weg: Zur Zeit ist es nicht möglich, die Rechte für den Blog im Backend zu setzen. Deshalb hab ich die entsprechende Option auskommentiert und es wird erstmal nur abgefragt, ob man Administrator ist oder nicht. (Stand 09.12.2007)

Änderungen:
In der blogkom.php ca. in Zeile 24 folgende Zeile
 

//-- Löschen
if ( $user[\'userblog\'] !=\"gesperrt\" and $user[\'userblog\'] !=\"\" and $delid > 0) {
@mysql_query(\"Delete FROM $tab_blogkom where id=\'$delid\'\", $serverid);
}

 
 
durch folgende ersetzen
 

//-- Löschen
if ( (($user[\'userblog\'] !=\"gesperrt\" and $user[\'userblog\'] !=\"\") OR $user[\'usertyp\'] == \'admin\' )
 AND $delid > 0) {
@mysql_query(\"Delete FROM $tab_blogkom where id=\'$delid\'\", $serverid);
}

 
 
Die Möglichkeit zum Löschen von Kommentaren wurde vom Powie bereits implementiert, nur leider gibt es keinerlei Zugriff auf diese Funktionalität.
Dies ändern wir mit folgendem Schritt:
In der blogkom.php in Zeile 88 nach folgendem Code:
 

echo \"\";

 
 
diesen hier schreiben
 

// Vorerst ist es nur Admins möglich hier Änderungen vorzunehmen.
// if ( $user[\'userblog\'] != \"gesperrt\" AND $user[\'userblog\'] != \"\" )
if ($user [usertyp] == \'admin\')
{
     // Löschbutton einfügen
     echo    \'\' .
              \'\' .
           \'  \';
}

 
 
Wird die entsprechende Implementierung vom Powie freigeschaltet, so kann man einfach die erste Zeile mit dem if entkommentieren und diese Abfrage nutzen. Vorerst wird es nur Administratoren erlaubt sein, Kommentare zu löschen.
Für alle Faulen hab ich die Datei angehangen.

Soweit ich es sehen kann, wird in der blogkom.php nicht geprüft, wer eigentlich löschen möchte. So ist es möglich, beliebige Kommentare ohne Benutzerprüfung zu löschen - dies kann man spielend leicht automatisieren.

k00ni

Eigentlich nicht, denn ich prüfe auf folgende Dinge:
- $user[\'userblog\'] !=\"gesperrt\" AND
- $user[\'userblog\'] !=\"\" OR
- $user[\'usertyp\'] == \'admin\'  
   
Wie soll hier ein normaler User die Bedingung erfüllen? Selbst wenn er eine gültige Delid übergeben kann, wird keine der ersten 2 Bedingungen erfüllt.
Da die Implementierung von Powies Seite noch nicht eingebaut wurde, also das man einzelnen Usern Zugriffsrechte für den Blog geben kann, habe ich das erstmal auf den Admin beschränkt. Das man dies dann als Admin automatisieren könnte, ok. Aber dann muss man sich seine Admins halt sauber aussuchen :ugly: Was du sonst meinen könntest, weiß ich nicht.
 
Grüße

Wie soll hier ein normaler User die Bedingung erfüllen? Selbst wenn er eine gültige Delid übergeben kann, wird keine der ersten 2 Bedingungen erfüllt.[/quote]
In meinem Test funktionierte es, auch ohne eingeloggt zu sein. Ich kann dies aber gerade nicht nachvollziehen - mit dem Konqueror, der keine Cookies speichert, funktionierte es eben nicht: Es wurde korrekt die Login-Maske angezeigt.
Entwarnung.

all your base are belong to us