Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'apps/settings/js/log.js')
-rw-r--r--apps/settings/js/log.js85
1 files changed, 85 insertions, 0 deletions
diff --git a/apps/settings/js/log.js b/apps/settings/js/log.js
new file mode 100644
index 00000000000..a1ad29d72e7
--- /dev/null
+++ b/apps/settings/js/log.js
@@ -0,0 +1,85 @@
+/**
+ * Copyright (c) 2012, Robin Appelman <icewind1991@gmail.com>
+ * Copyright (c) 2013, Morris Jobke <morris.jobke@gmail.com>
+ * This file is licensed under the Affero General Public License version 3 or later.
+ * See the COPYING-README file.
+ */
+
+/* global formatDate */
+
+OC.Log = {
+ reload: function (count) {
+ if (!count) {
+ count = OC.Log.loaded;
+ }
+ OC.Log.loaded = 0;
+ $('#log tbody').empty();
+ OC.Log.getMore(count);
+ },
+ levels: ['Debug', 'Info', 'Warning', 'Error', 'Fatal'],
+ loaded: 3,//are initially loaded
+ getMore: function (count) {
+ 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();
+ }
+ $('#lessLog').show();
+ });
+ },
+ showLess: function (count) {
+ count = count || 10;
+ //calculate remaining items - at least 3
+ OC.Log.loaded = Math.max(3, OC.Log.loaded - count);
+ $('#moreLog').show();
+ // remove all non-remaining items
+ $('#log tr').slice(OC.Log.loaded).remove();
+ if (OC.Log.loaded <= 3) {
+ $('#lessLog').hide();
+ }
+ },
+ addEntries: function (entries) {
+ for (var i = 0; i < entries.length; i++) {
+ var entry = entries[i];
+ var row = $('<tr/>');
+ var levelTd = $('<td/>');
+ levelTd.text(OC.Log.levels[entry.level]);
+ row.append(levelTd);
+
+ var appTd = $('<td/>');
+ appTd.text(entry.app);
+ row.append(appTd);
+
+ var messageTd = $('<td/>');
+ messageTd.addClass('log-message');
+ messageTd.text(entry.message);
+ row.append(messageTd);
+
+ var timeTd = $('<td/>');
+ timeTd.addClass('date');
+ if (isNaN(entry.time)) {
+ timeTd.text(entry.time);
+ } else {
+ timeTd.text(formatDate(entry.time * 1000));
+ }
+ row.append(timeTd);
+
+ var userTd = $('<td/>');
+ userTd.text(entry.user);
+ row.append(userTd);
+
+ $('#log').append(row);
+ }
+ OC.Log.loaded += entries.length;
+ }
+};
+
+$(document).ready(function () {
+ $('#moreLog').click(function () {
+ OC.Log.getMore();
+ });
+ $('#lessLog').click(function () {
+ OC.Log.showLess();
+ });
+});