sendou.ink/mongoose-models/user.js
Kalle 710d99cab2
New placements (#119)
* compiles but looks ugly

* create sr record working version

* validate and tsify

* chakra ui v 1.0 icon fixes

* new ui first ver

* remove unused icon

* remove imports , color picker work

* color picker done

* set bg color proper

* suggests vouches page

* remove unused deps

* voting history page

* build analyzer improvements

* calendar page new

* footer stay down

* ui refresh stuff

* x trends dont show tier if no weapons

* draft cup page new look

* plus faq page

* cra 4 beta

* top logo placed center

* weapon images new import style

* top nav aling correctly in mobile resolution

* nav changes

* initial xleaderboard

* peak x powers backend

* graphql codegen

* switched to apollo/client package

* initial xleaderboard table

* insert player ids

* dataloaders

* ts-node dev dep

* x leaderboard basic

* xleaderboard testing

* x rank placements backend

* all leaderboards frontend components initial

* pagination tweaking

* ran prettier

* leaderboards doneish

* top 500 browser basic

* top 500 browser

* pagination tweaks

* implemented filters

* user page placements

* remove useless

* useEffect only call on name change

* markdown use new table style

* use mode images

* search by player id

* link to xsearch from leaderboards

* translated

* disable next if no pagecount

* remove comment
2020-10-04 20:48:05 +03:00

43 lines
1007 B
JavaScript

const mongoose = require("mongoose");
const userSchema = new mongoose.Schema({
username: { type: String, required: true },
avatar: String,
discriminator: { type: String, required: true },
discord_id: { type: String, required: true },
team: {
type: mongoose.Schema.Types.ObjectId,
ref: "Team",
},
twitch_name: String,
twitter_name: String,
youtube_name: String,
youtube_id: String,
country: String,
sens: {
stick: { type: Number, min: -5, max: 5 },
motion: { type: Number, min: -5, max: 5 },
},
bio: String,
weapons: [String],
top500: Boolean,
custom_url: String,
plus: {
membership_status: String,
vouch_status: String,
voucher_discord_id: String,
plus_region: String,
can_vouch: String,
can_vouch_again_after: Date,
},
});
userSchema.virtual("plus.voucher_user", {
ref: "User",
localField: "plus.voucher_discord_id",
foreignField: "discord_id",
justOne: true,
});
module.exports = mongoose.model("User", userSchema);