Ejemplo n.º 1
0
        public ServiceResponse <ExerciseTrainingResponse> Add(AddExerciseTrainingRequest addExerciseTrainingRequest)
        {
            using (DiaryContext db = new DiaryContext())
            {
                var trainingUnit = db.TrainingUnits.FirstOrDefault(x => x.Id == addExerciseTrainingRequest.TrainingUnitId);
                if (trainingUnit == null)
                {
                    return(new ServiceResponse <ExerciseTrainingResponse>(null, HttpStatusCode.NotFound, "Unable to find the training unit!"));
                }

                var exercise = db.Exercises.FirstOrDefault(x => x.Id == addExerciseTrainingRequest.ExerciseId);
                if (exercise == null)
                {
                    return(new ServiceResponse <ExerciseTrainingResponse>(null, HttpStatusCode.NotFound, "Unable to find the exercise!"));
                }

                var exerciseDetails = db.ExercisesDetails.FirstOrDefault(x => x.Id == addExerciseTrainingRequest.ExerciseDetailsId);
                if (exerciseDetails == null)
                {
                    return(new ServiceResponse <ExerciseTrainingResponse>(null, HttpStatusCode.NotFound, "Unable to find the exercise details!"));
                }
                var exerciseTraining = new ExerciseTraining
                {
                    TrainingUnit    = trainingUnit,
                    Exercise        = exercise,
                    ExerciseDetails = exerciseDetails
                };
                ExerciseTraining _ExerciseTraining = db.ExerciseTrainings.Add(exerciseTraining);
                db.SaveChanges();
                return(new ServiceResponse <ExerciseTrainingResponse>(new ExerciseTrainingResponse(_ExerciseTraining), HttpStatusCode.OK, "ExerciseTraining added succesfully!"));
            }
        }
Ejemplo n.º 2
0
        //Sets the DB Context for Testing Database
        public static void InitializeTestingDb()
        {
            DiaryContext.ConnectionName = "DiaryAppTest";
            DiaryContext context = new DiaryContext();

            context.Database.Initialize(true);
        }
        public override async Task GrantResourceOwnerCredentials(OAuthGrantResourceOwnerCredentialsContext context)
        {
            context.OwinContext.Response.Headers.Add("Access-Control-Allow-Origin", new[] { "*" });
            User user;

            using (var db = new DiaryContext())
                using (var userManager = new UserManager <User, int>(new UserStore <User, CustomRole, int, CustomUserLogin, CustomUserRole, CustomUserClaim>(db)))
                {
                    user = await userManager.FindAsync(context.UserName, context.Password);

                    if (user == null)
                    {
                        context.SetError("invalid_grant", "The user name or password is incorrect.");
                        return;
                    }
                }

            var identity = new ClaimsIdentity(context.Options.AuthenticationType);

            identity.AddClaim(new Claim("sub", context.UserName));
            identity.AddClaim(new Claim("role", "user"));

            context.Validated(identity);
            context.Ticket.Properties.Dictionary.Add(new KeyValuePair <string, string>("UserId", user.Id.ToString()));
        }
Ejemplo n.º 4
0
        public ServiceResponse Delete(int id)
        {
            using (DiaryContext db = new DiaryContext())
            {
                if (!db.Days.Any(x => x.Id == id))
                {
                    return(new ServiceResponse(HttpStatusCode.NotFound, "There is not existing day with given id!"));
                }

                var             dayToRemove     = db.Days.Include("Diary").Include("Dream").Include("TrainingUnits").FirstOrDefault(x => x.Id == id);
                TrainingService trainingService = new TrainingService();
                foreach (var trainingUnit in dayToRemove.TrainingUnits)
                {
                    trainingService.DeleteTrainingUnit(trainingUnit.Id);
                }
                if (dayToRemove.Dream != null)
                {
                    db.Dreams.Remove(dayToRemove.Dream);
                }
                db.SaveChanges();
            }
            using (DiaryContext db = new DiaryContext())
            {
                var dayToRemove2 = db.Days.Include("Diary").Include("Dream").Include("TrainingUnits").FirstOrDefault(x => x.Id == id);
                db.Days.Remove(dayToRemove2);
                db.SaveChanges();
            }
            return(new ServiceResponse(HttpStatusCode.OK, "Day deleted!"));
        }
Ejemplo n.º 5
0
 private static void SetUpDevelopmentEntries()
 {
     using (var context = new DiaryContext())
     {
         context.Entries.Add(new EntryModel());
     }
 }
Ejemplo n.º 6
0
        public ServiceResponse Delete(int id)
        {
            using (DiaryContext db = new DiaryContext())
            {
                if (!db.Users.Any(x => x.Id == id))
                {
                    return(new ServiceResponse(HttpStatusCode.NotFound, "There is not existing user with given id!"));
                }

                var          userToRemove = db.Users.Include(x => x.Diaries).Include(x => x.UserDetails).FirstOrDefault(x => x.Id == id);
                DiaryService diaryService = new DiaryService();
                foreach (var diary in userToRemove.Diaries)
                {
                    diaryService.Delete(diary.Id);
                }
                if (userToRemove.UserDetails != null)
                {
                    db.UserDetails.Remove(userToRemove.UserDetails);
                }
                db.SaveChanges();
            }
            using (DiaryContext db = new DiaryContext())
            {
                var userToRemove = db.Users.Include(x => x.Diaries).Include(x => x.UserDetails).FirstOrDefault(x => x.Id == id);
                var userManager  = new UserManager <User, int>(new UserStore <User, CustomRole, int, CustomUserLogin, CustomUserRole, CustomUserClaim>(db));
                userManager.Delete(userToRemove);
                db.SaveChanges();
            }
            return(new ServiceResponse(HttpStatusCode.OK, "User deleted!"));
        }
Ejemplo n.º 7
0
        public ServiceResponse Delete(int id)
        {
            using (DiaryContext db = new DiaryContext())
            {
                if (!db.Diaries.Any(x => x.Id == id))
                {
                    return(new ServiceResponse(HttpStatusCode.NotFound, "There is not existing user with given id!"));
                }

                var        diaryToRemove = db.Diaries.Include(x => x.Days).Include(x => x.User).FirstOrDefault(x => x.Id == id);
                DayService dayService    = new DayService();
                foreach (var day in diaryToRemove.Days)
                {
                    dayService.Delete(day.Id);
                }
                db.SaveChanges();
            }
            using (DiaryContext db = new DiaryContext())
            {
                var diaryToRemove2 = db.Diaries.Include(x => x.Days).Include(x => x.User).FirstOrDefault(x => x.Id == id);
                db.Diaries.Remove(diaryToRemove2);
                db.SaveChanges();
            }
            return(new ServiceResponse(HttpStatusCode.OK, "User deleted!"));
        }
Ejemplo n.º 8
0
        public ServiceResponse <UserDetailsResponse> UpdateDetails(UpdateUserDetailsRequest userDetailsRequest)
        {
            using (DiaryContext db = new DiaryContext())
            {
                UserDetails userDetailsToUpdate = db.UserDetails.FirstOrDefault(x => x.Id == userDetailsRequest.UserId);

                if (userDetailsToUpdate == null)
                {
                    return(new ServiceResponse <UserDetailsResponse>(null, HttpStatusCode.NotFound, "There are not existing user details with given id!"));
                }

                userDetailsToUpdate = db.UserDetails.FirstOrDefault(x => x.Id == userDetailsRequest.UserId);
                if (userDetailsRequest.Age > 0)
                {
                    userDetailsToUpdate.Age = userDetailsRequest.Age;
                }
                if (userDetailsRequest.Height > 0)
                {
                    userDetailsToUpdate.Height = userDetailsRequest.Height;
                }
                if (userDetailsRequest.Weight > 0)
                {
                    userDetailsToUpdate.Weight = userDetailsRequest.Weight;
                }
                float[] results = CalculateBMIandBMR(userDetailsToUpdate.Weight, userDetailsToUpdate.Height, userDetailsToUpdate.Age);
                userDetailsToUpdate.BMI = results[0];
                userDetailsToUpdate.BMR = results[1];
                db.SaveChanges();
                return(new ServiceResponse <UserDetailsResponse>(new UserDetailsResponse(userDetailsToUpdate), HttpStatusCode.OK, "UserDetails added succesfully!"));
            }
        }
Ejemplo n.º 9
0
        public ServiceResponse <AvatarResponse> AddAvatar(AddAvatarRequest request)
        {
            Avatar avatar;

            using (DiaryContext db = new DiaryContext())
            {
                var userDetails = db.UserDetails.FirstOrDefault(x => x.Id == request.UserDetailsId);
                if (userDetails == null)
                {
                    return(new ServiceResponse <AvatarResponse>(null, HttpStatusCode.NotFound, "Unable to find the user details!"));
                }
                avatar = db.Avatars.FirstOrDefault(x => x.Id == userDetails.Id);
                if (avatar != null)
                {
                    avatar.Image = Convert.FromBase64String(request.Image);
                }
                else
                {
                    avatar = new Avatar()
                    {
                        Id          = userDetails.Id,
                        Image       = Convert.FromBase64String(request.Image),
                        UserDetails = userDetails
                    };
                    db.Avatars.Add(avatar);
                }
                db.SaveChanges();
            }
            return(new ServiceResponse <AvatarResponse>(new AvatarResponse(avatar), HttpStatusCode.OK, "Avatar created successfully"));
        }
Ejemplo n.º 10
0
 public ServiceResponse <UserDetailsResponse> AddDetails(AddUserDetailsRequest userDetailsRequest)
 {
     using (DiaryContext db = new DiaryContext())
     {
         User userVerification = db.Users.FirstOrDefault(x => x.Id == userDetailsRequest.UserId);
         if (userVerification == null || userVerification.UserDetails != null)
         {
             return(new ServiceResponse <UserDetailsResponse>(null, HttpStatusCode.BadRequest, "User does not exist or it already has a details"));
         }
         var userDetails = new UserDetails
         {
             Id     = userDetailsRequest.UserId,
             Age    = userDetailsRequest.Age,
             Height = userDetailsRequest.Height,
             Weight = userDetailsRequest.Weight,
             User   = db.Users.FirstOrDefault(x => x.Id == userDetailsRequest.UserId)
         };
         var BMIandBMR = CalculateBMIandBMR(userDetails.Weight, userDetails.Height, userDetails.Height);
         userDetails.BMI = BMIandBMR[0];
         userDetails.BMR = BMIandBMR[1];
         var _user = db.UserDetails.Add(userDetails);
         db.SaveChanges();
         return(new ServiceResponse <UserDetailsResponse>(new UserDetailsResponse(_user), HttpStatusCode.OK, "UserDetails added succesfully!"));
     }
 }
Ejemplo n.º 11
0
        public ServiceResponse <UserResponse> Update(UpdateUserRequest updateUserRequest)
        {
            User userToUpdate;

            using (DiaryContext db = new DiaryContext())
            {
                if (!db.Users.Any(x => x.Id == updateUserRequest.Id))
                {
                    return(new ServiceResponse <UserResponse>(null, HttpStatusCode.NotFound, "There is not existing user with given id!"));
                }
                userToUpdate = db.Users.FirstOrDefault(x => x.Id == updateUserRequest.Id);
                if (!string.IsNullOrEmpty(updateUserRequest.Name))
                {
                    userToUpdate.Name = updateUserRequest.Name;
                }
                if (!string.IsNullOrEmpty(updateUserRequest.Surname))
                {
                    userToUpdate.Surname = updateUserRequest.Surname;
                }
                if (!string.IsNullOrEmpty(updateUserRequest.City))
                {
                    userToUpdate.City = updateUserRequest.City;
                }
                db.SaveChanges();
                return(new ServiceResponse <UserResponse>(new UserResponse(userToUpdate), HttpStatusCode.OK, "User was updated successfully"));
            }
        }
Ejemplo n.º 12
0
 private int SaveEntryReturnId(EntryModel entry)
 {
     using (var context = new DiaryContext())
     {
         context.Entries.Add(entry);
         context.SaveChanges();
     }
     return(entry.Id);
 }
Ejemplo n.º 13
0
 private static void SetUpDevelopmentUser()
 {
     applicationUser = new ApplicationUser();
     using (var context = new DiaryContext())
     {
         context.Users.Add(applicationUser);
         context.SaveChanges();
     }
 }
Ejemplo n.º 14
0
        //public ServiceResponse<IEnumerable<DiaryResponse>> Read()
        //{
        //    List<Diary> diaries = new List<Diary>();
        //    using (DiaryContext db = new DiaryContext())
        //    {
        //        diaries = db.Diaries.Include(x => x.Days).Include(x => x.User).ToList();
        //    }
        //    List<DiaryResponse> diaryResponses = new List<DiaryResponse>();
        //    foreach (var item in diaries)
        //    {
        //        diaryResponses.Add(new DiaryResponse(item));
        //    }
        //    return new ServiceResponse<IEnumerable<DiaryResponse>>(diaryResponses, HttpStatusCode.OK, "Table downloaded!");
        //}

        //public ServiceResponse<DiaryResponse> ReadById(int id)
        //{
        //    DiaryResponse diaryResponse = GetDiary(id);
        //    if(diaryResponse == null)
        //    {
        //        return new ServiceResponse<DiaryResponse>(null, HttpStatusCode.NotFound, "There is not existing diary with given id!");
        //    }
        //    return new ServiceResponse<DiaryResponse>(diaryResponse, HttpStatusCode.OK, "Diary downloaded!");
        //}

        public ServiceResponse <DiaryResponse> Update(UpdateDiaryRequest updateDiaryRequest)
        {
            Diary diaryToUpdate;

            using (DiaryContext db = new DiaryContext())
            {
                if (!db.Diaries.Any(x => x.Id == updateDiaryRequest.Id))
                {
                    return(new ServiceResponse <DiaryResponse>(null, HttpStatusCode.NotFound, "There is not existing diary with given id!"));
                }
                diaryToUpdate = db.Diaries.FirstOrDefault(x => x.Id == updateDiaryRequest.Id);
                if (!string.IsNullOrEmpty(updateDiaryRequest.Conclusions))
                {
                    diaryToUpdate.Conclusions = updateDiaryRequest.Conclusions;
                }
                if (updateDiaryRequest.EndDate.Date.Year > 2019)
                {
                    diaryToUpdate.EndDate = updateDiaryRequest.EndDate;
                }
                if (updateDiaryRequest.StartDate.Date.Year > 2019)
                {
                    diaryToUpdate.StartDate = updateDiaryRequest.StartDate;
                }
                if (updateDiaryRequest.BenchPressStart != 0)
                {
                    diaryToUpdate.BenchPressStart = updateDiaryRequest.BenchPressStart;
                }
                if (updateDiaryRequest.SquatStart != 0)
                {
                    diaryToUpdate.SquatStart = updateDiaryRequest.SquatStart;
                }
                if (updateDiaryRequest.DeadliftStart != 0)
                {
                    diaryToUpdate.DeadliftStart = updateDiaryRequest.DeadliftStart;
                }
                if (updateDiaryRequest.BenchPressEnd != 0)
                {
                    diaryToUpdate.BenchPressEnd = updateDiaryRequest.BenchPressEnd;
                }
                if (updateDiaryRequest.SquatEnd != 0)
                {
                    diaryToUpdate.SquatEnd = updateDiaryRequest.SquatEnd;
                }
                if (updateDiaryRequest.DeadliftEnd != 0)
                {
                    diaryToUpdate.DeadliftEnd = updateDiaryRequest.DeadliftEnd;
                }
                if (updateDiaryRequest.Progress != 0)
                {
                    diaryToUpdate.Progress = updateDiaryRequest.Progress;
                }

                db.SaveChanges();
                return(new ServiceResponse <DiaryResponse>(new DiaryResponse(diaryToUpdate), HttpStatusCode.OK, "User was updated successfully"));
            }
        }
Ejemplo n.º 15
0
        private IEntryModel FindEntryBy(int storedId)
        {
            IEntryModel entry;

            using (var context = new DiaryContext())
            {
                entry = context.Entries.Find(storedId);
            }

            return(entry);
        }
Ejemplo n.º 16
0
 public ExerciseTrainingResponse GetExerciseTraining(int id)
 {
     using (DiaryContext db = new DiaryContext())
     {
         ExerciseTraining exerciseTraining = db.ExerciseTrainings.Include("Exercise").Include("ExerciseDetails").Include("TrainingUnit").FirstOrDefault(x => x.Id == id);
         if (exerciseTraining == null)
         {
             return(null);
         }
         return(new ExerciseTrainingResponse(exerciseTraining));
     }
 }
Ejemplo n.º 17
0
 public UserDetailsResponse ReadUserDetailsById(int id)
 {
     using (DiaryContext db = new DiaryContext())
     {
         UserDetails userDetails = db.UserDetails.Include(x => x.Avatar).FirstOrDefault(x => x.Id == id);
         if (userDetails == null)
         {
             return(null);
         }
         return(new UserDetailsResponse(userDetails));
     }
 }
Ejemplo n.º 18
0
 public ExerciseEquipmentResponse GetExerciseEquipment(int id)
 {
     using (DiaryContext db = new DiaryContext())
     {
         ExerciseEquipment exercise = db.ExerciseEquipment.FirstOrDefault(x => x.Id == id);
         if (exercise == null)
         {
             return(null);
         }
         return(new ExerciseEquipmentResponse(exercise));
     }
 }
Ejemplo n.º 19
0
 public TrainingUnitResponse GetTrainingUnit(int id)
 {
     using (DiaryContext db = new DiaryContext())
     {
         TrainingUnit trainingUnit = db.TrainingUnits.Include("Day").Include("ExerciseTrainings").FirstOrDefault(x => x.Id == id);
         if (trainingUnit == null)
         {
             return(null);
         }
         return(new TrainingUnitResponse(trainingUnit));
     }
 }
Ejemplo n.º 20
0
 public DayResponse GetDay(int id)
 {
     using (DiaryContext db = new DiaryContext())
     {
         Day day = db.Days.Include("Diary").Include("Dream").Include("TrainingUnits").FirstOrDefault(x => x.Id == id);
         if (day == null)
         {
             return(null);
         }
         return(new DayResponse(day, typeof(DayResponse)));
     }
 }
Ejemplo n.º 21
0
 public DiaryResponse GetDiary(int id)
 {
     using (DiaryContext db = new DiaryContext())
     {
         Diary diary = db.Diaries.Include(x => x.Days).Include(x => x.User).FirstOrDefault(x => x.Id == id);
         if (diary == null)
         {
             return(null);
         }
         return(new DiaryResponse(diary));
     }
 }
Ejemplo n.º 22
0
 public ExerciseResponse GetExercise(int id)
 {
     using (DiaryContext db = new DiaryContext())
     {
         Exercise exercise = db.Exercises.Include("ExerciseTrainings").Include("ExerciseEquipment").FirstOrDefault(x => x.Id == id);
         if (exercise == null)
         {
             return(null);
         }
         return(new ExerciseResponse(exercise));
     }
 }
 public DiaryController(IOptions <CustomAppSettings> ASettings, DiaryContext ADBContext, IFoxDataService foxDataService, IHttpContextAccessor httpContextAccessor)
 {
     Settings            = ASettings;
     HttpContextAccessor = httpContextAccessor;
     if (Settings != null)
     {
         Settings.Value.Configure(httpContextAccessor);
     }
     EntityMapper.Settings = Settings.Value;
     DBContext             = ADBContext;
     FoxDataService        = foxDataService;
     appointmentStatus     = new AppointmentStatusHelper(FoxDataService);
 }
Ejemplo n.º 24
0
        public async Task GetEntries(string username)
        {
            using (var context = new DiaryContext()) {
                var user = await context.Users
                           .Include(b => b.Entries)
                           .FirstOrDefaultAsync(b => b.Username == username);

                if (!user.LoggedIn)
                {
                    await Clients.Caller.EntriesRetrieved(user.Entries);
                }
            }
        }
Ejemplo n.º 25
0
 public ServiceResponse <ICollection <ExerciseDetailsResponse> > GetAllExerciseDetails()
 {
     using (DiaryContext db = new DiaryContext())
     {
         var list = db.ExercisesDetails.ToList();
         List <ExerciseDetailsResponse> list2 = new List <ExerciseDetailsResponse>();
         foreach (var item in list)
         {
             list2.Add(new ExerciseDetailsResponse(item));
         }
         return(new ServiceResponse <ICollection <ExerciseDetailsResponse> >(list2, HttpStatusCode.OK, "Table downloaded successfully"));
     }
 }
Ejemplo n.º 26
0
 public ServiceResponse <ExerciseEquipmentResponse> Add(AddExerciseEquipmentRequest exerciseRequest)
 {
     using (DiaryContext db = new DiaryContext())
     {
         var exerciseEquipment = new ExerciseEquipment
         {
             Name = exerciseRequest.Name
         };
         ExerciseEquipment _exercise = db.ExerciseEquipment.Add(exerciseEquipment);
         db.SaveChanges();
         return(new ServiceResponse <ExerciseEquipmentResponse>(new ExerciseEquipmentResponse(_exercise), HttpStatusCode.OK, "Exercise added succesfully!"));
     }
 }
Ejemplo n.º 27
0
        public ServiceResponse <AvatarResponse> GetAvatar(int id)
        {
            Avatar avatar;

            using (DiaryContext db = new DiaryContext())
            {
                avatar = db.Avatars.FirstOrDefault(x => x.Id == id);
                if (avatar == null)
                {
                    return(new ServiceResponse <AvatarResponse>(null, HttpStatusCode.NotFound, "There is no existing avatar with given id!"));
                }
            }
            return(new ServiceResponse <AvatarResponse>(new AvatarResponse(avatar), HttpStatusCode.OK, "Avatar downloaded"));
        }
Ejemplo n.º 28
0
 public ServiceResponse DeleteAvatar(int id)
 {
     using (DiaryContext db = new DiaryContext())
     {
         if (!db.Avatars.Any(x => x.Id == id))
         {
             return(new ServiceResponse(HttpStatusCode.NotFound, "There is no existing avatar with given id!"));
         }
         Avatar avatarToRemove = db.Avatars.FirstOrDefault(x => x.Id == id);
         db.Avatars.Remove(avatarToRemove);
         db.SaveChanges();
     }
     return(new ServiceResponse(HttpStatusCode.OK, "Avatar deleted!"));
 }
Ejemplo n.º 29
0
 public ServiceResponse SaveBrandingSettings(SaveBrandingRequest request)
 {
     using (DiaryContext db = new DiaryContext())
     {
         var userDetails = db.UserDetails.FirstOrDefault(x => x.Id == request.Id);
         if (userDetails == null)
         {
             return(new ServiceResponse(HttpStatusCode.BadRequest, "There is no existing user details with given id!"));
         }
         userDetails.BrandingSettings = request.BrandingSettings;
         db.SaveChanges();
     }
     return(new ServiceResponse(HttpStatusCode.OK, "Branding saved!"));
 }
Ejemplo n.º 30
0
        public async Task SaveEntries(int entryId, string content)
        {
            bool saveSuccesful;

            using (var context = new DiaryContext()) {
                var entry = await context.Entries.FirstOrDefaultAsync(b => b.Id == entryId);

                entry.Content = content;
                await context.SaveChangesAsync();

                saveSuccesful = entry != null;
            }
            await Clients.Caller.EntriesSaved(saveSuccesful);
        }