public ActionResult DisplayRoom(UserProfileToDisplayViewModel userProfileToDisplayView)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    if (Session["UserID"] != null)
                    {
                        string userID = Session["UserID"].ToString();
                        userProfileToDisplayView.user = unitOfWork.UsersRepository.GetActiveUser(new Guid(userID));

                        unitOfWork.RoomsRepository.Update(userProfileToDisplayView.room);
                        unitOfWork.AddressesRepository.Update(userProfileToDisplayView.room.Address);
                        unitOfWork.EquipmentRepository.Update(userProfileToDisplayView.room.Equipment);
                        //delete old images
                        unitOfWork.RoomImagesRepository.DeleteRoomImagesByRoomID(userProfileToDisplayView.room.RoomID);
                        //add new images
                        addNewRoomImagesToDataBase(userProfileToDisplayView.images, userProfileToDisplayView.room.RoomID, userProfileToDisplayView.user.UserID, userProfileToDisplayView.room);

                        unitOfWork.Complete();

                        return(RedirectToAction("DisplayRoom", new { id = userProfileToDisplayView.room.RoomID }));
                    }
                    return(RedirectToAction("Login", "User"));
                }
                return(RedirectToAction("DisplayRoom", new { id = userProfileToDisplayView.room.RoomID }));
            }
            catch (Exception e)
            {
                System.Diagnostics.Debug.WriteLine("Error: " + e.Message);
                ViewBag.Error = "Wystąpił błąd, proszę powtórzyć jeszcze raz.";
                return(RedirectToAction("DisplayRoom", new { id = userProfileToDisplayView.room.RoomID }));
            }
        }
        public ActionResult Dashboard(UserProfileToDisplayViewModel userProfileToDisplayView)
        {
            try
            {
                UserSaveImageClient userSaveImageClient = new UserSaveImageClient();
                var userImage = userSaveImageClient.saveUserImageToDiskAndReturnCreatedObject(userProfileToDisplayView.images, userProfileToDisplayView.user.UserID);
                //update image or insert new image
                if (userImage != null && userProfileToDisplayView.user.UserImage.UserImageID != Guid.Empty)
                {
                    userProfileToDisplayView.user.UserImage.ImageName = userImage.ImageName;
                    userProfileToDisplayView.user.UserImage.ImagePath = userImage.ImagePath;
                    unitOfWork.UserImageRepository.Update(userProfileToDisplayView.user.UserImage);
                }
                else
                {
                    userImage.UserImageID = userProfileToDisplayView.user.UserID;
                    unitOfWork.UserImageRepository.Insert(userImage);
                    userProfileToDisplayView.user.UserImage = userImage;
                }

                unitOfWork.UsersRepository.Update(userProfileToDisplayView.user);
                unitOfWork.Complete();
            }
            catch (Exception e)
            {
                System.Diagnostics.Debug.WriteLine("Error: " + e.Message);
                ViewBag.Error = "Wystąpił błąd, proszę powtórzyć jeszcze raz.";
                return(RedirectToAction("Dashboard", "UserProfile"));
            }
            return(RedirectToAction("Dashboard", "UserProfile"));
        }
 public UserProfileController()
 {
     unitOfWork = new UnitOfWork(new RoomMateDbContext());
     userProfileToeditViewModel = new UserProfileToEditViewModel();
     userProfileToDisplayView   = new UserProfileToDisplayViewModel();
 }