pehapinek / nodesuba

6 stars 2 forks source link

Refactor backlinków #18

Open kotjea2137 opened 2 years ago

kotjea2137 commented 2 years ago

Przejrzałem ten mechanizm backlinkowania i stwierdzam że jest przekombinowany, moim zdaniem najlepiej było by to zrobić jak na 4chanie czyli w bazie przy poście jest trzymany tylko numer freda do którego należy post a backlinki są trzymane w polu z treścią posta jako html { "no":240209305, "now":"07\/15\/22(Fri)00:11:20", "name":"Anonymous", "com":"<a href=\"#p240205863\" class=\"quotelink\">&gt;&gt;240205863<\/a><br>I agree but I&#039;m still reading it. <br><a href=\"#p240207327\" class=\"quotelink\">&gt;&gt;240207327<\/a><br>The manga should never have been about more than the pasclub and I guess the occult club occasionally. All the focus on the newspaper and drama clubs has sucked.", "time":1657858280, "resto":240203487 } Tutaj macie przykład, pole resto to pole z numerem freda do którego należy ten post a pole com zawiera treść tego posta razem z backlinkami które są niczym innym jak a hrefami

wypierdalaj commented 2 years ago

jak Pan Admin bedzie mial czas to niech tez tego corsa dorobi, juz zaczolem przepisywac fronta na styled komponents

pehapinek commented 2 years ago

cors dodany a te backlinki, poza tym że chuja jeszcze zwracają na front bo trzeba zrobić mapper, to przydadzą się w takiej formie jak są bo mam gdzieś z tyłu głowy jak je wykorzystać w takiej przejrzystej formie w jakiej są teraz (tzn. przechowywane w HTML się nie nadadzą)

kotjea2137 commented 2 years ago

Ale po co komplikować temat backlinków bardziej niż jest to potrzebne? Backlinki i tak są używane tylko na froncie, trzymanie ich na backendzie nie ma sensu, jedynie wystarczy trzymać numer freda do którego należy każdy post i tyle, uwierz mi że kuce 4chanowe lepiej się znają na tym temacie od Ciebie czy ode mnie

pehapinek commented 2 years ago

a skąd będzie wiadomo że dany backlink zdech jeśli jakiś post został wyjebany? wtedy trzeba będzie jakoś linka przekreślić

kotjea2137 commented 2 years ago

O i tu kolejna ciekawa kwestia którą chciałem też poruszyć, powinna być kolumna w tabeli z postami isDeleted, raczej nie chcesz usuwać na zawsze postów a tylko nie zwracać ich użytkownikowi bo historia postów danego usera czy inne powody banów więc raczej powinny posty zostawać w samej bazie nawet jeśli użytkownik usunie je przez front Jeśli chcesz to mogę ten temat backlinków ogarnąć, do tego słowofiltry bym zrobił z użyciem interceptora który przy zwracaniu posta na front również podmieniał treść na html dzięki czemu same słowofiltry byłyby w bazie i byłyby niejawne

kotjea2137 commented 2 years ago

Czytałem nawet ostatnio trochę tej dokumentacji z Nest.js bo na codzień pracuję w Expressie ale widzę że dużo fajnych i sensownych rzeczy ma ten nest a do tego pod spodem i tak jest Express więc mogę śmiało w nim kucować

pehapinek commented 2 years ago

o faktycznie, isDeleted musi być żeby w końcu raki wiedziały za jaki post dostały bana xD nosz kurna akurat mechanizm zwykłego usuwania postów zrobiłem

pehapinek commented 2 years ago

jak chcesz pomajstrować to śmiało anonek

kotjea2137 commented 2 years ago

To zróbmy tak, zajmę się backlinkami i słowofiltrami, jak już będzie działało to spushuję to wszystko na osobnego brancha i dam pull requesta, pasuje?

pehapinek commented 2 years ago

tak, tak to działa

kotjea2137 commented 2 years ago

Nie mogę coś wrzucić commita na osobnego brancha, nie muszę mieć uprawnień czy coś?

wypierdalaj commented 2 years ago

Pan Pehapinek jest dla mnie najlepszy!

pehapinek commented 2 years ago

@kotjea2137 dostałeś zaproszenie do kolaborancji

kotjea2137 commented 2 years ago

Dzięki, wrzuciłem już pierwszą działającą wersję mechanizmu słowofiltrów aczkolwiek może ją jeszcze poprawię bo jest zrobiona chujowo ale działa xD, a i mam małą prośbę bo o ile modele mają być nazywane w liczbie pojedynczej jak np Post czy Wordfilter to routy powinny być w liczbie mnogiej czyli np /posts czy /wordfilters także warto to poprawić A i dodałem adminera do docker-compose.yml bo warto mieć możliwość podglądania co tam w bazie dokładniej się znajduje bez polegania na ormie a druga sprawa poprawiłem go trochę bo miałem w chuj problemów z tą Prismą ale teraz już powinno być ok

pehapinek commented 2 years ago

fajnie, słowofiltry wejdą tylko ten interceptor troche z dupy jest (dałem komentarz w commicie) – tl;dr ja bym zastosowywał słowofiltry w backend/src/modules/board/utils/map-post-data.ts jako mapper

also, powinniśmy starać się robić różne zmiany w różnych commitach, także jak chcesz to podmień ten interceptor na mapper, porozbijaj commity i wrzuć PR (lub kilka jak wolisz)

kotjea2137 commented 2 years ago

Nie no spoko, zrobię po prostu następne commity na tego brancha co już jest bo to było napisane na odpierdziel byleby działało, a co do przerobienia tego na mappera to muszę poczytać bo nie pamiętam co to był mapper ale od razu mówię że wrzucę to gdzieś obok plików w module Wordfilter bo jak tak będziemy wszystko do tych utilsów wrzucać to utoniemy, w ogóle też mam takie zastrzeżenie że jak już dzielimy wszystko na moduły to spoko ale proszę nie dziel pojedycznych routów typu create-post czy delete-post na osobne moduły bo za chwilę będziemy mieli setki modułów i potem to będzie katorga przeglądanie takiego kodu z milionami folderów

kotjea2137 commented 2 years ago

Postaram się ogarnąć to w tym tygodniu razem z backlinkami też bo zastanawiam się dalej jak to sensownie zrobić żeby nie było przekombinowane jak jest obecnie

kotjea2137 commented 2 years ago

Przeniosłem ten mechanizm wordfiltrów do tego mappera więc teraz powinno być ok, mam jeszcze jedno spostrzeżenie, warto byłoby zrobić globalny plik types.d.ts żeby wrzucić tam wszystkie customowe typy bo obecnie jest to po plikach porozrzucane bez ładu i składu i dzięki temu te typy były dostępne w całym programie bez importowania ich

pehapinek commented 2 years ago

@kotjea2137 weź zrób PR xD

kara-archive commented 2 years ago

jak wam idzie?

pehapinek commented 2 years ago

w tempie gieresiowym, ale silnik będzie bzikał w bliżej nieokreślonej przyszłości

kotjea2137 commented 2 years ago

Sorki, w pracy mam obecnie zapierdol bo testy akceptacyjne i kolejne wdrożenie więc czasowo nie miałem jak kucować ale zrobiłem pull requesta z słowofiltrami bo to zdążyłem ogarnąć

kara-archive commented 2 years ago

ale fajnie że dalej działacie, myślałem, że już zasagowaliście. może by tak przypomnieć anonkom, że projekt dalej jeździ?