private void InitSelectListItem(EArticle eArticle) { var Categories = GetCategories(); // csv.GetRecords<LEArticleCategory>().ToList(); Categories.ForEach(p => { p.Name = _localizer[p.Name]; }); eArticle.ComplexityRankSelectListItems = new List <SelectListItem> { new SelectListItem { Value = "0", Text = new string("\u269D") }, new SelectListItem { Value = "1", Text = new string('\u269D', 2) }, new SelectListItem { Value = "2", Text = new string('\u269D', 3) }, new SelectListItem { Value = "3", Text = new string('\u269D', 4) } }; eArticle.FirstCategorySelectListItems = Categories.Where(p => p.Code.Length == 3).Select(p => new SelectListItem { Value = p.Id.ToString() + "_" + p.Code, Text = p.Name }).ToList(); eArticle.SecondCategorySelectListItems = Categories.Where(p => p.Code.Length == 5).Select(p => new SelectListItem { Value = p.Id.ToString() + "_" + p.Code, Text = p.Name }).ToList(); }
public ActionResult Create() { LoadData(); ViewBag.Title = "Add article"; LoadData2(); var tab = new EArticle(); return(View(tab)); }
/// <summary> /// Initialize EArticleFiles and SelectListItems /// </summary> /// <param name="eArticle">EArticle</param> /// <returns></returns> #endregion private async Task <IActionResult> EArticleEditViewAsync(EArticle eArticle) { ViewData["EArticleFiles"] = await _context.EArticleFiles.Where(p => p.EArticleId == eArticle.Id).ToListAsync(); // eArticle.VideoSharedCodeSelectListItems = await GetVideoSharedCodeSelectListItemsForUser(); InitSelectListItem(eArticle); return(View(eArticle)); }
public ActionResult Update(int id) { ViewBag.Title = "Update Article"; using (var db = new MyDbDataContext()) { Article detailArticle = db.Articles.FirstOrDefault(a => a.ID == id); if (detailArticle == null) { TempData["Messages"] = "does not exist"; return(RedirectToAction("Index")); } List <SelectListItem> listmenu = new List <SelectListItem>(); foreach (var b in db.TabArticles.ToList()) { listmenu.Add(new SelectListItem() { Value = b.Title, Text = b.ID.ToString() }); } ViewBag.ListMenu3 = new SelectList(listmenu, "Text", "Value"); var artile = new EArticle { ID = detailArticle.ID, MenuID = detailArticle.MenuID, Title = detailArticle.Title, Alias = detailArticle.Alias, Image = detailArticle.Image, Description = detailArticle.Description, Content = detailArticle.Content, MetaTitle = detailArticle.MetaTitle, MetaDescription = detailArticle.MetaDescription, Status = detailArticle.Status, Home = detailArticle.Home, Hot = detailArticle.Hot, New = detailArticle.New, Value = detailArticle.Value, About = detailArticle.About, }; List <MenuTap> tabTheme = db.MenuTaps.Where(x => x.ArticleID == detailArticle.ID).ToList(); if (!string.IsNullOrEmpty(tabTheme.ToString())) { List <string> termList = new List <string>(); foreach (var item in tabTheme) { termList.Add(item.TapID.ToString()); } string[] select = termList.ToArray(); artile.Theme = select; } LoadData(); return(View(artile)); } }
private async Task SaveArticleFilesAsync(EArticle eArticle) { if (eArticle.LAttachments?.Count() < 1 || eArticle.LVideos?.Count() < 1) { return; } var _EArticleFiles = new List <EArticleFile>(); var _LFiles_ = new List <LFile>(); var UserId_ = _userManager.GetUserAsync(User).GetAwaiter().GetResult().Id; if (eArticle.LAttachments?.Count() > 0) { foreach (var i in eArticle.LAttachments) { if (i?.Length < 1) { continue; } var MD5_ = await _xUserFileHelper.LWriteBufferToFileAsync(_hostingEnv, i); _EArticleFiles.Add(new EArticleFile { EArticleId = eArticle.Id, FileName = System.IO.Path.GetFileName(i.FileName), FileMD5 = MD5_, IsEArticleVideo = false }); _LFiles_.Add(new LFile { UserId = UserId_, MD5 = MD5_ }); } } if (eArticle.LVideos?.Count() > 0) { foreach (var i in eArticle.LVideos) { if (i?.Length < 1) { continue; } var MD5_ = await _xUserFileHelper.LWriteBufferToFileAsync(_hostingEnv, i); _EArticleFiles.Add(new EArticleFile { EArticleId = eArticle.Id, FileName = System.IO.Path.GetFileName(i.FileName), FileMD5 = MD5_, IsEArticleVideo = true }); _LFiles_.Add(new LFile { UserId = UserId_, MD5 = MD5_ }); } } await _context.EArticleFiles.AddRangeAsync(_EArticleFiles); await _context.LFile.AddRangeAsync(_LFiles_); return; }
public ActionResult Create(EArticle model) { using (var db = new MyDbDataContext()) { if (ModelState.IsValid) { if (string.IsNullOrEmpty(model.Alias)) { model.Alias = StringHelper.ConvertToAlias(model.Alias); } try { var article = new Article { MenuID = model.MenuID, Title = model.Title, Alias = model.Alias, Image = model.Image, Description = model.Description, Content = model.Content, Index = 0, MetaTitle = string.IsNullOrEmpty(model.MetaTitle) ? model.Title : model.MetaTitle, MetaDescription = string.IsNullOrEmpty(model.MetaDescription) ? model.Title : model.Description, Status = model.Status, Home = model.Home, Hot = model.Hot, New = model.New, TripLao = model.TripLao, TripCambodia = (bool)model.TripCambodia, TripvietNam = (bool)model.TripVietNam }; db.Articles.InsertOnSubmit(article); db.SubmitChanges(); TempData["Messages"] = "Successful"; return(RedirectToAction("Index")); } catch (Exception exception) { LoadData(); ViewBag.Messages = "Error: " + exception.Message; return(View()); } } LoadData(); return(View()); } }
public ActionResult Update(EArticle model) { using (var db = new MyDbDataContext()) { if (string.IsNullOrEmpty(model.Alias)) { model.Alias = StringHelper.ConvertToAlias(model.Alias); } try { Article article = db.Articles.FirstOrDefault(b => b.ID == model.ID); if (article != null) { article.MenuID = model.MenuID; article.Title = model.Title; article.Alias = model.Alias; article.Image = model.Image; article.Description = model.Description; article.Content = model.Content; article.MetaTitle = string.IsNullOrEmpty(model.MetaTitle) ? model.Title : model.MetaTitle; article.MetaDescription = string.IsNullOrEmpty(model.MetaDescription) ? model.Title : model.MetaDescription; article.Status = model.Status; article.Home = model.Home; article.Hot = model.Hot; article.New = model.New; article.TripLao = model.TripLao; article.TripvietNam = model.TripVietNam; article.TripCambodia = model.TripCambodia; db.SubmitChanges(); //db.SubmitChanges(); TempData["Messages"] = "Successful"; return(RedirectToAction("Index")); } } catch (Exception exception) { LoadData(); ViewBag.Messages = "Error: " + exception.Message; return(View()); } } LoadData(); return(View(model)); }
public async Task <IActionResult> Create( [Bind("Id,Title,Content,LVideos,LAttachments,CategoryId,AdditionalCategory,ComplexityRank")][FromForm] EArticle eArticle) { if (ModelState.IsValid) { #region INTERVAL_THRESHOLD var _CurrentDOPublishing = await _context.EArticle.OrderByDescending(p => p.DOPublishing).Select(p => p.DOPublishing).FirstOrDefaultAsync(); if ((DateTimeOffset.Now - _CurrentDOPublishing).Minutes < 5) { ModelState.AddModelError(string.Empty, _localizer["The system detects that you may be a robot"]); return(await EArticleEditViewAsync(eArticle)); } #endregion if (eArticle.Title.Length < 2 || eArticle.Content.Length < 20) { ViewData["EArticleFiles"] = await _context.EArticleFiles.Where(p => p.EArticleId == eArticle.Id).ToListAsync(); eArticle.LAttachments = null; eArticle.LVideos = null; return(View(eArticle)); } var Create_SetId = Guid.Parse(TempData["Create_SetId"]?.ToString() ?? Guid.Empty.ToString()); var UserId_ = _userManager.GetUserAsync(User).GetAwaiter().GetResult().Id; var _EArticleFiles = new List <EArticleFile>(); // eArticle.Id = Guid.NewGuid(); eArticle.UserId = UserId_; eArticle.Content = _htmlSanitizer.Sanitize(eArticle.Content); eArticle.SetId = Create_SetId; await _context.AddAsync(eArticle); // _context.Add(eArticle); #region SAVE_FILES await SaveArticleFilesAsync(eArticle); #endregion await _context.SaveChangesAsync(); return(Ok()); // RedirectToAction(nameof(XIndex),new { SetId =Create_SetId}); } return(await EArticleEditViewAsync(eArticle)); }
// GET: EduHub/EArticles/Create #endregion public async Task <IActionResult> Create(Guid?SetId) { var UserId_ = _userManager.GetUserAsync(User).GetAwaiter().GetResult().Id; if (SetId == null || !await _context.UserEArticleSet.AnyAsync(p => p.Id == SetId && p.UserId == UserId_)) { SetId = LValue.DefaultEArticleSetId; } var _LUserFile = await _context.LUserFile.Where(p => p.UserId == UserId_).ToListAsync(); //<<<<<<<< var _EArticle = new EArticle(); InitSelectListItem(_EArticle); TempData["Create_SetId"] = SetId; return(View(_EArticle)); }
public async Task <IActionResult> Edit(Guid id, [Bind("Id,Title,Content,LVideos,LAttachments,CategoryId,AdditionalCategory,ComplexityRank")] EArticle eArticle) { if (id != eArticle.Id) { return(NotFound()); } if (ModelState.IsValid) { try { var UserId_ = _userManager.GetUserAsync(User).GetAwaiter().GetResult().Id; var _EArticle = await _context.EArticle.Where(p => p.Id == eArticle.Id && p.UserId == UserId_).FirstOrDefaultAsync(); #region UPDATE _EArticle.Content = _htmlSanitizer.Sanitize(eArticle.Content); _EArticle.DOUpdating = DateTimeOffset.Now; // _EArticle.VideoSharedCode = eArticle.VideoSharedCode; _EArticle.Title = eArticle.Title; _EArticle.ComplexityRank = eArticle.ComplexityRank; _EArticle.CategoryId = eArticle.CategoryId; _EArticle.AdditionalCategory = eArticle.AdditionalCategory; #endregion await SaveArticleFilesAsync(eArticle); await _context.SaveChangesAsync(); return(Ok()); // RedirectToAction(nameof(XIndex), new { _EArticle.SetId }); // _page = TempData["_page"], IsIndividual = TempData["IsIndividual"] }); } catch (DbUpdateConcurrencyException) { if (!EArticleExists(eArticle.Id)) { return(NotFound()); } else { throw; } } } return(await EArticleEditViewAsync(eArticle)); }
public ActionResult Update(int id) { ViewBag.Title = "Update Article"; using (var db = new MyDbDataContext()) { Article detailArticle = db.Articles.FirstOrDefault(a => a.ID == id); if (detailArticle == null) { TempData["Messages"] = "does not exist"; return(RedirectToAction("Index")); } var artile = new EArticle { ID = detailArticle.ID, MenuID = detailArticle.MenuID, Title = detailArticle.Title, Alias = detailArticle.Alias, Image = detailArticle.Image, Description = detailArticle.Description, Content = detailArticle.Content, MetaTitle = detailArticle.MetaTitle, MetaDescription = detailArticle.MetaDescription, Status = detailArticle.Status, Home = detailArticle.Home, Hot = detailArticle.Hot, New = detailArticle.New, TripVietNam = (bool)detailArticle.TripvietNam, TripCambodia = (bool)detailArticle.TripCambodia, TripLao = (bool)detailArticle.TripLao }; LoadData(); return(View(artile)); } }
public ActionResult Update(EArticle model) { using (var db = new MyDbDataContext()) { if (ModelState.IsValid) { if (string.IsNullOrEmpty(model.Alias)) { model.Alias = StringHelper.ConvertToAlias(model.Alias); } try { Article article = db.Articles.FirstOrDefault(b => b.ID == model.ID); if (article != null) { article.MenuID = model.MenuID; article.Title = model.Title; article.Alias = model.Alias; article.Image = model.Image; article.Description = model.Description; article.Content = model.Content; article.MetaTitle = string.IsNullOrEmpty(model.MetaTitle) ? model.Title : model.MetaTitle; article.MetaDescription = string.IsNullOrEmpty(model.MetaDescription) ? model.Title : model.MetaDescription; article.Status = model.Status; article.Home = model.Home; article.Hot = model.Hot; article.New = model.New; article.Value = model.Value; article.About = model.About; db.SubmitChanges(); db.MenuTaps.DeleteAllOnSubmit(db.MenuTaps.Where(a => a.ArticleID == article.ID).ToList()); if (model.Theme != null) { for (int i = 0; i < model.Theme.Length; i++) { var tabTheme = new MenuTap { ArticleID = article.ID, TapID = int.Parse(model.Theme[i]), }; db.MenuTaps.InsertOnSubmit(tabTheme); db.SubmitChanges(); } } TempData["Messages"] = "Successful"; return(RedirectToAction("Index")); } } catch (Exception exception) { LoadData(); ViewBag.Messages = "Error: " + exception.Message; return(View()); } } LoadData(); return(View(model)); } }
public ActionResult Create(EArticle model) { using (var db = new MyDbDataContext()) { if (ModelState.IsValid) { if (string.IsNullOrEmpty(model.Alias)) { model.Alias = StringHelper.ConvertToAlias(model.Alias); } try { var article = new Article { MenuID = model.MenuID, Title = model.Title, Alias = model.Alias, Image = model.Image, Description = model.Description, Content = model.Content, Index = 0, MetaTitle = string.IsNullOrEmpty(model.MetaTitle) ? model.Title : model.MetaTitle, MetaDescription = string.IsNullOrEmpty(model.MetaDescription) ? model.Title : model.Description, Status = model.Status, Home = model.Home, Hot = model.Hot, New = model.New, Value = model.Value, About = model.About, CreateDate = DateTime.Now, }; db.Articles.InsertOnSubmit(article); db.SubmitChanges(); if (model.Theme != null) { for (int i = 0; i < model.Theme.Length; i++) { var tabTheme = new MenuTap { ArticleID = article.ID, TapID = int.Parse(model.Theme[i]), }; db.MenuTaps.InsertOnSubmit(tabTheme); db.SubmitChanges(); } } TempData["Messages"] = "Successful"; return(RedirectToAction("Index")); } catch (Exception exception) { LoadData(); ViewBag.Messages = "Error: " + exception.Message; return(View()); } } LoadData(); return(View()); } }