Skip to content

Commit fa2758a

Browse files
committed
More tweaks to vaults
1 parent 7f449c7 commit fa2758a

File tree

2 files changed

+6
-13
lines changed

2 files changed

+6
-13
lines changed

routes/vaults.js

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
const express = require('express')
22
const router = express.Router()
33
const shuffleArray = require('../utils/shuffleArray')
4+
const sortObjBySubObjProp = require('../utils/sortObjBySubObjProp')
45

56
const firestore = require('../firestore')
67

@@ -26,6 +27,8 @@ router.get('/', async (req, res) => {
2627
if (vault.milestone_id && milestones[vault.milestone_id]) {
2728
vault.milestone = milestones[vault.milestone_id]
2829
vault.unlocked = milestones[vault.milestone_id].achieved || false
30+
vault.target = milestones[vault.milestone_id].target || 0
31+
delete vault.milestone.target
2932
}
3033
})
3134

@@ -40,17 +43,7 @@ router.get('/', async (req, res) => {
4043
}
4144

4245
// Sort vaults by milestone.target
43-
const sortedVaults = Object.values(vaults).sort((a, b) => {
44-
if (a.milestone && b.milestone) {
45-
return a.milestone.target - b.milestone.target
46-
} else if (a.milestone) {
47-
return -1
48-
} else if (b.milestone) {
49-
return 1
50-
} else {
51-
return 0
52-
}
53-
})
46+
const sortedVaults = sortObjBySubObjProp(vaults, 'target', true)
5447

5548
res.status(200).json(sortedVaults)
5649
})

utils/sortObjBySubObjProp.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
const sortObjBySubObjProp = (obj, key) => {
1+
const sortObjBySubObjProp = (obj, key, reverse = false) => {
22
const sortedKeys = Object.keys(obj).sort(function (a, b) {
3-
return obj[b][key] - obj[a][key]
3+
return reverse ? obj[a][key] - obj[b][key] : obj[b][key] - obj[a][key]
44
})
55
let tmpObj = {}
66
for (const k of sortedKeys) {

0 commit comments

Comments
 (0)