public dtoNodeDetails(liteCommunityInfo community, Int32 idCommunity, Dictionary <Int32, long> enrolledUsers = null, List <liteCommunityConstraint> constraints = null, liteSubscriptionInfo enrollment = null) { Permissions = new dtoCommunityNodeItemPermission(); NotAvailableFor = new List <EnrollingStatus>(); Constraints = new List <dtoCommunityConstraint>(); Community = new lm.Comol.Core.Dashboard.Domain.dtoCommunityItem(community, idCommunity); if (enrollment != null) { LastAccessOn = enrollment.LastAccessOn; EnrolledOn = enrollment.SubscribedOn; } if (AvailableSeats <= 0) { NotAvailableFor.Add(EnrollingStatus.Seats); } if (!Community.AllowSubscription) { NotAvailableFor.Add(EnrollingStatus.Unavailable); } else { if (!Community.IsAvailableForSubscriptionStartOn(DateTime.Now)) { NotAvailableFor.Add(EnrollingStatus.StartDate); } else if (!Community.IsAvailableForSubscriptionEndOn(DateTime.Now)) { NotAvailableFor.Add(EnrollingStatus.EndDate); } } if (enrolledUsers != null && enrolledUsers.ContainsKey(idCommunity)) { EnrolledUsers = enrolledUsers[idCommunity]; if (AvailableSeats <= 0) { NotAvailableFor.Add(EnrollingStatus.Seats); } } }
public dtoNodeDetails() { Permissions = new dtoCommunityNodeItemPermission(); NotAvailableFor = new List <EnrollingStatus>(); Constraints = new List <dtoCommunityConstraint>(); }