Kategorie

  • routy:
    /routes/vendor/icore/web/categories.php
    /routes/vendor/icore/admin/categories.php
  • kontrolery:
    N1ebieski\ICore\Http\Controllers\Web\Category\Post\CategoryController
    N1ebieski\ICore\Http\Controllers\Admin\Category\Post\CategoryController
  • model:
    N1ebieski\ICore\Models\Category\Post\Category
  • cache:
    N1ebieski\ICore\Cache\CategoryCache
  • repozytorium:
    N1ebieski\ICore\Repositories\CategoryRepo
  • serwis:
    N1ebieski\ICore\Services\PostService
  • widoki:
    /resources/views/vendor/icore/web/category
    /resources/views/vendor/icore/admin/category
  • pliki językowe:
    /resources/lang/vendor/icore/pl/categories.php
    /resources/lang/vendor/icore/en/categories.php


Opis

Kategorie porządkują treść (w tym posty) na stronie. Kategorie są prezentowane użytkownikom na stronie za pomocą komponentów. Moderator ma możliwość utworzenia pojedynczej kategorii, bądź zaimportowanie wielu w formacie json. Może asynchronicznie aktywować/deaktywować, edytować oraz usunąć kategorie. Może filtrować listę w oparciu o różne parametry. Może ustawiać pozycję poszczególnych kategorii; w tej kolejności prezentowane są użytkownikowi w komponentach.

Kategorie działają z użyciem wzorca Closure Table to znaczy, że można budować hierarchię, na przykład: kategoria główna jako rodzic zawiera kategorię 1 i kategorię 2, z kolei kategoria 2 zawiera kategorię 3 itd.

Statusy

  • aktywny - widoczny na stronie dla wszystkich użytkowników
  • nieaktywny - niewidoczny na stronie; widoczny wyłącznie w panelu administracyjnym dla moderatorów z odpowiednim uprawnieniem

Uprawnienia

  • admin.* - dostęp do wszystkich funkcjonalności panelu administracyjnego
  • admin.access - dostęp do panelu administracyjnego
  • admin.categories.* - dostęp do wszystkich funkcjonalności kategorii w panelu administracyjnym
  • admin.ategories.view - dostęp do listy kategorii w panelu administracyjnym
  • admin.categories.create - dostęp do dodawania kategorii w panelu administracyjnym
  • admin.categories.status - dostęp do aktywacji/deaktywacji kategorii w panelu administracyjnym
  • admin.categories.edit - dostęp do edycji kategorii w panelu administracyjnym
  • admin.categories.delete - dostęp do usuwania kategorii w panelu administracyjnym

Dodawanie wielu kategorii

W przypadku dużej liczby kategorii, można skorzystać z opcji importu kategorii w formacie json. Aby skorzystać z tej opcji należy w oknie dodawania kategorii wybrać zakładkę JSON, a następnie wstawić drzewo kategorii w formacie JSON. Przykładowa prawidłowa struktura przedstawiona jest na poniższym przykładzie:

[
    {
        "name": "Rodzic 1",
        "children": [
            {
                "name": "Dziecko 1"
            },
            {
                "name": "Dziecko 2"
            }   
        ]
    },
    {
        "name": "Rodzic 2"
    }
]

W dodatkowych opcjach formularza można określić do jakiej istniejącej już kategorii aplikacja ma zaimportować listę lub czy ma usunąć dotychczasowe kategorie.