diff --git a/ExpandableText/Components/ExpandableTextHtmlController.cs b/ExpandableText/Components/ExpandableTextHtmlController.cs
index 47187ef..2a53905 100644
--- a/ExpandableText/Components/ExpandableTextHtmlController.cs
+++ b/ExpandableText/Components/ExpandableTextHtmlController.cs
@@ -25,13 +25,14 @@
using DotNetNuke.Common;
using DotNetNuke.Common.Utilities;
using DotNetNuke.Entities.Modules;
+using DotNetNuke.Services.Search.Entities;
namespace ICG.Modules.ExpandableTextHtml.Components
{
///
/// This is the controller class providing functionality to the module
///
- public class ExpandableTextHtmlController : IPortable
+ public class ExpandableTextHtmlController : ModuleSearchBase, IPortable
{
#region Public Methods
@@ -123,6 +124,51 @@ public void DeleteExpandableTextHtml(int moduleId, int itemId)
//#endregion
+ #region ModuleSearchBase Members
+
+ ///
+ /// Gets the search documents for the module.
+ ///
+ /// The module information.
+ /// The begin date in UTC.
+ /// A collection of search documents.
+ public override IList GetModifiedSearchDocuments(ModuleInfo moduleInfo, DateTime beginDateUtc)
+ {
+ var searchDocuments = new List();
+
+ // Get all expandable text items for this module, ordered by last updated date
+ var items = GetExpandableTextHtmls(moduleInfo.ModuleID, "ORDER BY LastUpdated");
+
+ foreach (var item in items)
+ {
+ // Only include items that have been updated since the begin date
+ if (item.LastUpdated.ToUniversalTime() >= beginDateUtc)
+ {
+ var searchDoc = new SearchDocument
+ {
+ UniqueKey = $"ETH_{moduleInfo.ModuleID}_{item.ItemId}",
+ PortalId = moduleInfo.PortalID,
+ TabId = moduleInfo.TabID,
+ ModuleId = moduleInfo.ModuleID,
+ ModuleDefId = moduleInfo.ModuleDefID,
+ Title = item.Title,
+ Body = item.Body,
+ Description = item.Title,
+ ModifiedTimeUtc = item.LastUpdated.ToUniversalTime(),
+ AuthorUserId = -1, // Default author as system since we don't track the author in this module
+ IsActive = true, // Assuming all items are active
+ CultureCode = moduleInfo.CultureCode,
+ };
+
+ searchDocuments.Add(searchDoc);
+ }
+ }
+
+ return searchDocuments;
+ }
+
+ #endregion
+
#region IPortable Members
/////
diff --git a/ExpandableText/ExpandableTextHtml.dnn b/ExpandableText/ExpandableTextHtml.dnn
index 64d3ffa..9247c87 100644
--- a/ExpandableText/ExpandableTextHtml.dnn
+++ b/ExpandableText/ExpandableTextHtml.dnn
@@ -13,7 +13,7 @@
- 07.00.00
+ 09.07.00
diff --git a/ExpandableText/ManifestAssets/ReleaseNotes.txt b/ExpandableText/ManifestAssets/ReleaseNotes.txt
index 610564f..42a9ef8 100644
--- a/ExpandableText/ManifestAssets/ReleaseNotes.txt
+++ b/ExpandableText/ManifestAssets/ReleaseNotes.txt
@@ -1,4 +1,9 @@
- Version 06.01.00 - April 21st, 2012
+ Version 06.02.00 - [Current Date]
+
+ - Added support for DNN 10.x Search Integration using ModuleSearchBase
+
+
+ Version 06.01.00 - April 21st, 2012
- Resolved issues installing to SQL Azure
- Updated module to support proper installation if a failure occured during initial install
diff --git a/README.md b/README.md
index 08f0f87..842193c 100644
--- a/README.md
+++ b/README.md
@@ -6,4 +6,8 @@ A simple Expanding/Collapsing text module for use with DNN
## Minimum DNN Version
-Current releases support DNN 7.0.0 and later
\ No newline at end of file
+Version 10.0.0 of this module requires DNN 9.7.0 or later
+
+## Upgrade Warning - DNN 10.x Support
+
+You must update to version 10.0.0 of this module BEFORE moving to DNN 10 to prevent errors.
\ No newline at end of file