diff --git a/Oqtane.Client/Modules/Admin/ModuleDefinitions/Add.razor b/Oqtane.Client/Modules/Admin/ModuleDefinitions/Add.razor
index 92f26844..155a0c72 100644
--- a/Oqtane.Client/Modules/Admin/ModuleDefinitions/Add.razor
+++ b/Oqtane.Client/Modules/Admin/ModuleDefinitions/Add.razor
@@ -61,7 +61,7 @@
foreach (Package package in _packages.ToArray())
{
- if (moduledefinitions.Exists(item => Utilities.GetTypeName(item.ModuleDefinitionName) == package.PackageId))
+ if (moduledefinitions.Exists(item => item.PackageName == package.PackageId))
{
_packages.Remove(package);
}
diff --git a/Oqtane.Client/Modules/Admin/ModuleDefinitions/Index.razor b/Oqtane.Client/Modules/Admin/ModuleDefinitions/Index.razor
index 1a86754a..1ffc631b 100644
--- a/Oqtane.Client/Modules/Admin/ModuleDefinitions/Index.razor
+++ b/Oqtane.Client/Modules/Admin/ModuleDefinitions/Index.razor
@@ -34,9 +34,9 @@ else
@context.Name |
@context.Version |
- @if (UpgradeAvailable(context.ModuleDefinitionName, context.Version))
+ @if (UpgradeAvailable(context.PackageName, context.Version))
{
-
+
}
|
@@ -66,12 +66,12 @@ else
}
}
- private bool UpgradeAvailable(string moduledefinitionname, string version)
+ private bool UpgradeAvailable(string packagename, string version)
{
var upgradeavailable = false;
if (_packages != null)
{
- var package = _packages.Where(item => item.PackageId == Utilities.GetTypeName(moduledefinitionname)).FirstOrDefault();
+ var package = _packages.Where(item => item.PackageId == packagename).FirstOrDefault();
if (package != null)
{
upgradeavailable = (Version.Parse(package.Version).CompareTo(Version.Parse(version)) > 0);
@@ -81,18 +81,18 @@ else
return upgradeavailable;
}
- private async Task DownloadModule(string moduledefinitionname, string version)
+ private async Task DownloadModule(string packagename, string version)
{
try
{
- await PackageService.DownloadPackageAsync(moduledefinitionname, version, "Modules");
- await logger.LogInformation("Module Downloaded {ModuleDefinitionName} {Version}", moduledefinitionname, version);
+ await PackageService.DownloadPackageAsync(packagename, version, "Modules");
+ await logger.LogInformation("Module Downloaded {ModuleDefinitionName} {Version}", packagename, version);
await ModuleDefinitionService.InstallModuleDefinitionsAsync();
AddModuleMessage(Localizer["Module Installed Successfully. You Must Restart Your Application To Apply These Changes.", NavigateUrl("admin/system")], MessageType.Success);
}
catch (Exception ex)
{
- await logger.LogError(ex, "Error Downloading Module {ModuleDefinitionName} {Version} {Error}", moduledefinitionname, version, ex.Message);
+ await logger.LogError(ex, "Error Downloading Module {ModuleDefinitionName} {Version} {Error}", packagename, version, ex.Message);
AddModuleMessage(Localizer["Error Downloading Module"], MessageType.Error);
}
}
diff --git a/Oqtane.Client/Modules/Admin/Themes/Add.razor b/Oqtane.Client/Modules/Admin/Themes/Add.razor
index ab042ed5..24501517 100644
--- a/Oqtane.Client/Modules/Admin/Themes/Add.razor
+++ b/Oqtane.Client/Modules/Admin/Themes/Add.razor
@@ -61,7 +61,7 @@
foreach (Package package in _packages.ToArray())
{
- if (themes.Exists(item => Utilities.GetTypeName(item.ThemeName) == package.PackageId))
+ if (themes.Exists(item => item.PackageName == package.PackageId))
{
_packages.Remove(package);
}
diff --git a/Oqtane.Client/Modules/Admin/Themes/Index.razor b/Oqtane.Client/Modules/Admin/Themes/Index.razor
index d87bbd8a..60df31cb 100644
--- a/Oqtane.Client/Modules/Admin/Themes/Index.razor
+++ b/Oqtane.Client/Modules/Admin/Themes/Index.razor
@@ -35,9 +35,9 @@ else
@context.Name |
@context.Version |
- @if (UpgradeAvailable(context.ThemeName, context.Version))
+ @if (UpgradeAvailable(context.PackageName, context.Version))
{
-
+
}
|
|
@@ -68,12 +68,12 @@ else
}
}
- private bool UpgradeAvailable(string themename, string version)
+ private bool UpgradeAvailable(string packagename, string version)
{
var upgradeavailable = false;
if (_packages != null)
{
- var package = _packages.Where(item => item.PackageId == Utilities.GetTypeName(themename)).FirstOrDefault();
+ var package = _packages.Where(item => item.PackageId == packagename).FirstOrDefault();
if (package != null)
{
upgradeavailable = (Version.Parse(package.Version).CompareTo(Version.Parse(version)) > 0);
@@ -82,18 +82,18 @@ else
return upgradeavailable;
}
- private async Task DownloadTheme(string themename, string version)
+ private async Task DownloadTheme(string packagename, string version)
{
try
{
- await PackageService.DownloadPackageAsync(themename, version, "Themes");
- await logger.LogInformation("Theme Downloaded {ThemeName} {Version}", themename, version);
+ await PackageService.DownloadPackageAsync(packagename, version, "Themes");
+ await logger.LogInformation("Theme Downloaded {ThemeName} {Version}", packagename, version);
await ThemeService.InstallThemesAsync();
AddModuleMessage(Localizer["Theme Installed Successfully. You Must Restart Your Application To Apply These Changes.", NavigateUrl("admin/system")], MessageType.Success);
}
catch (Exception ex)
{
- await logger.LogError(ex, "Error Downloading Theme {ThemeName} {Version} {Error}", themename, version, ex.Message);
+ await logger.LogError(ex, "Error Downloading Theme {ThemeName} {Version} {Error}", packagename, version, ex.Message);
AddModuleMessage(Localizer["Error Downloading Theme"], MessageType.Error);
}
}
diff --git a/Oqtane.Server/Repository/ModuleDefinitionRepository.cs b/Oqtane.Server/Repository/ModuleDefinitionRepository.cs
index 5a510c4c..9574ac58 100644
--- a/Oqtane.Server/Repository/ModuleDefinitionRepository.cs
+++ b/Oqtane.Server/Repository/ModuleDefinitionRepository.cs
@@ -231,6 +231,10 @@ namespace Oqtane.Repository
moduledefinition.Version = ""; // will be populated from database
moduledefinition.ControlTypeTemplate = modulecontroltype.Namespace + "." + Constants.ActionToken + ", " + modulecontroltype.Assembly.GetName().Name;
moduledefinition.AssemblyName = assembly.GetName().Name;
+ if (string.IsNullOrEmpty(moduledefinition.PackageName))
+ {
+ moduledefinition.PackageName = Utilities.GetTypeName(moduledefinition.ModuleDefinitionName);
+ }
if (string.IsNullOrEmpty(moduledefinition.Categories))
{
diff --git a/Oqtane.Server/Repository/ThemeRepository.cs b/Oqtane.Server/Repository/ThemeRepository.cs
index c3fc91ee..e338c080 100644
--- a/Oqtane.Server/Repository/ThemeRepository.cs
+++ b/Oqtane.Server/Repository/ThemeRepository.cs
@@ -100,6 +100,10 @@ namespace Oqtane.Repository
theme.Themes = new List();
theme.Containers = new List();
theme.AssemblyName = assembly.FullName.Split(",")[0];
+ if (string.IsNullOrEmpty(theme.PackageName))
+ {
+ theme.PackageName = Utilities.GetTypeName(theme.ThemeName);
+ }
themes.Add(theme);
index = themes.FindIndex(item => item.ThemeName == qualifiedThemeType);
}
diff --git a/Oqtane.Shared/Models/ModuleDefinition.cs b/Oqtane.Shared/Models/ModuleDefinition.cs
index dbc74903..688d1f15 100644
--- a/Oqtane.Shared/Models/ModuleDefinition.cs
+++ b/Oqtane.Shared/Models/ModuleDefinition.cs
@@ -28,6 +28,7 @@ namespace Oqtane.Models
ReleaseVersions = "";
DefaultAction = "";
SettingsType = "";
+ PackageName = "";
Runtimes = "";
Template = "";
}
@@ -92,6 +93,8 @@ namespace Oqtane.Models
public string DefaultAction { get; set; }
[NotMapped]
public string SettingsType { get; set; } // added in 2.0.2
+ [NotMapped]
+ public string PackageName { get; set; } // added in 2.1.0
// internal properties
[NotMapped]
diff --git a/Oqtane.Shared/Models/Theme.cs b/Oqtane.Shared/Models/Theme.cs
index 20336047..ba881dd4 100644
--- a/Oqtane.Shared/Models/Theme.cs
+++ b/Oqtane.Shared/Models/Theme.cs
@@ -15,6 +15,9 @@ namespace Oqtane.Models
License = "";
Dependencies = "";
Template = "";
+ ThemeSettingsType = "";
+ ContainerSettingsType = "";
+ PackageName = "";
}
public string ThemeName { get; set; }
@@ -25,8 +28,9 @@ namespace Oqtane.Models
public string Contact { get; set; }
public string License { get; set; }
public string Dependencies { get; set; }
- public string ThemeSettingsType { get; set; }
- public string ContainerSettingsType { get; set; }
+ public string ThemeSettingsType { get; set; } // added in 2.0.2
+ public string ContainerSettingsType { get; set; } // added in 2.0.2
+ public string PackageName { get; set; } // added in 2.1.0
// internal properties
public string AssemblyName { get; set; }