Do czego moduł ma dostęp i zasady
Kod modułu działa w tym samym procesie co portal. Technicznie mógłby więcej, niż mu wolno, dlatego poniższe zasady sprawdzamy przy każdym akcepcie. Złamanie którejkolwiek = odrzucenie wydania, a w poważnym przypadku blokada modułu i konta.
Moduł może:
- czytać i zapisywać własne tabele (prefiks = klucz modułu),
- czytać i zapisywać własne ustawienia w
App\Models\Setting(klucz zaczyna się od klucza modułu), - czytać zalogowaną osobę (
$request->user()) oraz listę osób i grup (App\Models\User,App\Models\UserGroup), żeby przypisywać rekordy i ustawiać widoczność, - czytać projekty, ich członków i powiązanie czatu z projektem przez
App\Narzedzia\Projektyoraz zakładać czaty z pierwszą wiadomością przezApp\Narzedzia\Rozmowy::zaloz()(sekcja Projekty i czaty), - zapisywać pliki w
storage/app/<klucz>/i czytać pliki z własnego folderu, - używać wspólnych elementów portalu z tabeli w sekcji Widoki, kolejki (
dispatch), maila portalu (Mail) i klienta HTTP Laravela (Http) w granicach zasad niżej, - dodawać haki, skille czatu, zadania cykliczne i krótkie adresy.
Moduł nie może:
- Zapisywać do tabel, których nie założył. Tabele portalu (czaty, projekty, pliki, użytkownicy, ustawienia innych modułów) są tylko do odczytu, i to tylko w zakresie z listy wyżej. Jeśli potrzebujecie więcej, napiszcie do nas.
- Ruszać plików portalu ani innych modułów: bez zapisu do
app/,routes/,config/,resources/,public/,.env,bootstrap/,vendor/,narzedzia/<inny klucz>/. - Łączyć się z siecią poza tym, co zadeklarowaliście. Każdy zewnętrzny adres, z którym moduł rozmawia, wpisujecie w
opis_pozycji.szczegoly(np. „Moduł pobiera kursy walut z api.nbp.pl”) i w poluuwagiprzy wysyłce. Niezadeklarowane połączenie = odrzucenie. - Mieć sekretów w paczce: haseł, tokenów, kluczy API, plików
.env, danych dostępowych do czegokolwiek. Sekrety wpisuje administrator instancji w ustawieniach modułu. - Uruchamiać programów systemu: bez
exec,shell_exec,system,passthru,proc_open,popen, odwrotnych apostrofów,evali ładowania kodu z sieci. - Wysyłać danych klienta poza instancję bez jego zgody. Dane firmy zostają na instancji. Wyjątek: wysyłka jest celem modułu, jest opisana w
opis_pozycjii administrator świadomie włącza moduł (np. wysyłka faktur do systemu księgowego). - Zmieniać zachowania portalu poza hakami: bez podmiany widoków portalu, globalnych middleware, nadpisywania tras portalu i własnych tras
/{cos}w przestrzeni krótkich adresów. - Ukrywać działania: kod ma być czytelny, bez zaciemniania, bez plików binarnych z kodem i bez minifikowanego PHP.
Ostatnia zmiana dokumentacji: 29.09.2026. Pytania: m@redai.pl.