|
1 | 1 | using System.Data.Objects; |
2 | 2 | using DotNetNuke.Common; |
| 3 | +using DotNetNuke.Common.Internal; |
3 | 4 | using DotNetNuke.Common.Utilities; |
4 | 5 | using DotNetNuke.Entities.Modules; |
5 | 6 | using DotNetNuke.Entities.Portals; |
| 7 | +using DotNetNuke.Entities.Portals.Internal; |
| 8 | +using DotNetNuke.Entities.Tabs.Internal; |
6 | 9 | using DotNetNuke.Security; |
7 | 10 | using DotNetNuke.Security.Permissions; |
8 | 11 | using DotNetNuke.Security.Roles; |
@@ -39,7 +42,7 @@ public class SexyContent : ModuleSearchBase, IUpgradeable |
39 | 42 | { |
40 | 43 | #region Constants |
41 | 44 |
|
42 | | - public const string ModuleVersion = "06.01.06"; |
| 45 | + public const string ModuleVersion = "06.01.07"; |
43 | 46 | public const string TemplateID = "TemplateID"; |
44 | 47 | public const string ContentGroupIDString = "ContentGroupID"; |
45 | 48 | public const string AppIDString = "AppId"; |
@@ -1266,22 +1269,27 @@ public static string ResolveHyperlinkValues(string value, PortalSettings ownerPo |
1266 | 1269 | resultString = fileManager.GetUrl(fileInfo) + urlParams; |
1267 | 1270 | break; |
1268 | 1271 | case "page": |
1269 | | - var portalId = ownerPortalSettings.PortalId; |
1270 | | - var tabInfo = tabController.GetTab(id, portalId, false); |
| 1272 | + var portalSettings = PortalSettings.Current; |
| 1273 | + |
| 1274 | + // Get full PortalSettings (with portal alias) if module sharing is active |
| 1275 | + if (PortalSettings.Current != null && PortalSettings.Current.PortalId != ownerPortalSettings.PortalId) |
| 1276 | + { |
| 1277 | + var portalAlias = ownerPortalSettings.PrimaryAlias ?? TestablePortalAliasController.Instance.GetPortalAliasesByPortalId(ownerPortalSettings.PortalId).First(); |
| 1278 | + portalSettings = new PortalSettings(id, portalAlias); |
| 1279 | + } |
| 1280 | + var tabInfo = tabController.GetTab(id, ownerPortalSettings.PortalId, false); |
1271 | 1281 | if (tabInfo != null) |
1272 | 1282 | { |
1273 | | - //tabInfo.IsDefaultLanguage && |
1274 | 1283 | if (tabInfo.CultureCode != "" && tabInfo.CultureCode != PortalSettings.Current.CultureCode) |
1275 | 1284 | { |
1276 | | - var cultureTabInfo = tabController.GetTabByCulture(tabInfo.TabID, tabInfo.PortalID, |
1277 | | - LocaleController.Instance.GetLocale( |
1278 | | - PortalSettings.Current.CultureCode)); |
| 1285 | + var cultureTabInfo = tabController.GetTabByCulture(tabInfo.TabID, tabInfo.PortalID, LocaleController.Instance.GetLocale(PortalSettings.Current.CultureCode)); |
1279 | 1286 |
|
1280 | 1287 | if (cultureTabInfo != null) |
1281 | 1288 | tabInfo = cultureTabInfo; |
1282 | 1289 | } |
1283 | 1290 |
|
1284 | | - resultString = Globals.NavigateURL(tabInfo.TabID, ownerPortalSettings, "", new string[] {}) + urlParams; |
| 1291 | + // Exception in AdvancedURLProvider because ownerPortalSettings.PortalAlias is null |
| 1292 | + resultString = Globals.NavigateURL(tabInfo.TabID, portalSettings, "", new string[] { }) + urlParams; |
1285 | 1293 | } |
1286 | 1294 | break; |
1287 | 1295 | } |
|
0 commit comments