private void ProcessWikiSearch(HttpContext context, int parentID, int userID, string searchTerm) { SearchResults wikiResults = WikiArticlesView.GetPortalSearchWikiResults(searchTerm, LoginUser.Anonymous, parentID); List <WikiSearchItem> result = GetWikiResults(wikiResults, LoginUser.Anonymous, userID, parentID); WriteJson(context, result); }
private List <WikiSearchItem> GetWikiResults(SearchResults results, LoginUser loginUser, int userID, int parentID) { List <WikiSearchItem> items = new List <WikiSearchItem>(); WikiArticlesView articles = new WikiArticlesView(loginUser); articles.LoadByOrganizationID(parentID); for (int i = 0; i < results.Count; i++) { results.GetNthDoc(i); int articleID = int.Parse(results.CurrentItem.Filename); if (articleID > 0) { WikiSearchItem item = new WikiSearchItem(); var article = articles.FindByArticleID(articleID); if (article != null) { item.HitRating = results.CurrentItem.ScorePercent; item.Article = article.GetProxy(); items.Add(item); } } } return(items); }
override protected void GetNextRecord() { WikiArticlesViewItem wiki = WikiArticlesView.GetWikiArticlesViewItem(_loginUser, _itemIDList[_rowIndex]); _lastItemID = wiki.ArticleID; UpdatedItems.Add((int)_lastItemID); DocText = HtmlToText.ConvertHtml(wiki.Body == null ? string.Empty : wiki.Body); _docFields.Clear(); foreach (DataColumn column in wiki.Collection.Table.Columns) { object value = wiki.Row[column]; string s = value == null || value == DBNull.Value ? "" : value.ToString(); AddDocField(column.ColumnName, s); } DocFields = _docFields.ToString(); DocId = wiki.ArticleID; DocIsFile = false; DocName = wiki.ArticleID.ToString(); DocDisplayName = wiki.ArticleName; DocCreatedDate = wiki.CreatedDate; DocModifiedDate = DateTime.UtcNow; }
override protected void LoadData() { WikiArticlesView wikis = new WikiArticlesView(_loginUser); wikis.LoadForIndexing(_organizationID, _maxCount, _isRebuilding); foreach (WikiArticlesViewItem wiki in wikis) { _itemIDList.Add(wiki.ArticleID); } }
public static string GetWikiArticlesViewItem(RestCommand command, int articleID) { WikiArticlesViewItem wikiArticlesViewItem = WikiArticlesView.GetWikiArticlesViewItem(command.LoginUser, articleID); if (wikiArticlesViewItem.OrganizationID != command.Organization.OrganizationID) { throw new RestException(HttpStatusCode.Unauthorized); } return(wikiArticlesViewItem.GetXml("WikiArticlesViewItem", true)); }
private void LoadWikiArticles() { WikiArticlesView view = new WikiArticlesView(UserSession.LoginUser); view.LoadByOrganizationID(UserSession.LoginUser.OrganizationID); cmbWikiArticle.Items.Add(new RadComboBoxItem("Unassigned", "")); foreach (WikiArticlesViewItem item in view) { cmbWikiArticle.Items.Add(new RadComboBoxItem(item.ArticleName, item.ArticleID.ToString())); } }
public static string GetWikiArticles(RestCommand command, bool orderByDateCreated = false, int?limitNumber = null) { WikiArticlesView wikiArticles = new WikiArticlesView(command.LoginUser); if (orderByDateCreated) { wikiArticles.LoadByOrganizationID(command.Organization.OrganizationID, "CreatedDate DESC", limitNumber); } else { wikiArticles.LoadByOrganizationID(command.Organization.OrganizationID); } return(wikiArticles.GetXml("Wiki", "Article", true, command.Filters)); }
public static string GetWikiArticlesView(RestCommand command) { WikiArticlesView wikiArticlesView = new WikiArticlesView(command.LoginUser); wikiArticlesView.LoadByOrganizationID(command.Organization.OrganizationID); if (command.Format == RestFormat.XML) { return(wikiArticlesView.GetXml("WikiArticlesView", "WikiArticlesViewItem", true, command.Filters)); } else { throw new RestException(HttpStatusCode.BadRequest, "Invalid data format"); } }
public static string GetWikiArticle(RestCommand command, int articleID) { WikiArticlesViewItem wikiArticle = WikiArticlesView.GetWikiArticlesViewItem(command.LoginUser, articleID); if (wikiArticle.OrganizationID != command.Organization.OrganizationID) { throw new RestException(HttpStatusCode.Unauthorized); } if (wikiArticle.Private == true) { throw new RestException(HttpStatusCode.Forbidden, "Private wiki articles cannot be retrieved by the API"); } return(wikiArticle.GetXml("Article", true)); }