diff --git a/Oqtane.Client/Modules/Admin/ModuleDefinitions/Add.razor b/Oqtane.Client/Modules/Admin/ModuleDefinitions/Add.razor
index 25e0c6a4..fbb8c37e 100644
--- a/Oqtane.Client/Modules/Admin/ModuleDefinitions/Add.razor
+++ b/Oqtane.Client/Modules/Admin/ModuleDefinitions/Add.razor
@@ -96,7 +96,7 @@
{
}
- @if (context.Price != null && !string.IsNullOrEmpty(context.PaymentUrl))
+ @if (context.Price != null && !string.IsNullOrEmpty(context.PaymentUrl) && string.IsNullOrEmpty(context.PackageUrl))
{
@SharedLocalizer["Buy"]
}
diff --git a/Oqtane.Client/Modules/Admin/Themes/Add.razor b/Oqtane.Client/Modules/Admin/Themes/Add.razor
index c56f7f69..04bafe8f 100644
--- a/Oqtane.Client/Modules/Admin/Themes/Add.razor
+++ b/Oqtane.Client/Modules/Admin/Themes/Add.razor
@@ -98,7 +98,7 @@
{
}
- @if (context.Price != null && !string.IsNullOrEmpty(context.PaymentUrl))
+ @if (context.Price != null && !string.IsNullOrEmpty(context.PaymentUrl) && string.IsNullOrEmpty(context.PackageUrl))
{
@SharedLocalizer["Buy"]
}
diff --git a/Oqtane.Client/UI/ThemeBuilder.razor b/Oqtane.Client/UI/ThemeBuilder.razor
index cae90f09..769add2e 100644
--- a/Oqtane.Client/UI/ThemeBuilder.razor
+++ b/Oqtane.Client/UI/ThemeBuilder.razor
@@ -67,16 +67,19 @@
if (!string.IsNullOrEmpty(content))
{
// format head content, remove scripts, and filter duplicate elements
- var elements = (">" + content.Replace("\n", "") + "<").Split("><");
- foreach (var element in elements)
+ content = content.Replace("\n", "");
+ var index = content.IndexOf("<");
+ while (index >= 0)
{
- if (!string.IsNullOrEmpty(element) && !element.ToLower().StartsWith("script"))
+ var element = content.Substring(index, content.IndexOf(">", index) - index + 1);
+ if (!string.IsNullOrEmpty(element) && !element.ToLower().StartsWith("