Exemplo n.º 1
0
 //论坛区内容
 public JsonResult forumItemContent(int pageNum)
 {
     if (pageNum < 1)
     {
         pageNum = 1;
     }
     postInfo[]    info  = Tools.GetForumAll(pageNum);
     ArticleItem[] items = new ArticleItem[info.Length];
     for (int count = 0; count < info.Length; count++)
     {
         userInfo user = Tools.GetUserInfo((int)info[count].userId);
         items[count]         = new ArticleItem();
         items[count].Name    = user.userName;
         items[count].Title   = info[count].postTitle;
         items[count].HeadAdr = user.userHeaderPic;
         items[count].Url     = Url.Action("forumDetail", "Home", new { num = info[count].postId });
         int    length = 20;
         string intro  = Tools.GetNoHTMLString(info[count].postContent);
         if (intro.Length < 20)
         {
             length = intro.Length;
         }
         items[count].Introduction = intro.Substring(0, length);
     }
     return(Json(items, JsonRequestBehavior.AllowGet));
 }
Exemplo n.º 2
0
        public async Task <IActionResult> PutArticleItem(long id, ArticleItem articleItem)
        {
            if (id != articleItem.Id)
            {
                return(BadRequest());
            }

            _context.Entry(articleItem).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!ArticleItemExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
Exemplo n.º 3
0
        /// <summary>
        /// 载入修改数据
        /// </summary>
        /// <param name="Id"></param>
        /// <returns></returns>
        public ActionResult Update(int Id)
        {
            string      title      = "请选择";
            var         result     = _articleContract.Edit(Id);
            ArticleItem item       = _articleItemContract.ArticleItems.FirstOrDefault(x => x.Id == result.ArticleItemId);
            var         parentItem = _articleItemContract.SelectList(string.Empty);
            int         parentId   = item.Parent.Id;

            result.ParentArticleItemId = parentId;
            var childItem = _articleItemContract.SelectList(string.Empty, parentId);

            ViewBag.ArticleItem = parentItem;
            ViewBag.ChildItem   = childItem;
            List <SelectListItem> listItem = _TemplateContract.SelectList(title, TemplateFlag.Article);

            if (result.TemplateId != null)
            {
                foreach (SelectListItem selectItem in listItem)
                {
                    selectItem.Selected = false;
                }
            }
            ViewBag.ArticleTemplate = _TemplateContract.SelectList(title, TemplateFlag.Article);

            return(PartialView(result));
        }
Exemplo n.º 4
0
        void Articles_DownloadStringCompleted(object senders, DownloadStringCompletedEventArgs e)
        {
            try
            {
                List <ArticleItem> contentList = new List <ArticleItem>();
                JObject            ArtObject   = JObject.Parse(e.Result);

                JArray ArtArray = (JArray)ArtObject["posts"];
                int    count    = 0;

                while (count < ArtArray.Count)
                {
                    ArticleItem article = new ArticleItem();
                    article.ImgSrc     = ArtArray[count]["featured_image"].ToString();
                    article.Title      = ArtArray[count]["title"].ToString();
                    article.Author     = ArtArray[count]["author"]["name"].ToString();
                    article.ArticleURL = ArtArray[count]["URL"].ToString();
                    contentList.Add(article);
                    count++;
                }

                featured.ItemsSource = contentList.ToList();
            }
            catch (Exception error)
            {
                MessageBox.Show("A network error has occured");
                Console.WriteLine("An error occured: " + error);
            }
        }
Exemplo n.º 5
0
        private ArticleItem CreateCatalogItem(string[] column, string[] headers)
        {
            if (column.Count() != headers.Count())
            {
                throw new Exception($"column count '{column.Count()}' not the same as headers count'{headers.Count()}'");
            }

            string catalogTypeName = column[Array.IndexOf(headers, "catalogtypename")].Trim('"').Trim();

            string priceString = column[Array.IndexOf(headers, "price")].Trim('"').Trim();

            if (!Decimal.TryParse(priceString, NumberStyles.AllowDecimalPoint, CultureInfo.InvariantCulture, out Decimal price))
            {
                throw new Exception($"price={priceString}is not a valid decimal number");
            }

            var articleItem = new ArticleItem()
            {
                Id        = Convert.ToInt32(column[Array.IndexOf(headers, "Id")].Trim('"').Trim()),
                Pid       = column[Array.IndexOf(headers, "Pid")].Trim('"').Trim(),
                Title     = column[Array.IndexOf(headers, "Title")].Trim('"').Trim(),
                Content   = column[Array.IndexOf(headers, "Content")].Trim('"').Trim(),
                ImagePath = column[Array.IndexOf(headers, "ImagePath")].Trim('"').Trim(),
                Checked   = Convert.ToBoolean(column[Array.IndexOf(headers, "Checked")].Trim('"').Trim()),
            };

            return(articleItem);
        }
Exemplo n.º 6
0
        public async Task <RootObject> RequestArticleScrapeAsync(ArticleItem toScrape)
        {
            using (HttpClient httpClient = new HttpClient())
            {
                string address = ScrapyBaseAddress + ":" + ScrapyPort;
                httpClient.BaseAddress = new Uri(address);
                httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
                httpClient.DefaultRequestHeaders.AcceptEncoding.Add(new StringWithQualityHeaderValue("utf-8"));

                string endpoint = ScrapyEndpoint;

                try
                {
                    var content = new StringContent("{\"url\":\"" + toScrape.Uri + "\"}", Encoding.UTF8, "application/json");
                    HttpResponseMessage response = await httpClient.PostAsync(endpoint, content);

                    if (response.IsSuccessStatusCode)
                    {
                        string jsonResponse = await response.Content.ReadAsStringAsync();

                        return(JsonConvert.DeserializeObject <RootObject>(jsonResponse));
                    }
                    else
                    {
                        return(null);
                    }
                }
                catch (Exception)
                {
                    return(null);
                }
            }
        }
Exemplo n.º 7
0
        public override string GetLinkText(string linkId)
        {
            string textToReturn = string.Empty;

            ArticleItem item = SearchService.GetArticleByNumber(linkId);

            if (item == null)
            {
                return(string.Empty);
            }

            textToReturn += "\"" + item._Name + "\" ";

            using (var db = new SitecoreService(Constants.MasterDb))
            {
                var  articleItem     = db.GetItem <Item>(item._Id);
                var  publicationItem = ArticleExtension.GetAncestorItemBasedOnTemplateID(articleItem);
                Guid publicationGuid = publicationItem.ID.Guid;
                var  publication     = db.GetItem <ISite_Root>(publicationGuid);
                textToReturn += "\"" + publication?.Publication_Name + "\" ";
            }

            // Not sure that we have an issue anymore
            //var issue = item.GetIssue();
            //textToReturn += issue.FormattedDate;

            return(textToReturn);
        }
Exemplo n.º 8
0
 public void AddArticleData(Article article)
 {
     article.count++;
     if (articles.Contains(article))
     {
         //更新显示
         for (int i = 0; i < bagGrids.Length; i++)
         {
             if (bagGrids[i].ArticleItem != null)
             {
                 if (bagGrids[i].ArticleItem.Article == article)
                 {
                     bagGrids[i].ArticleItem.SetArticle(article);
                     bagGrids[i].ArticleItem.ScaleMoveToOne(1.2f);
                     break;
                 }
             }
         }
     }
     else
     {
         articles.Add(article);
         //显示
         ArticleItem articleItem = GetArticleItem().GetComponent <ArticleItem>();
         articleItem.SetArticle(article);
         GetBagGrid().SetArticleItem(articleItem);
         articleItem.ScaleMoveToOne(1.2f);
     }
 }
        public ActionResult PreviewArticleArchived(string articleid)
        {
            DataAccessLayer datalayer   = null;
            ArticleItem     articleItem = null;
            PostViewModel   PostVM      = null;
            List <TagItem>  tags        = null;
            int             articleID_int;

            if (int.TryParse(articleid, out articleID_int) && articleID_int >= 1)
            {
                datalayer   = new DataAccessLayer();
                articleItem = datalayer.GetArticleArchivedDetails(articleID_int);

                if (articleItem != null)
                {
                    PostVM             = new PostViewModel();
                    PostVM.ArticleItem = articleItem;
                    //populate tags
                    if (!string.IsNullOrEmpty(articleItem.Tag_Article))
                    {
                        tags = new List <TagItem>();
                        var tagSplit = articleItem.Tag_Article.Split(',');
                        for (var i = 0; i < tagSplit.Length - 1; i++)
                        {
                            TagItem tagitem = new TagItem {
                                id = i, name = tagSplit[i]
                            };
                            tags.Add(tagitem);
                        }
                        PostVM.ArticleItem.Tags = tags;
                    }
                }
            }
            return(PartialView(PostVM));
        }
Exemplo n.º 10
0
        public static void SeedSampleData(ApplicationDbContext context)
        {
            var sameArticle = new ArticleItem {
                ArticleNumber = "9IOkSWdpQO4NpPsYgsfBlCcLVO0NfVke"
            };

            context.SaleItems.AddRange(
                new SaleItem {
                ArticleItem = sameArticle, SalesPriceInEuro = 3.99m, DateTimeOffset = DateTimeOffsetNow
            },
                new SaleItem {
                ArticleItem = sameArticle, SalesPriceInEuro = 5.88m, DateTimeOffset = DateTimeOffsetNow
            },
                new SaleItem {
                ArticleItem = new ArticleItem {
                    ArticleNumber = "XoLEU9UXv88hwLkDIS22D42NpgfJRrM8"
                }, SalesPriceInEuro = 1028.44m, DateTimeOffset = DateTimeOffsetNow.AddDays(1)
            },
                new SaleItem {
                ArticleItem = new ArticleItem {
                    ArticleNumber = "tsSP6rjwmofYq1M7tWIvkQTDDdhNXSbT"
                }, SalesPriceInEuro = 66.33m, DateTimeOffset = DateTimeOffsetNow.AddDays(-1)
            },
                new SaleItem {
                ArticleItem = new ArticleItem {
                    ArticleNumber = "yHmnIBDPWz6RZLPYO4XSpsAdKf8G3A2B"
                }, SalesPriceInEuro = 139.66m, DateTimeOffset = DateTimeOffsetNow.Date
            }
                );

            context.SaveChanges();
        }
Exemplo n.º 11
0
        public async Task <ActionResult <ArticleItem> > PostArticleItem(ArticleItem articleItem)
        {
            _context.ArticleItems.Add(articleItem);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetArticleItem", new { id = articleItem.Id }, articleItem));
        }
Exemplo n.º 12
0
        public ExportResult ExportNlm(ArticleItem article, ExportType exportType, PublicationType?type = null)
        {
            try
            {
                // Generate NLM XML
                var stream = GenerateNlm(article, type);

                // Validate NLM
                var validationResult = _.ValidationService.ValidateXml(stream);
                if (validationResult.ValidationSuccessful)
                {
                    // Write to disk
                    var exportFolder = Path.GetFullPath(_.Settings.NlmExportPath);
                    Directory.CreateDirectory(exportFolder);
                    var fileName = GetFilenamePrefix(article) + ".xml";

                    using (var file = File.Open(Path.Combine(exportFolder, fileName), FileMode.Create))
                    {
                        stream.Seek(0, SeekOrigin.Begin);
                        stream.CopyTo(file);
                    }
                }

                return(Result(validationResult));
            }
            catch (Exception ex)
            {
                return(Result(ex: ex));
            }
        }
Exemplo n.º 13
0
        public ActionResult EditForm(int?id)
        {
            var obj = new ArticleItem();

            var listArticleType = articleTypeRepository.GetListForTree <object>();

            var listArticleGroup = articleGroupRepository.GetListForTree <object>();
            var listRef          = new List <ArticleItem>();

            if (id.HasValue)
            {
                obj     = articleRepository.GetItemById <ArticleItem>(id.Value);
                listRef = articleRepository.GetByListId(obj.RelatedArticles);
            }
            else
            {
                obj.ListGroupID = new int[0];
            }
            return(Json(new
            {
                data = obj,
                listType = listArticleType,
                listGroup = listArticleGroup,
                listRef = listRef
            }, JsonRequestBehavior.AllowGet));
        }
Exemplo n.º 14
0
        public ArticlePreviewInfo Post([FromBody] string articleNumber)
        {
            ArticleItem article = _articleUtil.GetArticleByNumber(articleNumber);
            var         preview = article != null?_articleUtil.GetPreviewInfo(article) : new ArticlePreviewInfo();

            return(preview);
        }
Exemplo n.º 15
0
        /// <summary>
        /// Saves article text and fields that are dependent on the article text
        /// </summary>
        /// <param name="article"></param>
        /// <param name="articleText"></param>
        /// <param name="articleStruct"></param>
        public void SaveArticleDetailsAndText(ArticleItem article, string articleText, ArticleStruct articleStruct)
        {
            try
            {
                using (new SecurityDisabler())
                {
                    article = SaveArticleDetails(article, articleStruct, true, true);
                    string parsedText = ParseXmltoHtml(articleText);
                    article.Body = articleText;
                    if (articleText != parsedText)
                    {
                        article.Body = parsedText;
                    }

                    string companyIdsCsv;
                    article.Body = CompanyTokenizer.ReplaceStrongCompanyNamesWithToken(articleText, out companyIdsCsv);
                    article.Referenced_Companies = companyIdsCsv;

                    _sitecoreMasterService.Save(article);
                }
            }
            catch (Exception ex)
            {
                Sitecore.Diagnostics.Log.Error("SaveArticleDetailsAndText: " + ex.ToString(), this);
                throw;
            }
        }
Exemplo n.º 16
0
        public string GetCData(ArticleItem item)
        {
            var str = "";

            str += "![CDATA[<!doctype html><html lang=\"en\" prefix=\"op: http://sdfsdfsd.com\"><head><meta charset=\"utf-8\"><link rel=\"canonical\" href=\"" + "http://babauonline.com/" + item.ArticleType.NameAscii + "/" + item.TitleAscii + "-" + item.ID + "\"><meta property=\"op:markup_version\" content=\"v1.0\"></head><body><article><header>" + item.Title + "</header>" + item.Detail + "<footer></footer></article></body></html>]]>";
            return(str);
        }
Exemplo n.º 17
0
        public TableCell GetCell(ArticleItemWrapper articleItemWrapper)
        {
            ArticleItem articleItem = articleItemWrapper.InnerItem;
            var         cell        = new TableCell();
            var         text        = new TextBox
            {
                Text     = articleItemWrapper.NotesToEditorial,
                TextMode = TextBoxMode.MultiLine,
                Rows     = 5,
                CssClass = "block",
                ID       = "ta_" + articleItem.ID
            };

            text.EnableViewState = false;
            var refresh = new Button
            {
                Text = "Save"
            };

            text.Attributes.Add("itemID", articleItem.ID.ToString());
            refresh.Attributes.Add("itemID", articleItem.ID.ToString());
            refresh.OnClientClick = "UpdateEditorialNote('" + articleItem.ID.ToString() + "'); return false;";
            cell.Controls.Add(text);
            cell.Controls.Add(refresh);
            return(cell);
        }
        public ActionResult ArticlePublishedOption(int articleid)
        {
            ArticleViewModel articleVM   = null;
            ArticleItem      articleItem = null;
            DataAccessLayer  datalayer   = null;
            List <TagItem>   tags        = null;

            //Guid userId;

            articleVM = new ArticleViewModel();

            if (Session["UserProfile"] != null)
            {
                UserProfileItem userprofile = (UserProfileItem)Session["UserProfile"];
                //articleVM.Userprofile = userprofile;
                //userId = userprofile.ID;

                datalayer   = new DataAccessLayer();
                articleItem = datalayer.GetArticlePublishedDetails(articleid, userprofile.ID);

                if (articleItem != null)
                {
                    articleVM.ArticleItem = articleItem;

                    if (!string.IsNullOrEmpty(articleItem.Tag_Article))
                    {
                        tags = new List <TagItem>();
                        var tagSplit = articleItem.Tag_Article.Split(',');
                        for (var i = 0; i < tagSplit.Length - 1; i++)
                        {
                            TagItem tagitem = new TagItem {
                                id = i, name = tagSplit[i]
                            };
                            tags.Add(tagitem);
                        }
                        articleVM.ArticleItem.Tags = tags;
                    }
                }
                else
                {
                    articleVM             = new ArticleViewModel();
                    articleVM.ArticleItem = new ArticleItem();
                    ModelState.AddModelError("", "Article Not Exist or Some error occured while fetching article details.");
                    StringBuilder script = new StringBuilder();
                    script.Append("<script type='text/javascript'>");
                    script.Append("$('#error_alert').show();");
                    script.Append("</script>");
                    ViewBag.StartScript = script.ToString();
                    return(View(articleVM));
                }
            }
            else
            {
                return(RedirectToAction("Authenticate", "Account"));
            }


            return(View(articleVM));
        }
Exemplo n.º 19
0
        public async Task <ActionResult <ArticleItem> > GetArticleById([FromRoute] int articleId)
        {
            ArticleItemDto articleItemDto = await _articleRepository.GetArticleById(articleId);

            ArticleItem articleItem = _mapper.Map <ArticleItem>(articleItemDto);

            return(Ok(articleItem));
        }
Exemplo n.º 20
0
    //加载一个物品
    public ArticleItem LoadArticleItem(Article article)
    {
        GameObject  obj         = GetArticleItem();
        ArticleItem articleItem = obj.GetComponent <ArticleItem>();

        articleItem.SetArticle(article);
        return(articleItem);
    }
Exemplo n.º 21
0
        public JsonResult GetList(int PageIndex = 1, int PageSize = 10)
        {
            OperationResult oper = new OperationResult(OperationResultType.Error, "服务器忙,请稍后");

            try
            {
                string               strId       = Request["Id"];
                int                  id          = int.Parse(strId);
                ArticleItem          articleItem = _articleItemContract.View(id);
                List <int>           listId      = articleItem.Children.Select(x => x.Id).ToList();
                IQueryable <Article> listArticle = _articleContract.Articles.Where(x => x.IsDeleted == false && x.IsEnabled == true && listId.Contains(x.ArticleItemId));
                listArticle = listArticle.OrderBy(x => x.IsHot || x.IsRecommend || x.IsTop).ThenByDescending(x => x.Hits).OrderByDescending(x => x.UpdatedTime);
                IQueryable <Article>       listArt    = listArticle.Skip((PageIndex - 1) * PageSize).Take(PageSize);
                IQueryable <Administrator> listAdmin  = _adminContract.Administrators;
                IQueryable <Member>        listMember = _memberContract.Members;
                var entity = (from ar in listArt
                              join
                              ad in listAdmin
                              on
                              ar.AdminId equals ad.Id
                              join
                              me in listMember
                              on
                              ad.Member.MemberName equals me.UniquelyIdentifies
                              select new {
                    ar.Id,
                    ar.ArticlePath,
                    ar.CoverImagePath,
                    CreatedTime = ar.CreatedTime,
                    ar.Hits,
                    ar.Title,
                    AdminName = ad.Member.MemberName,
                    me.UserPhoto,
                    ar.Summary,
                }).ToList();
                var data = entity.Select(x => new
                {
                    x.Id,
                    x.ArticlePath,
                    x.CoverImagePath,
                    CreatedTime = x.CreatedTime.ToString("yyyy-MM-dd"),
                    x.Hits,
                    x.Title,
                    x.AdminName,
                    x.UserPhoto,
                    x.Summary,
                });
                oper.ResultType = OperationResultType.Success;
                oper.Data       = data;
                oper.Message    = "获取成功";
                return(Json(oper));
            }
            catch (Exception ex)
            {
                _Logger.Error <string>(ex.ToString());
                return(Json(oper));
            }
        }
Exemplo n.º 22
0
        public int Post([FromBody] Guid articleGuid)
        {
            ArticleItem article = _sitecoreMasterService.GetItem <ArticleItem>(articleGuid);

            if (article == null)
            {
                return(-1);
            }
            return(_articleUtil.GetWordVersionNumber(article));
        }
Exemplo n.º 23
0
        public int Post([FromBody] string articleNumber)
        {
            ArticleItem article = _articleUtil.GetArticleByNumber(articleNumber);

            if (article == null)
            {
                return(-1);
            }
            return(_articleUtil.GetWordVersionNumber(article));
        }
Exemplo n.º 24
0
        public MediaItem SaveWordDocIntoMediaLibrary(ArticleItem article, string fileName, string docName, string extension)
        {
            var  item            = _sitecoreMasterService.GetItem <Item>(article._Id);
            var  publicationItem = ArticleExtension.GetAncestorItemBasedOnTemplateID(item);
            Guid publicationGuid = publicationItem.ID.Guid;
            var  articleDate     = article.Planned_Publish_Date > DateTime.MinValue ? article.Planned_Publish_Date : article.Created_Date;
            var  itemFolder      = GetMediaFolder(publicationGuid, articleDate);
            var  path            = itemFolder._Path;

            return(CreateMediaLibraryItemFromFile(fileName, docName, extension, path));
        }
Exemplo n.º 25
0
        public void SaveArticleDetails(Guid articleGuid, ArticleStruct articleStruct, bool saveDocumentSpecificData = false, bool addVersion = true)
        {
            //TODO:  Add Roles
            ArticleItem article = _sitecoreMasterService.GetItem <ArticleItem>(articleGuid);

            if (article == null)
            {
                throw new ApplicationException("Could not find article with Guid " + articleGuid);
            }
            SaveArticleDetails(article, articleStruct, saveDocumentSpecificData, addVersion);
        }
Exemplo n.º 26
0
        public void SaveArticleDetails(string articleNumber, ArticleStruct articleStruct, bool saveDocumentSpecificData = false, bool addVersion = true)
        {
            ArticleItem article = _articleUtil.GetArticleByNumber(articleNumber);

            if (article == null)
            {
                throw new ApplicationException("Could not find article for number [" + articleNumber + "]");
            }

            SaveArticleDetails(article, articleStruct, saveDocumentSpecificData, addVersion);
        }
        public ActionResult ArticleOption(int articleid)
        {
            ArticleViewModel articleVM   = null;
            ArticleItem      articleItem = null;
            DataAccessLayer  datalayer   = null;
            List <TagItem>   tags        = null;

            //Guid userId;

            articleVM = new ArticleViewModel();

            if (Session["UserProfile"] != null)
            {
                UserProfileItem userprofile = (UserProfileItem)Session["UserProfile"];
                //articleVM.Userprofile = userprofile;
                //userId = userprofile.ID;

                datalayer   = new DataAccessLayer();
                articleItem = datalayer.GetArticleEntryDetails(articleid, userprofile.ID);

                if (articleItem != null)
                {
                    articleVM.ArticleItem = articleItem;

                    if (!string.IsNullOrEmpty(articleItem.Tag_Article))
                    {
                        tags = new List <TagItem>();
                        var tagSplit = articleItem.Tag_Article.Split(',');
                        for (var i = 0; i < tagSplit.Length - 1; i++)
                        {
                            TagItem tagitem = new TagItem {
                                id = i, name = tagSplit[i]
                            };
                            tags.Add(tagitem);
                        }
                        articleVM.ArticleItem.Tags = tags;
                    }
                }
                else
                {
                    articleVM             = new ArticleViewModel();
                    articleVM.ArticleItem = new ArticleItem();
                    ModelState.AddModelError("", "Article Not Exist or Some error occured while fetching article details.");
                    return(View(articleVM));
                }
            }
            else
            {
                return(RedirectToAction("Authenticate", "Account"));
            }


            return(View(articleVM));
        }
Exemplo n.º 28
0
        /// <summary>
        /// Returns the Article which has the corresonding Article Number. Return Type is Item
        /// </summary>
        /// <param name="articleNumber"></param>
        /// <returns></returns>
        public Item GetArticleItemByNumber(string articleNumber)
        {
            ArticleItem articleItem = GetArticleByNumber(articleNumber);

            if (articleItem != null)
            {
                var article = _sitecoreMasterService.GetItem <Item>(articleItem._Id);
                return(article);
            }
            return(null);
        }
Exemplo n.º 29
0
        private static void DeleteNlm(INlmExportService exportService, ArticleItem articleItem)
        {
            if (!exportService.DeleteNlm(articleItem))
            {
                // NLM Delete failed
                SheerResponse.Alert("The deletion XML file could not be generated.");
                return;
            }

            SheerResponse.Alert("The article has been successfully exported for deletion.");
        }
Exemplo n.º 30
0
        public ActionResult GetKeyAuto(bool?isCrawler)
        {
            var webConfigApp = WebConfigurationManager.OpenWebConfiguration("~");
            var obj          = new ArticleItem {
                IsShow = Convert.ToBoolean(webConfigApp.AppSettings.Settings["IsCrawler"].Value)
            };

            return(Json(new
            {
                data = obj,
            }, JsonRequestBehavior.AllowGet));
        }
Exemplo n.º 31
0
        public static void splitArticleContent(ref ArticleItem articleItem)
        {
            if (articleItem.DisplayFormat != 1)
            {
                Regex rx = null;
                Match m = null;

                //Article header Content---------------------------------
                rx = new Regex(@"<head[^>]*>(.*?)</head>", RegexOptions.IgnoreCase | RegexOptions.Singleline);
                m = rx.Match(articleItem.Content.CompleteContent);

                if (m.Success)
                {
                    articleItem.Content.HeaderContent = m.Groups[1].Value;
                }

                //After Header and before Body content--------------------
                rx = new Regex(@"</head[^>]*>(.*?)<body", RegexOptions.IgnoreCase | RegexOptions.Singleline);
                m = rx.Match(articleItem.Content.CompleteContent);

                if (m.Success)
                {
                    articleItem.Content.AfterHeaderBeforeBodyContent = m.Groups[1].Value;
                }

                //Article Body Content------------------------------------
                articleItem.Content.BodyContent = articleItem.Content.CompleteContent;
                rx = new Regex(@"<body[^>]*>(.*?)</body>", RegexOptions.IgnoreCase | RegexOptions.Singleline);
                m = rx.Match(articleItem.Content.CompleteContent);

                if (m.Success)
                {
                    articleItem.Content.BodyContent = m.Groups[1].Value;
                }

                //After Body Content---------------------------------------
                rx = new Regex(@"</body[^>]*>(.*?)</html>", RegexOptions.IgnoreCase | RegexOptions.Singleline);
                m = rx.Match(articleItem.Content.CompleteContent);

                if (m.Success)
                {
                    articleItem.Content.AfterBodyContent = m.Groups[1].Value;
                }
            }
        }
Exemplo n.º 32
0
        public static ArticlePartialViewModel CreateArticlePartialViewModel(ArticleItem articleItem, ArticleModule articleModule,
            ArrayList categoryNamesList, ArrayList attributeNamesList, PortalType portalType,
            Dictionary<string, string> resources, int clientId, int portalId, string adminURL)
        {
            ArticlePartialViewModel articlePartialViewModel = new ArticlePartialViewModel();
            DataConfigurationRepository dataConfigurationRepository = new
                            DataConfigurationRepository(HttpContext.Current.Application["KBDataPath"].ToString(), HttpContext.Current.Application["KBInstallPath"].ToString());
            articlePartialViewModel.Resources = resources;
            articlePartialViewModel.ArticleItem = articleItem;
            articlePartialViewModel.clientId = clientId;
            articlePartialViewModel.portalId = portalId;
            if (articleModule != null)
            {
                articlePartialViewModel.ArticleConfiguration = articleModule;
            }
            else
            {
                //---- set defaults ------

            }
            List<BreadcrumbViewModel> categories = new List<BreadcrumbViewModel>();
            foreach (List<string> names in categoryNamesList)
            {
                BreadcrumbViewModel itemList = new BreadcrumbViewModel();
                itemList.NavigationList = new List<SelectListItem>();
                foreach (string name in names)
                {
                    itemList.NavigationList.Add(new SelectListItem() { Text = name, Value = string.Empty, Selected = false });
                }
                categories.Add(itemList);
            }
            articlePartialViewModel.Categories = categories;
            articlePartialViewModel.Attributes = new List<BreadcrumbViewModel>();
            List<BreadcrumbViewModel> attr = new List<BreadcrumbViewModel>();
            foreach (List<string> names in attributeNamesList)
            {
                BreadcrumbViewModel itemList = new BreadcrumbViewModel();
                itemList.NavigationList = new List<SelectListItem>();
                foreach (string name in names)
                {
                    itemList.NavigationList.Add(new SelectListItem() { Text = name, Value = string.Empty, Selected = false });
                }
                attr.Add(itemList);
            }
            articlePartialViewModel.Attributes = attr;
            articlePartialViewModel.ImageLinks = new List<ImageLinkViewModel>();
            ImageLinkViewModel imageLinkViewModel;

            //check Favorite is enabled
            if (articlePartialViewModel.ArticleConfiguration.articleControlsProperties.ArticleFavoriteDisplay)
            {
                imageLinkViewModel = new ImageLinkViewModel() { Icon = (articlePartialViewModel.ArticleItem.Favorite == true &&
                    (portalType != PortalType.Open && portalType != PortalType.Registration)) ?
                    @Utilities.GetImageUrl(clientId, portalId, "favoriteactive.png") : @Utilities.GetImageUrl(clientId, portalId, "favorite.png"),
                                                                Link = "/Article/FavoriteArticle/" + clientId + "/" + portalId,
                                                                Title = Utilities.GetResourceText(resources, "CONTROLS_FAVORITELABEL"),
                                                                ToggleIcon = (articlePartialViewModel.ArticleItem.Favorite == true ||
                                                                portalType == PortalType.Open || portalType == PortalType.Registration) ?
                                                                @Utilities.GetImageUrl(clientId, portalId, "favorite.png") :
                                                                @Utilities.GetImageUrl(clientId, portalId, "favoriteactive.png")
                };
                imageLinkViewModel.Id = "favorites";
                articlePartialViewModel.ImageLinks.Add(imageLinkViewModel);
            }

            //check Subscription is enabled
            if (articlePartialViewModel.ArticleConfiguration.articleControlsProperties.ArticleSubscribeDisplay)
            {
                imageLinkViewModel = new ImageLinkViewModel() { Icon = @Utilities.GetImageUrl(clientId, portalId, "subscribe.png"),
                    Link = "", Title = Utilities.GetResourceText(resources, "CONTROLS_SUBSCRIBELABEL"),
                    ToggleIcon = @Utilities.GetImageUrl(clientId, portalId, "subscribe_selected.png") };
                // imageLinkViewModel = new ImageLinkViewModel() { Icon = (articlesViewModel.ArticlePartialViewModel.ArticleItem.SubscriptionStatus == true && (_portal.PortalType != PortalType.Open && _portal.PortalType != PortalType.Registration)) ? @Utilities.GetImageUrl(clientId, portalId, "subscribe_select.png") : @Utilities.GetImageUrl(clientId, portalId, "subscribe.png"), Link = "/Article/ToggleArticleSubscription/" + clientId + "/" + portalId, Title = Utilities.GetResourceText(resources, "CONTROLS_SUBSCRIBELABEL"), ToggleIcon = (articlesViewModel.ArticlePartialViewModel.ArticleItem.SubscriptionStatus == true || _portal.PortalType == PortalType.Open || _portal.PortalType == PortalType.Registration) ? @Utilities.GetImageUrl(clientId, portalId, "subscribe.png") : @Utilities.GetImageUrl(clientId, portalId, "subscribe.png") };
                //imageLinkViewModel = new ImageLinkViewModel() { Icon = @Utilities.GetImageUrl(clientId, portalId, "subscribe.png"), Link = "", Title = Utilities.GetResourceText(resources,"CONTROLS_SUBSCRIBELABEL"), ToggleIcon = @Utilities.GetImageUrl(clientId, portalId, "subscribe.png") };
                imageLinkViewModel.Id = "subscribe";
                articlePartialViewModel.ImageLinks.Add(imageLinkViewModel);
            }
            //Check share is enabled
            if (articlePartialViewModel.ArticleConfiguration.articleControlsProperties.ArticleShareDisplay)
            {
                imageLinkViewModel = new ImageLinkViewModel() { Icon = @Utilities.GetImageUrl(clientId, portalId, "share.png"),
                    Link = "", Title = Utilities.GetResourceText(resources, "CONTROLS_SHARELABEL"),
                    ToggleIcon = @Utilities.GetImageUrl(clientId, portalId, "share_selected.png") };
                imageLinkViewModel.Id = "share";
                articlePartialViewModel.ImageLinks.Add(imageLinkViewModel);
            }
            if (articlePartialViewModel.ArticleConfiguration.articleControlsProperties.ArticleEditDisplay)
            {
                imageLinkViewModel = new ImageLinkViewModel() { Icon = @Utilities.GetImageUrl(clientId, portalId, "edit.png"),
                                                                Link = adminURL + "/index.aspx?aid=",
                                                                Title = Utilities.GetResourceText(resources, "CONTROLS_EDITLABEL"),
                    ToggleIcon = @Utilities.GetImageUrl(clientId, portalId, "edit.png") };
                imageLinkViewModel.Id = "edit";
                articlePartialViewModel.ImageLinks.Add(imageLinkViewModel);
            }
            articlePartialViewModel.Attachments = articleItem.Attachments;
            return articlePartialViewModel;
        }