Contao 4.6.0 dostępne

Ukazała się nowa wersja Contao 4.6.0. To wydanie zawiera nowe funkcje takie jak 2-stopniowe uwierzytelnianie w backendzie, drag'n'drop w mendżerze plików, rozszerzone wsparcie video i automatyczne unieważnienie cache.

2-stopniowe uwierzytelnianie

Aby jeszcze bardziej zwiększyć bezpieczeństwo w backendzie, Dave zaimplementował 2-stopniowe uwierzytelnianie, które może być użyte z każdym oprogramowaniem TOTP takim jak na przykład 1password czy Google Authenticator. Włączenie 2-stopniowego uwierzytelniania jest domyślnie opcjonalne, ale można zmusić użytkowników backendu poprzez zmianę konfiguracji contao.security.two_factor.enforce_backend.

Drag and drop w menedżerze plików

W celu usprawnienia menedżera plików, Martin zaimplementował funkcję drag and drop (przeciągnij i upuść). Od teraz możliwe jest nie tylko przenoszenie plików i katalogów, ale również bezpośredni upload plików, a nawet całych folderów!

Rozszerzone wsparcie video

Nicky i Chris usprawnili wsparcie video dodając wszystkie brakujące ustawienia, które są oferowane poprzez YouTube i Vimeo. Teraz możliwe jest również responsywne wstawianie video za pomocą ustawienia współczynnika proporcji (aspect ratio) zamiast szywnych wymiarów.

Automatyczne unieważnienie cache

Dzięki niestrudzonemu zaangażowaniu Yanicka, w końcu możemy tagować strony w pamięci podręcznej i unieważniać je jeśli coś się zmieni w backendzie. Przykładowo, jeśli w backendzie edytowany jest news, wszystkie strony w pamięci podręcznej zawierające newsy były automatycznie unieważnione – oboje lista newsów oraz czytników newsów.

Tagowanie jest domyślnie włączone, więc w strukturze stron możesz teoretycznie ustawić ważność pamięci podręcznej cache nawet na rok.

Meta dane dla downloads

Analogicznie do elementów obrazka, od teraz również element download używa danych meta z menedżera plików do tekstu oraz tytułu linka. Jeśli to koniecznie, meta dane mogą zostać nadpisane dla każdego elementu.

Strona "błąd 401"

Odnośnie stron chronionych, Contao 4.6 rozróżnia dwa przypadki gdy "użytkownik nie jest uwierzytelniony" (błąd 401) oraz gdy "użytkownik jest uwierzytelniony, ale nie ma niezbędnych uprawnień" (błąd 403). Poprzednio strona typu "błąd 403" była ładowana w obu tych przypadkach.

Uwaga! Podczas aktualizacji istniejącej instalacji do Contao 4.6, wszystkie strony typu "błąd 403" zostaną automatycznie przekonwertowane na strony typu "błąd 401".

Wersjonowanie z manifest.json

Dzięki Andreasowi, Contao 4.6 wspiera wersjonowanie assetów za pomocą plików manifest.json, które są generowane np. przez Symfony Encore. Jeśli bundle zawiera taki plik w src/Resources/public, zostanie załadowany on automatycznie.

Abstrakcyjne controllery fragmentów

W celu uproszczenia generowania fragmentów, Andreas dodał abstrakcyjne controllery fragmentów, które możesz rozszerzyć własnymi kontrolerami fragmentów. Jest jest controller do elementów treści i jeden do modułów frontend.

Usuwanie niepotwierdzonych rejestracji

Zgodnie z rozporządzeniem RODO, Contao 4.6 automatycznie usuwa niepotwierdzone rejestracje (użytkownicy) i niepotwierdzone subskrypcje (newslettery, komentarze) po upływie 24 godzin. Tekst w mejlu potwierdzającym został odpowiednio dostosowany.

Insert tag Translator

Aby móc używać klasy Translator za pomocą insert tagów, która została dodana w Contao 4.5, Andreas zaimplementował insert tag trans::key. Możesz również określić domenę wiadomości (message domain): trans::key::message_domain.

Oznaczanie zduplikowanych rekordów

Za pomocą $GLOBALS['TL_DCA'][$table]['config']['markAsCopy'] = $field; można określić, które pole otrzyma sufiks "(kopia)", gdy rekord zostanie zduplikowany.

Monorepozytorium

Jak ogłoszono w Rückblick auf das zweite Core-Entwicklertreffen 2018, dzięki Martinowi mamy od teraz monorepozytorium, w którym od teraz będą obsługiwane wszystkie bundles Contao. Prosimy o tworzenie nowych ticketów tylko w repozytorium contao/contao, a nie jak poprzednio w różnych repozytoriach.

I jeszcze więcej…

Pełna lista zmian dostępna jest w changelogu.

Notatki dot. aktualizacji

Za rekomendacją najlepszych praktyk Symfony, Contao 4.6 nie jest już zależne od symfony/symfony, ale od poszczególnych komponentów takich jak symfony/http-kernel. Jednakże istniejące instalacje, które już zawierają symfony/symfony, będą dalej używać tej paczki dopóki nie usuniesz katalogu vendor/symfony/symfony przed aktualizacją (opcjonalne).

Kamil Kuźmiński