Za dużo kodu do oceniania, ale tak powierzchownie odnośnie php-a
brak jakiejkolwiek struktury plików
nie wiedzieć czemu każda klasa nazywa się once?
masę zagnieżdżonego i powtarzalnego kodu w większości klas
nikt nie stosuje już konwencji z nazwą class w nazwie pliku. To zdaje się w javie było ale też od tego odeszli..
publiczne atrybuty
$_GET['page'] = isset($_GET['page']) ? $_GET['page'] : 1;
$_GET['ids'] = isset($_GET['ids']) ? $_GET['ids'] : '';
$_GET['idsx'] = isset($_GET['idsx']) ? $_GET['idsx'] : '';
$_GET['idsxs'] = isset($_GET['idsxs']) ? $_GET['idsxs'] : '';
$_GET['option'] = isset($_GET['option']) ? $_GET['option'] : '';
$_GET['type_id'] = isset($_GET['type_id']) ? $_GET['type_id'] : '';
$_GET['category_id'] = isset($_GET['category_id']) ? $_GET['category_id'] : '';
$_GET['sort_by'] = isset($_GET['sort_by']) ? $_GET['sort_by'] : 0;
$_GET['query'] = isset($_GET['query']) ? $_GET['query'] : '';
jest równoznaczne z array_filter($_GET)
klasy to monolity robiąc wszystko
brak stosowania konwencji psr np etykiety dostępu
Masz masę powtarzającego się wszędzie kodu. W sensi, pewnie robi coś tam innego, ale wygląda jak by był kopiowany i zmieniane tylko pewne atrybuty. To nie jest OOP.
Kompletnie nie potrafisz rozdzielić odpowiedzialności na klasy. W klasie user ładujesz setting mailera? co to ma wspólnego z klasą user? tak samo w klasie users. Uploads to nie jest zależność z użytkownikiem bezpośrednia. To użytkownik z niej może tylko korzystać.
zwracanie false jest bez sensu
brak composera to oznacza, że instalacja nie jest szybka i prosta.
Powiem tak, jako projekt do portfolio przez pracodawcą, jest jak najbardziej ok, przez to, że włożone jest tyle pracy. Jednak jakościowo kod php-a jest baaaardzo słaby. Dziś już nikt nie pisze tak dużych projektów bez frameworków. Jeżeli chcesz poćwiczyć OOP to robisz mniejszy projekt robiąc własny system np modeli + query buildera. Starczy aby nauczyć się czegoś nowego.
Js nie oceniam bo nie mam kompetencji. No i brakuje jakiegoś demo na stronie bo szczerze niby coś doczytałem, że projekt służy budowaniu a tak na prawdę nie wiadomo o co za bardzo w tym chodzi :)