Pola formularza

  • routy:
    /routes/vendor/idir/admin/fields.php
  • kontrolery:
    N1ebieski\IDir\Http\Controllers\Web\FieldController
    N1ebieski\IDir\Http\Controllers\Admin\Field\Dir\FieldController
  • modele:
    N1ebieski\IDir\Models\Field\Field
  • widoki:
    /resources/views/vendor/idir/web/field
    /resources/views/vendor/idir/admin/field
  • pliki językowe:
    /resources/lang/vendor/idir/pl/fields.php
    /resources/lang/vendor/idir/en/fields.php


# Opis

Model pola formularza przechowuje jego tytuł, krótki opis oraz ustawienia. Pola formularza przypisane są do poszczególnych grup wpisów.

Moderator może stworzyć dodatkowe pola formularza o różnym typie z poziomu panelu administracyjnego. Może asynchronicznie edytować, usuwać istniejące. Może zmieniać pozycję; w tej kolejności będą prezentowane użytkownikowi w formularzu.

Użytkownik może (lub musi w przypadku wymaganych) uzupełnić te pola w formularzu dodawania/edycji wpisu.

# Typy

  • input - proste pole tekstowe do wpisania krótkiego tekstu, można zdefiniować minimalną i maksymalną długość
  • textarea - duże pole tekstowe do wpisania większego bloku tekstu, można zdefiniować minimalną i maksymalną długość
  • select - pole wyboru ograniczone do jednego wyboru z wielu zdefiniowanych opcji
  • multiselect - pole wielokrotnego wyboru z wielu zdefiniowanych opcji
  • checkbox - pole zaznaczenia (bool), można zdefiniować wiele opcji, użytkownik może zaznaczyć dowolną ilość
  • switch - pojedyncze pole-przełącznik, przyjmuje stan true/false
  • image - pole uploadu obrazka, można zdefiniować rozmiar obrazka i pliku

Tymczasowo uploadowane obrazki są przechowywane w folderze (pliki starsze niż godzina temu są cyklicznie usuwane):

/storage/app/public/vendor/idir/temp

Obrazek prawidłowo dodanego wpisu przechowywany jest na stałe w folderze:

/storage/app/public/vendor/idir/dirs/fields/ID_POLA/dir/ID_WPISU


# Ustawienia

  • widoczność:
    • publiczna, czyli wartość wprowadzona przez użytkownika będzie widoczna na stronie
    • prywatna, czyli wartość wprowadzona przez użytkownika będzie widoczna jedynie dla moderatorów w panelu administracyjnym
  • warunek pola:
    • obowiązkowe
    • nieobowiązkowe

# Uprawnienia

  • admin.* - dostęp do wszystkich funkcjonalności panelu administracyjnego
  • admin.fields.* - dostęp do wszystkich funkcjonalności pól formularza w panelu administracyjnym
  • admin.fields.view - dostęp do listy pól formularza w panelu administracyjnym
  • admin.fields.create - dostęp do dodawania pól formularza w panelu administracyjnym
  • admin.fields.edit - dostęp do edycji pól formularza w panelu administracyjnym
  • admin.fields.delete - dostęp do usuwania pól formularza w panelu administracyjnym

# Prezentacja

Wartości pól formularza prezentowane na stronie są tylko wówczas, gdy grupa w której wpis się znajduje na to zezwala. Wpisy, które "spadły" do grupy bez takiego przywileju, dalej posiadają wprowadzone wartości, ale nie będą one prezentowane na stronie, dopóki wpis ponownie nie znajdzie się w grupie która na to zezwala.