@@ -16,49 +16,51 @@ Idea for the future: programmingLanguages, numberGithubContributions (pull these
1616*/
1717
1818const projectSchema = mongoose . Schema ( {
19- name : { type : String , trim : true } ,
20- description : { type : String , trim : true } ,
21- githubIdentifier : { type : String , trim : true } ,
22- projectStatus : { type : String } , // Active, Completed, or Paused
23- location : { type : String , trim : true } , // DTLA, Westside, South LA, or Remote (hacknight)
24- //teamMembers: { type: String }, // commented since we should be able to get this from Project Team Members table
25- createdDate : { type : Date , default : Date . now } , // date/time project was created
26- completedDate : { type : Date } , // only if Status = Completed, date/time completed
27- githubUrl : { type : String , trim : true } , // link to main repo
28- slackUrl : { type : String , trim : true } , // link to Slack channel
29- googleDriveUrl : { type : String , trim : true } ,
30- googleDriveId : { type : String } ,
31- hflaWebsiteUrl : { type : String , trim : true } ,
32- videoConferenceLink : { type : String } ,
33- lookingDescription : { type : String } , // narrative on what the project is looking for
34- recruitingCategories : [ { type : String } ] , // same as global Skills picklist
35- partners : [ { type : String } ] , // any third-party partners on the project, e.g. City of LA
36- managedByUsers : [ { type : String } ] // Which users may manage this project.
19+ name : { type : String , trim : true } ,
20+ description : { type : String , trim : true } ,
21+ githubIdentifier : { type : String , trim : true } ,
22+ projectStatus : { type : String } , // Active, Completed, or Paused
23+ location : { type : String , trim : true } , // DTLA, Westside, South LA, or Remote (hacknight)
24+ //teamMembers: { type: String }, // commented since we should be able to get this from Project Team Members table
25+ createdDate : { type : Date , default : Date . now } , // date/time project was created
26+ completedDate : { type : Date } , // only if Status = Completed, date/time completed
27+ githubUrl : { type : String , trim : true } , // link to main repo
28+ slackUrl : { type : String , trim : true } , // link to Slack channel
29+ googleDriveUrl : { type : String , trim : true } ,
30+ googleDriveId : { type : String } ,
31+ hflaWebsiteUrl : { type : String , trim : true } ,
32+ videoConferenceLink : { type : String } ,
33+ lookingDescription : { type : String } , // narrative on what the project is looking for
34+ recruitingCategories : [ { type : String } ] , // same as global Skills picklist
35+ partners : [ { type : String } ] , // any third-party partners on the project, e.g. City of LA
36+ managedByUsers : [ { type : String } ] , // Which users may manage this project.
37+ onboardOffboardVisible : { type : Boolean , default : true } , // Whether onboarding/offboarding forms are visible on the project page
3738} ) ;
3839
39- projectSchema . methods . serialize = function ( ) {
40- return {
41- id : this . _id ,
42- name : this . name ,
43- description : this . description ,
44- githubIdentifier : this . githubIdentifier ,
45- // owner: this.owner,
46- projectStatus : this . projectStatus ,
47- location : this . location ,
48- //teamMembers: this.teamMembers,
49- createdDate : this . createdDate ,
50- completedDate : this . completedDate ,
51- githubUrl : this . githubUrl ,
52- slackUrl : this . slackUrl ,
53- googleDriveUrl : this . googleDriveUrl ,
54- googleDriveId : this . googleDriveId ,
55- hflaWebsiteUrl : this . hflaWebsiteUrl ,
56- videoConferenceLink : this . videoConferenceLink ,
57- lookingDescription : this . lookingDescription ,
58- recruitingCategories : this . recruitingCategories ,
59- partners : this . partners ,
60- managedByUsers : this . managedByUsers
61- } ;
40+ projectSchema . methods . serialize = function ( ) {
41+ return {
42+ id : this . _id ,
43+ name : this . name ,
44+ description : this . description ,
45+ githubIdentifier : this . githubIdentifier ,
46+ // owner: this.owner,
47+ projectStatus : this . projectStatus ,
48+ location : this . location ,
49+ //teamMembers: this.teamMembers,
50+ createdDate : this . createdDate ,
51+ completedDate : this . completedDate ,
52+ githubUrl : this . githubUrl ,
53+ slackUrl : this . slackUrl ,
54+ googleDriveUrl : this . googleDriveUrl ,
55+ googleDriveId : this . googleDriveId ,
56+ hflaWebsiteUrl : this . hflaWebsiteUrl ,
57+ videoConferenceLink : this . videoConferenceLink ,
58+ lookingDescription : this . lookingDescription ,
59+ recruitingCategories : this . recruitingCategories ,
60+ partners : this . partners ,
61+ managedByUsers : this . managedByUsers ,
62+ onboardOffboardVisible : this . onboardOffboardVisible ,
63+ } ;
6264} ;
6365
6466const Project = mongoose . model ( 'Project' , projectSchema ) ;
0 commit comments