diff options
author | Logan Fick <logaldeveloper@protonmail.com> | 2017-10-12 18:52:53 -0400 |
---|---|---|
committer | Logan Fick <logaldeveloper@protonmail.com> | 2017-10-12 18:52:53 -0400 |
commit | 611c52223a5d7ebea1dbe73d46b061229f6918e1 (patch) | |
tree | 9b3c235db717e81e4082959cbb738576903a7d6f | |
parent | adf1966b97d6c5fb33e42656ca67d2adc0cad1d7 (diff) |
Fixed who's playing page returning internal server error when server is offline.
-rw-r--r-- | app/controllers/statics_controller.rb | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/app/controllers/statics_controller.rb b/app/controllers/statics_controller.rb index 08dceef..70b58da 100644 --- a/app/controllers/statics_controller.rb +++ b/app/controllers/statics_controller.rb @@ -17,8 +17,15 @@ class StaticsController < ApplicationController end def online - json = JSON.parse(File.read("/etc/minecraft/redstoner/plugins/ModuleLoader/players.json")) - @players = json["players"].collect!{ |p| User.find_by(uuid: p["UUID"].tr("-", "")) or User.new(name: p["name"], ign: p["name"], uuid: p["UUID"].tr("-", ""), role: Role.get("normal"), badge: Badge.get("none"), confirmed: true) }.sort_by!(&:role).reverse! - @count = json["amount"] + begin + json = JSON.parse(File.read("/etc/minecraft/redstoner/plugins/ModuleLoader/players.json")) + rescue + flash[:alert] = "The server is currently offline." + @players = {} + @count = 0 + else + @players = json["players"].collect!{ |p| User.find_by(uuid: p["UUID"].tr("-", "")) or User.new(name: p["name"], ign: p["name"], uuid: p["UUID"].tr("-", ""), role: Role.get("normal"), badge: Badge.get("none"), confirmed: true) }.sort_by!(&:role).reverse! + @count = json["amount"] + end end end |