Example #1
0
        private async Task <int> CreateArticle(CreateAndEditArticleViewModel vm, AjaxResponse ajaxResponse)
        {
            var article = new Article.Article()
            {
                Title       = vm.Title,
                Content     = Base64.base64Decode(vm.Content),
                Description = vm.Description,
                Source      = vm.Source,
                CoverImg    = vm.CoverImg,

                CategoryName = vm.CategoryName,
                Status       = vm.Status ?? 0,

                CreateTime = DateTime.Now,
                UpdateTime = DateTime.Now
            };
            var r = await _articleManager.CreateAsync(article);

            if (r.Succeeded)
            {
                return(article.Id);
            }

            _logger.LogWarning("添加文章失败");
            ajaxResponse.Errors.Add(new ErrorInfo(-1, r.Errors.FirstOrDefault()?.Description ?? "添加文章失败"));
            return(0);
        }
Example #2
0
        public virtual async Task CreateContestAsync(CreateContestInput input)
        {
            var description = new Article.Article
            {
                Title   = input.DescriptionTitle,
                Content = input.DescriptionContent
            };

            var contest = new Contest
            {
                Name            = input.Name,
                Description     = description,
                SignUpStartTime = input.SignUpStartTime,
                SignUpEndTime   = input.SignUpEndTime,
                Result          = null
            };

            await _contestManager.Create(contest);
        }
Example #3
0
        /// <summary>
        /// Generate the TOC
        /// </summary>
        private void PrepareTOC(Article.Article artc)
        {
            // Create a TOC Article
            Article.Article tocArticle = artc;

            FeatureTemplate tocTemplate = NonParameterizedTemplate.Spawn(FindTemplate(tocArticle.GetType().FullName, tocArticle), this, tocArticle) as FeatureTemplate;

            tocArticle.Title = tocArticle.Title ?? tocTemplate.GetTitle();

            // Populate Toc Article
            tocArticle.Content = globalTemplate.FillTemplate(tocTemplate);

            // Create child TOC if they are empty
            if (tocArticle.Children != null)
            {
                for (int i = 0; i < tocArticle.Children.Count; i++)
                {
                    PrepareTOC(tocArticle.Children.Data[i]);
                }
            }
        }