public Breadcrumb Swap(Breadcrumb lineage) { Region = lineage.Authority; Authority = lineage.Locality; Locality = lineage.Organisation; return this; }
public void Constructor_SetsIsRequestedPageFalseWhenNotRequestedPage() { var request = new PageRequestModel { RequestedPage = 22 }; var o = new PageLinkModel(request, 21, "21"); Assert.IsFalse(o.IsRequestedPage); }
public PageLinkModel ExtractLink() { var info = new PageLinkModel { Id = Id, Text = TradingName, Title = string.Format("{0}, {1}", TradingName, Postcode), Filename = Filename, }; return(info); }
public void Constructor_SetsProperties() { var request = new PageRequestModel { RequestedPage = 11 }; var linkPage = 11; var linkText = "eleven"; var o = new PageLinkModel(request, linkPage, linkText); Assert.AreSame(request, o.Request); Assert.AreEqual(linkPage, o.LinkPage); Assert.AreEqual(linkText, o.LinkText); Assert.AreEqual(o.LinkPage, o.LowerPage); Assert.AreEqual(o.LinkPage, o.UpperPage); Assert.IsFalse(o.IsPageRange); Assert.IsTrue(o.IsRequestedPage); }
public PageLinkModel ExtractNextLink() { if (QualifiedName.IsNullOrEmpty()) { throw new ArgumentNullException("QualifiedName"); } Authority sibbling = null; // create a default var result = new PageLinkModel { Text = QualifiedName, Title = QualifiedName, Filename = CleanQualifiedName }; if (ParentAuthority != null) { var ints = ParentAuthority.Authoritys .Where(h => h.HasHauntedOrgs && !h.IsCrossBorderArea) .OrderBy(o => o.QualifiedName) .Select(s => s.Id).ToList(); var nextId = ints.FindNext(Id); if (nextId.HasValue) { sibbling = ParentAuthority.Authoritys .FirstOrDefault(x => x.Id == nextId); } } if (sibbling == null) { return(result); } result = new PageLinkModel { Text = sibbling.QualifiedName, Title = sibbling.QualifiedName, Filename = sibbling.CleanQualifiedName }; return(result); }
public void Constructor_SetsProperties() { var request = new PageRequestModel { RequestedPage = 11 }; var linkPage = 11; var linkText = "eleven"; var o = new PageLinkModel(request, linkPage, linkText); Assert.AreSame(request, o.Request); Assert.AreEqual(linkPage, o.LinkPage); Assert.AreEqual(linkText, o.LinkText); Assert.AreEqual(o.LinkPage, o.LowerPage); Assert.AreEqual(o.LinkPage, o.UpperPage); Assert.IsFalse(o.IsPageRange); Assert.IsTrue(o.IsRequestedPage); }
private PageLinkModel CreatePageLinkModel(KeyValuePair <string, int> pathKeyValuePair, ref int index, int rank, IEnumerable <Org> data ) { if (pathKeyValuePair.Key.IsNullOrEmpty()) { throw new Exception( "The key is null or empty; this is usually because the CountryID or AddressTypeID is null or [HauntedOrgs_Fix] has not been run."); } var lineage = new GeoPathModel(pathKeyValuePair.Key); var queryable = data .Where(org => org.HauntedStatus && org.Authority.ParentAuthority.Name == lineage.ParentOfRightmost && org.Authority.QualifiedName == lineage.Rightmost ) .ToList(); var links = queryable .Select(x => x.ExtractLink()) .ToList(); var result = new PageLinkModel(); if (!queryable.Any()) { return(result); } var first = queryable.First(); result = new PageLinkModel { Text = string.Format("{0}. {1}", rank, lineage.FriendlyDescription), Title = string.Format("{0} ({1} pubs in this area)", lineage.FriendlyDescription, pathKeyValuePair.Value), Filename = first.Authority.CleanQualifiedName, Id = index - 1, Links = links }; return(result); }
public PageLinkModel ExtractNextLink() { if (TradingName.IsNullOrEmpty()) { throw new ArgumentNullException("TradingName"); } Org sibbling = null; var result = new PageLinkModel { Text = TradingName, Title = TradingName, Filename = Filename }; var ints = Authority.Orgs .Where(h => h.HauntedStatus) .OrderBy(o => o.QualifiedLocality) .Select(s => s.Id).ToList(); var nextId = ints.FindNext(Id); if (nextId.HasValue) { sibbling = Authority.Orgs .FirstOrDefault(x => x.Id == nextId.Value); } if (sibbling != null) { result = new PageLinkModel { Text = sibbling.TradingName, Title = sibbling.TradingName, Filename = sibbling.Filename }; } return(result); }
public void GetPage_PageIsFound_ReturnsStatusCodeAndPageModel(HttpStatusCode statusCode) { // Arrange var pageModel = new PageLinkModel { Name = "pageName", NodeGuid = Guid.Empty }; getPageMockAction.ProcessAction(Arg.Any <string>()).Returns(new GetPageActionResult(statusCode, page: pageModel)); // Act var result = richTextController.GetPage("pageUrlPath"); // Assert Assert.Multiple(() => { Assert.That(result, Is.TypeOf <OkNegotiatedContentResult <PageLinkModel> >()); Assert.That((result as OkNegotiatedContentResult <PageLinkModel>).Content, Is.EqualTo(pageModel)); }); }
//public static MvcHtmlString PageLinks(this HtmlHelper html, PageLinkModel pages, Func<int,string> func ) //{ // StringBuilder result = new StringBuilder(); // for (int i = 1; 1 <= pages.CountPages; i++) // { // TagBuilder tag = new TagBuilder("a"); // tag.MergeAttribute("href",func(i)); // tag.InnerHtml = i.ToString(); // if (i == pages.CurrentPage) // tag.AddCssClass("btn btn-success"); // else // tag.AddCssClass("btn btn-outline-success"); // result.Append(tag.ToString()); // } // return MvcHtmlString.Create(result.ToString()); //} public static MvcHtmlString PageLinks(this AjaxHelper html, PageLinkModel pages, Func <int, string> func, string target) { StringBuilder result = new StringBuilder(); for (int i = 1; i <= pages.CountPages; i++) { TagBuilder tag = new TagBuilder("a"); tag.MergeAttribute("href", func(i)); tag.InnerHtml = i.ToString(); AjaxOptions options = new AjaxOptions(); options.UpdateTargetId = target; tag.MergeAttributes(options.ToUnobtrusiveHtmlAttributes()); tag.AddCssClass("btn btn-success"); result.Append(tag.ToString()); } return(MvcHtmlString.Create(result.ToString())); }
public OutputViewModel PrepareLocalityModel( IEnumerable <KeyValuePair <string, PageLinkModel> > orgLocalityLinks, string locality, Authority authority) { if (orgLocalityLinks == null) { throw new ArgumentNullException("orgLocalityLinks"); } if (locality == null) { throw new ArgumentNullException("locality"); } if (authority == null) { throw new ArgumentNullException("authority"); } var collection = new PageLinkKeyedCollection(orgLocalityLinks, locality); if (collection.NextSibling.Key == null) { return(null); } var next = new PageLinkModel { Text = collection.NextSibling.Key, Title = collection.NextSibling.Key, Filename = collection.NextSibling.Key.In(authority.CleanQualifiedName, true), }; var model = OutputViewModel.CreateLocalityOutputViewModel(locality, authority, collection.Links, next, "{0}, {1}, {2}"); return(model); }
public void Constructor_SetsIsRequestedPageFalseWhenNotRequestedPage() { var request = new PageRequestModel { RequestedPage = 22 }; var o = new PageLinkModel(request, 21, "21"); Assert.IsFalse(o.IsRequestedPage); }