예제 #1
0
 private void writeSubElements(RssModuleItemCollection items, string NamespacePrefix)
 {
     foreach (RssModuleItem rssModuleItem in items)
     {
         if (rssModuleItem.SubElements.Count == 0)
         {
             WriteElement(NamespacePrefix + ":" + rssModuleItem.Name, rssModuleItem.Text,
                          rssModuleItem.IsRequired);
         }
         else
         {
             this.writer.WriteStartElement(NamespacePrefix + ":" + rssModuleItem.Name);
             this.writeSubElements(rssModuleItem.SubElements, NamespacePrefix);
             this.writer.WriteEndElement();
         }
     }
 }
예제 #2
0
        /// <summary>Initialize a new instance of the </summary>
        /// <param name="license">
        ///		If present as a sub-element of channel, indicates that the content of the RSS file is available under a license, indicated by a URL, which is the value of the license element. A list of some licenses that may be used in this context is on the Creative Commons website on this page, however the license element may point to licenses not authored by Creative Commons.
        ///		You may also use the license element as a sub-element of item. When used this way it applies only to the content of that item. If an item has a license, and the channel does too, the license on the item applies, i.e. the inner license overrides the outer one.
        ///		Multiple license elements are allowed, in either context, indicating that the content is available under multiple licenses.
        ///		<remarks>"http://www.creativecommons.org/licenses/"</remarks>
        ///	</param>
        /// <param name="isChannelSubElement">If present as a sub-element of channel then true, otherwise false</param>
        public RssCreativeCommons(Uri license, bool isChannelSubElement)
        {
            base.NamespacePrefix = "creativeCommons";
            base.NamespaceURL = new Uri("http://backend.userland.com/creativeCommonsRssModule");

            if (isChannelSubElement)
            {
                base.ChannelExtensions.Add(new RssModuleItem("license", true, RssDefault.Check(license.ToString())));
            }
            else
            {
                RssModuleItemCollection rssItems = new RssModuleItemCollection();

                rssItems.Add(new RssModuleItem("license", true, RssDefault.Check(license.ToString())));

                base.ItemExtensions.Add(rssItems);
            }
        }
예제 #3
0
 private void writeSubElements(RssModuleItemCollection items, string NamespacePrefix)
 {
     foreach (RssModuleItem rssModuleItem in items)
     {
         if (rssModuleItem.SubElements.Count == 0)
             WriteElement(NamespacePrefix + ":" + rssModuleItem.Name, rssModuleItem.Text,
                          rssModuleItem.IsRequired);
         else
         {
             writer.WriteStartElement(NamespacePrefix + ":" + rssModuleItem.Name);
             writeSubElements(rssModuleItem.SubElements, NamespacePrefix);
             writer.WriteEndElement();
         }
     }
 }
예제 #4
0
 /// <summary>
 ///     Initialize a new instance of the RssModuleItem class
 /// </summary>
 /// <param name="name"> The name of this RssModuleItem. </param>
 /// <param name="text"> The text contained within this RssModuleItem. </param>
 /// <param name="subElements"> The sub-elements of this RssModuleItem (if any exist). </param>
 public RssModuleItem(string name, string text, RssModuleItemCollection subElements) : this(name, text)
 {
     this._rssSubElements = subElements;
 }
예제 #5
0
 /// <summary>Initialize a new instance of the RssModuleItem class</summary>
 /// <param name="name">The name of this RssModuleItem.</param>
 /// <param name="required">Is text required for this RssModuleItem?</param>
 /// <param name="text">The text contained within this RssModuleItem.</param>
 /// <param name="subElements">The sub-elements of this RssModuleItem (if any exist).</param>
 public RssModuleItem(string name, bool required, string text, RssModuleItemCollection subElements)
     : this(name, required, text)
 {
     _rssSubElements = subElements;
 }
예제 #6
0
 /// <summary>Initialize a new instance of the RssModuleItem class</summary>
 /// <param name="name">The name of this RssModuleItem.</param>
 /// <param name="text">The text contained within this RssModuleItem.</param>
 /// <param name="subElements">The sub-elements of this RssModuleItem (if any exist).</param>
 public RssModuleItem(string name, string text, RssModuleItemCollection subElements) : this(name, text)
 {
   this._rssSubElements = subElements;
 }
예제 #7
0
        /// <summary>Adds a specified category to this collection.</summary>
        /// <param name="categoryName">Name of the category.</param>
        /// <param name="categoryDescription">Description of the category.</param>
        /// <param name="categoryDateFrom">From date of the category.</param>
        /// <param name="categoryDateTo">To date of the category.</param>
        /// <param name="categoryPhotos">Photos of the category.</param>
        /// <returns>The zero-based index of the added item.</returns>
        private void Add(string categoryName, string categoryDescription, string categoryDateFrom, string categoryDateTo,
                         RssPhotoAlbumCategoryPhotos categoryPhotos)
        {
            RssModuleItemCollection categoryDataRange = new RssModuleItemCollection();
            categoryDataRange.Add(new RssModuleItem("from", true, RssDefault.Check(categoryDateFrom)));
            categoryDataRange.Add(new RssModuleItem("to", true, RssDefault.Check(categoryDateTo)));

            Add(new RssModuleItem("categoryName", true, RssDefault.Check(categoryName)));
            Add(new RssModuleItem("categoryDescription", true, RssDefault.Check(categoryDescription)));
            Add(new RssModuleItem("categoryDateRange", true, "", categoryDataRange));
            foreach (RssPhotoAlbumCategoryPhoto categoryPhoto in categoryPhotos)
                Add(new RssModuleItem("categoryPhoto", true, "", categoryPhoto));
        }
예제 #8
0
        /// <summary>Adds a specified category to this collection.</summary>
        /// <param name="categoryName">Name of the category.</param>
        /// <param name="categoryDescription">Description of the category.</param>
        /// <param name="categoryDateFrom">From date of the category.</param>
        /// <param name="categoryDateTo">To date of the category.</param>
        /// <param name="categoryPhotos">Photos of the category.</param>
        /// <returns>The zero-based index of the added item.</returns>
        private int Add(string categoryName, string categoryDescription, DateTime categoryDateFrom,
                        DateTime categoryDateTo, RssPhotoAlbumCategoryPhotos categoryPhotos)
        {
            RssModuleItemCollection categoryDataRange = new RssModuleItemCollection();
            categoryDataRange.Add(new RssModuleItem("from", true,
                                                    RssDefault.Check(categoryDateFrom.ToUniversalTime().ToString("r"))));
            categoryDataRange.Add(new RssModuleItem("to", true,
                                                    RssDefault.Check(categoryDateTo.ToUniversalTime().ToString("r"))));

            base.Add(new RssModuleItem("categoryName", true, RssDefault.Check(categoryName)));
            base.Add(new RssModuleItem("categoryDescription", true, RssDefault.Check(categoryDescription)));
            base.Add(new RssModuleItem("categoryDateRange", true, "", categoryDataRange));
            foreach (RssPhotoAlbumCategoryPhoto categoryPhoto in categoryPhotos)
                base.Add(new RssModuleItem("categoryPhoto", true, "", categoryPhoto));

            return -1;
        }
예제 #9
0
        /// <summary>Adds a specified category to this collection.</summary>
        /// <param name="categoryName">Name of the category.</param>
        /// <param name="categoryDescription">Description of the category.</param>
        /// <param name="categoryDateFrom">From date of the category.</param>
        /// <param name="categoryDateTo">To date of the category.</param>
        /// <param name="categoryPhoto">Photos of the category.</param>
        /// <returns>The zero-based index of the added item.</returns>
        private int Add(string categoryName, string categoryDescription, string categoryDateFrom, string categoryDateTo,
                        RssPhotoAlbumCategoryPhoto categoryPhoto)
        {
            RssModuleItemCollection categoryDataRange = new RssModuleItemCollection();
            categoryDataRange.Add(new RssModuleItem("from", true, RssDefault.Check(categoryDateFrom)));
            categoryDataRange.Add(new RssModuleItem("to", true, RssDefault.Check(categoryDateTo)));

            base.Add(new RssModuleItem("categoryName", true, RssDefault.Check(categoryName)));
            base.Add(new RssModuleItem("categoryDescription", true, RssDefault.Check(categoryDescription)));
            base.Add(new RssModuleItem("categoryDateRange", true, "", categoryDataRange));
            base.Add(new RssModuleItem("categoryPhoto", true, "", categoryPhoto));

            return -1;
        }