From c6fc137ef9e53cdaed6d3955ab2f4fd8727992e3 Mon Sep 17 00:00:00 2001 From: Berkan Sasmaz Date: Fri, 30 Apr 2021 01:48:11 +0300 Subject: [PATCH] Edit Organization and New Organization creation pages --- .../Organizations/CreateOrganizationDto.cs | 22 ++++ .../Organizations/OrganizationAppService.cs | 14 ++- .../Organizations/OrganizationContst.cs | 13 +++ .../EventHub/Components/Footer/Default.cshtml | 14 +-- .../Components/MainNavbar/Default.cshtml | 4 +- .../Pages/Organizations/Index.cshtml | 83 ++++++++++---- .../Pages/Organizations/New.cshtml | 107 +++++++++++++++++- .../Pages/Organizations/New.cshtml.cs | 43 ++++++- src/EventHub.Web/Pages/Organizations/New.js | 56 +++++++++ 9 files changed, 317 insertions(+), 39 deletions(-) create mode 100644 src/EventHub.Web/Pages/Organizations/New.js diff --git a/src/EventHub.Application.Contracts/Organizations/CreateOrganizationDto.cs b/src/EventHub.Application.Contracts/Organizations/CreateOrganizationDto.cs index be5403e..08cb45a 100644 --- a/src/EventHub.Application.Contracts/Organizations/CreateOrganizationDto.cs +++ b/src/EventHub.Application.Contracts/Organizations/CreateOrganizationDto.cs @@ -1,4 +1,5 @@ using System.ComponentModel.DataAnnotations; +using JetBrains.Annotations; namespace EventHub.Organizations { @@ -15,5 +16,26 @@ namespace EventHub.Organizations [Required] [StringLength(OrganizationConsts.MaxDescriptionNameLength, MinimumLength = OrganizationConsts.MinDescriptionNameLength)] public string Description { get; set; } + + [CanBeNull] + public byte[] ProfilePictureContent { get; set; } + + [StringLength(OrganizationConsts.MaxWebsiteLength)] + public string Website { get; set; } + + [StringLength(OrganizationConsts.MaxTwitterUsernameLength)] + public string TwitterUsername { get; set; } + + [StringLength(OrganizationConsts.MaxGitHubUsernameLength)] + public string GitHubUsername { get; set; } + + [StringLength(OrganizationConsts.MaxFacebookUsernameLength)] + public string FacebookUsername { get; set; } + + [StringLength(OrganizationConsts.MaxInstagramUsernameLength)] + public string InstagramUsername { get; set; } + + [StringLength(OrganizationConsts.MaxMediumUsernameLength)] + public string MediumUsername { get; set; } } } diff --git a/src/EventHub.Application/Organizations/OrganizationAppService.cs b/src/EventHub.Application/Organizations/OrganizationAppService.cs index 6ce835c..597ba58 100644 --- a/src/EventHub.Application/Organizations/OrganizationAppService.cs +++ b/src/EventHub.Application/Organizations/OrganizationAppService.cs @@ -37,7 +37,19 @@ namespace EventHub.Organizations input.Description ); - await _organizationRepository.InsertAsync(organization); + organization.Website = input.Website; + organization.TwitterUsername = input.TwitterUsername; + organization.GitHubUsername = input.GitHubUsername; + organization.FacebookUsername = input.FacebookUsername; + organization.InstagramUsername = input.InstagramUsername; + organization.MediumUsername = input.MediumUsername; + + await _organizationRepository.InsertAsync(organization, true); + + if (input.ProfilePictureContent != null && input.ProfilePictureContent.Length > 0) + { + await SaveProfilePictureAsync(organization.Id, input.ProfilePictureContent); + } } public async Task> GetListAsync(PagedResultRequestDto input) diff --git a/src/EventHub.Domain.Shared/Organizations/OrganizationContst.cs b/src/EventHub.Domain.Shared/Organizations/OrganizationContst.cs index 08f711d..67dc08d 100644 --- a/src/EventHub.Domain.Shared/Organizations/OrganizationContst.cs +++ b/src/EventHub.Domain.Shared/Organizations/OrganizationContst.cs @@ -12,5 +12,18 @@ public const int MaxDescriptionNameLength = 1000; public const int MaxProfilePictureFileSize = 1024 * 1024; //1MB + + public const int MaxWebsiteLength = 512; + + public const int MaxTwitterUsernameLength = 24; + + public const int MaxGitHubUsernameLength = 24; + + public const int MaxFacebookUsernameLength = 24; + + public const int MaxInstagramUsernameLength = 24; + + public const int MaxMediumUsernameLength = 24; + } } diff --git a/src/EventHub.Web.Theme/Themes/EventHub/Components/Footer/Default.cshtml b/src/EventHub.Web.Theme/Themes/EventHub/Components/Footer/Default.cshtml index b3f1fa5..f6944a8 100644 --- a/src/EventHub.Web.Theme/Themes/EventHub/Components/Footer/Default.cshtml +++ b/src/EventHub.Web.Theme/Themes/EventHub/Components/Footer/Default.cshtml @@ -3,7 +3,7 @@ @using Volo.Abp.Users @inject ICurrentUser CurrentUser -