colBBNewss = GetBBNewss(ModuleID);
+ //if (colBBNewss.Count != 0)
+ //{
+ // strXML += "";
+ // foreach (BBNewsInfo objBBNews in colBBNewss)
+ // {
+ // strXML += "";
+ // strXML += "" + XmlUtils.XMLEncode(objBBNews.Content) + "";
+ // strXML += "";
+ // }
+ // strXML += "";
+ //}
+
+ return strXML;
+
+ }
+
+ /// -----------------------------------------------------------------------------
+ ///
+ /// ImportModule implements the IPortable ImportModule Interface
+ ///
+ ///
+ ///
+ /// The Id of the module to be imported
+ /// The content to be imported
+ /// The version of the module to be imported
+ /// The Id of the user performing the import
+ ///
+ ///
+ /// -----------------------------------------------------------------------------
+ public void ImportModule(int ModuleID, string Content, string Version, int UserId)
+ {
+
+ //XmlNode xmlBBNewss = Globals.GetContent(Content, "BBNewss");
+ //foreach (XmlNode xmlBBNews in xmlBBNewss.SelectNodes("BBNews"))
+ //{
+ // BBNewsInfo objBBNews = new BBNewsInfo();
+ // objBBNews.ModuleId = ModuleID;
+ // objBBNews.Content = xmlBBNews.SelectSingleNode("content").InnerText;
+ // objBBNews.CreatedByUser = UserId;
+ // AddBBNews(objBBNews);
+ //}
+
+ }
+
+ #endregion
+ }
}
\ No newline at end of file
diff --git a/Components/RssXmlReader.cs b/Components/RssXmlReader.cs
new file mode 100644
index 0000000..2e98435
--- /dev/null
+++ b/Components/RssXmlReader.cs
@@ -0,0 +1,57 @@
+using System;
+using System.Collections.Generic;
+using System.Globalization;
+using System.IO;
+using System.Linq;
+using System.Web;
+using System.Xml;
+
+namespace Bitboxx.DNNModules.BBNews.Components
+{
+ public class RssXmlReader : XmlTextReader
+ {
+ private bool readingDate = false;
+ const string CustomUtcDateTimeFormat = "ddd MMM dd HH:mm:ss Z yyyy"; // Wed Oct 07 08:00:07 GMT 2009
+
+ public RssXmlReader(Stream s) : base(s) { }
+
+ public RssXmlReader(string inputUri) : base(inputUri) { }
+
+ public override void ReadStartElement()
+ {
+ if (string.Equals(base.NamespaceURI, string.Empty, StringComparison.InvariantCultureIgnoreCase) &&
+ (string.Equals(base.LocalName, "lastBuildDate", StringComparison.InvariantCultureIgnoreCase) ||
+ string.Equals(base.LocalName, "pubDate", StringComparison.InvariantCultureIgnoreCase)))
+ {
+ readingDate = true;
+ }
+ base.ReadStartElement();
+ }
+
+ public override void ReadEndElement()
+ {
+ if (readingDate)
+ {
+ readingDate = false;
+ }
+ base.ReadEndElement();
+ }
+
+ public override string ReadString()
+ {
+ if (readingDate)
+ {
+ string dateString = base.ReadString();
+ DateTime dt;
+ if (!DateTime.TryParse(dateString, out dt))
+ dt = DateTime.ParseExact(dateString, CustomUtcDateTimeFormat, CultureInfo.InvariantCulture);
+ return dt.ToUniversalTime().ToString("R", CultureInfo.InvariantCulture);
+ }
+ else
+ {
+ return base.ReadString();
+ }
+ }
+ }
+}
+
diff --git a/README.md b/README.md
index 0b2811d..070545d 100644
--- a/README.md
+++ b/README.md
@@ -5,6 +5,11 @@
* * *
## Whats new ?
+_Version 01.02.00 (25.03.2014):_
+
+* Compatibility for DNN 8+
+* Fixed some issues when retrieving Feeds
+* Added MetaData field to support XML Data in special News Field
_Version 01.01.05 (25.03.2014):_
@@ -326,4 +331,24 @@ The DNN scheduler checks in the defined interval your feed table for feeds that
Example: Select "10" to keep the ten most recent schedule history rows. |
-
\ No newline at end of file
+
+
+## MetaData
+
+New in version 01.02.00 for DNN8+ : The news table has a new MetaData field that is NOT filled by the RSS collector. But it can be used by other developers to fill in some xml:
+```xml
+
+
+ Article
+ Lorem ipsum dolor..
+
+
+ BackLink
+ http://www.auktionsbuddy.de
+
+ ...
+
+```
+
+These values can then used as placeholder tokens in the template:
+[BBNEWS:Meta|Article] or [BBNEWS:Meta|Backlink]
\ No newline at end of file