public static void FillNewsTypes(CreateNewsViewModel model) { model.NewsTypes = Enum.GetNames(typeof(NewsTypes.NewsCategory)).Select(category => new SelectListItem() { Text = category, Value = category }); }
public async Task <IActionResult> AddNews(CreateNewsViewModel model) { if (ModelState.IsValid) { string ImageUrl = ""; if (model.Image != null) { DropBoxManager dropBoxManager = new DropBoxManager(_configuration["DropBoxAccessToken"]); ImageUrl = await dropBoxManager.Upload($"{model.CompanyName}/news", model.Image.FileName, model.Image); } News news = new News { Text = model.Text, CompanyId = model.CompanyId, Heading = model.Heading, Image = ImageUrl, Date = DateTime.Now }; _applicationContext.News.Add(news); await _applicationContext.SaveChangesAsync(); return(RedirectToAction("Index", "Company", new { id = model.CompanyName })); } return(View(model)); }
public IActionResult Create() { CreateNewsViewModel createNewsViewModel = new CreateNewsViewModel(); createNewsViewModel.Categories = new SelectList(_newsService.GetCategories(), "Id", "Title"); return(View(createNewsViewModel)); }
private async Task <CreateNewsViewModel> getNewsModel(string Id) { var model = new CreateNewsViewModel(); try { var newsFromCache = _cacheManager.Get <List <NewsModel> >("NewsItems").FirstOrDefault(n => n.Id == Id); if (newsFromCache != null) { var json = SerializeObject(newsFromCache); model = DeserializeObject <CreateNewsViewModel>(json); } else { var responseBody = await _fileUploader.GetFileFromS3(@"News/NewsItems/" + Id + ".json"); model = DeserializeObject <CreateNewsViewModel>(responseBody); } var newsCategories = await GetNewsCategories(); model.NewsCategories = newsCategories.Categories.Select(s => new SelectListItem { Text = s.Name, Value = s.CategoryId.ToString() }).ToList(); return(model); } catch (Exception ex) { //ignore } return(model); }
public async Task <ActionResult> News(string id) { if (HttpContext.Session.GetString("Name") == null) { return(RedirectToAction("Create", "News")); } var model = new CreateNewsViewModel { Id = Guid.NewGuid().ToString(), CreatedBy = HttpContext.Session.GetString("Name"), CreatedDate = DateTime.Today.ToShortDateString(), NewsCategories = _newsCategories.Categories.Select(s => new SelectListItem { Text = s.Name, Value = s.CategoryId.ToString() }).ToList() }; if (!string.IsNullOrEmpty(id)) { model = await getNewsModel(id); } return(View(model)); }
public async Task <IActionResult> Create(CreateNewsViewModel model) { if (ModelState.IsValid) { var idToken = await HttpContext.GetTokenAsync("access_token"); model.news.DatePublication = DateTime.Now; model.news.estAffichePremier = false; model.news.ImageName = createImage(model.news.Id, model.image); model.news.PublieParUserId = User.Claims.FirstOrDefault(x => x.Type.ToString() == "sub").Value; try { var result = await newsService.CreateNewstAsync(model.news, idToken); return(RedirectToAction("ListeNews")); } catch (Exception ex) { ErrorViewModel vme = new ErrorViewModel() { RequestId = ex.Message }; return(View("Error", vme)); } } return(View(model)); }
public async Task <IActionResult> CreateAsync(CreateNewsViewModel createNewsViewModel) { if (!ModelState.IsValid) { return(View(createNewsViewModel)); } if (this.newsService.GetAll(x => x.Title == createNewsViewModel.Title).FirstOrDefault() != null) { string titleName = nameof(createNewsViewModel.Title); this.ModelState.AddModelError(titleName, string.Format("A news with this {0} already exists!", titleName)); return(View(createNewsViewModel)); } News newsDb = new News { Title = createNewsViewModel.Title, Content = createNewsViewModel.Content, UserId = this.GetCurrentUserId() }; newsService.Save(newsDb); bool isSaved = await unitOfWork.CommitAsync(); if (!isSaved) { TempData["ErrorMessage"] = "Ooops, something went wrong"; return(View(createNewsViewModel)); } TempData["SuccessMessage"] = "News created successfully!"; return(RedirectToListAllActionInCurrentController()); }
public async Task <IActionResult> AddNews([FromBody] CreateNewsViewModel model) { var result = default(ApiResult); var news = new News { Description = model.Description, ImagePath = model.ImagePath, PostDate = model.PostDate, Title = model.Title }; try { await context.News.AddAsync(news); await context.SaveChangesAsync(); result = ApiResult.CreateResult(ApiStatus.Ok, "News added"); } catch (Exception ex) { result = ApiResult.CreateResult(ApiStatus.ApplicationError, ex.Message); return(this.GetActionResult(result)); } return(this.GetActionResult(result)); }
// GET: ManageNews/Create public ActionResult Create() { var model = new CreateNewsViewModel(); ManageNewsServices.FillNewsTypes(model); return(View(new HeaderedPageModel <CreateNewsViewModel>("Yeni Haber Oluştur", model) { })); }
public async Task <IActionResult> Create() { var model = new CreateNewsViewModel() { Sources = new SelectList(await _rssSourceService.GetAllRssSourceAsync(false), "Id", "Name") }; return(View(model)); }
public async Task <IActionResult> Create(CreateNewsViewModel input) { if (!this.ModelState.IsValid) { return(this.View(input)); } var user = await this.UserManager.GetUserAsync(this.User); var news = await this.NewsService.CreateNews(input, user); return(this.RedirectToAction("GetNews")); }
public ActionResult CreateNews(CreateNewsViewModel model) { _ctx.News.Add(new Models.EF.News { Description = model.Description, ImgUrl = model.ImgUrl, RealeseDate = model.RealeseDate, Title = model.Title }); _ctx.SaveChanges(); return(RedirectToAction("Index", "Home", new { area = "" })); }
public ActionResult CreateNews(CreateNewsViewModel news) { if (!ModelState.IsValid) { return(View(news)); } if (NewsService.Create(news.ToEntity())) { return(RedirectToAction("Index", "News")); } return(View()); }
public ActionResult Create(CreateNewsViewModel model) { _context.News.Add(new Models.Entity.News { Description = model.Description, ImageURL = model.ImageURL, ReleaseDate = model.ReleaseDate, Title = model.Title }); _context.SaveChanges(); return(RedirectToAction("Index", "Home")); }
public IActionResult AddNews(string companyName) { Company company = _applicationContext.Companies.FirstOrDefault(c => c.Name.Equals(companyName)); if (company == null || !IsItTheOwner(company.UserId)) { return(RedirectToAction("Index", "Home")); } CreateNewsViewModel model = new CreateNewsViewModel { CompanyId = company.Id, CompanyName = company.Name }; return(View(model)); }
public IActionResult Create(CreateNewsViewModel createNewsViewModel) { if (ModelState.IsValid) { News news = _mapper.Map <News>(createNewsViewModel); news.WriterId = _userManager.GetUserId(User); int newsId = _newsService.AddNews(news); return(RedirectToAction("Index", new { id = newsId })); } createNewsViewModel.Categories = new SelectList(_newsService.GetCategories(), "Id", "Title"); return(View(createNewsViewModel)); }
public IActionResult Edit([FromRoute] int id, [FromForm] CreateNewsViewModel model) { News news = _context.news.FirstOrDefault(s => s.Id == id); if (news == null) { return(NotFound()); } news.Title = model.Title; news.Body = model.Body; news.datetime = model.dateTime; _context.SaveChanges(); return(RedirectToAction("index")); }
public async Task <IActionResult> Insert(CreateNewsViewModel model) { if (!ModelState.IsValid) { return(Json(new { status = 100, //you can see the datails of status code in ~/Global/statusCodes errors = ModelState.Values.Where(e => e.Errors.Count > 0).ToList(), message = "لطفا در وارد کردن اطلاعات دقت کنید" })); } var News = new tbl_News { Title = model.Title, Abstract = model.Abstract, Description = model.Description, Photo = model.Photo, IsDelete = false, CreationDate = DateTime.Now }; //todo sms verification try { await db.News.AddAsync(News); var result = await db.SaveChangesAsync(); return(new JsonResult(new { status = 200, //you can see the datails of status code in Global/statusCode error = 0, message = "خبر با موفقیت اضافه شد" })); } catch (Exception e) { ModelState.AddModelError("", e.Message); return(new JsonResult(new { status = 600, //you can see the datails of status code in ~/Global/statusCodes errors = ModelState.Values.Where(e => e.Errors.Count > 0).ToList(), message = "هنگام افزودن خبر مشکلی رخ داد لطفا بعدا تلاش کنید" })); } }
public async Task <IActionResult> Edit(CreateNewsViewModel model) { try { if (ModelState.IsValid) { News news = new News(); news = model.news; var idToken = await HttpContext.GetTokenAsync("access_token"); if (model.PathLogo == null && news.ImageName != null) { deleteDirectory(news.Id.ToString()); news.ImageName = ""; } if (model.image != null) { if (news.ImageName != null) { deleteFile(news.Id, news.ImageName); news.ImageName = ""; } news.ImageName = createImage(news.Id, model.image); } news.DatePublication = DateTime.Now; news.PublieParUserId = User.Claims.FirstOrDefault(x => x.Type.ToString() == "sub").Value; var result = newsService.UpdateNewsAsync(model.news, idToken); return(RedirectToAction("ListeNews")); } return(View(model)); } catch (Exception ex) { ErrorViewModel vme = new ErrorViewModel() { RequestId = ex.Message }; return(View("Error", vme)); } }
public IActionResult Edit([FromRoute] int id) { News news = _context.news.FirstOrDefault(s => s.Id == id); if (news == null) { return(NotFound()); } CreateNewsViewModel model = new CreateNewsViewModel { Title = news.Title, Body = news.Body, dateTime = news.datetime }; return(View(model)); }
public ActionResult CreateNews(CreateNewsViewModel model) { if (!ModelState.IsValid) { TempData["AddNewsStatus"] = "alert('標題長度限制為25字以內');"; } else { var instance = Mapper.Map <CreateNewsViewModel, News>(model); var result = newsService.CreateNews(instance); if (!result.Success) { TempData["AddNewsStatus"] = "alert('新增失敗, 請稍後再試');"; } } return(RedirectToAction("Index")); }
public async Task <IActionResult> Create(CreateNewsViewModel model) { var imageNameToSave = Guid.NewGuid() + ".jpg"; var role = await this.newsService.CreateNewsAsync(model.CreatedOn, model.Title, model.Text, imageNameToSave); using (var ms = new MemoryStream()) { model.Image.CopyTo(ms); var uploads = Path.Combine(this.hostingEnvironment.WebRootPath, "images"); var filePath = Path.Combine(uploads, imageNameToSave); using (var fileStream = new FileStream(filePath, FileMode.Create)) { await model.Image.CopyToAsync(fileStream); } } return(this.RedirectToAction("Index", "News")); }
public async Task <News> CreateNews(CreateNewsViewModel input, ApplicationUser user) { var uploadResult = await this.Cloudinary.UploadAsync(input.Image); var news = AutoMapperConfig.MapperInstance.Map <News>(input); news.ImageUrl = uploadResult; news.User = user; news.UserId = user.Id; news.User.News.Add(news); await this.NewsRepository.AddAsync(news); await this.NewsRepository.SaveChangesAsync(); await this.UsersRepository.SaveChangesAsync(); return(news); }
public IActionResult Create([FromForm] CreateNewsViewModel model) { if (ModelState.IsValid) { News news = new News { Title = model.Title, Body = model.Body, datetime = model.dateTime }; _context.news.Add(news); _context.SaveChanges(); return(RedirectToAction("index")); } return(View(model)); }
public ActionResult CreateNews(CreateNewsViewModel model, HttpPostedFileBase imageFile) { var category = context.Categories .FirstOrDefault(x => x.Name.Equals(model.Category)); var news = new News { Category = category, Content = model.Content, Date = DateTime.Parse(model.Date), Header = model.Header }; news.Image = ImageHelper.SaveImage(Server, imageFile, isNews: true); context.News.Add(news); context.SaveChanges(); return(RedirectToAction(nameof(Index))); }
public async Task <IActionResult> Aggregate(CreateNewsViewModel createNewsViewModel) { var rsssouses = await _rssSourceService.GetAllRssSourceAsync(false); var newInfos = new List <NewsInfoFromRssSourseDto>(); // without any duplicate foreach (var item in rsssouses) { if (/*item.Name.Equals("TUT.by")||*/ item.Name.Equals("Onliner") || item.Name.Equals("igromania") || item.Name.Equals("OON")) { var newsList = await _newsService.GetNewsInfoFromRssSourse(item); newInfos.AddRange(newsList); } } ; await _newsService.CreateManyNewsAsync(newInfos); return(RedirectToAction(nameof(Index))); }
public async Task <IActionResult> CreateNews(CreateNewsViewModel model) { CreateViewModelForNews newModel = new CreateViewModelForNews(); if ( (model.Title != null) && (model.Title != "") && (model.Description != null) && (model.Description != "") ) { News news = new News() { AuthorId = model.AuthorId, CompanyId = model.CompanyId, Title = mark.Transform(model.Title), Description = mark.Transform(model.Description), Photo = model.Photo, ReleaseDate = DateTime.Now, LastUpdate = DateTime.Now }; EntityEntry <News> e = await _context.News.AddAsync(news); _context.SaveChanges(); News i = e.Entity; newModel = new CreateViewModelForNews() { News = i, AuthorId = i.AuthorId, CompanyId = i.CompanyId, }; news.Saved = true; _context.SaveChanges(); } return(View("Create", newModel)); }
public async Task <IActionResult> Edit(Guid id) { try { CreateNewsViewModel model = new CreateNewsViewModel(TAILLEMAXPHOTO); model.news = await newsService.GetNewsAsync(id); if (model.news.ImageName != null) { model.PathLogo = Path.Combine("\\", "img", "News", model.news.Id.ToString(), "Image", model.news.ImageName); } return(View(model)); } catch (Exception ex) { ErrorViewModel vme = new ErrorViewModel() { RequestId = ex.Message }; return(View("Error", vme)); } }
public IActionResult Create() { var model = new CreateNewsViewModel(); return(this.View(model)); }
public async Task <IActionResult> Create(CreateNewsViewModel createNewsViewModel) { var a = await _rssSourceService.GetAllRssSourceAsync(false);// return(RedirectToAction(nameof(Index))); }