@L["Login"]
diff --git a/modules/account/src/Volo.Abp.Account.Web/Pages/Account/Login.cshtml.cs b/modules/account/src/Volo.Abp.Account.Web/Pages/Account/Login.cshtml.cs
index 6ab8350b60..c17eb1e28f 100644
--- a/modules/account/src/Volo.Abp.Account.Web/Pages/Account/Login.cshtml.cs
+++ b/modules/account/src/Volo.Abp.Account.Web/Pages/Account/Login.cshtml.cs
@@ -10,6 +10,8 @@ using System.Diagnostics;
using System.Linq;
using System.Security.Claims;
using System.Threading.Tasks;
+using Microsoft.AspNetCore.Hosting;
+using Microsoft.Extensions.Hosting;
using Volo.Abp.Account.Settings;
using Volo.Abp.Auditing;
using Volo.Abp.Identity;
@@ -53,18 +55,22 @@ public class LoginModel : AccountPageModel
protected AbpAccountOptions AccountOptions { get; }
protected IOptions
IdentityOptions { get; }
protected IdentityDynamicClaimsPrincipalContributorCache IdentityDynamicClaimsPrincipalContributorCache { get; }
+ protected IWebHostEnvironment WebHostEnvironment { get; }
public bool ShowCancelButton { get; set; }
+ public bool ShowRequireMigrateSeedMessage { get; set; }
public LoginModel(
IAuthenticationSchemeProvider schemeProvider,
IOptions accountOptions,
IOptions identityOptions,
- IdentityDynamicClaimsPrincipalContributorCache identityDynamicClaimsPrincipalContributorCache)
+ IdentityDynamicClaimsPrincipalContributorCache identityDynamicClaimsPrincipalContributorCache,
+ IWebHostEnvironment webHostEnvironment)
{
SchemeProvider = schemeProvider;
IdentityOptions = identityOptions;
AccountOptions = accountOptions.Value;
IdentityDynamicClaimsPrincipalContributorCache = identityDynamicClaimsPrincipalContributorCache;
+ WebHostEnvironment = webHostEnvironment;
}
public virtual async Task OnGetAsync()
@@ -130,6 +136,17 @@ public class LoginModel : AccountPageModel
if (!result.Succeeded)
{
+ if (LoginInput.UserNameOrEmailAddress == IdentityDataSeedContributor.AdminUserNameDefaultValue &&
+ WebHostEnvironment.IsDevelopment())
+ {
+ var adminUser = await UserManager.FindByNameAsync(IdentityDataSeedContributor.AdminUserNameDefaultValue);
+ if (adminUser == null)
+ {
+ ShowRequireMigrateSeedMessage = true;
+ return Page();
+ }
+ }
+
Alerts.Danger(L["InvalidUserNameOrPassword"]);
return Page();
}
diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/ar.json b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/ar.json
index 3b94f7f834..58f1b5bf7a 100644
--- a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/ar.json
+++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/ar.json
@@ -67,6 +67,9 @@
"EntityHistory": "ŲŖŲ§Ų±ŁŲ® Ų§ŁŁŁŲ§Ł",
"DaysAgoTitle": "{0} {1}.",
"DaysAgoWithUserTitle": "{0} {1} ŲØŁŲ§Ų³Ų·Ų© {2}.",
+ "MinutesAgo": "Ł
ŁŲ° {0} ŲÆŁŁŁŲ©",
+ "HoursAgo": "Ł
ŁŲ° {0} Ų³Ų§Ų¹Ų©",
+ "DaysAgo": "Ł
ŁŲ° {0} ŁŁŁ
",
"Created": "Ų®ŁŁŲŖ",
"Updated": "Ł
ŲŲÆŲ«",
"Deleted": "ŲŖŁ
Ų§ŁŲŲ°Ł",
diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/cs.json b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/cs.json
index ceeb244fc8..b415c41556 100644
--- a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/cs.json
+++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/cs.json
@@ -67,6 +67,9 @@
"EntityHistory": "Historie entity",
"DaysAgoTitle": "{0} {1}.",
"DaysAgoWithUserTitle": "{0} {1} od {2}.",
+ "MinutesAgo": "pÅed {0} minutami",
+ "HoursAgo": "pÅed {0} hodinami",
+ "DaysAgo": "pÅed {0} dny",
"Created": "VytvoÅeno",
"Updated": "AktualizovƔno",
"Deleted": "SmazƔno",
diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/de-DE.json b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/de-DE.json
index 75e5c251c3..512556988f 100644
--- a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/de-DE.json
+++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/de-DE.json
@@ -66,6 +66,9 @@
"EntityHistory": "EntitƤtsverlauf",
"DaysAgoTitle": "{0} {1}.",
"DaysAgoWithUserTitle": "{0} {1} durch {2}.",
+ "MinutesAgo": "Vor {0} Minuten",
+ "HoursAgo": "Vor {0} Stunden",
+ "DaysAgo": "Vor {0} Tagen",
"Created": "Erstellt",
"Updated": "Aktualisiert",
"Deleted": "Gelƶscht",
diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/de.json b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/de.json
index 2f3152fca5..06d2a825f4 100644
--- a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/de.json
+++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/de.json
@@ -67,6 +67,9 @@
"EntityHistory": "EntitƤtsgeschichte",
"DaysAgoTitle": "{0} {1}.",
"DaysAgoWithUserTitle": "{0} {1} von {2}.",
+ "MinutesAgo": "Vor {0} Minuten",
+ "HoursAgo": "Vor {0} Stunden",
+ "DaysAgo": "Vor {0} Tagen",
"Created": "Erstellt",
"Updated": "Aktualisiert",
"Deleted": "Gelƶscht",
diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/en.json b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/en.json
index 4071fac620..ac03e75db7 100644
--- a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/en.json
+++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/en.json
@@ -67,6 +67,9 @@
"EntityHistory": "Entity history",
"DaysAgoTitle": "{0} {1}.",
"DaysAgoWithUserTitle": "{0} {1} by {2}.",
+ "MinutesAgo": "{0} minutes ago",
+ "HoursAgo": "{0} hours ago",
+ "DaysAgo": "{0} days ago",
"Created": "Created",
"Updated": "Updated",
"Deleted": "Deleted",
diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/es.json b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/es.json
index 1227e0bc08..310b5de91b 100644
--- a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/es.json
+++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/es.json
@@ -67,6 +67,9 @@
"EntityHistory": "Historial de entidad",
"DaysAgoTitle": "{0} {1}.",
"DaysAgoWithUserTitle": "{0} {1} por {2}.",
+ "MinutesAgo": "Hace {0} minutos",
+ "HoursAgo": "Hace {0} horas",
+ "DaysAgo": "Hace {0} dĆas",
"Created": "Creado",
"Updated": "Actualizado",
"Deleted": "Eliminado",
diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/fi.json b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/fi.json
index 9870d85155..76b374f51a 100644
--- a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/fi.json
+++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/fi.json
@@ -67,6 +67,9 @@
"EntityHistory": "Entiteettihistoria",
"DaysAgoTitle": "{0} {1}.",
"DaysAgoWithUserTitle": "{0} {1} kirjoittanut {2}.",
+ "MinutesAgo": "{0} minuuttia sitten",
+ "HoursAgo": "{0} tuntia sitten",
+ "DaysAgo": "{0} pƤivƤƤ sitten",
"Created": "Luotu",
"Updated": "PƤivitetty",
"Deleted": "Poistettu",
diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/fr.json b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/fr.json
index ced0d637c9..5ea79065aa 100644
--- a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/fr.json
+++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/fr.json
@@ -67,6 +67,9 @@
"EntityHistory": "Historique de l'entitƩ",
"DaysAgoTitle": "{0} {1}.",
"DaysAgoWithUserTitle": "{0} {1} par {2}.",
+ "MinutesAgo": "Il y a {0} minutes",
+ "HoursAgo": "Il y a {0} heures",
+ "DaysAgo": "Il y a {0} jours",
"Created": "CrƩƩ",
"Updated": "Mise Ć jour",
"Deleted": "SupprimƩ",
diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/hi.json b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/hi.json
index 7c6a4b5587..7e1e84de7e 100644
--- a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/hi.json
+++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/hi.json
@@ -67,6 +67,9 @@
"EntityHistory": "ą¤ą¤ą¤¾ą¤ ą¤ą¤¤ą¤æą¤¹ą¤¾ą¤ø",
"DaysAgoTitle": "{0} {1}.",
"DaysAgoWithUserTitle": "{0} {1} ą¤øą„ {2}ą„¤",
+ "MinutesAgo": "{0} मिनठपहलą„",
+ "HoursAgo": "{0} ą¤ą¤ą¤ą„ पहलą„",
+ "DaysAgo": "{0} दिन पहलą„",
"Created": "बनाया ऄा",
"Updated": "ą¤
ą¤¦ą„ą¤Æą¤¤ą¤Ø",
"Deleted": "ą¤¹ą¤ą¤¾ą¤ ą¤ą¤",
diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/hr.json b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/hr.json
index ec6028c6a8..ed6c345578 100644
--- a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/hr.json
+++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/hr.json
@@ -67,6 +67,9 @@
"EntityHistory": "Povijest entiteta",
"DaysAgoTitle": "{0} {1}.",
"DaysAgoWithUserTitle": "{0} {1} od {2}.",
+ "MinutesAgo": "prije {0} minuta",
+ "HoursAgo": "prije {0} sati",
+ "DaysAgo": "prije {0} dana",
"Created": "Stvoreno",
"Updated": "Ažurirano",
"Deleted": "Izbrisano",
diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/hu.json b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/hu.json
index 1122431190..816aa4c0d5 100644
--- a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/hu.json
+++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/hu.json
@@ -67,6 +67,9 @@
"EntityHistory": "EntitƔstƶrtƩnet",
"DaysAgoTitle": "{0} {1}.",
"DaysAgoWithUserTitle": "{0} {1}, szerzÅ: {2}.",
+ "MinutesAgo": "{0} perce",
+ "HoursAgo": "{0} órÔja",
+ "DaysAgo": "{0} napja",
"Created": "LƩtrehozva",
"Updated": "FrissĆtve",
"Deleted": "Tƶrƶlve",
diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/is.json b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/is.json
index cdf1217b36..fc556570ff 100644
--- a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/is.json
+++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/is.json
@@ -67,6 +67,9 @@
"EntityHistory": "Saga eininga",
"DaysAgoTitle": "{0} {1}.",
"DaysAgoWithUserTitle": "{0} {1} eftir {2}.",
+ "MinutesAgo": "fyrir {0} mĆnĆŗtum",
+ "HoursAgo": "fyrir {0} klukkustundum",
+ "DaysAgo": "fyrir {0} dƶgum",
"Created": "Búið til",
"Updated": "UppfƦrt",
"Deleted": "Eytt",
diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/it.json b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/it.json
index 1a7823908a..6e3ef94959 100644
--- a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/it.json
+++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/it.json
@@ -67,6 +67,9 @@
"EntityHistory": "Storia dell'entitĆ ",
"DaysAgoTitle": "{0} {1}.",
"DaysAgoWithUserTitle": "{0} {1} di {2}.",
+ "MinutesAgo": "{0} minuti fa",
+ "HoursAgo": "{0} ore fa",
+ "DaysAgo": "{0} giorni fa",
"Created": "Creato",
"Updated": "Aggiornato",
"Deleted": "Eliminato",
diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/nl.json b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/nl.json
index 6500e216b6..289b2318e3 100644
--- a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/nl.json
+++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/nl.json
@@ -67,6 +67,9 @@
"EntityHistory": "Entiteitsgeschiedenis",
"DaysAgoTitle": "{0} {1}.",
"DaysAgoWithUserTitle": "{0} {1} door {2}.",
+ "MinutesAgo": "{0} minuten geleden",
+ "HoursAgo": "{0} uur geleden",
+ "DaysAgo": "{0} dagen geleden",
"Created": "Gemaakt",
"Updated": "Bijgewerkt",
"Deleted": "Verwijderd",
diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/pl-PL.json b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/pl-PL.json
index bbbc627b98..9f4f6db58f 100644
--- a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/pl-PL.json
+++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/pl-PL.json
@@ -67,6 +67,9 @@
"EntityHistory": "Historia jednostki",
"DaysAgoTitle": "{0} {1}.",
"DaysAgoWithUserTitle": "{0} {1} autorstwa {2}.",
+ "MinutesAgo": "{0} minut temu",
+ "HoursAgo": "{0} godzin temu",
+ "DaysAgo": "{0} dni temu",
"Created": "Utworzony",
"Updated": "Zaktualizowano",
"Deleted": "UsuniÄto",
diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/pt-BR.json b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/pt-BR.json
index 8e5557e442..d88aba16a6 100644
--- a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/pt-BR.json
+++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/pt-BR.json
@@ -67,6 +67,9 @@
"EntityHistory": "História da Entidade",
"DaysAgoTitle": "{0} {1}.",
"DaysAgoWithUserTitle": "{0} {1} por {2}.",
+ "MinutesAgo": "{0} minutos atrƔs",
+ "HoursAgo": "{0} horas atrƔs",
+ "DaysAgo": "{0} dias atrƔs",
"Created": "Criado",
"Updated": "Atualizado",
"Deleted": "ExcluĆdo",
diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/ro-RO.json b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/ro-RO.json
index 73da32a928..0b546c4866 100644
--- a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/ro-RO.json
+++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/ro-RO.json
@@ -67,6 +67,9 @@
"EntityHistory": "Istoricul entitÄČii",
"DaysAgoTitle": "{0} {1}.",
"DaysAgoWithUserTitle": "{0} {1} de la {2}.",
+ "MinutesAgo": "acum {0} minute",
+ "HoursAgo": "acum {0} ore",
+ "DaysAgo": "acum {0} zile",
"Created": "CreatÄ",
"Updated": "Actualizat",
"Deleted": "Čters",
diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/ru.json b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/ru.json
index 9dba5121ce..9d12238ac2 100644
--- a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/ru.json
+++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/ru.json
@@ -67,6 +67,9 @@
"EntityHistory": "ŠŃŃŠ¾ŃŠøŃ Š¾Š±ŃŠµŠŗŃа",
"DaysAgoTitle": "{0} {1}.",
"DaysAgoWithUserTitle": "{0} {1} Š¾Ń {2}.",
+ "MinutesAgo": "{0} минŃŃ Š½Š°Š·Š°Š“",
+ "HoursAgo": "{0} ŃŠ°Ńов назаГ",
+ "DaysAgo": "{0} Гней назаГ",
"Created": "Š”Š¾Š·Š“Š°Š½Š½ŃŠ¹",
"Updated": "ŠŠ±Š½Š¾Š²Š»ŠµŠ½Š¾",
"Deleted": "УГалено",
diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/sk.json b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/sk.json
index 672f32dd44..ae3925ea79 100644
--- a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/sk.json
+++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/sk.json
@@ -67,6 +67,9 @@
"EntityHistory": "História entity",
"DaysAgoTitle": "{0} {1}.",
"DaysAgoWithUserTitle": "{0} {1} vykonal {2}.",
+ "MinutesAgo": "pred {0} minĆŗtami",
+ "HoursAgo": "pred {0} hodinami",
+ "DaysAgo": "pred {0} dÅami",
"Created": "VytvorenĆ”",
"Updated": "AktualizovanĆ”",
"Deleted": "ZmazanĆ”",
diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/sl.json b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/sl.json
index 324a03b6db..460e43458e 100644
--- a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/sl.json
+++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/sl.json
@@ -67,6 +67,9 @@
"EntityHistory": "Zgodovina entitete",
"DaysAgoTitle": "{0} {1}.",
"DaysAgoWithUserTitle": "{0} {1} avtorja {2}.",
+ "MinutesAgo": "pred {0} minutami",
+ "HoursAgo": "pred {0} urami",
+ "DaysAgo": "pred {0} dnevi",
"Created": "Ustvarjeno",
"Updated": "Posodobljeno",
"Deleted": "Izbrisano",
diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/sv.json b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/sv.json
index 2432e63d33..3c57005a3d 100644
--- a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/sv.json
+++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/sv.json
@@ -67,6 +67,9 @@
"EntityHistory": "Enhetens historia",
"DaysAgoTitle": "{0} {1}.",
"DaysAgoWithUserTitle": "{0} {1} av {2}.",
+ "MinutesAgo": "{0} minuter sedan",
+ "HoursAgo": "{0} timmar sedan",
+ "DaysAgo": "{0} dagar sedan",
"Created": "Skapad",
"Updated": "Uppdaterad",
"Deleted": "Borttagen",
diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/tr.json b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/tr.json
index 6fb89d3b2b..b3e09335fc 100644
--- a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/tr.json
+++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/tr.json
@@ -66,6 +66,9 @@
"EntityHistory": "Entity GeƧmiÅi",
"DaysAgoTitle": "{1} {0}.",
"DaysAgoWithUserTitle": "{1} {2} tarafından {0}.",
+ "MinutesAgo": "{0} dakika ƶnce",
+ "HoursAgo": "{0} saat ƶnce",
+ "DaysAgo": "{0} gün önce",
"Created": "OluÅturuldu",
"Updated": "Güncellendi",
"Deleted": "Silindi",
diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/vi.json b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/vi.json
index 0ea4845071..933593c168 100644
--- a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/vi.json
+++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/vi.json
@@ -67,6 +67,9 @@
"EntityHistory": "Lį»ch sį» thį»±c thį»",
"DaysAgoTitle": "{0} {1}.",
"DaysAgoWithUserTitle": "{0} {1} cį»§a {2}.",
+ "MinutesAgo": "{0} phĆŗt trʰį»c",
+ "HoursAgo": "{0} giį» trʰį»c",
+ "DaysAgo": "{0} ngĆ y trʰį»c",
"Created": "Tįŗ”o",
"Updated": "ÄĆ£ cįŗp nhįŗt",
"Deleted": "ÄĆ£ xóa",
diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/zh-Hans.json b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/zh-Hans.json
index 3f6099f04f..dc9cc4d667 100644
--- a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/zh-Hans.json
+++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/zh-Hans.json
@@ -67,6 +67,9 @@
"EntityHistory": "å®ä½åå²",
"DaysAgoTitle": "{0} {1}.",
"DaysAgoWithUserTitle": "{0} {1} by {2}ć",
+ "MinutesAgo": "{0}åéå",
+ "HoursAgo": "{0}å°ę¶å",
+ "DaysAgo": "{0}天å",
"Created": "å建",
"Updated": "å·²ę“ę°",
"Deleted": "å·²å é¤",
diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/zh-Hant.json b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/zh-Hant.json
index 5b663c9568..dc0275186d 100644
--- a/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/zh-Hant.json
+++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Domain.Shared/Volo/Abp/AuditLogging/Localization/zh-Hant.json
@@ -67,6 +67,9 @@
"EntityHistory": "實é«ę·å²",
"DaysAgoTitle": "{0} {1}.",
"DaysAgoWithUserTitle": "{0} {1} éé {2}.",
+ "MinutesAgo": "{0}åéå",
+ "HoursAgo": "{0}å°ęå",
+ "DaysAgo": "{0}天å",
"Created": "建ē«",
"Updated": "ę“ę°",
"Deleted": "å·²åŖé¤",
diff --git a/modules/audit-logging/src/Volo.Abp.AuditLogging.Installer/InstallationNotes.md b/modules/audit-logging/src/Volo.Abp.AuditLogging.Installer/InstallationNotes.md
new file mode 100644
index 0000000000..35bd77d32d
--- /dev/null
+++ b/modules/audit-logging/src/Volo.Abp.AuditLogging.Installer/InstallationNotes.md
@@ -0,0 +1,9 @@
+# Installation Notes for Audit Logging Module
+
+The ABP Audit Logging module provides automatic audit logging for web requests, service methods, and entity changes. It helps you track user activities and changes in your application.
+
+This module is part of the ABP Framework and provides comprehensive audit logging capabilities including entity history tracking, exception logging, and user activity monitoring.
+
+## Documentation
+
+For detailed information and usage instructions, please visit the [Audit Logging documentation](https://abp.io/docs/latest/framework/infrastructure/audit-logging).
\ No newline at end of file
diff --git a/modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain.Shared/Volo/Abp/BackgroundJobs/BackgroundJobRecordConsts.cs b/modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain.Shared/Volo/Abp/BackgroundJobs/BackgroundJobRecordConsts.cs
index 4369bfcece..7cf4e651fe 100644
--- a/modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain.Shared/Volo/Abp/BackgroundJobs/BackgroundJobRecordConsts.cs
+++ b/modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain.Shared/Volo/Abp/BackgroundJobs/BackgroundJobRecordConsts.cs
@@ -2,6 +2,11 @@
public static class BackgroundJobRecordConsts
{
+ ///
+ /// Default value: 96
+ ///
+ public static int MaxApplicationNameLength { get; set; } = 96;
+
///
/// Default value: 128
///
diff --git a/modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain/Volo/Abp/BackgroundJobs/BackgroundJobRecord.cs b/modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain/Volo/Abp/BackgroundJobs/BackgroundJobRecord.cs
index 66714af6d6..c01f933781 100644
--- a/modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain/Volo/Abp/BackgroundJobs/BackgroundJobRecord.cs
+++ b/modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain/Volo/Abp/BackgroundJobs/BackgroundJobRecord.cs
@@ -6,6 +6,11 @@ namespace Volo.Abp.BackgroundJobs;
public class BackgroundJobRecord : AggregateRoot, IHasCreationTime
{
+ ///
+ /// Application name that scheduled this job.
+ ///
+ public virtual string ApplicationName { get; set; }
+
///
/// Type of the job.
/// It's AssemblyQualifiedName of job type.
diff --git a/modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain/Volo/Abp/BackgroundJobs/BackgroundJobStore.cs b/modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain/Volo/Abp/BackgroundJobs/BackgroundJobStore.cs
index e29948cc95..c7dbd6fbef 100644
--- a/modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain/Volo/Abp/BackgroundJobs/BackgroundJobStore.cs
+++ b/modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain/Volo/Abp/BackgroundJobs/BackgroundJobStore.cs
@@ -34,10 +34,10 @@ public class BackgroundJobStore : IBackgroundJobStore, ITransientDependency
);
}
- public virtual async Task> GetWaitingJobsAsync(int maxResultCount)
+ public virtual async Task> GetWaitingJobsAsync(string applicationName, int maxResultCount)
{
return ObjectMapper.Map, List>(
- await BackgroundJobRepository.GetWaitingListAsync(maxResultCount)
+ await BackgroundJobRepository.GetWaitingListAsync(applicationName, maxResultCount)
);
}
diff --git a/modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain/Volo/Abp/BackgroundJobs/IBackgroundJobRepository.cs b/modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain/Volo/Abp/BackgroundJobs/IBackgroundJobRepository.cs
index b3c552c974..7e189df5c8 100644
--- a/modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain/Volo/Abp/BackgroundJobs/IBackgroundJobRepository.cs
+++ b/modules/background-jobs/src/Volo.Abp.BackgroundJobs.Domain/Volo/Abp/BackgroundJobs/IBackgroundJobRepository.cs
@@ -2,11 +2,12 @@
using System.Collections.Generic;
using System.Threading;
using System.Threading.Tasks;
+using JetBrains.Annotations;
using Volo.Abp.Domain.Repositories;
namespace Volo.Abp.BackgroundJobs;
public interface IBackgroundJobRepository : IBasicRepository
{
- Task> GetWaitingListAsync(int maxResultCount, CancellationToken cancellationToken = default);
+ Task> GetWaitingListAsync([CanBeNull] string applicationName, int maxResultCount, CancellationToken cancellationToken = default);
}
diff --git a/modules/background-jobs/src/Volo.Abp.BackgroundJobs.EntityFrameworkCore/Volo/Abp/BackgroundJobs/EntityFrameworkCore/BackgroundJobsDbContextModelCreatingExtensions.cs b/modules/background-jobs/src/Volo.Abp.BackgroundJobs.EntityFrameworkCore/Volo/Abp/BackgroundJobs/EntityFrameworkCore/BackgroundJobsDbContextModelCreatingExtensions.cs
index 5b51c8809d..53a2c53843 100644
--- a/modules/background-jobs/src/Volo.Abp.BackgroundJobs.EntityFrameworkCore/Volo/Abp/BackgroundJobs/EntityFrameworkCore/BackgroundJobsDbContextModelCreatingExtensions.cs
+++ b/modules/background-jobs/src/Volo.Abp.BackgroundJobs.EntityFrameworkCore/Volo/Abp/BackgroundJobs/EntityFrameworkCore/BackgroundJobsDbContextModelCreatingExtensions.cs
@@ -22,6 +22,7 @@ public static class BackgroundJobsDbContextModelCreatingExtensions
b.ConfigureByConvention();
+ b.Property(x => x.ApplicationName).IsRequired(false).HasMaxLength(BackgroundJobRecordConsts.MaxApplicationNameLength);
b.Property(x => x.JobName).IsRequired().HasMaxLength(BackgroundJobRecordConsts.MaxJobNameLength);
b.Property(x => x.JobArgs).IsRequired().HasMaxLength(BackgroundJobRecordConsts.MaxJobArgsLength);
b.Property(x => x.TryCount).HasDefaultValue(0);
diff --git a/modules/background-jobs/src/Volo.Abp.BackgroundJobs.EntityFrameworkCore/Volo/Abp/BackgroundJobs/EntityFrameworkCore/EfCoreBackgroundJobRepository.cs b/modules/background-jobs/src/Volo.Abp.BackgroundJobs.EntityFrameworkCore/Volo/Abp/BackgroundJobs/EntityFrameworkCore/EfCoreBackgroundJobRepository.cs
index a2be3c6e1e..a81de3cdfb 100644
--- a/modules/background-jobs/src/Volo.Abp.BackgroundJobs.EntityFrameworkCore/Volo/Abp/BackgroundJobs/EntityFrameworkCore/EfCoreBackgroundJobRepository.cs
+++ b/modules/background-jobs/src/Volo.Abp.BackgroundJobs.EntityFrameworkCore/Volo/Abp/BackgroundJobs/EntityFrameworkCore/EfCoreBackgroundJobRepository.cs
@@ -3,6 +3,7 @@ using System.Collections.Generic;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
+using JetBrains.Annotations;
using Microsoft.EntityFrameworkCore;
using Volo.Abp.Domain.Repositories.EntityFrameworkCore;
using Volo.Abp.EntityFrameworkCore;
@@ -22,17 +23,16 @@ public class EfCoreBackgroundJobRepository : EfCoreRepository> GetWaitingListAsync(
- int maxResultCount,
- CancellationToken cancellationToken = default)
+ public virtual async Task> GetWaitingListAsync([CanBeNull] string applicationName, int maxResultCount, CancellationToken cancellationToken = default)
{
- return await (await GetWaitingListQueryAsync(maxResultCount)).ToListAsync(GetCancellationToken(cancellationToken));
+ return await (await GetWaitingListQueryAsync(applicationName, maxResultCount)).ToListAsync(GetCancellationToken(cancellationToken));
}
- protected virtual async Task