/// <summary> /// Written: 18/11/2012 /// This method passes all the appropriate information into an event which can be /// viewed and edited through the client software. /// </summary> /// <param name="eventTitle"></param> /// <param name="userId"></param> /// <param name="eventDescription"></param> /// <param name="eventType"></param> /// <param name="repeatType"></param> /// <param name="eventDuration"></param> /// <param name="startDate"></param> /// <param name="eventTime"></param> /// <param name="roomName"></param> /// <param name="courseName"></param> /// <param name="moduleName"></param> /// <returns></returns> public int CreateEvent(string eventTitle, int userId, string eventDescription, string eventType, string repeatType, int eventDuration, DateTime startDate, string eventTime, string roomName, string courseName, string moduleName) { //Id generated var generatedEventId = EventIdGeneration(); //If id value continue if not return 0 if (generatedEventId == 0) { return 0; } //repeat Id set to default if repeats not implemented var repeatId = 0; //repeat type retunred repeat id set withni the event object var repeat = _dBase.RepeatTypes.SingleOrDefault(x => x.RepeatTypeName == repeatType); if (repeatType != "0" && repeat != null) { repeatId = repeat.RepeatTypeId; } var roomId = 0; //default room is 0 unless a room has been passed in from the client var room = _dBase.Rooms.SingleOrDefault(x => x.RoomName == roomName); if (roomName != "0" && room != null) { roomId = room.RoomId; } var timeId = 0; //time is by default 0 if time is not passed in (not possible in cleint however) var time = _dBase.Times.SingleOrDefault(x => x.TimeLiteral == eventTime); if (eventTime != "0" && time != null) { timeId = time.TimeId; } var courseId = 0; //course by default set to 0 unless passed in by client var course = _dBase.Courses.SingleOrDefault(x => x.CourseName == courseName); if (courseName != "0" && course != null) { courseId = course.CourseId; } var moduleId = 0; var module = _dBase.Modules.SingleOrDefault(x => x.ModuleName == moduleName); //module by default set to 0 unless passed in by client if (moduleName != "0" && module != null) { moduleId = module.ModuleId; //Module Event generated by ModuleEvent method ModuleEvent(generatedEventId, moduleId, courseId); } var typeId = 0; //event type is by default 0 if time is not passed in (not possible in cleint however) var type = _dBase.EventTypes.SingleOrDefault(x => x.TypeName == eventType); if (eventType != "0" && type != null) { typeId = type.TypeId; } //event object created too be adde to the databse var newEvent = new Event { EventId = generatedEventId, EventTitle = eventTitle, EventType = typeId, EventDescription = eventDescription, Repeats = repeatId, Duration = eventDuration, CreateDate = DateTime.Now, Status = "New", StartDate = startDate, LastDateEdited = DateTime.Now, Time = timeId, Room = roomId, AdditionalNotes = "None", LastUserEdited = userId, Module = moduleId, Course = courseId }; //event added to the databse _dBase.Events.Add(newEvent); _dBase.SaveChanges(); //id of generate event returned return generatedEventId; }
/// <summary> /// Written: 18/11/2012 /// This method passes all the appropriate information into an event which can be /// viewed and edited through the client software. /// </summary> /// <param name="eventTitle"></param> /// <param name="eventDescription"></param> /// <param name="eventType"></param> /// <param name="eventDate"></param> /// <param name="eventTime"></param> /// <param name="eventDuration"></param> /// <param name="eventRepeats"></param> /// <returns></returns> public int CreateEvent(string eventTitle, int userId, string eventDescription, string eventType, string repeatType, int eventDuration, DateTime startDate, string eventTime, string roomName, string courseName, string moduleName) { var generatedEventId = EventIdGeneration(); if (generatedEventId == 0) { return 0; } var repeatId = db.RepeatTypes.SingleOrDefault(x=>x.RepeatTypeName == repeatType).RepeatTypeId; var timeId = db.Times.SingleOrDefault(x => x.TimeLiteral == eventTime).TimeId; var roomId = db.Rooms.SingleOrDefault(x=>x.RoomName == roomName).RoomId; var courseId = db.Courses.SingleOrDefault(x => x.CourseName == courseName).CourseId; var moduleId = db.Modules.SingleOrDefault(x => x.ModuleName == moduleName).ModuleId; var typeId = db.EventTypes.SingleOrDefault(x => x.TypeName == eventType).TypeId; var newEvent = new Event() { EventId = generatedEventId, EventTitle = eventTitle, EventType = typeId, EventDescription = eventDescription, Repeats = repeatId, Duration = eventDuration, CreateDate = DateTime.Now, Status = "New", StartDate = startDate, LastDateEdited = DateTime.Now, Time = timeId, Room = roomId, AdditionalNotes = "None", LastUserEdited = userId, Module = moduleId, Course = courseId }; db.Events.Add(newEvent); db.SaveChanges(); return generatedEventId; }
/// <summary> /// returns event details associated with id passed in from website /// </summary> /// <param name="eventId"></param> /// <returns></returns> public Event ReturnEventDetail(int eventId) { //default evet declared var none = new Event(); //selection of event by event Id passed in var temp = _db.Events.SingleOrDefault(x => x.EventId == eventId); if (temp != null) { //event returned return temp; } //empty event returned return none; }