Browse Source

Merge pull request #71 from volosoft/abp5

Upgrade to ABP 5.0 & Bootstrap 5.x
pull/74/merge
Berkan Sasmaz 5 years ago
committed by GitHub
parent
commit
100146a534
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 2
      etc/azure/deploy-to-k8s.yml
  2. 2
      modules/payment/src/Payment.Domain.Shared/Payment.Domain.Shared.csproj
  3. 2
      modules/payment/src/Payment.Web/Payment.Web.csproj
  4. 2
      modules/payment/test/Payment.EntityFrameworkCore.Tests/Payment.EntityFrameworkCore.Tests.csproj
  5. 6
      src/EventHub.Admin.Application.Contracts/EventHub.Admin.Application.Contracts.csproj
  6. 6
      src/EventHub.Admin.Application/EventHub.Admin.Application.csproj
  7. 6
      src/EventHub.Admin.HttpApi.Client/EventHub.Admin.HttpApi.Client.csproj
  8. 2
      src/EventHub.Admin.HttpApi.Host/Dockerfile
  9. 16
      src/EventHub.Admin.HttpApi.Host/EventHub.Admin.HttpApi.Host.csproj
  10. 6
      src/EventHub.Admin.HttpApi/EventHub.Admin.HttpApi.csproj
  11. 4
      src/EventHub.Admin.Web/Components/UserPicker/UserPicker.razor.cs
  12. 14
      src/EventHub.Admin.Web/EventHub.Admin.Web.csproj
  13. 77
      src/EventHub.Admin.Web/Menus/EventHubMenuContributor.cs
  14. 3
      src/EventHub.Admin.Web/Menus/EventHubMenus.cs
  15. 4
      src/EventHub.Admin.Web/Pages/AttendeeDetail.razor.cs
  16. 2
      src/EventHub.Admin.Web/Pages/EventManagement.razor
  17. 10
      src/EventHub.Admin.Web/Pages/EventManagement.razor.cs
  18. 2
      src/EventHub.Admin.Web/Pages/OrganizationManagement.razor
  19. 10
      src/EventHub.Admin.Web/Pages/OrganizationManagement.razor.cs
  20. 1754
      src/EventHub.Admin.Web/wwwroot/global.css
  21. 196
      src/EventHub.Admin.Web/wwwroot/global.js
  22. 4
      src/EventHub.Admin.Web/wwwroot/index.html
  23. 2
      src/EventHub.Application.Contracts/EventHub.Application.Contracts.csproj
  24. 2
      src/EventHub.Application/EventHub.Application.csproj
  25. 2
      src/EventHub.BackgroundServices/Dockerfile
  26. 10
      src/EventHub.BackgroundServices/EventHub.BackgroundServices.csproj
  27. 2
      src/EventHub.DbMigrator/Dockerfile
  28. 4
      src/EventHub.DbMigrator/EventHub.DbMigrator.csproj
  29. 16
      src/EventHub.Domain.Shared/EventHub.Domain.Shared.csproj
  30. 8
      src/EventHub.Domain/Data/EventHubDbMigrationService.cs
  31. 20
      src/EventHub.Domain/EventHub.Domain.csproj
  32. 20
      src/EventHub.EntityFrameworkCore/EventHub.EntityFrameworkCore.csproj
  33. 2
      src/EventHub.HttpApi.Client/EventHub.HttpApi.Client.csproj
  34. 2
      src/EventHub.HttpApi.Host/Dockerfile
  35. 16
      src/EventHub.HttpApi.Host/EventHub.HttpApi.Host.csproj
  36. 2
      src/EventHub.HttpApi/EventHub.HttpApi.csproj
  37. 2
      src/EventHub.IdentityServer/Dockerfile
  38. 18
      src/EventHub.IdentityServer/EventHub.IdentityServer.csproj
  39. 2
      src/EventHub.IdentityServer/EventHubIdentityServerModule.cs
  40. 2
      src/EventHub.IdentityServer/Pages/Account/Manage.cshtml
  41. 2
      src/EventHub.IdentityServer/package.json
  42. 11453
      src/EventHub.IdentityServer/wwwroot/libs/bootstrap/css/bootstrap-rtl.css
  43. 1
      src/EventHub.IdentityServer/wwwroot/libs/bootstrap/css/bootstrap-rtl.css.map
  44. 7
      src/EventHub.IdentityServer/wwwroot/libs/bootstrap/css/bootstrap-rtl.min.css
  45. 1
      src/EventHub.IdentityServer/wwwroot/libs/bootstrap/css/bootstrap-rtl.min.css.map
  46. 15036
      src/EventHub.IdentityServer/wwwroot/libs/bootstrap/css/bootstrap.css
  47. 2
      src/EventHub.IdentityServer/wwwroot/libs/bootstrap/css/bootstrap.css.map
  48. 6
      src/EventHub.IdentityServer/wwwroot/libs/bootstrap/css/bootstrap.min.css
  49. 2
      src/EventHub.IdentityServer/wwwroot/libs/bootstrap/css/bootstrap.min.css.map
  50. 11242
      src/EventHub.IdentityServer/wwwroot/libs/bootstrap/css/bootstrap.rtl.css
  51. 1
      src/EventHub.IdentityServer/wwwroot/libs/bootstrap/css/bootstrap.rtl.css.map
  52. 7
      src/EventHub.IdentityServer/wwwroot/libs/bootstrap/css/bootstrap.rtl.min.css
  53. 1
      src/EventHub.IdentityServer/wwwroot/libs/bootstrap/css/bootstrap.rtl.min.css.map
  54. 9949
      src/EventHub.IdentityServer/wwwroot/libs/bootstrap/js/bootstrap.bundle.js
  55. 2
      src/EventHub.IdentityServer/wwwroot/libs/bootstrap/js/bootstrap.bundle.js.map
  56. 4
      src/EventHub.IdentityServer/wwwroot/libs/bootstrap/js/bootstrap.bundle.min.js
  57. 2
      src/EventHub.IdentityServer/wwwroot/libs/bootstrap/js/bootstrap.bundle.min.js.map
  58. 5
      src/EventHub.IdentityServer/wwwroot/libs/bootstrap/js/bootstrap.enable.tooltips.everywhere.js
  59. 212
      src/EventHub.IdentityServer/wwwroot/libs/datatables.net-bs4/css/dataTables.bootstrap4.css
  60. 312
      src/EventHub.IdentityServer/wwwroot/libs/datatables.net-bs5/css/dataTables.bootstrap5.css
  61. 12
      src/EventHub.IdentityServer/wwwroot/libs/datatables.net-bs5/js/dataTables.bootstrap5.js
  62. 1178
      src/EventHub.IdentityServer/wwwroot/libs/datatables.net/js/jquery.dataTables.js
  63. 4
      src/EventHub.IdentityServer/wwwroot/libs/select2/js/select2-bootstrap-modal-patch.js
  64. 269
      src/EventHub.IdentityServer/yarn.lock
  65. 6
      src/EventHub.Web.Theme/EventHub.Web.Theme.csproj
  66. 14
      src/EventHub.Web.Theme/Themes/EventHub/Components/MainNavbar/Default.cshtml
  67. 2
      src/EventHub.Web.Theme/Themes/EventHub/Components/Menu/Default.cshtml
  68. 2
      src/EventHub.Web.Theme/Themes/EventHub/Components/Menu/_MenuItem.cshtml
  69. 2
      src/EventHub.Web.Theme/Themes/EventHub/Components/Toolbar/LanguageSwitch/Default.cshtml
  70. 2
      src/EventHub.Web.Theme/Themes/EventHub/Components/Toolbar/UserMenu/Default.cshtml
  71. 3
      src/EventHub.Web.Theme/wwwroot/themes/eventhub/owl-edit.css
  72. 4
      src/EventHub.Web.Theme/wwwroot/themes/eventhub/style.css
  73. 2
      src/EventHub.Web/Dockerfile
  74. 20
      src/EventHub.Web/EventHub.Web.csproj
  75. 11
      src/EventHub.Web/Helpers/AllowedExtensionsAttribute.cs
  76. 6
      src/EventHub.Web/Pages/EventHubPageModel.cs
  77. 2
      src/EventHub.Web/Pages/Events/Components/AttendeesArea/Default.cshtml
  78. 2
      src/EventHub.Web/Pages/Events/Components/EventsArea/_eventListSection.cshtml
  79. 2
      src/EventHub.Web/Pages/Events/Detail.cshtml
  80. 4
      src/EventHub.Web/Pages/Events/Detail.cshtml.cs
  81. 2
      src/EventHub.Web/Pages/Events/Edit.cshtml
  82. 2
      src/EventHub.Web/Pages/Events/Edit.cshtml.cs
  83. 2
      src/EventHub.Web/Pages/Events/New.cshtml
  84. 47
      src/EventHub.Web/Pages/Index.cshtml
  85. 2
      src/EventHub.Web/Pages/Index.cshtml.cs
  86. 28
      src/EventHub.Web/Pages/Index.js
  87. 36
      src/EventHub.Web/Pages/Organizations/Components/JoinArea/Default.cshtml
  88. 2
      src/EventHub.Web/Pages/Organizations/Components/MembersArea/_memberListSection.cshtml
  89. 2
      src/EventHub.Web/Pages/Organizations/Edit.cshtml
  90. 2
      src/EventHub.Web/Pages/Organizations/New.cshtml
  91. 28
      src/EventHub.Web/Pages/Organizations/Profile.cshtml
  92. 14
      src/EventHub.Web/Pages/Payment/PreCheckout.cshtml
  93. 23
      src/EventHub.Web/Pages/Pricing.cshtml
  94. 4
      src/EventHub.Web/Pages/PrivacyPolicy.cshtml
  95. 4
      src/EventHub.Web/Pages/TermsService.cshtml
  96. 6
      src/EventHub.Web/Pages/User.cshtml
  97. 2
      src/EventHub.Web/Pages/User.cshtml.cs
  98. 2
      src/EventHub.Web/package.json
  99. 11453
      src/EventHub.Web/wwwroot/libs/bootstrap/css/bootstrap-rtl.css
  100. 1
      src/EventHub.Web/wwwroot/libs/bootstrap/css/bootstrap-rtl.css.map

2
etc/azure/deploy-to-k8s.yml

@ -61,4 +61,4 @@ steps:
chartName: 'etc/k8s/helm-chart/eventhub' chartName: 'etc/k8s/helm-chart/eventhub'
releaseName: 'eh-az' releaseName: 'eh-az'
valueFile: 'etc/k8s/helm-chart/eventhub/values.azure.yaml' valueFile: 'etc/k8s/helm-chart/eventhub/values.azure.yaml'
arguments: '--namespace eventhub --create-namespace --set global.eventHubImageVersion=$(version)' arguments: '--timeout 20m --namespace eventhub --create-namespace --set global.eventHubImageVersion=$(version)'

2
modules/payment/src/Payment.Domain.Shared/Payment.Domain.Shared.csproj

@ -14,7 +14,7 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Microsoft.Extensions.FileProviders.Embedded" Version="6.0.0-rc.1.*" /> <PackageReference Include="Microsoft.Extensions.FileProviders.Embedded" Version="6.0.0" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>

2
modules/payment/src/Payment.Web/Payment.Web.csproj

@ -22,7 +22,7 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Microsoft.Extensions.FileProviders.Embedded" Version="6.0.0-rc.1.*" /> <PackageReference Include="Microsoft.Extensions.FileProviders.Embedded" Version="6.0.0" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>

2
modules/payment/test/Payment.EntityFrameworkCore.Tests/Payment.EntityFrameworkCore.Tests.csproj

@ -9,7 +9,7 @@
<ItemGroup> <ItemGroup>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.11.0" /> <PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.11.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Proxies" Version="6.0.0-rc.1.*" /> <PackageReference Include="Microsoft.EntityFrameworkCore.Proxies" Version="6.0.0" />
<ProjectReference Include="..\..\src\Payment.EntityFrameworkCore\Payment.EntityFrameworkCore.csproj" /> <ProjectReference Include="..\..\src\Payment.EntityFrameworkCore\Payment.EntityFrameworkCore.csproj" />
<ProjectReference Include="..\Payment.TestBase\Payment.TestBase.csproj" /> <ProjectReference Include="..\Payment.TestBase\Payment.TestBase.csproj" />
<PackageReference Include="Volo.Abp.EntityFrameworkCore.Sqlite" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.EntityFrameworkCore.Sqlite" Version="5.0.0-beta.1" />

6
src/EventHub.Admin.Application.Contracts/EventHub.Admin.Application.Contracts.csproj

@ -13,9 +13,9 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Volo.Abp.Account.Application.Contracts" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Account.Application.Contracts" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.Identity.Application.Contracts" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Identity.Application.Contracts" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.PermissionManagement.Application.Contracts" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.PermissionManagement.Application.Contracts" Version="5.0.0-rc.1" />
</ItemGroup> </ItemGroup>
</Project> </Project>

6
src/EventHub.Admin.Application/EventHub.Admin.Application.csproj

@ -14,9 +14,9 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Volo.Abp.Account.Application" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Account.Application" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.Identity.Application" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Identity.Application" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.PermissionManagement.Application" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.PermissionManagement.Application" Version="5.0.0-rc.1" />
</ItemGroup> </ItemGroup>
</Project> </Project>

6
src/EventHub.Admin.HttpApi.Client/EventHub.Admin.HttpApi.Client.csproj

@ -13,9 +13,9 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Volo.Abp.Account.HttpApi.Client" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Account.HttpApi.Client" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.Identity.HttpApi.Client" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Identity.HttpApi.Client" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.PermissionManagement.HttpApi.Client" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.PermissionManagement.HttpApi.Client" Version="5.0.0-rc.1" />
</ItemGroup> </ItemGroup>
</Project> </Project>

2
src/EventHub.Admin.HttpApi.Host/Dockerfile

@ -1,4 +1,4 @@
FROM mcr.microsoft.com/dotnet/aspnet:6.0.0-rc.2-bullseye-slim FROM mcr.microsoft.com/dotnet/aspnet:6.0.0-bullseye-slim
COPY bin/Release/net6.0/publish/ app/ COPY bin/Release/net6.0/publish/ app/
WORKDIR /app WORKDIR /app
ENTRYPOINT ["dotnet", "EventHub.Admin.HttpApi.Host.dll"] ENTRYPOINT ["dotnet", "EventHub.Admin.HttpApi.Host.dll"]

16
src/EventHub.Admin.HttpApi.Host/EventHub.Admin.HttpApi.Host.csproj

@ -12,14 +12,14 @@
<ItemGroup> <ItemGroup>
<PackageReference Include="Serilog.AspNetCore" Version="3.2.0" /> <PackageReference Include="Serilog.AspNetCore" Version="3.2.0" />
<PackageReference Include="Serilog.Sinks.Async" Version="1.4.0" /> <PackageReference Include="Serilog.Sinks.Async" Version="1.4.0" />
<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="6.0.0-rc.1.*" /> <PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="6.0.0" />
<PackageReference Include="Microsoft.AspNetCore.DataProtection.StackExchangeRedis" Version="6.0.0-rc.1.*" /> <PackageReference Include="Microsoft.AspNetCore.DataProtection.StackExchangeRedis" Version="6.0.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="6.0.0-rc.1.*" /> <PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="6.0.0" />
<PackageReference Include="Volo.Abp.Autofac" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Autofac" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.Caching.StackExchangeRedis" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Caching.StackExchangeRedis" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.AspNetCore.Serilog" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.AspNetCore.Serilog" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.Swashbuckle" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Swashbuckle" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic" Version="5.0.0-rc.1" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>

6
src/EventHub.Admin.HttpApi/EventHub.Admin.HttpApi.csproj

@ -13,9 +13,9 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Volo.Abp.Account.HttpApi" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Account.HttpApi" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.Identity.HttpApi" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Identity.HttpApi" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.PermissionManagement.HttpApi" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.PermissionManagement.HttpApi" Version="5.0.0-rc.1" />
</ItemGroup> </ItemGroup>
</Project> </Project>

4
src/EventHub.Admin.Web/Components/UserPicker/UserPicker.razor.cs

@ -92,8 +92,8 @@ namespace EventHub.Admin.Web.Components.UserPicker
private async Task OnDataGridReadAsync(DataGridReadDataEventArgs<UserDto> e) private async Task OnDataGridReadAsync(DataGridReadDataEventArgs<UserDto> e)
{ {
CurrentSorting = e.Columns CurrentSorting = e.Columns
.Where(c => c.Direction != SortDirection.None) .Where(c => c.SortDirection != SortDirection.None)
.Select(c => c.Field + (c.Direction == SortDirection.Descending ? " DESC" : "")) .Select(c => c.Field + (c.SortDirection == SortDirection.Descending ? " DESC" : ""))
.JoinAsString(","); .JoinAsString(",");
CurrentPage = e.Page - 1; CurrentPage = e.Page - 1;

14
src/EventHub.Admin.Web/EventHub.Admin.Web.csproj

@ -11,16 +11,16 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Blazorise.Bootstrap" Version="0.9.4.1" /> <PackageReference Include="Blazorise.Bootstrap" Version="0.9.5-preview2.1" />
<PackageReference Include="Blazorise.Icons.FontAwesome" Version="0.9.4.1" /> <PackageReference Include="Blazorise.Icons.FontAwesome" Version="0.9.5-preview2.1" />
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly" Version="6.0.0-rc.1.*" /> <PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly" Version="6.0.0" />
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.DevServer" Version="6.0.0-rc.1.*" /> <PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.DevServer" Version="6.0.0" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Volo.Abp.Autofac.WebAssembly" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Autofac.WebAssembly" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.AspNetCore.Components.WebAssembly.BasicTheme" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.Identity.Blazor.WebAssembly" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Identity.Blazor.WebAssembly" Version="5.0.0-rc.1" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>

77
src/EventHub.Admin.Web/Menus/EventHubMenuContributor.cs

@ -4,7 +4,6 @@ using EventHub.Admin.Permissions;
using EventHub.Localization; using EventHub.Localization;
using Microsoft.Extensions.Configuration; using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Localization;
using Volo.Abp.Account.Localization; using Volo.Abp.Account.Localization;
using Volo.Abp.Authorization.Permissions; using Volo.Abp.Authorization.Permissions;
using Volo.Abp.UI.Navigation; using Volo.Abp.UI.Navigation;
@ -33,22 +32,43 @@ namespace EventHub.Admin.Web.Menus
} }
} }
private async Task ConfigureMainMenuAsync(MenuConfigurationContext context) private Task ConfigureMainMenuAsync(MenuConfigurationContext context)
{ {
var l = context.GetLocalizer<EventHubResource>(); var l = context.GetLocalizer<EventHubResource>();
context.Menu.Items.Insert( var eventHubMenuItem = new ApplicationMenuItem(
0, EventHubMenus.Prefix,
"EventHub"
);
context.Menu.Items.Insert(0, eventHubMenuItem);
eventHubMenuItem.AddItem(
new ApplicationMenuItem( new ApplicationMenuItem(
EventHubMenus.Home, EventHubMenus.OrganizationManagement.Organizations,
l["Menu:Home"], l["Menu:Organizations"],
"/", url: "/organizations"
icon: "fas fa-home" ).RequirePermissions(EventHubPermissions.Organizations.Default)
)
); );
await AddOrganizationMenu(context, l); eventHubMenuItem.AddItem(
await AddEventMenu(context, l); new ApplicationMenuItem(
EventHubMenus.OrganizationManagement.OrganizationMemberships,
l["Menu:OrganizationMemberships"],
url: "/organization-memberships"
).RequirePermissions(EventHubPermissions.Organizations.Memberships.Default)
);
eventHubMenuItem
.AddItem(
new ApplicationMenuItem(
EventHubMenus.EventManagement.Events,
displayName: l["Menu:Events"],
url: "/events"
).RequirePermissions(EventHubPermissions.Events.Default)
);
return Task.CompletedTask;
} }
private Task ConfigureUserMenuAsync(MenuConfigurationContext context) private Task ConfigureUserMenuAsync(MenuConfigurationContext context)
@ -62,7 +82,7 @@ namespace EventHub.Admin.Web.Menus
{ {
context.Menu.AddItem(new ApplicationMenuItem( context.Menu.AddItem(new ApplicationMenuItem(
"Account.Manage", "Account.Manage",
accountStringLocalizer["ManageYourProfile"], accountStringLocalizer["Manage"],
$"{identityServerUrl.EnsureEndsWith('/')}Account/Manage?returnUrl={_configuration["App:SelfUrl"]}", $"{identityServerUrl.EnsureEndsWith('/')}Account/Manage?returnUrl={_configuration["App:SelfUrl"]}",
icon: "fa fa-cog", icon: "fa fa-cog",
order: 1000, order: 1000,
@ -71,38 +91,5 @@ namespace EventHub.Admin.Web.Menus
return Task.CompletedTask; return Task.CompletedTask;
} }
private Task AddOrganizationMenu(MenuConfigurationContext context, IStringLocalizer l)
{
var organizationMenu = new ApplicationMenuItem(EventHubMenus.OrganizationManagement.GroupName,
l["Menu:OrganizationManagement"], icon: "fa fa-sitemap");
context.Menu.Items.Insert(2, organizationMenu);
organizationMenu.AddItem(
new ApplicationMenuItem(EventHubMenus.OrganizationManagement.Organizations, l["Menu:Organizations"],
url: "/organizations").RequirePermissions(EventHubPermissions.Organizations.Default));
organizationMenu.AddItem(
new ApplicationMenuItem(EventHubMenus.OrganizationManagement.OrganizationMemberships,
l["Menu:OrganizationMemberships"], url: "/organization-memberships")
.RequirePermissions(EventHubPermissions.Organizations.Memberships.Default));
return Task.CompletedTask;
}
private Task AddEventMenu(MenuConfigurationContext context, IStringLocalizer l)
{
var eventMenu = new ApplicationMenuItem(
EventHubMenus.EventManagement.GroupName,
l["Menu:EventManagement"],
icon: "fas fa-calendar-minus"
);
context.Menu.Items.Insert(3, eventMenu);
eventMenu.AddItem(new ApplicationMenuItem(EventHubMenus.EventManagement.Events, displayName: l["Menu:Events"], url: "/events"))
.RequirePermissions(EventHubPermissions.Events.Default);
return Task.CompletedTask;
}
} }
} }

3
src/EventHub.Admin.Web/Menus/EventHubMenus.cs

@ -2,8 +2,7 @@
{ {
public class EventHubMenus public class EventHubMenus
{ {
private const string Prefix = "EventHub"; public const string Prefix = "EventHub";
public const string Home = Prefix + ".Home";
public static class OrganizationManagement public static class OrganizationManagement
{ {

4
src/EventHub.Admin.Web/Pages/AttendeeDetail.razor.cs

@ -63,8 +63,8 @@ namespace EventHub.Admin.Web.Pages
private async Task OnDataGridReadAsync(DataGridReadDataEventArgs<EventAttendeeDto> e) private async Task OnDataGridReadAsync(DataGridReadDataEventArgs<EventAttendeeDto> e)
{ {
CurrentSorting = e.Columns CurrentSorting = e.Columns
.Where(c => c.Direction != SortDirection.None) .Where(c => c.SortDirection != SortDirection.None)
.Select(c => c.Field + (c.Direction == SortDirection.Descending ? " DESC" : "")) .Select(c => c.Field + (c.SortDirection == SortDirection.Descending ? " DESC" : ""))
.JoinAsString(","); .JoinAsString(",");
CurrentPage = e.Page - 1; CurrentPage = e.Page - 1;

2
src/EventHub.Admin.Web/Pages/EventManagement.razor

@ -71,7 +71,7 @@
<EntityActions TItem="EventInListDto"> <EntityActions TItem="EventInListDto">
<EntityAction TItem="EventInListDto" <EntityAction TItem="EventInListDto"
RequiredPolicy="@EventHubPermissions.Events.Update" RequiredPolicy="@EventHubPermissions.Events.Update"
Clicked="() => OpenEditEventModal(context)" Clicked="() => OpenEditEventModalAsync(context)"
Text="@L["Edit"]"> Text="@L["Edit"]">
</EntityAction> </EntityAction>
<EntityAction TItem="EventInListDto" <EntityAction TItem="EventInListDto"

10
src/EventHub.Admin.Web/Pages/EventManagement.razor.cs

@ -81,8 +81,8 @@ namespace EventHub.Admin.Web.Pages
private async Task OnDataGridReadAsync(DataGridReadDataEventArgs<EventInListDto> e) private async Task OnDataGridReadAsync(DataGridReadDataEventArgs<EventInListDto> e)
{ {
CurrentSorting = e.Columns CurrentSorting = e.Columns
.Where(c => c.Direction != SortDirection.None) .Where(c => c.SortDirection != SortDirection.None)
.Select(c => c.Field + (c.Direction == SortDirection.Descending ? " DESC" : "")) .Select(c => c.Field + (c.SortDirection == SortDirection.Descending ? " DESC" : ""))
.JoinAsString(","); .JoinAsString(",");
CurrentPage = e.Page - 1; CurrentPage = e.Page - 1;
@ -90,7 +90,7 @@ namespace EventHub.Admin.Web.Pages
await InvokeAsync(StateHasChanged); await InvokeAsync(StateHasChanged);
} }
private async Task OpenEditEventModal(EventInListDto input) private async Task OpenEditEventModalAsync(EventInListDto input)
{ {
EditingEventId = input.Id; EditingEventId = input.Id;
Event = await EventAppService.GetAsync(EditingEventId); Event = await EventAppService.GetAsync(EditingEventId);
@ -99,7 +99,7 @@ namespace EventHub.Admin.Web.Pages
FileEntry = new FileEntry(); FileEntry = new FileEntry();
await SetCoverImageUrlAsync(); await SetCoverImageUrlAsync();
EditEventModal.Show(); await EditEventModal.Show();
} }
private void OnEditModalClosing(CancelEventArgs e) private void OnEditModalClosing(CancelEventArgs e)
@ -124,7 +124,7 @@ namespace EventHub.Admin.Web.Pages
CoverImageUrl = string.Empty; CoverImageUrl = string.Empty;
DisabledCoverImageButton = false; DisabledCoverImageButton = false;
EditEventModal.Hide(); await EditEventModal.Hide();
} }
private async Task OnKeyPress(KeyboardEventArgs e) private async Task OnKeyPress(KeyboardEventArgs e)

2
src/EventHub.Admin.Web/Pages/OrganizationManagement.razor

@ -73,7 +73,7 @@
</EntityAction> </EntityAction>
<EntityAction TItem="OrganizationInListDto" <EntityAction TItem="OrganizationInListDto"
RequiredPolicy="@EventHubPermissions.Organizations.Update" RequiredPolicy="@EventHubPermissions.Organizations.Update"
Clicked="() => OpenEditOrganizationModal(context)" Clicked="() => OpenEditOrganizationModalAsync(context)"
Text="@L["Edit"]"> Text="@L["Edit"]">
</EntityAction> </EntityAction>
<EntityAction TItem="OrganizationInListDto" <EntityAction TItem="OrganizationInListDto"

10
src/EventHub.Admin.Web/Pages/OrganizationManagement.razor.cs

@ -52,8 +52,8 @@ namespace EventHub.Admin.Web.Pages
private async Task OnDataGridReadAsync(DataGridReadDataEventArgs<OrganizationInListDto> e) private async Task OnDataGridReadAsync(DataGridReadDataEventArgs<OrganizationInListDto> e)
{ {
CurrentSorting = e.Columns CurrentSorting = e.Columns
.Where(c => c.Direction != SortDirection.None) .Where(c => c.SortDirection != SortDirection.None)
.Select(c => c.Field + (c.Direction == SortDirection.Descending ? " DESC" : "")) .Select(c => c.Field + (c.SortDirection == SortDirection.Descending ? " DESC" : ""))
.JoinAsString(","); .JoinAsString(",");
CurrentPage = e.Page - 1; CurrentPage = e.Page - 1;
await GetOrganizationsAsync(); await GetOrganizationsAsync();
@ -71,7 +71,7 @@ namespace EventHub.Admin.Web.Pages
TotalCount = (int) result.TotalCount; TotalCount = (int) result.TotalCount;
} }
private async Task OpenEditOrganizationModal(OrganizationInListDto input) private async Task OpenEditOrganizationModalAsync(OrganizationInListDto input)
{ {
EditingOrganizationId = input.Id; EditingOrganizationId = input.Id;
Organization = await OrganizationAppService.GetAsync(EditingOrganizationId); Organization = await OrganizationAppService.GetAsync(EditingOrganizationId);
@ -80,14 +80,14 @@ namespace EventHub.Admin.Web.Pages
await SetProfileImageUrlAsync(); await SetProfileImageUrlAsync();
EditingOrganization = ObjectMapper.Map<OrganizationProfileDto, UpdateOrganizationDto>(Organization); EditingOrganization = ObjectMapper.Map<OrganizationProfileDto, UpdateOrganizationDto>(Organization);
EditOrganizationModal.Show(); await EditOrganizationModal.Show();
} }
private async Task UpdateOrganizationAsync() private async Task UpdateOrganizationAsync()
{ {
await OrganizationAppService.UpdateAsync(EditingOrganizationId, EditingOrganization); await OrganizationAppService.UpdateAsync(EditingOrganizationId, EditingOrganization);
await GetOrganizationsAsync(); await GetOrganizationsAsync();
EditOrganizationModal.Hide(); await EditOrganizationModal.Hide();
ProfileImageUrl = null; ProfileImageUrl = null;
DisabledProfileImageButton = false; DisabledProfileImageButton = false;

1754
src/EventHub.Admin.Web/wwwroot/global.css

File diff suppressed because one or more lines are too long

196
src/EventHub.Admin.Web/wwwroot/global.js

File diff suppressed because one or more lines are too long

4
src/EventHub.Admin.Web/wwwroot/index.html

@ -8,7 +8,7 @@
<base href="/" /> <base href="/" />
<!--ABP:Styles--> <!--ABP:Styles-->
<link href="global.css?_v=637710259570295843" rel="stylesheet"/> <link href="global.css?_v=637720550480184672" rel="stylesheet"/>
<link href="main.css" rel="stylesheet"/> <link href="main.css" rel="stylesheet"/>
<!--/ABP:Styles--> <!--/ABP:Styles-->
</head> </head>
@ -22,7 +22,7 @@
</div> </div>
<!--ABP:Scripts--> <!--ABP:Scripts-->
<script src="global.js?_v=637710259579180887"></script> <script src="global.js?_v=637720550482804343"></script>
<!--/ABP:Scripts--> <!--/ABP:Scripts-->
</body> </body>

2
src/EventHub.Application.Contracts/EventHub.Application.Contracts.csproj

@ -13,7 +13,7 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Volo.Abp.Ddd.Application.Contracts" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Ddd.Application.Contracts" Version="5.0.0-rc.1" />
</ItemGroup> </ItemGroup>
</Project> </Project>

2
src/EventHub.Application/EventHub.Application.csproj

@ -14,7 +14,7 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Volo.Abp.Ddd.Application" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Ddd.Application" Version="5.0.0-rc.1" />
</ItemGroup> </ItemGroup>
</Project> </Project>

2
src/EventHub.BackgroundServices/Dockerfile

@ -1,4 +1,4 @@
FROM mcr.microsoft.com/dotnet/aspnet:6.0.0-rc.2-bullseye-slim FROM mcr.microsoft.com/dotnet/aspnet:6.0.0-bullseye-slim
COPY bin/Release/net6.0/ app/ COPY bin/Release/net6.0/ app/
WORKDIR /app WORKDIR /app
ENTRYPOINT ["dotnet", "EventHub.BackgroundServices.dll"] ENTRYPOINT ["dotnet", "EventHub.BackgroundServices.dll"]

10
src/EventHub.BackgroundServices/EventHub.BackgroundServices.csproj

@ -14,18 +14,18 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Volo.Abp.Autofac" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Autofac" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.BackgroundWorkers" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.BackgroundWorkers" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.Caching.StackExchangeRedis" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Caching.StackExchangeRedis" Version="5.0.0-rc.1" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Microsoft.Extensions.Hosting" Version="6.0.0-rc.1.*" /> <PackageReference Include="Microsoft.Extensions.Hosting" Version="6.0.0" />
<PackageReference Include="Serilog.Extensions.Hosting" Version="3.1.0" /> <PackageReference Include="Serilog.Extensions.Hosting" Version="3.1.0" />
<PackageReference Include="Serilog.Sinks.Async" Version="1.4.0" /> <PackageReference Include="Serilog.Sinks.Async" Version="1.4.0" />
<PackageReference Include="Serilog.Sinks.Console" Version="3.1.1" /> <PackageReference Include="Serilog.Sinks.Console" Version="3.1.1" />
<PackageReference Include="Serilog.Sinks.File" Version="4.1.0" /> <PackageReference Include="Serilog.Sinks.File" Version="4.1.0" />
<PackageReference Include="Microsoft.AspNetCore.DataProtection.StackExchangeRedis" Version="6.0.0-rc.1.*" /> <PackageReference Include="Microsoft.AspNetCore.DataProtection.StackExchangeRedis" Version="6.0.0" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>

2
src/EventHub.DbMigrator/Dockerfile

@ -1,4 +1,4 @@
FROM mcr.microsoft.com/dotnet/aspnet:6.0.0-rc.2-bullseye-slim FROM mcr.microsoft.com/dotnet/aspnet:6.0.0-bullseye-slim
COPY bin/Release/net6.0/ app/ COPY bin/Release/net6.0/ app/
WORKDIR /app WORKDIR /app
ENTRYPOINT ["dotnet", "EventHub.DbMigrator.dll"] ENTRYPOINT ["dotnet", "EventHub.DbMigrator.dll"]

4
src/EventHub.DbMigrator/EventHub.DbMigrator.csproj

@ -23,11 +23,11 @@
<PackageReference Include="Serilog.Sinks.Async" Version="1.4.0" /> <PackageReference Include="Serilog.Sinks.Async" Version="1.4.0" />
<PackageReference Include="Serilog.Sinks.File" Version="4.1.0" /> <PackageReference Include="Serilog.Sinks.File" Version="4.1.0" />
<PackageReference Include="Serilog.Sinks.Console" Version="3.1.1" /> <PackageReference Include="Serilog.Sinks.Console" Version="3.1.1" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="6.0.0-rc.1.*" /> <PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="6.0.0" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Volo.Abp.Autofac" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Autofac" Version="5.0.0-rc.1" />
<ProjectReference Include="..\EventHub.Application.Contracts\EventHub.Application.Contracts.csproj" /> <ProjectReference Include="..\EventHub.Application.Contracts\EventHub.Application.Contracts.csproj" />
<ProjectReference Include="..\EventHub.Admin.Application.Contracts\EventHub.Admin.Application.Contracts.csproj" /> <ProjectReference Include="..\EventHub.Admin.Application.Contracts\EventHub.Admin.Application.Contracts.csproj" />
<ProjectReference Include="..\EventHub.EntityFrameworkCore\EventHub.EntityFrameworkCore.csproj" /> <ProjectReference Include="..\EventHub.EntityFrameworkCore\EventHub.EntityFrameworkCore.csproj" />

16
src/EventHub.Domain.Shared/EventHub.Domain.Shared.csproj

@ -13,13 +13,13 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Volo.Abp.BlobStoring.Database.Domain.Shared" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.BlobStoring.Database.Domain.Shared" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.Identity.Domain.Shared" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Identity.Domain.Shared" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.IdentityServer.Domain.Shared" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.IdentityServer.Domain.Shared" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.BackgroundJobs.Domain.Shared" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.BackgroundJobs.Domain.Shared" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.AuditLogging.Domain.Shared" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.AuditLogging.Domain.Shared" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.PermissionManagement.Domain.Shared" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.PermissionManagement.Domain.Shared" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.SettingManagement.Domain.Shared" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.SettingManagement.Domain.Shared" Version="5.0.0-rc.1" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
@ -28,7 +28,7 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Microsoft.Extensions.FileProviders.Embedded" Version="6.0.0-rc.1.*" /> <PackageReference Include="Microsoft.Extensions.FileProviders.Embedded" Version="6.0.0" />
</ItemGroup> </ItemGroup>
</Project> </Project>

8
src/EventHub.Domain/Data/EventHubDbMigrationService.cs

@ -33,9 +33,9 @@ namespace EventHub.Data
{ {
try try
{ {
if (!await MigrationsFolderExists()) if (!MigrationsFolderExists())
{ {
await AddInitialMigration(); AddInitialMigration();
return; return;
} }
} }
@ -70,14 +70,14 @@ namespace EventHub.Data
await _dataSeeder.SeedAsync(); await _dataSeeder.SeedAsync();
} }
private async Task<bool> MigrationsFolderExists() private bool MigrationsFolderExists()
{ {
var dbMigrationsProjectFolder = GetDbMigrationsProjectFolderPath(); var dbMigrationsProjectFolder = GetDbMigrationsProjectFolderPath();
return Directory.Exists(Path.Combine(dbMigrationsProjectFolder, "migrations")); return Directory.Exists(Path.Combine(dbMigrationsProjectFolder, "migrations"));
} }
private async Task AddInitialMigration() private void AddInitialMigration()
{ {
Logger.LogInformation("Creating initial migration..."); Logger.LogInformation("Creating initial migration...");

20
src/EventHub.Domain/EventHub.Domain.csproj

@ -14,15 +14,15 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Volo.Abp.BlobStoring.Database.Domain" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.BlobStoring.Database.Domain" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.Emailing" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Emailing" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.Identity.Domain" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Identity.Domain" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.PermissionManagement.Domain.Identity" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.PermissionManagement.Domain.Identity" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.IdentityServer.Domain" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.IdentityServer.Domain" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.PermissionManagement.Domain.IdentityServer" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.PermissionManagement.Domain.IdentityServer" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.BackgroundJobs.Domain" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.BackgroundJobs.Domain" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.AuditLogging.Domain" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.AuditLogging.Domain" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.SettingManagement.Domain" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.SettingManagement.Domain" Version="5.0.0-rc.1" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
@ -31,7 +31,7 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Microsoft.Extensions.FileProviders.Embedded" Version="6.0.0-rc.1.*" /> <PackageReference Include="Microsoft.Extensions.FileProviders.Embedded" Version="6.0.0" />
</ItemGroup> </ItemGroup>
</Project> </Project>

20
src/EventHub.EntityFrameworkCore/EventHub.EntityFrameworkCore.csproj

@ -1,4 +1,4 @@
<Project Sdk="Microsoft.NET.Sdk"> <Project Sdk="Microsoft.NET.Sdk">
<Import Project="..\..\common.props" /> <Import Project="..\..\common.props" />
@ -13,20 +13,20 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="6.0.0-rc.1.*" /> <PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="6.0.0" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Volo.Abp.BlobStoring.Database.EntityFrameworkCore" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.BlobStoring.Database.EntityFrameworkCore" Version="5.0.0-rc.1" />
<ProjectReference Include="..\EventHub.Domain\EventHub.Domain.csproj" /> <ProjectReference Include="..\EventHub.Domain\EventHub.Domain.csproj" />
<PackageReference Include="Volo.Abp.EntityFrameworkCore.PostgreSql" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.EntityFrameworkCore.PostgreSql" Version="5.0.0-rc.1" />
<PackageReference Include="Npgsql.EntityFrameworkCore.PostgreSQL" Version="6.0.0-rc.*" /> <PackageReference Include="Npgsql.EntityFrameworkCore.PostgreSQL" Version="6.0.0-rc.*" />
<PackageReference Include="Volo.Abp.PermissionManagement.EntityFrameworkCore" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.PermissionManagement.EntityFrameworkCore" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.SettingManagement.EntityFrameworkCore" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.SettingManagement.EntityFrameworkCore" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.Identity.EntityFrameworkCore" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Identity.EntityFrameworkCore" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.IdentityServer.EntityFrameworkCore" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.IdentityServer.EntityFrameworkCore" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.BackgroundJobs.EntityFrameworkCore" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.BackgroundJobs.EntityFrameworkCore" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.AuditLogging.EntityFrameworkCore" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.AuditLogging.EntityFrameworkCore" Version="5.0.0-rc.1" />
</ItemGroup> </ItemGroup>
</Project> </Project>

2
src/EventHub.HttpApi.Client/EventHub.HttpApi.Client.csproj

@ -13,7 +13,7 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Volo.Abp.Http.Client" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Http.Client" Version="5.0.0-rc.1" />
</ItemGroup> </ItemGroup>
</Project> </Project>

2
src/EventHub.HttpApi.Host/Dockerfile

@ -1,4 +1,4 @@
FROM mcr.microsoft.com/dotnet/aspnet:6.0.0-rc.2-bullseye-slim FROM mcr.microsoft.com/dotnet/aspnet:6.0.0-bullseye-slim
COPY bin/Release/net6.0/publish/ app/ COPY bin/Release/net6.0/publish/ app/
WORKDIR /app WORKDIR /app
ENTRYPOINT ["dotnet", "EventHub.HttpApi.Host.dll"] ENTRYPOINT ["dotnet", "EventHub.HttpApi.Host.dll"]

16
src/EventHub.HttpApi.Host/EventHub.HttpApi.Host.csproj

@ -12,14 +12,14 @@
<ItemGroup> <ItemGroup>
<PackageReference Include="Serilog.AspNetCore" Version="3.2.0" /> <PackageReference Include="Serilog.AspNetCore" Version="3.2.0" />
<PackageReference Include="Serilog.Sinks.Async" Version="1.4.0" /> <PackageReference Include="Serilog.Sinks.Async" Version="1.4.0" />
<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="6.0.0-rc.1.*" /> <PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="6.0.0" />
<PackageReference Include="Microsoft.AspNetCore.DataProtection.StackExchangeRedis" Version="6.0.0-rc.1.*" /> <PackageReference Include="Microsoft.AspNetCore.DataProtection.StackExchangeRedis" Version="6.0.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="6.0.0-rc.1.*" /> <PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="6.0.0" />
<PackageReference Include="Volo.Abp.Autofac" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Autofac" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.Caching.StackExchangeRedis" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Caching.StackExchangeRedis" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.AspNetCore.Serilog" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.AspNetCore.Serilog" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.Swashbuckle" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Swashbuckle" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic" Version="5.0.0-rc.1" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>

2
src/EventHub.HttpApi/EventHub.HttpApi.csproj

@ -13,7 +13,7 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Volo.Abp.AspNetCore.Mvc" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.AspNetCore.Mvc" Version="5.0.0-rc.1" />
</ItemGroup> </ItemGroup>
</Project> </Project>

2
src/EventHub.IdentityServer/Dockerfile

@ -1,4 +1,4 @@
FROM mcr.microsoft.com/dotnet/aspnet:6.0.0-rc.2-bullseye-slim FROM mcr.microsoft.com/dotnet/aspnet:6.0.0-bullseye-slim
COPY bin/Release/net6.0/publish/ app/ COPY bin/Release/net6.0/publish/ app/
WORKDIR /app WORKDIR /app
ENTRYPOINT ["dotnet", "EventHub.IdentityServer.dll"] ENTRYPOINT ["dotnet", "EventHub.IdentityServer.dll"]

18
src/EventHub.IdentityServer/EventHub.IdentityServer.csproj

@ -37,18 +37,18 @@
<ItemGroup> <ItemGroup>
<PackageReference Include="Serilog.AspNetCore" Version="3.2.0" /> <PackageReference Include="Serilog.AspNetCore" Version="3.2.0" />
<PackageReference Include="Serilog.Sinks.Async" Version="1.4.0" /> <PackageReference Include="Serilog.Sinks.Async" Version="1.4.0" />
<PackageReference Include="Microsoft.AspNetCore.DataProtection.StackExchangeRedis" Version="6.0.0-rc.1.*" /> <PackageReference Include="Microsoft.AspNetCore.DataProtection.StackExchangeRedis" Version="6.0.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="6.0.0-rc.1.*" /> <PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="6.0.0" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Volo.Abp.Autofac" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Autofac" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.Caching.StackExchangeRedis" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Caching.StackExchangeRedis" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.AspNetCore.Serilog" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.AspNetCore.Serilog" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.Account.Web.IdentityServer" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Account.Web.IdentityServer" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.Account.Application" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Account.Application" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.Account.HttpApi" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Account.HttpApi" Version="5.0.0-rc.1" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>

2
src/EventHub.IdentityServer/EventHubIdentityServerModule.cs

@ -111,6 +111,8 @@ namespace EventHub
bundle.AddFiles("/global-styles.css"); bundle.AddFiles("/global-styles.css");
} }
); );
options.Mode = BundlingMode.None;
}); });
Configure<AbpAuditingOptions>(options => Configure<AbpAuditingOptions>(options =>

2
src/EventHub.IdentityServer/Pages/Account/Manage.cshtml

@ -18,7 +18,7 @@
<abp-row class="mb-2"> <abp-row class="mb-2">
<abp-column> <abp-column>
<a class="btn btn-primary" href="@Model.ReturnUrl"> <a class="btn btn-primary" href="@Model.ReturnUrl">
<i class="fa fa-chevron-left mr-2"></i>@L["ReturnToApplication"] <i class="fa fa-chevron-left me-2"></i>@L["ReturnToApplication"]
</a> </a>
</abp-column> </abp-column>
</abp-row> </abp-row>

2
src/EventHub.IdentityServer/package.json

@ -3,7 +3,7 @@
"name": "my-app-identityserver", "name": "my-app-identityserver",
"private": true, "private": true,
"dependencies": { "dependencies": {
"@abp/aspnetcore.mvc.ui.theme.basic": "~5.0.0-beta.1", "@abp/aspnetcore.mvc.ui.theme.basic": "~5.0.0-rc.1",
"owl.carousel": "^2.3.4" "owl.carousel": "^2.3.4"
} }
} }

11453
src/EventHub.IdentityServer/wwwroot/libs/bootstrap/css/bootstrap-rtl.css

File diff suppressed because it is too large

1
src/EventHub.IdentityServer/wwwroot/libs/bootstrap/css/bootstrap-rtl.css.map

File diff suppressed because one or more lines are too long

7
src/EventHub.IdentityServer/wwwroot/libs/bootstrap/css/bootstrap-rtl.min.css

File diff suppressed because one or more lines are too long

1
src/EventHub.IdentityServer/wwwroot/libs/bootstrap/css/bootstrap-rtl.min.css.map

File diff suppressed because one or more lines are too long

15036
src/EventHub.IdentityServer/wwwroot/libs/bootstrap/css/bootstrap.css

File diff suppressed because it is too large

2
src/EventHub.IdentityServer/wwwroot/libs/bootstrap/css/bootstrap.css.map

File diff suppressed because one or more lines are too long

6
src/EventHub.IdentityServer/wwwroot/libs/bootstrap/css/bootstrap.min.css

File diff suppressed because one or more lines are too long

2
src/EventHub.IdentityServer/wwwroot/libs/bootstrap/css/bootstrap.min.css.map

File diff suppressed because one or more lines are too long

11242
src/EventHub.IdentityServer/wwwroot/libs/bootstrap/css/bootstrap.rtl.css

File diff suppressed because it is too large

1
src/EventHub.IdentityServer/wwwroot/libs/bootstrap/css/bootstrap.rtl.css.map

File diff suppressed because one or more lines are too long

7
src/EventHub.IdentityServer/wwwroot/libs/bootstrap/css/bootstrap.rtl.min.css

File diff suppressed because one or more lines are too long

1
src/EventHub.IdentityServer/wwwroot/libs/bootstrap/css/bootstrap.rtl.min.css.map

File diff suppressed because one or more lines are too long

9949
src/EventHub.IdentityServer/wwwroot/libs/bootstrap/js/bootstrap.bundle.js

File diff suppressed because it is too large

2
src/EventHub.IdentityServer/wwwroot/libs/bootstrap/js/bootstrap.bundle.js.map

File diff suppressed because one or more lines are too long

4
src/EventHub.IdentityServer/wwwroot/libs/bootstrap/js/bootstrap.bundle.min.js

File diff suppressed because one or more lines are too long

2
src/EventHub.IdentityServer/wwwroot/libs/bootstrap/js/bootstrap.bundle.min.js.map

File diff suppressed because one or more lines are too long

5
src/EventHub.IdentityServer/wwwroot/libs/bootstrap/js/bootstrap.enable.tooltips.everywhere.js

@ -0,0 +1,5 @@
(function () {
[].slice.call(document.querySelectorAll('[data-bs-toggle="tooltip"]')).map(function (tooltipTriggerEl) {
return new bootstrap.Tooltip(tooltipTriggerEl)
});
})();

212
src/EventHub.IdentityServer/wwwroot/libs/datatables.net-bs4/css/dataTables.bootstrap4.css

@ -1,212 +0,0 @@
table.dataTable {
clear: both;
margin-top: 6px !important;
margin-bottom: 6px !important;
max-width: none !important;
border-collapse: separate !important;
border-spacing: 0;
}
table.dataTable td,
table.dataTable th {
-webkit-box-sizing: content-box;
box-sizing: content-box;
}
table.dataTable td.dataTables_empty,
table.dataTable th.dataTables_empty {
text-align: center;
}
table.dataTable.nowrap th,
table.dataTable.nowrap td {
white-space: nowrap;
}
div.dataTables_wrapper div.dataTables_length label {
font-weight: normal;
text-align: left;
white-space: nowrap;
}
div.dataTables_wrapper div.dataTables_length select {
width: auto;
display: inline-block;
}
div.dataTables_wrapper div.dataTables_filter {
text-align: right;
}
div.dataTables_wrapper div.dataTables_filter label {
font-weight: normal;
white-space: nowrap;
text-align: left;
}
div.dataTables_wrapper div.dataTables_filter input {
margin-left: 0.5em;
display: inline-block;
width: auto;
}
div.dataTables_wrapper div.dataTables_info {
padding-top: 0.85em;
white-space: nowrap;
}
div.dataTables_wrapper div.dataTables_paginate {
margin: 0;
white-space: nowrap;
text-align: right;
}
div.dataTables_wrapper div.dataTables_paginate ul.pagination {
margin: 2px 0;
white-space: nowrap;
justify-content: flex-end;
}
div.dataTables_wrapper div.dataTables_processing {
position: absolute;
top: 50%;
left: 50%;
width: 200px;
margin-left: -100px;
margin-top: -26px;
text-align: center;
padding: 1em 0;
}
table.dataTable thead > tr > th.sorting_asc, table.dataTable thead > tr > th.sorting_desc, table.dataTable thead > tr > th.sorting,
table.dataTable thead > tr > td.sorting_asc,
table.dataTable thead > tr > td.sorting_desc,
table.dataTable thead > tr > td.sorting {
padding-right: 30px;
}
table.dataTable thead > tr > th:active,
table.dataTable thead > tr > td:active {
outline: none;
}
table.dataTable thead .sorting,
table.dataTable thead .sorting_asc,
table.dataTable thead .sorting_desc,
table.dataTable thead .sorting_asc_disabled,
table.dataTable thead .sorting_desc_disabled {
cursor: pointer;
position: relative;
}
table.dataTable thead .sorting:before, table.dataTable thead .sorting:after,
table.dataTable thead .sorting_asc:before,
table.dataTable thead .sorting_asc:after,
table.dataTable thead .sorting_desc:before,
table.dataTable thead .sorting_desc:after,
table.dataTable thead .sorting_asc_disabled:before,
table.dataTable thead .sorting_asc_disabled:after,
table.dataTable thead .sorting_desc_disabled:before,
table.dataTable thead .sorting_desc_disabled:after {
position: absolute;
bottom: 0.9em;
display: block;
opacity: 0.3;
}
table.dataTable thead .sorting:before,
table.dataTable thead .sorting_asc:before,
table.dataTable thead .sorting_desc:before,
table.dataTable thead .sorting_asc_disabled:before,
table.dataTable thead .sorting_desc_disabled:before {
right: 1em;
content: "\2191";
}
table.dataTable thead .sorting:after,
table.dataTable thead .sorting_asc:after,
table.dataTable thead .sorting_desc:after,
table.dataTable thead .sorting_asc_disabled:after,
table.dataTable thead .sorting_desc_disabled:after {
right: 0.5em;
content: "\2193";
}
table.dataTable thead .sorting_asc:before,
table.dataTable thead .sorting_desc:after {
opacity: 1;
}
table.dataTable thead .sorting_asc_disabled:before,
table.dataTable thead .sorting_desc_disabled:after {
opacity: 0;
}
div.dataTables_scrollHead table.dataTable {
margin-bottom: 0 !important;
}
div.dataTables_scrollBody table {
border-top: none;
margin-top: 0 !important;
margin-bottom: 0 !important;
}
div.dataTables_scrollBody table thead .sorting:before,
div.dataTables_scrollBody table thead .sorting_asc:before,
div.dataTables_scrollBody table thead .sorting_desc:before,
div.dataTables_scrollBody table thead .sorting:after,
div.dataTables_scrollBody table thead .sorting_asc:after,
div.dataTables_scrollBody table thead .sorting_desc:after {
display: none;
}
div.dataTables_scrollBody table tbody tr:first-child th,
div.dataTables_scrollBody table tbody tr:first-child td {
border-top: none;
}
div.dataTables_scrollFoot > .dataTables_scrollFootInner {
box-sizing: content-box;
}
div.dataTables_scrollFoot > .dataTables_scrollFootInner > table {
margin-top: 0 !important;
border-top: none;
}
@media screen and (max-width: 767px) {
div.dataTables_wrapper div.dataTables_length,
div.dataTables_wrapper div.dataTables_filter,
div.dataTables_wrapper div.dataTables_info,
div.dataTables_wrapper div.dataTables_paginate {
text-align: center;
}
div.dataTables_wrapper div.dataTables_paginate ul.pagination {
justify-content: center !important;
}
}
table.dataTable.table-sm > thead > tr > th :not(.sorting_disabled) {
padding-right: 20px;
}
table.dataTable.table-sm .sorting:before,
table.dataTable.table-sm .sorting_asc:before,
table.dataTable.table-sm .sorting_desc:before {
top: 5px;
right: 0.85em;
}
table.dataTable.table-sm .sorting:after,
table.dataTable.table-sm .sorting_asc:after,
table.dataTable.table-sm .sorting_desc:after {
top: 5px;
}
table.table-bordered.dataTable {
border-right-width: 0;
}
table.table-bordered.dataTable th,
table.table-bordered.dataTable td {
border-left-width: 0;
}
table.table-bordered.dataTable th:last-child, table.table-bordered.dataTable th:last-child,
table.table-bordered.dataTable td:last-child,
table.table-bordered.dataTable td:last-child {
border-right-width: 1px;
}
table.table-bordered.dataTable tbody th,
table.table-bordered.dataTable tbody td {
border-bottom-width: 0;
}
div.dataTables_scrollHead table.table-bordered {
border-bottom-width: 0;
}
div.table-responsive > div.dataTables_wrapper > div.row {
margin: 0;
}
div.table-responsive > div.dataTables_wrapper > div.row > div[class^="col-"]:first-child {
padding-left: 0;
}
div.table-responsive > div.dataTables_wrapper > div.row > div[class^="col-"]:last-child {
padding-right: 0;
}

312
src/EventHub.IdentityServer/wwwroot/libs/datatables.net-bs5/css/dataTables.bootstrap5.css

@ -0,0 +1,312 @@
@charset "UTF-8";
td.dt-control {
background: url("https://www.datatables.net/examples/resources/details_open.png") no-repeat center center;
cursor: pointer;
}
tr.dt-hasChild td.dt-control {
background: url("https://www.datatables.net/examples/resources/details_close.png") no-repeat center center;
}
table.dataTable th.dt-left,
table.dataTable td.dt-left {
text-align: left;
}
table.dataTable th.dt-center,
table.dataTable td.dt-center,
table.dataTable td.dataTables_empty {
text-align: center;
}
table.dataTable th.dt-right,
table.dataTable td.dt-right {
text-align: right;
}
table.dataTable th.dt-justify,
table.dataTable td.dt-justify {
text-align: justify;
}
table.dataTable th.dt-nowrap,
table.dataTable td.dt-nowrap {
white-space: nowrap;
}
table.dataTable thead th.dt-head-left,
table.dataTable thead td.dt-head-left,
table.dataTable tfoot th.dt-head-left,
table.dataTable tfoot td.dt-head-left {
text-align: left;
}
table.dataTable thead th.dt-head-center,
table.dataTable thead td.dt-head-center,
table.dataTable tfoot th.dt-head-center,
table.dataTable tfoot td.dt-head-center {
text-align: center;
}
table.dataTable thead th.dt-head-right,
table.dataTable thead td.dt-head-right,
table.dataTable tfoot th.dt-head-right,
table.dataTable tfoot td.dt-head-right {
text-align: right;
}
table.dataTable thead th.dt-head-justify,
table.dataTable thead td.dt-head-justify,
table.dataTable tfoot th.dt-head-justify,
table.dataTable tfoot td.dt-head-justify {
text-align: justify;
}
table.dataTable thead th.dt-head-nowrap,
table.dataTable thead td.dt-head-nowrap,
table.dataTable tfoot th.dt-head-nowrap,
table.dataTable tfoot td.dt-head-nowrap {
white-space: nowrap;
}
table.dataTable tbody th.dt-body-left,
table.dataTable tbody td.dt-body-left {
text-align: left;
}
table.dataTable tbody th.dt-body-center,
table.dataTable tbody td.dt-body-center {
text-align: center;
}
table.dataTable tbody th.dt-body-right,
table.dataTable tbody td.dt-body-right {
text-align: right;
}
table.dataTable tbody th.dt-body-justify,
table.dataTable tbody td.dt-body-justify {
text-align: justify;
}
table.dataTable tbody th.dt-body-nowrap,
table.dataTable tbody td.dt-body-nowrap {
white-space: nowrap;
}
/*! Bootstrap 5 integration for DataTables
*
* ©2020 SpryMedia Ltd, all rights reserved.
* License: MIT datatables.net/license/mit
*/
table.dataTable {
clear: both;
margin-top: 6px !important;
margin-bottom: 6px !important;
max-width: none !important;
border-collapse: separate !important;
border-spacing: 0;
}
table.dataTable td,
table.dataTable th {
-webkit-box-sizing: content-box;
box-sizing: content-box;
}
table.dataTable td.dataTables_empty,
table.dataTable th.dataTables_empty {
text-align: center;
}
table.dataTable.nowrap th,
table.dataTable.nowrap td {
white-space: nowrap;
}
div.dataTables_wrapper div.dataTables_length label {
font-weight: normal;
text-align: left;
white-space: nowrap;
}
div.dataTables_wrapper div.dataTables_length select {
width: auto;
display: inline-block;
}
div.dataTables_wrapper div.dataTables_filter {
text-align: right;
}
div.dataTables_wrapper div.dataTables_filter label {
font-weight: normal;
white-space: nowrap;
text-align: left;
}
div.dataTables_wrapper div.dataTables_filter input {
margin-left: 0.5em;
display: inline-block;
width: auto;
}
div.dataTables_wrapper div.dataTables_info {
padding-top: 0.85em;
}
div.dataTables_wrapper div.dataTables_paginate {
margin: 0;
white-space: nowrap;
text-align: right;
}
div.dataTables_wrapper div.dataTables_paginate ul.pagination {
margin: 2px 0;
white-space: nowrap;
justify-content: flex-end;
}
div.dataTables_wrapper div.dataTables_processing {
position: absolute;
top: 50%;
left: 50%;
width: 200px;
margin-left: -100px;
margin-top: -26px;
text-align: center;
padding: 1em 0;
}
table.dataTable > thead > tr > th:active,
table.dataTable > thead > tr > td:active {
outline: none;
}
table.dataTable > thead > tr > th:not(.sorting_disabled),
table.dataTable > thead > tr > td:not(.sorting_disabled) {
padding-right: 30px;
}
table.dataTable > thead .sorting,
table.dataTable > thead .sorting_asc,
table.dataTable > thead .sorting_desc,
table.dataTable > thead .sorting_asc_disabled,
table.dataTable > thead .sorting_desc_disabled {
cursor: pointer;
position: relative;
}
table.dataTable > thead .sorting:before, table.dataTable > thead .sorting:after,
table.dataTable > thead .sorting_asc:before,
table.dataTable > thead .sorting_asc:after,
table.dataTable > thead .sorting_desc:before,
table.dataTable > thead .sorting_desc:after,
table.dataTable > thead .sorting_asc_disabled:before,
table.dataTable > thead .sorting_asc_disabled:after,
table.dataTable > thead .sorting_desc_disabled:before,
table.dataTable > thead .sorting_desc_disabled:after {
position: absolute;
bottom: 0.5em;
display: block;
opacity: 0.3;
}
table.dataTable > thead .sorting:before,
table.dataTable > thead .sorting_asc:before,
table.dataTable > thead .sorting_desc:before,
table.dataTable > thead .sorting_asc_disabled:before,
table.dataTable > thead .sorting_desc_disabled:before {
right: 1em;
content: "↑";
}
table.dataTable > thead .sorting:after,
table.dataTable > thead .sorting_asc:after,
table.dataTable > thead .sorting_desc:after,
table.dataTable > thead .sorting_asc_disabled:after,
table.dataTable > thead .sorting_desc_disabled:after {
right: 0.5em;
content: "↓";
}
table.dataTable > thead .sorting_asc:before,
table.dataTable > thead .sorting_desc:after {
opacity: 1;
}
table.dataTable > thead .sorting_asc_disabled:before,
table.dataTable > thead .sorting_desc_disabled:after {
opacity: 0;
}
div.dataTables_scrollHead table.dataTable {
margin-bottom: 0 !important;
}
div.dataTables_scrollBody > table {
border-top: none;
margin-top: 0 !important;
margin-bottom: 0 !important;
}
div.dataTables_scrollBody > table > thead .sorting:before,
div.dataTables_scrollBody > table > thead .sorting_asc:before,
div.dataTables_scrollBody > table > thead .sorting_desc:before,
div.dataTables_scrollBody > table > thead .sorting:after,
div.dataTables_scrollBody > table > thead .sorting_asc:after,
div.dataTables_scrollBody > table > thead .sorting_desc:after {
display: none;
}
div.dataTables_scrollBody > table > tbody tr:first-child th,
div.dataTables_scrollBody > table > tbody tr:first-child td {
border-top: none;
}
div.dataTables_scrollFoot > .dataTables_scrollFootInner {
box-sizing: content-box;
}
div.dataTables_scrollFoot > .dataTables_scrollFootInner > table {
margin-top: 0 !important;
border-top: none;
}
@media screen and (max-width: 767px) {
div.dataTables_wrapper div.dataTables_length,
div.dataTables_wrapper div.dataTables_filter,
div.dataTables_wrapper div.dataTables_info,
div.dataTables_wrapper div.dataTables_paginate {
text-align: center;
}
div.dataTables_wrapper div.dataTables_paginate ul.pagination {
justify-content: center !important;
}
}
table.dataTable.table-sm > thead > tr > th:not(.sorting_disabled) {
padding-right: 20px;
}
table.dataTable.table-sm .sorting:before,
table.dataTable.table-sm .sorting_asc:before,
table.dataTable.table-sm .sorting_desc:before {
top: 5px;
right: 0.85em;
}
table.dataTable.table-sm .sorting:after,
table.dataTable.table-sm .sorting_asc:after,
table.dataTable.table-sm .sorting_desc:after {
top: 5px;
}
table.table-bordered.dataTable {
border-right-width: 0;
}
table.table-bordered.dataTable thead tr:first-child th,
table.table-bordered.dataTable thead tr:first-child td {
border-top-width: 1px;
}
table.table-bordered.dataTable th,
table.table-bordered.dataTable td {
border-left-width: 0;
}
table.table-bordered.dataTable th:first-child, table.table-bordered.dataTable th:first-child,
table.table-bordered.dataTable td:first-child,
table.table-bordered.dataTable td:first-child {
border-left-width: 1px;
}
table.table-bordered.dataTable th:last-child, table.table-bordered.dataTable th:last-child,
table.table-bordered.dataTable td:last-child,
table.table-bordered.dataTable td:last-child {
border-right-width: 1px;
}
table.table-bordered.dataTable th,
table.table-bordered.dataTable td {
border-bottom-width: 1px;
}
div.dataTables_scrollHead table.table-bordered {
border-bottom-width: 0;
}
div.table-responsive > div.dataTables_wrapper > div.row {
margin: 0;
}
div.table-responsive > div.dataTables_wrapper > div.row > div[class^=col-]:first-child {
padding-left: 0;
}
div.table-responsive > div.dataTables_wrapper > div.row > div[class^=col-]:last-child {
padding-right: 0;
}
table.dataTable.table-striped > tbody > tr:nth-of-type(2n+1) {
--bs-table-accent-bg: transparent;
}
table.dataTable.table-striped > tbody > tr.odd {
--bs-table-accent-bg: var(--bs-table-striped-bg);
}

12
src/EventHub.IdentityServer/wwwroot/libs/datatables.net-bs4/js/dataTables.bootstrap4.js → src/EventHub.IdentityServer/wwwroot/libs/datatables.net-bs5/js/dataTables.bootstrap5.js

@ -1,9 +1,9 @@
/*! DataTables Bootstrap 4 integration /*! DataTables Bootstrap 5 integration
* ©2011-2017 SpryMedia Ltd - datatables.net/license * 2020 SpryMedia Ltd - datatables.net/license
*/ */
/** /**
* DataTables integration for Bootstrap 4. This requires Bootstrap 4 and * DataTables integration for Bootstrap 4. This requires Bootstrap 5 and
* DataTables 1.10 or newer. * DataTables 1.10 or newer.
* *
* This file sets the defaults and adds options to DataTables to style its * This file sets the defaults and adds options to DataTables to style its
@ -55,9 +55,9 @@ $.extend( true, DataTable.defaults, {
/* Default class modification */ /* Default class modification */
$.extend( DataTable.ext.classes, { $.extend( DataTable.ext.classes, {
sWrapper: "dataTables_wrapper dt-bootstrap4", sWrapper: "dataTables_wrapper dt-bootstrap5",
sFilterInput: "form-control form-control-sm", sFilterInput: "form-control form-control-sm",
sLengthSelect: "custom-select custom-select-sm form-control form-control-sm", sLengthSelect: "form-select form-select-sm",
sProcessing: "dataTables_processing card", sProcessing: "dataTables_processing card",
sPageButton: "paginate_button page-item" sPageButton: "paginate_button page-item"
} ); } );
@ -83,7 +83,7 @@ DataTable.ext.renderer.pageButton.bootstrap = function ( settings, host, idx, bu
for ( i=0, ien=buttons.length ; i<ien ; i++ ) { for ( i=0, ien=buttons.length ; i<ien ; i++ ) {
button = buttons[i]; button = buttons[i];
if ( $.isArray( button ) ) { if ( Array.isArray( button ) ) {
attach( container, button ); attach( container, button );
} }
else { else {

1178
src/EventHub.IdentityServer/wwwroot/libs/datatables.net/js/jquery.dataTables.js

File diff suppressed because it is too large

4
src/EventHub.IdentityServer/wwwroot/libs/select2/js/select2-bootstrap-modal-patch.js

@ -1,4 +0,0 @@
/*
https://select2.org/troubleshooting/common-problems
*/
$.fn.modal.Constructor.prototype._enforceFocus = function () { };

269
src/EventHub.IdentityServer/yarn.lock

@ -2,37 +2,37 @@
# yarn lockfile v1 # yarn lockfile v1
"@abp/aspnetcore.mvc.ui.theme.basic@~5.0.0-beta.1": "@abp/aspnetcore.mvc.ui.theme.basic@~5.0.0-rc.1":
version "5.0.0-beta.1" version "5.0.0-rc.1"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.0.0-beta.1.tgz#2c78c2bd977a67f6c2ed77cfcd404cf9533eaaae" resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.basic/-/aspnetcore.mvc.ui.theme.basic-5.0.0-rc.1.tgz#cd575ab35b5cf9c9c2d3ab02fc6ff5fb1851a622"
integrity sha512-b8Boztxd5NbaDlXQvgHXHtw8ZNgM4tEgo14kw/bN3mcLx05fWLGd8Lzfdi7i+Ju6U3rKbgi+0MSbga93A0KSmg== integrity sha512-/tezLoIaqMJTlV78EbyKkJY30XpayiXJg2apq6/LnSddDIDKaRdlWe1gfXBjFrkOVkdhdSPrvOIy95a284cY/Q==
dependencies: dependencies:
"@abp/aspnetcore.mvc.ui.theme.shared" "~5.0.0-beta.1" "@abp/aspnetcore.mvc.ui.theme.shared" "~5.0.0-rc.1"
"@abp/aspnetcore.mvc.ui.theme.shared@~5.0.0-beta.1": "@abp/aspnetcore.mvc.ui.theme.shared@~5.0.0-rc.1":
version "5.0.0-beta.1" version "5.0.0-rc.1"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.0.0-beta.1.tgz#25596652bb3f7b6bac5bbd966a731144cd9646c6" resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui.theme.shared/-/aspnetcore.mvc.ui.theme.shared-5.0.0-rc.1.tgz#053ee1d8f69eea1559d6600d7f7b5a645968d6bf"
integrity sha512-N4SHu6rn8alK4jdve00IscngrfvqJNEjrwQclXNmP9c4NtPuVM9emZdxBzKF8jFb6Hz8HiwM9H3xV/SjKCS/7A== integrity sha512-XbCXZ8mka5RCezYR54YRiUn+SgTyVgo/2F42UJ8ZJKMHKo8nQGMFANWuuJ4qHamApEqKZZmmdWp37BnpQ7JMMw==
dependencies: dependencies:
"@abp/aspnetcore.mvc.ui" "~5.0.0-beta.1" "@abp/aspnetcore.mvc.ui" "~5.0.0-rc.1"
"@abp/bootstrap" "~5.0.0-beta.1" "@abp/bootstrap" "~5.0.0-rc.1"
"@abp/bootstrap-datepicker" "~5.0.0-beta.1" "@abp/bootstrap-datepicker" "~5.0.0-rc.1"
"@abp/datatables.net-bs4" "~5.0.0-beta.1" "@abp/datatables.net-bs5" "~5.0.0-rc.1"
"@abp/font-awesome" "~5.0.0-beta.1" "@abp/font-awesome" "~5.0.0-rc.1"
"@abp/jquery-form" "~5.0.0-beta.1" "@abp/jquery-form" "~5.0.0-rc.1"
"@abp/jquery-validation-unobtrusive" "~5.0.0-beta.1" "@abp/jquery-validation-unobtrusive" "~5.0.0-rc.1"
"@abp/lodash" "~5.0.0-beta.1" "@abp/lodash" "~5.0.0-rc.1"
"@abp/luxon" "~5.0.0-beta.1" "@abp/luxon" "~5.0.0-rc.1"
"@abp/malihu-custom-scrollbar-plugin" "~5.0.0-beta.1" "@abp/malihu-custom-scrollbar-plugin" "~5.0.0-rc.1"
"@abp/select2" "~5.0.0-beta.1" "@abp/select2" "~5.0.0-rc.1"
"@abp/sweetalert2" "~5.0.0-beta.1" "@abp/sweetalert2" "~5.0.0-rc.1"
"@abp/timeago" "~5.0.0-beta.1" "@abp/timeago" "~5.0.0-rc.1"
"@abp/toastr" "~5.0.0-beta.1" "@abp/toastr" "~5.0.0-rc.1"
"@abp/aspnetcore.mvc.ui@~5.0.0-beta.1": "@abp/aspnetcore.mvc.ui@~5.0.0-rc.1":
version "5.0.0-beta.1" version "5.0.0-rc.1"
resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.0.0-beta.1.tgz#30c14386899596bf91e8871810dbaa1a0e51e996" resolved "https://registry.yarnpkg.com/@abp/aspnetcore.mvc.ui/-/aspnetcore.mvc.ui-5.0.0-rc.1.tgz#17e16731a4b840ccf208ec9fa651783776b7ed28"
integrity sha512-pabiGHghC62eg95RfAncEt0+yGdBxdMmyqCXV+Be4JjaMz/hGZIDOPIYnaqCayZtyMmIRqG6IAwi99DqBjkQAQ== integrity sha512-eLH0tj5KMwwFRL1JnN1zjM1lkJyB16ElpQ0W56tjiTx0S++QChMrBFhbKXxIfsFylNv9bhaInamq3pXKrXKhAg==
dependencies: dependencies:
ansi-colors "^4.1.1" ansi-colors "^4.1.1"
extend-object "^1.0.0" extend-object "^1.0.0"
@ -41,145 +41,145 @@
merge-stream "^2.0.0" merge-stream "^2.0.0"
micromatch "^4.0.2" micromatch "^4.0.2"
"@abp/bootstrap-datepicker@~5.0.0-beta.1": "@abp/bootstrap-datepicker@~5.0.0-rc.1":
version "5.0.0-beta.1" version "5.0.0-rc.1"
resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.0.0-beta.1.tgz#727e0f7305a94c95ece152ffff011bcff621f46d" resolved "https://registry.yarnpkg.com/@abp/bootstrap-datepicker/-/bootstrap-datepicker-5.0.0-rc.1.tgz#750e3cfc93124ecb10805e511d499ba03ec8b446"
integrity sha512-txhdlJqyO2D9MkGLYgrsiDaC58cb2eCpk2uxoqqQeVWvuRPo/L+9rCBk+bu6J37FGJtU8aabtHJyR5xnYbv0TQ== integrity sha512-VkuX0qdHt8zYe7jJt4Y03kr4UnFYmqqBC2DyyaipUvy9KncUsui/t5enn7GN5ZWE9phF9ek4Fga3mRRIgs3bZg==
dependencies: dependencies:
bootstrap-datepicker "^1.9.0" bootstrap-datepicker "^1.9.0"
"@abp/bootstrap@~5.0.0-beta.1": "@abp/bootstrap@~5.0.0-rc.1":
version "5.0.0-beta.1" version "5.0.0-rc.1"
resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.0.0-beta.1.tgz#075a15459ff8e3896b6553786e6c8f091c6ffcad" resolved "https://registry.yarnpkg.com/@abp/bootstrap/-/bootstrap-5.0.0-rc.1.tgz#a9adb676908612e4f83c184d0d2188f1d561e6c4"
integrity sha512-W8z6qSAsRoXmG0++xH6Bk1oRc90hFqVcjKI+5XgBQhUUCn2qBruBYOKFxPg2GeT2f1k9K5TrCEnnVrh0sOP9/A== integrity sha512-TCFwjX3o1lOkV4n3ZmD0PtsXPfBaaOAkLh4fMZTxF9EfBLtH6u0y3LsOviPAjiee+BmjYy2vO+9cgS6TQP8HBw==
dependencies: dependencies:
"@abp/core" "~5.0.0-beta.1" "@abp/core" "~5.0.0-rc.1"
bootstrap "^4.6.0" bootstrap "^5.1.0"
bootstrap-v4-rtl "4.6.0-1" bootstrap-v4-rtl "4.6.0-1"
"@abp/core@~5.0.0-beta.1": "@abp/core@~5.0.0-rc.1":
version "5.0.0-beta.1" version "5.0.0-rc.1"
resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.0.0-beta.1.tgz#6cff06b13529ab9d7a6ddc4e89dc40616e6b7739" resolved "https://registry.yarnpkg.com/@abp/core/-/core-5.0.0-rc.1.tgz#1b7d88dcd2855e0fd0cec92b32f9a770f744c1da"
integrity sha512-TK1CnurJIK/SXfsNTk6HSpxdaJgVxwvqNd4F3fxCC0Uj8s5viD3TAGk39Hkp4909WGfNrRq8BEUNvTYM/rP6gg== integrity sha512-E/j8aAsgVPcUS2bhTggpbqBHoavlAW9s2IS5GZ2rd8nKTd8aV2oa9lH0CgYN2Yswgd1mr9aA4Mz+/Se5mumyRA==
dependencies: dependencies:
"@abp/utils" "^5.0.0-beta.1" "@abp/utils" "~5.0.0-rc.1"
"@abp/datatables.net-bs4@~5.0.0-beta.1": "@abp/datatables.net-bs5@~5.0.0-rc.1":
version "5.0.0-beta.1" version "5.0.0-rc.1"
resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs4/-/datatables.net-bs4-5.0.0-beta.1.tgz#110d7d8cf1c15db7432d8f0649f4317ba8de10dd" resolved "https://registry.yarnpkg.com/@abp/datatables.net-bs5/-/datatables.net-bs5-5.0.0-rc.1.tgz#45998d0469ee79eb006973981b26b541cd1bc6d0"
integrity sha512-CPodZP9pqLdwnFZ77/mcSfuhyK1WMi/c+9VWpGXFQSGaABNKPP2UIdAChwUcBRdGkZRa/IhXx3CCr1ZMLpJsMQ== integrity sha512-TwSFY396xY9SRy93LNlKvuj3XnLpt3NGFv2/CnKizeVF6ike/nwun1NjNhLRZ1b1kfs6LsHoolYzhOfkJeoH1A==
dependencies: dependencies:
"@abp/datatables.net" "~5.0.0-beta.1" "@abp/datatables.net" "~5.0.0-rc.1"
datatables.net-bs4 "^1.10.21" datatables.net-bs5 "^1.10.25"
"@abp/datatables.net@~5.0.0-beta.1": "@abp/datatables.net@~5.0.0-rc.1":
version "5.0.0-beta.1" version "5.0.0-rc.1"
resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.0.0-beta.1.tgz#8e784a011d33de154554f3239c448fcfd8adb713" resolved "https://registry.yarnpkg.com/@abp/datatables.net/-/datatables.net-5.0.0-rc.1.tgz#4f286a2e253f67a7522a5e8b6f6767d5fc324983"
integrity sha512-mRMYqTCoYLmDLvL+CvmwUS4JqCqdkn6mxHd7zgkaR04xlGLEmNae5aGbs1wURJ86MOWrHbfkx66lQjkul3zbQw== integrity sha512-r1RjBde+8zacolfsolc4DBcLVyG3A/Fb4ptP3x8/HPQl7lkLCLTd9xS0/w3HeD62wFiugZvHjt82gD5A48CYUA==
dependencies: dependencies:
"@abp/jquery" "~5.0.0-beta.1" "@abp/jquery" "~5.0.0-rc.1"
datatables.net "^1.10.21" datatables.net "^1.10.21"
"@abp/font-awesome@~5.0.0-beta.1": "@abp/font-awesome@~5.0.0-rc.1":
version "5.0.0-beta.1" version "5.0.0-rc.1"
resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.0.0-beta.1.tgz#3ae721c447a009601226c381a20dc4adabe154e1" resolved "https://registry.yarnpkg.com/@abp/font-awesome/-/font-awesome-5.0.0-rc.1.tgz#a2fdcb8111ddac8558b92feb935abb12103d0592"
integrity sha512-fsMqwApogZ1rAogStQxBX/Nh8akXPW/Alm8UayfK6TXIkPPjBz5RQSHfdlosG7M/U3mwUNGcLlaDvQXsE/nqow== integrity sha512-1rinXJdRurXIwxIszYt/6dS5EKrJPgBWKF2E8Mxc+ODN3/NboMYNrdKm3FAxHX3YB36fmW+qsBXH9aTVDohvCw==
dependencies: dependencies:
"@abp/core" "~5.0.0-beta.1" "@abp/core" "~5.0.0-rc.1"
"@fortawesome/fontawesome-free" "^5.13.0" "@fortawesome/fontawesome-free" "^5.13.0"
"@abp/jquery-form@~5.0.0-beta.1": "@abp/jquery-form@~5.0.0-rc.1":
version "5.0.0-beta.1" version "5.0.0-rc.1"
resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.0.0-beta.1.tgz#d13f4cffce48125547b9da57cfc407f9a35a89e6" resolved "https://registry.yarnpkg.com/@abp/jquery-form/-/jquery-form-5.0.0-rc.1.tgz#c2bbf6532d88d8f7eb96d5ff8f8720d9166ab106"
integrity sha512-RYE90XIDxWkvxO5ukuZ2PHk6aA/o7NQKLcR9WsN1G2xTU/frrNPgtruGRTIj7Nx3BPUeMp7EAN2rYZwglcnO5g== integrity sha512-Yz5RpBzslciR6DEOvw2OjA1uDD0zf2JECbzAoy1BaY3iEFy0EUwLDhYKQmWcyoo6/2yMrPMBJlghpirmi5B9Vg==
dependencies: dependencies:
"@abp/jquery" "~5.0.0-beta.1" "@abp/jquery" "~5.0.0-rc.1"
jquery-form "^4.3.0" jquery-form "^4.3.0"
"@abp/jquery-validation-unobtrusive@~5.0.0-beta.1": "@abp/jquery-validation-unobtrusive@~5.0.0-rc.1":
version "5.0.0-beta.1" version "5.0.0-rc.1"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.0.0-beta.1.tgz#93ff6ee92bccdde77816bfb434e967fd142f6b83" resolved "https://registry.yarnpkg.com/@abp/jquery-validation-unobtrusive/-/jquery-validation-unobtrusive-5.0.0-rc.1.tgz#6d39c58f1ad0b48d23521dc31904dfca4bc074c9"
integrity sha512-LZE1KIALGBCINdWrHzoGczekUFtKwbXbLIgb4ZgiipO5Xja7py/iVvts10QWqUzhnBk+kmbHbj+KnjdqP4Z8pQ== integrity sha512-PcZE6JlcMRjIk042MkwvGQjJ88zdMM/o99A3cnT0UMkAwHl8z28R7OjWjhlZhrYznOtwEtp3yNhPrNn7OdtmNw==
dependencies: dependencies:
"@abp/jquery-validation" "~5.0.0-beta.1" "@abp/jquery-validation" "~5.0.0-rc.1"
jquery-validation-unobtrusive "^3.2.11" jquery-validation-unobtrusive "^3.2.11"
"@abp/jquery-validation@~5.0.0-beta.1": "@abp/jquery-validation@~5.0.0-rc.1":
version "5.0.0-beta.1" version "5.0.0-rc.1"
resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.0.0-beta.1.tgz#2964ca1266b087e4c4c0e768bfc4bfe0284e4ff5" resolved "https://registry.yarnpkg.com/@abp/jquery-validation/-/jquery-validation-5.0.0-rc.1.tgz#f76d5c631a24f292327e01dfa7f557a6643055b1"
integrity sha512-ZDNdkPy2ZNu0EYDNH20Oh9R3bICCYv9CbEj4zZ8Qavixo9VTkybY3BW0nYjcu1yb1P92gZPp80W8vyfxSo//kw== integrity sha512-FZwDN6FVx2WAMfK2QSpI081H1GBd8Tdbw60T0Kmc6m/qfQqLuwY3gPbUCrAS1J91eyvwxOVEycIIJ1Np/UhRmA==
dependencies: dependencies:
"@abp/jquery" "~5.0.0-beta.1" "@abp/jquery" "~5.0.0-rc.1"
jquery-validation "^1.19.2" jquery-validation "^1.19.2"
"@abp/jquery@~5.0.0-beta.1": "@abp/jquery@~5.0.0-rc.1":
version "5.0.0-beta.1" version "5.0.0-rc.1"
resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.0.0-beta.1.tgz#360e7a164b6b4ce615a5ad91a1c78ef6893648f3" resolved "https://registry.yarnpkg.com/@abp/jquery/-/jquery-5.0.0-rc.1.tgz#4ff643273b57dde7bb2af53ce62ab753bb13e0be"
integrity sha512-v2t+76L45tlbpGeVR39GurZl60Rj1pR/TdUidpP6zwnpx1Y3I+CvlJNDwTESeE/ixTOT3PyFbXoMEi6hI+v39A== integrity sha512-tK/eE0mq7UhPjQLJgluR06pHHIH64fcHCtL+V2V/u1u0dmHa6Fd6LpHGuekGdlZI7QLs6n6DiG6tkv4Cdf8W/g==
dependencies: dependencies:
"@abp/core" "~5.0.0-beta.1" "@abp/core" "~5.0.0-rc.1"
jquery "~3.6.0" jquery "~3.6.0"
"@abp/lodash@~5.0.0-beta.1": "@abp/lodash@~5.0.0-rc.1":
version "5.0.0-beta.1" version "5.0.0-rc.1"
resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.0.0-beta.1.tgz#618797bde42b17f91d7f99fdd5f24cb5e8a361b3" resolved "https://registry.yarnpkg.com/@abp/lodash/-/lodash-5.0.0-rc.1.tgz#00e31f74eb28329caae96250c4439c5b2800acdb"
integrity sha512-WsUjzHRZ6RkSMd5PTw0oWijDbbq/Wgonv8++ufUZi1WK5spZi9ohjcYM4io3Ms3fG+g4pWznaicYraMpV5tcsQ== integrity sha512-6oO1m3vnXhNfITLyNubShKmIX92DMpgPJDJmUpoNiDMf0J1G0oHHauKW9X7aTEHlxIA0sK9xk8kIKSvgS9SThA==
dependencies: dependencies:
"@abp/core" "~5.0.0-beta.1" "@abp/core" "~5.0.0-rc.1"
lodash "^4.17.15" lodash "^4.17.15"
"@abp/luxon@~5.0.0-beta.1": "@abp/luxon@~5.0.0-rc.1":
version "5.0.0-beta.1" version "5.0.0-rc.1"
resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.0.0-beta.1.tgz#fc81fcbfb592d3baf7b9856b3cecf5b86df4bfdf" resolved "https://registry.yarnpkg.com/@abp/luxon/-/luxon-5.0.0-rc.1.tgz#ce185ebdefe1c416fcf85124226440f1334b05a6"
integrity sha512-t4lhJ/wr1rAVH1/bnzmc8niZYvolTuXUB0h6A6UYaw205QyNtimzusYkTwkc+Z3xHFUrkLCoG7J2SVoCJuioaA== integrity sha512-fGN/6lHKIqCGe6pv49G2lRK5/7ezUYhZW+2A0oRtyEHsdjhXiZobTVnT/lqawqEs8aR2sJyc7lwCmRnO4jTrug==
dependencies: dependencies:
"@abp/core" "~5.0.0-beta.1" "@abp/core" "~5.0.0-rc.1"
luxon "^1.24.1" luxon "^1.24.1"
"@abp/malihu-custom-scrollbar-plugin@~5.0.0-beta.1": "@abp/malihu-custom-scrollbar-plugin@~5.0.0-rc.1":
version "5.0.0-beta.1" version "5.0.0-rc.1"
resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.0.0-beta.1.tgz#7af43d30af9b1f741fd9d9559d100aa4a5c52ae9" resolved "https://registry.yarnpkg.com/@abp/malihu-custom-scrollbar-plugin/-/malihu-custom-scrollbar-plugin-5.0.0-rc.1.tgz#8b14c53b52603bcc283d1916133038ff25b5f18b"
integrity sha512-B195PC4/75W0EXjGEQUd/ZARb/eGWj8DX7hq3K+J+lUWzWu46dZy8s5bBij78HqxS91/q6nbxU35Z+E9xl6ICg== integrity sha512-lEM2UwfoK+sUZlL7QiNgvFrXxq1Vb4nJbFmz4eZftZ1Zhj7akq5xxfWdq2jTwM4DQWFhr1OOAVaYHYx0tSCHpA==
dependencies: dependencies:
"@abp/core" "~5.0.0-beta.1" "@abp/core" "~5.0.0-rc.1"
malihu-custom-scrollbar-plugin "^3.1.5" malihu-custom-scrollbar-plugin "^3.1.5"
"@abp/select2@~5.0.0-beta.1": "@abp/select2@~5.0.0-rc.1":
version "5.0.0-beta.1" version "5.0.0-rc.1"
resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.0.0-beta.1.tgz#15988165fcfed2ebc2b8d097965e2dc1984af35e" resolved "https://registry.yarnpkg.com/@abp/select2/-/select2-5.0.0-rc.1.tgz#2b1e554ec9c96d5259c56c8f20d4b1b3d0bdb559"
integrity sha512-SF+NkWDJNz1EeEimW5luaCMPTNN1oPzEWs47usPJo8m7HfijEvF3rymJ8jL5zWIOo05Tx3HUurLSVz0qu4vZsw== integrity sha512-usATVW8Mbd/iSt74BQQZbvFei+Fz3IqDCJXW6stHJ4CqOkoJit6lA0cfMv9Az0ApOFf4ucgNgmsrYW3k31jPlQ==
dependencies: dependencies:
"@abp/core" "~5.0.0-beta.1" "@abp/core" "~5.0.0-rc.1"
select2 "^4.0.13" select2 "^4.0.13"
"@abp/sweetalert2@~5.0.0-beta.1": "@abp/sweetalert2@~5.0.0-rc.1":
version "5.0.0-beta.1" version "5.0.0-rc.1"
resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.0.0-beta.1.tgz#c6a1185f39d3207f67753e7c486eddcefc7fd0da" resolved "https://registry.yarnpkg.com/@abp/sweetalert2/-/sweetalert2-5.0.0-rc.1.tgz#f677853dd5e1e7bdba5d06cff816befcdf0e58b9"
integrity sha512-ADotpiMkIzHLy/ufK0q49V9hgF8oKE0rLRzVZV2dHBpmFR7YRcPdbb5AN9CiXDk6ol8nsocEEAwRmgD3eJG63w== integrity sha512-JW87ed0YhCCd1O2TGX7BoSs5ts0/F4O4D5nv3vvvDgoqXdn0Q1hCXKjeIjfstSIFXAt/e20Cw0azvsYCFaCh3w==
dependencies: dependencies:
"@abp/core" "~5.0.0-beta.1" "@abp/core" "~5.0.0-rc.1"
sweetalert2 "^11.0.18" sweetalert2 "^11.0.18"
"@abp/timeago@~5.0.0-beta.1": "@abp/timeago@~5.0.0-rc.1":
version "5.0.0-beta.1" version "5.0.0-rc.1"
resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.0.0-beta.1.tgz#0f7bb8cd85b7e90d7d5c0a0940b9102e3f4f1e42" resolved "https://registry.yarnpkg.com/@abp/timeago/-/timeago-5.0.0-rc.1.tgz#f826f111d9d89258d5ac57a633a86e55d5604033"
integrity sha512-QwYZyeDRW+X8BGecBcK1SgsClVWNYfPgvct+WkQhTIRxzbP/c1c+1irj69sNdN3df2WLnmjfu3sBw2hzz5ykbg== integrity sha512-zcNG+3EnI/HLLKm4xJXbwjyFsUtFQey+j7zI9zEcXR4JZS+n5ltFSvcV+jLJDL0qcnwpB9008PXR0Jsqpzcmng==
dependencies: dependencies:
"@abp/jquery" "~5.0.0-beta.1" "@abp/jquery" "~5.0.0-rc.1"
timeago "^1.6.7" timeago "^1.6.7"
"@abp/toastr@~5.0.0-beta.1": "@abp/toastr@~5.0.0-rc.1":
version "5.0.0-beta.1" version "5.0.0-rc.1"
resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.0.0-beta.1.tgz#d420fc5db6b15f6d623d3928bb6913996511937f" resolved "https://registry.yarnpkg.com/@abp/toastr/-/toastr-5.0.0-rc.1.tgz#2c9a52c71eb60115a05f70465a191febb068ab2f"
integrity sha512-82LfDrZQagtv4QLb643VTra4pxleOq5xYwhpOK1Ifop2K5CRgElxKfWvY2EtxdGkpCO2arvkOzjRNbxnecHB2w== integrity sha512-SItT5xMfAQsb7ME+v9PQ+6+dUa905T5+Ws7CNMDKZWD59HPxqaoTRHtTOqzn/8pGMyCiXYzNeTdCESkRFdKWKQ==
dependencies: dependencies:
"@abp/jquery" "~5.0.0-beta.1" "@abp/jquery" "~5.0.0-rc.1"
toastr "^2.1.4" toastr "^2.1.4"
"@abp/utils@^5.0.0-beta.1": "@abp/utils@~5.0.0-rc.1":
version "5.0.0-beta.1" version "5.0.0-rc.1"
resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.0.0-beta.1.tgz#e1bf9240738276081c89a67073d9d85205fdf14c" resolved "https://registry.yarnpkg.com/@abp/utils/-/utils-5.0.0-rc.1.tgz#ba89a9de73288661db295f3bce9ea0e47c669f42"
integrity sha512-suzKxHUautizxt5XdlJ8ONIaVMcAHrb2dp1kEnXnFRW1ip+7ZQ9/nxJj+GtY1MhHX2yPmlUQP2K8f2upJh9aoA== integrity sha512-bOgH+hz7B7MnrqR/Aqy34CKiAnZItD/tLBXysea+MldzvAKdssmqe2RLA/6lApzLaF3SbOttoXXpa1q432vAlg==
dependencies: dependencies:
just-compare "^1.3.0" just-compare "^1.3.0"
@ -410,10 +410,10 @@ bootstrap-v4-rtl@4.6.0-1:
resolved "https://registry.yarnpkg.com/bootstrap-v4-rtl/-/bootstrap-v4-rtl-4.6.0-1.tgz#8fc502e800308fb725151128dd288df1c027cd8e" resolved "https://registry.yarnpkg.com/bootstrap-v4-rtl/-/bootstrap-v4-rtl-4.6.0-1.tgz#8fc502e800308fb725151128dd288df1c027cd8e"
integrity sha512-ChcbO5JeEQx6/Yz40YZLq3A4RIWcCmCCiRpweF5wg32/Q8CfWrwDNpcDTJ2SU+aSAewUJoCSzf/tRxhAgnZuog== integrity sha512-ChcbO5JeEQx6/Yz40YZLq3A4RIWcCmCCiRpweF5wg32/Q8CfWrwDNpcDTJ2SU+aSAewUJoCSzf/tRxhAgnZuog==
bootstrap@^4.6.0: bootstrap@^5.1.0:
version "4.6.0" version "5.1.3"
resolved "https://registry.yarnpkg.com/bootstrap/-/bootstrap-4.6.0.tgz#97b9f29ac98f98dfa43bf7468262d84392552fd7" resolved "https://registry.yarnpkg.com/bootstrap/-/bootstrap-5.1.3.tgz#ba081b0c130f810fa70900acbc1c6d3c28fa8f34"
integrity sha512-Io55IuQY3kydzHtbGvQya3H+KorS/M9rSNyfCGCg9WZ4pyT/lCxIlpJgG1GXW/PswzC84Tr2fBYi+7+jFVQQBw== integrity sha512-fcQztozJ8jToQWXxVuEyXWW+dSo8AiXWKwiSSrKWsRB/Qt+Ewwza+JWoLKiTuQLaEPhdNAJ7+Dosc9DOIqNy7Q==
brace-expansion@^1.1.7: brace-expansion@^1.1.7:
version "1.1.11" version "1.1.11"
@ -627,15 +627,22 @@ d@1:
dependencies: dependencies:
es5-ext "^0.10.9" es5-ext "^0.10.9"
datatables.net-bs4@^1.10.21: datatables.net-bs5@^1.10.25:
version "1.10.21" version "1.11.3"
resolved "https://registry.yarnpkg.com/datatables.net-bs4/-/datatables.net-bs4-1.10.21.tgz#7a9ae489ebbd815cd869292450d284edd0f44697" resolved "https://registry.yarnpkg.com/datatables.net-bs5/-/datatables.net-bs5-1.11.3.tgz#939d0e66fbf518718a519534a88fc88cd29405b0"
integrity sha512-F9zabYw8ZLXfjvj2S+BdnbkEUsL48bJwWxQFrA47cOXrIvsMhW8nmqPZcIMK4ko3k1i74nbpWLO1t+vueQKoXQ== integrity sha512-u0tosKUR1XNpXzxOOt2NInnNYayt7GQoG+OM1xPRhdkZ7ZBD4oNF8S0aKve8yvSUq/ZwTMh4WJeh80GdmrJAdQ==
dependencies:
datatables.net ">=1.10.25"
jquery ">=1.7"
datatables.net@>=1.10.25:
version "1.11.3"
resolved "https://registry.yarnpkg.com/datatables.net/-/datatables.net-1.11.3.tgz#80e691036efcd62467558ee64c07dd566cb761b4"
integrity sha512-VMj5qEaTebpNurySkM6jy6sGpl+s6onPK8xJhYr296R/vUBnz1+id16NVqNf9z5aR076OGcpGHCuiTuy4E05oQ==
dependencies: dependencies:
datatables.net "1.10.21"
jquery ">=1.7" jquery ">=1.7"
datatables.net@1.10.21, datatables.net@^1.10.21: datatables.net@^1.10.21:
version "1.10.21" version "1.10.21"
resolved "https://registry.yarnpkg.com/datatables.net/-/datatables.net-1.10.21.tgz#f1d35c8e5c3eb7f5caef39e80cd5b836a8c77103" resolved "https://registry.yarnpkg.com/datatables.net/-/datatables.net-1.10.21.tgz#f1d35c8e5c3eb7f5caef39e80cd5b836a8c77103"
integrity sha512-/bSZtxmf3GTpYcvEmwZ8q26I1yhSx8qklR2B+s1K8+/51UW/zc2zTYwJMqr/Z+iCYixAc00ildj4g2x0Qamolw== integrity sha512-/bSZtxmf3GTpYcvEmwZ8q26I1yhSx8qklR2B+s1K8+/51UW/zc2zTYwJMqr/Z+iCYixAc00ildj4g2x0Qamolw==

6
src/EventHub.Web.Theme/EventHub.Web.Theme.csproj

@ -30,12 +30,12 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.AspNetCore.Mvc.UI.Theme.Shared" Version="5.0.0-rc.1" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Microsoft.Extensions.FileProviders.Embedded" Version="6.0.0-rc.1.*" /> <PackageReference Include="Microsoft.Extensions.FileProviders.Embedded" Version="6.0.0" />
</ItemGroup> </ItemGroup>
</Project> </Project>

14
src/EventHub.Web.Theme/Themes/EventHub/Components/MainNavbar/Default.cshtml

@ -22,7 +22,7 @@
<a class="navbar-brand font-weight-bold" href="@Url.Page("/index")"> <a class="navbar-brand font-weight-bold" href="@Url.Page("/index")">
<img src="/assets/eventhub-logo.svg" class="logo"/> <img src="/assets/eventhub-logo.svg" class="logo"/>
</a> </a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarResponsive" aria-controls="navbarResponsive" aria-expanded="false" aria-label="Toggle navigation"> <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarResponsive" aria-controls="navbarResponsive" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span> <span class="navbar-toggler-icon"></span>
</button> </button>
<div class="collapse navbar-collapse" id="navbarResponsive"> <div class="collapse navbar-collapse" id="navbarResponsive">
@ -44,10 +44,10 @@
<ul class="navbar-nav"> <ul class="navbar-nav">
<li class="nav-item"> <li class="nav-item">
<div class="dropdown"> <div class="dropdown">
<a class="nav-link event-link" type="button" id="createDropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> <a class="nav-link event-link" type="button" id="createDropdownMenuButton" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
+ Create + Create
</a> </a>
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton"> <div class="dropdown-menu m-2" aria-labelledby="dropdownMenuButton">
<a class="dropdown-item" href="@UrlOptions.Value.Www@Url.Page("/organizations/new")">Organization</a> <a class="dropdown-item" href="@UrlOptions.Value.Www@Url.Page("/organizations/new")">Organization</a>
<div class="dropdown-divider"></div> <div class="dropdown-divider"></div>
<a class="dropdown-item" href="@UrlOptions.Value.Www@Url.Page("/events/new")">Event</a> <a class="dropdown-item" href="@UrlOptions.Value.Www@Url.Page("/events/new")">Event</a>
@ -61,11 +61,11 @@
@if (CurrentUser.IsAuthenticated) @if (CurrentUser.IsAuthenticated)
{ {
<li class="nav-item dropdown"> <li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" href="#" id="navbarDropdownMenuLink" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> <a class="nav-link dropdown-toggle" href="#" id="navbarDropdownMenuLink" role="button" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
<span class="user-avatar"> <span class="user-avatar">
<img gravatar-email="@CurrentUser.Email" default-image="Wavatar" gravatar-size="40" width="40" height="40" class="nav-avatar avatar rounded-circle"/> <img gravatar-email="@CurrentUser.Email" default-image="Wavatar" gravatar-size="40" width="40" height="40" class="nav-avatar avatar rounded-circle"/>
</span> </span>
<span class="ml-2"> <span class="ms-2">
@if (!string.IsNullOrWhiteSpace(CurrentUser.Name) && !string.IsNullOrWhiteSpace(CurrentUser.SurName)) @if (!string.IsNullOrWhiteSpace(CurrentUser.Name) && !string.IsNullOrWhiteSpace(CurrentUser.SurName))
{ {
@(CurrentUser.Name + " " + CurrentUser.SurName) @(CurrentUser.Name + " " + CurrentUser.SurName)
@ -78,7 +78,7 @@
} }
</span> </span>
</a> </a>
<div class="dropdown-menu dropdown-menu-right"> <div class="dropdown-menu dropdown-menu-right m-2">
<a class="dropdown-item" href="@(UrlOptions.Value.Account.EnsureEndsWith('/') + "account/manage")" title="@L["Account"]"> <a class="dropdown-item" href="@(UrlOptions.Value.Account.EnsureEndsWith('/') + "account/manage")" title="@L["Account"]">
<i class="fas fa-cog"></i> @L["Account"] <i class="fas fa-cog"></i> @L["Account"]
</a> </a>
@ -97,7 +97,7 @@
<a class="nav-link" href="/account/login?returnUrl=@returnUrl">Log In</a> <a class="nav-link" href="/account/login?returnUrl=@returnUrl">Log In</a>
</li> </li>
<li class="nav-item"> <li class="nav-item">
<a class="btn btn-primary ml-lg-2" href="@UrlOptions.Value.Account/account/register?returnUrl=@returnUrl">Sign Up</a> <a class="btn btn-primary ms-lg-2" href="@UrlOptions.Value.Account/account/register?returnUrl=@returnUrl">Sign Up</a>
</li> </li>
} }
</ul> </ul>

2
src/EventHub.Web.Theme/Themes/EventHub/Components/Menu/Default.cshtml

@ -28,7 +28,7 @@
{ {
<li class="nav-item"> <li class="nav-item">
<div class="dropdown"> <div class="dropdown">
<a class="nav-link dropdown-toggle" href="#" id="Menu_@(menuItem.Name)" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> <a class="nav-link dropdown-toggle" href="#" id="Menu_@(menuItem.Name)" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
@if (menuItem.Icon != null) @if (menuItem.Icon != null)
{ {
if (menuItem.Icon.StartsWith("fa")) if (menuItem.Icon.StartsWith("fa"))

2
src/EventHub.Web.Theme/Themes/EventHub/Components/Menu/_MenuItem.cshtml

@ -25,7 +25,7 @@
else else
{ {
<div class="dropdown-submenu"> <div class="dropdown-submenu">
<a role="button" class="btn dropdown-toggle" data-toggle="dropdown" <a role="button" class="btn dropdown-toggle" data-bs-toggle="dropdown"
aria-haspopup="true" aria-expanded="false"> aria-haspopup="true" aria-expanded="false">
<span class="lp-icon"> <span class="lp-icon">
<i class="@(Model.Icon ?? "")"></i> <i class="@(Model.Icon ?? "")"></i>

2
src/EventHub.Web.Theme/Themes/EventHub/Components/Toolbar/LanguageSwitch/Default.cshtml

@ -4,7 +4,7 @@
@if (Model.OtherLanguages.Any()) @if (Model.OtherLanguages.Any())
{ {
<div class="dropdown"> <div class="dropdown">
<a class="nav-link dropdown-toggle" href="#" role="button" id="dropdownMenuLink" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> <a class="nav-link dropdown-toggle" href="#" role="button" id="dropdownMenuLink" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
@Model.CurrentLanguage.DisplayName @Model.CurrentLanguage.DisplayName
</a> </a>

2
src/EventHub.Web.Theme/Themes/EventHub/Components/Toolbar/UserMenu/Default.cshtml

@ -8,7 +8,7 @@
@inject IHtmlLocalizer<AbpUiResource> L @inject IHtmlLocalizer<AbpUiResource> L
@model ApplicationMenu @model ApplicationMenu
<div class="dropdown"> <div class="dropdown">
<a class="nav-link dropdown-toggle" href="#" role="button" id="dropdownMenuLink" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> <a class="nav-link dropdown-toggle" href="#" role="button" id="dropdownMenuLink" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
@if (CurrentUser.TenantId != null) @if (CurrentUser.TenantId != null)
{ {
<small><i>@CurrentTenant.Name</i>\</small>@CurrentUser.UserName <small><i>@CurrentTenant.Name</i>\</small>@CurrentUser.UserName

3
src/EventHub.Web.Theme/wwwroot/themes/eventhub/owl-edit.css

@ -1,5 +1,4 @@
.main-slider .main-slider .owl-theme .owl-nav {
.owl-theme .owl-nav {
margin-top: 0 !important; margin-top: 0 !important;
position: absolute; position: absolute;
top: 45%; top: 45%;

4
src/EventHub.Web.Theme/wwwroot/themes/eventhub/style.css

@ -40,6 +40,10 @@ body {
font-weight: 600; font-weight: 600;
} }
a:link, a:visited, a:hover, a:focus, a:active {
text-decoration: none;
}
p.lead { p.lead {
font-size: 14px; font-size: 14px;
font-weight: 500; font-weight: 500;

2
src/EventHub.Web/Dockerfile

@ -1,4 +1,4 @@
FROM mcr.microsoft.com/dotnet/aspnet:6.0.0-rc.2-bullseye-slim FROM mcr.microsoft.com/dotnet/aspnet:6.0.0-bullseye-slim
COPY bin/Release/net6.0/publish/ app/ COPY bin/Release/net6.0/publish/ app/
WORKDIR /app WORKDIR /app
ENTRYPOINT ["dotnet", "EventHub.Web.dll"] ENTRYPOINT ["dotnet", "EventHub.Web.dll"]

20
src/EventHub.Web/EventHub.Web.csproj

@ -23,19 +23,19 @@
<ItemGroup> <ItemGroup>
<PackageReference Include="Serilog.AspNetCore" Version="3.2.0" /> <PackageReference Include="Serilog.AspNetCore" Version="3.2.0" />
<PackageReference Include="Serilog.Sinks.Async" Version="1.4.0" /> <PackageReference Include="Serilog.Sinks.Async" Version="1.4.0" />
<PackageReference Include="Microsoft.AspNetCore.DataProtection.StackExchangeRedis" Version="6.0.0-rc.1.*" /> <PackageReference Include="Microsoft.AspNetCore.DataProtection.StackExchangeRedis" Version="6.0.0" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Volo.Abp.Account.Application.Contracts" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Account.Application.Contracts" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.Autofac" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Autofac" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.AutoMapper" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.AutoMapper" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.Caching.StackExchangeRedis" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Caching.StackExchangeRedis" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.AspNetCore.Mvc.Client" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.AspNetCore.Mvc.Client" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.AspNetCore.Authentication.OpenIdConnect" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.AspNetCore.Authentication.OpenIdConnect" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.AspNetCore.Serilog" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.AspNetCore.Serilog" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.Http.Client.IdentityModel.Web" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Http.Client.IdentityModel.Web" Version="5.0.0-rc.1" />
<PackageReference Include="Volo.Abp.Swashbuckle" Version="5.0.0-beta.1" /> <PackageReference Include="Volo.Abp.Swashbuckle" Version="5.0.0-rc.1" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>

11
src/EventHub.Web/Helpers/AllowedExtensionsAttribute.cs

@ -1,3 +1,4 @@
#nullable enable
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.IO; using System.IO;
using System.Linq; using System.Linq;
@ -16,16 +17,12 @@ namespace EventHub.Web.Helpers
protected override ValidationResult? IsValid(object? value, ValidationContext validationContext) protected override ValidationResult? IsValid(object? value, ValidationContext validationContext)
{ {
if (value == null)
{
return ValidationResult.Success;
}
var file = value as IFormFile; var file = value as IFormFile;
var extension = Path.GetExtension(file.FileName);
if (file.Length > 0 && file != null) if (file is { Length: > 0 })
{ {
var extension = Path.GetExtension(file.FileName);
if (!_allowedExtensions.Contains(extension.ToLower())) if (!_allowedExtensions.Contains(extension.ToLower()))
{ {
return new ValidationResult("This file extension is not allowed. Allowed extensions: " + string.Join(",", _allowedExtensions)); return new ValidationResult("This file extension is not allowed. Allowed extensions: " + string.Join(",", _allowedExtensions));

6
src/EventHub.Web/Pages/EventHubPageModel.cs

@ -17,7 +17,11 @@ namespace EventHub.Web.Pages
{ {
Logger.LogException(exception); Logger.LogException(exception);
var errorInfoConverter = LazyServiceProvider.LazyGetRequiredService<IExceptionToErrorInfoConverter>(); var errorInfoConverter = LazyServiceProvider.LazyGetRequiredService<IExceptionToErrorInfoConverter>();
var errorInfo = errorInfoConverter.Convert(exception, false); var errorInfo = errorInfoConverter.Convert(exception, options =>
{
options.SendExceptionsDetailsToClients = false;
options.SendStackTraceToClients = false;
});
Alerts.Danger(errorInfo.Message); Alerts.Danger(errorInfo.Message);
} }
} }

2
src/EventHub.Web/Pages/Events/Components/AttendeesArea/Default.cshtml

@ -6,7 +6,7 @@
@foreach (var attendee in Model.Attendees) @foreach (var attendee in Model.Attendees)
{ {
<a href="/users/@attendee.UserName"> <a href="/users/@attendee.UserName">
<img gravatar-email="@attendee.Email" default-image="Wavatar" gravatar-size="40" class="org-avatar rounded-circle" data-toggle="tooltip" title="@attendee.UserName" /> <img gravatar-email="@attendee.Email" default-image="Wavatar" gravatar-size="40" class="org-avatar rounded-circle" data-bs-toggle="tooltip" title="@attendee.UserName" />
</a> </a>
} }
</div> </div>

2
src/EventHub.Web/Pages/Events/Components/EventsArea/_eventListSection.cshtml

@ -13,7 +13,7 @@
</div> </div>
<div class="card-body"> <div class="card-body">
<div class="event-container"> <div class="event-container">
<div class="form-row"> <div class="row">
<div class="col-3"> <div class="col-3">
<div class="event-date text-center"> <div class="event-date text-center">
<small>@eventDto.StartTime.ToString("MMM")</small> <small>@eventDto.StartTime.ToString("MMM")</small>

2
src/EventHub.Web/Pages/Events/Detail.cshtml

@ -53,7 +53,7 @@
<h5 class="detail-head mt-4">Owner</h5> <h5 class="detail-head mt-4">Owner</h5>
<div> <div>
<a href="/users/@Model.Event.OwnerUserName"> <a href="/users/@Model.Event.OwnerUserName">
<img gravatar-email="@Model.Event.OwnerEmail" default-image="Wavatar" gravatar-size="40" class="org-avatar avatar rounded-circle" data-toggle="tooltip" title="@Model.Event.OwnerUserName"/> <img gravatar-email="@Model.Event.OwnerEmail" default-image="Wavatar" gravatar-size="40" class="org-avatar avatar rounded-circle" data-bs-toggle="tooltip" title="@Model.Event.OwnerUserName"/>
</a> </a>
</div> </div>
@if (Model.IsEventOwner) @if (Model.IsEventOwner)

4
src/EventHub.Web/Pages/Events/Detail.cshtml.cs

@ -8,7 +8,7 @@ namespace EventHub.Web.Pages.Events
public class DetailPageModel : EventHubPageModel public class DetailPageModel : EventHubPageModel
{ {
[BindProperty(SupportsGet = true)] [BindProperty(SupportsGet = true)]
public string Url { get; set; } public new string Url { get; set; }
public bool IsEventOwner { get; set; } public bool IsEventOwner { get; set; }
@ -40,7 +40,7 @@ namespace EventHub.Web.Pages.Events
{ {
url = Event.Url url = Event.Url
} }
) )!
); );
} }

2
src/EventHub.Web/Pages/Events/Edit.cshtml

@ -120,7 +120,7 @@
</div> </div>
<div class="col-md-12 text-right"> <div class="col-md-12 text-end">
<button type="submit" class="btn btn-primary btn-lg"> <button type="submit" class="btn btn-primary btn-lg">
@L["Submit"] @L["Submit"]
</button> </button>

2
src/EventHub.Web/Pages/Events/Edit.cshtml.cs

@ -22,7 +22,7 @@ namespace EventHub.Web.Pages.Events
public class EditPageModel : EventHubPageModel public class EditPageModel : EventHubPageModel
{ {
[BindProperty(SupportsGet = true)] [BindProperty(SupportsGet = true)]
public string Url { get; set; } public new string Url { get; set; }
[BindProperty] [BindProperty]
public EditEventViewModel Event { get; set; } public EditEventViewModel Event { get; set; }

2
src/EventHub.Web/Pages/Events/New.cshtml

@ -129,7 +129,7 @@ else
</select> </select>
<span asp-validation-for="Event.Language" class="text-danger"></span> <span asp-validation-for="Event.Language" class="text-danger"></span>
</div> </div>
<div class="col-md-12 text-right"> <div class="col-md-12 text-end">
<button type="submit" class="btn btn-primary btn-lg"> <button type="submit" class="btn btn-primary btn-lg">
Publish New Event Publish New Event
</button> </button>

47
src/EventHub.Web/Pages/Index.cshtml

@ -51,7 +51,7 @@
<div class="search-event container"> <div class="search-event container">
<div class="card bg-primary mb-0"> <div class="card bg-primary mb-0">
<div class="card-body"> <div class="card-body">
<div class="form-row search-form"> <div class="row search-form">
<div class="col-md mb-3 mb-md-0"> <div class="col-md mb-3 mb-md-0">
<select id="LanguageSelect" class="form-select" aria-label="en"> <select id="LanguageSelect" class="form-select" aria-label="en">
<option value="" selected>Language</option> <option value="" selected>Language</option>
@ -78,8 +78,8 @@
<label for="inputWhen">When</label> <label for="inputWhen">When</label>
</div> </div>
</div> </div>
<div class="col-md-2"> <div class="col-md-2 d-grid gap-2">
<button id="SearchButton" class="btn btn-primary btn-lg btn-block "> <button id="SearchButton" class="btn btn-primary btn-lg">
<img src="/assets/search.svg"> <img src="/assets/search.svg">
Search Search
</button> </button>
@ -162,28 +162,27 @@
</div> </div>
</div> </div>
<div class="container text-center py-5"> <div class="container text-center py-5">
<h1 class="my-5 pb-5">How EventHub Works?</h1> <h1 class="my-5 pb-5">How EventHub Works?</h1>
<div class="row my-4"> <div class="row my-4">
<div class="col-md-5 ml-auto"> <div class="col-md-5 ms-auto">
<div class="px-5"> <div class="px-5">
<h3>Explore groups</h3> <h3>Explore groups</h3>
<p class="lead"> <p class="lead">
List who is organizing local events List who is organizing local events
with one click. with one click.
</p> </p>
@if (!CurrentUser.IsAuthenticated) @if (!CurrentUser.IsAuthenticated)
{ {
<a href="@UrlOptions.Value.Account/Account/Register?returnUrl=@UrlOptions.Value.Www" class="btn btn-link btn-lg">Join EventHub</a> <a href="@UrlOptions.Value.Account/Account/Register?returnUrl=@UrlOptions.Value.Www" class="btn btn-link btn-lg">Join EventHub</a>
} }
</div>
</div> </div>
<div class="col-md-5 mr-auto border-left"> </div>
<div class="px-5"> <div class="col-md-5 me-auto border-left">
<h3>Start an Event</h3> <div class="px-5">
<p class="lead">Create your own Eventhub group and benefit from a community of millions.</p> <h3>Start an Event</h3>
<a href="@Url.Page("/Events/New")" class="btn btn-link btn-lg">Start</a> <p class="lead">Create your own Eventhub group and benefit from a community of millions.</p>
</div> <a href="@Url.Page("/Events/New")" class="btn btn-link btn-lg">Start</a>
</div> </div>
</div> </div>
</div> </div>

2
src/EventHub.Web/Pages/Index.cshtml.cs

@ -40,7 +40,7 @@ namespace EventHub.Web.Pages
OnlineEvents = (await _eventAppService.GetListAsync( OnlineEvents = (await _eventAppService.GetListAsync(
new EventListFilterDto new EventListFilterDto
{ {
MinDate = Clock.Now, MinDate = Clock.Now.ClearTime(),
IsOnline = true, IsOnline = true,
MaxResultCount = 8 MaxResultCount = 8
} }

28
src/EventHub.Web/Pages/Index.js

@ -1,4 +1,32 @@
$(function () { $(function () {
$('.main-slider .owl-carousel').owlCarousel({
loop: true,
center: true,
margin: 0,
padding: 0,
nav: true,
items: 1,
dots: false,
});
$('.card-slider .owl-carousel').owlCarousel({
loop: false,
center: false,
margin: 30,
padding: 0,
nav: true,
slideBy: 2,
responsive: {
0: {
items: 1,
},
991: {
items: 2,
},
},
dots: true,
});
function cb(start, end) { function cb(start, end) {
$('#reportrange span').html(start.format('MMMM D, YYYY') + ' - ' + end.format('MMMM D, YYYY')); $('#reportrange span').html(start.format('MMMM D, YYYY') + ' - ' + end.format('MMMM D, YYYY'));
} }

36
src/EventHub.Web/Pages/Organizations/Components/JoinArea/Default.cshtml

@ -6,24 +6,24 @@
<abp-card-body> <abp-card-body>
@if (Model.IsLoggedIn) @if (Model.IsLoggedIn)
{ {
if (Model.IsJoined) <div class="d-grid gap-2">
{ @if (Model.IsJoined)
<abp-button id="OrganizationLeaveButton" {
button-type="Secondary" <abp-button id="OrganizationLeaveButton"
size="Block" button-type="Secondary"
icon="fas fa-times" icon="fas fa-times"
text="@L["LeaveOrganization"].Value" text="@L["LeaveOrganization"].Value"
data-url="@Url.Action("Leave","OrganizationMembership", new { organizationId = Model.OrganizationId })" /> data-url="@Url.Action("Leave","OrganizationMembership", new { organizationId = Model.OrganizationId })" />
} }
else else
{ {
<abp-button id="OrganizationJoinButton" <abp-button id="OrganizationJoinButton"
button-type="Primary" button-type="Primary"
size="Block" icon="fas fa-plus"
icon="fas fa-plus" text="@L["JoinOrganization"].Value"
text="@L["JoinOrganization"].Value" data-url="@Url.Action("Join","OrganizationMembership", new { organizationId = Model.OrganizationId })"/>
data-url="@Url.Action("Join","OrganizationMembership", new { organizationId = Model.OrganizationId })"/> }
} </div>
} }
else else
{ {

2
src/EventHub.Web/Pages/Organizations/Components/MembersArea/_memberListSection.cshtml

@ -5,7 +5,7 @@
<div> <div>
<div> <div>
<a href="/users/@member.UserName"> <a href="/users/@member.UserName">
<img gravatar-email="@member.Email" default-image="Wavatar" gravatar-size="40" class="org-avatar avatar rounded-circle" data-toggle="tooltip" title="@member.UserName"/> <img gravatar-email="@member.Email" default-image="Wavatar" gravatar-size="40" class="org-avatar avatar rounded-circle" data-bs-toggle="tooltip" title="@member.UserName"/>
</a> </a>
<span class="member-name" style="display: none"> <span class="member-name" style="display: none">
@if (!string.IsNullOrWhiteSpace(member.Name) && !string.IsNullOrWhiteSpace(member.Surname)) @if (!string.IsNullOrWhiteSpace(member.Name) && !string.IsNullOrWhiteSpace(member.Surname))

2
src/EventHub.Web/Pages/Organizations/Edit.cshtml

@ -102,7 +102,7 @@
<span asp-validation-for="Organization.MediumUsername" class="text-danger"></span> <span asp-validation-for="Organization.MediumUsername" class="text-danger"></span>
</div> </div>
</div> </div>
<div class="col-md-12 text-right"> <div class="col-md-12 text-end">
<button type="submit" class="btn btn-primary btn-lg"> <button type="submit" class="btn btn-primary btn-lg">
@L["Submit"] @L["Submit"]
</button> </button>

2
src/EventHub.Web/Pages/Organizations/New.cshtml

@ -103,7 +103,7 @@
<span asp-validation-for="Organization.MediumUsername" class="text-danger"></span> <span asp-validation-for="Organization.MediumUsername" class="text-danger"></span>
</div> </div>
</div> </div>
<div class="col-md-12 text-right"> <div class="col-md-12 text-end">
<button type="submit" class="btn btn-primary btn-lg"> <button type="submit" class="btn btn-primary btn-lg">
Create Organization Create Organization
</button> </button>

28
src/EventHub.Web/Pages/Organizations/Profile.cshtml

@ -31,13 +31,13 @@
<div class="col-12 mt-4"> <div class="col-12 mt-4">
<ul class="nav nav-tabs profile-nav" id="myTab"> <ul class="nav nav-tabs profile-nav" id="myTab">
<li class="nav-item"> <li class="nav-item">
<a href="#about-organization-section" class="nav-link active" data-toggle="tab">About the Organization</a> <a href="#about-organization-section" class="nav-link active" data-bs-toggle="tab">About the Organization</a>
</li> </li>
<li class="nav-item"> <li class="nav-item">
<a href="#events-section" class="nav-link" data-toggle="tab">Events</a> <a href="#events-section" class="nav-link" data-bs-toggle="tab">Events</a>
</li> </li>
<li class="nav-item"> <li class="nav-item">
<a href="#members-section" class="nav-link" data-toggle="tab">Members</a> <a href="#members-section" class="nav-link" data-bs-toggle="tab">Members</a>
</li> </li>
</ul> </ul>
@ -60,7 +60,7 @@
<h5 class="detail-head mt-3 font-weight-bold">Owners</h5> <h5 class="detail-head mt-3 font-weight-bold">Owners</h5>
<div> <div>
<a href="/users/@Model.Organization.OwnerUserName"> <a href="/users/@Model.Organization.OwnerUserName">
<img gravatar-email="@Model.Organization.OwnerEmail" default-image="Wavatar" gravatar-size="40" class="org-avatar avatar rounded-circle" data-toggle="tooltip" title="@Model.Organization.OwnerUserName"/> <img gravatar-email="@Model.Organization.OwnerEmail" default-image="Wavatar" gravatar-size="40" class="org-avatar avatar rounded-circle" data-bs-toggle="tooltip" title="@Model.Organization.OwnerUserName"/>
</a> </a>
</div> </div>
@ -79,16 +79,20 @@
<span>Premium end date: @Model.Organization.PremiumEndDate!.Value.ToShortDateString()</span> <span>Premium end date: @Model.Organization.PremiumEndDate!.Value.ToShortDateString()</span>
@if (PremiumPlanInfoOptionsSnapshot.Value.IsExtendable && Model.Organization.PremiumEndDate!.Value.IsBetween(DateTime.Now, DateTime.Now.AddMonths(PremiumPlanInfoOptionsSnapshot.Value.OnePremiumPeriodAsMonth - PremiumPlanInfoOptionsSnapshot.Value.CanBeExtendedAfterHowManyMonths))) @if (PremiumPlanInfoOptionsSnapshot.Value.IsExtendable && Model.Organization.PremiumEndDate!.Value.IsBetween(DateTime.Now, DateTime.Now.AddMonths(PremiumPlanInfoOptionsSnapshot.Value.OnePremiumPeriodAsMonth - PremiumPlanInfoOptionsSnapshot.Value.CanBeExtendedAfterHowManyMonths)))
{ {
<a href="@Url.Page("/Pricing", new { organizationName = Model.Organization.Name })" class="btn btn-primary btn-block mt-3"> <div class="d-grid gap-2">
<i class="fas fa-handshake"></i> @L["ExtendNow"].Value <a href="@Url.Page("/Pricing", new { organizationName = Model.Organization.Name })" class="btn btn-primary mt-3">
</a> <i class="fas fa-handshake"></i> @L["ExtendNow"].Value
</a>
</div>
} }
} }
else else
{ {
<a href="@Url.Page("/Pricing", new { organizationName = Model.Organization.Name })" class="btn btn-primary btn-block"> <div class="d-grid gap-2">
<i class="fas fa-handshake"></i> @L["UpgradeToPremium"] <a href="@Url.Page("/Pricing", new { organizationName = Model.Organization.Name })" class="btn btn-primary">
</a> <i class="fas fa-handshake"></i> @L["UpgradeToPremium"]
</a>
</div>
} }
</abp-card-body> </abp-card-body>
</abp-card> </abp-card>
@ -167,10 +171,10 @@
<div class="list-style"> <div class="list-style">
<ul class="nav nav-pills events" role="tablist"> <ul class="nav nav-pills events" role="tablist">
<li class="nav-item"> <li class="nav-item">
<a href="#PastEvent" class="selected" data-toggle="tab"><img src="/assets/past.svg"> Past</a> <a href="#PastEvent" class="selected" data-bs-toggle="tab"><img src="/assets/past.svg"> Past</a>
</li> </li>
<li class="nav-item"> <li class="nav-item">
<a href="#UpcomingEvent" data-toggle="tab"><img src="/assets/now.svg"> Upcoming</a> <a href="#UpcomingEvent" data-bs-toggle="tab"><img src="/assets/now.svg"> Upcoming</a>
</li> </li>
</ul> </ul>
</div> </div>

14
src/EventHub.Web/Pages/Payment/PreCheckout.cshtml

@ -56,7 +56,7 @@
@if (!organizationPaymentRequestExtraParameterConfiguration.IsExtend) @if (!organizationPaymentRequestExtraParameterConfiguration.IsExtend)
{ {
<span class="text-muted">Target Plan: @OrganizationPlanType.Premium</span> <span class="text-muted">Target Plan: @OrganizationPlanType.Premium</span>
<span class="text-muted ml-1">End date: @DateTime.Now.AddMonths(planInfo.OnePremiumPeriodAsMonth).ToShortDateString()</span> <span class="text-muted ms-1">End date: @DateTime.Now.AddMonths(planInfo.OnePremiumPeriodAsMonth).ToShortDateString()</span>
} }
else else
{ {
@ -75,9 +75,9 @@
<div class="d-flex flex-wrap justify-content-between align-items-center pb-4"> <div class="d-flex flex-wrap justify-content-between align-items-center pb-4">
<abp-container> <abp-container>
<abp-row class="float-right"> <abp-row class="float-end">
<abp-column> <abp-column>
<div class="text-right mt-4"> <div class="text-end mt-4">
<label class="text-muted font-weight-normal m-0">Total price</label> <label class="text-muted font-weight-normal m-0">Total price</label>
<div class="text-large"><strong>@Model.PaymentRequest.Price @Model.PaymentRequest.Currency</strong></div> <div class="text-large"><strong>@Model.PaymentRequest.Price @Model.PaymentRequest.Currency</strong></div>
</div> </div>
@ -86,9 +86,9 @@
</abp-container> </abp-container>
</div> </div>
<abp-container class="float-right"> <abp-container class="float-end">
<abp-row> <abp-row>
<abp-column class="float-right"> <abp-column class="float-end">
<form method="post"> <form method="post">
@if (Model.PaymentRequest.State != PaymentRequestState.Waiting) @if (Model.PaymentRequest.State != PaymentRequestState.Waiting)
{ {
@ -97,8 +97,8 @@
} }
else else
{ {
<abp-button class="mt-2 float-right" offset="_10" size="Large" type="submit" button-type="Primary">@L["Checkout"]</abp-button> <abp-button class="mt-2 float-end" offset="_10" size="Large" type="submit" button-type="Primary">@L["Checkout"]</abp-button>
<a href="@Url.Page("/Pricing", new { organizationName = organizationName })" class="btn btn-lg btn-default md-btn-flat mt-2 mr-3 float-right">Back to pricing</a> <a href="@Url.Page("/Pricing", new { organizationName = organizationName })" class="btn btn-lg btn-default md-btn-flat mt-2 me-3 float-end">Back to pricing</a>
} }
</form> </form>
</abp-column> </abp-column>

23
src/EventHub.Web/Pages/Pricing.cshtml

@ -15,23 +15,22 @@
Pricing plans Pricing plans
</h1> </h1>
<div class="text-center text-muted text-large font-weight-light"> <div class="text-center text-muted text-large font-weight-light">
Choose the best plan that fits your needs Choose the plan best for your organization.
</div> </div>
<div class="row no-gutters row-bordered ui-bordered text-center mt-3"> <div class="row no-gutters row-bordered ui-bordered text-center mt-3">
<div class="d-flex col-md flex-column py-4"> <div class="d-flex col-md flex-column py-4">
<div class="display-1 text-primary my-4"><i class="lnr lnr-briefcase text-big"></i></div> <div class="display-1 text-primary my-4"><i class="lnr lnr-briefcase text-big"></i></div>
<h5 class="m-0 ml-2">Normal</h5> <h5 class="m-0 ms-2">Free account</h5>
<div class="flex-grow-1"> <div class="flex-grow-1">
<div class="py-4 my-2"> <div class="py-4 my-2">
<span class="d-inline-block text-muted text-big align-middle mr-2">$</span> <span class="d-inline-block text-muted text-big align-middle me-2">$</span>
<span class="display-3 d-inline-block font-weight-bold align-middle">0</span> <span class="display-3 d-inline-block font-weight-bold align-middle">0</span>
</div> </div>
<div class="pb-5"> <div class="pb-5">
<p class="ui-company-text mb-2">1 Organization</p> <p class="ui-company-text mb-2">1 event per month</p>
<p class="ui-company-text mb-2">2 Events</p> <p class="ui-company-text mb-2">300 attendees per event</p>
<p class="ui-company-text mb-0">No ads</p>
</div> </div>
</div> </div>
<div class="px-md-3 px-lg-5"> <div class="px-md-3 px-lg-5">
@ -43,7 +42,7 @@
<div class="d-flex col-md flex-column py-4"> <div class="d-flex col-md flex-column py-4">
<div class="display-1 text-primary my-4"><i class="lnr lnr-store text-big"></i></div> <div class="display-1 text-primary my-4"><i class="lnr lnr-store text-big"></i></div>
<h5 class="m-0"> <h5 class="m-0">
@Model.PremiumPlanInfo.PlanType @Model.PremiumPlanInfo.PlanType account
@if (Model.Organization.IsPremium) @if (Model.Organization.IsPremium)
{ {
<span class="align-top text-dark font-weight-bold" style="font-size: x-small" abp-badge-pill="Info"> Current Plan </span> <span class="align-top text-dark font-weight-bold" style="font-size: x-small" abp-badge-pill="Info"> Current Plan </span>
@ -51,13 +50,12 @@
</h5> </h5>
<div class="flex-grow-1"> <div class="flex-grow-1">
<div class="py-4 my-2"> <div class="py-4 my-2">
<span class="d-inline-block text-muted text-big align-middle mr-2">$</span> <span class="d-inline-block text-muted text-big align-middle me-2">$</span>
<span class="display-3 d-inline-block font-weight-bold align-middle">@Model.PremiumPlanInfo.Price</span> <span class="display-3 d-inline-block font-weight-bold align-middle">@Model.PremiumPlanInfo.Price</span>
</div> </div>
<div class="pb-5"> <div class="pb-5">
<p class="ui-company-text mb-2">1 Organization</p> <p class="ui-company-text mb-2">unlimited events</p>
<p class="ui-company-text mb-2">2 Events</p> <p class="ui-company-text mb-2">unlimited attendees</p>
<p class="ui-company-text mb-0">No ads</p>
</div> </div>
</div> </div>
<div class="px-md-3 px-lg-5"> <div class="px-md-3 px-lg-5">
@ -82,7 +80,7 @@
</div> </div>
} }
</div> </div>
@*
<h3 class="text-center font-weight-light my-5">Frequently Asked Questions</h3> <h3 class="text-center font-weight-light my-5">Frequently Asked Questions</h3>
<div class="row"> <div class="row">
@ -133,5 +131,6 @@
</div> </div>
</div> </div>
*@
</div> </div>
</div> </div>

4
src/EventHub.Web/Pages/PrivacyPolicy.cshtml

@ -6,7 +6,7 @@
<div class="d-print-none"> <div class="d-print-none">
<div class="container"> <div class="container">
<div class="row"> <div class="row">
<div class="col-auto mr-auto"></div> <div class="col-auto me-auto"></div>
<div class="col-auto"> <div class="col-auto">
<abp-button icon="print" text="Print" onclick="javascript:window.print();"></abp-button> <abp-button icon="print" text="Print" onclick="javascript:window.print();"></abp-button>
</div> </div>
@ -548,7 +548,7 @@
<div class="d-print-none"> <div class="d-print-none">
<div class="container"> <div class="container">
<div class="row"> <div class="row">
<div class="col-auto mr-auto"></div> <div class="col-auto me-auto"></div>
<div class="col-auto"> <div class="col-auto">
<abp-button icon="print" text="Print" onclick="javascript:window.print();"></abp-button> <abp-button icon="print" text="Print" onclick="javascript:window.print();"></abp-button>
</div> </div>

4
src/EventHub.Web/Pages/TermsService.cshtml

@ -5,7 +5,7 @@
<div class="d-print-none"> <div class="d-print-none">
<div class="container"> <div class="container">
<div class="row"> <div class="row">
<div class="col-auto mr-auto"></div> <div class="col-auto me-auto"></div>
<div class="col-auto"> <div class="col-auto">
<abp-button icon="print" text="Print" onclick="javascript:window.print();"></abp-button> <abp-button icon="print" text="Print" onclick="javascript:window.print();"></abp-button>
</div> </div>
@ -578,7 +578,7 @@
<div class="d-print-none"> <div class="d-print-none">
<div class="container"> <div class="container">
<div class="row"> <div class="row">
<div class="col-auto mr-auto"></div> <div class="col-auto me-auto"></div>
<div class="col-auto"> <div class="col-auto">
<abp-button icon="print" text="Print" onclick="javascript:window.print();"></abp-button> <abp-button icon="print" text="Print" onclick="javascript:window.print();"></abp-button>
</div> </div>

6
src/EventHub.Web/Pages/User.cshtml

@ -52,13 +52,13 @@
<abp-column size="_8"> <abp-column size="_8">
<ul class="nav nav-tabs profile-nav" id="profileTab"> <ul class="nav nav-tabs profile-nav" id="profileTab">
<li class="nav-item"> <li class="nav-item">
<a href="#UpcomingEvents" class="nav-link active" data-toggle="tab">Upcoming Events</a> <a href="#UpcomingEvents" class="nav-link active" data-bs-toggle="tab">Upcoming Events</a>
</li> </li>
<li class="nav-item"> <li class="nav-item">
<a href="#AttendedEvents" class="nav-link" data-toggle="tab">Attended Events</a> <a href="#AttendedEvents" class="nav-link" data-bs-toggle="tab">Attended Events</a>
</li> </li>
<li class="nav-item"> <li class="nav-item">
<a href="#Organizations" class="nav-link" data-toggle="tab">Organizations</a> <a href="#Organizations" class="nav-link" data-bs-toggle="tab">Organizations</a>
</li> </li>
</ul> </ul>
</abp-column> </abp-column>

2
src/EventHub.Web/Pages/User.cshtml.cs

@ -24,7 +24,7 @@ namespace EventHub.Web.Pages
_organizationAppService = organizationAppService; _organizationAppService = organizationAppService;
} }
public UserDto User { get; set; } public new UserDto User { get; set; }
public async Task<IActionResult> OnGetAsync(string userName) public async Task<IActionResult> OnGetAsync(string userName)
{ {

2
src/EventHub.Web/package.json

@ -3,7 +3,7 @@
"name": "my-app", "name": "my-app",
"private": true, "private": true,
"dependencies": { "dependencies": {
"@abp/aspnetcore.mvc.ui.theme.basic": "~5.0.0-beta.1", "@abp/aspnetcore.mvc.ui.theme.basic": "~5.0.0-rc.1",
"daterangepicker": "^3.1.0", "daterangepicker": "^3.1.0",
"owl.carousel": "^2.3.4" "owl.carousel": "^2.3.4"
} }

11453
src/EventHub.Web/wwwroot/libs/bootstrap/css/bootstrap-rtl.css

File diff suppressed because it is too large

1
src/EventHub.Web/wwwroot/libs/bootstrap/css/bootstrap-rtl.css.map

File diff suppressed because one or more lines are too long

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save