Esempio n. 1
0
 /// <summary>
 /// <see cref="MyEvents.Data.IMaterialRepository"/>
 /// </summary>
 /// <param name="material"><see cref="MyEvents.Data.IMaterialRepository"/></param>
 /// <returns><see cref="MyEvents.Data.IMaterialRepository"/></returns>
 public int Add(Material material)
 {
     using (var context = new MyEventsContext())
     {
         context.Materials.Add(material);
         context.SaveChanges();
         return material.MaterialId;
     }
 }
Esempio n. 2
0
 /// <summary>
 /// <see cref="MyEvents.Data.IMaterialRepository"/>
 /// </summary>
 /// <param name="material"><see cref="MyEvents.Data.IMaterialRepository"/></param>
 /// <returns><see cref="MyEvents.Data.IMaterialRepository"/></returns>
 public int Add(Material material)
 {
     using (var context = new MyEventsContext())
     {
         context.Materials.Add(material);
         context.SaveChanges();
         return(material.MaterialId);
     }
 }
 /// <summary>
 /// <see cref="MyEvents.Data.ISessionRepository"/>
 /// </summary>
 /// <param name="session"><see cref="MyEvents.Data.ISessionRepository"/></param>
 /// <returns><see cref="MyEvents.Data.ISessionRepository"/></returns>
 public int Add(Session session)
 {
     using (var context = new MyEventsContext())
     {
         CheckAndFixTwitterAccount(session);
         context.Sessions.Add(session);
         context.SaveChanges();
         return(session.SessionId);
     }
 }
 /// <summary>
 /// <see cref="MyEvents.Data.IEventDefinitionRepository"/>
 /// </summary>
 /// <param name="eventDefinition"><see cref="MyEvents.Data.IEventDefinitionRepository"/></param>
 /// <returns><see cref="MyEvents.Data.IEventDefinitionRepository"/></returns>
 public int Add(EventDefinition eventDefinition)
 {
     using (var context = new MyEventsContext())
     {
         CheckAndFixTwitterAccount(eventDefinition);
         context.EventDefinitions.Add(eventDefinition);
         context.SaveChanges();
         return eventDefinition.EventDefinitionId;
     }
 }
Esempio n. 5
0
 /// <summary>
 /// <see cref="MyEvents.Data.ICommentRepository"/>
 /// </summary>
 /// <param name="comment"><see cref="MyEvents.Data.ICommentRepository"/></param>
 /// <returns><see cref="MyEvents.Data.ICommentRepository"/></returns>
 public int Add(Comment comment)
 {
     using (var context = new MyEventsContext())
     {
         comment.AddedDateTime = DateTime.UtcNow;
         context.Comments.Add(comment);
         context.SaveChanges();
         return comment.CommentId;
     }
 }
 /// <summary>
 /// <see cref="MyEvents.Data.IEventDefinitionRepository"/>
 /// </summary>
 /// <param name="eventDefinition"><see cref="MyEvents.Data.IEventDefinitionRepository"/></param>
 /// <returns><see cref="MyEvents.Data.IEventDefinitionRepository"/></returns>
 public int Add(EventDefinition eventDefinition)
 {
     using (var context = new MyEventsContext())
     {
         CheckAndFixTwitterAccount(eventDefinition);
         context.EventDefinitions.Add(eventDefinition);
         context.SaveChanges();
         return(eventDefinition.EventDefinitionId);
     }
 }
Esempio n. 7
0
 /// <summary>
 /// <see cref="MyEvents.Data.ICommentRepository"/>
 /// </summary>
 /// <param name="comment"><see cref="MyEvents.Data.ICommentRepository"/></param>
 /// <returns><see cref="MyEvents.Data.ICommentRepository"/></returns>
 public int Add(Comment comment)
 {
     using (var context = new MyEventsContext())
     {
         comment.AddedDateTime = DateTime.UtcNow;
         context.Comments.Add(comment);
         context.SaveChanges();
         return(comment.CommentId);
     }
 }
Esempio n. 8
0
 /// <summary>
 /// <see cref="MyEvents.Data.ISessionRepository"/>
 /// </summary>
 /// <param name="session"><see cref="MyEvents.Data.ISessionRepository"/></param>
 /// <returns><see cref="MyEvents.Data.ISessionRepository"/></returns>
 public int Add(Session session)
 {
     using (var context = new MyEventsContext())
     {
         CheckAndFixTwitterAccount(session);
         context.Sessions.Add(session);
         context.SaveChanges();
         return session.SessionId;
     }
 }
Esempio n. 9
0
 /// <summary>
 /// <see cref="MyEvents.Data.ICommentRepository"/>
 /// </summary>
 /// <param name="commentId"><see cref="MyEvents.Data.ICommentRepository"/></param>
 public void Delete(int commentId)
 {
     using (var context = new MyEventsContext())
     {
         var comment = context.Comments.FirstOrDefault(q => q.CommentId == commentId);
         if (comment != null)
         {
             context.Comments.Remove(comment);
             context.SaveChanges();
         }
     }
 }
Esempio n. 10
0
 /// <summary>
 /// <see cref="MyEvents.Data.IRegisteredUserRepository"/>
 /// </summary>
 /// <param name="registeredUserId"> <see cref="MyEvents.Data.IRegisteredUserRepository"/></param>
 /// <param name="sessionId"> <see cref="MyEvents.Data.IRegisteredUserRepository"/></param>
 public void DeleteRegisteredUserFromSession(int registeredUserId, int sessionId)
 {
     using (var context = new MyEventsContext())
     {
         var sessionRegisteredUser = context.SessionRegisteredUsers.FirstOrDefault(q => q.SessionId == sessionId && q.RegisteredUserId == registeredUserId);
         if (sessionRegisteredUser != null)
         {
             context.SessionRegisteredUsers.Remove(sessionRegisteredUser);
             context.SaveChanges();
         }
     }
 }
Esempio n. 11
0
 /// <summary>
 /// <see cref="MyEvents.Data.IMaterialRepository"/>
 /// </summary>
 /// <param name="materialId"><see cref="MyEvents.Data.IMaterialRepository"/></param>
 public void Delete(int materialId)
 {
     using (var context = new MyEventsContext())
     {
         var material = context.Materials.FirstOrDefault(q => q.MaterialId == materialId);
         if (material != null)
         {
             context.Materials.Remove(material);
             context.SaveChanges();
         }
     }
 }
Esempio n. 12
0
 /// <summary>
 /// <see cref="MyEvents.Data.ICommentRepository"/>
 /// </summary>
 /// <param name="commentId"><see cref="MyEvents.Data.ICommentRepository"/></param>
 public void Delete(int commentId)
 {
     using (var context = new MyEventsContext())
     {
         var comment = context.Comments.FirstOrDefault(q => q.CommentId == commentId);
         if (comment != null)
         {
             context.Comments.Remove(comment);
             context.SaveChanges();
         }
     }
 }
 /// <summary>
 /// <see cref="MyEvents.Data.IEventDefinitionRepository"/>
 /// </summary>
 /// <param name="eventDefinitionId"><see cref="MyEvents.Data.IEventDefinitionRepository"/></param>
 public void Delete(int eventDefinitionId)
 {
     using (var context = new MyEventsContext())
     {
         var eventDefinition = context.EventDefinitions.FirstOrDefault(q => q.EventDefinitionId == eventDefinitionId);
         if (eventDefinition != null)
         {
             context.EventDefinitions.Remove(eventDefinition);
             context.SaveChanges();
         }
     }
 }
Esempio n. 14
0
 /// <summary>
 /// <see cref="MyEvents.Data.IMaterialRepository"/>
 /// </summary>
 /// <param name="materialId"><see cref="MyEvents.Data.IMaterialRepository"/></param>
 public void Delete(int materialId)
 {
     using (var context = new MyEventsContext())
     {
         var material = context.Materials.FirstOrDefault(q => q.MaterialId == materialId);
         if (material != null)
         {
             context.Materials.Remove(material);
             context.SaveChanges();
         }
     }
 }
Esempio n. 15
0
 /// <summary>
 /// <see cref="MyEvents.Data.ISessionRepository"/>
 /// </summary>
 /// <param name="sessionId"><see cref="MyEvents.Data.ISessionRepository"/></param>
 public void Delete(int sessionId)
 {
     using (var context = new MyEventsContext())
     {
         var session = context.Sessions.FirstOrDefault(q => q.SessionId == sessionId);
         if (session != null)
         {
             context.Sessions.Remove(session);
             context.SaveChanges();
         }
     }
 }
 /// <summary>
 /// <see cref="MyEvents.Data.IEventDefinitionRepository"/>
 /// </summary>
 /// <param name="eventDefinitionId"><see cref="MyEvents.Data.IEventDefinitionRepository"/></param>
 public void Delete(int eventDefinitionId)
 {
     using (var context = new MyEventsContext())
     {
         var eventDefinition = context.EventDefinitions.FirstOrDefault(q => q.EventDefinitionId == eventDefinitionId);
         if (eventDefinition != null)
         {
             context.EventDefinitions.Remove(eventDefinition);
             context.SaveChanges();
         }
     }
 }
 /// <summary>
 /// <see cref="MyEvents.Data.ISessionRepository"/>
 /// </summary>
 /// <param name="sessionId"><see cref="MyEvents.Data.ISessionRepository"/></param>
 public void Delete(int sessionId)
 {
     using (var context = new MyEventsContext())
     {
         var session = context.Sessions.FirstOrDefault(q => q.SessionId == sessionId);
         if (session != null)
         {
             context.Sessions.Remove(session);
             context.SaveChanges();
         }
     }
 }
        public void DeleteEventDefinition_CallWebAPI_EventDeleted_NotFail_Test()
        {
            EventDefinition eventDef;
            int organizerId = 0;
            var manualResetEvent = new ManualResetEvent(false);
            var exceptionResult = default(Exception);

            // Get values to test
            using (var context = new MyEventsContext())
            {
                organizerId = context.RegisteredUsers.First().RegisteredUserId;

                // Create event to delete
                eventDef = new EventDefinition();
                eventDef.OrganizerId = organizerId;
                eventDef.Name = Guid.NewGuid().ToString();
                eventDef.Description = Guid.NewGuid().ToString();
                eventDef.Address = Guid.NewGuid().ToString();
                eventDef.City = Guid.NewGuid().ToString();
                eventDef.Tags = Guid.NewGuid().ToString();
                eventDef.TwitterAccount = Guid.NewGuid().ToString();
                eventDef.RoomNumber = 1;
                eventDef.Date = System.DateTime.Now;
                eventDef.StartTime = System.DateTime.Now;
                eventDef.EndTime = System.DateTime.Now.AddDays(1);
                eventDef.TimeZoneOffset = 2;
                eventDef.Likes = 0;
                System.Text.UTF8Encoding encoding = new System.Text.UTF8Encoding();
                eventDef.Logo = encoding.GetBytes("sample");
                context.EventDefinitions.Add(eventDef);
                context.SaveChanges();
            }

            string urlPrefix = testContextInstance.Properties[TestContext.AspNetDevelopmentServerPrefix + "webapiserver"].ToString();

            var service = new Client.MyEventsClient(urlPrefix);
            service.SetAccessToken(MyEventsToken.CreateToken(eventDef.OrganizerId));
            IAsyncResult ar = service.EventDefinitionService.GetEventDefinitionByIdAsync(eventDef.EventDefinitionId, (Client.EventDefinition getEvent) =>
            {
                IAsyncResult arUpdate = service.EventDefinitionService.DeleteEventDefinitionAsync(getEvent.EventDefinitionId, (HttpStatusCode statusCode) =>
                {
                    using (var context = new MyEventsContext())
                    {
                        var actual = context.EventDefinitions.FirstOrDefault(q => q.EventDefinitionId == eventDef.EventDefinitionId);
                        TestHelper.ValidateResult(null, actual, manualResetEvent, ref exceptionResult);
                    }
                });

            });

            TestHelper.WaitAll(manualResetEvent, ref exceptionResult);
        }
        /// <summary>
        /// <see cref="MyEvents.Data.ISessionRepository"/>
        /// </summary>
        /// <param name="eventDefinition"><see cref="MyEvents.Data.ISessionRepository"/></param>
        public void UpdateRoomImage(EventDefinition eventDefinition)
        {
            using (var context = new MyEventsContext())
            {
                var eventDefinitionToUpdate = context.EventDefinitions
                                              .FirstOrDefault(q => q.EventDefinitionId == eventDefinition.EventDefinitionId);

                eventDefinitionToUpdate.EventDefinitionId = eventDefinition.EventDefinitionId;
                eventDefinitionToUpdate.MapImage          = eventDefinition.MapImage;

                context.SaveChanges();
            }
        }
        /// <summary>
        /// <see cref="MyEvents.Data.ISessionRepository"/>
        /// </summary>
        /// <param name="eventDefinitionId"><see cref="MyEvents.Data.ISessionRepository"/></param>
        /// <param name="roomNumber"><see cref="MyEvents.Data.ISessionRepository"/></param>
        public void DeleteRoomPoints(int eventDefinitionId, int roomNumber)
        {
            using (var context = new MyEventsContext())
            {
                var roomPoints = context.RoomPoints
                    .Where(q => q.EventDefinitionId == eventDefinitionId && q.RoomNumber == roomNumber)
                    .ToList();
                foreach (var roomPoint in roomPoints)
                    context.RoomPoints.Remove(roomPoint);

                context.SaveChanges();
            }
        }
Esempio n. 21
0
 /// <summary>
 /// <see cref="MyEvents.Data.IRegisteredUserRepository"/>
 /// </summary>
 /// <param name="registeredUserId"><see cref="MyEvents.Data.IRegisteredUserRepository"/></param>
 /// <param name="sessionId"><see cref="MyEvents.Data.IRegisteredUserRepository"/></param>
 /// <param name="score"><see cref="MyEvents.Data.IRegisteredUserRepository"/></param>
 public void AddRegisteredUserScore(int registeredUserId, int sessionId, double score)
 {
     using (var context = new MyEventsContext())
     {
         var sessionRegisteredUser = context.SessionRegisteredUsers.FirstOrDefault(q => q.RegisteredUserId == registeredUserId && q.SessionId == sessionId);
         if (sessionRegisteredUser != null)
         {
             sessionRegisteredUser.Rated = true;
             sessionRegisteredUser.Score = score;
             context.SaveChanges();
         }
     }
 }
 /// <summary>
 /// <see cref="MyEvents.Data.IRegisteredUserRepository"/>
 /// </summary>
 /// <param name="registeredUserId"><see cref="MyEvents.Data.IRegisteredUserRepository"/></param>
 /// <param name="sessionId"><see cref="MyEvents.Data.IRegisteredUserRepository"/></param>
 /// <param name="score"><see cref="MyEvents.Data.IRegisteredUserRepository"/></param>
 public void AddRegisteredUserScore(int registeredUserId, int sessionId, double score)
 {
     using (var context = new MyEventsContext())
     {
         var sessionRegisteredUser = context.SessionRegisteredUsers.FirstOrDefault(q => q.RegisteredUserId == registeredUserId && q.SessionId == sessionId);
         if (sessionRegisteredUser != null)
         {
             sessionRegisteredUser.Rated = true;
             sessionRegisteredUser.Score = score;
             context.SaveChanges();
         }
     }
 }
        /// <summary>
        /// <see cref="MyEvents.Data.ISessionRepository"/>
        /// </summary>
        /// <param name="roomPoints"><see cref="MyEvents.Data.ISessionRepository"/></param>
        public void AddRoomPoints(IEnumerable<RoomPoint> roomPoints)
        {
            using (var context = new MyEventsContext())
            {
                DeleteRoomPoints(roomPoints.First().EventDefinitionId, roomPoints.First().RoomNumber);

                foreach (var roomPoint in roomPoints)
                {
                    context.RoomPoints.Add(roomPoint);
                }

                context.SaveChanges();
            }
        }
        /// <summary>
        /// <see cref="MyEvents.Data.ISessionRepository"/>
        /// </summary>
        /// <param name="roomPoints"><see cref="MyEvents.Data.ISessionRepository"/></param>
        public void AddRoomPoints(IEnumerable <RoomPoint> roomPoints)
        {
            using (var context = new MyEventsContext())
            {
                DeleteRoomPoints(roomPoints.First().EventDefinitionId, roomPoints.First().RoomNumber);

                foreach (var roomPoint in roomPoints)
                {
                    context.RoomPoints.Add(roomPoint);
                }

                context.SaveChanges();
            }
        }
        /// <summary>
        /// <see cref="MyEvents.Data.ISessionRepository"/>
        /// </summary>
        /// <param name="eventDefinitionId"><see cref="MyEvents.Data.ISessionRepository"/></param>
        /// <param name="roomNumber"><see cref="MyEvents.Data.ISessionRepository"/></param>
        public void DeleteRoomPoints(int eventDefinitionId, int roomNumber)
        {
            using (var context = new MyEventsContext())
            {
                var roomPoints = context.RoomPoints
                                 .Where(q => q.EventDefinitionId == eventDefinitionId && q.RoomNumber == roomNumber)
                                 .ToList();
                foreach (var roomPoint in roomPoints)
                {
                    context.RoomPoints.Remove(roomPoint);
                }

                context.SaveChanges();
            }
        }
        /// <summary>
        /// <see cref="MyEvents.Data.ISessionRepository"/>
        /// </summary>
        /// <param name="session"><see cref="MyEvents.Data.ISessionRepository"/></param>
        public void Update(Session session)
        {
            CheckAndFixTwitterAccount(session);

            using (var context = new MyEventsContext())
            {
                var sessionToUpdate = context.Sessions.FirstOrDefault(q => q.SessionId == session.SessionId);

                context.Entry <Session>(sessionToUpdate)
                .CurrentValues
                .SetValues(session);

                context.SaveChanges();
            }
        }
Esempio n. 27
0
 /// <summary>
 /// <see cref="MyEvents.Data.IRegisteredUserRepository"/>
 /// </summary>
 /// <param name="registeredUserId"> <see cref="MyEvents.Data.IRegisteredUserRepository"/></param>
 /// <param name="eventDefinitionId"> <see cref="MyEvents.Data.IRegisteredUserRepository"/></param>
 public void DeleteRegisteredUserFromEvent(int registeredUserId, int eventDefinitionId)
 {
     using (var context = new MyEventsContext())
     {
         var eventDefinition = context.EventDefinitions.Include("RegisteredUsers").FirstOrDefault(q => q.EventDefinitionId == eventDefinitionId);
         if (eventDefinition != null)
         {
             var registerUser = eventDefinition.RegisteredUsers.FirstOrDefault(s => s.RegisteredUserId == registeredUserId);
             if (registerUser != null)
             {
                 eventDefinition.RegisteredUsers.Remove(registerUser);
                 context.SaveChanges();
             }
         }
     }
 }
Esempio n. 28
0
 /// <summary>
 ///  <see cref="MyEvents.Data.IRegisteredUserRepository"/>
 /// </summary>
 /// <param name="registeredUser"> <see cref="MyEvents.Data.IRegisteredUserRepository"/></param>
 public int Add(RegisteredUser registeredUser)
 {
     using (var context = new MyEventsContext())
     {
         var user = Get(registeredUser.FacebookId);
         if (user == null)
         {
             context.RegisteredUsers.Add(registeredUser);
             context.SaveChanges();
             return(registeredUser.RegisteredUserId);
         }
         else
         {
             return(user.RegisteredUserId);
         }
     }
 }
 /// <summary>
 ///  <see cref="MyEvents.Data.IRegisteredUserRepository"/>
 /// </summary>
 /// <param name="registeredUser"> <see cref="MyEvents.Data.IRegisteredUserRepository"/></param>
 public int Add(RegisteredUser registeredUser)
 {
     using (var context = new MyEventsContext())
     {
         var user = Get(registeredUser.FacebookId);
         if (user == null)
         {
             context.RegisteredUsers.Add(registeredUser);
             context.SaveChanges();
             return registeredUser.RegisteredUserId;
         }
         else
         {
             return user.RegisteredUserId;
         }
     }
 }
 /// <summary>
 ///  <see cref="MyEvents.Data.IRegisteredUserRepository"/>
 /// </summary>
 /// <param name="registeredUserId"> <see cref="MyEvents.Data.IRegisteredUserRepository"/></param>
 /// <param name="eventDefinitionId"> <see cref="MyEvents.Data.IRegisteredUserRepository"/></param>
 public void AddRegisteredUserToEvent(int registeredUserId, int eventDefinitionId)
 {
     using (var context = new MyEventsContext())
     {
         var eventDefinition = context.EventDefinitions.Include("RegisteredUsers").FirstOrDefault(q => q.EventDefinitionId == eventDefinitionId);
         if (eventDefinition != null)
         {
             if (!eventDefinition.RegisteredUsers.Any(s => s.RegisteredUserId == registeredUserId))
             {
                 var registeredUser = context.RegisteredUsers.FirstOrDefault(q => q.RegisteredUserId == registeredUserId);
                 if (registeredUser != null)
                 {
                     eventDefinition.RegisteredUsers.Add(registeredUser);
                     context.SaveChanges();
                 }
             }
         }
     }
 }
Esempio n. 31
0
 /// <summary>
 ///  <see cref="MyEvents.Data.IRegisteredUserRepository"/>
 /// </summary>
 /// <param name="registeredUserId"> <see cref="MyEvents.Data.IRegisteredUserRepository"/></param>
 /// <param name="eventDefinitionId"> <see cref="MyEvents.Data.IRegisteredUserRepository"/></param>
 public void AddRegisteredUserToEvent(int registeredUserId, int eventDefinitionId)
 {
     using (var context = new MyEventsContext())
     {
         var eventDefinition = context.EventDefinitions.Include("RegisteredUsers").FirstOrDefault(q => q.EventDefinitionId == eventDefinitionId);
         if (eventDefinition != null)
         {
             if (!eventDefinition.RegisteredUsers.Any(s => s.RegisteredUserId == registeredUserId))
             {
                 var registeredUser = context.RegisteredUsers.FirstOrDefault(q => q.RegisteredUserId == registeredUserId);
                 if (registeredUser != null)
                 {
                     eventDefinition.RegisteredUsers.Add(registeredUser);
                     context.SaveChanges();
                 }
             }
         }
     }
 }
Esempio n. 32
0
        /// <summary>
        ///  <see cref="MyEvents.Data.IRegisteredUserRepository"/>
        /// </summary>
        /// <param name="registeredUserId"> <see cref="MyEvents.Data.IRegisteredUserRepository"/></param>
        /// <param name="sessionId"> <see cref="MyEvents.Data.IRegisteredUserRepository"/></param>
        public void AddRegisteredUserToSession(int registeredUserId, int sessionId)
        {
            using (var context = new MyEventsContext())
            {
                var registeredUser = context.RegisteredUsers.FirstOrDefault(q => q.RegisteredUserId == registeredUserId);
                var session        = context.Sessions.FirstOrDefault(q => q.SessionId == sessionId);

                if (registeredUser != null && session != null)
                {
                    context.SessionRegisteredUsers.Add(new SessionRegisteredUser()
                    {
                        SessionId        = sessionId,
                        RegisteredUserId = registeredUserId,
                        FacebookId       = registeredUser.FacebookId
                    });

                    context.SaveChanges();
                }
            }
        }
        /// <summary>
        /// <see cref="MyEvents.Data.IEventDefinitionRepository"/>
        /// </summary>
        /// <param name="eventDefinition"><see cref="MyEvents.Data.IEventDefinitionRepository"/></param>
        public void Update(EventDefinition eventDefinition)
        {
            using (var context = new MyEventsContext())
            {
                var eventDefinitionToUpdate = context.EventDefinitions
                                              .FirstOrDefault(q => q.EventDefinitionId == eventDefinition.EventDefinitionId);

                eventDefinitionToUpdate.EventDefinitionId = eventDefinition.EventDefinitionId;
                eventDefinitionToUpdate.OrganizerId       = eventDefinition.OrganizerId;
                eventDefinitionToUpdate.Name           = eventDefinition.Name;
                eventDefinitionToUpdate.Description    = eventDefinition.Description;
                eventDefinitionToUpdate.Address        = eventDefinition.Address;
                eventDefinitionToUpdate.ZipCode        = eventDefinition.ZipCode;
                eventDefinitionToUpdate.City           = eventDefinition.City;
                eventDefinitionToUpdate.Tags           = eventDefinition.Tags;
                eventDefinitionToUpdate.TwitterAccount = eventDefinition.TwitterAccount;
                eventDefinitionToUpdate.TimeZoneOffset = eventDefinition.TimeZoneOffset;
                eventDefinitionToUpdate.RoomNumber     = eventDefinition.RoomNumber;
                eventDefinitionToUpdate.Date           = eventDefinition.Date;

                // Be sure that the starttime and endtime is in the same day of the event
                eventDefinitionToUpdate.StartTime
                    = new DateTime(eventDefinition.Date.Year, eventDefinition.Date.Month, eventDefinition.Date.Day, eventDefinition.StartTime.Hour, eventDefinition.StartTime.Minute, 0);

                eventDefinitionToUpdate.EndTime
                    = new DateTime(eventDefinition.Date.Year, eventDefinition.Date.Month, eventDefinition.Date.Day, eventDefinition.EndTime.Hour, eventDefinition.EndTime.Minute, 0);

                eventDefinitionToUpdate.Likes     = eventDefinition.Likes;
                eventDefinitionToUpdate.Logo      = eventDefinition.Logo;
                eventDefinitionToUpdate.Latitude  = eventDefinition.Latitude;
                eventDefinitionToUpdate.Longitude = eventDefinition.Longitude;

                CheckAndFixTwitterAccount(eventDefinitionToUpdate);
                context.SaveChanges();

                // After update eventdefinition we have to clean the room number of the sessions to be sure that all room numbers exist
                CleanRooms(eventDefinition.EventDefinitionId, eventDefinition.RoomNumber);
            }
        }
        /// <summary>
        /// After update eventdefinition we have to clean the room number of the sessions to be sure that all room numbers exist
        /// </summary>
        /// <param name="eventDefinitionId">eventDefinitionId</param>
        /// <param name="roomNumber">Actual room number</param>
        private void CleanRooms(int eventDefinitionId, int roomNumber)
        {
            using (var context = new MyEventsContext())
            {
                // Clean Sessions
                var sessions = context.Sessions
                               .Where(q => q.EventDefinitionId == eventDefinitionId && q.RoomNumber > roomNumber).ToList();
                foreach (var session in sessions)
                {
                    session.RoomNumber = 0;
                }


                // Delete room points of delete rooms
                var roomPoints = context.RoomPoints.Where(q => q.EventDefinitionId == eventDefinitionId && q.RoomNumber > roomNumber).ToList();
                foreach (var roomPoint in roomPoints)
                {
                    context.RoomPoints.Remove(roomPoint);
                }

                context.SaveChanges();
            }
        }
Esempio n. 35
0
        /// <summary>
        /// <see cref="MyEvents.Data.ISessionRepository"/>
        /// </summary>
        /// <param name="session"><see cref="MyEvents.Data.ISessionRepository"/></param>
        public void Update(Session session)
        {
            CheckAndFixTwitterAccount(session);

            using (var context = new MyEventsContext())
            {
                var sessionToUpdate = context.Sessions.FirstOrDefault(q => q.SessionId == session.SessionId);

                context.Entry<Session>(sessionToUpdate)
                   .CurrentValues
                   .SetValues(session);

                context.SaveChanges();
            }
        }
 /// <summary>
 /// <see cref="MyEvents.Data.IRegisteredUserRepository"/>
 /// </summary>
 /// <param name="registeredUserId"> <see cref="MyEvents.Data.IRegisteredUserRepository"/></param>
 /// <param name="sessionId"> <see cref="MyEvents.Data.IRegisteredUserRepository"/></param>
 public void DeleteRegisteredUserFromSession(int registeredUserId, int sessionId)
 {
     using (var context = new MyEventsContext())
     {
         var sessionRegisteredUser = context.SessionRegisteredUsers.FirstOrDefault(q => q.SessionId == sessionId && q.RegisteredUserId == registeredUserId);
         if (sessionRegisteredUser != null)
         {
             context.SessionRegisteredUsers.Remove(sessionRegisteredUser);
             context.SaveChanges();
         }
     }
 }
 /// <summary>
 /// <see cref="MyEvents.Data.IRegisteredUserRepository"/>
 /// </summary>
 /// <param name="registeredUserId"> <see cref="MyEvents.Data.IRegisteredUserRepository"/></param>
 /// <param name="eventDefinitionId"> <see cref="MyEvents.Data.IRegisteredUserRepository"/></param>
 public void DeleteRegisteredUserFromEvent(int registeredUserId, int eventDefinitionId)
 {
     using (var context = new MyEventsContext())
     {
         var eventDefinition = context.EventDefinitions.Include("RegisteredUsers").FirstOrDefault(q => q.EventDefinitionId == eventDefinitionId);
         if (eventDefinition != null)
         {
             var registerUser = eventDefinition.RegisteredUsers.FirstOrDefault(s => s.RegisteredUserId == registeredUserId);
             if (registerUser != null)
             {
                 eventDefinition.RegisteredUsers.Remove(registerUser);
                 context.SaveChanges();
             }
         }
     }
 }
        /// <summary>
        /// <see cref="MyEvents.Data.IEventDefinitionRepository"/>
        /// </summary>
        /// <param name="eventDefinition"><see cref="MyEvents.Data.IEventDefinitionRepository"/></param>
        public void Update(EventDefinition eventDefinition)
        {
            using (var context = new MyEventsContext())
            {
                var eventDefinitionToUpdate = context.EventDefinitions
                    .FirstOrDefault(q => q.EventDefinitionId == eventDefinition.EventDefinitionId);

                eventDefinitionToUpdate.EventDefinitionId = eventDefinition.EventDefinitionId;
                eventDefinitionToUpdate.OrganizerId = eventDefinition.OrganizerId;
                eventDefinitionToUpdate.Name = eventDefinition.Name;
                eventDefinitionToUpdate.Description = eventDefinition.Description;
                eventDefinitionToUpdate.Address = eventDefinition.Address;
                eventDefinitionToUpdate.ZipCode = eventDefinition.ZipCode;
                eventDefinitionToUpdate.City = eventDefinition.City;
                eventDefinitionToUpdate.Tags = eventDefinition.Tags;
                eventDefinitionToUpdate.TwitterAccount = eventDefinition.TwitterAccount;
                eventDefinitionToUpdate.TimeZoneOffset = eventDefinition.TimeZoneOffset;
                eventDefinitionToUpdate.RoomNumber = eventDefinition.RoomNumber;
                eventDefinitionToUpdate.Date = eventDefinition.Date;

                // Be sure that the starttime and endtime is in the same day of the event
                eventDefinitionToUpdate.StartTime
                    = new DateTime(eventDefinition.Date.Year, eventDefinition.Date.Month, eventDefinition.Date.Day, eventDefinition.StartTime.Hour, eventDefinition.StartTime.Minute, 0);

                eventDefinitionToUpdate.EndTime
                    = new DateTime(eventDefinition.Date.Year, eventDefinition.Date.Month, eventDefinition.Date.Day, eventDefinition.EndTime.Hour, eventDefinition.EndTime.Minute, 0);

                eventDefinitionToUpdate.Likes = eventDefinition.Likes;
                eventDefinitionToUpdate.Logo = eventDefinition.Logo;
                eventDefinitionToUpdate.Latitude = eventDefinition.Latitude;
                eventDefinitionToUpdate.Longitude = eventDefinition.Longitude;

                CheckAndFixTwitterAccount(eventDefinitionToUpdate);
                context.SaveChanges();

                // After update eventdefinition we have to clean the room number of the sessions to be sure that all room numbers exist
                CleanRooms(eventDefinition.EventDefinitionId, eventDefinition.RoomNumber);
            }
        }
        /// <summary>
        /// After update eventdefinition we have to clean the room number of the sessions to be sure that all room numbers exist
        /// </summary>
        /// <param name="eventDefinitionId">eventDefinitionId</param>
        /// <param name="roomNumber">Actual room number</param>
        private void CleanRooms(int eventDefinitionId, int roomNumber)
        {
            using (var context = new MyEventsContext())
            {
                // Clean Sessions
                var sessions = context.Sessions
                    .Where(q => q.EventDefinitionId == eventDefinitionId && q.RoomNumber > roomNumber).ToList();
                foreach (var session in sessions)
                    session.RoomNumber = 0;

                // Delete room points of delete rooms
                var roomPoints = context.RoomPoints.Where(q => q.EventDefinitionId == eventDefinitionId && q.RoomNumber > roomNumber).ToList();
                foreach (var roomPoint in roomPoints)
                    context.RoomPoints.Remove(roomPoint);

                context.SaveChanges();
            }
        }
        /// <summary>
        /// <see cref="MyEvents.Data.ISessionRepository"/>
        /// </summary>
        /// <param name="eventDefinition"><see cref="MyEvents.Data.ISessionRepository"/></param>
        public void UpdateRoomImage(EventDefinition eventDefinition)
        {
            using (var context = new MyEventsContext())
            {
                var eventDefinitionToUpdate = context.EventDefinitions
                    .FirstOrDefault(q => q.EventDefinitionId == eventDefinition.EventDefinitionId);

                eventDefinitionToUpdate.EventDefinitionId = eventDefinition.EventDefinitionId;
                eventDefinitionToUpdate.MapImage = eventDefinition.MapImage;

                context.SaveChanges();

            }
        }
Esempio n. 41
0
        public static void Seed(MyEventsContext context)
        {
            context.Database.EnsureCreated();

            if (context.Events.Any() ||
                context.Attendees.Any() ||
                context.Organizers.Any())
            {
                Console.WriteLine("Database already seeded.");
                return;
            }

            var attendee = new Attendee[]
            {
                new Attendee {
                    Name = "TestUser", Email = "*****@*****.**", PhoneNumber = "0855063258"
                }
            };

            context.AddRange(attendee);
            context.SaveChanges();

            var organizers = new Organizer[]
            {
                new Organizer {
                    Name = "JeMa IT AB", Email = "*****@*****.**", PhoneNumber = "0798123445"
                },
                new Organizer {
                    Name = "Music Gruop", Email = "*****@*****.**", PhoneNumber = "0700654987"
                },
                new Organizer {
                    Name = "Sports & Stuff", Email = "*****@*****.**", PhoneNumber = "0715972345"
                },
                new Organizer {
                    Name = "Event Maker", Email = "*****@*****.**", PhoneNumber = "0713465798"
                }
            };

            context.AddRange(organizers);
            context.SaveChanges();

            var events = new Event[]
            {
                new Event
                {
                    Title            = "Metallica",
                    Organizer        = organizers[1],
                    Description      = "Concert",
                    Venue            = "Globen",
                    Address          = "Storgatan 2",
                    Date             = DateTime.Parse("2021-03-14"),
                    TicketsAvailable = 30245
                },

                new Event
                {
                    Title            = "Rock Around",
                    Organizer        = organizers[1],
                    Description      = "Festival",
                    Venue            = "Gröna fältet",
                    Address          = "Okänd",
                    Date             = DateTime.Parse("2021-09-14"),
                    TicketsAvailable = 20231
                },

                new Event
                {
                    Title            = "Lär dig koda rätt",
                    Organizer        = organizers[0],
                    Description      = "Lär dig koda på rätt sätt. Vi går igenom objekt orienterad programmering.",
                    Venue            = "Tältets konferansrum",
                    Address          = "Mittigatan 2",
                    Date             = DateTime.Parse("2021-07-29"),
                    TicketsAvailable = 200
                },

                new Event
                {
                    Title            = "AIK - Hammarby",
                    Organizer        = organizers[2],
                    Description      = "Fotbolls match",
                    Venue            = "Stora Plan",
                    Address          = "Långgatan 123",
                    Date             = DateTime.Parse("2021-07-30"),
                    TicketsAvailable = 1200
                }
            };

            context.AddRange(events);
            context.SaveChanges();
        }
        /// <summary>
        ///  <see cref="MyEvents.Data.IRegisteredUserRepository"/>
        /// </summary>
        /// <param name="registeredUserId"> <see cref="MyEvents.Data.IRegisteredUserRepository"/></param>
        /// <param name="sessionId"> <see cref="MyEvents.Data.IRegisteredUserRepository"/></param>
        public void AddRegisteredUserToSession(int registeredUserId, int sessionId)
        {
            using (var context = new MyEventsContext())
            {
                var registeredUser = context.RegisteredUsers.FirstOrDefault(q => q.RegisteredUserId == registeredUserId);
                var session = context.Sessions.FirstOrDefault(q => q.SessionId == sessionId);

                if (registeredUser != null && session != null)
                {
                    context.SessionRegisteredUsers.Add(new SessionRegisteredUser()
                    {
                        SessionId = sessionId,
                        RegisteredUserId = registeredUserId,
                        FacebookId = registeredUser.FacebookId
                    });

                    context.SaveChanges();
                }
            }
        }