Trasy i bramki dostępu
trasy.php to zwykły plik tras Laravela. Portal sam dokłada do każdej trasy:
- logowanie,
- bramkę
module:toolsitool:<klucz>: moduł musi być włączony na instancji, a osoba musi mieć do niego dostęp. Kto nie ma dostępu, trafia na listę narzędzi z komunikatem, - prefiks adresu (
trasy.prefiks) i przedrostek nazw (trasy.nazwy).
PHP
<?php
use Illuminate\Support\Facades\Route;
use Narzedzia\FakturyKosztowe\FakturyController;
Route::get('/', [FakturyController::class, 'index'])->name('index'); // faktury_kosztowe.index = ekran startowy
Route::post('/', [FakturyController::class, 'store'])->name('store');
Route::get('/{faktura}', [FakturyController::class, 'show'])->name('show');- Kontrolery trzymacie w
src/(extends App\Http\Controllers\Controller). - Bez trasy startowej (
<nazwy><start>, domyślnie<klucz>.index) moduł nie pokaże się na liście narzędzi. - W kontrolerze sprawdzacie tylko własne reguły rekordów, np.
abort_unless($rekord->mozeEdytowac($user), 403). Włączenia i dostępu osób nie sprawdzacie, robi to bramka. \App\Support\Narzedzia::zarzadza($user)mówi, czy osoba zarządza narzędziami (zwykle administrator, widzi wszystkie rekordy).
Kto ma dostęp. Administrator instancji w Administracja › Moduły › <moduł> włącza moduł i wybiera, kto może z niego korzystać: wszyscy albo wybrane osoby i grupy. Każda osoba z dostępem może jeszcze przypiąć moduł do swojego menu po lewej.
Trasy bez logowania. Plik trasy-publiczne.php (np. webhook, podgląd dla klienta). Tu portal dokłada tylko przedrostek nazw. O dostępie i limitach decydujecie sami:
PHP
<?php
use Illuminate\Support\Facades\Route;
use Narzedzia\FakturyKosztowe\WebhookController;
Route::post('/webhook/faktury-kosztowe', [WebhookController::class, 'przyjmij'])
->middleware('throttle:30,1')
->name('webhook');Krótkie adresy /<adres> (jak strony i formularze) robicie hakiem pokazAdres, nie własną trasą /{cos}.
Ostatnia zmiana dokumentacji: 29.09.2026. Pytania: m@redai.pl.