diff --git a/Oqtane.Client/Modules/ModuleBase.cs b/Oqtane.Client/Modules/ModuleBase.cs
index 0f56752d..8023da67 100644
--- a/Oqtane.Client/Modules/ModuleBase.cs
+++ b/Oqtane.Client/Modules/ModuleBase.cs
@@ -77,7 +77,7 @@ namespace Oqtane.Modules
{
if (PageState.Page.Resources != null)
{
- resources = PageState.Page.Resources.Where(item => item.ResourceType == ResourceType.Script && item.Namespace == type.Namespace).ToList();
+ resources = PageState.Page.Resources.Where(item => item.ResourceType == ResourceType.Script && item.Level != ResourceLevel.Site && item.Namespace == type.Namespace).ToList();
}
}
else // modulecontrolbase
diff --git a/Oqtane.Client/Themes/ThemeBase.cs b/Oqtane.Client/Themes/ThemeBase.cs
index 8dcbe65c..8fcb1a30 100644
--- a/Oqtane.Client/Themes/ThemeBase.cs
+++ b/Oqtane.Client/Themes/ThemeBase.cs
@@ -40,7 +40,7 @@ namespace Oqtane.Themes
{
if (PageState.Page.Resources != null)
{
- resources = PageState.Page.Resources.Where(item => item.ResourceType == ResourceType.Script && item.Namespace == type.Namespace).ToList();
+ resources = PageState.Page.Resources.Where(item => item.ResourceType == ResourceType.Script && item.Level != ResourceLevel.Site && item.Namespace == type.Namespace).ToList();
}
}
else // themecontrolbase, containerbase
diff --git a/Oqtane.Client/UI/SiteRouter.razor b/Oqtane.Client/UI/SiteRouter.razor
index df98874c..cd3a1764 100644
--- a/Oqtane.Client/UI/SiteRouter.razor
+++ b/Oqtane.Client/UI/SiteRouter.razor
@@ -513,22 +513,25 @@
{
foreach (var resource in resources)
{
- if (resource.Url.StartsWith("~"))
+ if (resource.Level != ResourceLevel.Site)
{
- resource.Url = resource.Url.Replace("~", "/" + type + "/" + name + "/").Replace("//", "/");
- }
- if (!resource.Url.Contains("://") && alias.BaseUrl != "" && !resource.Url.StartsWith(alias.BaseUrl))
- {
- resource.Url = alias.BaseUrl + resource.Url;
- }
+ if (resource.Url.StartsWith("~"))
+ {
+ resource.Url = resource.Url.Replace("~", "/" + type + "/" + name + "/").Replace("//", "/");
+ }
+ if (!resource.Url.Contains("://") && alias.BaseUrl != "" && !resource.Url.StartsWith(alias.BaseUrl))
+ {
+ resource.Url = alias.BaseUrl + resource.Url;
+ }
- // ensure resource does not exist already
- if (!pageresources.Exists(item => item.Url.ToLower() == resource.Url.ToLower()))
- {
- resource.Level = level;
- resource.Namespace = name;
- pageresources.Add(resource);
- }
+ // ensure resource does not exist already
+ if (!pageresources.Exists(item => item.Url.ToLower() == resource.Url.ToLower()))
+ {
+ resource.Level = level;
+ resource.Namespace = name;
+ pageresources.Add(resource);
+ }
+ }
}
}
return pageresources;
diff --git a/Oqtane.Client/UI/ThemeBuilder.razor b/Oqtane.Client/UI/ThemeBuilder.razor
index 1bf1ac23..0719a546 100644
--- a/Oqtane.Client/UI/ThemeBuilder.razor
+++ b/Oqtane.Client/UI/ThemeBuilder.razor
@@ -42,13 +42,6 @@
}
headcontent += $"\n";
- // stylesheets
- //foreach (Resource resource in PageState.Page.Resources.Where(item => item.ResourceType == ResourceType.Stylesheet))
- //{
- // var url = (resource.Url.Contains("://")) ? resource.Url : PageState.Alias.BaseUrl + resource.Url;
- // headcontent += "" + "\n";
- //}
-
// head content
AddHeadContent(headcontent, PageState.Site.HeadContent);
if (!string.IsNullOrEmpty(PageState.Site.HeadContent))
@@ -103,49 +96,24 @@
}
}
- if (PageState.Page.Resources != null)
+ // style sheets
+ if (PageState.Page.Resources != null && PageState.Page.Resources.Exists(item => item.ResourceType == ResourceType.Stylesheet))
{
- if (PageState.Page.Resources.Exists(item => item.ResourceType == ResourceType.Stylesheet))
+ var interop = new Interop(JSRuntime);
+ string batch = DateTime.UtcNow.ToString("yyyyMMddHHmmssfff");
+ var links = new List