Exemple #1
0
        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);
        }
Exemple #2
0
        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()));
        }
    }
Exemple #7
0
        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");
            }
        }
Exemple #9
0
        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));
        }