Ejemplo n.º 1
0
        private async Task <IClientArticle> InsertArticle(IClientArticle article, Guid Id)
        {
            // Turn the basic article into a Json blob
            var articleData = new ArticleFileData(article, Id);
            // Then store the info in table
            var articleDetails    = new ArticleDetails(article, Id);
            var articleBlobString = JsonConvert.SerializeObject(articleData);

            var articleDetailsTable = await articleDetailsStorage.Value;
            var articleBlobStore    = await articleBlobStorage.Value;
            await articleDetailsTable.Insert(articleDetails);

            await articleDetailsTable.Insert(new ArticleDetailsUrlId(articleDetails.Url, articleDetails.Id));

            await articleBlobStore.AddNewStringFile(articleBlobString, $"{Id}.json");

            return(new CompleteArticle(article, Id));
        }
Ejemplo n.º 2
0
        public ActionResult Index(int?page, int Category = 0, String keyword = "")
        {
            if (Session["userid"] == null)
            {
                return(RedirectToAction("Login", "Account"));
            }

            if (WebConfigure.GetLoginPortal() == "true" && Common.GetUserXupj().ToLower() != Session["username"].ToString().ToLower())
            {
                return(RedirectToAction("Login", "Account"));
            }

            ViewBag.Download     = WebConfigure.GetDomain() + "/Upload/Document/" + WebConfigure.GetUserGuideNameFileWithExtention();
            ViewBag.Domain       = domain(isLocal);
            ViewBag.CategoryName = Category == 0 ? null : _articleCategoryBs.GetDetail(Category).Name;
            ViewBag.IconCategory = Category == 0 ? null : _articleCategoryBs.GetDetail(Category).Icon;
            if (WebConfigure.GetLoginPortal() == "true" && Common.GetUserXupj() != "" && Session["userid"] == null)
            {
                return(RedirectToAction("Login", "Account"));
            }
            if (Session["username"] != null)
            {
                if (WebConfigure.GetLoginPortal() == "true" && Common.GetUserXupj().ToLower() != Session["username"].ToString().ToLower())
                {
                    return(RedirectToAction("Login", "Account"));
                }
            }
            ViewBag.UseFullLink = _articleBs.getUseFullLink().Count > 0 ? _articleBs.getUseFullLink() : null;
            List <Article> listArtikel = null;

            //var start = 6 * (Convert.ToInt32(1) - 1);
            if (Category == 0)
            {
                listArtikel = _literatureService.GetListkeyword(keyword);
            }
            else
            {
                listArtikel = _literatureService.GetListbyCategory(Category, keyword);
            }

            #region Category

            ViewBag.Domain        = WebConfigure.GetDomain();
            ViewBag.ListCategory1 = _articleCategoryBs.GetListCategoryMostUsedLiterature(0);
            ViewBag.key           = keyword;
            #endregion

            List <ArticleFileData>   ArticleData     = new List <ArticleFileData>();
            List <CustomArticleTags> ArticleTagsData = new List <CustomArticleTags>();
            if (listArtikel != null)
            {
                foreach (var item in listArtikel)
                {
                    List <String> FileData = _articleFileBs.GetNamefileByRoleColor(item.ArticleId, item.LevelUser);
                    if (FileData.Count > 0)
                    {
                        ArticleFileData filedata = new ArticleFileData()
                        {
                            idFile = item.ArticleId,
                            Name   = FileData,
                            Level  = _articleFileBs.GetLevelFileByRoleColor(item.ArticleId, item.LevelUser)
                        };
                        ArticleData.Add(filedata);
                    }
                    var TagsData           = _articleTagsBs.GetTagsByArticle(item.ArticleId);
                    CustomArticleTags tags = new CustomArticleTags()
                    {
                        ArticleId = item.ArticleId,
                        Object    = TagsData.Count == 0 ? null : TagsData
                    };
                    ArticleTagsData.Add(tags);
                }
            }
            ViewBag.LiteratureTags = ArticleTagsData;
            ViewBag.keyword        = keyword;
            ViewBag.LiteratureItem = ArticleData;
            int pageSize   = 50;
            int pageNumber = (page ?? 1);
            return(View(listArtikel.ToPagedList(pageNumber, pageSize)));
        }