public static void Build(IModelEvent pageDetails) { pageDetails.ExtraIncludes.Add(eWolfBootstrap.Enums.BootstrapOptions.GALLERY); pageDetails.CopyLayoutsToKeywords(); Console.WriteLine(pageDetails.Name); List <string> images = ImageHelper.GetAllImages(pageDetails.ImagesPath); AddImageToLayouts(pageDetails, images); // create folders Directory.CreateDirectory(Constants.RootPath + "\\" + Constants.ModelEvents); Directory.CreateDirectory(Constants.RootPath + "\\" + Constants.ModelEvents + "\\" + pageDetails.ImageFolder); Directory.CreateDirectory(Constants.RootPath + "\\" + Constants.ModelEvents + "\\" + pageDetails.ImageFolder + @"\images"); string htmlpath = Constants.RootPath + "\\" + Constants.ModelEvents + "\\" + pageDetails.ImageFolder + "\\"; string imagePath = Constants.RootPath + "\\" + Constants.ModelEvents + "\\" + pageDetails.ImageFolder + @"\images"; eWolfBootstrap.Interfaces.IPageBuilder pageBuilder = new PageBuilder("index.html", htmlpath, pageDetails, "../../"); pageBuilder.Append(NavBarHelper.NavBar("../../")); pageBuilder.Append("<div class='container mt-4'>"); pageBuilder.Append(Jumbotron(pageDetails)); LocationsService ls = ServiceLocator.Instance.GetService <LocationsService>(); ls.AddLocation(pageDetails); AddImagesByLayout(images, pageDetails, htmlpath, imagePath, pageBuilder); pageBuilder.Output(); }
public void Build() { PopulateLocoRefDetails(); var pageHeader = new LocoRefHeader(); foreach (var loco in _orderedDetails) { pageHeader.Keywords.Add(loco.Title); } Directory.CreateDirectory(HtmlPath); PageBuilder pageBuilder = new(HtmlFileName, LocalPath, pageHeader, "../"); pageBuilder.Append(NavBarHelper.NavBar("../")); AddBreadCrumb(pageBuilder); pageBuilder.Append("<div class='container mt-4'>"); //TODO: Photo Ref - can we add an index with grouping by type. Jumbotron(pageBuilder, PageTitle); foreach (var loco in _orderedDetails) { AddLocoRef(pageBuilder, loco); } pageBuilder.Append("</div>"); pageBuilder.Append("</div>"); pageBuilder.Output(); }
public void Build() { Directory.CreateDirectory(HtmlPath); _pageBuilder = new PageBuilder(HtmlFileName, LocalPath, CreateHeader(StationLocations), "../../"); _pageBuilder.Append(NavBarHelper.NavBar("../../")); AddBreadCrumb(this); _pageBuilder.Append("<div class='container mt-4'>"); Jumbotron(PageTitle, StationLocations); string path = Constants.RawDataPath + @"Stations\GCR-Rothley\Gallery"; Add_Gallrey(HtmlPath, HtmlPath + "images\\", path); _pageBuilder.Append("</div>"); _pageBuilder.Append("</div>"); _pageBuilder.Append(HTMLRailHelper.Modal()); _pageBuilder.Append("<script src='../../Scripts/script.js'></script>"); _pageBuilder.Output(); }
public static void Build(List <IBlog> blogs) { string htmlpath = Constants.RootPath; StringBuilder stringBuilder = new StringBuilder(); stringBuilder.Append(PageHeaderHelper.PageHeader(new HomeHeader())); stringBuilder.Append("<body>"); stringBuilder.Append(NavBarHelper.NavBar(string.Empty)); stringBuilder.AppendLine("<div class='container mt-4'>"); IOrderedEnumerable <IBlog> ordedBlogs = blogs.OrderByDescending(x => x.Date); stringBuilder.AppendLine(AddCarousel(ordedBlogs.ToList())); stringBuilder.AppendLine("<main role='main' class='container'>"); stringBuilder.AppendLine("<div class='col-md-8 blog-main'>"); stringBuilder.AppendLine("<div class='row'>"); stringBuilder.AppendLine(AddBlogsAsTimeline(ordedBlogs)); stringBuilder.AppendLine("</div>"); stringBuilder.AppendLine("</div>"); stringBuilder.Append(OtherStuff()); stringBuilder.Append("</body>"); File.WriteAllText(htmlpath + "\\index.html", stringBuilder.ToString()); }
internal static void Build(List <IModelEvent> modelEvents) { string htmlpath = Constants.RootPath + "//" + Constants.ModelEvents + "//"; StringBuilder stringBuilder = new StringBuilder(); stringBuilder.Append(PageHeaderHelper.PageHeader(new ModelEventsHeader())); stringBuilder.Append("<body>"); stringBuilder.Append(NavBarHelper.NavBar("../")); stringBuilder.AppendLine("<div class='container mt-4'>"); var ordedBlogs = modelEvents.OrderByDescending(x => x.TripDate); stringBuilder.AppendLine("<div class='row mb-2'>"); foreach (IModelEvent modelEvent in ordedBlogs) { stringBuilder.AppendLine(CreateBlog(modelEvent)); } stringBuilder.AppendLine("</div>"); stringBuilder.Append("</body>"); Directory.CreateDirectory(htmlpath); File.WriteAllText(htmlpath + "index.html", stringBuilder.ToString()); }
public static void Build(List <IModelEvent> modelEvents) { var meh = new ModelEventsHeader(); foreach (IModelEvent modelEvent in modelEvents) { meh.Keywords.AddRange(modelEvent.Layouts.Select(x => x.Name)); } string htmlpath = Constants.RootPath + "//" + Constants.ModelEvents + "//"; var pageBuilder = new PageBuilder("index.html", htmlpath, meh, "../"); pageBuilder.Append(NavBarHelper.NavBar("../")); pageBuilder.Append("<div class='container mt-4'>"); pageBuilder.Jumbotron("<h1>Model Railway Exhibitions</h1>", "<p></p>", 8); var ordedBlogs = modelEvents.OrderByDescending(x => x.TripDate); pageBuilder.Append("<div class='row mb-2'>"); foreach (IModelEvent modelEvent in ordedBlogs) { pageBuilder.Append(CreateBlog(modelEvent)); } pageBuilder.Append("</div>"); pageBuilder.Output(); }
public static void Build() { GetLayoutDetails(); Directory.CreateDirectory(Constants.RootPath + "\\" + Constants.Shop); string htmlpath = Constants.RootPath + "\\" + Constants.Shop + "\\"; var pb = new PageBuilder("index.html", htmlpath, new ShopHeader(), "../"); pb.Append(NavBarHelper.NavBar("../")); pb.Append("<div class='container mt-4'>"); string imageName = Constants.DriveLetter + "Trains/_WebsiteData/Others/images/"; string imageHtmlName = "../Others/images/"; pb.JumbotronWithImage("<h1>Karl and Debbie Trains Shop</h1>", string.Empty, imageName, imageHtmlName, "CATTINGTON.png"); pb.Append("<div class='container mt-4'>"); pb.Append("<div class='row mb-2'>"); AddAllProducts(pb); pb.Append("</div>"); pb.Append("</div>"); pb.Output(); }
public static void Build() { string localpath = Constants.RootPath + Constants.StationFolder; Directory.CreateDirectory(localpath); eWolfBootstrap.Interfaces.IPageBuilder pageBuilder = new PageBuilder("index.html", localpath, new StationsHeader(), "../"); pageBuilder.Append(NavBarHelper.NavBar("../")); pageBuilder.Append("<div class='container mt-4'>"); pageBuilder.Append(Jumbotron(null)); pageBuilder.Append("<div class='row mb-2'>"); AddStationLoughboroughStation(pageBuilder); AddBuildStationsQuornAndWoodHouse(pageBuilder); AddStationRothley(pageBuilder); AddStationLeicestershireNorth(pageBuilder); AddStationRushcliffeHalt(pageBuilder); pageBuilder.Append("</div>"); pageBuilder.Append("</div>"); pageBuilder.Append(HTMLRailHelper.Modal()); pageBuilder.Append("<script src='../../Scripts/script.js'></script>"); pageBuilder.Output(); }
public void Build() { Directory.CreateDirectory(LocalPath); _pageBuilder = new PageBuilder("index.html", LocalPath, CreateHeader(), "../"); _pageBuilder.Append(NavBarHelper.NavBar("../")); _pageBuilder.Append("<div class='container mt-4'>"); _pageBuilder.Append(Jumbotron()); _pageBuilder.Append("<div class='row mb-2'>"); _pageBuilder.Append("<div class='container mt-4'>"); _pageBuilder.Append("<p>Free to use clips for anything you like.</p>"); _pageBuilder.Append("<p>More to follow.</p>"); _pageBuilder.Append("</br>"); _pageBuilder.Append("<div class='row mb-2'>"); foreach (var detail in _details) { string youTubeLink = $"https://www.youtube.com/embed/{detail.YouTubeLink}"; _pageBuilder.Append(AddYoutubePreview(youTubeLink)); } _pageBuilder.Output(); }
public static void Build(IModelEvent pageDetails) { string htmlpath = Constants.FullCatalog; Directory.CreateDirectory(htmlpath); StringBuilder stringBuilder = new StringBuilder(); stringBuilder.Append(PageHeaderHelper.PageHeader(new CatalogHeader())); stringBuilder.Append("<body>"); stringBuilder.Append(NavBarHelper.NavBar("../")); stringBuilder.AppendLine("<div class='container mt-4'>"); stringBuilder.Append(Jumbotron(null)); stringBuilder.Append(AddDetails(htmlpath, htmlpath + "images\\", "Wagons")); stringBuilder.Append(AddDetails(htmlpath, htmlpath + "images\\", "Loco")); stringBuilder.Append(AddDetails(htmlpath, htmlpath + "images\\", "Coach")); stringBuilder.AppendLine("</div>"); stringBuilder.AppendLine("</div>"); stringBuilder.AppendLine(HTMLHelper.Modal()); stringBuilder.Append("<script src='../Scripts/script.js'></script>"); stringBuilder.Append("</body>"); File.WriteAllText(htmlpath + "index.html", stringBuilder.ToString()); }
public static void Build(IModelEvent pageDetails) { GetLayoutDetails(); string htmlpath = Constants.FullMyLayouts; Directory.CreateDirectory(htmlpath); int totalPages = (_orderedDetails.Count(x => x.Active) / DetailsPerPage); int pageIndex = 0; while (_orderedDetails.Any()) { string pageIndexDisplay = NavBarHelper.GetHtmlPageName(pageIndex); var pageBuilder = new PageBuilder($"{pageIndexDisplay}", htmlpath, new MyLayoutHeader(), "../"); pageBuilder.Append(NavBarHelper.NavBar("../")); pageBuilder.Append("<div class='container mt-4'>"); string imageName = Constants.DriveLetter + "Trains/_WebsiteData/Others/images/"; string imageHtmlName = "../Others/images/"; pageBuilder.JumbotronWithImage("<h1>Cattington</h1>", "<p'>Now it's our turn, We have just started to build our first layout." + "</br>We are Building Cattington, and we are updatd details here every week or so.</p>", imageName, imageHtmlName, "CATTINGTON.png"); pageBuilder.Append(NavBarHelper.Pagination(pageIndex, totalPages)); for (int i = 0; i < DetailsPerPage; i++) { if (_orderedDetails.Any()) { BuildDetails(pageBuilder, _orderedDetails[0]); _orderedDetails.RemoveAt(0); } } pageBuilder.Append(NavBarHelper.Pagination(pageIndex, totalPages)); pageBuilder.Append("</div>"); pageBuilder.Append(HTMLRailHelper.Modal()); pageBuilder.Append("<script src='../Scripts/script.js'></script>"); pageBuilder.Output(); pageIndex++; } }
public static void Build() { Directory.CreateDirectory(Constants.RootPath + "\\" + Constants.Shop); string htmlpath = Constants.RootPath + "\\" + Constants.Shop + "\\"; var sb = new PageBuilder("GCRUnification.html", htmlpath, new ShopGCRHeader(), "../"); sb.Append(NavBarHelper.NavBar("../")); sb.Append("<div class='container mt-4'>"); sb.Jumbotron("<h2>Great Central Reunification</h2>", "", 6); GCR(sb, htmlpath); sb.Append("</div>"); sb.Output(); }
public static void Build(IModelEvent pageDetails) { pageDetails.CopyLayoutsToKeywords(); Console.WriteLine(pageDetails.Name); List <string> images = ImageHelper.GetAllImages(pageDetails.ImagesPath); AddImageToLayouts(pageDetails, images); // create folders Directory.CreateDirectory(Constants.RootPath + "\\" + Constants.ModelEvents); Directory.CreateDirectory(Constants.RootPath + "\\" + Constants.ModelEvents + "\\" + pageDetails.ImageFolder); Directory.CreateDirectory(Constants.RootPath + "\\" + Constants.ModelEvents + "\\" + pageDetails.ImageFolder + @"\images"); string htmlpath = Constants.RootPath + "\\" + Constants.ModelEvents + "\\" + pageDetails.ImageFolder + "\\"; string imagePath = Constants.RootPath + "\\" + Constants.ModelEvents + "\\" + pageDetails.ImageFolder + @"\images"; StringBuilder stringBuilder = new StringBuilder(); stringBuilder.Append(PageHeaderHelper.PageHeader(pageDetails)); stringBuilder.Append("<body>"); stringBuilder.Append(NavBarHelper.NavBar("../../")); stringBuilder.AppendLine("<div class='container mt-4'>"); stringBuilder.Append(Jumbotron(pageDetails)); stringBuilder.AppendLine("<div class='row'>"); AddImagesByLayout(images, pageDetails, htmlpath, imagePath, stringBuilder); stringBuilder.AppendLine("</div>"); stringBuilder.AppendLine("</div>"); stringBuilder.AppendLine(HTMLHelper.Modal()); stringBuilder.Append("<script src='../../Scripts/script.js'></script>"); stringBuilder.Append("</body>"); File.WriteAllText(htmlpath + "index.html", stringBuilder.ToString()); }
public static void BuildOld(IModelEvent pageDetails) { string htmlpath = Constants.FullMyLayouts; Directory.CreateDirectory(htmlpath); var pageBuilder = new PageBuilder("index.html", htmlpath, new MyLayoutHeader(), "../"); pageBuilder.Append(NavBarHelper.NavBar("../")); pageBuilder.Append("<div class='container mt-4'>"); pageBuilder.Jumbotron("<h1>Home layouts</h1>", "<p'>It's now our turn, I've just started to build our new layout, currently on the floor!</p>"); GetLayoutDetails(); pageBuilder.Append("</div>"); pageBuilder.Append("</div>"); pageBuilder.Append(HTMLRailHelper.Modal()); pageBuilder.Append("<script src='../Scripts/script.js'></script>"); pageBuilder.Output(); }
public virtual void Build() { Directory.CreateDirectory(LocalPath); var locref = new LocoRefHeader(); locref.Title = Title; locref.Keywords.Add(Title); locref.Keywords.AddRange(Keywords); locref.Keywords.Add("Photos"); locref.Keywords.Add($"Photos of {Keywords[0]}"); locref.Keywords.Add("Images"); locref.Keywords.Add("reference"); _pageBuilder = new PageBuilder(HtmlFileName, LocalPath, locref, "../../"); _pageBuilder.Append(NavBarHelper.NavBar("../../")); AddBreadCrumb(this); _pageBuilder.Append("<div class='container mt-12'>"); LocoRefPageBuilder.Jumbotron(_pageBuilder, Title); AddPageDetails(); AddGallrey(HtmlPath + "images\\", RawImagePath); _pageBuilder.Append("</div>"); _pageBuilder.Append("</div>"); _pageBuilder.Append(HTMLRailHelper.Modal()); _pageBuilder.Append("<script src='../../Scripts/script.js'></script>"); _pageBuilder.Output(); }
public static void Build(IModelEvent pageDetails) { string htmlpath = Constants.FullCatalog; Directory.CreateDirectory(htmlpath); eWolfBootstrap.Interfaces.IPageBuilder pageBuilder = new PageBuilder("index.html", htmlpath, new CatalogHeader(), "../"); pageBuilder.Append(NavBarHelper.NavBar("../")); pageBuilder.Append("<div class='container mt-4'>"); pageBuilder.Append(Jumbotron(null)); pageBuilder.Append(AddDetails(htmlpath, htmlpath + "images\\", "Wagons")); pageBuilder.Append(AddDetails(htmlpath, htmlpath + "images\\", "Loco")); pageBuilder.Append(AddDetails(htmlpath, htmlpath + "images\\", "Coach")); pageBuilder.Append("</div>"); pageBuilder.Append("</div>"); pageBuilder.Append(HTMLRailHelper.Modal()); pageBuilder.Append("<script src='../Scripts/script.js'></script>"); pageBuilder.Output(); }
public static void Build(List <IBlog> blogs) { string htmlpath = Constants.RootPath; eWolfBootstrap.Interfaces.IPageBuilder pageBuilder = new PageBuilder("index.html", htmlpath, new HomeHeader()); pageBuilder.Append(NavBarHelper.NavBar(string.Empty)); pageBuilder.Append("<div class='container mt-4'>"); IOrderedEnumerable <IBlog> ordedBlogs = blogs.OrderByDescending(x => x.Date); pageBuilder.Append(AddCarousel(ordedBlogs.ToList())); pageBuilder.Append("<main role='main' class='container'>"); pageBuilder.Append("<div class='col-md-8 blog-main'>"); pageBuilder.Append("<div class='row'>"); pageBuilder.Append(AddBlogsAsTimeline(ordedBlogs)); pageBuilder.Append("</div>"); pageBuilder.Append("</div>"); pageBuilder.Append(OtherStuff()); pageBuilder.Output(); }
public static void Build() { string mapId = SettingService.GetSetting.GoogleMapKey; // create folders Directory.CreateDirectory(Constants.RootPath + "\\" + Constants.ModelEvents); string htmlpath = Constants.RootPath + "\\" + Constants.ModelEvents + "\\"; var sb = new PageBuilder("locations.html", htmlpath, new ModelEventsHeader(), "../"); sb.Append(NavBarHelper.NavBar("../")); sb.Append("<div class='container mt-4'>"); sb.Jumbotron("<h2>Locations</h2>", "Model Event Locations visted"); List <LocationHolder> locationSections = GetAllLocations(); string firstLocation = string.Empty; foreach (LocationHolder lh in locationSections) { firstLocation = lh.Location; if (!string.IsNullOrWhiteSpace(firstLocation)) { break; } } if (string.IsNullOrWhiteSpace(firstLocation)) { return; } sb.Append("<div id='map'></div>"); sb.Append("<script>" + Environment.NewLine); sb.Append("function initMap() {"); sb.Append(" var map = new google.maps.Map(document.getElementById('map'), {"); sb.Append(" zoom: 8,"); sb.Append($" center: {{{firstLocation}}}"); sb.Append(" });" + Environment.NewLine); int count = 0; foreach (LocationHolder lh in locationSections) { string loc = lh.Location; if (!string.IsNullOrWhiteSpace(loc)) { sb.Append($"var marker{count} = new google.maps.Marker(" + "{"); sb.Append($"position: {{{loc}}},"); sb.Append("map: map,"); sb.Append("animation: google.maps.Animation.DROP,"); sb.Append($"url: '{lh.FilmSiteLink}',"); sb.Append($"title: '{lh.FilmName}'"); sb.Append("});" + Environment.NewLine); sb.Append($"google.maps.event.addListener(marker{count}, 'click', function() "); sb.Append("{"); sb.Append($"window.location.href = marker{count}.url;"); sb.Append("});" + Environment.NewLine); count++; } } sb.Append("}" + Environment.NewLine); sb.Append("</script>" + Environment.NewLine); sb.Append($"<script async defer src='https://maps.googleapis.com/maps/api/js?key={mapId}&callback=initMap' ></script>"); sb.Append(Environment.NewLine); sb.Append(ListAllLocations()); sb.Append("</div>"); sb.Output(); }
public static void Build() { Directory.CreateDirectory(Constants.RootPath + "\\" + Constants.Shop); string htmlpath = Constants.RootPath + "\\" + Constants.Shop + "\\"; var sb = new PageBuilder("GCRAuctions.html", htmlpath, new ShopGCRAuctionsHeader(), "../"); sb.Append(NavBarHelper.NavBar("../")); sb.Append("<div class='container mt-4'>"); sb.Jumbotron("<h2>Friends of The Great Central Mainline: Auctions</h2>", "", 8); Plates(sb); /*sb.Append("<h2>Cuneo Picture Auction</h2>"); * string imageName = Constants.RawDataPath + @"\Shop\Images\Cuneo Picture Auction.jpg"; * * sb.Append("<div class='col-md-12'>"); * sb.AddImageCenter(htmlpath, htmlpath + "images", imageName); * sb.Append("</div>"); * * sb.Append("</br></br></br></br>"); * sb.Append("<p>Don’t miss this opportunity to own a beautiful piece of railway history. " + * "This is an exquisite limited edition print by celebrated railway artist Terence Cuneo. " + * "It depicts LMS Princess Coronation Class No. 46229 Duchess Of Hamilton being coaled. " + * "What’s more it is signed by the late artist to mark the return to steam of the locomotive in 1989. " + * "The image of course includes Cuneo’s trademark mouse!</p>"); * sb.Append("</br>"); * sb.Append("<p>Donated to Friends by a member of the fundraising team, the frame is in reasonable condition and the picture isn’t faded at all. " + * "At 36 inches across and 29 inches tall you’ll need a good sized wall to hang it from but it will definitely be a conversation starter. " + * "We’re selling the print by auction with every penny going to the Reunification project.</p>"); * sb.Append("</br></br>"); * sb.Append("</br>"); * sb.Append("This Auctions has now ended"); * sb.Append("</br></br>"); * sb.Append("With the winning bid by Hugh Penri-Williams for the value of £1000."); * sb.Append("</br>"); * sb.Append("</br>"); * sb.Append("Another auction will be starting soon."); * sb.Append("</br></br>"); * sb.Append("</br></br>"); * sb.Append("</br></br>"); */ /*sb.Append("<p>Bids should start at £100, please submit your best offer via email to <strong>[email protected]</strong></p>"); * sb.Append("<p>or by post to</p>"); * * sb.Append("<div class='col-md-10'>"); * * sb.Append("<h4>'FoGCML' Cuneo Picture Auction</br>" + * "Lovatt House</br>" + * "3 Wharncliffe Road</br>" + * "Loughborough</br>" + * "LE11 1SL</br>" + "</h4>"); * sb.Append("</div>"); * * sb.Append("</br>"); * sb.Append("<p>Please include with your bid, your name, postal address and contact telephone number.</p>"); * sb.Append("<h2>The latests Bid is at £1001!</h2>"); * sb.Append("<p>The best bid received by midday on the 31st of January 2022 will receive the print - with free collection to be arranged at Loughborough Central station or by delivery to a UK address via courier at additional cost.</p>"); * * sb.Append("<p>We will be showing the print on the friends stand (Loughborough station platform No1) </p>"); * sb.Append("<p>At the <a href='https://www.gcrailway.co.uk/special-events/last-hurrah-of-the-season/'>Last Hurrah</a> on the November 20th & 21st "); * sb.Append("and The Winter Gala - January 28th, 29th & 30th</p>"); * sb.Append("<p>Thank you for your support.</p>"); * * sb.Append("</br>"); * sb.Append("</br>"); * string link = $"<a href='https://www.gcrailway.co.uk/unify/' >here</a>"; * sb.Append($"<p>For more details about Reunification click {link}</p>"); * * sb.Append("More images can be seen here, Click on one to take a closer look."); * AddGallrey(sb, Constants.RawDataPath + @"\Shop\CuneoImages", Constants.DriveLetter + @"Trains\_WebsiteData\Shop\CuneoImages"); * * sb.Append("</br>");*/ sb.Append("</div>"); sb.Output(); }