Example #1
0
        public async Task <IActionResult> CreateSite(CreateSiteViewModel model)
        {
            var user = await GetCurrentUserAsync();

            if (!ModelState.IsValid)
            {
                model.Recover(user);
                return(View(model));
            }
            var app = await _dbContext.Apps.FindAsync(model.AppId);

            if (app == null)
            {
                return(NotFound());
            }
            if (app.CreatorId != user.Id)
            {
                return(Unauthorized());
            }
            try
            {
                var token = await _appsContainer.AccessToken(app.AppId, app.AppSecret);

                await _sitesService.CreateNewSiteAsync(token, model.SiteName, model.OpenToUpload, model.OpenToDownload);

                return(RedirectToAction(nameof(AppsController.ViewApp), "Apps", new { id = app.AppId, JustHaveUpdated = true }));
            }
            catch (AiurUnexpectedResponse e)
            {
                ModelState.AddModelError(string.Empty, e.Response.Message);
                model.Recover(user);
                return(View(model));
            }
        }
        public async Task <IActionResult> CreateSite(CreateSiteViewModel model)
        {
            var user = await GetCurrentUserAsync();

            if (!ModelState.IsValid)
            {
                model.ModelStateValid = false;
                model.Recover(user);
                return(View(model));
            }
            try
            {
                await _sitesService.CreateNewSiteAsync(await accesstoken, model.SiteName, model.OpenToUpload, model.OpenToDownload);

                user.SiteName = model.SiteName;
                await _dbContext.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            catch (AiurUnexceptedResponse e)
            {
                ModelState.AddModelError(string.Empty, e.Response.Message);
                model.ModelStateValid = false;
                model.Recover(user);
                return(View(model));
            }
        }
Example #3
0
        public async Task <IActionResult> CreateSite(CreateSiteViewModel model)
        {
            var user = await GetCurrentUserAsync();

            if (!ModelState.IsValid)
            {
                model.Recover(user);
                return(View(model));
            }
            try
            {
                var existing = await _sitesService.ViewMySitesAsync(await AccessToken);

                if (existing.Sites.Any(t => t.SiteName.ToLower().Trim() == model.SiteName.ToLower().Trim()))
                {
                    ModelState.AddModelError(string.Empty, $"The site with name: {model.SiteName} already exists. Please try another name.");
                    model.Recover(user);
                    return(View(model));
                }
                await _sitesService.CreateNewSiteAsync(await AccessToken, model.SiteName, model.OpenToUpload, model.OpenToDownload);

                user.SiteName = model.SiteName;
                await _userManager.UpdateAsync(user);

                return(RedirectToAction(nameof(Index)));
            }
            catch (AiurUnexpectedResponse e)
            {
                ModelState.AddModelError(string.Empty, e.Response.Message);
                model.Recover(user);
                return(View(model));
            }
        }
Example #4
0
        // GET: Sites/Edit/5
        public async Task <ActionResult> Edit(int id)
        {
            Site site = await _sitesRepository.GetSite(id);

            if (site == null)
            {
                return(HttpNotFound());
            }
            ViewBag.SiteID = site.ID;
            List <SelectListItem> customers = await _customersRepository.GetAllCustomersAsSelectListItem();

            List <SelectListItem> siteTypes = await _sitesRepository.GetAllSiteTypesAsSelectListItem(site.CustomerID ?? 0);

            List <SelectListItem> countries = await _geoRepository.GetAllCountriesAsSelectListItem();

            List <SelectListItem> states = await _geoRepository.GetAllStatesAsSelectListItem();


            var model = new CreateSiteViewModel
            {
                CustomerID = site.CustomerID,
                Customers  = customers,
                SiteTypes  = siteTypes,
                SiteTypeID = site.SiteTypeID,
                SiteNumber = site.SiteNumber,
                CountryID  = site.CountryID,
                Countries  = countries,
                States     = states,
                City       = site.City,
                Address    = site.Address,
                Zip        = site.Zip,
            };

            return(View(model));
        }
Example #5
0
        public async Task <IActionResult> CreateSite(string id)// app id
        {
            var user = await GetCurrentUserAsync();

            var model = new CreateSiteViewModel(user)
            {
                AppId = id
            };

            return(View(model));
        }
Example #6
0
        public async Task <IActionResult> CreateSite()
        {
            var user = await GetCurrentUserAsync();

            var sites = await _sitesService.ViewMySitesAsync(await AccessToken);

            if (!string.IsNullOrEmpty(user.SiteName) && sites.Sites.Any(t => t.SiteName == user.SiteName))
            {
                return(RedirectToAction(nameof(Index)));
            }
            var model = new CreateSiteViewModel(user);

            return(View(model));
        }
Example #7
0
        // GET: Sites/Create
        public async Task <ActionResult> Create()
        {
            List <SelectListItem> customers = await _customersRepository.GetAllCustomersAsSelectListItem();

            List <SelectListItem> countries = await _geoRepository.GetAllCountriesAsSelectListItem();

            var model = new CreateSiteViewModel
            {
                Customers = customers,
                Countries = countries,
            };

            return(View(model));
        }
Example #8
0
        public async Task <ActionResult> Edit([Bind(Include = "ID,CustomerID, SiteTypeID,SiteNumber,CountryID,StateID, City,Address, Zip")] Site site)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    await _sitesRepository.UpdateSite(site);

                    return(RedirectToAction("Index"));
                }
                catch (Exception ex)
                {
                    throw new HttpException("Unable to Add Country. " + ex);
                }
            }
            ViewBag.SiteID = site.ID;

            List <SelectListItem> customers = await _customersRepository.GetAllCustomersAsSelectListItem();

            List <SelectListItem> siteTypes = await _sitesRepository.GetAllSiteTypesAsSelectListItem(site.CustomerID ?? 0);

            List <SelectListItem> countries = await _geoRepository.GetAllCountriesAsSelectListItem();

            List <SelectListItem> states = await _geoRepository.GetAllStatesAsSelectListItem();


            var model = new CreateSiteViewModel
            {
                CustomerID = site.CustomerID,
                Customers  = customers,
                SiteTypes  = siteTypes,
                SiteTypeID = site.SiteTypeID,
                SiteNumber = site.SiteNumber,
                CountryID  = site.CountryID,
                Countries  = countries,
                States     = states,
                City       = site.City,
                Address    = site.Address,
                Zip        = site.Zip,
            };

            return(View(model));
        }
Example #9
0
        public async Task <IActionResult> CreateSite([FromRoute] string id)// app id
        {
            var user = await GetCurrentUserAsync();

            var app = await _dbContext.Apps.FindAsync(id);

            if (app == null)
            {
                return(NotFound());
            }
            if (app.CreatorId != user.Id)
            {
                return(Unauthorized());
            }
            var model = new CreateSiteViewModel(user)
            {
                AppId   = id,
                AppName = app.AppName
            };

            return(View(model));
        }
Example #10
0
        public async Task <ActionResult> Create(Site site)
        {
            if (ModelState.IsValid)
            {
                try {
                    await _sitesRepository.AddSite(site);
                } catch (Exception ex) {
                    throw new HttpException("Unable to Create a Site. " + ex);
                }
                return(RedirectToAction("Index"));
            }
            List <SelectListItem> customers = await _customersRepository.GetAllCustomersAsSelectListItem();

            List <SelectListItem> countries = await _geoRepository.GetAllCountriesAsSelectListItem();

            var model = new CreateSiteViewModel
            {
                Customers = customers,
                Countries = countries,
            };

            return(View(model));
        }