Hloupá chyba v diskuzích konečně odstraněna
Článek na Zvědavci (https://zvedavec.news)
URL adresa článku:
https://zvedavec.news/zvedavec/2004/04/847-hloupa-chyba-v-diskuzich-konecne-odstranena.htm
Vladimír Stwora
V podstatě to nestojí za psí štěk a já jsem uvažoval, zda tomu vůbec věnovat samostatný článek, ale pak jsem si říkal, měli byste to vědět. Ne-li pro nic jiného, tedy proto, abyste mě upozornili na případné chyby.
Dosud diskuzní stránka fungovala tak, že kliknutím na počet nových příspěvků se zobrazily všechny větve obsahující nové příspěvky od vaší poslední návštěvy. Ale to platilo jen při prvním zobrazení a na první stránce příspěvků. Bylo-li příspěvků více, nebo reagovali-li jste na některý příspěvek vlastním komentářem, pak při novém načtení stránky vám to bez varování zobrazilo všechny příspěvky. Ta chyba tam byla snad od začátku a mnoho lidí si na ni stěžovalo.
V čem byl problém (aneb trošku technických informací)
Číslo naposledy viděného příspěvku se ukládá do cookies. A cookies lze v php zapsat jen na začátku stránky. Takže při prvním načtení se přepsalo číslo posledního příspěvku a pak už se nedalo nic dělat. Z hlediska počítače jste už viděli všechny příspěvky.
Řešení
Cookies s číslem naposledy viděného příspěvku neukládám na stránce diskuzí jako dříve, ale až na první stránce po návratu z diskuzí. Toto řešení sebou přineslo výhody i nevýhody.
Výhody
Na stránce diskuze můžete nyní volně přepínat mezi zobrazením všech příspěvků, nebo pouze těch nových. Můžete vkládat příspěvky a prohlížet stránky. Dokud se nevrátíte do Zvědavce (lhostejno, zda na začátek nebo na článek), systém si bude "pamatovat" jen nové příspěvky.
Nevýhody
Nevrátíte-li se už z diskuzní stránky do Zvědavce, neuloží se vám do cookies opravena hodnota posledně viděného příspěvku. A při příští návštěvě (třeba za několik dnů) se vám tedy už jednou viděné příspěvky budou znovu zobrazovat jako nové.
Prosím dejte mi vědět, bude-li se vám zdát, že něco nepracuje, jak by mělo.
Článek byl publikován 17.4.2004
Článek je možno dále šířit podle licence Creative Common.