summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
Diffstat (limited to 'app')
-rw-r--r--app/assets/javascripts/application.js.coffee13
-rw-r--r--app/controllers/admin/system_info_controller.rb25
-rw-r--r--app/views/admin/system_info/show.html.haml7
3 files changed, 38 insertions, 7 deletions
diff --git a/app/assets/javascripts/application.js.coffee b/app/assets/javascripts/application.js.coffee
index b6dbf2d0cc1..05080d50ce7 100644
--- a/app/assets/javascripts/application.js.coffee
+++ b/app/assets/javascripts/application.js.coffee
@@ -185,6 +185,15 @@ $ ->
else
buttons.enable()
+ $(document).ajaxError (e, xhrObj, xhrSetting, xhrErrorText) ->
+
+ if xhrObj.status is 401
+ new Flash 'You need to be logged in.', 'alert'
+
+ else if xhrObj.status in [ 404, 500 ]
+ new Flash 'Something went wrong on our end.', 'alert'
+
+
# Show/Hide the profile menu when hovering the account box
$('.account-box').hover -> $(@).toggleClass('hover')
@@ -261,7 +270,7 @@ $ ->
# Sidenav pinning
if $window.width() < 1280 and $.cookie('pin_nav') is 'true'
- $.cookie('pin_nav', 'false', { path: '/' })
+ $.cookie('pin_nav', 'false', { path: '/', expires: 365 * 10 })
$('.page-with-sidebar')
.toggleClass('page-sidebar-collapsed page-sidebar-expanded')
.removeClass('page-sidebar-pinned')
@@ -292,7 +301,7 @@ $ ->
.toggleClass('header-collapsed header-expanded')
# Save settings
- $.cookie 'pin_nav', doPinNav, { path: '/' }
+ $.cookie 'pin_nav', doPinNav, { path: '/', expires: 365 * 10 }
if $.cookie('pin_nav') is 'true' or doPinNav
tooltipText = 'Unpin navigation'
diff --git a/app/controllers/admin/system_info_controller.rb b/app/controllers/admin/system_info_controller.rb
index 3c67370b667..cc63009cdc0 100644
--- a/app/controllers/admin/system_info_controller.rb
+++ b/app/controllers/admin/system_info_controller.rb
@@ -1,13 +1,32 @@
class Admin::SystemInfoController < Admin::ApplicationController
def show
+ excluded_mounts = [
+ "nobrowse",
+ "read-only",
+ "ro"
+ ]
+
system_info = Vmstat.snapshot
+ mounts = Sys::Filesystem.mounts
+
+ @disks = []
+ mounts.each do |mount|
+ options = mount.options.split(', ')
+
+ next unless excluded_mounts.each { |em| break if options.include?(em) }
+
+ disk = Sys::Filesystem.stat(mount.mount_point)
+ @disks.push({
+ bytes_total: disk.bytes_total,
+ bytes_used: disk.bytes_used,
+ disk_name: mount.name,
+ mount_path: disk.path
+ })
+ end
@cpus = system_info.cpus.length
@mem_used = system_info.memory.active_bytes
@mem_total = system_info.memory.total_bytes
-
- @disk_used = system_info.disks[0].used_bytes
- @disk_total = system_info.disks[0].total_bytes
end
end
diff --git a/app/views/admin/system_info/show.html.haml b/app/views/admin/system_info/show.html.haml
index 247db295863..6956e5ab795 100644
--- a/app/views/admin/system_info/show.html.haml
+++ b/app/views/admin/system_info/show.html.haml
@@ -17,6 +17,9 @@
%h1= "#{number_to_human_size(@mem_used)} / #{number_to_human_size(@mem_total)}"
.col-sm-4
.light-well
- %h4 Disk
+ %h4 Disks
.data
- %h1= "#{number_to_human_size(@disk_used)} / #{number_to_human_size(@disk_total)}"
+ - @disks.each do |disk|
+ %h1= "#{number_to_human_size(disk[:bytes_used])} / #{number_to_human_size(disk[:bytes_total])}"
+ %p= "#{disk[:disk_name]}"
+ %p= "#{disk[:mount_path]}"