/// <summary> /// Send notification to user when password reset event completed successfully /// </summary> /// <param name="emailSender"></param> /// <param name="context"></param> /// <param name="email"></param> /// <param name="username"></param> /// <param name="link"></param> /// <param name="password"></param> /// <returns></returns> public static Task SendEmailConfirmationAsync(this IEmailSender emailSender, ApplicationDbContext context, string email, string username, string link, string password) { if (Settings.Configs.SmtpSettings.enable_email) { var lst = MailTemplateBLL.Get_Template(context, "USRREG").Result; if (lst.Count > 0) { if (username.Contains("@")) { username = "******"; } string subject = MailProcess.Process2(lst[0].subject, "\\[username\\]", username); subject = MailProcess.Prepare_Email_Signature(subject); string contents = MailProcess.Process2(lst[0].contents, "\\[username\\]", username); contents = MailProcess.Process2(contents, "\\[email\\]", email); contents = MailProcess.Process2(contents, "\\[password\\]", password); string url = "<a href=\"" + link + "\">" + link + "</a>"; contents = MailProcess.Process2(contents, "\\[key_url\\]", System.Text.Encodings.Web.HtmlEncoder.Default.Encode(link)); // attach signature contents = MailProcess.Prepare_Email_Signature(contents); return(emailSender.SendEmailAsync(email, subject, contents)); } } return(Task.CompletedTask); }
/// <summary> /// Send email through contact us form /// </summary> /// <param name="emailSender"></param> /// <param name="context"></param> /// <param name="email"></param> /// <param name="entity"></param> /// <returns></returns> public static Task ContactUsEmailAsync(this IEmailSender emailSender, ApplicationDbContext context, string email, ContactUsViewModel entity) { if (Settings.Configs.SmtpSettings.enable_email) { var lst = MailTemplateBLL.Get_Template(context, "CONTACTUS").Result; if (lst.Count > 0) { string subject = MailProcess.Process2(lst[0].subject, "\\[fullname\\]", entity.SenderName); subject = MailProcess.Prepare_Email_Signature(subject); string contents = MailProcess.Process2(lst[0].contents, "\\[fullname\\]", entity.SenderName); contents = MailProcess.Process2(contents, "\\[phone\\]", entity.PhoneNumber); contents = MailProcess.Process2(contents, "\\[email\\]", entity.EmailAddress); contents = MailProcess.Process2(contents, "\\[message\\]", entity.Body); // attach signature contents = MailProcess.Process2(contents, "\\[website\\]", Settings.Configs.GeneralSettings.website_title); contents = MailProcess.Process2(contents, "\\[website_url\\]", SiteConfiguration.URL); contents = MailProcess.Prepare_Email_Signature(contents); return(emailSender.SendEmailAsync(email, subject, contents)); } } return(Task.CompletedTask); }
protected void btn_add_Click(object sender, System.EventArgs e) { string value = txt_content.Value; if (txt_key.Text == "") { Config.ShowMessageV2(msg, "Please enter valid template key", "Error!", 0); return; } if (MailTemplateBLL.Validate_TemplateKey(txt_key.Text)) { Config.ShowMessageV2(msg, "Template key already exist", "Error!", 0); return; } string description = txt_description.Text; if (description.Length > 100) { description = description.Substring(0, 95); } MailTemplateBLL.Add(txt_key.Text, description, txt_subjecttags.Text, txt_contenttags.Text, txt_subject.Text, value, drp_sorttype.SelectedValue); Response.Redirect(Config.GetUrl("adm/sc/mail/Default.aspx?status=added")); }
// Send mail to owner of group if user posted new topic in group private void GroupMailProcessTemplate(string ownerusername, string title, string username, string emailaddress, string inboxurl, long groupid) { //if sending mail option enabled if (Jugnoon.Settings.Configs.SmtpSettings.enable_email) { var lst = MailTemplateBLL.Get_Template(_context, "GRPTPAPR").Result; if (lst.Count > 0) { string subject = MailProcess.Process2(lst[0].subject, "\\[ownerusername\\]", ownerusername); subject = MailProcess.Process2(subject, "\\[username\\]", username); string contents = MailProcess.Process2(lst[0].contents, "\\[ownerusername\\]", ownerusername); contents = MailProcess.Process2(contents, "\\[username\\]", ownerusername); string group_url = Config.GetUrl("group/" + groupid); string url = "<a href=\"" + group_url + "\">" + group_url + "</a>"; contents = MailProcess.Process2(contents, "\\[url\\]", url); contents = MailProcess.Process2(contents, "\\[title\\]", title); contents = MailProcess.Process2(contents, "\\[inboxurl\\]", inboxurl); // attach signature contents = MailProcess.Prepare_Email_Signature(contents); MailProcess.Send_Mail(emailaddress, subject, contents); } } }
/// <summary> /// Send email reset autorization and processing link to user /// </summary> /// <param name="emailSender"></param> /// <param name="context"></param> /// <param name="email"></param> /// <param name="username"></param> /// <param name="link"></param> /// <returns></returns> public static Task ChangeEmailResetAsync(this IEmailSender emailSender, ApplicationDbContext context, string email, string username, string link) { if (Settings.Configs.SmtpSettings.enable_email) { if (username.Contains("@")) { username = "******"; } var lst = MailTemplateBLL.Get_Template(context, "USREMLCREQ").Result; if (lst.Count > 0) { string subject = MailProcess.Process2(lst[0].subject, "\\[username\\]", username); subject = MailProcess.Prepare_Email_Signature(subject); string contents = MailProcess.Process2(lst[0].contents, "\\[username\\]", username); contents = MailProcess.Process2(contents, "\\[key_url\\]", System.Text.Encodings.Web.HtmlEncoder.Default.Encode(link)); contents = MailProcess.Process2(contents, "\\[emailaddress\\]", email); contents = MailProcess.Process2(contents, "\\[domainname\\]", Jugnoon.Settings.Configs.GeneralSettings.website_title); contents = MailProcess.Process2(contents, "\\[unsubscribeurl\\]", UrlConfig.UnsubscribeUrl); // attach signature contents = MailProcess.Prepare_Email_Signature(contents); return(emailSender.SendEmailAsync(email, subject, contents)); } } return(Task.CompletedTask); }
//******************************************************************************** // SEND MAIL TO AUTHOR OF TOPIC, ADMIN (MODERATOR) OR ALL USERS WHO POST Comments) //********************************************************************************* // Mail Logic // If user post new topic mail will be sent to user and admin (moderator) // If admin approve topic mail will be sent to author (in case of manual review) // If normal user post reply, mail will be sent to author and all users who contribute replies and admin private void ProcessMail(long tid, long replyid, string username, long groupid, string description, string title) { try { string subject = title; string content = UtilityBLL.StripHTML(description); string url = Forum_Urls.Prepare_Topic_Url(tid, subject, false); if (replyid == 0) { // New Topic Posted Mail Will Be Sent To Admin AND Author // send mail to admin var alst = MailTemplateBLL.Get_Template(_context, "FORUMTOPIC").Result; Send_Email(username, "admin", "", subject, content, url, alst); // send mail to author var tlst = MailTemplateBLL.Get_Template(_context, "FORUMTA").Result; string authoremail = UserBLL.Return_Value_UserId(_context, username, "email"); var authormailpermission = Convert.ToByte(UserSettingsBLL.Get_Field_Value(_context, username, "isemail")); if (authormailpermission == 1) { Send_Email("", username, authoremail, subject, content, url, tlst); } } else { // User Post Reply, Mail will be sent to autho, admin and all users who contribute replies MailTemplateProcess(replyid, subject, content, url, username, groupid); } } catch (Exception ex) { ErrorLgBLL.Add(_context, "Mail Processing Error", "", ex.Message); } }
public ActionResult action() { var json = new StreamReader(Request.Body).ReadToEnd(); var data = JsonConvert.DeserializeObject <List <MailTemplateEntity> >(json); MailTemplateBLL.ProcessAction(_context, data); return(Ok(new { status = "success", message = SiteConfig.generalLocalizer["_records_processed"].Value })); }
public async Task <ActionResult> Index() { var data = new MailTemplateEntity() { pagenumber = 1, type = "-1", pagesize = 20, order = "id desc" }; var _posts = await MailTemplateBLL.Load(_context, data);; return(Ok(new { posts = _posts, records = 434 })); }
public async Task <ActionResult> load() { var json = new StreamReader(Request.Body).ReadToEnd(); var data = JsonConvert.DeserializeObject <MailTemplateEntity>(json); var _posts = await MailTemplateBLL.Load(_context, data);; var _records = 0; if (data.id == 0) { _records = await MailTemplateBLL.Count(_context, data); } return(Ok(new { posts = _posts, records = _records })); }
public async Task <ActionResult> getinfo() { var json = new StreamReader(Request.Body).ReadToEnd(); var data = JsonConvert.DeserializeObject <List <MailTemplateEntity> >(json); var _posts = await MailTemplateBLL.Load(_context, data[0]); if (_posts.Count > 0) { return(Ok(new { status = "success", posts = _posts[0] })); } else { return(Ok(new { status = "error", message = SiteConfig.generalLocalizer["_no_records"].Value })); } }
private void LoadData(int id) { DataSet ds = MailTemplateBLL.Get_Value(id); if (ds.Tables[0].Rows.Count > 0) { lbl_key.Text = ds.Tables[0].Rows[0]["templatekey"].ToString(); lbl_tags.Text = ds.Tables[0].Rows[0]["tags"].ToString(); lbl_type.Text = ds.Tables[0].Rows[0]["type"].ToString(); lbl_description.Text = ds.Tables[0].Rows[0]["description"].ToString(); lbl_subjecttags.Text = ds.Tables[0].Rows[0]["subjecttags"].ToString(); txt_subject.Text = ds.Tables[0].Rows[0]["subject"].ToString(); txt_content.Value = ds.Tables[0].Rows[0]["contents"].ToString(); } }
private void BindList() { DataSet ds = MailTemplateBLL.Get_Information(drp_sorttype.SelectedValue); if (ds.Tables[0].Rows.Count > 0) { Pagination_Process.Process_Pagination(MyList, rptPages, lnk_Prev, lnk_Next, 40, this.PageNumber, ds.Tables[0].DefaultView); pnl_main.Visible = true; pnl_norecord.Visible = false; } else { pnl_main.Visible = false; pnl_norecord.Visible = true; } }
private void MailTemplateProcess(string emailaddress, string username, string url) { //if sending mail option enabled if (Config.isEmailEnabled()) { System.Collections.Generic.List <Struct_MailTemplates> lst = MailTemplateBLL.Get_Record("FORPASS"); if (lst.Count > 0) { string subject = MailProcess.Process2(lst[0].Subject, "\\[username\\]", username); string contents = MailProcess.Process2(lst[0].Contents, "\\[username\\]", username); contents = MailProcess.Process2(contents, "\\[url\\]", url); MailProcess.Send_Mail(emailaddress, subject, contents); } } }
private void MailTemplateProcess(string username) { //if sending mail option enabled if (Config.isEmailEnabled()) { string emailaddress = members.Return_Value(username, "email"); System.Collections.Generic.List <Struct_MailTemplates> lst = MailTemplateBLL.Get_Record("USRPRIVCHN"); if (lst.Count > 0) { string subject = MailProcess.Process2(lst[0].Subject, "\\[username\\]", username); string contents = MailProcess.Process2(lst[0].Contents, "\\[username\\]", username); MailProcess.Send_Mail(emailaddress, subject, contents); } } }
private void ManageAccount_MailTemplateProcess(string username) { //if sending mail option enabled if (Jugnoon.Settings.Configs.SmtpSettings.enable_email) { string emailaddress = UserBLL.Return_Value_UserId(_context, username, "email"); var lst = MailTemplateBLL.Get_Template(_context, "USRPASSCHN").Result; if (lst.Count > 0) { string subject = MailProcess.Process2(lst[0].subject, "\\[username\\]", username); string contents = MailProcess.Process2(lst[0].contents, "\\[username\\]", username); // attach signature contents = MailProcess.Prepare_Email_Signature(contents); MailProcess.Send_Mail(emailaddress, subject, contents); } } }
protected void btn_add_Click(object sender, System.EventArgs e) { string value = txt_content.Value; if (string.IsNullOrEmpty(value)) { ShowMessage("Insert mail template content"); return; } if (string.IsNullOrEmpty(txt_subject.Text)) { ShowMessage("Insert subject of mail template"); return; } MailTemplateBLL.Update_Record(this.TID, txt_subject.Text, value); Response.Redirect(Config.GetUrl("adm/sc/mail/Default.aspx?status=updated")); }
// mail processing private void MailTemplateProcess(string emailaddress, string username, string password, string key) { //if sending mail option enabled if (Config.isEmailEnabled()) { System.Collections.Generic.List <Struct_MailTemplates> lst = MailTemplateBLL.Get_Record("USRREG"); if (lst.Count > 0) { string subject = MailProcess.Process2(lst[0].Subject, "\\[username\\]", username); string contents = MailProcess.Process2(lst[0].Contents, "\\[username\\]", username); contents = MailProcess.Process2(contents, "\\[password\\]", password); string validation_url = Config.GetUrl("validate.aspx?key=" + key.Trim() + "&user="******"<a href=\"" + validation_url + "\">" + validation_url + "</a>"; contents = MailProcess.Process2(contents, "\\[key_url\\]", url); MailProcess.Send_Mail(emailaddress, subject, contents); } } }
// send mail to admin when new content added by user public static void Admin_New_Content_Added(string username, string contenttype, string url) { //if sending mail option enabled if (Config.isEmailEnabled()) { System.Collections.Generic.List <Struct_MailTemplates> lst = MailTemplateBLL.Get_Record("USRAPRCNT"); if (lst.Count > 0) { string subject = MailProcess.Process2(lst[0].Subject, "\\[username\\]", username); subject = MailProcess.Process2(subject, "\\[contenttype\\]", contenttype); string contents = MailProcess.Process2(lst[0].Contents, "\\[username\\]", username); subject = MailProcess.Process2(subject, "\\[contenttype\\]", contenttype); contents = MailProcess.Process2(contents, "\\[url\\]", url); string emailaddress = Site_Settings.Admin_Mail; MailProcess.Send_Mail(emailaddress, subject, contents); } } }
// ****************************** // Mail Templates // ****************************** // send mail to user when admin approved user posted content public static void User_Mail_Content_Action(string username, string contenttype, string url, string status) { //if sending mail option enabled if (Config.isEmailEnabled()) { System.Collections.Generic.List <Struct_MailTemplates> lst = MailTemplateBLL.Get_Record("USRCNTAPP"); if (lst.Count > 0) { string subject = MailProcess.Process2(lst[0].Subject, "\\[username\\]", username); subject = MailProcess.Process2(subject, "\\[status\\]", status); subject = MailProcess.Process2(subject, "\\[contenttype\\]", contenttype); string contents = MailProcess.Process2(lst[0].Contents, "\\[username\\]", username); contents = MailProcess.Process2(contents, "\\[contenttype\\]", contenttype); contents = MailProcess.Process2(contents, "\\[url\\]", url); contents = MailProcess.Process2(contents, "\\[status\\]", status); string emailaddress = members.Return_Value(username, "email"); MailProcess.Send_Mail(emailaddress, subject, contents); } } }
private void MailTemplateProcess(long tid, string subject, string content, string url, string username, long groupid) { //if sending mail option enabled if (Jugnoon.Settings.Configs.SmtpSettings.enable_email) { var lst = MailTemplateBLL.Get_Template(_context, "FORUMTREP").Result; if (lst.Count > 0) { string TopicAuthorusername = ForumTopicBLL.Return_Value(_context, tid, "username"); //// send email to admin //string emailaddress = UserBLL.Return_Value(model.username, "email"); //Send_Email(model.username,"admin", subject, content, url, lst); // send mail to all other usernames who already post topi on model content var cuserlist = UserBLL.LoadItems(_context, new MemberEntity() { topicid = tid }).Result; if (cuserlist.Count > 0) { int i = 0; for (i = 0; i <= cuserlist.Count - 1; i++) { //if (cuserlist[i].isautomail == 1) //{ if (cuserlist[i].UserName == TopicAuthorusername) { // topic author GroupMailProcessTemplate(TopicAuthorusername, subject, username, cuserlist[i].Email, url, groupid); } else { // normal user Send_Email(username, cuserlist[i].UserName, cuserlist[i].Email, subject, content, url, lst); } //} } } } } }
/// <summary> /// Send email notification to admin when new user signup /// </summary> /// <param name="emailSender"></param> /// <param name="context"></param> /// <param name="email"></param> /// <param name="username"></param> /// <returns></returns> public static Task SendEmailNotificationAsync(this IEmailSender emailSender, ApplicationDbContext context, string email, string username) { if (Settings.Configs.SmtpSettings.enable_email) { var lst = MailTemplateBLL.Get_Template(context, "USRREGADM").Result; if (lst.Count > 0) { string subject = MailProcess.Process2(lst[0].subject, "\\[username\\]", username); subject = MailProcess.Prepare_Email_Signature(subject); string contents = MailProcess.Process2(lst[0].contents, "\\[username\\]", username); contents = MailProcess.Process2(contents, "\\[email\\]", email); // attach signature contents = MailProcess.Prepare_Email_Signature(contents); return(emailSender.SendEmailAsync(Jugnoon.Settings.Configs.GeneralSettings.admin_mail, subject, contents)); } } return(Task.CompletedTask); }
/// <summary> /// Send notification to user when email reset event completed successfully /// </summary> /// <param name="emailSender"></param> /// <param name="context"></param> /// <param name="email"></param> /// <param name="username"></param> /// <returns></returns> public static Task ChangeEmailResetCompletedAsync(this IEmailSender emailSender, ApplicationDbContext context, string email, string username) { if (Settings.Configs.SmtpSettings.enable_email) { if (username.Contains("@")) { username = "******"; } var lst = MailTemplateBLL.Get_Template(context, "USREMLCHNG").Result; if (lst.Count > 0) { string subject = MailProcess.Process2(lst[0].subject, "\\[username\\]", username); subject = MailProcess.Prepare_Email_Signature(subject); string contents = MailProcess.Process2(lst[0].contents, "\\[username\\]", username); contents = MailProcess.Prepare_Email_Signature(contents); return(emailSender.SendEmailAsync(email, subject, contents)); } } return(Task.CompletedTask); }
public async Task <ActionResult> proc() { var json = new StreamReader(Request.Body).ReadToEnd(); var data = JsonConvert.DeserializeObject <JGN_MailTemplates>(json); if (data.id > 0) { // Update Operation MailTemplateBLL.Update_Record(_context, data.id, data.subject, data.description, data.contents, data.tags, data.subjecttags); } else { // check whether template already exist if (MailTemplateBLL.CheckTemplate(_context, data.templatekey)) { return(Ok(new { status = "error", message = SiteConfig.generalLocalizer["_record_exist"].Value })); } // Add Operation data = await MailTemplateBLL.Add(_context, data); } return(Ok(new { status = "success", record = data, message = SiteConfig.generalLocalizer["_records_processed"].Value })); }