Example #1
0
        public IEnumerable <IEvent> Handle(CreateSite command)
        {
            var site = Site.CreateNew(command, _validator);

            _siteRepository.Create(site);

            return(site.Events);
        }
        public SiteBL Create(SiteBL site)
        {
            var siteToCreate = _mapper.Map <Site>(site);
            var siteDAL      = _siteRepository.Create(siteToCreate);
            var siteBL       = _mapper.Map <SiteBL>(siteDAL);

            return(siteBL);
        }
Example #3
0
        public IAggregateRoot Handle(CreateSite command)
        {
            var site = Site.CreateNew(command, _validator);

            _siteRepository.Create(site);

            return(site);
        }
        public void Should_save_new_site()
        {
            var newSite = SiteFactory.Site(Guid.NewGuid(), "Name 3");

            _sut.Create(newSite);

            var actual = _sut.GetById(newSite.Id);

            Assert.NotNull(actual);
        }
        private void ExtractProjectStructure(IfcStore model)
        {
            // extract ifc file project
            var ifcProject = model.Instances.OfType <IIfcProject>().FirstOrDefault();
            var dbproject  = _mapper.Map <Project>((IfcProject)ifcProject);
            //dbproject.IfcFileName =

            var projectId = _projectRepository.Create(dbproject);

            // extract ifc sites
            var ifcSites = model.Instances.OfType <IIfcSite>();

            foreach (var ifcSite in ifcSites)
            {
                var dbsite = _mapper.Map <Site>((IfcSite)ifcSite);
                dbsite.ProjectId = projectId;
                var siteId = _siteRepository.Create(dbsite);
                ExtractBuilding((IfcSite)ifcSite, siteId);
            }
        }
        public void Should_save_new_site()
        {
            var newSite         = SiteFactory.Site(Guid.NewGuid(), "Name 3");
            var newSiteDbEntity = new SiteDbEntity
            {
                Id   = newSite.Id,
                Name = newSite.Name
            };

            var mapperMock = new Mock <IMapper>();

            mapperMock.Setup(x => x.Map <SiteDbEntity>(newSite)).Returns(newSiteDbEntity);
            mapperMock.Setup(x => x.Map <Site>(newSiteDbEntity)).Returns(newSite);

            _sut = new SiteRepository(_dbContext, mapperMock.Object);

            _sut.Create(newSite);

            var actual = _sut.GetById(newSite.Id);

            Assert.NotNull(actual);
        }
Example #7
0
        public void InstallDefaultSite()
        {
            // temporary implementation, it will be based on site templates

            var siteId            = Guid.NewGuid();
            var englishLanguageId = Guid.NewGuid();
            var mainMenuId        = Guid.NewGuid();
            var homePageId        = Guid.NewGuid();

            // ===== Site ===== //

            var site = Site.CreateNew(new CreateSite
            {
                Id   = siteId,
                Name = "Default"
            }, _createSiteValidator);

            _siteRepository.Create(site);

            // ===== Languages ===== //

            var language = Language.CreateNew(new CreateLanguage
            {
                SiteId      = siteId,
                Id          = englishLanguageId,
                Name        = "English",
                CultureName = "en",
                Url         = "en"
            }, _createLanguageValidator, _languageSortOrderGenerator);

            _languageRepository.Create(language);

            // ===== Pages ===== //

            var homePage = Page.CreateNew(new CreatePage
            {
                SiteId            = siteId,
                Id                = homePageId,
                Name              = "Home",
                Url               = "home",
                PageLocalisations = new List <PageLocalisation>
                {
                    new PageLocalisation
                    {
                        LanguageId = englishLanguageId
                    }
                },
                PagePermissions = new List <PagePermission>
                {
                    new PagePermission
                    {
                        RoleId = ((int)DefaultRoles.Everyone).ToString(),
                        Type   = PermissionType.View
                    }
                }
            }, _createPageValidator);

            homePage.Activate(new ActivatePage
            {
                SiteId = siteId,
                Id     = homePageId
            }, _activatePageValidator);

            _pageRepository.Create(homePage);

            // ===== Modules ===== //

            var textModuleType = _moduleTypeRepository.GetByName("Text");

            // Content Zone Module

            var contentModuleId = Guid.NewGuid();

            var contentModule = Module.CreateNew(new CreateModule
            {
                SiteId       = siteId,
                ModuleTypeId = textModuleType.Id,
                Id           = contentModuleId,
                Title        = "Content Module"
            }, _createModuleValidator);

            _moduleRepository.Create(contentModule);

            // Left Zone Module

            var leftModuleId = Guid.NewGuid();

            var leftModule = Module.CreateNew(new CreateModule
            {
                SiteId       = siteId,
                ModuleTypeId = textModuleType.Id,
                Id           = leftModuleId,
                Title        = "Left Module"
            }, _createModuleValidator);

            _moduleRepository.Create(leftModule);

            // Right Zone Module

            var rightModuleId = Guid.NewGuid();

            var rightModule = Module.CreateNew(new CreateModule
            {
                SiteId       = siteId,
                ModuleTypeId = textModuleType.Id,
                Id           = rightModuleId,
                Title        = "Right Module"
            }, _createModuleValidator);

            _moduleRepository.Create(rightModule);

            // Update Home Page

            homePage.AddModule(new AddPageModule
            {
                SiteId    = siteId,
                PageId    = homePageId,
                ModuleId  = contentModuleId,
                Id        = Guid.NewGuid(),
                Title     = "Content",
                Zone      = "Content",
                SortOrder = 1
            }, _addPageModuleValidator);

            homePage.AddModule(new AddPageModule
            {
                SiteId    = siteId,
                PageId    = homePageId,
                ModuleId  = leftModuleId,
                Id        = Guid.NewGuid(),
                Title     = "Left",
                Zone      = "Left",
                SortOrder = 1
            }, _addPageModuleValidator);

            homePage.AddModule(new AddPageModule
            {
                SiteId    = siteId,
                PageId    = homePageId,
                ModuleId  = rightModuleId,
                Id        = Guid.NewGuid(),
                Title     = "Right",
                Zone      = "Right",
                SortOrder = 1
            }, _addPageModuleValidator);

            _pageRepository.Update(homePage);

            // ===== Menus ===== //

            var mainMenu = Menu.CreateNew(new CreateMenu
            {
                SiteId = siteId,
                Id     = mainMenuId,
                Name   = "Main"
            }, _createMenuValidator);

            mainMenu.AddMenuItem(new AddMenuItem
            {
                SiteId                = siteId,
                MenuId                = mainMenuId,
                MenuItemId            = Guid.NewGuid(),
                MenuItemType          = MenuItemType.Page,
                PageId                = homePageId,
                Link                  = string.Empty,
                Text                  = "Home",
                Title                 = "Home Page",
                MenuItemLocalisations = new List <MenuItemDetails.MenuItemLocalisation>
                {
                    new MenuItemDetails.MenuItemLocalisation
                    {
                        LanguageId = englishLanguageId
                    }
                }
            }, _addMenuItemValidator);

            _menuRepository.Create(mainMenu);
        }
Example #8
0
 public void CreateSite(User owner, Site newSite)
 {
     newSite.UserId = owner.Id;
     newSite.Domain = newSite.Domain.Replace("www.", string.Empty);
     _repository.Create(newSite);
 }
Example #9
0
        public void InstallDefaultSite()
        {
            var siteId            = Guid.NewGuid();
            var englishLanguageId = Guid.NewGuid();
            var mainMenuId        = Guid.NewGuid();
            var homePageId        = Guid.NewGuid();

            // ===== Site ===== //

            var site = Site.CreateNew(new CreateSite
            {
                Id   = siteId,
                Name = "Default"
            }, _createSiteValidator);

            _siteRepository.Create(site);

            // ===== Languages ===== //

            var language = Language.CreateNew(new CreateLanguage
            {
                SiteId      = siteId,
                Id          = englishLanguageId,
                Name        = "English",
                CultureName = "en",
                Url         = "en"
            }, _createLanguageValidator, _languageSortOrderGenerator);

            language.Activate(new ActivateLanguage
            {
                SiteId = siteId,
                Id     = englishLanguageId
            }, _activateLanguageValidator);

            _languageRepository.Create(language);

            // ===== Pages ===== //

            var pagePermisisons = new List <PagePermission>
            {
                new PagePermission
                {
                    RoleId = Everyone.Id,
                    Type   = PermissionType.View
                }
            };

            pagePermisisons.Add(new PagePermission
            {
                RoleId = Administrator.Id,
                Type   = PermissionType.View
            });

            pagePermisisons.Add(new PagePermission
            {
                RoleId = Administrator.Id,
                Type   = PermissionType.Edit
            });

            var homePage = Page.CreateNew(new CreatePage
            {
                SiteId            = siteId,
                Id                = homePageId,
                Name              = "Home",
                Url               = "home",
                PageLocalisations = new List <PageLocalisation>
                {
                    new PageLocalisation
                    {
                        LanguageId = englishLanguageId
                    }
                },
                PagePermissions = pagePermisisons
            }, _createPageValidator);

            homePage.Activate(new ActivatePage
            {
                SiteId = siteId,
                Id     = homePageId
            }, _activatePageValidator);

            _pageRepository.Create(homePage);

            // ===== Modules ===== //

            var textModuleType = _moduleTypeRepository.GetByName("Text");

            // Content Zone Module

            var contentModuleId = Guid.NewGuid();

            var contentModule = Module.CreateNew(new CreateModule
            {
                SiteId       = siteId,
                ModuleTypeId = textModuleType.Id,
                Id           = contentModuleId,
                Title        = "Content Module"
            }, _createModuleValidator);

            _moduleRepository.Create(contentModule);

            // Left Zone Module

            var leftModuleId = Guid.NewGuid();

            var leftModule = Module.CreateNew(new CreateModule
            {
                SiteId       = siteId,
                ModuleTypeId = textModuleType.Id,
                Id           = leftModuleId,
                Title        = "Left Module"
            }, _createModuleValidator);

            _moduleRepository.Create(leftModule);

            // Right Zone Module

            var rightModuleId = Guid.NewGuid();

            var rightModule = Module.CreateNew(new CreateModule
            {
                SiteId       = siteId,
                ModuleTypeId = textModuleType.Id,
                Id           = rightModuleId,
                Title        = "Right Module"
            }, _createModuleValidator);

            _moduleRepository.Create(rightModule);

            // Update Home Page

            var pageModulePermisisons = new List <PageModulePermission>
            {
                new PageModulePermission
                {
                    RoleId = Everyone.Id,
                    Type   = PermissionType.View
                }
            };

            pageModulePermisisons.Add(new PageModulePermission
            {
                RoleId = Administrator.Id,
                Type   = PermissionType.View
            });

            pageModulePermisisons.Add(new PageModulePermission
            {
                RoleId = Administrator.Id,
                Type   = PermissionType.Edit
            });

            homePage.AddModule(new AddPageModule
            {
                SiteId                = siteId,
                PageId                = homePageId,
                ModuleId              = contentModuleId,
                PageModuleId          = Guid.NewGuid(),
                Title                 = "Content",
                Zone                  = "Content",
                SortOrder             = 1,
                PageModulePermissions = pageModulePermisisons
            }, _addPageModuleValidator);

            homePage.AddModule(new AddPageModule
            {
                SiteId                = siteId,
                PageId                = homePageId,
                ModuleId              = leftModuleId,
                PageModuleId          = Guid.NewGuid(),
                Title                 = "Left",
                Zone                  = "Left",
                SortOrder             = 1,
                PageModulePermissions = pageModulePermisisons
            }, _addPageModuleValidator);

            homePage.AddModule(new AddPageModule
            {
                SiteId                = siteId,
                PageId                = homePageId,
                ModuleId              = rightModuleId,
                PageModuleId          = Guid.NewGuid(),
                Title                 = "Right",
                Zone                  = "Right",
                SortOrder             = 1,
                PageModulePermissions = pageModulePermisisons
            }, _addPageModuleValidator);

            _pageRepository.Update(homePage);

            // ===== Menus ===== //

            var mainMenu = Menu.CreateNew(new CreateMenu
            {
                SiteId = siteId,
                Id     = mainMenuId,
                Name   = "Main"
            }, _createMenuValidator);

            mainMenu.AddMenuItem(new AddMenuItem
            {
                SiteId                = siteId,
                MenuId                = mainMenuId,
                MenuItemId            = Guid.NewGuid(),
                Type                  = MenuItemType.Page,
                PageId                = homePageId,
                Link                  = string.Empty,
                Text                  = "Home",
                Title                 = "Home Page",
                MenuItemLocalisations = new List <MenuItemLocalisation>
                {
                    new MenuItemLocalisation
                    {
                        LanguageId = englishLanguageId
                    }
                },
                MenuItemPermissions = new List <MenuItemPermission>
                {
                    new MenuItemPermission
                    {
                        RoleId = Everyone.Id
                    }
                }
            }, _addMenuItemValidator);

            _menuRepository.Create(mainMenu);

            // ===== Update Site ===== //

            site.UpdateDetails(new UpdateSiteDetails
            {
                SiteId            = siteId,
                HomePageId        = homePageId,
                Title             = "Weapsy",
                MetaDescription   = "Weapsy",
                MetaKeywords      = "Weapsy",
                SiteLocalisations = new List <SiteLocalisation>
                {
                    new SiteLocalisation
                    {
                        SiteId     = siteId,
                        LanguageId = englishLanguageId
                    }
                }
            }, _updateSiteDetailsValidator);

            _siteRepository.Update(site);
        }
 public Site Create(Site site)
 {
     return(siteRepository.Create(site));
 }