Ultima actualizare: 21.09.2026.
Acest document explică modul în care este moderat conținutul generat de utilizatori (UGC) în NavTrail. Documentul există pentru a documenta politica noastră publicată privind moderarea conținutului UGC și pentru a oferi utilizatorilor o imagine clară a ceea ce pot să se aștepte. O copie este găzduită public la https://navtrail.app/moderation-ro (alături de politica de confidențialitate).
Dacă ai o întrebare despre o decizie specifică de moderare sau dorești să raportezi conținut pe care fluxul din aplicație nu îl acoperă, trimite email la contact@navtrail.app.
Următoarele zone de funcționalitate acceptă conținut de la utilizatori:
| Funcție | Câmpuri text liber | Durată de viață |
|---|---|---|
| POI-uri comunitare (campare, izvoare, puncte de belvedere, refugii, vulcanizări) | nume (≤ 80 caractere), descriere (≤ 800 caractere) | Permanent până când este raportat / șters de creator |
| Rapoarte de obstacole (copaci căzuți, alunecări, etc.) | descriere (≤ 280 caractere, opțional) | TTL 4 ore, apoi șters automat |
| Alerte SOS | descriere (≤ 280 caractere, opțional), contact_hint (≤ 80 caractere, opțional) | TTL 24 ore, apoi rezolvat automat |
| Mesaje de convoi (Quick-Comms) | presetări fixe sau text liber (≤ 80 caractere), trimise doar în interiorul unui convoi — un grup privat în care intri cu un cod primit direct | Temporare: afișate scurt pe hartă, niciodată stocate pe serverele noastre |
| Porecle convoi | poreclă (≤ 8 caractere, vizibilă doar membrilor convoiului) | 48 de ore după ultima activitate |
| Fotografii | O fotografie opțională pe un punct de interes creat de tine (1 per punct) și până la 2 fotografii pe un traseu salvat propriu. Descriere opțională (≤ 200 caractere). | Până când este ștearsă de cel care a adăugat-o sau ascunsă în urma raportărilor |
| Trasee publicate („Trasee publice") | numele traseului (≤ 120 caractere), descriere (≤ 800 caractere, opțională), un nivel de dificultate și traseul înregistrat în sine, exact așa cum a fost înregistrat | Până când creatorul retrage publicarea sau ascuns în urma raportărilor |
| Excursii din Parteneri de drum (panoul de excursii) | titlu (≤ 80 caractere), descriere (≤ 600 caractere), mesajul unei cereri de a te alătura (≤ 300 caractere), până la 3 fotografii, un profil opțional al vehiculului (marcă și model ≤ 60 caractere, modificări ≤ 200 caractere, o fotografie). Datele de contact sunt respinse de server. | Până când este ștearsă de autor sau eliminată de operator; o excursie încheiată părăsește panoul la 60 de zile după ultima ei zi |
| Conversații din Parteneri de drum | mesaje (≤ 1000 caractere) între autorul unei excursii și o persoană care a cerut să se alăture, deschise doar după ce autorul a răspuns; un număr de telefon pe care expeditorul alege să-l trimită; un cod de convoi | Doar-citire la 30 de zile după excursie, șterse la 90 de zile după ea |
| Evaluări ale partenerilor | 1–5 stele, „ai călători din nou" da/nu, o notă privată opțională (≤ 300 caractere, citită doar de operator) | Până la ștergerea contului |
| Nume utilizator (handle public) | nume utilizator (3–20 caractere, litere/cifre/underscore; afișat pe POI-urile, obstacolele și alertele SOS create de tine în loc de un ID anonim) | Permanent până la ștergerea contului |
Restul (regiuni de hartă descărcate, intrări în calculatorul de presiune anvelope, etc.) este stocat doar pe dispozitivul utilizatorului. Traseele GPS salvate sunt copiate de rezervă privat, în contul propriu, și nu sunt vizibile nimănui — cu excepția cazului în care proprietarul publică explicit un traseu, actul deliberat, per traseu, care îl transformă în conținutul generat de utilizatori din tabelul de mai sus. Nimic nu este publicat vreodată automat.
Cine poate vedea o fotografie. O fotografie adăugată la un punct de interes este publică, pentru că punctele de interes sunt ele însele un strat comunitar partajat — oricine folosește NavTrail le poate vedea. O fotografie adăugată la unul dintre traseele tale salvate este privată cât timp traseul este privat: este salvată în contul tău și restaurată pe un dispozitiv nou, dar nu este inclusă atunci când partajezi traseul respectiv cu altcineva printr-un link. Dacă publici traseul în Trasee publice, fotografiile lui devin publice odată cu el — dialogul de publicare spune asta înainte să confirmi — și redevin private în momentul în care retragi publicarea.
Doar cel care a creat un punct de interes poate adăuga o fotografie la el și doar el o poate șterge. Regula este impusă pe server, nu doar ascunsă în aplicație.
Datele de localizare din fotografii. Fotografiile sunt re-encodate pe dispozitivul tău înainte de a fi stocate sau încărcate, ceea ce elimină metadatele fișierului original — inclusiv coordonatele GPS exacte pe care le înregistrează camera. Facem asta pentru ca publicarea unei fotografii să nu poată publica accidental locul în care locuiești.
contact_hint de pe alertele SOS poate conține informațiile de contact ale raportorului însuși (ex: propriul număr de telefon) dar nu ale altcuiva.NavTrail folosește trei straturi complementare de moderare, susținute de un model de cont consolidat în v1.2: navigarea și postarea de POI-uri/obstacole sunt anonime implicit, dar un utilizator își poate crea un cont permanent, verificat prin email — iar trimiterea unui SOS necesită acum un astfel de cont. Deoarece este nevoie de un email verificat pentru a trimite un SOS, aplicarea la nivel de cont (inclusiv ștergerea contului celui care trimite alerte SOS false) este un factor de descurajare real, alături de controalele server-side de mai jos.
Fiecare nume/descriere de POI, descriere de obstacol și descriere/contact-hint de SOS trece printr-un filtru de listă de cuvinte server-side înainte de inserare. Filtrul folosește potrivire pe cuvânt întreg cu reducerea diacriticelor române (ă/â/î/ș/ț → a/a/i/s/t) pentru a prinde încercări comune de evitare. Conținutul care se potrivește cu lista de cuvinte este respins cu eroarea content_blocked_profanity; utilizatorul vede un mesaj localizat care îi cere să reformuleze.
Implementare: trigger-uri BEFORE INSERT pe pois, reports, sos_alerts în supabase/migrations/0010_ugc_moderation.sql.
Lista de cuvinte este intenționat îngustă (insulte severe + vulgarități comune, ~25 termeni în română și engleză). Preferăm să lăsăm conținut la limită să treacă; calea raportare-și-ascundere-automată de mai jos este a doua linie de apărare.
Fiecare suprafață UGC are o acțiune "🚩 Raportează conținutul" vizibilă tuturor utilizatorilor cu excepția creatorului:
Rapoartele sunt imutabile și vizibile doar raportorului (un utilizator nu poate vedea cine altcineva a mai raportat un rând). Una raportare per utilizator per rând este impusă la nivelul bazei de date.
Când numărul de raportori distincți pentru un rând atinge 3:
is_hidden devine true; POI-ul dispare de pe hartă pentru toată lumea, cu excepția creatorului. O protecție de 24 de ore împotriva vechimii previne griefing-ul POI-urilor abia adăugate.status devine RESOLVED; markerul cade din interogările bbox iar UPDATE-ul Realtime îl elimină de pe hărțile clienților deschiși.resolved_at este marcat cu timpul curent; același efect de eliminare.is_hidden devine true la 3 raportori unici, fără întârziere de vârstă. Traseul dispare din Trasee publice și fișierul lui GPX nu mai poate fi descărcat — pentru toată lumea, imediat. Copia creatorului — propria lui înregistrare — nu este atinsă niciodată; ascunderea scoate un traseu din circulație, nu șterge datele nimănui.Trigger-urile rulează ca funcții SECURITY DEFINER și marchează resolved_by_user_id = NULL astfel încât jurnalul de audit distinge rezolvarea-de-sistem de rezolvarea-umană.
Implementare: poi_auto_hide_on_reports, report_auto_resolve_on_reports, sos_auto_resolve_on_reports.
Descrierile fotografiilor trec prin același filtru server-side de cuvinte ca orice alt câmp de text liber. Imaginea în sine nu este inspectată automat. Preferăm să spunem asta direct, în loc să sugerăm o capacitate pe care nu o avem: niciun sistem automat nu analizează conținutul pozei.
Comunitatea este protejată printr-o combinație de măsuri:
Chiar și conținutul pe care nimeni nu îl raportează nu trăiește la nesfârșit:
Rândurile expirate / rezolvate sunt curățate de joburi pg_cron la fiecare 15 minute până la 1 oră, în funcție de tabel.
Orice utilizator poate bloca alt utilizator din aplicație. Blocarea ascunde tot ce a contribuit acea persoană — inclusiv conținutul postat înainte de blocare — din ce vezi tu: punctele lui de interes, fotografiile lui, traseele lui publicate și excursiile lui din Parteneri de drum, și închide orice conversație dintre voi de pe panoul de excursii, în ambele sensuri. Are efect imediat și se aplică oriunde ar apărea altfel acel conținut.
Blocarea este privată. Persoana blocată nu este anunțată și nimic nu se schimbă pentru ceilalți. Poți vedea pe cine ai blocat și îl poți debloca oricând din setările aplicației; deblocarea îi readuce conținutul în harta ta, pentru că nimic nu a fost șters.
Pentru conținut care ocolește straturile automate (o singură postare foarte toxică care nu declanșează lista de cuvinte și nu este văzută de încă 3 utilizatori), operatorul (Constantin, contact@navtrail.app) își rezervă dreptul de a:
Fiecare raportare generează acum o notificare imediată către operator, iar toate raportările — pentru puncte de interes, fotografii, obstacole și alerte SOS — sunt adunate într-o singură listă de revizuire care arată ce a fost raportat, de ce, câte persoane au raportat, dacă a fost deja ascuns automat și unde se află. Operatorul revizuiește această listă și poate ascunde sau restaura din ea orice element raportat.
Aceste acțiuni sunt luate ca răspuns la raportările din aplicație, la rapoarte prin email la contact@navtrail.app sau prin observare proactivă de către operator. Acțiunile operatorului sunt înregistrate dar nu sunt vizibile public.
Tu poți:
contact@navtrail.app cu ID-ul tău (vizibil în Setări → Despre) și îl vom șterge în 30 de zile.Dacă găsești conținut abuziv care nu a fost ascuns automat de acțiunea de raportare din aplicație:
contact@navtrail.app direct, cu un screenshot. Ne angajăm la primul răspuns în 48 de ore și la eliminarea conținutului care încalcă clar regulile în 7 zile.Această politică se poate modifica pe măsură ce aplicația crește. Modificările materiale vor fi anunțate în notele de versiune ale aplicației și reflectate în data "ultima actualizare" de la începutul acestui document. Versiunea curentă trăiește mereu la https://navtrail.app/moderation-ro.