UniFi: settings tabs are deep-linkable path routes (/settings/{tab})
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Jh8RnYXrC8E6z79LWs8ggd
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "dashboard/unifi",
|
"name": "dashboard/unifi",
|
||||||
"description": "UniFi network management, WiFi stats, and captive portal authentication for the Dashboard platform",
|
"description": "UniFi network management, WiFi stats, and captive portal authentication for the Dashboard platform",
|
||||||
"version": "1.13.0",
|
"version": "1.13.1",
|
||||||
"type": "library",
|
"type": "library",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"autoload": {
|
"autoload": {
|
||||||
|
|||||||
@@ -10,9 +10,10 @@ use Inertia\Inertia;
|
|||||||
|
|
||||||
class UnifiSettingsController extends Controller
|
class UnifiSettingsController extends Controller
|
||||||
{
|
{
|
||||||
public function edit()
|
public function edit(?string $tab = null)
|
||||||
{
|
{
|
||||||
return Inertia::render('Unifi/Settings', [
|
return Inertia::render('Unifi/Settings', [
|
||||||
|
'activeTab' => $tab,
|
||||||
'controllerUrl' => Setting::get('unifi.controller_url', ''),
|
'controllerUrl' => Setting::get('unifi.controller_url', ''),
|
||||||
'hasApiKey' => (bool) Setting::get('unifi.api_key'),
|
'hasApiKey' => (bool) Setting::get('unifi.api_key'),
|
||||||
'site' => Setting::get('unifi.site', 'default'),
|
'site' => Setting::get('unifi.site', 'default'),
|
||||||
|
|||||||
@@ -69,6 +69,8 @@ Route::middleware(['web', 'auth', 'app.access:unifi'])
|
|||||||
// ── Settings ─────────────────────────────────────────────────────────
|
// ── Settings ─────────────────────────────────────────────────────────
|
||||||
Route::middleware('permission:unifi.settings')->group(function () {
|
Route::middleware('permission:unifi.settings')->group(function () {
|
||||||
Route::get('/settings', [UnifiSettingsController::class, 'edit']) ->name('settings');
|
Route::get('/settings', [UnifiSettingsController::class, 'edit']) ->name('settings');
|
||||||
|
Route::get('/settings/{tab}', [UnifiSettingsController::class, 'edit'])
|
||||||
|
->where('tab', 'connection|tasks|logs|access')->name('settings.tab');
|
||||||
Route::post('/settings', [UnifiSettingsController::class, 'update']) ->name('settings.update');
|
Route::post('/settings', [UnifiSettingsController::class, 'update']) ->name('settings.update');
|
||||||
Route::post('/settings/test', [UnifiSettingsController::class, 'testConnection'])->name('settings.test');
|
Route::post('/settings/test', [UnifiSettingsController::class, 'testConnection'])->name('settings.test');
|
||||||
Route::post('/settings/sites', [UnifiSettingsController::class, 'fetchSites']) ->name('settings.sites');
|
Route::post('/settings/sites', [UnifiSettingsController::class, 'fetchSites']) ->name('settings.sites');
|
||||||
|
|||||||
Reference in New Issue
Block a user