private void initManagers(Company company, CompanyRights currentEntityRights) { Managers.AddRange( company.CompanyManagers.ToList().Select(manager => new ManagerViewModel(manager)) ); Managers.Add(new ManagerViewModel(company.Owner)); Managers = Managers.OrderByDescending(m => m.Rights.Priority).ToList(); if (currentEntityRights.CanManageManagers) { Managers.Where(m => m.Rights.Priority < currentEntityRights.Priority) .ForEach(m => m.ReadOnly = false); } }
public HotelManagersViewModel(HotelInfo info, IEnumerable <HotelManagerModel> managers) { Info = new HotelInfoViewModel(info); Managers.Add(new HotelManagerViewModel() { Avatar = new SmallEntityAvatarViewModel(info.OwnerID, info.OwnerName, info.OwnerImgUrl), CitizenID = info.OwnerID, ReadOnly = true, Rights = HotelRights.FullRights, Title = "Owner", HotelID = info.HotelID }); Managers.AddRange(managers.Select(m => new HotelManagerViewModel(info.HotelID, m, Rights)).OrderByDescending(m => m.Rights.Priority).ToList()); ManagerSelector = Select2AjaxViewModel.Create <CitizenController>(x => x.GetCitizens(null), "citizenID", null, ""); }