Co takhle editovatelné komentáře?
Stalo se vám někdy, že jste udělali nějakou chybu při psaní komentáře nebo že jste ho prostě upravit? Mně ano. Několikrát.
A co náhled?
Částečným řešením je náhled komentáře, který mám mimochodem velice rád. Dá Vám jistotu, že jste se nesekli v texy syntaxi a že prostě vše vypadá tak jak má. Přesto se ale může stát, že se prostě seknete. Pak už není úniku, bohužel.
A co editovatelné komentáře?
Ano, přesně to mě včera napadlo. Myslím, že by nebyl problém je na blozích zavést. Představte si, že byste mohli ještě určitý čas po odeslání komentář editovat. Moje představa vypadá takto:
- vygenerování náhodného řetězce a jeho uložení do cookie komentujícího a do databáze na weblogu
- evidence dle id článku a komentáře, přecijen se může stát, že nás
generátor zklame (popř. ještě
ověření IP, vivat paranoia
) - volba doby, po kterou může pisatel komentář editovat (popř. kolikrát může komentář upravit)
- zakázání editace v případě, že na komentář někdo zareagoval
A teď to samé trochu obšírněji. Při uložení komentáře by se
vygeneroval náhodný řetězec, který by se podstrčil uživateli pomocí
cookie a zároveň by byl uložen ke komentáři do databáze weblogu.
Uživateli by se podstrčila ještě id článku a komentáře, abychom
eliminovali možnost více stejných náhodných řetězců (mohlo by se pak
stát, že by některý uživatel mohl manipulovat s cizím komentářem).
Koláčkům bychom nastavili dobu platnosti. Do databáze bychom mohli uložit
ještě IP adresu komentujícího, popř. nulu (false) nebo jedničku (true).
Jednička znamená znemožnění editace, pokud na komentář
někdo zareagoval. A vlastně ještě počet povolených editací (také
do databáze).
Při výpisu komentářů by si aplikace (CMS weblogu) sáhla do databáze pro potřebná data (id komentáře a článku, náhodný řetězec, IP adresu komentujícího, počet povolených editací a booleovskou hodnotu pro zákaz editace v případě reakce na komentář) a do prohlížeče uživatele pro případné cookies. Pokud by je tam nalezla, porovnala by je s těmi, co si vybrala z databáze. V případě, že by vše sedělo, u komentáře, který ověřovala by vypsala odkaz (nebo tlačítko, jak je libo) na editaci. Tenhle proces by se opakoval u všech uložených komentářů.
Slovo závěrem
Je možné, že jsem se někde sekl, poměrně slušně jsem se do toho zamotal. Řešení klidně vylepšete a/nebo použijte na svém weblogu, proto ho zde také uveřejňuji.
Nedovedu zde jednoznačně říct, jestli by toto vylepšení bylo spíše přínosem nebo přítěží. To lze zjistit snad jenom otestováním.
Editaci komentářů můžeme samozřejmě zkombinovat i s náhledem komentáře.