public SiteGroupDetailsViewModel GetViewModel()
        {

            var siteGroupDto = new SiteGroupDto { ClientId = _clientId, Id = 0 };


            if (_siteGroupId != 0)
            {
                siteGroupDto = _siteGroupService.GetSiteGroup(_siteGroupId, _clientId);
            }

            var linkToGroupId = siteGroupDto.Parent != null && (siteGroupDto.Parent as SiteGroupDto != null)
                                    ? siteGroupDto.Parent.Id
                                    : 0;

            var linkToSiteId = siteGroupDto.Parent != null && (siteGroupDto.Parent as SiteDto != null)
                                   ? siteGroupDto.Parent.Id
                                   : 0;

            var siteDetailsViewModel = new SiteGroupDetailsViewModel
                                           {
                                               Name = siteGroupDto.Name,
                                               GroupId = siteGroupDto.Id,
                                               ClientId = _clientId,
                                               HasChildren = siteGroupDto.HasChildren,
                                               GroupLinkToGroupId = linkToGroupId,
                                               GroupLinkToSiteId = linkToSiteId,
                                               ExistingSites = GetExistingSites(siteGroupDto),
                                               ExistingGroups = GetExistingSiteGroups(siteGroupDto)
                                           };


            return siteDetailsViewModel;
        }
Exemplo n.º 2
0
        public void Given_that_group_id_is_greater_than_zero_Then_Form_is_enabled()
        {
            //Given
            var target = new SiteGroupDetailsViewModel { GroupId = 10 };

            //When
            var result = target.FormEnabled;

            //Then
            Assert.That(result, Is.True);
        }
        public void Given_in_adding_new_group_state_Than_delete_should_not_be_enabled()
        {
            //Given
            var target = new SiteGroupDetailsViewModel { GroupId = 0 };

            //When
            var result = target.IsDeleteButtonEnabled(_user);

            //Then
            Assert.That(result, Is.False);
        }
        public void Given_in_adding_editing_group_which_have_children_sites_or_groups_Than_delete_should_be_enabled()
        {
            //Given
            var target = new SiteGroupDetailsViewModel { HasChildren = true , GroupId = 1};

            //When
            var result = target.IsDeleteButtonEnabled(_user);

            //Then
            Assert.That(result, Is.False);
        }
        public void Given_in_adding_editing_group_that_have_no_children_and_is_saved_site_Then_delete_enabled_should_be_true()
        {
            //Given
            var target = new SiteGroupDetailsViewModel {HasChildren  = false, GroupId = 1};
            
            //When
            var result = target.IsDeleteButtonEnabled(_user);

            //Then
            Assert.That(result, Is.True);
        }
Exemplo n.º 6
0
        public void Given_that_group_id_is_zero_Then_correct_text_for_edit_is_used()
        {
            //Given
            var target = new SiteGroupDetailsViewModel { GroupId = 0 };

            //When
            var result = target.SectionTitle;

            //Then
            Assert.That(result, Is.EqualTo("Add Site Group"));
        }
 public SiteStructureViewModel(long clientId, MvcHtmlString siteChartsHtml, MvcHtmlString unlinkedSitesHtml, SiteDetailsViewModel siteDetailsViewModel, SiteGroupDetailsViewModel siteSiteGroupViewModel, bool showSiteDetailsSection, bool showGroupDetailsSection, bool validationError, bool showClosedSites)
 {
     ValidationError = validationError;
     SiteChartsHtml = siteChartsHtml;
     UnlinkedSitesHtml = unlinkedSitesHtml;
     SiteDetailsViewModel = siteDetailsViewModel;
     ClientId = clientId;
     SiteSiteGroupsViewModel = siteSiteGroupViewModel;
     DisplaySiteDetails = showSiteDetailsSection;
     DisplaySiteGroups = showGroupDetailsSection;
     ShowClosedSites = showClosedSites;
 }
        public ISiteStructureViewModelFactory WithGroupDetailsViewModel(SiteGroupDetailsViewModel siteGroupDetailsViewModel)
        {
            _siteSiteGroupViewModel = siteGroupDetailsViewModel;


            _siteSiteGroupViewModel.ExistingGroups = GetExistingSiteGroups();
            var linkToSiteGroupId = siteGroupDetailsViewModel.GroupLinkToGroupId == siteGroupDetailsViewModel.OriginalLinkId ? siteGroupDetailsViewModel.GroupLinkToGroupId : 0;
            _siteSiteGroupViewModel.GroupLinkToGroupId = linkToSiteGroupId;

            _siteSiteGroupViewModel.ExistingSites = GetExistingSites();
            var linkToSiteId = siteGroupDetailsViewModel.GroupLinkToSiteId == siteGroupDetailsViewModel.OriginalLinkId ? siteGroupDetailsViewModel.GroupLinkToSiteId : 0;
            _siteSiteGroupViewModel.GroupLinkToSiteId = linkToSiteId;
            return this;
        }
        public void Given_editing_new_group_state_but_without_correct_permisions_Than_delete_should_not_be_enabled()
        {
            //Given
            var target = new SiteGroupDetailsViewModel { GroupId = 1 };
            var userDto = new UserDto()
            {
                CompanyId = 0,
                Permissions = new List<string>()
            };

            //When
            _user = new CustomPrincipal(userDto, new CompanyDto());
            var result = target.IsDeleteButtonEnabled(_user);

            //Then
            Assert.That(result, Is.False);
        }    
Exemplo n.º 10
0
        public void Given_a_supplied_site_group_id_When_get_Then_should_return_correct_view_model()
        {
            //Given            
            var target = CreateSitesController();


            var siteDetailsViewModel = new SiteGroupDetailsViewModel();
            siteGroupViewModelFactory
                    .Setup(x => x.GetViewModel())
                    .Returns(siteDetailsViewModel);


            //When
            var result = target.GetSiteGroup(_clientId, _siteGroupId);

            //Then
            Assert.That(result.Model, Is.TypeOf<SiteGroupDetailsViewModel>());
            Assert.That(result.Model, Is.SameAs(siteDetailsViewModel));
        }
Exemplo n.º 11
0
        private ActionResult SaveSiteGroup(SiteGroupDetailsViewModel siteGroupDetailsViewModel)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    var siteGroup = new SiteGroupRequestMapper().Map(siteGroupDetailsViewModel, CurrentUser.UserId);
                    _siteGroupService.CreateUpdate(siteGroup);
                    TempData[UpdateSiteGroupIdKey] = siteGroupDetailsViewModel.GroupId;
                    SetSavedSiteGroupSuccessMessage(siteGroupDetailsViewModel);
                }
                catch (ValidationException e)
                {
                    ModelState.Update(e);
                    var result = SiteStructureViewModelForUpdateGroup(siteGroupDetailsViewModel);
                    return View("Index", result);
                }
                return RedirectToAction("Index", "SitesStructure");
            }

            var viewModel = SiteStructureViewModelForUpdateGroup(siteGroupDetailsViewModel);

            return View("Index", viewModel);
        }
 public CreateUpdateSiteGroupRequest Map(SiteGroupDetailsViewModel siteGroupDetailsViewModel, Guid userId)
 {
     var request = Mapper.Map<SiteGroupDetailsViewModel, CreateUpdateSiteGroupRequest>(siteGroupDetailsViewModel);
     request.CurrentUserId = userId;
     return request;
 }
Exemplo n.º 13
0
 public ActionResult UpdateGroup(SiteGroupDetailsViewModel siteGroupDetailsViewModel)
 {
     return SaveSiteGroup(siteGroupDetailsViewModel);
 }
Exemplo n.º 14
0
 private void SetSavedSiteGroupSuccessMessage(SiteGroupDetailsViewModel siteGroupDetailsViewModel)
 {
     TempData[MessageKey] = siteGroupDetailsViewModel.GroupId == 0
                                ? "Your new Site Group has been successfully created"
                                : "Your changes have been successfully saved";
 }
Exemplo n.º 15
0
 private SiteStructureViewModel SiteStructureViewModelForUpdateGroup(SiteGroupDetailsViewModel siteGroupDetailsViewModel)
 {
     var viewModel = _siteStructureViewModelFactory
         .WithClientId(CurrentUser.CompanyId)
         .WithGroupDetailsViewModel(siteGroupDetailsViewModel)
         .HideSiteDetails()
         .DisplaySiteGroups()
         .WithValidationError(true)
         .GetViewModel();
     return viewModel;
 }