コード例 #1
0
        public Teacher Find(RoadStep roadStep, List <Teacher> allTeachers)
        {
            var correctTeachers = allTeachers.Where(p => p.TeacherXRoadSteps.Any(u => u.Id == roadStep.Id)).ToList();

            Random rnd = new Random();
            int    r   = rnd.Next(correctTeachers.Count);

            return(correctTeachers[r]);
        }
コード例 #2
0
 public TrainingMessage(string content, AspNetUsers sender, AspNetUsers recipient, Road road, RoadMap roadMap, RoadStep roadStep)
 {
     Content   = content;
     Sender    = sender;
     Recipient = recipient;
     Road      = road;
     RoadMap   = roadMap;
     RoadStep  = roadStep;
 }
コード例 #3
0
        public StepResource(string name, string description, string userId, RoadStep roadStep)
        {
            Name        = name;
            Description = description;
            UserId      = userId;

            if (roadStep != null)
            {
                RoadStep = roadStep;
            }
        }
コード例 #4
0
        public ActionResult EditRoadStep(ManageRoadStepViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            RoadStep roadStep = null;

            if (model.Id != null)
            {
                roadStep = Db.RoadSteps.FirstOrDefault(p => p.Id == model.Id);
                if (roadStep != null)
                {
                    roadStep.Name        = model.Name;
                    roadStep.Description = model.Description;
                }
            }
            else
            {
                Road road = null;
                if (model.RoadId != null)
                {
                    road = Db.Roads.FirstOrDefault(p => p.Id == model.RoadId);
                }

                roadStep = new RoadStep(model.Name, model.Description, CurrentUserId, road);
                Db.RoadSteps.Add(roadStep);

                var currentTeacher = CurrentTeacher;
                if (currentTeacher == null)
                {
                    currentTeacher = new Teacher(CurrentUser);
                    Db.Teachers.Add(currentTeacher);
                }

                currentTeacher.AddRoadStep(roadStep);
            }

            Db.SaveChanges();

            return(RedirectToAction("List"));
        }
コード例 #5
0
        public ActionResult SendMessage(SendMessageViewModel model)
        {
            if (CurrentUserId == null)
            {
                model.Message = "Please login into your account to send messages.";
                return(View(model));
            }

            var         sender    = CurrentUser;
            AspNetUsers recipient = null;
            RoadStep    roadStep  = null;

            if (model.RoadStepId != null)
            {
                roadStep  = Db.RoadSteps.FirstOrDefault(p => p.Id == model.RoadStepId.Value);
                recipient = Db.AspNetUsers.FirstOrDefault(p => p.Id == roadStep.UserId);
            }
            Road road = null;

            if (model.RoadId != null)
            {
                road      = Db.Roads.FirstOrDefault(p => p.Id == model.RoadId.Value);
                recipient = Db.AspNetUsers.FirstOrDefault(p => p.Id == road.UserId);
            }
            RoadMap roadMap = null;

            if (model.RoadMapId != null)
            {
                roadMap   = Db.RoadMaps.FirstOrDefault(p => p.Id == model.RoadMapId.Value);
                recipient = Db.AspNetUsers.FirstOrDefault(p => p.Id == roadMap.UserId);
            }

            Db.TrainingMessages.Add(new TrainingMessage(model.Content, sender, recipient, road, roadMap, roadStep));
            Db.SaveChanges();

            model.Message = "Your message has been sent. Thank you.";
            return(View(model));
        }
コード例 #6
0
        public ActionResult EditStepExercise(ManageStepExerciseViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            StepExercise stepExercise = null;

            if (model.Id != null)
            {
                stepExercise = Db.StepExercises.FirstOrDefault(p => p.Id == model.Id);
                if (stepExercise != null)
                {
                    stepExercise.Name        = model.Name;
                    stepExercise.Description = model.Description;
                }
            }
            else
            {
                var currentUserId = User.Identity.GetUserId();

                RoadStep roadStep = null;
                if (model.RoadStepId != null)
                {
                    roadStep = Db.RoadSteps.FirstOrDefault(p => p.Id == model.RoadStepId);
                }

                stepExercise = new StepExercise(model.Name, model.Description, currentUserId, roadStep);
                Db.StepExercises.Add(stepExercise);
            }

            Db.SaveChanges();

            return(RedirectToAction("EditRoadStep", new { @id = model.RoadStepId }));
        }
コード例 #7
0
 public TrainingNeed(bool needsContent, bool needsExercise, RoadStep roadStep)
 {
     NeedsContent  = needsContent;
     NeedsExercise = needsExercise;
     RoadStep      = roadStep;
 }
コード例 #8
0
 public TeacherXRoadStep(RoadStep roadStep, Teacher teacher)
 {
     RoadStep = roadStep;
     Teacher  = teacher;
 }
コード例 #9
0
 public RoadXRoadStep(Road road, RoadStep roadStep)
 {
     RoadStep = roadStep;
     Road     = road;
 }