示例#1
0
        public IActionResult Update1RM(Guid id, [FromBody] decimal max)
        {
            var exercise = trainingRepository.GetExercise(id, CurrentUserId, DateTimeOffset.MinValue);

            if (exercise.UserId != CurrentUserId)
            {
                return(Unauthorized());
            }

            var oneRepMap = new OneRepMax
            {
                ExerciseId = id,
                UserId     = CurrentUserId,
                Time       = DateTimeOffset.Now,
                Max        = max
            };

            if (exercise.PercentageBW.HasValue)
            {
                var userWeight = measurementRepository.GetUserWeight(CurrentUserId);
                if (userWeight.HasValue)
                {
                    oneRepMap.MaxInclBW = oneRepMap.Max + (exercise.PercentageBW / 100m) * userWeight;
                }
            }
            else
            {
                oneRepMap.MaxInclBW = oneRepMap.MaxBW;
            }

            trainingRepository.SaveOneRepMaxs(new[] { oneRepMap });

            return(Ok());
        }
示例#2
0
        public ActionResult Create([Bind(Include = "OneRepMaxId,Squat,Bench,Deadlift")] OneRepMax oneRepMax)
        {
            if (ModelState.IsValid)
            {
                var appUserId   = User.Identity.GetUserId();
                var currentUser = db.UserProfiles.Where(u => u.ApplicationId == appUserId).FirstOrDefault();
                RemovedPreviousActualTotals();
                RemovePreviousExpectedTotals();
                RemovePreviousLifts();
                RemovePreviousSavedWorkouts();
                oneRepMax.Date = DateTime.Now;
                var monthCheck = oneRepMax.Date.ToString("MM");
                CheckPreviousMaxes(Convert.ToInt32(monthCheck));
                oneRepMax.Total = oneRepMax.Squat + oneRepMax.Bench + oneRepMax.Deadlift;
                var wilksCoefficient = CalcuateWilks(oneRepMax.Total);
                oneRepMax.Wilks   = Math.Round(wilksCoefficient, 2);
                currentUser.Wilks = oneRepMax.Wilks;
                oneRepMax.UserId  = currentUser.UserId;
                db.OneRepMaxes.Add(oneRepMax);
                currentUser.WorkoutOfDay = 1;
                db.SaveChanges();
                CreateLeaderboardMaxes(currentUser.UserId);
                return(RedirectToAction("InitializeWorkout", "Lifts"));
            }

            ViewBag.UserId = new SelectList(db.UserProfiles, "UserId", "FirstName", oneRepMax.UserId);
            return(View(oneRepMax));
        }
示例#3
0
        public ActionResult DeleteConfirmed(int id)
        {
            OneRepMax oneRepMax = db.OneRepMaxes.Find(id);

            db.OneRepMaxes.Remove(oneRepMax);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
示例#4
0
 public OneRepMaxDetailPage(OneRepMax oneRepMax)
 {
     InitializeComponent();
     Title             = oneRepMax.ExerciseName;
     RepsEditor.Text   = oneRepMax.Reps.ToString();
     WeightEditor.Text = oneRepMax.Weight.ToString();
     ORMOutPut.Text    = oneRepMax.OneRep.ToString();
     thisExercise      = oneRepMax;
 }
示例#5
0
 public ActionResult Edit([Bind(Include = "ID,Weight,Repetitions")] OneRepMax oneRepMax)
 {
     if (ModelState.IsValid)
     {
         db.Entry(oneRepMax).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(oneRepMax));
 }
示例#6
0
 public ActionResult Edit([Bind(Include = "OneRepMaxId,Date,Squat,Bench,Deadlift,Total,Wilks,UserId")] OneRepMax oneRepMax)
 {
     if (ModelState.IsValid)
     {
         db.Entry(oneRepMax).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.UserId = new SelectList(db.UserProfiles, "UserId", "FirstName", oneRepMax.UserId);
     return(View(oneRepMax));
 }
示例#7
0
        // GET: OneRepMaxes/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            OneRepMax oneRepMax = db.OneRepMaxes.Find(id);

            if (oneRepMax == null)
            {
                return(HttpNotFound());
            }
            return(View(oneRepMax));
        }
示例#8
0
        public ActionResult Create([Bind(Include = "ID,Weight,Repetitions")] OneRepMax oneRepMax)
        {
            if (ModelState.IsValid)
            {
                db.OneRepMaxes.Add(oneRepMax);

                var weightMax = oneRepMaxPercentages[oneRepMax.Repetitions];
                weightMax = oneRepMax.Weight / weightMax;
                weightMax = Math.Round(weightMax, 2);
                string result2 = $"Yours 1 rep max is : {weightMax}";
                return(RedirectToAction("Create", new { result = result2 }));
            }

            return(View(oneRepMax));
        }
示例#9
0
        // GET: OneRepMaxes/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            OneRepMax oneRepMax = db.OneRepMaxes.Find(id);

            if (oneRepMax == null)
            {
                return(HttpNotFound());
            }
            ViewBag.UserId = new SelectList(db.UserProfiles, "UserId", "FirstName", oneRepMax.UserId);
            return(View(oneRepMax));
        }