function generatePartitions(partitions) { var rowTemplate = '' + '' + $.i18n._("Disk") + " #%s" + '" + "" + "%sGB of %sGB" + '' + '
' + '
' + "
" + "
" + "
%s%% " + $.i18n._("in use") + "
" + "" + ""; $(".partition-info").remove(); var lastElement = $("#partitions"); for (var i = 0; i < partitions.length; i++) { var spaceUsed = partitions[i].totalSpace - partitions[i].totalFreeSpace; var totalSpace = partitions[i].totalSpace; var percUsed = sprintf("%01.1f", (spaceUsed / totalSpace) * 100); var spaceUsedGb = sprintf("%01.1f", spaceUsed / Math.pow(2, 30)); var totalSpaceGb = sprintf("%01.1f", totalSpace / Math.pow(2, 30)); var row = sprintf( rowTemplate, i + 1, i, spaceUsedGb, totalSpaceGb, percUsed, percUsed ); var tr = $(row); lastElement.after(tr); if (partitions[i].dirs) { var watched_dirs_ul = $("#watched-dir-list-" + i); for (var j = 0; j < partitions[i].dirs.length; j++) { watched_dirs_ul.append("
  • " + partitions[i].dirs[j] + "
  • "); } } lastElement = tr; } } function success(data, textStatus, jqXHR) { var services = data.status.services; for (var key in services) { var s = services[key]; if (s) { var children = $("#" + s.name).children(); $(children[0]).text(s.name); var status_class = "not-available-icon"; if (s.status == 0) { status_class = "checked-icon"; } else if (s.status == 1) { status_class = "warning-icon"; } $($(children[1]).children()[0]).attr("class", status_class); $(children[2]).text( sprintf( "%(days)sd %(hours)sh %(minutes)sm %(seconds)ss", convertSecondsToDaysHoursMinutesSeconds(s.uptime_seconds) ) ); $(children[3]).text(s.cpu_perc); $(children[4]).text( sprintf("%01.1fMB (%s)", parseInt(s.memory_kb) / 1000, s.memory_perc) ); } } if (data.status.partitions) { generatePartitions(data.status.partitions); } setTimeout(function () { updateStatus(false); }, 5000); } function updateStatus(getDiskInfo) { $.getJSON( baseUrl + "api/status/format/json/diskinfo/" + getDiskInfo, null, success ); } $(document).ready(function () { updateStatus(true); });