public override IList<DotNetNuke.Services.Search.Entities.SearchDocument> GetModifiedSearchDocuments(ModuleInfo moduleInfo, DateTime beginDate)
        {
            //create search item collection
            var searchItemColl = new List<SearchDocument>();// SearchItemInfoCollection();

            //get list of items by moduleID
            FileController ctrlFiles = new FileController();
            foreach (File file in ctrlFiles.GetSearchableItems(beginDate))
            {
                //SearchItemInfo sii = new SearchItemInfo();
                SearchDocument sii = new SearchDocument();

                string strContent;
                string strGUID;
                string strDescription;
                switch (file.ItemType)
                {
                    case 1: //file
                        strContent = String.Format("{0} {1} {2} {3} {4}", file.Name, file.Description, file.CreatedByUserName, file.LastModifiedByUserName, file.FileType);
                        strGUID = "Open=" + file.ID.ToString();

                        var parentFile = ctrlFiles.Get(file.ParentID);
                        int parentID = parentFile.ID;
                        if (parentFile.ItemType != 0)
                        {
                            parentID = parentFile.ParentID;
                        }
                        strDescription = file.Description;// String.Format("<a href=\"{0}\">[Open Containing Folder]</a> {1}", Globals.NavigateURL(moduleInfo.TabID, "", "Folder=" + parentID.ToString()), file.Description);

                        break;
                    case 2: //hyperlink
                        strContent = String.Format("{0} {1} {2} {3} {4}", file.Name, file.Description, file.CreatedByUserName, file.LastModifiedByUserName, file.FileType);
                        strGUID = "Open=" + file.ID.ToString();
                        strDescription = file.Description;// String.Format("<a href=\"{0}\">[Open Containing Folder]</a> {1}", Globals.NavigateURL(moduleInfo.TabID, "", "Folder=" + file.ParentID.ToString()), file.Description);

                        break;

                    default: //folder
                        strContent = String.Format("{0} {1} {2} {3} {4}", file.Name, file.Description, file.CreatedByUserName, file.LastModifiedByUserName, file.FileType);
                        strGUID = "Folder=" + file.ID.ToString();
                        strDescription = file.Description;

                        break;
                }

                //get see permissions
                PermissionController ctrlPerm = new PermissionController();
                var perms = ctrlPerm.GetItems(file.ID);
                string strPerms = "";
                foreach (Permission perm in perms)
                {
                    if (perm.CanSee)
                    {
                        if (perm.UserID != 0)
                        {
                            //user perm
                            strPerms += String.Format("[{0}];", perm.UserID);
                        }
                        else
                        {
                            //role perm
                            if (perm.RoleName == "All Users")
                            {
                                strPerms = "";
                                break;
                            }
                            strPerms += perm.RoleName;
                        }
                    }
                }
                if (strPerms.Length > 0)
                {
                    strPerms = strPerms.Substring(0, strPerms.Length - 1);
                }

                sii.AuthorUserId = file.LastModifiedByUserID;
                sii.ModuleId = file.ModuleID;
                sii.Body = strContent;
                //sii.CultureCode = "";
                sii.Description = strDescription;
                sii.IsActive = true;
                //sii.Keywords = strContent;
                sii.ModifiedTimeUtc = file.LastModifiedDate;
                sii.ModuleDefId = moduleInfo.ModuleDefID;
                sii.ModuleId = file.ModuleID;
                //sii.NumericKeys = "";
                sii.Permissions = strPerms;
                sii.PortalId = file.PortalID;
                sii.QueryString = strGUID;
                //sii.RoleId = -1;
                //sii.SearchTypeId = -1;
                sii.TabId = moduleInfo.TabID;
                //sii.Tags = "";
                sii.Title = file.Name;
                sii.UniqueKey = file.ID.ToString();
                //sii.Url = "";

                /*
                sii.PubDate = file.CreatedDate;
                sii.Description = strDescription;
                sii.SearchItemId = file.ID;
                sii.Content = strContent;
                sii.SearchKey = file.ID.ToString();
                sii.GUID = strGUID;
                sii.TabId = ModInfo.TabID;
                sii.Title = file.Name;
                */
                searchItemColl.Add(sii);
            }

            return searchItemColl;
        }