Пример #1
0
        public async Task <ActionResult> EditAsync(SEOMetaData data)
        {
            if (!ModelState.IsValid)
            {
                TempData["msg"] = "Error: Data Not Valid";
                return(RedirectToAction(nameof(Index)));
            }

            try
            {
                int id = await seoService.UpdateAsync(data);

                if (id > 0)
                {
                    TempData["msg"] = "Edited.";
                }
                else
                {
                    TempData["msg"] = "Error: Failure to update database";
                }
                return(RedirectToAction(nameof(Index)));
            }
            catch
            {
                TempData["msg"] = "Update Failed";
                return(RedirectToAction(nameof(Index)));
            }
        }
Пример #2
0
        public async Task <ActionResult> DefaultAsync(SEOMetaData data)
        {
            data.Id = 1;

            await seoService.UpdateAsync(data);

            TempData["msg"] = "Default Set";

            return(RedirectToAction(nameof(Index)));
        }
Пример #3
0
        public SEOMetaData Get(int id)
        {
            SEOMetaData data = new SEOMetaData();

            using (var context = new ApplicationContext())
            {
                data = context.SEOMetaData.Single(x => x.Id == id);
            }

            return(data);
        }
Пример #4
0
        public async Task <int> AddAsync(SEOMetaData data)
        {
            int success = 0;

            try
            {
                using (var context = new ApplicationContext())
                {
                    data.Path = CleanPath(data.Path);
                    context.SEOMetaData.Add(data);
                    await context.SaveChangesAsync();

                    success = 1;
                }
            }
            catch
            {
            }

            return(success);
        }
Пример #5
0
        public async Task <ActionResult> CreateAsync(SEOMetaData data)
        {
            if (!ModelState.IsValid)
            {
                TempData["msg"] = "Error: Data Not Valid";
                return(RedirectToAction(nameof(Index)));
            }

            try
            {
                //refuse if path already exists in database, suggest they edit
                //seoService.Get always returns something (default) so must make
                //so, it only exists if it returns an ID > 1 (valid id) and not default (1)
                SEOMetaData exists = seoService.Get(data.Path);
                if (exists != null && exists.Id > 1)
                {
                    TempData["msg"] = "URL already in database.  Edit instead.";
                    return(RedirectToAction(nameof(Index)));
                }

                int id = await seoService.AddAsync(data);

                if (id > 0)
                {
                    TempData["msg"] = "Added.";
                }
                else
                {
                    TempData["msg"] = "Error: Failure to add to database";
                }
                return(RedirectToAction(nameof(Index)));
            }
            catch
            {
                TempData["msg"] = "Add Failed";
                return(RedirectToAction(nameof(Index)));
            }
        }
Пример #6
0
        public SEOMetaData Get(string path)
        {
            SEOMetaData data = new SEOMetaData();

            path = CleanPath(path);

            using (var context = new ApplicationContext())
            {
                data = context.SEOMetaData.Single(x => x.Path == path);
            }

            //missing page, so get and use default
            if (data == null)
            {
                using (var context = new ApplicationContext())
                {
                    //default id is always 1
                    data = context.SEOMetaData.Single(x => x.Id == 1);
                }
            }

            return(data);
        }
Пример #7
0
        // GET: SEO/Edit/5
        public ActionResult Edit(int id)
        {
            SEOMetaData data = seoService.Get(id);

            return(View(data));
        }
Пример #8
0
        public ActionResult Default()
        {
            SEOMetaData data = seoService.Get(1);

            return(View(data));
        }