Пример #1
0
        public override string GetPath(TransformationData data)
        {
            if (isInternalOutput)
            {
                if (IsBookmark)
                {
                    return("index.html#" + BookmarkName);
                }
                else
                {
                    return("index.html#" + DocumentPathId(DocumentPath.ToLower()));
                }
            }

            var path =
                Path.Combine(
                    FileHelper.GetRelativePath(
                        Path.GetDirectoryName(data.Document.LocalPath), Path.GetDirectoryName(DocumentPath)),
                    "index.html");

            if (IsBookmark)
            {
                var bookmark = data.ProcessedDocumentCache.Get(DocumentPath).GetBookmark(BookmarkName);
                if (bookmark == null)
                {
                    throw new EMPathVerificationException(Language.Message("BookmarkNotFound", BookmarkName));
                }

                path += "#" + bookmark.UniqueKey;
            }

            return(Normalizer.NormalizePath(path));
        }