protected void ddlMailListGroups_SelectedIndexChanged(object sender, EventArgs e) { Languages langID = Languages.Unknowen; if (trLanguages.Visible) { langID = (Languages)Convert.ToInt32(ddlLanguages.SelectedValue); } Chkusers.Items.Clear(); if (ddlMailListGroups.SelectedValue != "" && ddlMailListGroups.SelectedValue != "-1") { int groupID = Convert.ToInt32(ddlMailListGroups.SelectedValue); List <string> users = MailListUsersFactory.GetAllEmailsOnly(ModuleTypeID, langID, groupID, true); foreach (string email in users) { Chkusers.Items.Add(email); } trselectedusers.Visible = true; } else { trselectedusers.Visible = false; } }
//-------------------------------------------------------- protected void btnSend_Click(object sender, EventArgs e) { if (cblMailListGroups.SelectedIndex < 0) { General.MakeAlertError(lblResult, Resources.MailListAdmin.Result_ChoesOneGroupAtLeast); return; } //------------------------------------------------------------- Languages langID = Languages.Unknowen; if (trLanguages.Visible) { langID = (Languages)Convert.ToInt32(ddlLanguages.SelectedValue); } //------------------------------------------------------------- #region Attachments if (SiteSettings.MailList_HasAttachments) { //----------------------------------------------------------------- attachmentsPathes = new List <string>(); MailListEmailsFactory.AddAttatchPath(attachmentsPathes, fuAttach1); MailListEmailsFactory.AddAttatchPath(attachmentsPathes, fuAttach2); MailListEmailsFactory.AddAttatchPath(attachmentsPathes, fuAttach3); //----------------------------------------------------------------- } #endregion ////////////////////////////////////////////////////////////////////////////////////// int groupID; List <string> usersList; foreach (ListItem item in cblMailListGroups.Items) { if (item.Selected) { groupID = Convert.ToInt32(item.Value); usersList = MailListUsersFactory.GetAllEmailsOnly(ModuleTypeID, langID, groupID, true); foreach (string userEMail in usersList) { if (mail == null) { BuildEmail(); } mail.To.Add(userEMail); MailListEmailsFactory.Send(mail); mail.Dispose(); mail = null; } } } //SaveArchive //if (usersList.Count > 0) SaveArchive(); //------------------------------------------- /////////////////////////////////////////////////////////////////////////////////// General.MakeAlertSucess(lblResult, Resources.MailListAdmin.Result_SendingDone); }
//--------------------------------------------------------- //LoadData //--------------------------------------------------------- protected override void LoadData() { //------------------------------------------------------------- int groupID = -1;// UnSpecified if (SiteSettings.MailList_HasGroups) { groupID = Convert.ToInt32(ddlMailListGroups.SelectedValue); } //------------------------------------------------------------- Languages langID = Languages.Unknowen; if (SiteSettings.Languages_HasMultiLanguages) { langID = (Languages)Convert.ToInt32(ddlLanguages.SelectedValue); } //------------------------------------------------------------- List <MailListUsersEntity> mailListUserList = MailListUsersFactory.GetAll((int)StandardItemsModuleTypes.UnKnowen, langID, groupID, false, txtEmail.Text, pager.CurrentPage, PageSize, out totalRecords); LoadGrid(mailListUserList, "UserID"); //------------------------------------------------------------------------------- //Security Premession //-------------------------- //Check Delete permission if (!ZecurityManager.UserCanExecuteCommand(CommandName.Delete)) { dgControl.Columns[dgControl.Columns.Count - 1].Visible = false; } //------------------------------------------------------------------------------- }
//----------------------------------------------- //SaveData //----------------------------------------------- protected override object SaveData() { MailListUsersEntity mailListUser = (MailListUsersEntity)LoadObject(); if (mailListUser != null) { status = MailListUsersFactory.Create(mailListUser); } return(mailListUser); }
//-------------------------------------------------------------------------- #region --------------Export-------------- //--------------------------------------------------------- //LoadData //--------------------------------------------------------- protected void Export() { //------------------------------------------------------------- int groupID = -1;// UnSpecified if (SiteSettings.MailList_HasGroups) { groupID = Convert.ToInt32(ddlMailListGroups.SelectedValue); } //------------------------------------------------------------- Languages langID = Languages.Unknowen; if (SiteSettings.Languages_HasMultiLanguages) { langID = (Languages)Convert.ToInt32(ddlLanguages.SelectedValue); } //------------------------------------------------------------- List <MailListUsersEntity> mailListUserList = MailListUsersFactory.GetAll((int)StandardItemsModuleTypes.UnKnowen, langID, groupID, false, txtEmail.Text, pager.CurrentPage, PageSize, out totalRecords); if (mailListUserList != null && mailListUserList.Count > 0) { dgExport.DataSource = mailListUserList; dgExport.DataKeyField = "UserID"; dgExport.DataBind(); dgExport.Visible = true; //----------------------------------- Response.Clear(); //Response.HeaderEncoding = Encoding.GetEncoding("Windows-1256"); Response.AddHeader("content-disposition", "attachment;filename=MailList.xls"); Response.ContentEncoding = System.Text.Encoding.GetEncoding("utf-8"); // Response.Charset = "utf-8"; Response.Charset = "utf-8"; Response.Cache.SetCacheability(HttpCacheability.NoCache); Response.ContentType = "application/vnd.ms-excel"; System.IO.StringWriter stringWrite = new System.IO.StringWriter(); System.Web.UI.HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite); dgExport.RenderControl(htmlWrite); Response.Write(stringWrite.ToString()); Response.End(); dgExport.Visible = false; //----------------------------------- } else { dgExport.Visible = false; General.MakeAlertError(lblResult, Resources.AdminText.ThereIsNoData); } }
//-------------------------------------------------------- #endregion #region ---------------btnSave_Click--------------- //----------------------------------------------- //btnSave_Click //----------------------------------------------- protected void btnSave_Click(object sender, EventArgs e) { if (!Page.IsValid) { return; } int userID = Convert.ToInt32(Request.QueryString["id"]); MailListUsersEntity mailListUser = MailListUsersFactory.GetObject(userID); mailListUser.UserID = userID; mailListUser.Email = txtEmail.Text; mailListUser.IsActive = cbIsActive.Checked; if (SiteSettings.MailList_HasGroups) { //mailListUser.GroupID = Convert.ToInt32(ddlMailListGroups.SelectedValue); string groups = ""; foreach (ListItem item in ddlMailListGroups.Items) { if (item.Selected) { groups += "#" + item.Value + "#"; } } mailListUser.Groups = groups; } ExecuteCommandStatus status = MailListUsersFactory.Update(mailListUser); if (status == ExecuteCommandStatus.Done) { lblResult.Text = Resources.AdminText.SavingDataSuccessfuly; Response.Redirect("default.aspx"); } else if (status == ExecuteCommandStatus.AllreadyExists) { lblResult.CssClass = "lblResult_Faild"; lblResult.Text = Resources.AdminText.DuplicateItem; } else { lblResult.CssClass = "lblResult_Faild"; lblResult.Text = Resources.AdminText.SavingDataFaild; } }
protected void ibtnEmailSubscripe_Click(object sender, ImageClickEventArgs e) { //------------------------------------- if (!Page.IsValid) { return; } //------------------------------------- MailListUsersEntity mailListUsers; ExecuteCommandStatus status; Languages langID = SiteSettings.GetCurrentLanguage(); mailListUsers = new MailListUsersEntity(); mailListUsers.LangID = langID; //mailListUsers.Groups = groups; mailListUsers.ModuleTypeID = (int)StandardItemsModuleTypes.MailList; mailListUsers.Email = txtEMail.Text; status = MailListUsersFactory.Create(mailListUsers); if (status == ExecuteCommandStatus.Done) { lblResult.CssClass = "operation_done"; lblResult.Text = DynamicResource.GetText("MailList", "SubscripeDone"); // Clear controls; txtEMail.Text = ""; } else if (status == ExecuteCommandStatus.AllreadyExists) { lblResult.CssClass = "operation_error"; lblResult.Text = DynamicResource.GetText("MailList", "ExistsEmail"); } else { lblResult.CssClass = "operation_error"; lblResult.Text = DynamicResource.GetText("MailList", "SubscripeFailed"); } }
//-------------------------------------------------------- #endregion #region --------------LoadData()-------------- //--------------------------------------------------------- //LoadData //--------------------------------------------------------- protected void LoadData() { if (MoversFW.Components.UrlManager.ChechIsValidParameter("id")) { int userID = Convert.ToInt32(Request.QueryString["id"]); MailListUsersEntity mailListUser = MailListUsersFactory.GetObject(userID); if (mailListUser != null) { txtEmail.Text = mailListUser.Email; cbIsActive.Checked = mailListUser.IsActive; if (SiteSettings.MailList_HasGroups) { //ddlMailListGroups.SelectedValue = mailListUser.GroupID.ToString(); //string groupsText = mailListUser.Groups.Replace("##", "#"); string[] groups = mailListUser.Groups.Split(new char[] { '#' }); foreach (string group in groups) { if (!string.IsNullOrEmpty(group)) { foreach (ListItem item in ddlMailListGroups.Items) { if (item.Value == group) { item.Selected = true; } } } } } } } else { Response.Redirect("default.aspx"); } }
//----------------------------------------------- //SaveData //----------------------------------------------- protected void btnSave_Click(object sender, EventArgs e) { if (!Page.IsValid) { return; } //-------------------------------------- if (fuNumbers.HasFile) { if (fuNumbers.PostedFile.ContentType == "text/plain") { string fileName = DCServer.MapPath(DCSiteUrls.GetPath_MailList_AttachmentDir() + fuNumbers.FileName); fuNumbers.SaveAs(fileName); //--------------------------------------- string[] mailsToImport = File.ReadAllLines(fileName); int count = 0; //--------------------------------------- int successfullyMailsCount = 0; string existsMails = ""; int existsMailsCount = 0; string failedMails = ""; int failedMailsCount = 0; string notMails = ""; int notMailsCount = 0; //--------------------------------------------------------------------- MailListUsersEntity mailUser = new MailListUsersEntity(); ExecuteCommandStatus status; //--------------------------------------------------------------------- //props //--------------------------------------------------------------------- Languages langID = (Languages)SiteSettings.Languages_DefaultLanguageID; if (SiteSettings.Languages_HasMultiLanguages) { langID = (Languages)Convert.ToInt32(ddlLanguages.SelectedValue); } //------------------------------------------- mailUser.LangID = langID; //------------------------------------------- mailUser.IsActive = cbIsActive.Checked; //------------------------------------------- if (ddlMailListGroups.SelectedValue != "-1") { mailUser.GroupID = Convert.ToInt32(ddlMailListGroups.SelectedValue); mailUser.Groups = "#" + mailUser.GroupID + "#"; } //--------------------------------------------------------------------- bool isEmail = false; //--------------------------------------------------------------------- foreach (string email in mailsToImport) { try { isEmail = false; isEmail = DCValidation.IsEmail(email); if (isEmail) { mailUser.Email = email; status = MailListUsersFactory.Create(mailUser); switch (status) { case ExecuteCommandStatus.Done: ++successfullyMailsCount; break; case ExecuteCommandStatus.AllreadyExists: existsMails += email + "<br>"; ++existsMailsCount; break; case ExecuteCommandStatus.UnknownError: failedMails += email + "<br>"; ++failedMailsCount; break; default: failedMails += email + "<br>"; ++failedMailsCount; break; } } else { notMails += email + "<br>"; ++notMailsCount; } } catch (Exception ex) { notMails += email + "<br>"; ++notMailsCount; } } //--------------------------------------------------------------------------------------------- lblSuccessfulyMails.Text = string.Format(Resources.MailListAdmin.ImportSuccessfulyCount, successfullyMailsCount); lblNotMails.Text = string.Format(Resources.MailListAdmin.NotImportNotMailsCount, notMailsCount) + " <br />" + notMails; lblExistsMails.Text = string.Format(Resources.MailListAdmin.NotImportAlradyExistCount, existsMailsCount) + " <br />" + existsMails; lblFailedMails.Text = string.Format(Resources.MailListAdmin.NotImportFailiarCount, failedMailsCount) + " <br />" + failedMails; //--------------------------------------------------------------------------------------------- } else { lblResult.CssClass = "operation_error"; lblResult.Text = Resources.MailListAdmin.FileNotSupportedFile; } } else { lblResult.CssClass = "operation_error"; lblResult.Text = Resources.MailListAdmin.FileNotFound; } //-------------------------------------- }
//----------------------------------------------- //btnSave_Click //----------------------------------------------- protected void btnSave_Click(object sender, EventArgs e) { if (!Page.IsValid) { return; } if (fuFile.HasFile) { try { string fileName = DCServer.MapPath(DCSiteUrls.GetPath_MailList_AttachmentDir() + fuFile.FileName); fuFile.SaveAs(fileName); String sConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + fileName + ";" + "Extended Properties=Excel 8.0;"; // Create connection object by using the preceding connection string. OleDbConnection objConn = new OleDbConnection(sConnectionString); // Open connection with the database. objConn.Open(); // The code to follow uses a SQL SELECT command to display the data from the worksheet. // Create new OleDbCommand to return data from worksheet. OleDbCommand objCmdSelect = new OleDbCommand("SELECT * FROM [Sheet1$]", objConn); // Create new OleDbDataAdapter that is used to build a DataSet // based on the preceding SQL SELECT statement. OleDbDataAdapter objAdapter1 = new OleDbDataAdapter(); // Pass the Select command to the adapter. objAdapter1.SelectCommand = objCmdSelect; // Create new DataSet to hold information from the worksheet. DataSet objDataset1 = new DataSet(); // Fill the DataSet with the information from the worksheet. objAdapter1.Fill(objDataset1, "XLData"); //--------------------------------------------------------------------- ExecuteCommandStatus status; int successfullyMailsCount = 0; string existsMails = ""; int existsMailsCount = 0; string failedMails = ""; int failedMailsCount = 0; string notMails = ""; int notMailsCount = 0; //--------------------------------------------------------------------- MailListUsersEntity mailUser = new MailListUsersEntity(); //--------------------------------------------------------------------- //props //--------------------------------------------------------------------- Languages langID = (Languages)SiteSettings.Languages_DefaultLanguageID; if (SiteSettings.Languages_HasMultiLanguages) { langID = (Languages)Convert.ToInt32(ddlLanguages.SelectedValue); } //------------------------------------------------ mailUser.LangID = langID; //------------------------------------------------ if (SiteSettings.MailList_HasGroups) { mailUser.GroupID = Convert.ToInt32(ddlMailListGroups.SelectedValue); mailUser.Groups = "#" + mailUser.GroupID + "#"; } //------------------------------------------------ mailUser.ModuleTypeID = (int)StandardItemsModuleTypes.MailList; //-------------------------------------- mailUser.IsActive = cbIsActive.Checked; //-------------------------------------- bool isEmail = false; string email = ""; //-------------------------------------- for (int i = 0; i < objDataset1.Tables[0].Rows.Count; i++) { isEmail = false; email = objDataset1.Tables[0].Rows[i].ItemArray[0].ToString(); try { isEmail = DCValidation.IsEmail(email); if (isEmail) { mailUser.Email = email; status = MailListUsersFactory.Create(mailUser); switch (status) { case ExecuteCommandStatus.Done: ++successfullyMailsCount; break; case ExecuteCommandStatus.AllreadyExists: existsMails += email + "<br>"; ++existsMailsCount; break; case ExecuteCommandStatus.UnknownError: failedMails += email + "<br>"; ++failedMailsCount; break; default: failedMails += email + "<br>"; ++failedMailsCount; break; } } else { notMails += email + "<br>"; ++notMailsCount; } } catch (Exception ex) { notMails += email + "<br>"; ++notMailsCount; } } objConn.Close(); //--------------------------------------------------------------------------------------------- lblSuccessfulyMails.Text = string.Format(Resources.MailListAdmin.ImportSuccessfulyCount, successfullyMailsCount); lblNotMails.Text = string.Format(Resources.MailListAdmin.NotImportNotMailsCount, notMailsCount) + " <br />" + notMails; lblExistsMails.Text = string.Format(Resources.MailListAdmin.NotImportAlradyExistCount, existsMailsCount) + " <br />" + existsMails; lblFailedMails.Text = string.Format(Resources.MailListAdmin.NotImportFailiarCount, failedMailsCount) + " <br />" + failedMails; //--------------------------------------------------------------------------------------------- //ClearControls(); } catch (Exception ex) { lblResult.CssClass = "operation_error"; lblResult.Text = Resources.MailListAdmin.FileNotSupportedFile; } } else { lblResult.CssClass = "operation_error"; lblResult.Text = Resources.MailListAdmin.FileNotFound; } }
//-------------------------------------------------------- protected void btnSend_Click(object sender, EventArgs e) { List <string> usersList = null; if (FormMailTo != FormMailToTypes.One) { //------------------------------------------------------------- int groupID = -1;// UnSpecified if (trGroups.Visible) { groupID = Convert.ToInt32(ddlMailListGroups.SelectedValue); } //------------------------------------------------------------- Languages langID = Languages.Unknowen; if (trLanguages.Visible) { langID = (Languages)Convert.ToInt32(ddlLanguages.SelectedValue); } //------------------------------------------------------------- usersList = MailListUsersFactory.GetAllEmailsOnly(ModuleTypeID, langID, groupID, true); } //try //{ #region Attachments if (SiteSettings.MailList_HasAttachments) { //----------------------------------------------------------------- attachmentsPathes = new List <string>(); MailListEmailsFactory.AddAttatchPath(attachmentsPathes, fuAttach1); MailListEmailsFactory.AddAttatchPath(attachmentsPathes, fuAttach2); MailListEmailsFactory.AddAttatchPath(attachmentsPathes, fuAttach3); //----------------------------------------------------------------- } #endregion ////////////////////////////////////////////////////////////////////////////////////// int maxBccCount = SiteSettings.MailList_MaxBccCount; if (FormMailTo == FormMailToTypes.One) { //mail = new MailListEmailsEntity(); BuildEmail(0, txtEmail.Text); mail.To.Add(txtEmail.Text); MailListEmailsFactory.Send(mail); //SaveArchive SaveArchive(); } else { foreach (string userEMail in usersList) { if (mail == null) { BuildEmail(0, userEMail); } mail.To.Add(userEMail); MailListEmailsFactory.Send(mail); mail.Dispose(); mail = null; } //SaveArchive if (usersList.Count > 0) { SaveArchive(); } /* * int x = 0; * foreach (MailListUsersEntity user in usersList) * { ++x; * if (mail == null) BuildEmail(); * mail.Bcc.Add(user.Email); * if (x >= maxBccCount) * { * //BuildEmail(mail, attachmentsPathes); * MailListEmailsFactory.Send(mail); * //Clear Bcc * * mail.Bcc.Clear(); * mail.Dispose(); * mail = null; * x = 0; * } * } * if (x > 0)//Send to the last emails * { * MailListEmailsFactory.Send(mail); * }*/ //------------------------------------------- } /////////////////////////////////////////////////////////////////////////////////// lblResult.CssClass = "operation_done"; lblResult.Text = Resources.MailListAdmin.Result_SendingDone; }
//-------------------------------------------------------- #endregion #region --------------DeleteItem-------------- protected override bool DeleteItem(int id) { return(MailListUsersFactory.Delete(id)); }