diff --git a/src/opnsense/mvc/app/controllers/OPNsense/Core/Api/FirmwareController.php b/src/opnsense/mvc/app/controllers/OPNsense/Core/Api/FirmwareController.php index 0c6fc02de..0d9f82b92 100644 --- a/src/opnsense/mvc/app/controllers/OPNsense/Core/Api/FirmwareController.php +++ b/src/opnsense/mvc/app/controllers/OPNsense/Core/Api/FirmwareController.php @@ -97,6 +97,18 @@ class FirmwareController extends ApiControllerBase $response = array('status' => 'unknown', 'status_msg' => gettext('Current status is unknown.')); } + /* XXX array isn't flat, need to refactor this */ + if (isset($response['upgrade_packages'])) { + $sorted = array(); + foreach ($response['upgrade_packages'] as $key => $value) { + $sorted[$value['name']] = $value; + } + uksort($sorted, function ($a, $b) { + return strnatcmp($a, $b); + }); + $response['upgrade_packages'] = $sorted; + } + return $response; } diff --git a/src/opnsense/mvc/app/views/OPNsense/Core/firmware.volt b/src/opnsense/mvc/app/views/OPNsense/Core/firmware.volt index 633bbe2df..a9568daa4 100644 --- a/src/opnsense/mvc/app/views/OPNsense/Core/firmware.volt +++ b/src/opnsense/mvc/app/views/OPNsense/Core/firmware.volt @@ -57,7 +57,7 @@ POSSIBILITY OF SUCH DAMAGE. // show upgrade list $("#updatelist").html("{{ lang._('Package Name') }}" + "{{ lang._('Current Version') }}{{ lang._('New Version') }}"); - $.each(['upgrade_packages','new_packages','reinstall_packages'], function(type_idx,type_name){ + $.each(['new_packages', 'upgrade_packages', 'reinstall_packages'], function(type_idx,type_name){ if ( data[type_name] != undefined ) { $.each(data[type_name],function(index,row){ if (type_name == "new_packages") {