public void AddSite(SiteDTO siteDTO)
        {
            var site = _mapper.Map <SiteDTO, Site>(siteDTO);

            site.AdminId = AdminIdRemember.Id;
            _siteRepository.AddSite(site);
        }
 public Site Post([FromBody] Site Site)
 {
     if (ModelState.IsValid)
     {
         bool authorized;
         if (!Sites.GetSites().Any())
         {
             authorized = true; // provision initial site during installation
         }
         else
         {
             authorized = User.IsInRole(Constants.HostRole);
         }
         if (authorized)
         {
             Site = Sites.AddSite(Site);
             string folder = environment.WebRootPath + "\\Tenants\\" + Tenants.GetTenant().TenantId.ToString() + "\\Sites\\" + Site.SiteId.ToString();
             if (!Directory.Exists(folder))
             {
                 Directory.CreateDirectory(folder);
             }
         }
     }
     return(Site);
 }
Example #3
0
        public async Task <IActionResult> AddSite([FromForm] Site site)
        {
            if (!string.IsNullOrWhiteSpace(site.Alias) && !string.IsNullOrWhiteSpace(site.Url))
            {
                // Trying to add a site to the DB.
                // If Alias exist controller returns bad request with alias and URL where it points.
                bool isAliasUnique = _repo.IsAliasUnique(site.Alias);
                if (!isAliasUnique)
                {
                    return(RedirectToAction("Index", new { messageToShow = $"The Alias {site.Alias} already exist." }));
                }

                // Trying to add and save site.
                var siteFromDb = await _repo.AddSite(site);

                bool result = await _repo.SaveAll();

                if (result)
                {
                    return(RedirectToAction("Index", new { messageToShow = $"Alias '{site.Alias}' has been added to the database." }));
                }
                else
                {
                    return(RedirectToAction("Index", new { messageToShow = "It was an Error on adding your alias to the database." }));
                }
            }
            else
            {
                return(RedirectToAction("Index", new { messageToShow = "Please provide both, an Alias and Site URL." }));
            }
        }
 public Site Post([FromBody] Site Site)
 {
     if (ModelState.IsValid)
     {
         bool authorized;
         if (!Sites.GetSites().Any())
         {
             // provision initial site during installation
             authorized = true;
             Tenant tenant = Tenants.GetTenant();
             Site.TenantId = tenant.TenantId;
         }
         else
         {
             authorized = User.IsInRole(Constants.HostRole);
         }
         if (authorized)
         {
             Site = Sites.AddSite(Site);
             string folder = environment.WebRootPath + "\\Tenants\\" + Tenants.GetTenant().TenantId.ToString() + "\\Sites\\" + Site.SiteId.ToString();
             if (!Directory.Exists(folder))
             {
                 Directory.CreateDirectory(folder);
             }
             logger.Log(LogLevel.Information, this, LogFunction.Create, "Site Added {Site}", Site);
         }
     }
     return(Site);
 }
        public Site Save(Site site)
        {
            site.Url = PrefixUrl(site.Url);

            var validationContext = new ValidationContext <Site>(site);
            var results           = _siteValidator.Validate(validationContext);
            var errors            = results.Errors;

            if (results.IsValid)
            {
                var existingSite = _siteRepository.GetSite(site.Id);
                if (existingSite != null)
                {
                    var savedSite = _siteRepository.UpdateSite(site);
                    return(savedSite);
                }
                else
                {
                    var savedSite = _siteRepository.AddSite(site);
                    return(savedSite);
                }
            }
            else
            {
                throw new ValidationException(results.Errors);
            }
        }
Example #6
0
 public void Post([FromBody] Site site)
 {
     if (ModelState.IsValid)
     {
         sites.AddSite(site);
     }
 }
 public Site Post([FromBody] Site Site)
 {
     if (ModelState.IsValid)
     {
         Site = Sites.AddSite(Site);
     }
     return(Site);
 }
Example #8
0
 public HttpResponseMessage Post(Site site)
 {
     if (base.ModelState.IsValid)
     {
         _siteRepo.AddSite(site);
         return(new HttpResponseMessage(HttpStatusCode.OK));
     }
     return(base.Request.CreateErrorResponse(HttpStatusCode.BadRequest, base.ModelState));
 }
        public void AddSite()
        {
            Site site = new Site {
                Name = _view.SiteName, Url = _view.UrlAddress, Access_interval = _view.Interval
            };

            _repository.AddSite(site);
            UpdateSiteListView();
        }
Example #10
0
        public ActionResult <SiteDto> CreateSiteForCompany(Guid companyId, Guid siteTypeId, SiteForCreationDto site)
        {
            var siteEntity = _mapper.Map <Entities.Site>(site);

            siteEntity.CompanyId  = companyId;
            siteEntity.SiteTypeId = siteTypeId;

            _siteRepository.AddSite(siteEntity);
            _siteRepository.Save();

            var siteToReturn = _mapper.Map <SiteDto>(siteEntity);

            var links = CreateLinksForSite(companyId.ToString(), siteTypeId.ToString(), siteToReturn.Id, null);

            var linkedResourceToReturn = siteToReturn.ShapeData(null)
                                         as IDictionary <string, object>;

            linkedResourceToReturn.Add("links", links);

            return(CreatedAtRoute("GetSite",
                                  new { companyId, siteTypeId, siteId = linkedResourceToReturn["Id"] },
                                  linkedResourceToReturn));
        }
Example #11
0
 public Site Post([FromBody] Site site)
 {
     if (ModelState.IsValid)
     {
         site = _sites.AddSite(site);
         _logger.Log(site.SiteId, LogLevel.Information, this, LogFunction.Create, "Site Added {Site}", site);
     }
     else
     {
         _logger.Log(LogLevel.Error, this, LogFunction.Security, "Unauthorized Site Post Attempt {Site}", site);
         HttpContext.Response.StatusCode = (int)HttpStatusCode.Forbidden;
         site = null;
     }
     return(site);
 }
Example #12
0
 public Site Post([FromBody] Site Site)
 {
     if (ModelState.IsValid)
     {
         bool authorized;
         if (!Sites.GetSites().Any())
         {
             authorized = true; // provision initial site during installation
         }
         else
         {
             authorized = User.IsInRole(Constants.HostRole);
         }
         if (authorized)
         {
             Site = Sites.AddSite(Site);
         }
     }
     return(Site);
 }
Example #13
0
        public async Task <IActionResult> AddSite([FromBody] Site site)
        {
            // Trying to add a site to the DB.
            // If Alias exist controller returns bad request with alias.
            Site siteFromDb = await _repo.AddSite(site);

            if (siteFromDb == null)
            {
                return(BadRequest($"The Alias {site.Alias} already exist."));
            }

            // Trying to save site.
            bool result = await _repo.SaveAll();

            if (result)
            {
                return(Ok(site));
            }
            else
            {
                return(StatusCode(500, "Error occured on saving site to the DB."));
            }
        }
Example #14
0
 public Site Post([FromBody] Site site)
 {
     if (ModelState.IsValid)
     {
         bool authorized;
         if (!_sites.GetSites().Any())
         {
             // provision initial site during installation
             authorized    = true;
             site.TenantId = _alias.TenantId;
         }
         else
         {
             authorized = User.IsInRole(RoleNames.Host);
         }
         if (authorized)
         {
             site = _sites.AddSite(site);
             _logger.Log(site.SiteId, LogLevel.Information, this, LogFunction.Create, "Site Added {Site}", site);
         }
     }
     return(site);
 }
Example #15
0
 public Site Post([FromBody] Site Site)
 {
     if (ModelState.IsValid)
     {
         bool authorized;
         if (!Sites.GetSites().Any())
         {
             // provision initial site during installation
             authorized = true;
             Tenant tenant = Tenants.GetTenant();
             Site.TenantId = tenant.TenantId;
         }
         else
         {
             authorized = User.IsInRole(Constants.HostRole);
         }
         if (authorized)
         {
             Site = Sites.AddSite(Site);
             logger.Log(Site.SiteId, LogLevel.Information, this, LogFunction.Create, "Site Added {Site}", Site);
         }
     }
     return(Site);
 }