1
0
Fork 0
mirror of https://gitlab.com/Shinobi-Systems/ShinobiCE.git synced 2025-03-09 15:40:15 +00:00
- Rebased sql, test, web, defintions, languages, INSTALL, and libs folders.
This commit is contained in:
Moe 2019-03-07 14:43:37 -08:00
parent 24de55e45a
commit d0b12e92e7
362 changed files with 21716 additions and 7018 deletions

View file

@ -15,7 +15,7 @@ module.exports = function(s,config){
if(s.group[e.ke].sizePurgeQueue.length > 0){
checkQueue()
}else{
s.group[e.ke].sizePurging=false
s.group[e.ke].sizePurging = false
s.sendDiskUsedAmountToClients(e)
}
}
@ -116,6 +116,9 @@ module.exports = function(s,config){
s.tx({f:'log',ke:e.ke,mid:e.mid,log:x,time:s.timeObject()},'GRPLOG_'+e.ke);
}
s.loadGroup = function(e){
s.loadGroupExtensions.forEach(function(extender){
extender(e)
})
if(!s.group[e.ke]){
s.group[e.ke]={}
}
@ -145,7 +148,7 @@ module.exports = function(s,config){
ar=JSON.parse(r.details);
//load extenders
s.loadGroupAppExtensions.forEach(function(extender){
extender(r)
extender(r,ar)
})
//disk Used Emitter
if(!s.group[e.ke].diskUsedEmitter){
@ -257,11 +260,11 @@ module.exports = function(s,config){
d.form.details.use_admin=d.d.use_admin
d.form.details.use_ldap=d.d.use_ldap
//check
if(d.d.edit_days=="0"){
d.form.details.days=d.d.days;
if(d.d.edit_days == "0"){
d.form.details.days = d.d.days;
}
if(d.d.edit_size=="0"){
d.form.details.size=d.d.size;
if(d.d.edit_size == "0"){
d.form.details.size = d.d.size;
}
if(d.d.sub){
d.form.details.sub=d.d.sub;
@ -292,7 +295,7 @@ module.exports = function(s,config){
var userDetails = JSON.parse(d.form.details)
s.group[d.ke].sizeLimit = parseFloat(newSize)
s.onAccountSaveExtensions.forEach(function(extender){
extender(s.group[d.ke],userDetails)
extender(s.group[d.ke],userDetails,user)
})
s.unloadGroupAppExtensions.forEach(function(extender){
extender(user)
@ -305,4 +308,45 @@ module.exports = function(s,config){
}
})
}
s.findPreset = function(presetQueryVals,callback){
//presetQueryVals = [ke, type, name]
s.sqlQuery("SELECT * FROM Presets WHERE ke=? AND type=? AND name=? LIMIT 1",presetQueryVals,function(err,presets){
var preset
var notFound = false
if(presets && presets[0]){
preset = presets[0]
s.checkDetails(preset)
}else{
notFound = true
}
callback(notFound,preset)
})
}
s.checkUserPurgeLock = function(groupKey){
var userGroup = s.group[groupKey]
if(s.group[groupKey].usedSpace > s.group[groupKey].sizeLimit){
s.group[groupKey].sizePurgeQueue = []
s.group[groupKey].sizePurging = false
s.systemLog(lang.sizePurgeLockedText + ' : ' + groupKey)
s.onStalePurgeLockExtensions.forEach(function(extender){
extender(groupKey,s.group[groupKey].usedSpace,s.group[groupKey].sizeLimit)
})
}
}
if(config.cron.deleteOverMax === true){
s.checkForStalePurgeLocks = function(){
var doCheck = function(){
Object.keys(s.group).forEach(function(groupKey){
s.checkUserPurgeLock(groupKey)
})
}
clearTimeout(s.checkForStalePurgeLocksInterval)
s.checkForStalePurgeLocksInterval = setInterval(function(){
doCheck()
},1000 * 60 * 60)
doCheck()
}
}else{
s.checkForStalePurgeLocks = function(){}
}
}