Pola formularza

  • routy:
    /routes/vendor/idir/admin/fields.php
  • kontrolery:
    N1ebieski\IDir\Http\Controllers\Web\DirController
    N1ebieski\IDir\Http\Controllers\Admin\Field\Group\FieldController
  • modele:
    N1ebieski\IDir\Models\Field\Group\Field
    N1ebieski\IDir\Models\Field\Dir\Field
  • repozytorium:
    N1ebieski\IDir\Repositories\FieldRepo
  • serwis:
    N1ebieski\IDir\Services\FieldService
  • 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 pole 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ść
  • 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.access - dostęp do 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.