bine ați navigat pe insula mea de pe internet

Pure Blog Discover - ultimele îmbunătățiri

De la ultimul articol am mai adăugat câteva lucruri la Pure Blog Discover. Unele sunt vizibile imediat, altele funcționează în fundal.

Sortare și filtrare

Lista de jurnale are acum două opțiuni de sortare - ordinea aleatorie care exista deja și o nouă sortare alfabetică A-Z. Butonul de comutare între ele e vizibil deasupra grilei.

Tot acolo a apărut și un dropdown de filtrare după limbă. Codul de limbă al fiecărui jurnal e detectat automat din atributul lang al paginii la momentul adăugării, iar dropdown-ul se populează dinamic cu toate limbile prezente în director. Dacă vrei să vezi doar jurnale în română, sau doar în engleză, dai un click.

Widget de statistici

Sub header apare acum un mic panou cu două informații: distribuția jurnalelor pe limbi, afișată ca pill-uri colorate cu numărul de jurnale per limbă, și o listă cu ultimele 5 jurnale adăugate în director. Ambele se actualizează la fiecare încărcare a paginii, fără nicio configurare.

Aprobare manuală în admin

Scanarea automată săptămânală marchează jurnalele unde nu mai detectează Pure Blog cu un badge Needs review. Dacă jurnalul respectiv e legitim - poate a schimbat tema temporar sau a avut o problemă de server în ziua scanării - anterior singura opțiune era să aștepți scanarea următoare sau să ștergi și să re-adaugi jurnalul.

Acum există un buton „Approve" direct pe rândul jurnalului marcat. Apăsând pe el, jurnalul revine la approved imediat, fără reload complet și fără să mai aștepți luni dimineața. La următoarea scanare automată, dacă detecția eșuează din nou, jurnalul va fi re-marcat.

Pe de altă parte, scanarea face și operațiunea inversă automat: dacă un jurnal era deja marcat cu needs_review și la verificarea următoare Pure Blog este detectat din nou, statusul revine la approved fără intervenție manuală.

Câteva detalii tehnice

IP-urile celor care adaugă jurnale nu se stochează în clar în blogs.json - fiecare IP trece printr-un hash SHA-256 înainte de salvare. Nu e ceva vizibil pentru utilizatori, dar era ceva ce trebuia rezolvat din perspectiva datelor personale.

Tot în backend, blogs.json se scrie acum printr-un fișier temporar care apoi e redenumit atomic. Înseamnă că dacă două requesturi simultane încearcă să scrie în același timp, fișierul nu ajunge corupt.

Există și un endpoint de diagnostic la api.php?action=ping care returnează starea mediului - versiunea PHP, dacă cURL e disponibil, dacă sesiunile funcționează și dacă fișierele de date sunt accesibile și au permisiuni de scriere. Util la deploy pe un hosting nou sau la depanare.

← Înapoi

Comentarii