mirror of https://gitgud.io/fatchan/jschan.git
Merge pull request #47 from fatchan/dev
perms parameter cache, ratelimits and db destructuremerge-requests/208/head
commit
a72f112854
27 changed files with 92 additions and 75 deletions
@ -0,0 +1,14 @@ |
||||
'use strict'; |
||||
|
||||
module.exports = { |
||||
|
||||
Posts: require(__dirname+'/posts.js'), |
||||
Boards: require(__dirname+'/boards.js'), |
||||
Accounts: require(__dirname+'/accounts.js'), |
||||
Bans: require(__dirname+'/bans.js'), |
||||
Captchas: require(__dirname+'/captchas.js'), |
||||
Files: require(__dirname+'/files.js'), |
||||
News: require(__dirname+'/news.js'), |
||||
Ratelimits: require(__dirname+'/ratelimits.js') |
||||
|
||||
} |
@ -0,0 +1,37 @@ |
||||
'use strict'; |
||||
|
||||
const Mongo = require(__dirname+'/db.js') |
||||
, db = Mongo.client.db('jschan').collection('ratelimit'); |
||||
|
||||
module.exports = { |
||||
|
||||
db, |
||||
|
||||
resetQuota: (ip) => { |
||||
return db.deleteOne({ '_id': ip }); |
||||
}, |
||||
|
||||
incrmentQuota: (ip, amount) => { |
||||
return db.findOneAndUpdate( |
||||
{ |
||||
'_id': ip |
||||
}, |
||||
{ |
||||
'$inc': { |
||||
'sequence_value': amount |
||||
}, |
||||
'$setOnInsert': { |
||||
'expireAt': new Date() |
||||
} |
||||
}, |
||||
{ |
||||
'upsert': true |
||||
} |
||||
).then(r => { return r.value ? r.value.sequence_value : 0 }); |
||||
}, |
||||
|
||||
deleteAll: () => { |
||||
return ratelimit.deleteMany({}); |
||||
}, |
||||
|
||||
} |
Loading…
Reference in new issue