No i praktycznie kolejny projekt za mną .
Skończyłem całkiem nie dawno kolejny już projekt, zaraz po tym jak uznałem za zakończony projekt systemu Forum.
Z czym tym razem się zmierzyłem? Temat dynamicznego kalendarza eventowego.
Ale cóż to takiego?
Ładny kalendarz generowany dynamicznie (możemy podać datę lub nie). Eleganckie formatowanie odstępu w zależności od pierwszego dnia miesiąca, zaznaczanie dnia dzisiejszego ale przede wszystkim sedno tego projektu - czyli wpakowanie w to wydarzeń które mogą być przypisane do poszczególnych dni w bazie danych.
Wbrew pozorom jest to dość skomplikowany projekt, szczególnie jak się ma za dużo do czynienia z datami czy tabelami w htmlu.
Tabele w htmlu to zło. Operacje na datach też.
Daty są, kalendarza nie ma. Jakoś trzeba go zrobić. No cóż, proste to nie było. bardzo dużo czasu zajęło mi wykończenie wszystkiego, włącznie z refaktoryzacją kodu. Ale było warto, myślę że to dobry projekt i osobiście miałem jeszcze powód by go zrealizować.
W każdym razie napisałem że skończony.
Wcześniej napisałem że praktycznie za mną.
Nie do końca.
Teraz jak to piszę widzę zauważyłem jeszcze jednej istotnej rzeczy której nie zaimplementowałem... A w zasadzie to nie wiem jak z nią jest... Mianowicie obecnie mój kalendarz wyświetla wydarzenia z danego miesiąca ale bez względu na rok, czyli wpisy forever. Nie ma wyboru, trzeba by zmienić implementację albo dodać wybór... pomyślę jeszcze nad tym.
A druga rzecz, to moja ambicja w tym projekcie sięgała do przewijania kalendarza, w przód i tył. Dynamicznie oczywiście z animacją i również eventami. Przewijanie nieskończoną ilość razy, jakieś ładne połączenie JS i Ajax. No nie wiem. Pomyślę nad tym również.
W każdym razie w stanie obecnym projekt uznaję za zakończony.
Podoba mi się, jestem z niego bardzo zadowolony i dumny. Jest super. I sporo mi to dało, wiele się nauczyłem. Fajne, świeże doświadczenie. No i od dłuższego czasu praca bez frameworka. W sumie bez bardzo wielu rzeczy. Jedyne co miałem poza podstawowym pehapem to autoload z composera, bootstrap 4... i to wszystko.
Nic więcej. I żadnych więcej bibliotek. Nic. Zabawa z podstawowym PHP i DateTime.
Wracając, projekt zakończony. Jest super. Jestem zadowolony . Jest git. Może jeszcze go rozwinę o to co napisałem lub inne ficzery których obecnie nie mam w głowie.
W każdym razie jest git, done!
Przeczytałeś? Super . Mam nadzieję że to był dobry i ciekawy pościk.
A tymczasem bywaj !
Aaaaa, byłbym zapomniał. Do projektu również zrealizowałem osobne klasy bazę danych oraz zapytania. Razem trzy klasy; Calendar, Database, QueryBuilder.
Samego programowania ponad 250 linii kodu .
Tyle , bywaj!