mirror of
https://github.com/Tautulli/Tautulli.git
synced 2025-07-15 17:52:59 -07:00
Add button to clear notification logs
This commit is contained in:
parent
b39e7bbb6d
commit
7f5d9bec87
3 changed files with 44 additions and 1 deletions
|
@ -22,6 +22,7 @@ from plexpy import helpers
|
||||||
</div>
|
</div>
|
||||||
<div class="button-bar">
|
<div class="button-bar">
|
||||||
<button class="btn btn-dark" id="clear-logs"><i class="fa fa-trash-o"></i> Clear log</button>
|
<button class="btn btn-dark" id="clear-logs"><i class="fa fa-trash-o"></i> Clear log</button>
|
||||||
|
<button class="btn btn-dark" id="clear-notify-logs" style="display: none;"><i class="fa fa-trash-o"></i> Clear log</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class='table-card-back'>
|
<div class='table-card-back'>
|
||||||
|
@ -156,24 +157,28 @@ from plexpy import helpers
|
||||||
|
|
||||||
$("#plexpy-logs-btn").click(function () {
|
$("#plexpy-logs-btn").click(function () {
|
||||||
$("#clear-logs").show();
|
$("#clear-logs").show();
|
||||||
|
$("#clear-notify-logs").hide();
|
||||||
LoadPlexPyLogs();
|
LoadPlexPyLogs();
|
||||||
clearSearchButton('log_table', log_table);
|
clearSearchButton('log_table', log_table);
|
||||||
});
|
});
|
||||||
|
|
||||||
$("#plex-logs-btn").click(function () {
|
$("#plex-logs-btn").click(function () {
|
||||||
$("#clear-logs").hide();
|
$("#clear-logs").hide();
|
||||||
|
$("#clear-notify-logs").hide();
|
||||||
LoadPlexLogs();
|
LoadPlexLogs();
|
||||||
clearSearchButton('plex_log_table', plex_log_table);
|
clearSearchButton('plex_log_table', plex_log_table);
|
||||||
});
|
});
|
||||||
|
|
||||||
$("#plex-scanner-logs-btn").click(function () {
|
$("#plex-scanner-logs-btn").click(function () {
|
||||||
$("#clear-logs").hide();
|
$("#clear-logs").hide();
|
||||||
|
$("#clear-notify-logs").hide();
|
||||||
LoadPlexScannerLogs();
|
LoadPlexScannerLogs();
|
||||||
clearSearchButton('plex_scanner_log_table', plex_scanner_log_table);
|
clearSearchButton('plex_scanner_log_table', plex_scanner_log_table);
|
||||||
});
|
});
|
||||||
|
|
||||||
$("#notification-logs-btn").click(function () {
|
$("#notification-logs-btn").click(function () {
|
||||||
$("#clear-logs").hide();
|
$("#clear-logs").hide();
|
||||||
|
$("#clear-notify-logs").show();
|
||||||
LoadNotificationLogs();
|
LoadNotificationLogs();
|
||||||
clearSearchButton('notification_log_table', notification_log_table);
|
clearSearchButton('notification_log_table', notification_log_table);
|
||||||
});
|
});
|
||||||
|
@ -185,6 +190,19 @@ from plexpy import helpers
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
$("#clear-notify-logs").click(function () {
|
||||||
|
var r = confirm("Are you sure you want to clear the PlexPy notification log?");
|
||||||
|
if (r == true) {
|
||||||
|
$.ajax({
|
||||||
|
url: 'clearNotifyLogs',
|
||||||
|
type: 'POST',
|
||||||
|
success: function (data) {
|
||||||
|
notification_log_table.draw();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
var timer;
|
var timer;
|
||||||
function setRefresh()
|
function setRefresh()
|
||||||
{
|
{
|
||||||
|
|
|
@ -1206,4 +1206,16 @@ class DataFactory(object):
|
||||||
'draw': query['draw']
|
'draw': query['draw']
|
||||||
}
|
}
|
||||||
|
|
||||||
return dict
|
return dict
|
||||||
|
|
||||||
|
def delete_notification_log(self):
|
||||||
|
monitor_db = database.MonitorDatabase()
|
||||||
|
|
||||||
|
try:
|
||||||
|
logger.info(u"PlexPy DataFactory :: Clearing notification logs from database.")
|
||||||
|
monitor_db.action('DELETE FROM notify_log')
|
||||||
|
monitor_db.action('VACUUM')
|
||||||
|
return 'Cleared notification logs.'
|
||||||
|
except Exception as e:
|
||||||
|
logger.warn(u"PlexPy DataFactory :: Unable to execute database query for delete_notification_log: %s." % e)
|
||||||
|
return 'Unable to clear notification logs.'
|
|
@ -1096,6 +1096,19 @@ class WebInterface(object):
|
||||||
cherrypy.response.headers['Content-type'] = 'application/json'
|
cherrypy.response.headers['Content-type'] = 'application/json'
|
||||||
return json.dumps(notifications)
|
return json.dumps(notifications)
|
||||||
|
|
||||||
|
@cherrypy.expose
|
||||||
|
@addtoapi()
|
||||||
|
def clearNotifyLogs(self, **kwargs):
|
||||||
|
data_factory = datafactory.DataFactory()
|
||||||
|
result = data_factory.delete_notification_log()
|
||||||
|
|
||||||
|
if result:
|
||||||
|
cherrypy.response.headers['Content-type'] = 'application/json'
|
||||||
|
return json.dumps({'message': result})
|
||||||
|
else:
|
||||||
|
cherrypy.response.headers['Content-type'] = 'application/json'
|
||||||
|
return json.dumps({'message': 'no data received'})
|
||||||
|
|
||||||
@cherrypy.expose
|
@cherrypy.expose
|
||||||
def clearLogs(self):
|
def clearLogs(self):
|
||||||
plexpy.LOG_LIST = []
|
plexpy.LOG_LIST = []
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue