Example #1
0
        public async Task <IActionResult> Create(WorkIM work)
        {
            if (!ModelState.IsValid)
            {
                AR.Setfailure(GetModelErrorMessage());
                return(Json(AR));
            }
            try
            {
                var model = _mapper.Map <Work>(work);

                model.CreatedBy   = User.Identity.Name;
                model.CreatedDate = DateTime.Now;

                //model.Body = WebUtility.HtmlEncode(page.Body);

                _context.Add(model);
                await _context.SaveChangesAsync();

                AR.SetSuccess(string.Format(Messages.AlertCreateSuccess, EntityNames.Work));
                return(Json(AR));
            }
            catch (Exception er)
            {
                AR.Setfailure(er.Message);
                return(Json(AR));
            }
        }
Example #2
0
        public async Task <IActionResult> Edit(int id, WorkIM work)
        {
            if (id != work.Id)
            {
                AR.Setfailure(Messages.HttpNotFound);
                return(Json(AR));
            }

            if (!ModelState.IsValid)
            {
                AR.Setfailure(GetModelErrorMessage());
                return(Json(AR));
            }


            try
            {
                var model = await _context.Works.SingleOrDefaultAsync(d => d.Id == id);

                model             = _mapper.Map(work, model);
                model.CreatedBy   = User.Identity.Name;
                model.CreatedDate = DateTime.Now;


                _context.Update(model);
                await _context.SaveChangesAsync();

                AR.SetSuccess(string.Format(Messages.AlertUpdateSuccess, EntityNames.Post));
                return(Json(AR));
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!WorkExists(work.Id))
                {
                    AR.Setfailure(Messages.HttpNotFound);
                    return(Json(AR));
                }
                else
                {
                    throw;
                }
            }
        }
Example #3
0
        // GET: Admin/Works/Edit/5
        public async Task <IActionResult> Edit(int?id)
        {
            var vm = new WorkIM();

            if (id == null)
            {
                vm.Active     = true;
                vm.FinishYear = DateTime.Now.Year;
            }
            else
            {
                var article = await _context.Works.FindAsync(id);

                if (article == null)
                {
                    return(NotFound());
                }

                vm = _mapper.Map <WorkIM>(article);

                var pm = await _context.PageMetas.FirstOrDefaultAsync(d => d.ModuleType == (short)ModuleType.ARTICLE && d.ObjectId == vm.Id.ToString());

                if (pm != null)
                {
                    vm.SEOTitle       = pm.Title;
                    vm.SEOKeywords    = pm.Keywords;
                    vm.SEODescription = pm.Description;
                }
            }
            var solutions = await _context.Solutions.AsNoTracking()
                            .OrderByDescending(d => d.Importance).ToListAsync();

            ViewData["Solutions"] = new SelectList(solutions, "Id", "Title");

            var clients = await _context.Clients.AsNoTracking()
                          .OrderByDescending(d => d.Importance).ToListAsync();

            ViewData["Clients"] = new SelectList(clients, "Id", "ClientName");

            return(View(vm));
        }
Example #4
0
        public async Task <IActionResult> Edit(WorkIM article)
        {
            if (!ModelState.IsValid)
            {
                AR.Setfailure(GetModelErrorMessage());
                return(Json(AR));
            }


            try
            {
                var pm = new PageMeta
                {
                    Title       = article.SEOTitle,
                    Description = article.SEODescription,
                    Keywords    = article.SEOKeywords,
                    ModuleType  = (short)ModuleType.ARTICLE
                };


                if (article.Id > 0)
                {
                    var model = await _context.Works.FirstOrDefaultAsync(d => d.Id == article.Id);

                    if (model == null)
                    {
                        AR.Setfailure(Messages.HttpNotFound);
                        return(Json(AR));
                    }
                    model = _mapper.Map(article, model);

                    model.UpdatedBy   = User.Identity.Name;
                    model.UpdatedDate = DateTime.Now;


                    _context.Entry(model).State = EntityState.Modified;
                    await _context.SaveChangesAsync();

                    AR.SetSuccess(string.Format(Messages.AlertUpdateSuccess, EntityNames.Work));
                    pm.ObjectId = model.Id.ToString();
                }
                else
                {
                    var model = _mapper.Map <Work>(article);

                    model.CreatedBy   = User.Identity.Name;
                    model.CreatedDate = DateTime.Now;


                    //model.Body = WebUtility.HtmlEncode(page.Body);

                    _context.Add(model);
                    await _context.SaveChangesAsync();

                    pm.ObjectId = model.Id.ToString();

                    AR.SetSuccess(string.Format(Messages.AlertCreateSuccess, EntityNames.Work));
                }



                await CreatedUpdatedPageMetaAsync(_context, pm);

                return(Json(AR));
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!WorkExists(article.Id))
                {
                    AR.Setfailure(Messages.HttpNotFound);
                    return(Json(AR));
                }
                else
                {
                    throw;
                }
            }
        }