public static CalendarSendParams SetAvailabilityForEvent(Guid memId, Guid uid, Guid calendarId, Guid eventId, string notes, AvailibilityEnum availType) { Random r = new Random(); var response = Network.SendPackage(Network.ConvertObjectToStream(new CalendarSendParams() { CurrentMemberId = memId, UserId = uid, EventId = eventId, Note = notes, Availability = availType, CalendarId = calendarId }), MobileConfig.LEAGUE_CALENDAR_SET_AVAILABILITY_URL + "?r=" + r.Next()); var stream = response.GetResponseStream(); StreamReader read = new StreamReader(stream); string json = read.ReadToEnd(); return Json.DeserializeObject<CalendarSendParams>(json); }
public static bool SetAvailabilityForEvent(Guid calendarId, Guid eventId, Guid memberId, string note, AvailibilityEnum avail) { try { var dc = new ManagementContext(); var self = (from xx in dc.CalendarEvents where xx.Calendar.CalendarId == calendarId where xx.CalendarItemId == eventId select xx).FirstOrDefault(); if (self == null) return false; if (self.Attendees.Where(x => x.Attendant.MemberId == memberId).FirstOrDefault() == null) { DataModels.Calendar.CalendarAttendance att = new DataModels.Calendar.CalendarAttendance(); att.Attendant = dc.Members.Where(x => x.MemberId == memberId).FirstOrDefault(); att.CalendarItem = self; att.AvailabilityNote = note; att.AvailibityEnum = (byte)avail; dc.CalendarAttendance.Add(att); int c = dc.SaveChanges(); return c > 0; } else { var mem = self.Attendees.Where(x => x.Attendant.MemberId == memberId).FirstOrDefault(); mem.AvailabilityNote = note; mem.AvailibityEnum = (byte)avail; int c = dc.SaveChanges(); return c > 0; } } catch (Exception exception) { Error.ErrorDatabaseManager.AddException(exception, exception.GetType()); } return false; }