Feature request: "zobacz posty od ostatniej wizyty&quot

0

Hej!

Szukałem na tym forum, nie znalazłem podobnej prośby... W tym forum brakuje mi jednej rzeczy - opcji "zobacz posty od ostatniej wizyty". Jest to dla mnie podstawowa metoda czytania wszelakich for, imho tu też by się przydała.

BTW, kolejny głos za jabberkiem (+ powiadamianie komunikatorem o nowych postach w zaznaczonych wątkach) ;)

0

Ja bym dodał jeszcze "Oznacz wszystkie posty jako przeczytane" ... czasem przydatne (chyba) [hurra]

0

Ja bym dodał jeszcze "Oznacz wszystkie posty jako przeczytane" ... czasem przydatne (chyba)

Popieram - ta opcja przydałaby się.

0

Obecny system przechowywania informacji o przeczytanych tematach nie umozliwia tego (tzn. na sile mozna, ale pomnozy to ilosc danych w bazie wskutek czego moze spowolnic jej dzialanie).

//Poza tym - to było wałkowane 100 razy - zawsze odpowiedź była negatywna - M

0

Hmmm... skoro było to tyle razy wałkowane, to jednak jest na to zapotrzebowanie. Ja rozumiem, projekt open source, no ale skoro to jest w każdym innym systemie forum, jest używane przez wiele osób... ok, przyzwyczaję się na razie do rss przez jabbera.

0

Jeżeli chodzi o "zobacz posty od ostatniej wizyty" to hm....
W profilu możesz ustawić sortowanie na forum według ostatniej modyfikacji. Czy to Tobie nie wystarcza ?

0

Nie bardzo. Nie chce mi się wchodzić na każde forum z osobna, żeby tylko spojrzeć czy coś nowego jest. To powinno być pod jednym kliknięciem, jak na każdym innym forum. Zresztą, nigdy nie pamiętam, kiedy ostatnio przeglądałem forum ani też które dokładnie wątki już czytałem, a które jeszcze nie. I nie wydaje mi się, by dziś była taka potrzeba.

0

wszystko jest ladnie odroznione co czytales a co nie, co nowe a co nie.. zarwono posty jak i cale fora....
w czym problem?

ponadto nie widze zbytnio sensu takiej opcji.. po co mi np widak ost postow np z JS skoro o tym pojecia nie mam?

ps. na glownej masz ost posty :P

0

//Poza tym - to było wałkowane 100 razy - zawsze odpowiedź była negatywna - M

To, że było wałkowane, nie znaczy że nie jest potrzebne. Czasem po prostu za dużo osób "z autorytetem" się wypowie w wątku i reszta już nie pisze. Wiem, nie należy robić z tego systemu giganta na glinianych nogach jak phpbb czy invision, ale parę ulepszeń chyba nie zawadzi zaproponować, a potem wdrożyć. To jest bardzo przydatna funkcja, jeśli już zdecydowano się na prowadzenie tabeli (bo to chyba tak się nazywa) z przeczytanymi/nieprzeczytanymi tematami... to czemu nie zrobiono tego? (Pewnie się teraz buńczucznie mądrze, jeśli tak, to przepraszam, jestem po prostu zwykłym userem i mówię co mi zawadza, a zaznaczam, że nie robię tego często, zwłaszcza, że droga od sugestii do wykonania jest długa)...

Pozdrawiam,
riddle.

0

Ech... zapis, że dana osoba widziała dany wątek odbywa się poprzez dodanie do pewnej tabeli id wątku i id usera. Teraz jeśli byłaby opcja 'zaznacz wszystkie jako przeczytane' to jeśli wątków jest 57 tysięcy, to nagle - przez jednego usera - do bazy należy dodać 57 tysięcy rekordów w tej tabeli. Rozumiesz?

0

to może odwróćmy kota ogonem... zamiast obciazac bazę danych... niech użytkownik trzyma te info w... cookie - w pewnym momencie moze strasznie urosnac cookie ale to juz problem usera :)

0

Ponioslo Cię Embraced! Zawodowo!
Przy każdym wejściu na stronę w domenie 4p CAŁE cookie będzie przesyłane w nagłówku! To dopiero by się działo...

0

Dodajemy jedno pole typu: date. Za posty przeczytane uznajemy wszystkie, ktore znajduja sie w tabeli postow przeczytanych lub sa starsze niz zapisana data.
Jezeli uzytkownik zaznaczy "oznacz wszystkie jako przeczytane", to zmieniana jest data na aktualna, a z tabela przeczytanych tematow zostaje oprozniona.
Tym sposobem opcja oznacz jako przeczytane bedzie bardzo pozadana, bo bedzie odciazac baze :)

0

Też myślałem o braniu pod uwagę jedynie daty 'odznaczenia jako przeczytane'... tak to chyba można umieścić w cookie, nie będzie zbyt duże.

Marooned: masz rację :-P

0

tak to chyba można umieścić w cookie, nie będzie zbyt duże.

Lepiej w bazie niz w cookie. Cookie zbyt latwo sie kasuje i na roznych kompach mam rozne.

0

Dodajemy jedno pole typu: date. Za posty przeczytane uznajemy wszystkie, ktore znajduja sie w tabeli postow przeczytanych lub sa starsze niz zapisana data.

Ehm... to mi się wydawało oczywiste... ech, właśnie o coś takiego mi chodziło. Przepraszam, powinienem to od razu dobrze sformułować.

0

no właśnie, to nie jest takie skomplikowane. jak tylko dociągnę kategorie w faq do końca, to zrobię i to.

0

Tak, to jest proste i najpopularniejsze rozwiazanie lecz nie zapewni takiego efektywnego odznaczania postow jak dotychczas.

BTW: cookie ma ograniczenie zapisu danych, bodajze do kilku KB.

0

Tak, to jest proste i najpopularniejsze rozwiazanie lecz nie zapewni takiego efektywnego odznaczania postow jak dotychczas.

Dlaczego? Jezeli uzytkownik nie bedzie uzywal przycisku "oznacz wszystkie..." to bedzie zachowany stary system, bo zapisana data bedzie z 1970 roku, wiec wszystkie posty beda nowsze, wiec bedzie sie sprawdzac je tak jak jest teraz. Zadnej zmiany uzytkownik nie odnotuje.
Jezeli natomiast kliknie ten przycisk to pa pa oznaczenia przeczytanych. Zerujemy sobie konto i lecimy dalej :)

0

Aa to sie nie zrozumielismy Dryobates. W TODO jest pozycja mowiaca o zmianie systemu oznaczania nowych postow.

Obecnie informacje o przeczytanych postach przechowywane sa w tabeli, ktora obecnie zawiera ponad 300 tys. rekordow. Obawiam sie o szybkosc dzialania takiej bazy w przypadku zwiekszenia liczby rekordow w przyszlosci. Dodatkowo taki system posiada pewna wade. Przypuscmy, ze ktos odpowiedzial na dany temat. Wowczas temat jest odznaczany jako nieprzeczytany. Po minucie jakis moderator usuwa nowo dodany post. Jednak temat nadal pozostaje jako nieprzeczytany. Teraz ja wchodze na strone, widze ze temat jest nieprzeczytany, wchodze lecz nie widze zadnego nowego postu (zostal on skasowany przed moim wejsciem).

Myslalem nad inna technika, popularna i sprawdzona. Ostatnia wizyta kazdego usera jest przechowywana w bazie danych. Teraz gdy wchodzi na strone w petli porownujemy czas napisania ostatniego postu w temacie z data ostaniej wizyty. Jezeli jest wieksza - odznaczamy temat jako nowy.

0

Myslalem nad inna technika, popularna i sprawdzona. Ostatnia wizyta kazdego usera jest przechowywana w bazie danych. Teraz gdy wchodzi na strone w petli porownujemy czas napisania ostatniego postu w temacie z data ostaniej wizyty. Jezeli jest wieksza - odznaczamy temat jako nowy.

To też nie jest idealne rozwiązanie. Jeśli wejdziesz na forum i nic nie przeczytasz, po czym zamkniesz okno przeglądarki, a po chwili jeszcze raz otworzysz, będziesz miał wszystkie wiadomości oznaczone jako przeczytane.

0

Sesja wygasa po 10 min. Jezeli wiec zamkniesz przegladarke, wejdziesz przed uplywem 10 min. to bedziesz mial oznaczenie. Jezeli bedziesz mial otwarte przegladarke, po 10 min. nie zrobisz nic, to sie automatycznie odznaczy jako przeczytane.

0

jednego nie rozumiem, po co oznaczać jako przeczytane nieprzeczytane posty ? :|

0

Sesja wygasa po 10 min. Jezeli wiec zamkniesz przegladarke, wejdziesz przed uplywem 10 min. to bedziesz mial oznaczenie. Jezeli bedziesz mial otwarte przegladarke, po 10 min. nie zrobisz nic, to sie automatycznie odznaczy jako przeczytane.

To będzie straszne! Co to za system, który odznaczy mi wątek jako przeczytany, skoro do niego nie zaglądałem! Trzeba zdecydowanie pomyśleć nad innym rozwiązaniem!

0

Również jestem przeciwny - wchodze czesto i zostawiam okno włączone - po przyjsciu po 10 minutach - brak nowych postów :-/

0

Takie rozwiazanie jest uzywane takze na innych forach. Np. na phpBB tez tak jest z tym, ze tma w cookie zapisywane sa informacje odnosnie przeczytanych tematow w ramach jednej sesji.

0

No dobrze, wiec bardziej rewolucyjnie...

W tabeli przechowywane sa pary user-watek, ktore:

  • sa nowsze niz data zapisana od ostatniego wcisniecia "oznacz wszystkie..."
  • sa starsze niz data ostatniej wizyty
  • przy wchodzeniu usera na strone automatycznie dodawane sa wszystkie tematy, ktore zmienily sie od ostatniej wizyty uzytkownika

W ten sposob uzytkownik zajrzy do tematu, nawet, jezeli ktos przeedytowal swoj post (nie tylko dodany zostal nowy), co IMHO przydaloby sie w aktualnym systemie.

Teraz lecimy dalej.Dodatkowo, wszystkie posty starsze niz rok oznaczane usuwane bylyby z tej tabeli, blokowane, a te na ktore nikt nie odpowiedzial przenoszone do oddzielnego dzialu z zaznaczeniem skad pochodza. Wowczas jakby ktos sie nudzil, to wzbogacalby zawartosc forum o wiedze, ktora nie zostala tutaj zapisana i jednoczesnie blokowane byloby odpowiadanie na watki typu ile masz lat z przed 3 lat...

W ten sposob przy aktualnym stanie, tych 300 tys. nie powinno przekraczac.
Oczywiscie wciaz pozostaje blad z usunieciem postu przez moderatora... ale to chyba nie jest az tak denerwujace?

0

Jeśli już piszecie o postach to ja coś dołożę... :P

Można też zrobić łączenie sąsiednich postów tj. jeśli uzytkownik jest zarejestrowany i pisze w danym temacie pod swoim postem następny, to ten nowy może zostać połączony z tym starym i w tym starym zmienia się datę modyfikacji.

Nie wiem czy to działałoby dla anonimów, ale jeśli każdy ma inny identyfikator sesji to np. zamiast anonimowych postów jeden pod drugim (bo ktoś zapomniał czegoś napisać albo dopisać i tworzy nowy post) może być jeden. http://4programmers.net/Forum/viewtopic.php?id=58082

[Takie cos dostepne jest dla moderatorow, ale to nie o to chodzi w tym watku - dop A.B.]

0

Kombinujecie jak konie pod górę, a rozwiązanie było na tyle banalne, że już to zrobiłem. Odpowiednie poprawki czekają na cvs. [diabel]
Wszystko kosztem dodania jednego pola do coyote_users, a za to po oznaczeniu wszystkich postów jako przeczytanych następuje wypieprzenie całego dobytku usera z tabeli coyote_thread. Dwie pieczenie na jednym ogniu?

1 użytkowników online, w tym zalogowanych: 0, gości: 1