void editTrainingPlan(BodyArchitect.Service.Model.TrainingPlans.TrainingPlan plan) { ControlHelper.RunWithExceptionHandling(delegate { WorkoutPlanDTO planDto = (WorkoutPlanDTO)plan.Tag; TrainingPlanEditorWindow wnd = new TrainingPlanEditorWindow(); wnd.Fill(plan); if (wnd.ShowDialog(this) == System.Windows.Forms.DialogResult.OK) { ParentWindow.RunAsynchronousOperation(delegate { TrainingPlanChecker checker = new TrainingPlanChecker(); checker.Process(wnd.TrainingPlan); planDto.SetTrainingPlan(wnd.TrainingPlan); XmlSerializationTrainingPlanFormatter formatter = new XmlSerializationTrainingPlanFormatter(); planDto.PlanContent = formatter.ToXml(wnd.TrainingPlan).ToString(); planDto.Profile = UserContext.CurrentProfile; ServiceManager.SaveTrainingPlan(planDto); ObjectsReposidory.ClearWorkoutPlansCache(); ParentWindow.SynchronizationContext.Send(delegate { Fill(); }, null); }); } }); }
public static TrainingPlan ToTrainingPlan(this WorkoutPlanDTO plan) { plan.LoadContent(); XmlSerializationTrainingPlanFormatter formatter = new XmlSerializationTrainingPlanFormatter(); var newPlan = formatter.FromXml(plan.PlanContent); return(newPlan); }
private TrainingPlan createPlan(Profile profile1, string name, PublishStatus status, TrainingPlanDifficult difficult, TrainingType type, params Exercise[] exercises) { var plan = new BodyArchitect.Service.Model.TrainingPlans.TrainingPlan(); var workoutPlan = new TrainingPlan(); workoutPlan.GlobalId = Guid.NewGuid(); workoutPlan.Language = "en"; workoutPlan.Profile = profile1; workoutPlan.Name = plan.Name = name; plan.TrainingType = (Service.Model.TrainingPlans.TrainingType)(workoutPlan.TrainingType = type); plan.Difficult = (Service.Model.TrainingPlans.TrainingPlanDifficult)(workoutPlan.Difficult = difficult); workoutPlan.Author = plan.Author = "test"; workoutPlan.Status = status; if (status == PublishStatus.Published) { workoutPlan.PublishDate = DateTime.UtcNow; } TrainingPlanDay day = new TrainingPlanDay(); day.Name = "day"; plan.AddDay(day); plan.Language = workoutPlan.Language; foreach (var exercise in exercises) { TrainingPlanEntry entry = new TrainingPlanEntry(); entry.ExerciseId = exercise.GlobalId; day.AddEntry(entry); } XmlSerializationTrainingPlanFormatter formatter = new XmlSerializationTrainingPlanFormatter(); workoutPlan.PlanContent = formatter.ToXml(plan).ToString(); Session.Save(workoutPlan); workoutPlan.Tag = Mapper.Map <TrainingPlan, WorkoutPlanDTO>(workoutPlan); return(workoutPlan); }