private void CreateArticle(SDArticle article, SDRepository repository, IStrings strings, string outputPath)
        {
            if (!string.IsNullOrEmpty(article.Content) && article.Content != "SDDoc")
            {
                var articleTemplate = new ArticleTemplate { Repository = repository, Article = article, Strings = strings };
                File.WriteAllText(Path.Combine(outputPath, "article", string.Format("{0}.html", article.Title.Replace(" ", "_"))), articleTemplate.TransformText());
            }

            if (article.Content != "SDDoc")
            {
                foreach (var child in article.Children)
                {
                    CreateArticle(child, repository, strings, outputPath);
                }
            }
        }
Beispiel #2
0
        private SDArticle GetArticle(string line, string language)
        {
            var splitted = line.Split('#');
            var articleContent = string.Empty;

            if (splitted.Length > 1)
            {
                if (splitted[1] == "SDDoc")
                {
                    articleContent = "SDDoc";
                }
                else
                {
                    var articleFileName = language.ToLower() != "default" ? string.Format("{0}.{1}", language, splitted[1]) : splitted[1];
                    var articleFile = _articles.SingleOrDefault(a => Path.GetFileNameWithoutExtension(a) == articleFileName);
                    articleContent = !string.IsNullOrEmpty(articleFile) ? File.ReadAllText(articleFile) : string.Empty;
                }
            }

            var article = new SDArticle();
            article.Title = GetNavTitle(splitted[0]);
            article.Content = articleContent;

            return article;
        }