Inheritance: IListObject
コード例 #1
0
        public void UpdateLevelMaterialTest()
        {
            var materialData = new FakeObjectSet<LevelMaterial>();

            LevelMaterial expected = new LevelMaterial();
            expected.Title = "Fyrstu skilaboðin";
            expected.Description = "Ekki sérlega merkileg skilaboð";
            expected.ContentId = System.Guid.NewGuid();


            materialData.AddObject(expected);

            _mockRepository.Expect(x => x.LevelMaterials).Return(materialData);

            //_mockRepository.Expect(x => x.AttachTo("UserInfo", userInfo));
            _mockRepository.Expect(x => x.SaveChanges()).Return(1);

            _levelService.UpdateLevelMaterial(expected);


            _mockRepository.VerifyAllExpectations(); // Make sure everything was called correctly.
        }
コード例 #2
0
        /// <summary>
        /// Update level material item
        /// </summary>
        /// <param name="levelMaterial">Levelmaterial object</param>
        public void UpdateLevelMaterial(LevelMaterial levelMaterial)
        {
            if (levelMaterial != null)
            {
                var query = GameSchoolEntities.LevelMaterials
                    .Where(l => l.LevelMaterialId == levelMaterial.LevelMaterialId);

                var levelMaterialToUpdate = query.FirstOrDefault();
                if (levelMaterialToUpdate != null)
                {
                    levelMaterialToUpdate.ContentId = levelMaterial.ContentId;
                    levelMaterialToUpdate.ContentTypeId = levelMaterial.ContentTypeId;
                    levelMaterialToUpdate.Url = levelMaterial.Url;
                    levelMaterialToUpdate.Description = levelMaterial.Description;
                    levelMaterialToUpdate.Title = levelMaterial.Title;
                }
                Save();

            }
        }
コード例 #3
0
        /// <summary>
        /// Create level material item
        /// </summary>
        /// <param name="levelMaterial">levelmaterial object</param>
        /// <param name="courseId">Id of course</param>
        public void CreateLevelMaterial(LevelMaterial levelMaterial, int? courseId)
        {
            if (levelMaterial != null && courseId > 0)
            {
                GameSchoolEntities.LevelMaterials.AddObject(levelMaterial);

                var level = GameSchoolEntities.Levels.FirstOrDefault(l => l.LevelId == levelMaterial.LevelId && l.CourseId == courseId);

                if (level != null)
                {
                    var allUsersInThisCourse =
                        GameSchoolEntities.UserInfoes.SelectMany(s => s.Courses.Where(d => d.CourseId == courseId)).
                            SelectMany(x => x.UserInfoes);
                    foreach (var user in allUsersInThisCourse.Where(s => s.UserTypeId == 1).Distinct())
                    {
                        ExternalNotificationContainer.CreateNotification(string.Format("Nýtt kennslugagn er komið í áfangann {0} með nafninu \"{1}\"",
                                                                                           levelMaterial.Level.Course.Name, levelMaterial.Title), string.Format("/Material/Index/{0}", levelMaterial.Level.CourseId), user.UserInfoId);
                    }
                }
                Save();
            }
        }
コード例 #4
0
        public ActionResult Edit(LevelMaterial levelMaterial, int? id)
        {
            if (ModelState.IsValid)
            {
                var material = LevelService.GetLevelMaterial(levelMaterial.LevelMaterialId);
                var courseId = material.Level.CourseId;
                if (TryUpdateModel(material))
                {
                    if (material.File != null)
                    {
                        foreach (var file in material.File)
                        {
                            Guid contentId = Guid.NewGuid();
                            if (file != null && file.ContentLength > 0)
                            {
                                var path = Path.Combine(Server.MapPath("~/Upload"), contentId.ToString());
                                    //TODO: Add function to check for file extensions
                                ViewBag.ContentId = contentId;
                                file.SaveAs(path);
                                material.ContentId = contentId;
                                material.Filename = file.FileName;
                            }
                        }
                    }

                    ViewBag.CourseName = CourseService.GetCourse(courseId).Name;
                    ViewBag.Courseid = CourseService.GetCourse(courseId).CourseId;
                    ViewBag.Title = "Breyta kennsluefni";
                    ViewBag.LevelCount = GetLevelCounts(courseId);
                    ViewBag.ContentTypes = LevelService.GetContentTypes();
                    ViewBag.SuccessMessage = "Kennslugagn hefur verið uppfært";

                    LevelService.UpdateLevelMaterial(material);
                    return View(levelMaterial);
                }

            }
            else
            {
                ViewBag.ErrorMessage = "Gat ekki uppfært kennslugagn! Lagfærðu villur og reyndur aftur.";
                if (id.HasValue)
                {
                    return View(LevelService.GetLevelMaterial(id.Value));
                }   
            }
            ViewBag.LevelCount = GetLevelCounts(levelMaterial.Level.CourseId);
            ViewBag.LevelMaterialId = levelMaterial.LevelMaterialId;
            ViewBag.ContentTypes = LevelService.GetContentTypes();
            return View();
        }
コード例 #5
0
        public ActionResult Create(LevelMaterial levelMaterial, int? id)
        {

            if (ModelState.IsValid)
            {
                if (levelMaterial.File.FirstOrDefault() != null)
                {
                    foreach (var file in levelMaterial.File)
                    {
                        Guid contentId = Guid.NewGuid();
                        if (file.ContentLength > 0)
                        {
                            var path = Path.Combine(Server.MapPath("~/Upload"), contentId.ToString());
                            ViewBag.ContentId = contentId;
                            file.SaveAs(path);
                            levelMaterial.ContentId = contentId;
                            levelMaterial.Filename = file.FileName;
                        }
                    }
                }
                
                levelMaterial.CreateDateTime = DateTime.Now;
                LevelService.CreateLevelMaterial(levelMaterial, id.Value);


                return RedirectToAction("Get", new { id = levelMaterial.LevelMaterialId });

            }
            ViewBag.LevelCount = GetLevelCounts(id.Value);
            ViewBag.ContentTypes = LevelService.GetContentTypes();
            ViewBag.CourseId = id.Value;

            return View();
        }
コード例 #6
0
ファイル: Comment.cs プロジェクト: davidein/Ru.GameSchool
     private void FixupLevelMaterial(LevelMaterial previousValue)
     {
         if (previousValue != null && previousValue.Comments.Contains(this))
         {
             previousValue.Comments.Remove(this);
         }
 
         if (LevelMaterial != null)
         {
             if (!LevelMaterial.Comments.Contains(this))
             {
                 LevelMaterial.Comments.Add(this);
             }
             if (LevelMaterialId != LevelMaterial.LevelMaterialId)
             {
                 LevelMaterialId = LevelMaterial.LevelMaterialId;
             }
         }
     }