Przejdź do treści
Intum

Platform — własne moduły w intum

Aktualizacja: 4 min czytania

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?

  1. Przejdź do Konto → Moduły (/account/modules)
  2. Znajdź moduł Platform na liście
  3. 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ł?

  1. Przejdź do Platform → Moduły (/platform/modules)
  2. Kliknij Nowy
  3. 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
  4. Zapisz
  5. 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/profile itd.
  • 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

Czy ten wpis był pomocny?

Udostępnij

Komentarze