Do czego służy moduł Platform?
Moduł Platform pozwala tworzyć własne moduły w intum — dodawać nowe sekcje do systemu, które działają jak natywne elementy aplikacji. Dzięki temu możesz rozbudować intum o dowolne funkcje bez ingerencji w kod źródłowy.
Każdy moduł to ścieżka URL (np. /raporty, /baza) powiązana ze źródłem treści — stroną CMS, aplikacją Noe, bazą wiedzy lub zewnętrznym plikiem JavaScript.
Jak włączyć moduł Platform?
- Przejdź do Konto → Moduły (
/account/modules) - Znajdź moduł Platform na liście
- Kliknij przełącznik aby go włączyć
Po włączeniu w menu pojawi się sekcja Platform z listą Twoich modułów.
Co można podłączyć jako moduł?
Każdy moduł może być powiązany z jednym z czterech źródeł:
- Noe::App — pojedyncza aplikacja Noe (Svelte, JS, HTML). Idealne do prostych narzędzi i dashboardów. Więcej o Noe →
-
Plik JavaScript (source_url) — zewnętrzna aplikacja JS (np. zbudowana w Svelte, React, Vue). Podajesz URL do pliku JS, a moduł ładuje go w elemencie
<div id="intum_platform_module">. Idealne do aplikacji budowanych poza intum. - Cms::Site — pełna strona CMS z wieloma podstronami, layoutami i szablonami Liquid. W stronach CMS możesz osadzać dowolny kod JavaScript, Svelte, Vue, React — dzięki temu budujesz interaktywne aplikacje bezpośrednio w CMS. Idealne do złożonych modułów z wieloma stronami. Więcej o CMS →
- Kb::KnowledgeBase — baza wiedzy z kategoriami, wpisami i wyszukiwaniem. Idealne do dokumentacji wewnętrznej. Więcej o Bazie wiedzy →
Moduł z pliku JavaScript
Zamiast podłączać istniejącą stronę CMS czy aplikację Noe, możesz podać URL do pliku JS w polu Source URL. Moduł załaduje ten plik i wykona go na stronie.
Aplikacja JS powinna montować się w elemencie #intum_platform_module:
const target = document.getElementById("intum_platform_module")
// mount your app here
Plik JS może być serwowany z dowolnego źródła - z CDN, z własnego serwera, albo z assets intum. W trybie development wygodnie jest używać lokalnego dev servera (np. http://localhost:3100/app.js) z watch mode - zmieniasz kod, odświeżasz stronę i widzisz efekt.
To podejście pozwala budować moduły w dowolnym frameworku (Svelte, React, Vue, vanilla JS) z własnym procesem budowania, testami i deployem.
Layout modułu
Każdy moduł może działać w jednym z dwóch trybów:
- Z layoutem aplikacji (app) — moduł wyświetla się wewnątrz standardowego interfejsu intum, z topbarem, sidebar i menu. Wygląda jak natywna część systemu. Przydatne gdy moduł ma pasować do reszty aplikacji.
- Bez layoutu (none) — moduł zajmuje całą stronę, bez elementów interfejsu intum. Przydatne dla samodzielnych aplikacji, landing page’y, widgetów lub modułów z własną nawigacją.
Tryb ustawiasz w polu Layout przy tworzeniu lub edycji modułu.
Jak stworzyć nowy moduł?
- Przejdź do Platform → Moduły (
/platform/modules) - Kliknij Nowy
- Wypełnij formularz:
- Nazwa — wyświetlana w menu (np. “Raporty sprzedaży”)
-
Kod — identyfikator modułu (np.
raporty) -
URL — ścieżka pod którą moduł będzie dostępny (np.
raporty→/raporty). Można użyć/*na końcu żeby łapać podścieżki (np.raporty/*→/raporty/cokolwiek) - Source URL — opcjonalnie URL do pliku JS (zamiast źródła CMS/Noe/KB)
- Typ źródła — wybierz Cms::Site, Noe::App lub Kb::KnowledgeBase (gdy nie używasz Source URL)
- Layout — z layoutem aplikacji (sidebar, topbar) lub bez
- Uprawnienie — opcjonalnie ogranicz dostęp do wybranego uprawnienia
- Zapisz
- Włącz moduł w Konto → Moduły (
/account/modules) — pojawi się w menu
URL z wildcard
URL modułu może kończyć się na /* — wtedy łapie sam adres bazowy i wszystkie podścieżki:
-
myapp/*— działa pod/myapp,/myapp/dashboard,/myapp/settings/profileitd. - Podścieżka trafia do modułu jako kontekst nawigacji
Exact URL (bez /*) odpowiada tylko na dokładny adres. Jeśli istnieje moduł z dokładnym URL-em i jednocześnie inny z wildcardem - dokładny ma priorytet.
Rozszerzanie istniejących modułów
Chcesz dodać nową opcję do istniejącego modułu, np. dodatkową stronę w sekcji Organize lub nowy widok w CRM? Wystarczy użyć / w URL modułu.
Wpisz jako URL nazwę istniejącego modułu, ukośnik / i nazwę nowej opcji. Nowa pozycja pojawi się automatycznie w menu tego modułu, obok standardowych opcji.
Przykłady
| URL modułu | Efekt |
|---|---|
organize/raporty |
Nowa pozycja Raporty w menu Organize |
crm/analiza |
Nowa pozycja Analiza w menu CRM |
helpdesk/faq |
Nowa pozycja FAQ w menu Helpdesk |
Kontrola dostępu
Każdy moduł może mieć ustawione uprawnienie (privilege). Jeśli jest ustawione, moduł widzi i może otworzyć tylko użytkownik z tym uprawnieniem. Jeśli pole jest puste — moduł jest dostępny dla wszystkich zalogowanych użytkowników.
Adresy URL
Każdy moduł jest dostępny pod dwoma adresami:
-
Czysty URL:
/url-modulu(np./raporty) — główna ścieżka -
Bezpiecznik:
/m/url-modulu(np./m/raporty) — zawsze działa, nawet jeśli URL koliduje z istniejącym modułem