[webui] Ports: correct sorting order when using ifName (#16170)

Signed-off-by: Peca Nesovanovic <peca.nesovanovic@sattrakt.com>
This commit is contained in:
Peca Nesovanovic
2024-07-04 21:34:13 +02:00
committed by GitHub
parent 07fba0436d
commit ba8d7338a3

View File

@@ -373,6 +373,11 @@ class PortsController implements DeviceTab
->when(! $this->settings['ignored'], fn (Builder $q, $disabled) => $q->where('ignore', 0))
->when($this->settings['admin'] != 'any', fn (Builder $q, $admin) => $q->where('ifAdminStatus', $this->settings['admin']))
->when($this->settings['status'] != 'any', fn (Builder $q, $admin) => $q->where('ifOperStatus', $this->settings['status']))
->when($this->settings['sort'] == 'port', fn (Builder $q, $sort) => $q
->orderByRaw('SOUNDEX(ifName) ' . $this->settings['order'])
->orderByRaw('CHAR_LENGTH(ifName) ' . $this->settings['order'])
->orderByRaw('lower(ifName) ' . $this->settings['order'])
)
->orderBy($orderBy, $this->settings['order']);
}