


@foreach (var child in PublicationModel.ProjectModel.TableOfContents.Children) { @RenderTOCLevel(PublicationModel, child, 0); }
@using Mediaparts.Features.PublicationExporting.DAL.Razor @using Mediaparts.Features.PublicationExporting.DAL.Razor.Contexts @using Mediaparts.Features.PublicationExporting.DAL.Razor.PageContent @using Mediaparts.Features.PublicationExporting.DAL.Razor.Settings @{ RazorBaseContext PublicationModel = null; string tocURL = "./toc.html"; var IS_DEBUG = false; if (Model is RazorBaseContext) { PublicationModel = (RazorBaseContext)Model; //Костыль, потому что basic находится в папке assets/basic-html PublicationModel.DynamicFilesFolder = new Uri("./..", UriKind.Relative); PublicationModel.StaticFilesFolder = new Uri(".", UriKind.Relative); } else { //Fill this to debug PublicationModel = new RazorBaseContext(); PublicationModel.DynamicFilesFolder = new Uri("./debug", UriKind.Relative); PublicationModel.StaticFilesFolder = new Uri(".", UriKind.Relative); using (var fs = File.OpenRead(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "debug/model.bin"))) { var deserializer = new System.Runtime.Serialization.Formatters.Binary.BinaryFormatter(); PublicationModel.ProjectModel = (RazorProjectModel)deserializer.Deserialize(fs); } tocURL = "./toc.cshtml"; IS_DEBUG = true; } if (PublicationModel.ProjectModel.TableOfContents == null || !PublicationModel.ProjectModel.TableOfContents.Children.Any()) { tocURL = String.Empty; } } @{ int lastIndex = PublicationModel.ProjectModel.Pages.Count() - 1; var bgColor = System.Drawing.ColorTranslator.ToHtml(PublicationModel.ProjectModel.Styles.PublicationBackgroundColor); var textColor = System.Drawing.ColorTranslator.ToHtml(PublicationModel.ProjectModel.Styles.BackgroundTextСolor); string coverPath = PublicationModel.DynamicFilesFolder + "/flash/pages/page0001_s." + ImageFormat(PublicationModel.ProjectModel.Pages.ElementAt(0).ThumbnailImageType); string bgImage = (PublicationModel.ProjectModel.Styles.PublicationBackgroundImage == null) ? "" : (PublicationModel.DynamicFilesFolder + "/" + PublicationModel.ProjectModel.Styles.PublicationBackgroundImage.OriginalString); } @helper RenderTOCLevel(RazorBaseContext publicationModel, RazorTocItem item, int level) {
@item.Name |
@(PageModelById(publicationModel,item.PageId).UrlHeader) |