diff --git a/Dnn.CommunityForums/Deprecated/Utilities.cs b/Dnn.CommunityForums/Deprecated/Utilities.cs index 41b7251e..13bb6a6b 100644 --- a/Dnn.CommunityForums/Deprecated/Utilities.cs +++ b/Dnn.CommunityForums/Deprecated/Utilities.cs @@ -129,6 +129,55 @@ public static string HumanFriendlyDate(DateTime displayDate, int ModuleId, int t return string.Format(GetSharedResource("[RESX:TimeSpan:YearsAgo]"), Math.Ceiling(ts.Days / 365.0)); } + [Obsolete("Deprecated in Community Forums. Removed in 10.00.00. Not Used.")] + public static DateTime GetUserDate(DateTime displayDate, int mid, int offset) + { + var mainSettings = SettingsBase.GetModuleSettings(mid); + var mServerOffSet = mainSettings.TimeZoneOffset; + var newDate = displayDate.AddMinutes(-mServerOffSet); + + return newDate.AddMinutes(offset); + } + [Obsolete("Deprecated in Community Forums. Removed in 10.00.00. Not Used.")] + public string GetUserFormattedDate(DateTime date, DotNetNuke.Entities.Portals.PortalInfo portalInfo, DotNetNuke.Entities.Users.UserInfo userInfo) + { + return GetUserFormattedDateTime(date, portalInfo.PortalID, userInfo.UserID); + } + [Obsolete("Deprecated in Community Forums. Removed in 10.00.00. Not Used.")] + public static string GetDate(DateTime displayDate, int mid, int offset) + { + string dateStr; + + try + { + var mUserOffSet = 0; + var mainSettings = SettingsBase.GetModuleSettings(mid); + var mServerOffSet = mainSettings.TimeZoneOffset; + var newDate = displayDate.AddMinutes(-mServerOffSet); + + newDate = newDate.AddMinutes(offset); + + var dateFormat = mainSettings.DateFormatString; + var timeFormat = mainSettings.TimeFormatString; + var formatString = string.Concat(dateFormat, " ", timeFormat); + + try + { + dateStr = newDate.ToString(formatString); + } + catch + { + dateStr = displayDate.ToString(); + } + + return dateStr; + } + catch (Exception ex) + { + dateStr = displayDate.ToString(); + return dateStr; + } + } [Obsolete("Deprecated in Community Forums. Removed in 09.00.00. Use HttpUtility.HtmlEncode.")] public static string HtmlEncode(string strMessage = "") => HttpUtility.HtmlEncode(strMessage); [Obsolete("Deprecated in Community Forums. Removed in 09.00.00. Use HttpUtility.HtmlDecode.")] diff --git a/Dnn.CommunityForums/DnnCommunityForums.dnn b/Dnn.CommunityForums/DnnCommunityForums.dnn index 3ab8eb67..74330b61 100644 --- a/Dnn.CommunityForums/DnnCommunityForums.dnn +++ b/Dnn.CommunityForums/DnnCommunityForums.dnn @@ -75,7 +75,7 @@ DotNetNuke.Modules.ActiveForums.TopicsController, DotNetNuke.Modules.ActiveForums [DESKTOPMODULEID] - 07.00.07,07.00.11,07.00.12,08.00.00 + 07.00.07,07.00.11,07.00.12,08.00.00,08.01.00 diff --git a/Dnn.CommunityForums/class/Globals.cs b/Dnn.CommunityForums/class/Globals.cs index 28ffa843..93fea934 100644 --- a/Dnn.CommunityForums/class/Globals.cs +++ b/Dnn.CommunityForums/class/Globals.cs @@ -177,8 +177,9 @@ public class SettingKeys public const string StatsTemplate = "STATSTEMPLATE"; public const string StatsCache = "STATSCACHE"; public const string DateFormatString = "DATEFORMATSTRING"; - public const string TimeFormatString = "TIMEFORMATSTRING"; - public const string TimeZoneOffset = "TIMEZONEOFFSET"; + public const string TimeFormatString = "TIMEFORMATSTRING"; + [Obsolete("Deprecated in Community Forums. Removed in 10.00.00. Not Used.")] + public const string TimeZoneOffset = "TIMEZONEOFFSET"; public const string UsersOnlineEnabled = "USERSONLINEENABLED"; public const string MemberListMode = "MEMBERLISTMODE"; public const string ForumTemplateId = "FORUMTEMPLATEID"; @@ -190,8 +191,9 @@ public class SettingKeys public const string FloodInterval = "FLOODINTERVAL"; public const string EditInterval = "EDITINTERVAL"; public const string LoggingLevel = "LOGGINGLEVEL"; - public const string DeleteBehavior = "DELETEBEHAVIOR"; - public const string ProdKey = "AMFORUMS"; + public const string DeleteBehavior = "DELETEBEHAVIOR"; + [Obsolete("Deprecated in Community Forums. Removed in 10.00.00. Not Used.")] + public const string ProdKey = "AMFORUMS"; public const string EnablePoints = "ENABLEPOINTS"; public const string TopicPointValue = "TOPICPOINTVALUE"; diff --git a/Dnn.CommunityForums/class/Settings.cs b/Dnn.CommunityForums/class/Settings.cs index 15c117c4..0352546d 100644 --- a/Dnn.CommunityForums/class/Settings.cs +++ b/Dnn.CommunityForums/class/Settings.cs @@ -94,7 +94,7 @@ public string TimeFormatString { get { return MainSettings.GetString(SettingKeys.TimeFormatString, "h:mm tt"); } } - + [Obsolete("Deprecated in Community Forums. Removed in 10.00.00. Not Used.")] public int TimeZoneOffset { get { return MainSettings.GetInt(SettingKeys.TimeZoneOffset); } diff --git a/Dnn.CommunityForums/class/SettingsBase.cs b/Dnn.CommunityForums/class/SettingsBase.cs index fd09c41a..00499451 100644 --- a/Dnn.CommunityForums/class/SettingsBase.cs +++ b/Dnn.CommunityForums/class/SettingsBase.cs @@ -408,7 +408,8 @@ public TimeSpan TimeZoneOffset #endregion - #region Protected Methods + #region Protected Methods + [Obsolete("Deprecated in Community Forums. Removed in 10.00.00. Not Used.")] protected DateTime GetUserDate(DateTime displayDate) { return Utilities.GetUserDate(displayDate, ForumModuleId, Convert.ToInt32(TimeZoneOffset.TotalMinutes)); diff --git a/Dnn.CommunityForums/class/Utilities.cs b/Dnn.CommunityForums/class/Utilities.cs index 73cf2612..4975d8a5 100644 --- a/Dnn.CommunityForums/class/Utilities.cs +++ b/Dnn.CommunityForums/class/Utilities.cs @@ -26,6 +26,7 @@ using System.Linq; using System.Reflection; using System.Runtime.CompilerServices; +using System.Security.Cryptography; using System.Text; using System.Text.RegularExpressions; using System.Web; @@ -982,55 +983,24 @@ internal static string GetFileContent(string filePath) } return sContents; } - public static string GetDate(DateTime displayDate, int mid, int offset) + internal static string GetUserFriendlyDateTimeString(DateTime datetime, int ModuleId, UserInfo userInfo) { - string dateStr; - - try + var mainSettings = SettingsBase.GetModuleSettings(ModuleId); + var displayDate = datetime.Add(GetTimeZoneOffsetForUser(userInfo)); + if (displayDate.Date == DateTime.UtcNow.Date) { - var mUserOffSet = 0; - var mainSettings = SettingsBase.GetModuleSettings(mid); - var mServerOffSet = mainSettings.TimeZoneOffset; - var newDate = displayDate.AddMinutes(-mServerOffSet); - - newDate = newDate.AddMinutes(offset); - - var dateFormat = mainSettings.DateFormatString; - var timeFormat = mainSettings.TimeFormatString; - var formatString = string.Concat(dateFormat, " ", timeFormat); - - try - { - dateStr = newDate.ToString(formatString); - } - catch - { - dateStr = displayDate.ToString(); - } - - return dateStr; + return $"{GetSharedResource("Today")} @ {displayDate.ToString(mainSettings.TimeFormatString)}"; } - catch (Exception ex) + else if (datetime.Date == DateTime.UtcNow.AddDays(-1).Date) { - dateStr = displayDate.ToString(); - return dateStr; + return $"{GetSharedResource("Yesterday")} @ {displayDate.ToString(mainSettings.TimeFormatString)}"; + } + else + { + return $"{displayDate.ToString(mainSettings.DateFormatString)} @ {displayDate.ToString(mainSettings.TimeFormatString)}"; } } - - public static DateTime GetUserDate(DateTime displayDate, int mid, int offset) - { - var mainSettings = SettingsBase.GetModuleSettings(mid); - var mServerOffSet = mainSettings.TimeZoneOffset; - var newDate = displayDate.AddMinutes(-mServerOffSet); - - return newDate.AddMinutes(offset); - } - - public string GetUserFormattedDate(DateTime date, PortalInfo portalInfo, UserInfo userInfo) - { - return GetUserFormattedDateTime(date, portalInfo.PortalID, userInfo.UserID); - } - + public static string GetUserFormattedDateTime(DateTime dateTime, int portalId, int userId, string format) { CultureInfo userCultureInfo = GetCultureInfoForUser(portalId, userId); diff --git a/Dnn.CommunityForums/components/Helpers/UpgradeModuleSettings.cs b/Dnn.CommunityForums/components/Helpers/UpgradeModuleSettings.cs index 79c796ae..6b66afba 100644 --- a/Dnn.CommunityForums/components/Helpers/UpgradeModuleSettings.cs +++ b/Dnn.CommunityForums/components/Helpers/UpgradeModuleSettings.cs @@ -17,113 +17,122 @@ // CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER // DEALINGS IN THE SOFTWARE. // -using System; -using System.Collections; -using System.Collections.Generic; -using System.Data; -using System.Globalization; -using System.Reflection; -using System.Web.UI.WebControls; + using DotNetNuke.Entities.Modules; using DotNetNuke.Entities.Portals; -using DotNetNuke.Framework; using DotNetNuke.Instrumentation; -using DotNetNuke.Services.Log.EventLog; +using DotNetNuke.Web.Models; namespace DotNetNuke.Modules.ActiveForums.Helpers { internal static class UpgradeModuleSettings { private static readonly ILog Logger = LoggerSource.Instance.GetLogger(typeof(UpgradeModuleSettings)); - internal static void MoveSettings() { + internal static void MoveSettings_070011() { /* at some point around v6, general module settings were moved from the activeforums_settings table to the DNN platform Settings table; * the code that did that migration would check every time during page load (in ForumBase.OnLoad()) to see if the settings conversion was required. * So code has been moved here, and is now called once during module upgrade for one version to ensure that this is done. */ - foreach (PortalInfo portal in DotNetNuke.Entities.Portals.PortalController.Instance.GetPortals()) + foreach (DotNetNuke.Abstractions.Portals.IPortalInfo portal in DotNetNuke.Entities.Portals.PortalController.Instance.GetPortals()) { - foreach (ModuleInfo module in DotNetNuke.Entities.Modules.ModuleController.Instance.GetModules(portal.PortalID)) + foreach (ModuleInfo module in DotNetNuke.Entities.Modules.ModuleController.Instance.GetModules(portal.PortalId)) { if (module.DesktopModule.ModuleName.Trim().ToLowerInvariant() == Globals.ModuleName.ToLowerInvariant()) { if (!SettingsBase.GetModuleSettings(module.ModuleID).IsInstalled) { - MoveSettingsForModuleInstance(module.ModuleID, tabModuleId: module.TabModuleID); + MoveSettingsForModuleInstanceToTabModuleInstance(module.ModuleID, tabModuleId: module.TabModuleID); } } } } } - internal static void MoveSettingsForModuleInstance(int forumModuleId, int tabModuleId) + internal static void MoveSettingsForModuleInstanceToTabModuleInstance(int forumModuleId, int tabModuleId) { - var objModules = new DotNetNuke.Entities.Modules.ModuleController(); var currSettings = new SettingsInfo {MainSettings = Settings.GeneralSettings(forumModuleId, "GEN")}; - objModules.UpdateModuleSetting(tabModuleId, SettingKeys.PageSize, currSettings.PageSize.ToString()); - objModules.UpdateModuleSetting(tabModuleId, SettingKeys.UserNameDisplay, currSettings.UserNameDisplay); - objModules.UpdateModuleSetting(tabModuleId, SettingKeys.ProfileVisibility, ((int)currSettings.ProfileVisibility).ToString()); - objModules.UpdateModuleSetting(tabModuleId, SettingKeys.EnablePoints, currSettings.EnablePoints.ToString()); - objModules.UpdateModuleSetting(tabModuleId, SettingKeys.TopicPointValue, currSettings.TopicPointValue.ToString()); - objModules.UpdateModuleSetting(tabModuleId, SettingKeys.ReplyPointValue, currSettings.ReplyPointValue.ToString()); - objModules.UpdateModuleSetting(tabModuleId, SettingKeys.AnswerPointValue, currSettings.AnswerPointValue.ToString()); - objModules.UpdateModuleSetting(tabModuleId, SettingKeys.MarkAnswerPointValue, currSettings.MarkAsAnswerPointValue.ToString()); - objModules.UpdateModuleSetting(tabModuleId, SettingKeys.ModPointValue, currSettings.ModPointValue.ToString()); - objModules.UpdateModuleSetting(tabModuleId, SettingKeys.AvatarHeight, currSettings.AvatarHeight.ToString()); - objModules.UpdateModuleSetting(tabModuleId, SettingKeys.AvatarWidth, currSettings.AvatarWidth.ToString()); - objModules.UpdateModuleSetting(tabModuleId, SettingKeys.AllowSignatures, currSettings.AllowSignatures.ToString()); - objModules.UpdateModuleSetting(tabModuleId, SettingKeys.ForumTemplateId, currSettings.ForumTemplateID.ToString()); - objModules.UpdateModuleSetting(tabModuleId, SettingKeys.InstallDate, currSettings.InstallDate.ToString()); - objModules.UpdateModuleSetting(tabModuleId, SettingKeys.IsInstalled, currSettings.IsInstalled.ToString()); - objModules.UpdateModuleSetting(tabModuleId, SettingKeys.Theme, currSettings.Theme); - objModules.UpdateModuleSetting(tabModuleId, SettingKeys.FullText, currSettings.FullText.ToString()); - objModules.UpdateModuleSetting(tabModuleId, SettingKeys.MailQueue, currSettings.MailQueue.ToString()); - objModules.UpdateModuleSetting(tabModuleId, SettingKeys.FloodInterval, currSettings.FloodInterval.ToString()); - objModules.UpdateModuleSetting(tabModuleId, SettingKeys.EditInterval, currSettings.EditInterval.ToString()); - objModules.UpdateModuleSetting(tabModuleId, SettingKeys.DeleteBehavior, currSettings.DeleteBehavior.ToString()); - objModules.UpdateModuleSetting(tabModuleId, SettingKeys.EnableAutoLink, currSettings.AutoLinkEnabled.ToString()); - objModules.UpdateModuleSetting(tabModuleId, SettingKeys.EnableURLRewriter, currSettings.URLRewriteEnabled.ToString()); + DotNetNuke.Entities.Modules.ModuleController.Instance.UpdateModuleSetting(tabModuleId, SettingKeys.PageSize, currSettings.PageSize.ToString()); + DotNetNuke.Entities.Modules.ModuleController.Instance.UpdateModuleSetting(tabModuleId, SettingKeys.UserNameDisplay, currSettings.UserNameDisplay); + DotNetNuke.Entities.Modules.ModuleController.Instance.UpdateModuleSetting(tabModuleId, SettingKeys.ProfileVisibility, ((int)currSettings.ProfileVisibility).ToString()); + DotNetNuke.Entities.Modules.ModuleController.Instance.UpdateModuleSetting(tabModuleId, SettingKeys.EnablePoints, currSettings.EnablePoints.ToString()); + DotNetNuke.Entities.Modules.ModuleController.Instance.UpdateModuleSetting(tabModuleId, SettingKeys.TopicPointValue, currSettings.TopicPointValue.ToString()); + DotNetNuke.Entities.Modules.ModuleController.Instance.UpdateModuleSetting(tabModuleId, SettingKeys.ReplyPointValue, currSettings.ReplyPointValue.ToString()); + DotNetNuke.Entities.Modules.ModuleController.Instance.UpdateModuleSetting(tabModuleId, SettingKeys.AnswerPointValue, currSettings.AnswerPointValue.ToString()); + DotNetNuke.Entities.Modules.ModuleController.Instance.UpdateModuleSetting(tabModuleId, SettingKeys.MarkAnswerPointValue, currSettings.MarkAsAnswerPointValue.ToString()); + DotNetNuke.Entities.Modules.ModuleController.Instance.UpdateModuleSetting(tabModuleId, SettingKeys.ModPointValue, currSettings.ModPointValue.ToString()); + DotNetNuke.Entities.Modules.ModuleController.Instance.UpdateModuleSetting(tabModuleId, SettingKeys.AvatarHeight, currSettings.AvatarHeight.ToString()); + DotNetNuke.Entities.Modules.ModuleController.Instance.UpdateModuleSetting(tabModuleId, SettingKeys.AvatarWidth, currSettings.AvatarWidth.ToString()); + DotNetNuke.Entities.Modules.ModuleController.Instance.UpdateModuleSetting(tabModuleId, SettingKeys.AllowSignatures, currSettings.AllowSignatures.ToString()); + DotNetNuke.Entities.Modules.ModuleController.Instance.UpdateModuleSetting(tabModuleId, SettingKeys.ForumTemplateId, currSettings.ForumTemplateID.ToString()); + DotNetNuke.Entities.Modules.ModuleController.Instance.UpdateModuleSetting(tabModuleId, SettingKeys.InstallDate, currSettings.InstallDate.ToString()); + DotNetNuke.Entities.Modules.ModuleController.Instance.UpdateModuleSetting(tabModuleId, SettingKeys.IsInstalled, currSettings.IsInstalled.ToString()); + DotNetNuke.Entities.Modules.ModuleController.Instance.UpdateModuleSetting(tabModuleId, SettingKeys.Theme, currSettings.Theme); + DotNetNuke.Entities.Modules.ModuleController.Instance.UpdateModuleSetting(tabModuleId, SettingKeys.FullText, currSettings.FullText.ToString()); + DotNetNuke.Entities.Modules.ModuleController.Instance.UpdateModuleSetting(tabModuleId, SettingKeys.MailQueue, currSettings.MailQueue.ToString()); + DotNetNuke.Entities.Modules.ModuleController.Instance.UpdateModuleSetting(tabModuleId, SettingKeys.FloodInterval, currSettings.FloodInterval.ToString()); + DotNetNuke.Entities.Modules.ModuleController.Instance.UpdateModuleSetting(tabModuleId, SettingKeys.EditInterval, currSettings.EditInterval.ToString()); + DotNetNuke.Entities.Modules.ModuleController.Instance.UpdateModuleSetting(tabModuleId, SettingKeys.DeleteBehavior, currSettings.DeleteBehavior.ToString()); + DotNetNuke.Entities.Modules.ModuleController.Instance.UpdateModuleSetting(tabModuleId, SettingKeys.EnableAutoLink, currSettings.AutoLinkEnabled.ToString()); + DotNetNuke.Entities.Modules.ModuleController.Instance.UpdateModuleSetting(tabModuleId, SettingKeys.EnableURLRewriter, currSettings.URLRewriteEnabled.ToString()); if (string.IsNullOrEmpty(currSettings.PrefixURLBase)) { - objModules.UpdateModuleSetting(tabModuleId, SettingKeys.PrefixURLBase, "forums"); + DotNetNuke.Entities.Modules.ModuleController.Instance.UpdateModuleSetting(tabModuleId, SettingKeys.PrefixURLBase, "forums"); } else { - objModules.UpdateModuleSetting(tabModuleId, SettingKeys.PrefixURLBase, currSettings.PrefixURLBase); + DotNetNuke.Entities.Modules.ModuleController.Instance.UpdateModuleSetting(tabModuleId, SettingKeys.PrefixURLBase, currSettings.PrefixURLBase); } if (string.IsNullOrEmpty(currSettings.PrefixURLOther)) { - objModules.UpdateModuleSetting(tabModuleId, SettingKeys.PrefixURLOther, "views"); + DotNetNuke.Entities.Modules.ModuleController.Instance.UpdateModuleSetting(tabModuleId, SettingKeys.PrefixURLOther, "views"); } else { - objModules.UpdateModuleSetting(tabModuleId, SettingKeys.PrefixURLOther, currSettings.PrefixURLOther); + DotNetNuke.Entities.Modules.ModuleController.Instance.UpdateModuleSetting(tabModuleId, SettingKeys.PrefixURLOther, currSettings.PrefixURLOther); } if (string.IsNullOrEmpty(currSettings.PrefixURLTag)) { - objModules.UpdateModuleSetting(tabModuleId, SettingKeys.PrefixURLTags, "tag"); + DotNetNuke.Entities.Modules.ModuleController.Instance.UpdateModuleSetting(tabModuleId, SettingKeys.PrefixURLTags, "tag"); } else { - objModules.UpdateModuleSetting(tabModuleId, SettingKeys.PrefixURLTags, currSettings.PrefixURLTag); + DotNetNuke.Entities.Modules.ModuleController.Instance.UpdateModuleSetting(tabModuleId, SettingKeys.PrefixURLTags, currSettings.PrefixURLTag); } if (string.IsNullOrEmpty(currSettings.PrefixURLCategory)) { - objModules.UpdateModuleSetting(tabModuleId, SettingKeys.PrefixURLCategories, "category"); + DotNetNuke.Entities.Modules.ModuleController.Instance.UpdateModuleSetting(tabModuleId, SettingKeys.PrefixURLCategories, "category"); } else { - objModules.UpdateModuleSetting(tabModuleId, SettingKeys.PrefixURLCategories, currSettings.PrefixURLCategory); + DotNetNuke.Entities.Modules.ModuleController.Instance.UpdateModuleSetting(tabModuleId, SettingKeys.PrefixURLCategories, currSettings.PrefixURLCategory); } Logger.InfoFormat("Settings converted for module Id {0} tab module Id {1}", forumModuleId, tabModuleId); - objModules.DeleteModuleSetting(tabModuleId, "NeedsConvert"); - objModules.UpdateModuleSetting(tabModuleId, "AFINSTALLED", "True"); + DotNetNuke.Entities.Modules.ModuleController.Instance.DeleteModuleSetting(tabModuleId, "NeedsConvert"); + DotNetNuke.Entities.Modules.ModuleController.Instance.UpdateModuleSetting(tabModuleId, "AFINSTALLED", "True"); DataCache.SettingsCacheClear(forumModuleId,string.Format(CacheKeys.MainSettings, forumModuleId)); - } - } + } + internal static void DeleteObsoleteModuleSettings_080100() + { + + /* remove TIMEZONEOFFSET and AMFORUMS */ + + foreach (DotNetNuke.Abstractions.Portals.IPortalInfo portal in DotNetNuke.Entities.Portals.PortalController.Instance.GetPortals()) + { + foreach (ModuleInfo module in DotNetNuke.Entities.Modules.ModuleController.Instance.GetModules(portal.PortalId)) + { + if (module.DesktopModule.ModuleName.Trim().ToLowerInvariant() == Globals.ModuleName.ToLowerInvariant()) + { + DotNetNuke.Entities.Modules.ModuleController.Instance.DeleteModuleSetting(module.ModuleID, "TIMEZONEOFFSET"); + DotNetNuke.Entities.Modules.ModuleController.Instance.DeleteModuleSetting(module.ModuleID, "AMFORUMS"); + } + } + } + } + } } \ No newline at end of file diff --git a/Dnn.CommunityForums/components/Topics/TopicsController.cs b/Dnn.CommunityForums/components/Topics/TopicsController.cs index cb6517dd..43e9881e 100644 --- a/Dnn.CommunityForums/components/Topics/TopicsController.cs +++ b/Dnn.CommunityForums/components/Topics/TopicsController.cs @@ -521,7 +521,7 @@ public string UpgradeModule(string Version) case "07.00.11": try { - DotNetNuke.Modules.ActiveForums.Helpers.UpgradeModuleSettings.MoveSettings(); + DotNetNuke.Modules.ActiveForums.Helpers.UpgradeModuleSettings.MoveSettings_070011(); } catch (Exception ex) { @@ -560,6 +560,19 @@ public string UpgradeModule(string Version) return "Failed"; } + break; + case "08.01.00": + try + { + DotNetNuke.Modules.ActiveForums.Helpers.UpgradeModuleSettings.DeleteObsoleteModuleSettings_080100(); + } + catch (Exception ex) + { + LogError(ex.Message, ex); + Exceptions.LogException(ex); + return "Failed"; + } + break; default: break; diff --git a/Dnn.CommunityForums/config/defaultsetup.config b/Dnn.CommunityForums/config/defaultsetup.config index 7e50df35..30241c40 100644 --- a/Dnn.CommunityForums/config/defaultsetup.config +++ b/Dnn.CommunityForums/config/defaultsetup.config @@ -6,7 +6,6 @@ - diff --git a/Dnn.CommunityForums/controls/af_grid.ascx.cs b/Dnn.CommunityForums/controls/af_grid.ascx.cs index 1bad879d..f3636ad4 100644 --- a/Dnn.CommunityForums/controls/af_grid.ascx.cs +++ b/Dnn.CommunityForums/controls/af_grid.ascx.cs @@ -359,20 +359,7 @@ public string GetArrowPath() public string GetPostTime() { - if (_currentRow == null) - return null; - - var date = GetUserDate(Convert.ToDateTime(_currentRow["DateCreated"])); - var currentDate = GetUserDate(DateTime.UtcNow); - - var datePart = date.ToString(MainSettings.DateFormatString); - - if (currentDate.Date == date.Date) - datePart = GetSharedResource("Today"); - else if (currentDate.AddDays(-1).Date == date.Date) - datePart = GetSharedResource("Yesterday"); - - return string.Format(GetSharedResource("SearchPostTime"), datePart, date.ToString(MainSettings.TimeFormatString)); + return (_currentRow == null) ? null : Utilities.GetUserFriendlyDateTimeString(Convert.ToDateTime(_currentRow["DateCreated"]), ForumModuleId, UserInfo); } public string GetAuthor() @@ -405,20 +392,7 @@ public string GetLastPostAuthor() public string GetLastPostTime() { - if (_currentRow == null) - return null; - - var date = GetUserDate(Convert.ToDateTime(_currentRow["LastReplyDate"])); - var currentDate = GetUserDate(DateTime.UtcNow); - - var datePart = date.ToString(MainSettings.DateFormatString); - - if (currentDate.Date == date.Date) - datePart = GetSharedResource("Today"); - else if (currentDate.AddDays(-1).Date == date.Date) - datePart = GetSharedResource("Yesterday"); - - return datePart + " @ " + date.ToString(MainSettings.TimeFormatString); + return (_currentRow == null) ? null : Utilities.GetUserFriendlyDateTimeString(Convert.ToDateTime(_currentRow["LastReplyDate"]), ForumModuleId, UserInfo); } public string GetIcon() diff --git a/Dnn.CommunityForums/controls/af_search.ascx.cs b/Dnn.CommunityForums/controls/af_search.ascx.cs index 3f41f6db..f27c4d31 100644 --- a/Dnn.CommunityForums/controls/af_search.ascx.cs +++ b/Dnn.CommunityForums/controls/af_search.ascx.cs @@ -527,24 +527,9 @@ public string GetPostUrl() return NavigateUrl(TabId, string.Empty, @params.ToArray()); } - // Todo: Localize today and yesterday - [Obsolete("Deprecated in Community Forums. Removed in 10.00.00. Not Used.")] public string GetPostTime() { - if (_currentRow == null) - return null; - - var date = GetUserDate(Convert.ToDateTime(_currentRow["DateCreated"])); - var currentDate = GetUserDate(DateTime.UtcNow); - - var datePart = date.ToString(MainSettings.DateFormatString); - - if (currentDate.Date == date.Date) - datePart = GetSharedResource("Today"); - else if (currentDate.AddDays(-1).Date == date.Date) - datePart = GetSharedResource("Yesterday"); - - return string.Format(GetSharedResource("SearchPostTime"), datePart, date.ToString(MainSettings.TimeFormatString)); + return (_currentRow == null) ? null : Utilities.GetUserFriendlyDateTimeString(Convert.ToDateTime(_currentRow["DateCreated"]), ForumModuleId, UserInfo); } [Obsolete("Deprecated in Community Forums. Removed in 10.00.00. Not Used.")] @@ -577,24 +562,9 @@ public string GetLastPostAuthor() return UserProfiles.GetDisplayName(ModuleId, true, false, ForumUser.IsAdmin, userId, userName, firstName, lastName, displayName); } - // Todo: Localize today and yesterday - [Obsolete("Deprecated in Community Forums. Removed in 10.00.00. Not Used.")] public string GetLastPostTime() { - if (_currentRow == null) - return null; - - var date = GetUserDate(Convert.ToDateTime(_currentRow["LastReplyDate"])); - var currentDate = GetUserDate(DateTime.UtcNow); - - var datePart = date.ToString(MainSettings.DateFormatString); - - if (currentDate.Date == date.Date) - datePart = GetSharedResource("Today"); - else if (currentDate.AddDays(-1).Date == date.Date) - datePart = GetSharedResource("Yesterday"); - - return datePart + " @ " + date.ToString(MainSettings.TimeFormatString); + return (_currentRow == null) ? null : Utilities.GetUserFriendlyDateTimeString(Convert.ToDateTime(_currentRow["LastReplyDate"]), ForumModuleId, UserInfo); } [Obsolete("Deprecated in Community Forums. Removed in 10.00.00. Not Used.")]