Browse Source

Improve Organization members view component

pull/41/head
Berkan Sasmaz 5 years ago
parent
commit
8014e69b11
  1. 16
      src/EventHub.Web/Controllers/WidgetsController.cs
  2. 23
      src/EventHub.Web/Pages/Organizations/Components/MembersArea/MembersAreaViewComponent.cs
  3. 45
      src/EventHub.Web/Pages/Organizations/Components/MembersArea/members-area.js

16
src/EventHub.Web/Controllers/WidgetsController.cs

@ -19,11 +19,23 @@ namespace EventHub.Web.Controllers
}
[HttpGet]
public IActionResult OrganizationMembersArea(Guid organizationId)
public IActionResult OrganizationMembersArea(
Guid organizationId,
int? skipCount,
int maxResultCount,
bool isPagination,
bool isMoreDetail)
{
return ViewComponent(
typeof(MembersAreaViewComponent),
new {organizationId}
new
{
organizationId,
skipCount,
maxResultCount,
isPagination,
isMoreDetail
}
);
}

23
src/EventHub.Web/Pages/Organizations/Components/MembersArea/MembersAreaViewComponent.cs

@ -1,6 +1,5 @@
using System;
using System.Collections.Generic;
using System.Text;
using System.Threading.Tasks;
using EventHub.Organizations.Memberships;
using Microsoft.AspNetCore.Mvc;
@ -68,28 +67,6 @@ namespace EventHub.Web.Pages.Organizations.Components.MembersArea
public bool IsPagination { get; set; }
public bool IsMoreDetail { get; set; }
public string GetMemberName(OrganizationMemberDto member)
{
var nameBuilder = new StringBuilder();
if (!member.Name.IsNullOrEmpty())
{
nameBuilder.Append(member.Name);
}
if (!member.Surname.IsNullOrEmpty())
{
nameBuilder.Append(member.Surname);
}
if (nameBuilder.Length == 0)
{
nameBuilder.Append(member.UserName);
}
return nameBuilder.ToString();
}
}
}
}

45
src/EventHub.Web/Pages/Organizations/Components/MembersArea/members-area.js

@ -1,5 +1,7 @@
(function () {
abp.widgets.MembersArea = function ($wrapper) {
var widgetManager = $wrapper.data('abp-widget-manager');
var organizationId = $wrapper.find('[data-organization-id]').attr('data-organization-id');
var totalCount = Number($wrapper.find('[data-total-count]').attr('data-total-count'))
var skipCount = Number($wrapper.find('[data-skip-count]').attr('data-skip-count'))
@ -9,7 +11,16 @@
var hashCode = Number($wrapper.find('[data-hash-code]').attr('data-hash-code'))
skipCount += maxResultCount;
function moreDetailFilter() {
function getFilters() {
return {
organizationId: organizationId,
maxResultCount: maxResultCount,
isPagination: isPagination,
isMoreDetail: isMoreDetail
};
}
function manipulateDOMForMoreDetail() {
var hashCode = Number($wrapper.find('[data-hash-code]').attr('data-hash-code'))
$('#MemberList-' + hashCode + '> div').addClass('col-6 col-md-4 col-lg-2');
$('#MemberList-' + hashCode + '> * > div > .member-name').removeAttr('style');
@ -17,8 +28,8 @@
$('#load-more-section-' + hashCode).addClass('text-center mt-3');
}
if (isMoreDetail === 'True'){
moreDetailFilter()
if (isMoreDetail === 'True') {
manipulateDOMForMoreDetail()
}
function init() {
@ -36,8 +47,8 @@
memberList.append(response);
skipCount += maxResultCount;
}).always(function () {
if (isMoreDetail === 'True'){
moreDetailFilter()
if (isMoreDetail === 'True') {
manipulateDOMForMoreDetail()
}
if (skipCount >= totalCount) {
loadMoreButton.hide();
@ -46,24 +57,18 @@
});
});
}
abp.event.on("EventHub.Organization.JoinStatusChanged", function () {
var memberAreaWidgets = document.querySelectorAll('[data-widget-name="MembersArea"]')
memberAreaWidgets.forEach(function(entry) {
$(entry).data('abp-widget-manager')
.refresh();
});
});
return {
getFilters: function () {
return {
organizationId: organizationId,
skipCount: skipCount,
maxResultCount: maxResultCount,
isPagination: isPagination,
isMoreDetail: isMoreDetail
};
},
getFilters: getFilters,
init: init
};
};
abp.event.on("EventHub.Organization.JoinStatusChanged", function () {
$('[data-widget-name="MembersArea"]')
.data('abp-widget-manager')
.refresh();
});
})();

Loading…
Cancel
Save