freeCodeCamp/common/models/job.json

120 lines
2.3 KiB
JSON

{
"name": "job",
"base": "PersistedModel",
"strict": true,
"idInjection": true,
"trackChanges": false,
"properties": {
"id": {
"type": "string",
"id": true
},
"position": {
"type": "string"
},
"company": {
"type": "string"
},
"logo": {
"type": "string"
},
"city": {
"type": "string"
},
"email": {
"type": "string",
"required": true
},
"phone": {
"type": "string"
},
"state": {
"type": "string"
},
"url": {
"type": "string"
},
"country": {
"type": "string"
},
"locale": {
"type": "string",
"required": true,
"description": "format: city, state"
},
"location": {
"type": "geopoint",
"description": "location in lat, long"
},
"description": {
"type": "string"
},
"isApproved": {
"type": "boolean",
"default": false
},
"isHighlighted": {
"type": "boolean",
"default": false
},
"isPaid": {
"type": "boolean",
"default": false
},
"isFilled": {
"type": "boolean",
"default": false
},
"postedOn": {
"type": "date",
"defaultFn": "now"
},
"isFrontEndCert": {
"type": "boolean",
"defaut": false,
"description": "Camper must be front end certified to apply"
},
"isBackEndCert": {
"type": "boolean",
"default": false,
"description": "Camper must be back end certified to apply"
},
"isFullStackCert": {
"type": "boolean",
"default": false,
"description": "Camper must be full stack certified to apply"
},
"isRemoteOk": {
"type": "boolean",
"default": false,
"description": "Camper may work remotely"
},
"howToApply": {
"type": "string",
"required": true,
"description": "How do campers apply to job"
},
"promoCodeUsed": {
"type": "string",
"description": "the promocode, if any, that the job uses"
}
},
"validations": [],
"relations": {},
"acls": [
{
"accessType": "*",
"principalType": "ROLE",
"principalId": "$everyone",
"permission": "DENY"
},
{
"accessType": "READ",
"principalType": "ROLE",
"principalId": "$everyone",
"permission": "ALLOW"
}
],
"methods": []
}