public static XmlDocument BuildNewsDataXml(XmlDocument doc, XmlElement newsXml, News news, TimeZoneInfo timeZone, double timeOffset, string editLink) { XmlHelper.AddNode(doc, newsXml, "Title", news.Title); XmlHelper.AddNode(doc, newsXml, "SubTitle", news.SubTitle); XmlHelper.AddNode(doc, newsXml, "Url", NewsHelper.FormatNewsUrl(news.Url, news.NewsID, news.ZoneID)); XmlHelper.AddNode(doc, newsXml, "Target", NewsHelper.GetNewsTarget(news.OpenInNewWindow)); XmlHelper.AddNode(doc, newsXml, "ShowOption", news.ShowOption.ToString()); XmlHelper.AddNode(doc, newsXml, "NewsId", news.NewsID.ToString()); //2016-08-11 string imageFolderPath = NewsHelper.MediaFolderPath(news.SiteId, news.NewsID); string thumbnailImageFolderPath = imageFolderPath + "thumbs/"; if (news.ImageFile.Length > 0) { XmlHelper.AddNode(doc, newsXml, "ImageUrl", VirtualPathUtility.ToAbsolute(imageFolderPath + news.ImageFile)); } if (news.ThumbnailFile.Length > 0) { XmlHelper.AddNode(doc, newsXml, "ThumbnailUrl", VirtualPathUtility.ToAbsolute(thumbnailImageFolderPath + news.ThumbnailFile)); } XmlHelper.AddNode(doc, newsXml, "EditLink", editLink); XmlHelper.AddNode(doc, newsXml, "BriefContent", news.BriefContent); XmlHelper.AddNode(doc, newsXml, "FullContent", news.FullContent); XmlHelper.AddNode(doc, newsXml, "ViewCount", news.Viewed.ToString()); XmlHelper.AddNode(doc, newsXml, "CommentCount", news.CommentCount.ToString()); XmlHelper.AddNode(doc, newsXml, "FileUrl", news.FileAttachment); object startDate = news.StartDate; XmlHelper.AddNode(doc, newsXml, "CreatedDate", FormatDate(startDate, timeZone, timeOffset, ResourceHelper.GetResourceString("NewsResources", "NewsDateFormat"))); XmlHelper.AddNode(doc, newsXml, "CreatedTime", FormatDate(startDate, timeZone, timeOffset, ResourceHelper.GetResourceString("NewsResources", "NewsTimeFormat"))); XmlHelper.AddNode(doc, newsXml, "CreatedDD", FormatDate(startDate, timeZone, timeOffset, "dd")); XmlHelper.AddNode(doc, newsXml, "CreatedYY", FormatDate(startDate, timeZone, timeOffset, "yy")); XmlHelper.AddNode(doc, newsXml, "CreatedYYYY", FormatDate(startDate, timeZone, timeOffset, "yyyy")); XmlHelper.AddNode(doc, newsXml, "CreatedMM", FormatDate(startDate, timeZone, timeOffset, "MM")); if (System.Globalization.CultureInfo.CurrentCulture.Name.ToLower() == "vi-vn") { string monthVI = "Tháng " + FormatDate(startDate, timeZone, timeOffset, "MM"); XmlHelper.AddNode(doc, newsXml, "CreatedMMM", monthVI); XmlHelper.AddNode(doc, newsXml, "CreatedMMMM", monthVI); } else { XmlHelper.AddNode(doc, newsXml, "CreatedMMM", FormatDate(startDate, timeZone, timeOffset, "MMM")); XmlHelper.AddNode(doc, newsXml, "CreatedMMMM", FormatDate(startDate, timeZone, timeOffset, "MMMM")); } if (news.EndDate != DateTime.MaxValue) { XmlHelper.AddNode(doc, newsXml, "EndDate", FormatDate(news.EndDate, timeZone, timeOffset, ResourceHelper.GetResourceString("NewsResources", "NewsDateFormat"))); } return(doc); }
public void BuildNewsImagesXml( XmlDocument doc, XmlElement root) { string imageFolderPath = NewsHelper.MediaFolderPath(basePage.SiteId, news.NewsID); string thumbnailImageFolderPath = imageFolderPath + "thumbs/"; string siteRoot = WebUtils.GetSiteRoot(); int defaultLanguageId = -1; string defaultCulture = WebConfigSettings.DefaultLanguageCulture; if (defaultCulture.Length > 0) { defaultLanguageId = LanguageHelper.GetLanguageIdByCulture(defaultCulture); } List <int> listDisplayOrder = new List <int>(); List <ContentMedia> listMedia = ContentMedia.GetByContentDesc(news.NewsGuid); foreach (ContentMedia media in listMedia) { if (media.LanguageId == -1 || media.LanguageId == languageId || (languageId == -1 && media.LanguageId == defaultLanguageId)) { BuildNewsImagesXml(doc, root, media, imageFolderPath, thumbnailImageFolderPath); if (displaySettings.ShowGroupImages) { if (!listDisplayOrder.Contains(media.DisplayOrder)) { listDisplayOrder.Add(media.DisplayOrder); XmlElement groupImages = doc.CreateElement("GroupImages"); root.AppendChild(groupImages); XmlHelper.AddNode(doc, groupImages, "DisplayOrder", media.DisplayOrder.ToString()); foreach (ContentMedia media2 in listMedia) { if ((media2.LanguageId == -1 || media2.LanguageId == languageId || (languageId == -1 && media2.LanguageId == defaultLanguageId)) && (media2.DisplayOrder == media.DisplayOrder)) { BuildNewsImagesXml(doc, groupImages, media2, imageFolderPath, thumbnailImageFolderPath); } } } } string relativePath = siteRoot + Page.ResolveUrl(imageFolderPath + media.MediaFile); basePage.AdditionalMetaMarkup += "\n<meta property=\"og:image\" content=\"" + relativePath + "\" />"; basePage.AdditionalMetaMarkup += "\n<meta itemprop=\"image\" content=\"" + relativePath + "\" />"; } } }
public void BuildNewsImagesXml( XmlDocument doc, XmlElement newsXml, News news, int languageId) { string imageFolderPath = NewsHelper.MediaFolderPath(SiteId, news.NewsID); string thumbnailImageFolderPath = imageFolderPath + "thumbs/"; List <ContentMedia> listMedia = ContentMedia.GetByContentDesc(news.NewsGuid); foreach (ContentMedia media in listMedia) { if (media.LanguageId == -1 || media.LanguageId == languageId) { XmlElement element = doc.CreateElement("NewsImages"); newsXml.AppendChild(element); XmlHelper.AddNode(doc, element, "Title", media.Title); XmlHelper.AddNode(doc, element, "ImageUrl", Page.ResolveUrl(imageFolderPath + media.MediaFile)); XmlHelper.AddNode(doc, element, "ThumbnailUrl", Page.ResolveUrl(thumbnailImageFolderPath + media.ThumbnailFile)); } } }
public static XmlDocument BuildNewsDataXml(XmlDocument doc, XmlElement newsXml, News news, TimeZoneInfo timeZone, double timeOffset, string editLink, int siteId = 1) { XmlHelper.AddNode(doc, newsXml, "Title", news.Title); XmlHelper.AddNode(doc, newsXml, "SubTitle", news.SubTitle); XmlHelper.AddNode(doc, newsXml, "Url", NewsHelper.FormatNewsUrl(news.Url, news.NewsID, news.ZoneID)); XmlHelper.AddNode(doc, newsXml, "Target", NewsHelper.GetNewsTarget(news.OpenInNewWindow)); XmlHelper.AddNode(doc, newsXml, "ShowOption", news.ShowOption.ToString()); XmlHelper.AddNode(doc, newsXml, "ZoneId", news.ZoneID.ToInvariantString()); SiteMapDataSource siteMapDataSource = new SiteMapDataSource(); siteMapDataSource.SiteMapProvider = "canhcamsite" + siteId.ToInvariantString(); SiteMapNode rootNode = siteMapDataSource.Provider.RootNode; SiteMapNode startingNode = null; if (rootNode == null) { return(null); } if (news.ZoneID > -1) { SiteMapNodeCollection allNodes = rootNode.GetAllNodes(); foreach (SiteMapNode childNode in allNodes) { gbSiteMapNode gbNode = childNode as gbSiteMapNode; if (gbNode == null) { continue; } if (Convert.ToInt32(gbNode.Key) == news.ZoneID) { startingNode = gbNode; XmlHelper.AddNode(doc, newsXml, "ZoneDescription", gbNode.Description); XmlHelper.AddNode(doc, newsXml, "ZoneTitle", gbNode.Title); break; } } } string imageFolderPath = NewsHelper.MediaFolderPath(news.SiteId, news.NewsID); string thumbnailImageFolderPath = imageFolderPath + "thumbs/"; if (news.ImageFile.Length > 0) { XmlHelper.AddNode(doc, newsXml, "ImageUrl", VirtualPathUtility.ToAbsolute(imageFolderPath + news.ImageFile)); } if (news.ThumbnailFile.Length > 0) { XmlHelper.AddNode(doc, newsXml, "ThumbnailUrl", VirtualPathUtility.ToAbsolute(thumbnailImageFolderPath + news.ThumbnailFile)); } XmlHelper.AddNode(doc, newsXml, "EditLink", editLink); XmlHelper.AddNode(doc, newsXml, "BriefContent", news.BriefContent); XmlHelper.AddNode(doc, newsXml, "FullContent", news.FullContent); XmlHelper.AddNode(doc, newsXml, "ViewCount", news.Viewed.ToString()); XmlHelper.AddNode(doc, newsXml, "CommentCount", news.CommentCount.ToString()); XmlHelper.AddNode(doc, newsXml, "FileUrl", news.FileAttachment); object startDate = news.StartDate; XmlHelper.AddNode(doc, newsXml, "CreatedDate", FormatDate(startDate, timeZone, timeOffset, ResourceHelper.GetResourceString("NewsResources", "NewsDateFormat"))); XmlHelper.AddNode(doc, newsXml, "CreatedTime", FormatDate(startDate, timeZone, timeOffset, ResourceHelper.GetResourceString("NewsResources", "NewsTimeFormat"))); XmlHelper.AddNode(doc, newsXml, "CreatedDD", FormatDate(startDate, timeZone, timeOffset, "dd")); XmlHelper.AddNode(doc, newsXml, "CreatedYY", FormatDate(startDate, timeZone, timeOffset, "yy")); XmlHelper.AddNode(doc, newsXml, "CreatedYYYY", FormatDate(startDate, timeZone, timeOffset, "yyyy")); XmlHelper.AddNode(doc, newsXml, "CreatedMM", FormatDate(startDate, timeZone, timeOffset, "MM")); if (System.Globalization.CultureInfo.CurrentCulture.Name.ToLower() == "vi-vn") { string monthVI = "Tháng " + FormatDate(startDate, timeZone, timeOffset, "MM"); XmlHelper.AddNode(doc, newsXml, "CreatedMMM", monthVI); XmlHelper.AddNode(doc, newsXml, "CreatedMMMM", monthVI); } else { XmlHelper.AddNode(doc, newsXml, "CreatedMMM", FormatDate(startDate, timeZone, timeOffset, "MMM")); XmlHelper.AddNode(doc, newsXml, "CreatedMMMM", FormatDate(startDate, timeZone, timeOffset, "MMMM")); } if (news.EndDate != null && news.EndDate != DateTime.MaxValue) { XmlHelper.AddNode(doc, newsXml, "EndDate", FormatDate(news.EndDate, timeZone, timeOffset, ResourceHelper.GetResourceString("NewsResources", "NewsDateFormat"))); } return(doc); }