/// <summary> /// Deletes the contest entry by the fileId, /// If the contest entry is allready approved, won't be deleted,,, /// </summary> /// <param name="fileId"></param> public void DeleteContestEntriesByFileId(long fileId) { var contestEntries = from l in _context.awContestEntries where l.fileId.Equals(fileId) //&& !l.isEnabled select l; if (contestEntries == null || contestEntries.Count() == 0) { return; } _context.awContestEntries.DeleteAllOnSubmit(contestEntries); //SEND EMAIL TO INFORM USER THAT THE CONTEST ENTRY NOT APPROVED AWAPI_BusinessLibrary.library.EmailTemplateLib lib = new EmailTemplateLib(); foreach (awContestEntry entry in contestEntries) { if (entry.awContest.sendEmailAfterDeleteEntryTemplateId == null) { break; } lib.Send(entry.awContest.sendEmailAfterDeleteEntryTemplateId.Value, entry.email, "firstname|" + entry.firstName, "lastname|" + entry.lastName, "date|" + DateTime.Now.ToString()); } _context.SubmitChanges(); }
/// <summary> /// /// </summary> /// <param name="contestEntryId"></param> /// <param name="isEnabled"></param> public void UpdateContestEntriesStatusesByFileId(long fileId, bool isEnabled) { var contestEntries = from l in _context.awContestEntries where l.fileId.Equals(fileId) select l; if (contestEntries == null || contestEntries.Count() == 0) { return; } foreach (awContestEntry entry in contestEntries) { entry.isEnabled = isEnabled; } _context.SubmitChanges(); //send email AWAPI_BusinessLibrary.library.EmailTemplateLib lib = new EmailTemplateLib(); foreach (awContestEntry entry in contestEntries) { if (entry.awContest.sendEmailAfterApproveEntryTemplateId == null) { break; } lib.Send(entry.awContest.sendEmailAfterApproveEntryTemplateId.Value, entry.email, "firstname|" + entry.firstName, "lastname|" + entry.lastName, "date|" + DateTime.Now.ToString()); } }
public void ResetPassword(long siteId, string email, string redirectLink) { awSite site = new SiteLibrary().Get(siteId); if (site == null || !site.isEnabled) { throw new Exception(ErrorLibrary.ErrorMessage(ErrorLibrary.SITE.DOES_NOT_EXIST)); } if (site.userResetPasswordEmailTemplateId == null) { throw new Exception(ErrorLibrary.ErrorMessage(ErrorLibrary.SITE.RESET_PASSWORD_TEMPLATE_DOES_NOT_EXIST)); } //GET THE USER awUser user = (from l in _context.awUsers where l.email.Equals(email) && l.isEnabled != false select l).FirstOrDefault(); if (user == null) { throw new Exception(ErrorLibrary.ErrorMessage(ErrorLibrary.USER.DOES_NOT_EXIST)); } //CREATE NEW PASSWORD const int PASSWORD_LENGTH = 6; string _allowedChars = "abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNOPQRSTUVWXYZ0123456789"; Random randNum = new Random(); char[] chars = new char[PASSWORD_LENGTH]; int allowedCharCount = _allowedChars.Length; for (int i = 0; i < PASSWORD_LENGTH; i++) { chars[i] = _allowedChars[(int)((_allowedChars.Length) * randNum.NextDouble())]; } string password = new string(chars); //FIRST SEND EMAIL BEFORE RESETING THE PASSWORD AWAPI_BusinessLibrary.library.EmailTemplateLib emailLib = new EmailTemplateLib(); awEmailTemplate template = emailLib.Get(site.userResetPasswordEmailTemplateId.Value); if (template == null) { throw new Exception(ErrorLibrary.ErrorMessage(ErrorLibrary.SITE.RESET_PASSWORD_TEMPLATE_DOES_NOT_EXIST)); } emailLib.Send(site.userResetPasswordEmailTemplateId.Value, email, "firstname|" + user.firstName, "lastname|" + user.lastName, "password|" + password, "link|" + redirectLink, "date|" + DateTime.Now.ToString()); //UPDATE PASSWORD UpdatePassword(user.userId, password); }
/// <summary> /// /// </summary> /// <param name="contestId"></param> /// <param name="userId"></param> /// <param name="isEnabled"></param> /// <param name="cultureCode"></param> /// <param name="email"></param> /// <param name="firstName"></param> /// <param name="lastName"></param> /// <param name="title"></param> /// <param name="description"></param> /// <param name="fileId"></param> /// <param name="fileUrl"></param> /// <param name="tel"></param> /// <param name="telType"></param> /// <param name="address"></param> /// <param name="city"></param> /// <param name="province"></param> /// <param name="postalCode"></param> /// <param name="country"></param> /// <returns></returns> public long AddContestEntry(long contestId, long?userId, bool isEnabled, string cultureCode, string email, string firstName, string lastName, string title, string description, long?fileId, string fileUrl, string tel, string telType, string address, string city, string province, string postalCode, string country) { long id = AWAPI_Common.library.MiscLibrary.CreateUniqueId(); ContestExtended contest = GetContest(contestId, true); if (contest == null) { throw new Exception(ErrorLibrary.ErrorMessage(ErrorLibrary.CONTEST.DOES_NOT_EXIST)); } awContestEntry entry = new awContestEntry(); if (String.IsNullOrEmpty(email) || !AWAPI_Common.library.Validation.IsEmail(email)) { throw new Exception(ErrorLibrary.ErrorMessage(ErrorLibrary.CONTEST.EMAIL_REQUIRED)); } if (String.IsNullOrEmpty(firstName) || String.IsNullOrEmpty(lastName)) { throw new Exception(ErrorLibrary.ErrorMessage(ErrorLibrary.CONTEST.FIRSTNAME_LASTNAME_REQUIRED)); } entry.contestEntryId = id; entry.contestId = contestId; entry.userId = userId; entry.isEnabled = isEnabled; entry.cultureCode = cultureCode; entry.email = email; entry.firstName = firstName; entry.lastName = lastName; entry.title = title; entry.description = description; entry.fileId = fileId; entry.fileUrl = fileUrl; entry.tel = tel; entry.telType = telType; entry.address = address; entry.city = city; entry.province = province; entry.postalCode = postalCode; entry.country = country; entry.createDate = DateTime.Now; _context.awContestEntries.InsertOnSubmit(entry); _context.SubmitChanges(); AWAPI_BusinessLibrary.library.EmailTemplateLib lib = new EmailTemplateLib(); //SEND EMAIL TO THE MODERATORS -------------------- if (contest.sendEmailToModeratorTemplateId != null && !String.IsNullOrEmpty(contest.sendEmailToModeratorRecipes)) { string link = ""; if (entry.fileId != null) { link = ConfigurationLibrary.Config.adminBaseUrl + "admin/files.aspx?fileid=" + entry.fileId.Value.ToString(); } lib.Send(entry.awContest.sendEmailToModeratorTemplateId.Value, contest.sendEmailToModeratorRecipes, "firstname|" + entry.firstName, "lastname|" + entry.lastName, "link|" + link, "date|" + DateTime.Now.ToString()); } //SEND EMAIL TO THE CONTENDER -------------------- if (contest.sendEmailAfterSubmissionTemplateId != null) { lib.Send(entry.awContest.sendEmailAfterSubmissionTemplateId.Value, entry.email, "firstname|" + entry.firstName, "lastname|" + entry.lastName, "date|" + DateTime.Now.ToString()); } return(id); }