public async Task GetAnnouncementDetails_Returns_Data() { var _announcementIdString = Util.Encrypt(13); var _expectedResult = new AnnouncementDetailsModel() { AgencyCode = "", AgencyName = "وزارة الصحة - الديوان العام", AnnouncementId = 13, AnnouncementIdString = "4D*@@**CkYL*@@**L*@@**yHtLTllLUmsg==", AnnouncementJoinRequestsCount = 1, AnnouncementName = "اعلان اول", AnnouncementPeriod = 1, BranchName = "فرع ابراهيم 1", CreatedBy = "مدخل وسكرتير نظام المنافسات والمشتريات | 5555555555", Details = "تفاصيل" }; var result = await _announcementController.GetAnnouncementDetails(_announcementIdString); Assert.NotNull(result); Assert.IsType <AnnouncementDetailsModel>(result); Assert.Equal(_expectedResult.AgencyCode, result.AgencyCode); Assert.Equal(_expectedResult.AgencyName, result.AgencyName); Assert.Equal(_expectedResult.AnnouncementId, result.AnnouncementId); Assert.Equal(_expectedResult.AnnouncementIdString, result.AnnouncementIdString); Assert.Equal(_expectedResult.AnnouncementJoinRequestsCount, result.AnnouncementJoinRequestsCount); Assert.Equal(_expectedResult.AnnouncementName, result.AnnouncementName); Assert.Equal(_expectedResult.AnnouncementPeriod, result.AnnouncementPeriod); Assert.Equal(_expectedResult.BranchName, result.BranchName); Assert.Equal(_expectedResult.CreatedBy, result.CreatedBy); Assert.Equal(_expectedResult.Details, result.Details); }
public ActionResult Confirm(int id, string hash) { AnnouncementDetailsModel announcement = GetAnnouncementById(id); string computedHash = ToHash(id, announcement.Email); if (computedHash == hash) { HttpResponseMessage response = ConfirmAnnouncement(id, announcement.Email); if (response.IsSuccessStatusCode) { ViewBag.Confirmation = "Your announcement has been successfully posted!"; return(View()); } else { ViewBag.Confirmation = "There was a problem posting your announcement!"; return(View()); } } else { ViewBag.Confirmation = "Forbidden!"; return(View()); } }
public AnnouncementDetailsModel GetAnnouncementById(int id) { RestClient <AnnouncementDetailsModel> rc = new RestClient <AnnouncementDetailsModel>(); rc.WebServiceUrl = "http://localhost:61144/api/announcements/"; AnnouncementDetailsModel announcement = rc.GetById(id); return(announcement); }
public ActionResult Edit(int id) { AnnouncementDetailsModel announcement = GetAnnouncementById(id); AnnouncementEditModel newAnnouncement = new AnnouncementEditModel(); newAnnouncement.AnnouncementId = announcement.AnnouncementId; newAnnouncement.Phonenumber = announcement.Phonenumber; newAnnouncement.Email = announcement.Email; newAnnouncement.Title = announcement.Title; newAnnouncement.Description = announcement.Description; newAnnouncement.CategoryId = announcement.CategoryId; ViewBag.Categories = GetCategories(); return(View(newAnnouncement)); }
public ActionResult Create(AnnouncementCreateModel announcement) { AnnouncementDetailsModel result = PostAnnouncement(announcement); MailMessage message = new MailMessage(); message.To.Add(announcement.Email); message.Subject = announcement.Title; var callbackUrl = Url.Action("Confirm", "Announcements", new { id = result.AnnouncementId, hash = ToHash(result.AnnouncementId, announcement.Email) }, protocol: Request.Url.Scheme); message.Body = "Please confirm your announcement by clicking <a href=\"" + callbackUrl + "\">here</a>"; message.IsBodyHtml = true; SendEmail(message); return(RedirectToAction("List")); }
//[ValidateAntiForgeryToken] public ActionResult VerifyEmail(int id, EmailTextBox txtBox) { AnnouncementDetailsModel announcement = GetAnnouncementById(id); if (announcement.Email == txtBox.Email) { if (!(announcement.Closed)) { return(RedirectToAction("Edit", new { id = announcement.AnnouncementId })); } else { ViewBag.Error = "This announcement is closed! Cannot edit!"; } } else { ViewBag.Error = "Input data is incorrect!"; } return(View()); }
public async Task <ActionResult> GetAnnouncementDetails(string AnnouncementIdString) { try { AnnouncementDetailsModel announcementDetailsModel = await _ApiClient.GetAsync <AnnouncementDetailsModel>("Announcement/GetAnnouncementDetails/" + AnnouncementIdString, null); return(View(announcementDetailsModel)); } catch (AuthorizationException ex) { throw ex; } catch (BusinessRuleException ex) { AddError(ex.Message); return(RedirectToAction(nameof(Index))); } catch (Exception ex) { _logger.LogError(ex.ToString(), ex); AddError(Resources.TenderResources.ErrorMessages.UnexpectedError); return(RedirectToAction(nameof(Index))); } }
public ActionResult Details(int id) { AnnouncementDetailsModel announcement = GetAnnouncementById(id); return(View(announcement)); }