Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- fs = require("fs")
- maxDivisions = 10
- maxShips = 10
- divisionFile = "./division.json"
- if(!archive.exists(divisionFile)){
- fs.writeFileSync(divisionFile,"{}")
- }
- /*
- Format of Divisions.json:
- {"userid1":{{"name":"division1","ships":[shipids]},{"name":"division2","ships":[shipids]}},"userid2":{{"name":"division1","ships":[shipids]},{"name":"division2","ships":[shipids]}}}
- Returning:
- div(object) = success
- error01 = to many divisions
- error02 = to many ships
- error03 = no such division
- error04 = no divisions
- */
- this.createDivision = function(id,name,ships){
- div = archive.read(divisionFile)
- if(!div[id]){div[id] = id}
- if(Object.keys(div[id].length)>=maxDivisions){return "error01"}
- if(ships.length>maxShips){return "error02"}
- div[id][Object.keys(div[id]).length+1].name = name
- div[id][Object.keys(div[id]).length+1].ships = ships
- archive.write(divisionFile,div)
- return div
- }
- this.renameDivision = function(id,divNr,name){
- div = archive.read(divisionFile)
- if(!div[id]){return "error04"}
- if(!div[id][divNr]){return "error03"}
- div[id][divNr].name=name
- archive.write(divisionFile,div)
- return div
- }
- this.editDivision = function(id,divNr,ships){
- div = archive.read(divisionFile)
- if(ships.length>maxShips){return "error02"}
- if(!div[id][divNr]){return "error03"}
- div[id][divNr].ships = ships
- archive.write(divisionFile,div)
- return div
- }
- this.getDivision = function(id){
- div = archive.read(divisionFile)
- if(!div[id]){return "error04"}
- return div[id]
- }
- class archive{
- read(file){
- return JSON.parse(fs.readFileSync(file))
- }
- write(file,object){
- fs.writeFileSync(file,JSON.stringify(object))
- return true
- }
- exists(file){
- fs.stat(file,(err,stats)=>{
- if(err){return err}
- if(stats.isFile()){return true}
- })
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment