/// <summary> /// Gets the fake exercises /// </summary> /// <returns>A queryable list of fake exercises</returns> private List <exercise> getSeedExercises() { var users = getSeedUsers(); exercise ex1 = new exercise { id = 1, name = "ex1", user = users[1], created_by_user_id = 2 }; exercise ex2 = new exercise { id = 2, name = "ex2", user = users[1], created_by_user_id = 2 }; exercise ex3 = new exercise { id = 3, name = "ex3", user = users[2], created_by_user_id = 3 }; var exercises = new List <exercise> { ex1, ex2, ex3 }; return(exercises); }
private ITask convert(exercise xmlExercise) { var exercise = exerciseFactory.Create(); exercise.Description = xmlExercise.text; if (!String.IsNullOrEmpty(xmlExercise.id)) { taggedInitializer.FillFromTaggedTask(xmlExercise.id, exercise); } if (exercise.Evaluator == null) { Type evaluatorType = Type.GetType(xmlExercise.@class); if (evaluatorType != null) { if (!typeof(IEvaluator).IsAssignableFrom(evaluatorType)) { log("type is no IEvaluator"); } kernel.Bind(evaluatorType).ToSelf(); IEvaluator evaluator = (IEvaluator)kernel.Get(evaluatorType); exercise.Evaluator = evaluator; } } return(exercise); }
public bool TrainerAddExercise(string userId, ExerciseDTO exercise) { var trainer = (from x in db.trainer where x.ID == userId select x).FirstOrDefault(); try { var e = new exercise { name = exercise.name, description = exercise.description, link = exercise.link, type = exercise.type, trainer_TRID = trainer.TRID }; db.exercise.Add(e); db.SaveChanges(); return(true); } catch (Exception) { return(false); } }
// GET: AdminExercises/Details/5 public ActionResult Details(int?id) { if (id == null) { return(View("DetailedError", new HttpStatusCodeResult(HttpStatusCode.BadRequest, "No exercise to view was specified"))); } exercise exercise = db.exercises.Find(id); if (exercise == null) { return(View("DetailedError", new HttpStatusCodeResult(HttpStatusCode.NotFound, "The exercise could not be found or does not exist"))); } string link = (String.IsNullOrEmpty(exercise.link)) ? " " : exercise.link; if (!link.StartsWith("http://") && !link.StartsWith("https://")) { link = " "; } else { link = link.Replace("watch?v=", "embed/"); } ViewBag.videoLink = link; return(View(exercise)); }
public bool CreateExercise(exercise InsertExercise) { using (var db = new DbSimaer()) { db.exercise.Add(InsertExercise); db.SaveChanges(); return(true); } }
public bool DeleteExercise(exercise DeleteExercise) { using (var db = new DbSimaer()) { db.exercise.Remove(DeleteExercise); db.SaveChanges(); return(true); } }
public bool UpdateExercise(exercise UpdateExercise) { using (var db = new DbSimaer()) { db.exercise.AddOrUpdate(UpdateExercise); db.SaveChanges(); return(true); } }
/* * [TestMethod] * public void TestAdminExercisesDeleteWithNullId() * { * int? id = null; * ViewResult result = adminCon.Delete(id) as ViewResult; * Assert.IsNotNull(result); * Assert.AreEqual("DetailedError", result.ViewName); * Assert.IsInstanceOfType(result.Model, typeof(HttpStatusCodeResult)); * var model = result.Model as HttpStatusCodeResult; * Assert.AreEqual(400, model.StatusCode); * Assert.AreEqual("No exercise to delete was specified", model.StatusDescription); * }*/ /* * [TestMethod] * public void TestAdminExercisesGetDeleteWithNotFoundExercise() * { * int? id = 6042; * ViewResult result = adminCon.Delete(id) as ViewResult; * Assert.IsNotNull(result); * Assert.AreEqual("DetailedError", result.ViewName); * Assert.IsInstanceOfType(result.Model, typeof(HttpStatusCodeResult)); * var model = result.Model as HttpStatusCodeResult; * Assert.AreEqual(404, model.StatusCode); * Assert.AreEqual("The exercise could not be found or does not exist", model.StatusDescription); * } * * [TestMethod] * public void TestAdminExercisesPostDeleteExerciseNotFound() * { * exercise t = new exercise(); * ViewResult result = adminCon.DeleteConfirmed(t) as ViewResult; * Assert.IsNotNull(result); * Assert.AreEqual("DetailedError", result.ViewName); * Assert.IsInstanceOfType(result.Model, typeof(HttpStatusCodeResult)); * var model = result.Model as HttpStatusCodeResult; * Assert.AreEqual(500, model.StatusCode); * Assert.AreEqual("The exercise does not exist or has already been deleted", model.StatusDescription); * } * * [TestMethod] * public void TestAdminExercisesPostDeleteWithNullExercise() * { * exercise t = null; * ViewResult result = adminCon.DeleteConfirmed(t) as ViewResult; * Assert.IsNotNull(result); * Assert.AreEqual("DetailedError", result.ViewName); * Assert.IsInstanceOfType(result.Model, typeof(HttpStatusCodeResult)); * var model = result.Model as HttpStatusCodeResult; * Assert.AreEqual(500, model.StatusCode); * Assert.AreEqual("Failed to delete the exercise.", model.StatusDescription); * } * * [TestMethod] * public void TestAdminExercisesPostDeleteWithConcurrencyException() * { * exercise t = new exercise() * { * id = 1 * }; * db.Setup(c => c.exercises.Find(t.id)).Returns(t); * db.Setup(c => c.exercises.Remove(t)).Returns(t); * db.Setup(c => c.SaveChanges()).Throws(new DbUpdateConcurrencyException()); * ViewResult result = adminCon.DeleteConfirmed(t) as ViewResult; * Assert.IsNotNull(result); * Assert.AreEqual("DetailedError", result.ViewName); * Assert.IsInstanceOfType(result.Model, typeof(HttpStatusCodeResult)); * var model = result.Model as HttpStatusCodeResult; * Assert.AreEqual(500, model.StatusCode); * Assert.AreEqual("Failed to delete the exercise as another admin may have modified it", model.StatusDescription); * } * * [TestMethod] * public void TestAdminExercisesPostDeleteWithDbUpdateException() * { * exercise t = new exercise() * { * id = 1 * }; * db.Setup(c => c.exercises.Find(t.id)).Returns(t); * db.Setup(c => c.exercises.Remove(t)).Returns(t); * db.Setup(c => c.SaveChanges()).Throws(new DbUpdateException()); * ViewResult result = adminCon.DeleteConfirmed(t) as ViewResult; * Assert.IsNotNull(result); * Assert.AreEqual("DetailedError", result.ViewName); * Assert.IsInstanceOfType(result.Model, typeof(HttpStatusCodeResult)); * var model = result.Model as HttpStatusCodeResult; * Assert.AreEqual(500, model.StatusCode); * Assert.AreEqual("Failed to delete the exercise as it may be referenced by another item.", model.StatusDescription); * }*/ /* Private Test Helpers */ /// <summary> /// Helper method to determin if a exercise list is sorted in a certain order on a certain property /// </summary> /// <param name="exercises">The exercise list to check</param> /// <param name="propName">The exercise property that the list should be sorted by</param> /// <param name="order">One of "asc" or "desc". Tells the method to check if the list is in ascending or descending order</param> /// <returns>True if the list is sorted on the given property in the given order, false otherwise</returns> private bool isSorted(PagedList <exercise> exercises, string propName, string order) { int limit = (exercises.Count > 10) ? 11 : exercises.Count; for (int i = 1; i < limit; i++) { exercise currentExercise = exercises[i]; exercise prevExercise = exercises[i - 1]; int? res = null; if (propName == "name") { res = String.Compare(prevExercise.name, currentExercise.name); } else if (propName == "date") { res = DateTime.Compare(prevExercise.created_at, currentExercise.created_at); } else if (propName == "username") { res = String.Compare(prevExercise.user.username, currentExercise.user.username); } else if (propName == "link") { res = String.Compare(prevExercise.link, currentExercise.link); } else if (propName == "description") { res = String.Compare(prevExercise.description, currentExercise.description); } else if (propName == "type") { res = String.Compare(prevExercise.type.name, currentExercise.type.name); } else { return(false); } if (order == "asc") { if (res > 0) { return(false); } } else if (order == "desc") { if (res < 0) { return(false); } } } return(true); }
public void TestAdminExercisesCreateThrowsException() { exercise t = new exercise(); db.Setup(c => c.SaveChanges()).Throws(new Exception()); ViewResult result = adminCon.Create(t) as ViewResult; Assert.IsNotNull(result); Assert.AreEqual("DetailedError", result.ViewName); Assert.IsInstanceOfType(result.Model, typeof(HttpStatusCodeResult)); var model = result.Model as HttpStatusCodeResult; Assert.AreEqual(500, model.StatusCode); Assert.AreEqual("Failed to create the exercise.", model.StatusDescription); }
public void TestAdminExercisesPostEditWithNullExercise() { exercise t = null; ViewResult result = adminCon.Edit(t) as ViewResult; Assert.IsNotNull(result); Assert.AreEqual("DetailedError", result.ViewName); Assert.IsInstanceOfType(result.Model, typeof(HttpStatusCodeResult)); var model = result.Model as HttpStatusCodeResult; Assert.AreEqual(500, model.StatusCode); Assert.AreEqual("Failed to edit the exercise.", model.StatusDescription); }
public void TestAdminExercisesPostEditExerciseNotFound() { exercise t = new exercise(); ViewResult result = adminCon.Edit(t) as ViewResult; Assert.IsNotNull(result); Assert.AreEqual("DetailedError", result.ViewName); Assert.IsInstanceOfType(result.Model, typeof(HttpStatusCodeResult)); var model = result.Model as HttpStatusCodeResult; Assert.AreEqual(500, model.StatusCode); Assert.AreEqual("The exercise does not exist or has already been deleted", model.StatusDescription); }
public void TestExerciseControllerDetailsForExercise1and3() { PartialViewResult result = controller.ExerciseDetails(1) as PartialViewResult; Assert.IsNotNull(result); exercise exercise1 = (exercise)result.ViewData.Model; Assert.AreEqual("ex1", exercise1.name, "Name was not 'ex1'"); result = controller.ExerciseDetails(3) as PartialViewResult; Assert.IsNotNull(result); exercise exercise3 = (exercise)result.ViewData.Model; Assert.AreEqual("ex3", exercise3.name, "Name was not 'ex3'"); }
// GET: AdminExercises/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(View("DetailedError", new HttpStatusCodeResult(HttpStatusCode.BadRequest, "No exercise to edit was specified"))); } exercise exercise = db.exercises.Find(id); if (exercise == null) { return(View("DetailedError", new HttpStatusCodeResult(HttpStatusCode.NotFound, "The exercise could not be found or does not exist"))); } ViewBag.type_id = new SelectList(db.types, "id", "measure", exercise.type_id); ViewBag.created_by_user_id = new SelectList(db.users, "id", "username", exercise.created_by_user_id); return(View(exercise)); }
protected void GetExercise() { //look up the selected exercise and fill the exercise edit form. using (DefaultConnection1 db = new DefaultConnection1()) { //Store the ID from the URL in the variable. Int32 exercise_id = Convert.ToInt32(Request.QueryString["exercise_id"]); //Look up the food exercise ex = (from x in db.exercises where x.exercise_id == exercise_id select x).FirstOrDefault(); //pre populate the form feilds txtExerciseName.Text = ex.exercise_name; txtReps.Text = ex.exercise_rep; txtExerciseDate.Text = Convert.ToString(ex.exercise_date); } }
public void TestAdminExercisesPostEditWithConcurrencyException() { exercise t = new exercise() { id = 1 }; db.Setup(c => c.SaveChanges()).Throws(new DbUpdateConcurrencyException()); ViewResult result = adminCon.Edit(t) as ViewResult; Assert.IsNotNull(result); Assert.AreEqual("DetailedError", result.ViewName); Assert.IsInstanceOfType(result.Model, typeof(HttpStatusCodeResult)); var model = result.Model as HttpStatusCodeResult; Assert.AreEqual(500, model.StatusCode); Assert.AreEqual("Failed to edit exercise as another admin may have already updated this exercise", model.StatusDescription); }
public EditExercise(exercise exercise, List <exercise> exercises) { InitializeComponent(); this.exercise = exercise; this.exercises = exercises; if (exercise.protocol == "blank") { name_box.Text = exercise.name; sets_combo.SelectedValue = exercise.sets.ToString(); reps_box.Text = exercise.reps.ToString(); protocol_combo.SelectedValue = "basic"; } else if (exercise.protocol == "sets") { name_box.Text = exercise.name; sets_combo.SelectedValue = exercise.sets.ToString(); reps_box.Text = exercise.reps.ToString(); protocol_combo.SelectedValue = "basic"; RPE_combo.SelectedValue = exercise.RPE.ToString("#.#"); } else if (exercise.protocol == "extra") { name_box.Text = exercise.name; protocol_combo.SelectedValue = "extra"; } else { name_box.Text = exercise.name; reps_box.Text = exercise.reps.ToString(); RPE_combo.SelectedValue = exercise.RPE.ToString(); fatique_combo.SelectedValue = exercise.fatique.ToString() + '%'; if (exercise.protocol == "ld") { fatique_protocol_combo.SelectedValue = "load drop(ld)"; } else { fatique_protocol_combo.SelectedValue = "load drop gradually(ldg)"; } protocol_combo.SelectedValue = "fatique"; } }
protected void grdExercise_RowDeleting(object sender, GridViewDeleteEventArgs e) { //Identify the excercise ID to be deleted from the row that the user selected from Int32 exercise_id = Convert.ToInt32(grdExercise.DataKeys[e.RowIndex].Values["exercise_id"]); //Connect using (DefaultConnection1 db = new DefaultConnection1()) { exercise ex = (from x in db.exercises where x.exercise_id == exercise_id select x).FirstOrDefault(); //delete db.exercises.Remove(ex); db.SaveChanges(); //refresh GetExercise(); } }
public ActionResult Edit([Bind(Include = "id,type_id,created_by_user_id,created_at,link,description,timestamp,name")] exercise exercise) { try { if (ModelState.IsValid) { var oldExercise = db.exercises.Find(exercise.id); if (oldExercise == null) { return(View("DetailedError", new HttpStatusCodeResult(HttpStatusCode.InternalServerError, "The exercise does not exist or has already been deleted"))); } var entry = db.Entry(oldExercise); var state = entry.State; if (state == EntityState.Detached) { db.Entry(exercise).State = EntityState.Modified; } else { entry.OriginalValues["timestamp"] = exercise.timestamp; entry.CurrentValues.SetValues(exercise); } db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.type_id = new SelectList(db.types, "id", "name", exercise.type_id); ViewBag.created_by_user_id = new SelectList(db.users, "id", "username", exercise.created_by_user_id); return(View(exercise)); } catch (DbUpdateConcurrencyException) { return(View("DetailedError", new HttpStatusCodeResult(HttpStatusCode.InternalServerError, "Failed to edit exercise as another admin may have already updated this exercise"))); } catch (DbUpdateException) { return(View("DetailedError", new HttpStatusCodeResult(HttpStatusCode.InternalServerError, "Failed to edit exercise."))); } catch (Exception) { return(View("DetailedError", new HttpStatusCodeResult(HttpStatusCode.InternalServerError, "Failed to edit the exercise."))); } }
protected void btnAddExercise_Click(object sender, EventArgs e) { //Connect using (DefaultConnection1 db = new DefaultConnection1()) { //create new exercise in memory exercise ex = new exercise(); Int32 exercise_id = 0; //check for URL if (!String.IsNullOrEmpty(Request.QueryString["exercise_id"])) { //get the id from the url exercise_id = Convert.ToInt32(Request.QueryString["exercise_id"]); //Look up the food ex = (from x in db.exercises where x.exercise_id == exercise_id select x).FirstOrDefault(); } //importing the user_id from the session object. Int32 user_id = Convert.ToInt32(Session["user_id"]); //fill the properties of the new Exercise ex.exercise_name = txtExerciseName.Text; ex.exercise_rep = txtReps.Text; ex.exercise_date = Convert.ToDateTime(txtExerciseDate.Text); ex.user_id = user_id; if (exercise_id == 0) { db.exercises.Add(ex); } //Save the exercise to the data base db.SaveChanges(); //redirect to the exercise tracker page Response.Redirect("exercise_tracker.aspx"); } }
public bool AddExercise(ExerciseDTO exercise) { try { var e = new exercise { EID = exercise.EID, name = exercise.name, description = exercise.description, link = exercise.link, type = exercise.type }; db.exercise.Add(e); db.SaveChanges(); return(true); } catch (Exception) { return(false); } }
public ActionResult Create([Bind(Include = "id,type_id,created_by_user_id,created_at,link,description,timestamp,name")] exercise exercise) { try { if (ModelState.IsValid) { exercise.created_at = DateTime.Now; exercise.created_by_user_id = db.users.Where(a => a.username.Equals(User.Identity.Name)).FirstOrDefault().id; db.exercises.Add(exercise); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.type_id = new SelectList(db.types, "id", "measure", exercise.type_id); ViewBag.created_by_user_id = new SelectList(db.users, "id", "username", exercise.created_by_user_id); return(View(exercise)); } catch (Exception ex) { return(View("DetailedError", new HttpStatusCodeResult(HttpStatusCode.InternalServerError, "Failed to create the exercise."))); } }
protected override SetExerciseDescriptorResponse InnerHandle(SetExerciseDescriptorRequest request, member requester) { if (!((Common.Model.MemberType)requester.MemberType).HasFlag(MemberType.Trainer)) { return(new SetExerciseDescriptorResponse { AccessDenied = true }); } var db = new DatabaseEntities(); var e = request.Exercise; var dbEx = new exercise { Name = e.Name, Description = e.Description }; var ex = db.exercises.Add(dbEx); db.SaveChanges(); return(new SetExerciseDescriptorResponse { Exercise = (ExerciseDescriptor)ex }); }
private ITask convert(exercise xmlExercise) { var exercise = exerciseFactory.Create(); exercise.Description = xmlExercise.text; if (!String.IsNullOrEmpty(xmlExercise.id)) { taggedInitializer.FillFromTaggedTask(xmlExercise.id, exercise); } if (exercise.Evaluator == null) { Type evaluatorType = Type.GetType(xmlExercise.@class); if (evaluatorType != null) { if (!typeof(IEvaluator).IsAssignableFrom(evaluatorType)) { log("type is no IEvaluator"); } kernel.Bind(evaluatorType).ToSelf(); IEvaluator evaluator = (IEvaluator)kernel.Get(evaluatorType); exercise.Evaluator = evaluator; } } return exercise; }
public bool UpdateExercise(exercise UpdateExercise) { return(dao.UpdateExercise(UpdateExercise)); }
/// <summary> /// Gets the fake exercises /// </summary> /// <returns>A queryable list of fake exercises</returns> private List<exercise> getSeedExercises() { var users = getSeedUsers(); exercise ex1 = new exercise { id = 1, name = "ex1", user = users[1], created_by_user_id = 2 }; exercise ex2 = new exercise { id = 2, name = "ex2", user = users[1], created_by_user_id = 2 }; exercise ex3 = new exercise { id = 3, name = "ex3", user = users[2], created_by_user_id = 3 }; var exercises = new List<exercise> { ex1, ex2, ex3 }; return exercises; }
public bool CreateExercise(exercise InsertExercise) { return(dao.CreateExercise(InsertExercise)); }
public bool DeleteExercise(exercise DeleteExercise) { return(dao.DeleteExercise(DeleteExercise)); }
private void CloseWindow(object sender, System.ComponentModel.CancelEventArgs e) { try { exercise exercise = new exercise(name_box.Text); string protocol = ((ComboBoxItem)protocol_combo.SelectedItem).Content.ToString(); exercise.name = name_box.Text; if (protocol == "fatique") { string fatique_protocol = ((ComboBoxItem)fatique_protocol_combo.SelectedItem).Content.ToString(); if (fatique_protocol == "load drop(ld)") { exercise.protocol = "ld"; } else { exercise.protocol = "ldg"; } int reps; if (!Int32.TryParse(reps_box.Text, out reps)) { return; } exercise.reps = reps; double RPE; Double.TryParse(((ComboBoxItem)RPE_combo.SelectedItem).Content.ToString(), out RPE); exercise.RPE = RPE; int fatique; Int32.TryParse(((ComboBoxItem)fatique_combo.SelectedItem).Content.ToString().Substring(0, 1), out fatique); exercise.fatique = fatique; } else if (protocol == "basic, RPE") { exercise.protocol = "sets"; int sets; Int32.TryParse(((ComboBoxItem)sets_combo.SelectedItem).Content.ToString(), out sets); exercise.sets = sets; int reps; if (!Int32.TryParse(reps_box.Text, out reps)) { return; } exercise.reps = reps; double RPE; Double.TryParse(((ComboBoxItem)RPE_combo.SelectedItem).Content.ToString(), out RPE); exercise.RPE = RPE; } else if (protocol == "extra") { exercise.protocol = "extra"; exercise.name = name_box.Text; } else if (protocol == "basic") { exercise.protocol = "blank"; int sets; Int32.TryParse(((ComboBoxItem)sets_combo.SelectedItem).Content.ToString(), out sets); exercise.sets = sets; int reps; if (!Int32.TryParse(reps_box.Text, out reps)) { return; } exercise.reps = reps; } else { return; } exercises.Add(exercise); } catch { return; } }