예제 #1
0
        public Page Add(Page Page)
        {
            var page = _pageRepository.Add(Page);

            _unitOfWork.Commit();
            return(page);
        }
예제 #2
0
        public ValidationDictionary <ViewModelPage> SavePage(int clientId, ViewModelPage viewModelPage)
        {
            // validation first
            var validator = new ValidationDictionary <ViewModelPage>();

            if (viewModelPage == null)
            {
                validator.IsValid = false;
                validator.AddError("", "Page you're trying to save is null");
                return(validator);
            }

            // rule based
            if (viewModelPage.IsHomePage)
            {
            }

            DynamicPage dPage;

            if (viewModelPage.PageId <= 0)
            {
                // prepare object to save
                dPage = new DynamicPage();
                dPage.InjectFrom(viewModelPage);
                dPage.ClientId        = clientId;
                dPage.DateCreated     = DateTime.UtcNow;
                dPage.DateLastUpdated = DateTime.UtcNow;

                _pageRepository.Add(dPage);
            }
            else
            {
                var gExpression = _dynamicPageFilters.Init()
                                  .GetByPageId(viewModelPage.PageId)
                                  .GetByClientId(clientId)
                                  .GetNotDeleted()
                                  .FilterExpression;

                dPage = _pageRepository.FindBy(gExpression);

                if (dPage != null)
                {
                    // excluded fields
                    var createdDate = dPage.DateCreated;
                    // update data
                    dPage.InjectFrom(viewModelPage);
                    dPage.DateCreated     = createdDate;
                    dPage.DateLastUpdated = DateTime.UtcNow;
                    dPage.IsDeleted       = false;

                    _pageRepository.Update(dPage);
                }
            }

            var pingedPaged = GetPage(clientId, dPage.PageId);

            validator.IsValid       = true;
            validator.RelatedObject = pingedPaged;
            return(validator);
        }
        public async Task <IActionResult> Create(Page page)
        {
            if (ModelState.IsValid)
            {
                // SLug => bir sayfanın URL'sinde alan adınızdan sonra görünen bir metin bitidir . Temel olarak, sitenizdeki URL’lerin, sitenizdeki her bir sayfayı tanımlayan bölümüdür.

                page.Slug = page.Title.ToLower().Replace(" ", "-");
                var slug = await _repo.FirstOrDefault(x => x.Slug == page.Slug);

                if (slug != null)
                {
                    ModelState.AddModelError("", "There is already a page..!");
                    return(View(page));
                }
                await _repo.Add(page);

                TempData["Success"] = "The page added..!";
                return(RedirectToAction("List"));
            }
            else
            {
                TempData["Error"] = "The page hasn't been added..!";
                return(RedirectToAction("List"));
            }
        }
예제 #4
0
        public Page GetPage(string docId)
        {
            var page = _pageRepo.Find(docId);

            if (page == null)
            {
                if (!ContentProvider.Exists(docId))
                {
                    return(null);
                }

                page = new Page
                {
                    Content = ContentProvider.GetContent(docId),
                    DocId   = docId,
                    Url     = docId,
                    Title   = docId.Replace("-", " ").ToTitleCase()
                };

                _pageRepo.Add(page);
                _pageRepo.Save();
            }
            else if (!ContentProvider.Exists(docId))
            {
                _pageRepo.Delete(page);
                return(null);
            }

            page.Content = ContentProvider.GetContent(docId);

            return(page);
        }
예제 #5
0
        public async Task <IActionResult> Create(Page page)
        {
            if (ModelState.IsValid)
            {
                //bir sayfanın URL'sinde alan adınızdan sonra görünen bir metin bitidir . Temel olarak, sitenizdeki URL’lerin, sitenizdeki her bir sayfayı tanımlayan bölümüdür
                page.Slug = page.Title.ToLower().Replace(" ", "-");              //küçük harfe çevirip boşluk gördüğü her yere "-" ekledi.
                var slug = await _repo.FirstOrDefault(x => x.Slug == page.Slug); //databasede böyle bir slug var mı kontrol eder.

                if (slug != null)                                                //eğer firstordefault true dönerse
                {
                    ModelState.AddModelError("", "There is already a page..!");
                    TempData["Success"] = "The page alredy exsist..!!";
                    return(View(page));
                }

                await _repo.Add(page);

                TempData["Success"] = "The page added..!";
                return(RedirectToAction("List"));
            }
            else
            {
                TempData["Error"] = "The page hasn't been added..!";
                return(RedirectToAction("List"));
            }
        }
예제 #6
0
        public async Task <IActionResult> PostPage([FromBody] Page page)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            try
            {
                await Task.Run(() => _context.Add(page));
            }
            catch (DbUpdateException)
            {
                if (PageExists(page.PageId))
                {
                    return(new StatusCodeResult(StatusCodes.Status409Conflict));
                }
                else
                {
                    throw;
                }
            }

            return(CreatedAtAction("GetPage", new { id = page.PageId }, page));
        }
예제 #7
0
        /// <summary>
        /// Creates a new page.
        /// </summary>
        /// <param name="space">The space to create the page in.</param>
        /// <param name="pageName">The name of the page-to-be.</param>
        /// <param name="content">The initial content of the new page.</param>
        /// <returns>The newly created page.</returns>
        public async Task <IPage> CreatePage(ISpace space, PageName pageName, string content)
        {
            IPage    page    = _pageFactory.NewPage(space, pageName);
            IVersion version = _pageFactory.NewVersion(page, content);
            await _pageRepository.Add(page, version);

            return(page);
        }
예제 #8
0
    public HttpResponseMessage Post([FromBody] PageDetail item)
    {
        var result = repository.Add(item);

        if (result == null)
        {
            return(Request.CreateResponse(HttpStatusCode.NotModified));
        }

        return(Request.CreateResponse(HttpStatusCode.Created, result));
    }
예제 #9
0
        public async Task <Page> CreatePage(Company company, User user)
        {
            var page = new Page(company, user);

            await _pageRepository.Add(page);

            var newPageOwner = new PageUser(page, user);

            await _pageOwnerRepository.Add(newPageOwner);

            return(await _pageRepository.GetById(page.Id));
        }
예제 #10
0
        public IHttpActionResult Post(Page page)
        {
            page.Id           = 0;
            page.CreationDate = DateTime.Now;

            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            page.Id = _pageRepository.Add(page);

            return(Created(new Uri(Request.RequestUri + "/" + page.Id), page));
        }
예제 #11
0
        public string CreatePage(Page page)
        {
            if (IsNameTaken(page.Title))
            {
                return("Page already exists");
            }
            else
            {
                if (page.Title.Contains(" "))
                {
                    page.Title.Replace(" ", "-").ToLower();
                }

                page.Slug = page.Slug.Replace(" ", "-").ToLower();
            }
            _pagerepo.Add(page);
            _unitofwork.Save();
            return(string.Empty);
        }
    public HttpResponseMessage Post([FromBody] PageDetail item)
    {
        try
        {
            var result = repository.Add(item);
            if (result == null)
            {
                return(Request.CreateResponse(HttpStatusCode.NotModified));
            }

            return(Request.CreateResponse(HttpStatusCode.Created, result));
        }
        catch (UnauthorizedAccessException)
        {
            return(Request.CreateResponse(HttpStatusCode.Unauthorized));
        }
        catch (Exception)
        {
            return(Request.CreateResponse(HttpStatusCode.InternalServerError));
        }
    }
        public async Task <IActionResult> Create(Page page)
        {
            if (ModelState.IsValid)
            {
                page.Slug = page.Title.ToLower().Replace("", "-");
                var slug = await _repo.FirstOrDefault(x => x.Slug == page.Slug);

                if (slug != null)
                {
                    ModelState.AddModelError("", "There is already a page...!");
                    TempData["Warning"] = "The page is already exist..!";
                    return(View(page));
                }
                await _repo.Add(page);

                TempData["Success"] = "The page added..!";
                return(RedirectToAction("List"));
            }
            else
            {
                TempData["Error"] = "The page hasn't been added";
                return(RedirectToAction("List"));
            }
        }
예제 #14
0
 public void CreatePage(Page page)
 {
     pagesRepository.Add(page);
 }
예제 #15
0
 public Page Add(Page page)
 {
     return(_pageRepository.Add(page));
 }
예제 #16
0
        public IActionResult Create([FromBody] Models.Admin.Pages.Pages newentry)
        {
            var result = _repository.Add(newentry);

            return(CreatedAtRoute("GetPage", new { id = newentry.PagesID }, newentry));
        }
예제 #17
0
 public int AddPage(StaticPage page)
 {
     _pageRepository.Add(page);
     return(page.Id);
 }
예제 #18
0
 public async Task Add(PageViewModel pageVm)
 {
     var page = new PageViewModel().Map(pageVm);
     await _pageRepository.Add(page);
 }
예제 #19
0
        public void Add(PageViewModel pageVm)
        {
            var page = Mapper.Map <PageViewModel, Page>(pageVm);

            _pageRepository.Add(page);
        }
예제 #20
0
 public void CreatePage(Page Page)
 {
     PagesRepository.Add(Page);
 }
예제 #21
0
 //
 public async Task <PageStatistic> Add(PageStatistic entity)
 {
     return(_mapper.Map <PageStatistic>(await _repository.Add(_mapper.Map <PageStatisticDal>(entity))));
 }
예제 #22
0
 public void Add(Page page)
 {
     _pageRepository.Add(page);
 }
예제 #23
0
        public Page Add(Page page)
        {
            var pageAdd = _pageRepository.Add(page);

            return(pageAdd);
        }