История коммитов

.
refactor(profile): migrate to new pagination component
Replace johncms/johncms-pagination (LengthAwarePaginator) with Johncms\Http\Pagination across activity, bans, IP history and karma:
- repositories: paginate*() -> count*()/get*(limit, offset): Collection (shared query builders)
- use cases: split into count()/getPage() with access checks in both
- controllers: PaginationFactory + PaginationGuard (+ PageMeta where present)
- drop total/pagination fields from BanHistoryDTO, ActivityDTO, IpHistoryDTO, KarmaListDTO
- reuse existing countVotesReceivedAfter() for the new-karma list
.
refactor(album): migrate to new pagination component
Replace johncms/johncms-pagination (LengthAwarePaginator) and Tools::displayPagination with Johncms\Http\Pagination:
- AlbumRepository: paginateOwnersBySex -> countOwners()/getOwners() (shared ownersQuery builder)
- AlbumPhotoRepository: paginatePhotosByAlbum -> getPhotosByAlbum(); paginateTop -> countTop()/getTop() (shared topQuery, reorder() before count)
- use cases split into count()/getPage(); album/photo guards via loadAccessibleAlbum()
- controllers: PaginationFactory + PaginationGuard + PageMeta; ShowPhoto uses perPage=1 with explicit current page
- remove TopResultDTO and UsersListResultDTO; drop total from AlbumViewResultDTO
.
refactor(news): migrate to new pagination component
Replace johncms/johncms-pagination (LengthAwarePaginator) with Johncms\Http\Pagination:
- Article: countArticles() + getArticles(sections, limit, offset): Collection
- SectionController/SearchController/Admin\AdminController: PaginationFactory + PaginationGuard
- CommentsController: rebuild flat Laravel-shape JSON for the Vue pagination widget from Pagination (no behavior change for frontend)
- templates: render items + $pagination instead of paginator->render()
.
refactor(community): migrate to new pagination component
Replace johncms/johncms-pagination (LengthAwarePaginator) with Johncms\Http\Pagination:
- repository: 4 paginate*() -> countApproved*()/getApproved*(limit, offset): Collection
- use cases: split execute() into count() + getPage(); search exposes validate()/count()/getPage()
- controllers: PaginationFactory + PaginationGuard + PageMeta; own page titles
- remove AdministrationUsersResultDTO and CommunitySearchResultDTO
.
refactor(notifications): migrate to new pagination component
Replace johncms/johncms-pagination (LengthAwarePaginator) with Johncms\Http\Pagination:
- repository: countNotifications() + getNotifications(limit, offset): Collection
- use case: split into count() and getPage(limit, offset)
- controller: PaginationFactory + PaginationGuard (canonical-page redirect) + PageMeta
- DTO: drop total/pagination fields (pagination now lives in controller)
.
refactor(help): migrate to new pagination component
Replace legacy displayPagination with Johncms\Http\Pagination (PaginationFactory
+ PaginationGuard) in the smilies and avatar list controllers.

Extract filesystem/config listing and item building into use cases with
count()/getPage(): GetMySmiliesUseCase, GetAdminSmiliesUseCase,
GetUserSmiliesUseCase, GetAvatarsUseCase. Controllers keep only HTTP
concerns (access checks, pagination, render).

Unify smilies naming: methods/constants/local variables now use the
module's "Smilies" spelling (USER_SMILIES_MAX, userSmiliesCount); only the
User model attribute access (->smileys) and DB key stay "smileys".

Admin smilies directory is now read via sorted glob() instead of opendir/
readdir for deterministic count()/getPage() paging.

Add unit tests for the my-smilies and user-smilies use cases.
.
refactor(online): migrate to new pagination component
Replace legacy ->paginate()/displayPagination with Johncms\Http\Pagination
(PaginationFactory + PaginationGuard) across all four online controllers.

Extract inline queries into repositories (Domain interfaces + Eloquent
implementations) and use cases with count()/getPage(), following the
guestbook reference. Unify users/history/guests rows under a single
OnlineItemDTO mapped in the use cases, decoupling the user_row template
from Eloquent models. Add unit tests for the use cases.
.
docs: update documentation submodule (pagination guide)
.
docs: update changelog
.
fix(admin): invalidate container cache after settings update (#252)