public void ItemReturnsPost() { FakeAreaService areaService = new FakeAreaService(); FakePostService postService = new FakePostService(); Guid postID = Guid.NewGuid(); Guid areaID = Guid.NewGuid(); areaService.StoredAreas.Add("test", new Area() { ID = areaID }); postService.AddedPosts.Add(new Post() { ID = postID, Slug = "Slug" }); PostController controller = new PostController(postService, null, areaService, null); OxiteModelItem <Post> result = controller.Item(new Area() { Name = "test" }, new Post() { Slug = "Slug" }); Assert.Equal(postID, result.Item.ID); Assert.IsType <Area>(result.Container); Assert.Equal(areaID, (result.Container as Area).ID); }
public static void RenderPlayer <TModel>(this HtmlHelper <TModel> htmlHelper, string viewName, string advertisementUrl) where TModel : OxiteModelItem <Post> { OxiteModelItem <Post> model = htmlHelper.ViewData.Model; if (model.Item.Files.Count > 0) { File preview = model.Item.Files.Where(f => f.TypeName == "Preview Image (Large)").FirstOrDefault(); File media = null; if (preview == null) { UrlHelper urlHelper = new UrlHelper(htmlHelper.ViewContext.RequestContext); preview = new File() { Url = new Uri(urlHelper.CssPath("/images/DefaultPlayerBackground.png", htmlHelper.ViewContext), UriKind.Relative) }; } if (string.Compare(model.Container.Name, "IE8", true) == 0) { media = model.Item.Files.Where(f => f.TypeName == "WMVStreaming").FirstOrDefault(); } else { if (media == null) { media = model.Item.Files.Where(f => f.TypeName == "WMVStreamingOnly").FirstOrDefault(); } if (media == null) { media = model.Item.Files.Where(f => f.TypeName == "WMVHigh").FirstOrDefault(); } if (media == null) { media = model.Item.Files.Where(f => f.TypeName == "WMVStreaming").FirstOrDefault(); } if (media == null) { media = model.Item.Files.Where(f => f.TypeName == "WMV640x360").FirstOrDefault(); } if (media == null) { media = model.Item.Files.Where(f => f.TypeName == "WMV").FirstOrDefault(); } } if (media != null) { htmlHelper.RenderPartialFromSkin(viewName, new OxiteModelPartial <PlayerViewModel>(model, new PlayerViewModel(media, preview, advertisementUrl)), htmlHelper.ViewData); } } }
public void OnActionExecuted(ActionExecutedContext filterContext) { OxiteModelItem <Post> postModel = filterContext.Controller.ViewData.Model as OxiteModelItem <Post>; if (postModel != null) { postModel.CommentingDisabled = site.CommentingDisabled || ((Area)postModel.Container).CommentingDisabled || postModel.Item.CommentingDisabled; } //TODO: (erikpo) Once comments are added to pages, add code similar to above to set allow comments for pages }
public void ItemReturnsNullOnNotFoundArea() { FakeAreaService areaService = new FakeAreaService(); PostController controller = new PostController(null, null, areaService, null); OxiteModelItem <Post> result = controller.Item(new Area() { Name = "Test" }, null); Assert.Null(result); }
public void ItemReturnsNullOnNotFoundPost() { FakeAreaService areaService = new FakeAreaService(); FakePostService postService = new FakePostService(); areaService.StoredAreas.Add("test", new Area()); PostController controller = new PostController(postService, null, areaService, null); OxiteModelItem <Post> result = controller.Item(new PostAddress("test", "Some-Post")); Assert.Null(result); }
public void OnResultExecuting(ResultExecutingContext filterContext) { OxiteModelItem <Post> model = filterContext.Controller.ViewData.Model as OxiteModelItem <Post>; if (model != null) { UrlHelper urlHelper = new UrlHelper(filterContext.RequestContext); string imgTag = string.Format("<div style=\"position:absolute;left:-9999px;\"><img src=\"{0}\" width=\"1\" height=\"1\" alt=\"Web View Bug\" /></div>", urlHelper.PostViewBug(model.Item, "Post-Web")); ResponseFilter responseFilter = new ResponseFilter(filterContext.HttpContext.Response.Filter, filterContext.HttpContext); responseFilter.Inserts.Add(new ResponseInsert(imgTag, ResponseInsertMode.PrependTo, "body")); filterContext.HttpContext.Response.Filter = responseFilter; } }
public static string TrackbackBlock <TModel>(this HtmlHelper <TModel> htmlHelper) where TModel : OxiteModel { OxiteModelItem <Post> model = htmlHelper.ViewData.Model as OxiteModelItem <Post>; if (model != null) { Post post = ((OxiteModelItem <Post>)model).Item; if (post != null) { UrlHelper urlHelper = new UrlHelper(htmlHelper.ViewContext.RequestContext); return(string.Format("<!--<rdf:RDF xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:trackback=\"http://madskills.com/public/xml/rss/module/trackback/\"><rdf:Description rdf:about=\"{2}\" dc:identifier=\"{2}\" dc:title=\"{0}\" trackback:ping=\"{1}\" /></rdf:RDF>-->", htmlHelper.Encode(post.Title), urlHelper.AbsolutePath(urlHelper.Trackback(post)), urlHelper.AbsolutePath(urlHelper.Post(post)))); } } return(""); }
public void ItemReturnsPost() { FakePostService postService = new FakePostService(); Guid postID = Guid.NewGuid(); postService.AddedPosts.Add(new Post() { ID = postID, Slug = "Slug", Area = new Area() }); PostController controller = new PostController(postService, null, null, null); OxiteModelItem <Post> result = controller.Item(new PostAddress("test", "Slug")); Assert.Equal(postID, result.Item.ID); Assert.IsType <Area>(result.Container); }