server/apps/settings/js/log.js

86 lines
2 KiB
JavaScript
Raw Normal View History

2012-02-25 20:19:32 +00:00
/**
* Copyright (c) 2012, Robin Appelman <icewind1991@gmail.com>
2013-03-27 15:53:51 +00:00
* Copyright (c) 2013, Morris Jobke <morris.jobke@gmail.com>
2012-02-25 20:19:32 +00:00
* This file is licensed under the Affero General Public License version 3 or later.
* See the COPYING-README file.
*/
2014-10-30 13:59:13 +00:00
/* global formatDate */
OC.Log = {
reload: function (count) {
if (!count) {
count = OC.Log.loaded;
2012-04-16 10:27:21 +00:00
}
2014-10-30 13:59:13 +00:00
OC.Log.loaded = 0;
2012-04-16 10:27:21 +00:00
$('#log tbody').empty();
OC.Log.getMore(count);
},
2014-10-30 13:59:13 +00:00
levels: ['Debug', 'Info', 'Warning', 'Error', 'Fatal'],
loaded: 3,//are initially loaded
getMore: function (count) {
2013-03-28 14:02:31 +00:00
count = count || 10;
$.get(OC.generateUrl('/settings/admin/log/entries'), {offset: OC.Log.loaded, count: count}, function (result) {
OC.Log.addEntries(result.data);
if (!result.remain) {
$('#moreLog').hide();
2012-02-25 20:19:32 +00:00
}
$('#lessLog').show();
2012-02-25 20:19:32 +00:00
});
},
2014-10-30 13:59:13 +00:00
showLess: function (count) {
count = count || 10;
2013-03-28 14:02:31 +00:00
//calculate remaining items - at least 3
2014-10-30 13:59:13 +00:00
OC.Log.loaded = Math.max(3, OC.Log.loaded - count);
2013-03-28 15:11:46 +00:00
$('#moreLog').show();
2013-03-28 14:02:31 +00:00
// remove all non-remaining items
$('#log tr').slice(OC.Log.loaded).remove();
2014-10-30 13:59:13 +00:00
if (OC.Log.loaded <= 3) {
2013-03-28 14:02:31 +00:00
$('#lessLog').hide();
2013-07-31 19:21:02 +00:00
}
},
2014-10-30 13:59:13 +00:00
addEntries: function (entries) {
for (var i = 0; i < entries.length; i++) {
var entry = entries[i];
var row = $('<tr/>');
var levelTd = $('<td/>');
2012-02-25 20:19:32 +00:00
levelTd.text(OC.Log.levels[entry.level]);
row.append(levelTd);
2014-10-30 13:59:13 +00:00
var appTd = $('<td/>');
2012-02-25 20:19:32 +00:00
appTd.text(entry.app);
row.append(appTd);
2014-10-30 13:59:13 +00:00
var messageTd = $('<td/>');
messageTd.addClass('log-message');
2013-03-03 22:46:08 +00:00
messageTd.text(entry.message);
2012-02-25 20:19:32 +00:00
row.append(messageTd);
2014-10-30 13:59:13 +00:00
var timeTd = $('<td/>');
timeTd.addClass('date');
2014-10-30 13:59:13 +00:00
if (isNaN(entry.time)) {
timeTd.text(entry.time);
} else {
2014-10-30 13:59:13 +00:00
timeTd.text(formatDate(entry.time * 1000));
}
2012-02-25 20:19:32 +00:00
row.append(timeTd);
var userTd = $('<td/>');
userTd.text(entry.user);
row.append(userTd);
2012-02-25 20:19:32 +00:00
$('#log').append(row);
}
2012-05-02 19:26:42 +00:00
OC.Log.loaded += entries.length;
2012-02-25 20:19:32 +00:00
}
2014-10-30 13:59:13 +00:00
};
2012-02-25 20:19:32 +00:00
2014-10-30 13:59:13 +00:00
$(document).ready(function () {
$('#moreLog').click(function () {
2012-02-25 20:19:32 +00:00
OC.Log.getMore();
2014-10-30 13:59:13 +00:00
});
$('#lessLog').click(function () {
OC.Log.showLess();
2014-10-30 13:59:13 +00:00
});
2012-02-25 20:19:32 +00:00
});