/*
Kooboo is a content management system based on ASP.NET MVC framework. Copyright 2009 Yardi Technology Limited.
This program is free software: you can redistribute it and/or modify it under the terms of the
GNU General Public License version 3 as published by the Free Software Foundation.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program.
If not, see http://www.kooboo.com/gpl3/.
*/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Everest.Library.ExtensionMethod;
namespace Everest.CmsServices.Models{
public class SearchedContent
{
public SearchedContent()
{
this.ExternalFields = new Dictionary<string, object>();
}
public string Title { get; set; }
public int ContentId { get; set; }
public Guid ContentUUID { get; set; }
public string UserKey { get; set; }
public string Application { get; set; }
public Guid SchemaUUID { get; set; }
public Guid FolderUUID { get; set; }
public Guid OriginalFolderUUID { get; set; }
public string UserName { get; set; }
public Guid? BaseUUID { get; set; }
public Guid OriginalUUID { get; set; }
public DateTime PostDate { get; set; }
public DateTime? ModifiedDate { get; set; }
public string Categories { get; set; }
public string Applications { get; set; }
private string indexedBody;
/// <summary>
/// Gets or sets the indexed body.
///
/// </summary>
/// <value>The indexed body.</value>
public string IndexedBody
{
get
{
if (StringExtensions.IsNullOrEmptyTrim(indexedBody))
{
StringBuilder indexedBuilder = new StringBuilder();
foreach (var item in this.ExternalFields)
{
if (item.Value != null && !StringExtensions.IsNullOrEmptyTrim(item.Value.ToString()))
{
indexedBuilder.AppendFormat("{0} ", item.Value.ToString());
}
}
//indexedBuilder.AppendFormat("{0} ", Title);
//if (!StringExtensions.IsNullOrEmptyTrim(UserKey))
//{
// indexedBuilder.AppendFormat("{0} ", UserKey);
//}
//indexedBuilder.AppendFormat("{0} ", UserName);
//indexedBuilder.AppendFormat("{0} ", PostDate.ToString());
//indexedBuilder.AppendFormat("{0} ", ModifiedDate.ToString());
if (!StringExtensions.IsNullOrEmptyTrim(Categories))
{
indexedBuilder.AppendFormat("{0} ", Categories);
}
if (!StringExtensions.IsNullOrEmptyTrim(ChildContentText))
{
indexedBuilder.AppendFormat("{0} ", ChildContentText);
}
indexedBody = indexedBuilder.ToString().StripHtmlXmlTags();
}
return indexedBody;
}
internal set
{
indexedBody = value;
}
}
public string HighlightedBody
{
get;
internal set;
}
public string HighlightedTitle { get; set; }
internal IDictionary<string, object> ExternalFields { get; set; }
internal string ChildContentText { get; set; }
/// <summary>
/// Gets or sets the URL.
/// </summary>
/// <value>The URL.</value>
public string Url { get; set; }
}
}
|