freeCodeCamp/common/models/user.json

207 lines
4.1 KiB
JSON
Raw Normal View History

{
2015-06-03 23:48:17 +00:00
"name": "user",
"base": "User",
2015-06-09 23:43:08 +00:00
"strict": true,
2015-08-18 06:57:38 +00:00
"emailVerificationRequired": false,
2015-06-11 06:59:42 +00:00
"idInjection": true,
"trackChanges": false,
"properties": {
"email": {
"type": "string",
"index": {
"mongodb": {
"unique": true,
"background": true,
"sparse": true
}
}
2015-06-11 06:59:42 +00:00
},
"password": {
"type": "string"
},
"progressTimestamps": {
"type": "array",
"default": []
},
"isGithubCool": {
"type": "boolean",
"default": false
},
2015-08-06 00:49:19 +00:00
"githubId": {
"type": "string"
},
"githubURL": {
"type": "string"
},
"githubEmail": {
"type": "string"
},
"joinedGithubOn": {
"type": "date"
},
"isMigrationGrandfathered": {
"type": "boolean",
"default": false
},
2015-06-04 19:47:31 +00:00
"username": {
"type": "string",
"require": true,
"index": {
"mongodb": {
"unique": true,
"background": true
}
}
},
2015-06-04 19:47:31 +00:00
"bio": {
"type": "string",
"default": ""
},
"name": {
"type": "string",
"default": ""
},
"gender": {
"type": "string",
"default": ""
},
"location": {
"type": "string",
"default": ""
},
"picture": {
"type": "string",
"default": ""
},
2015-08-13 03:09:15 +00:00
"linkedin": {
"type": "string"
2015-06-04 19:47:31 +00:00
},
2015-08-13 03:09:15 +00:00
"codepen": {
"type": "string"
2015-06-04 19:47:31 +00:00
},
2015-08-13 03:09:15 +00:00
"twitter": {
"type": "string"
2015-06-04 19:47:31 +00:00
},
2015-08-13 03:09:15 +00:00
"facebook": {
"type": "string"
2015-06-04 19:47:31 +00:00
},
2015-08-13 03:09:15 +00:00
"google": {
"type": "string"
2015-06-04 19:47:31 +00:00
},
"currentStreak": {
"type": "number",
"default": 0
},
"longestStreak": {
"type": "number",
"default": 0
},
"sendMonthlyEmail": {
"type": "boolean",
"default": true
},
"isLocked": {
2015-09-28 00:08:56 +00:00
"type": "boolean",
2015-10-02 18:47:36 +00:00
"default": false,
"description": "Campers profile does not show challenges/certificates to the public"
2015-09-28 00:08:56 +00:00
},
2015-06-11 06:59:42 +00:00
"currentChallenge": {
"type": {}
},
"isUniqMigrated": {
"type": "boolean",
2015-10-02 18:47:36 +00:00
"default": false,
"description": "Campers completedChallenges array is free of duplicates"
},
"isHonest": {
"type": "boolean",
"default": false,
"description": "Camper has signed academic honesty policy"
},
"isFrontEndCert": {
"type": "boolean",
"defaut": false,
"description": "Camper is front end certified"
},
"isFullStackCert": {
"type": "boolean",
"default": false,
"description": "Campers is full stack certified"
},
"completedChallenges": {
2015-06-11 06:59:42 +00:00
"type": [
{
"completedDate": "number",
"lastUpdated": "number",
2015-06-11 06:59:42 +00:00
"id": "string",
"name": "string",
"completedWith": "string",
"solution": "string",
"githubLink": "string",
"verified": "boolean",
"challengeType": {
"type": "number",
"default": 0
}
}
2015-06-11 06:59:42 +00:00
],
"default": []
},
"rand": {
"type": "number",
"index": true
2015-09-27 17:49:44 +00:00
},
"tshirtVote": {
"type": "number"
2015-06-11 06:59:42 +00:00
}
},
"validations": [],
2015-06-12 20:14:07 +00:00
"relations": {
"credentials": {
"type": "hasMany",
"model": "userCredential",
"foreignKey": ""
},
"identities": {
"type": "hasMany",
"model": "userIdentity",
"foreignKey": ""
},
"pledge": {
"type": "hasOne",
"model": "pledge",
"foreignKey": ""
2015-06-12 20:14:07 +00:00
}
},
2015-06-11 06:59:42 +00:00
"acls": [
{
"accessType": "*",
"principalType": "ROLE",
"principalId": "$everyone",
"permission": "DENY"
},
{
"accessType": "EXECUTE",
"principalType": "ROLE",
"principalId": "$everyone",
"permission": "ALLOW",
"property": "doesExist"
2015-07-29 18:32:16 +00:00
},
{
"accessType": "EXECUTE",
"principalType": "ROLE",
"principalId": "$everyone",
"permission": "ALLOW",
"property": "about"
2015-07-29 22:00:24 +00:00
},
{
"accessType": "EXECUTE",
"principalType": "ROLE",
"principalId": "$everyone",
"permission": "ALLOW",
"property": "giveBrowniePoints"
2015-06-11 06:59:42 +00:00
}
],
2015-06-12 18:38:00 +00:00
"methods": []
}