32 lines
658 B
JavaScript
32 lines
658 B
JavaScript
|
|
||
|
class Db {
|
||
|
constructor (models) {
|
||
|
this.models = models
|
||
|
}
|
||
|
|
||
|
saveSong (value) {
|
||
|
// Find if previous song was the same (on bot reload)
|
||
|
this.models.Histories
|
||
|
.find({})
|
||
|
.sort({
|
||
|
createdAt: 'desc'
|
||
|
})
|
||
|
.limit(1)
|
||
|
.exec(function (err, last) {
|
||
|
if (err ||
|
||
|
last.length === 0 ||
|
||
|
(last[0] !== undefined &&
|
||
|
last[0].artist !== value.artist &&
|
||
|
last[0].song !== value.song
|
||
|
)
|
||
|
) {
|
||
|
// Previous song was different => save song!
|
||
|
const history = new this.models.Histories(value)
|
||
|
history.save()
|
||
|
}
|
||
|
})
|
||
|
}
|
||
|
}
|
||
|
|
||
|
module.exports = Db
|