示例#1
0
        public async Task <IActionResult> Index([FromQuery] int?sectorId)
        {
            if (!_securityService.CurrrentUserHasAccessToOrganization(CurrentOrganizationId(), AccessLevel.Read))
            {
                return(Forbid());
            }

            SimpleOrganization currentOrganization = CurrentOrganization();

            IEnumerable <Application> applications = new List <Application>();

            var model = new ApplicationListViewModel();

            if (sectorId.HasValue)
            {
                applications = await _applicationService.GetApplicationsWithFilter(currentOrganization.Id, sectorId.Value, 0, null);
            }
            else
            {
                applications = await _applicationService.GetAllApplicationsForOrganization(currentOrganization.Id);
            }

            model.Applications = new ApplicationListDetailViewModel().MapToEnumerable(applications);
            model.Sectors      = await GetSectorViewModel(sectorId);

            return(View(model));
        }
示例#2
0
        public SecurityServiceMock ReturnCurrentOrganizationWithId(int id)
        {
            var currentOrganization = new SimpleOrganization()
            {
                Id = id
            };

            _mock.Setup(m => m.GetCurrentOrganization(It.IsAny <HttpContext>())).Returns(currentOrganization);
            return(this);
        }
示例#3
0
        public bool IsOrganizationAdminForOrganization(SimpleOrganization organization)
        {
            if (_applicationUser.HasAccessToOrganization(organization.Id) &&
                _applicationUser.HasRoleInOrganization(organization.Id, Roles.OrganizationAdmin))
            {
                return(true);
            }

            return(false);
        }
        public async Task <IActionResult> Index()
        {
            if (!_securityService.CurrrentUserHasAccessToOrganization(CurrentOrganizationId(), AccessLevel.Read))
            {
                return(Forbid());
            }

            SimpleOrganization currentOrganization = CurrentOrganization();
            var datasets = await _datasetService.GetAllDatasetsForOrganization(currentOrganization.Id);

            return(View(new DatasetViewModel().MapToEnumerable(datasets)));
        }
        public IActionResult Create()
        {
            if (!_securityService.CurrrentUserHasAccessToOrganization(CurrentOrganizationId(), AccessLevel.Write))
            {
                return(Forbid());
            }

            SimpleOrganization currentOrganization = CurrentOrganization();

            var model = new DatasetViewModel();

            model.OrganizationId = currentOrganization.Id;

            return(View(model));
        }
        public async Task <IActionResult> Edit(int?id)
        {
            if (!_securityService.CurrrentUserHasAccessToOrganization(CurrentOrganizationId(), AccessLevel.Write))
            {
                return(Forbid());
            }

            if (id == null)
            {
                return(NotFound());
            }

            var datasets = await _datasetService.GetAsync(id.Value);

            SimpleOrganization currentOrganization = CurrentOrganization();

            if (datasets == null)
            {
                return(NotFound());
            }
            return(View(new DatasetViewModel().Map(datasets)));
        }
示例#7
0
        private async Task <IEnumerable <ApplicationListDetailViewModel> > GetApplicationListViewModel(SimpleOrganization currentOrganization)
        {
            var applications = await _applicationService.GetAllApplicationsForOrganization(currentOrganization.Id);

            return(new ApplicationListDetailViewModel().MapToEnumerable(applications));
        }
示例#8
0
 public void SetCurrentOrganization(ISession session, SimpleOrganization organization)
 {
     Log.Debug("Setting current organization in session: {organizationName}", organization.Name);
     session.Set(CurrentOrganizationKey, organization);
 }