public async Task CreateAsync(CreateAssignmentInputModel inputModel)
        {
            Assignment assignment = new Assignment
            {
                Title        = inputModel.Title,
                Instructions = inputModel.Instructions,
                CourseId     = inputModel.CourseId,
                StartDate    = inputModel.StartDate,
                EndDate      = inputModel.EndDate,
            };

            if (inputModel.PossiblePoints != 0)
            {
                assignment.PossiblePoints = inputModel.PossiblePoints;
            }

            if (inputModel.Files != null)
            {
                await this.AttachFile(assignment, inputModel.Files, FileType.Resource);
            }

            foreach (var id in inputModel.StudentsId)
            {
                await this.userAssignmentRepository.AddAsync(new UserAssignment
                {
                    Assignment = assignment,
                    UserId     = id,
                    Seen       = false,
                });
            }

            await this.userAssignmentRepository.SaveChangesAsync();
        }
Esempio n. 2
0
        public async Task <int> CreateAssignment(CreateAssignmentInputModel createAssignmentInputModel)
        {
            var mapInputModelToEntity = _mapper.Map <CreateAssignmentInputModel, Assignment>(createAssignmentInputModel);

            var createAssignmentCallback = await Task.FromResult(_assignmentRepository.CreateAssignment(mapInputModelToEntity));

            return(createAssignmentCallback.Result);
        }
Esempio n. 3
0
        public IActionResult CreateAssignment(int id)
        {
            CreateAssignmentInputModel createAssignmentInputModel = new CreateAssignmentInputModel
            {
                Students = this.studentsService.GetAllAsSelectListItems(id),
                CourseId = id,
            };

            return(this.View(createAssignmentInputModel));
        }
Esempio n. 4
0
        public async Task <IActionResult> CreateAssignment(CreateAssignmentInputModel inputModel, int id)
        {
            if (!this.ModelState.IsValid)
            {
                inputModel.Students = this.studentsService.GetAllAsSelectListItems(id);
                return(this.View(inputModel));
            }

            inputModel.CourseId = id;
            await this.assignmentsService.CreateAsync(inputModel);

            this.TempData["CreatedAssignment"] = "Succesfully created assignment";

            return(this.RedirectToAction("AllCreated", "Assignments", new { Id = id }));
        }
Esempio n. 5
0
        public async Task CreateAssignment(CreateAssignmentInputModel input, string teacherId, string schoolId)
        {
            var assignment = new Assignment()
            {
                TeacherId         = teacherId,
                AssignmentTitle   = input.AssignmentName,
                AssignmentContent = input.AssignmentContent,
                DueDate           = input.DueDate,
                Points            = input.Points,
                Signature         = input.Signature
            };

            await GenerateResults(input.Signature, schoolId, assignment.Id);

            await this.context.Assignments.AddAsync(assignment);

            await this.context.SaveChangesAsync();
        }
Esempio n. 6
0
        public async Task <IActionResult> GiveAssignment(CreateAssignmentInputModel input)
        {
            if (!this.ModelState.IsValid)
            {
                return(View(input));
            }

            if (input.DueDate < DateTime.Now)
            {
                this.ModelState.AddModelError("Datetime", "Due date cannot be yearlier than today!");
                return(View(input));
            }

            var user = await this.userManager.GetUserAsync(this.User);

            await this.assignmentService.CreateAssignment(input, user.Id, user.SchoolId);

            return(RedirectToAction("Results"));
        }