-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathnotes.txt
211 lines (195 loc) · 8.58 KB
/
notes.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
Features:
* Encrypted registration - DONE
* Credit card information links to appropriate processing service, does NOT enter database
* PayPal option?
* Ability to edit participants' information as permissions allow - DONE
* Ability to upload (or retrieve?) convention center/exhibit hall maps
* If presenter deletes their info, their session is deleted automatically - DONE
* And an alert is sent to organizer--also to attendees if during conference (will need to compare date information!)
* If exhibitor deletes their info, their exhibit is deleted - DONE
* And exhibit-hall map automatically updates - might not be possible here
* Maybe indicator that presenter or exhibitor can no longer attend, instead of deleting themselves? Available to organizer, presenter, and exhibitor - with a confirm "Are you sure?" - DONE
* Ability to set a new presenter before deleting a session?
* Session location highlights on map for presenters?
* Session location highlights on map for attendees?
* 4 permission levels: organizer, presenter, exhibitor, and attendee - MANAGED THROUGH DATABASE
* Is exhibitor permission really different from presenter permission?
* List of exhibitors - DONE
* Bios of presenters - DONE
* Music conference - list of performing groups?
* Search function for presenters & exhibitors - DONE
* Exhibitors given the option to transact business through the app or link to their website
* Presenters given the option to link to their website - DONE
* Translated?
* Breakout sessions vs. tracks
* Preferred method of communication: email vs text, enter info as is required by that
* Capability to send mass texts/emails
* List of local restaurants?
* Organizer inputs list of presenters/exhibitors; presenters/exhibitors receive link to register that already has their permissions set?
* QR code to scan at check-in?
* Link to venue website - DONE
Publicly available:
* GET access to all conferences - DONE
* GET access to all sessions, presenters, exhibitors, schedule, and venue information for all conferences, but NOT session materials - DONE
* GET access to venue and exhibit hall maps
Attendee:
* Public access PLUS:
* Access to session materials during and after the session - Presenter sets permission
* Full CRUD access to own information - DONE
Exhibitor:
* Attendee access PLUS:
* Full CRUD access to own information - DONE
* Full CRUD access to exhibit information - DONE
* Ability to POST, UPDATE, and DELETE exhibit information - DONE
* Ability to link to website - DONE
* Ability to sell merch through app?
* Set up as a store?
Presenter:
* Attendee access PLUS:
* Full CRUD access to own information, including sessions - DONE
* Ability to POST and UPDATE supplemental materials for own presentation
* Ability to link to website - DONE
* Ability to upload video or slideshow content
Organizer:
* Attendee access PLUS:
* Sets in person/virtual - DONE
* Sets location, dates, times - DONE
* Sets whether the conference uses breakout sessions, tracks
* Do breakout sessions need to be signed up for in advance?
* Sets how many breakout sessions/tracks
* Sets which features they want access to - MANAGED THROUGH DATABASE
* Can restrict number of attendees - DONE
* Full CRUD access to schedule - DONE
* Full CRUD access to exhibit hall map
* Full CRUD access to sessions map
* Ability to GET and DELETE attendee information for any attendee - full CRUD access - DONE
* Ability to GET and DELETE/Set Not Attending exhibitor information for any exhibitor
* Ability to GET and DELETE/Set Not Attending presenter information for any presenter
* Alerts for when presenters and exhibitors delete themselves/set as Not Attending
MVP
* At least two permission levels, organizer and attendee (managed through the database)
* Permissions set as outlined above
* Registration page (Signup/login)
* Link to venue website where available
* Digital registration packet (not MVP)
* digital ticket/wristband
* uploaded maps (not interactive)
* session & presenter details
* exhibit list
* Organizer can access list of attendees
* If sessions require pre-registration, presenters can access session roster (not MVP)
* Generate a link or search string for attendees to register
* Signup/login from
* Profile page
* Conferences you've created
* Conferences you've joined
* Share which conferences you're attending (Not MVP)
* Interests?
* Conference IDs - Mongo-generated
* Conference collection
* Name
* Description
* Conference owner/organizer
* Contact info
* Umbrella organization
* Date/times
* Location (Live vs virtual)
* Registration count
* Invite link
* Conference ID
* Sessions
* Title
* Description
* Presenter(s)
* Session ID
* User collection
* User's name (real name)
* Username for login
* Password (hashed, salted, peppered, etc)
* email
* Address?
* Conference page
* Description of conference
* If joined
* List of presenters
* List of exhibitors
* List of sessions
* Conference center maps where available?
* Schedule
* Homepage
* Public conferences
* Search conferences?
auth0.com
Components
* Navbar
* Home
* Profile
* My Conferences
* Conference card
* Conf name
* Your role (organizer/admin/attendee)
* Co-admins for organizers & admins
* Conf dates
* Conf location
* Details button
* Add admins button (where applicable)
* Join button (where applicable)
* Edit button (where applicable)
* Delete button
* Profile page
* Profile card
* Your name
* Your job title
* Edit my information
* Conference cards
* Conferences I've created
* Conferences I've attended
* Create conference
* Name of conference
* Date(s) of conference
* Radio buttons for live or virtual
* if virtual, link
* if live
* location
* Create session
* tracks or breakouts?
* How many?
* If unison, choose tracks and input 1
* Create schedule
* Times
* Sessions
Allow those that create a conference to insert video content
Create a registration page where you can see everyone who signed up
Create a digital registration packet for conference attendees
Working links to take them to where virtual conference is being held
Maps for conference location layout
Comment section where users can ask questions
Ability to export and share conference information
Ability to create a session schedule in table format for ease of viewing
Ability to link to conference creator’s payment-processor of choice for ease of collecting registration fees
Multiple permission levels, so presenters and exhibitors can post additional information, links, etc.
Ability to search presenters and exhibitors
Ability to translate content and render it in different font sizes
Ability to cap number of attendees
Registration form
An “un-register” feature
Hi, all, I'm struggling with a cross-referencing problem in a MERN-stack app I'm building as a personal project. User story for this specific bit goes something like this (I've never written a user story before, so pardon any errors):
As a conference organizer, I want to
Enter information about individual sessions, including
* which conference the session belongs to
* title
* description
* date
* time
* location
* whether it's a keynote
* presenter name(s)
* presenter organization(s)
* presenter bio(s)
* presenter email(s)/phone #(s)/website(s)
* presenter photo(s)
Such that
Participants can view sessions AND/OR presenters, AND
When viewing by sessions, they display with appropriate presenter information, AND
When viewing by presenters, presenter information displays once, regardless of how many sessions they're presenting.
I've got the data-entering stuff working, but I'm struggling with the very last line. Right now, I'm leaning toward storing the presenter info and the session info in separate collections, but I have no idea how to cross-reference the data on submission, since neither document necessarily exists yet and I don't know how to grab an ID as it's created to store in the other document (session._id in the presenter doc and/or presenter._id in the session doc). I've thought of multiple pages on the form so that the session document can submit separately from the presenter document, but I can't figure out which values would allow me to GET the first document to cross-reference to the second document. If I store all of the data in a single document, I'm not sure how to display presenter information only once if someone is presenting several sessions. How would you approach this?