As you recall, there are only two requirements for the team project:
The ultimate goal is to give you experience with building a Meteor app from scratch, while working together with your peers, so that you can use this knowledge to build your own Meteor app for the IP.
I have matched teams based on the similarity of their apps, because they can benefit more from the discussion.
After the meeting, each team continues the planning / implementation of their app.
The note-taker shares the notes with the rest of the team. Each team member writes a blog post about one aspect of the discussion that immediately affects their implementation tasks.
The meeting app http://meetingsappcs249.meteor.com/, uses only a few of the document's feature in the user interface, and a few others are added to make it easier to sort the documents or delete them when necessary.
These are the fields that are directly taken from the inputs of the form:
var meetingObject = { name: event.target.meetingName.value, location: event.target.meetingLocation.value, date: event.target.meetingDate.value, startTime: event.target.startTime.value, endTime: event.target.endTime.value, }; Meteor.call('insertMeeting', meetingObject);
However, when we store a document in the "meetings" collection in the database, we'll add or modify some of these values:
Meteor.methods({ insertMeeting: function(meetingObj){ // create two new fields for startTime and endTime, so that they are // Date() objects var startTimeObj = new Date(meetingObj.date + " " + meetingObj.startTime); var endTimeObj = new Date(meetingObj.date + " " + meetingObj.endTime); Meetings.insert({ name: meetingObj.name, location: meetingObj.location, dateStr: meetingObj.date, // Use the moment.js library to format time in US time startTimeStr: moment(startTimeObj).format("hh:mm A"), endTimeStr: moment(endTimeObj).format("hh:mm A"), startTimeDate: startTimeObj, endTimeDate: endTimeObj, hasExpired: false }) console.log("new meeting added in mongodb"); } })