// GET: BaseLayers/Create
        public ActionResult ChangeAttach(long id)
        {
            var regionsRepository = new RegionsRepository();
            var pagesRepository = new PagesRepository();

            var region = regionsRepository.GetById(id);

            IDisposable context = null;

            ViewBag.ListOfPages = pagesRepository.GetAll(out context).ToList().Select(x => new SelectListItem()
            {
                Value = x.Id.ToString(),
                Text = x.Name,
                Selected = region != null && region.PageId == x.Id
            });

            context?.Dispose();

            var model = new ChangeAttachPageViewModel()
            {
                Id = id,
                OldPageId = region?.PageId
            };

            return PartialView(model);
        }
        public IEnumerable<RegionApiViewModel> GetAllRegions()
        {
            IDisposable context;

            var regionsRepository = new RegionsRepository();
            var regions = regionsRepository.GetAll(out context).ToList();

            var result = regions.Select(region => new RegionApiViewModel(region));

            context.Dispose();

            return result;
        }
        public ActionResult Add(Region model)
        {
            try
            {
                var regionsRepository = new RegionsRepository();

                regionsRepository.Add(model);

                return RedirectToAction("Index");
            }
            catch (Exception ex)
            {
                return View();
            }
        }
        // GET: BaseLayers/Details/5
        public ActionResult Details(long id)
        {
            var pagesRepository = new PagesRepository();
            var pointsRepository = new PointsRepository();
            var regionsRepository = new RegionsRepository();

            var model = pagesRepository.GetById(id);

            var point = pointsRepository.GetByPage(id);
            var region = regionsRepository.GetByPage(id);

            if (model != null)
                return View(new PageViewModel(model, point, region));
            else
                return HttpNotFound();
        }
        // GET: BaseLayers/Create
        public ActionResult ChangeAttach(long id)
        {
            var regionsRepository = new RegionsRepository();

            var region = regionsRepository.GetByPage(id);

            IDisposable context = null;

            ViewBag.ListOfRegions = regionsRepository.GetAll(out context).ToList().Select(x => new SelectListItem()
            {
                Value = x.Id.ToString(),
                Text = x.Name,
                Selected = region != null && region.Id == x.Id
            });

            context?.Dispose();

            var pointsRepository = new PointsRepository();
            IDisposable context1 = null;

            var point = pointsRepository.GetByPage(id);

            ViewBag.ListOfPoints = pointsRepository.GetAll(out context).ToList().Select(x => new SelectListItem()
            {
                Value = x.Id.ToString(),
                Text = x.Name,
                Selected = point != null && point.Id == x.Id
            });

            context1?.Dispose();

            var model = new ChangeAttachViewModel()
            {
                Id = id,
                OldRegionId = region?.Id,
                OldPointId = point?.Id
            };
            
            return PartialView(model);
        }
        // GET: BaseLayers/Create
        public ActionResult Add()
        {
            var dataLayersRepository = new DataLayersRepository();
            var regionsRepository = new RegionsRepository();

            IDisposable context = null;

            ViewBag.ListOfRegions = regionsRepository.GetAll(out context).ToList().Select(x => new SelectListItem()
            {
                Value = x.Id.ToString(),
                Text = x.Name
            });

            context?.Dispose();

            var baseLayersRepository = new BaseLayersRepository();
            IDisposable context3;

            var baseLayers = baseLayersRepository.GetAll(out context3).ToList();

            ViewBag.BaseLayerUrl = baseLayers.FirstOrDefault()?.Url;
            context3?.Dispose();

            IDisposable context1;

            ViewBag.ListOfDataLayers = dataLayersRepository.GetAll(out context1).ToList().Select(x => new SelectListItem()
            {
                Value = x.Id.ToString(),
                Text = x.Name
            });

            using (context1)
            {
                return View(new EditPointViewModel(new Point()));
            }
        }
        // GET: BaseLayers/Edit/5
        public ActionResult Edit(long id)
        {
            var dataLayersRepository = new DataLayersRepository();
            var pointsRepository = new PointsRepository();
            var regionsRepository = new RegionsRepository();

            var model = pointsRepository.GetById(id);
            var dataLayersIds = model.DataLayers != null ? model.DataLayers.Select(x => x.Id) : new List<long>();

            IDisposable context;

            ViewBag.ListOfDataLayers = dataLayersRepository.GetAll(out context).ToList().Select(x => new SelectListItem()
            {
                Value = x.Id.ToString(),
                Text = x.Name,
                Selected = dataLayersIds.Contains(x.Id)
            });

            context?.Dispose();

            IDisposable context1 = null;

            ViewBag.ListOfRegions = regionsRepository.GetAll(out context1).ToList().Select(x => new SelectListItem()
            {
                Value = x.Id.ToString(),
                Text = x.Name
            });

            context1?.Dispose();

            var baseLayersRepository = new BaseLayersRepository();
            IDisposable context3;

            var baseLayers = baseLayersRepository.GetAll(out context3).ToList();

            ViewBag.BaseLayerUrl = baseLayers.FirstOrDefault()?.Url;
            context3?.Dispose();

            if (model != null)
                return View(new EditPointViewModel(model));
            return HttpNotFound();
        }
        public ActionResult ChangeAttach(ChangeAttachPageViewModel model)
        {
            var pageRepository = new PagesRepository();
            var regionRepository = new RegionsRepository();

            var region = regionRepository.GetById(model.Id);

            if (model.PageId.HasValue && model.PageId != region.PageId)
            {
                var page = pageRepository.GetById(model.PageId.Value);

                region.PageId = page.Id;
                region.Page = page;

                regionRepository.Update(region);
            }
            else
            {
                if (model.OldPageId.HasValue)
                {
                    region.PageId = null;
                    region.Page = null;

                    regionRepository.Update(region);
                }
            }

            return RedirectToAction("Details", new { id = model.Id });
        }
        public ActionResult Index()
        {
            var regionsRepository = new RegionsRepository();

            IDisposable context;
            var regions = regionsRepository.GetAll(out context).ToList().Select(x => new RegionViewModel(x)).ToList();

            using (context)
            {
                return View(regions);
            }
        }
        // GET: BaseLayers/Edit/5
        public ActionResult Edit(long id)
        {
            var baseLayersRepository = new BaseLayersRepository();
            IDisposable context;

            var baseLayers = baseLayersRepository.GetAll(out context).ToList();

            ViewBag.ListOfBaseLayers = baseLayers.Select(x => new SelectListItem()
            {
                Value = x.Id.ToString(),
                Text = x.Name
            });

            ViewBag.BaseLayerUrl = baseLayers.FirstOrDefault()?.Url;

            using (context)
            {
                var regionsRepository = new RegionsRepository();

                var model = regionsRepository.GetById(id);

                if (model != null)
                    return View(model);
                return HttpNotFound();
            }
        }
        // GET: BaseLayers/Details/5
        public ActionResult Details(long id)
        {
            var regionsRepository = new RegionsRepository();

            var model = regionsRepository.GetById(id);
            ViewBag.BaseLayerUrl = model.BaseLayer?.Url;

            if (model != null)
                return View(model);
            else
                return HttpNotFound();
        }
        public ActionResult DeleteConfirmed(int id)
        {
            try
            {
                var regionsRepository = new RegionsRepository();

                regionsRepository.Delete(id);

                return RedirectToAction("Index");
            }
            catch
            {
                return View();
            }
        }
        // GET: BaseLayers/Delete/5
        public ActionResult Delete(int id)
        {
            var regionsRepository = new RegionsRepository();

            var model = regionsRepository.GetById(id);

            if (model != null)
                return View(model);
            return HttpNotFound();
        }
Ejemplo n.º 14
0
        public ActionResult Add(PageViewModel model)
        {
            try
            {
                var tagsRepository = new TagsRepository();
                var pointsRepository = new PointsRepository();
                var pagesRepository = new PagesRepository();

                var page = new Page()
                {
                    Name = model.Name,
                    Description = model.Description,
                    Content = model.Content,
                    ExternalId = model.ExternalId
                };

                if (model.SelectedTags != null)
                {
                    var tags = tagsRepository.GetByStringIds(model.SelectedTags);
                    page.Tags = new List<Tag>(tags);
                }
                else
                {
                    page.Tags = null;
                }

                var pageId = pagesRepository.Add(page);
                if (!string.IsNullOrEmpty(model.Point?.Name))
                {
                    model.Point.PageId = pageId;
                    pointsRepository.Add(model.Point);
                }

                if (model.RegionId != null)
                {
                    var regionsRepository = new RegionsRepository();

                    var region = regionsRepository.GetById(model.RegionId.Value);
                    region.Page = null;
                    region.PageId = pageId;

                    regionsRepository.Update(region);
                }

                return RedirectToAction("Index");
            }
            catch (Exception ex)
            {
                return View();
            }
        }
Ejemplo n.º 15
0
        // GET: BaseLayers/Create
        public ActionResult Add()
        {
            var regionsRepository = new RegionsRepository();
            IDisposable context = null;

            ViewBag.ListOfRegions = regionsRepository.GetAll(out context).ToList().Select(x => new SelectListItem()
            {
                Value = x.Id.ToString(),
                Text = x.Name
            });

            context?.Dispose();
            
            var tagsRepository = new TagsRepository();
            IDisposable context1 = null;

            ViewBag.ListOfTags = tagsRepository.GetAll(out context).ToList().Select(x => new SelectListItem()
            {
                Value = x.Id.ToString(),
                Text = x.Name
            });

            context1?.Dispose();


            return View(new PageViewModel(new Page()));
        }