addVouch backend

This commit is contained in:
Sendou
2020-01-08 02:23:12 +02:00
parent e5bc39043d
commit 9b2ab05c59
5 changed files with 18 additions and 23 deletions

View File

@@ -380,11 +380,6 @@ const resolvers = {
return true
},
addVouch: async (root, args, ctx) => {
/*addVouch(
discord_id: String!
server: String!
region: String!
): Boolean! */
if (!ctx.user) throw new AuthenticationError("Not logged in.")
if (!ctx.user.plus || !ctx.user.plus.membership_status) {
throw new AuthenticationError("Not plus member.")
@@ -395,7 +390,7 @@ const resolvers = {
if (args.region !== "EU" && args.region !== "NA")
throw new UserInputError("Invalid region given.")
const can_vouch = !ctx.user.plus.can_vouch
const can_vouch = ctx.user.plus.can_vouch
if (!can_vouch || (can_vouch !== "ONE" && args.server === "ONE"))
throw new UserInputError("No privileges to vouch.")
@@ -422,10 +417,14 @@ const resolvers = {
user.plus.vouch_status = args.server
user.plus.voucher_discord_id = ctx.user.discord_id
if (!user.plus.plus_region) user.plus.plus_region = args.region
ctx.user.plus.can_vouch = null
const vouchingUser = await User.findOne({
discord_id: ctx.user.discord_id,
})
vouchingUser.can_vouch = null
await user.save()
await ctx.user.save() //works or nah?
await vouchingUser.save()
return true
},

View File

@@ -94,6 +94,7 @@ const resolvers = {
membership_status: "ONE",
vouch_status: null,
plus_region: "EU",
can_vouch: "ONE",
},
}
}

View File

@@ -110,6 +110,7 @@ const server = new ApolloServer({
membership_status: "ONE",
vouch_status: null,
plus_region: "EU",
can_vouch: "ONE",
},
},
}

20
package-lock.json generated
View File

@@ -530,12 +530,11 @@
}
},
"axios": {
"version": "0.19.0",
"resolved": "https://registry.npmjs.org/axios/-/axios-0.19.0.tgz",
"integrity": "sha512-1uvKqKQta3KBxIz14F2v06AEHZ/dIoeKfbTRkK1E5oqjDnuEerLmYTgJB5AiQZHJcljpg1TuRzdjDR06qNk0DQ==",
"version": "0.19.1",
"resolved": "https://registry.npmjs.org/axios/-/axios-0.19.1.tgz",
"integrity": "sha512-Yl+7nfreYKaLRvAvjNPkvfjnQHJM1yLBY3zhqAwcJSwR/6ETkanUgylgtIvkvz0xJ+p/vZuNw8X7Hnb7Whsbpw==",
"requires": {
"follow-redirects": "1.5.10",
"is-buffer": "^2.0.2"
"follow-redirects": "1.5.10"
}
},
"backo2": {
@@ -1355,11 +1354,6 @@
"binary-extensions": "^2.0.0"
}
},
"is-buffer": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.4.tgz",
"integrity": "sha512-Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A=="
},
"is-callable": {
"version": "1.1.5",
"resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.5.tgz",
@@ -1610,9 +1604,9 @@
}
},
"mongoose": {
"version": "5.8.4",
"resolved": "https://registry.npmjs.org/mongoose/-/mongoose-5.8.4.tgz",
"integrity": "sha512-jQjLckUILEQUqBuG+ihjtA9OLmrqcIG5n+vaeHpR++TG8/ug5yy5ogkDnybTSq8Ql5OORud3+OCOc2Uw96q32w==",
"version": "5.8.5",
"resolved": "https://registry.npmjs.org/mongoose/-/mongoose-5.8.5.tgz",
"integrity": "sha512-Ek73KYUVpD9+O0tK//C6I69akmVfhJLdSX7RwpyIhfBlVEyi9tW+255A+BUXvOKNS0e6SX8e7C42+WD5kcylCg==",
"requires": {
"bson": "~1.1.1",
"kareem": "2.3.1",

View File

@@ -15,7 +15,7 @@
"dependencies": {
"apollo-server": "^2.9.15",
"apollo-server-express": "^2.9.15",
"axios": "^0.19.0",
"axios": "^0.19.1",
"btoa": "^1.2.1",
"connect-mongo": "^3.2.0",
"cors": "^2.8.5",
@@ -23,7 +23,7 @@
"express-session": "^1.17.0",
"graphql": "^14.5.8",
"lodash": "^4.17.15",
"mongoose": "^5.8.4",
"mongoose": "^5.8.5",
"mongoose-unique-validator": "^2.0.3",
"node-fetch": "^2.6.0",
"passport": "^0.4.1",