Skip to content

Commit

Permalink
Delete all log files button
Browse files Browse the repository at this point in the history
  • Loading branch information
Dahlgren committed Jan 17, 2022
1 parent c5d69ac commit 203e8a7
Show file tree
Hide file tree
Showing 4 changed files with 57 additions and 3 deletions.
12 changes: 12 additions & 0 deletions lib/logs.js
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,18 @@ Logs.prototype.delete = function (filename, callback) {
})
}

Logs.prototype.deleteAll = function (callback) {
this.logFiles(function (err, files) {
if (err) {
return callback(err)
}

async.map(files, function (logFile, cb) {
fs.unlink(logFile.path, cb)
}, callback)
})
}

Logs.prototype.generateLogFilePath = function (prefix, suffix) {
return path.join(this.logsPath(), Logs.generateLogFileName(prefix, suffix))
}
Expand Down
30 changes: 29 additions & 1 deletion public/js/app/views/logs/list.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
var $ = require('jquery')
var _ = require('underscore')
var Marionette = require('marionette')
var sweetAlert = require('sweet-alert')

var ListItemView = require('app/views/logs/list_item')
var tpl = require('tpl/logs/list.html')
Expand All @@ -9,5 +11,31 @@ var template = _.template(tpl)
module.exports = Marionette.CompositeView.extend({
childView: ListItemView,
childViewContainer: 'tbody',
template: template
template: template,

events: {
'click .delete-all': 'deleteAll'
},

deleteAll: function (event) {
var self = this

sweetAlert({
title: 'Are you sure?',
text: 'All logs will be deleted from the server!',
type: 'warning',
showCancelButton: true,
confirmButtonClass: 'btn-danger',
confirmButtonText: 'Yes, delete all!'
},
function () {
$.ajax('/api/logs/all', {
type: 'DELETE',
success: function (data) {
self.collection.fetch()
},
error: function () {}
})
})
}
})
8 changes: 6 additions & 2 deletions public/js/tpl/logs/list.html
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,12 @@
<th class="hidden-xs hidden-sm">Created</th>
<th class="hidden-xs hidden-sm">Modified</th>
<th>Size</th>
<th></th>
<th></th>
<th colspan="2">
<a class="btn btn-danger btn-xs delete-all ladda-button pull-right" data-style="expand-left">
<span class="glyphicon glyphicon-trash"></span>
Delete all
</a>
</th>
</tr>
</thead>

Expand Down
10 changes: 10 additions & 0 deletions routes/logs.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,16 @@ module.exports = function (logsManager) {
})
})

router.delete('/all', function (req, res) {
logsManager.deleteAll(function (err) {
if (err) {
res.status(500).send(err)
} else {
res.status(204).send()
}
})
})

router.delete('/:log', function (req, res) {
var filename = req.params.log
logsManager.delete(filename, function (err) {
Expand Down

0 comments on commit 203e8a7

Please sign in to comment.