Implemented mass email feature.

This commit is contained in:
Dario Solera 2009-11-14 10:36:34 +00:00
parent 3c09a0a6a3
commit 6a3dbee124
25 changed files with 669 additions and 4 deletions

View file

@ -16,5 +16,5 @@ using System.Reflection;
// //
// You can specify all the values or you can default the Revision and Build Numbers // You can specify all the values or you can default the Revision and Build Numbers
// by using the '*' as shown below: // by using the '*' as shown below:
[assembly: AssemblyVersion("3.0.1.429")] [assembly: AssemblyVersion("3.0.1.430")]
[assembly: AssemblyFileVersion("3.0.1.429")] [assembly: AssemblyFileVersion("3.0.1.430")]

View file

@ -33,6 +33,28 @@
</script> </script>
<h2 class="sectiontitle"><asp:Literal ID="lblAdminHome" runat="server" Text="Administration Home" EnableViewState="False" meta:resourcekey="lblAdminHomeResource1" /></h2> <h2 class="sectiontitle"><asp:Literal ID="lblAdminHome" runat="server" Text="Administration Home" EnableViewState="False" meta:resourcekey="lblAdminHomeResource1" /></h2>
<div id="BulkEmailDiv">
<h2 class="separator"><asp:Literal ID="lblBulkEmail" runat="server" Text="Mass Email" EnableViewState="false" meta:resourcekey="lblBulkEmailResource1" /></h2>
<asp:Literal ID="lblBulkEmailInfo" runat="server" Text="You can send an email message to all users of one or more groups." EnableViewState="false" meta:resourcekey="lblBulkEmailInfoResource1" />
<br /><br />
<asp:CheckBoxList ID="lstGroups" runat="server" RepeatDirection="Horizontal" />
<br />
<asp:Literal ID="lblSubject" runat="server" Text="Subject" EnableViewState="false" meta:resourcekey="lblSubjectResource1" /><br />
<asp:TextBox ID="txtSubject" runat="server" CssClass="textbox" /><br />
<asp:TextBox ID="txtBody" runat="server" TextMode="MultiLine" CssClass="body" />
<br /><br />
<asp:Button ID="btnSendBulkEmail" runat="server" Text="Send Mass Email" ValidationGroup="email" OnClick="btnSendBulkEmail_Click" meta:resourcekey="btnSendBulkEmailResource1" />
<asp:RequiredFieldValidator ID="rfvSubject" runat="server" Display="Dynamic" CssClass="resulterror"
ControlToValidate="txtSubject" ErrorMessage="Subject is required" ValidationGroup="email" meta:resourcekey="rfvSubjectResource1" />
<asp:RequiredFieldValidator ID="rfvBody" runat="server" Display="Dynamic" CssClass="resulterror"
ControlToValidate="txtBody" ErrorMessage="Body is required" ValidationGroup="email" meta:resourcekey="rfvBodyResource1" />
<asp:CustomValidator ID="cvGroups" runat="server" Display="Dynamic" CssClass="resulterror"
ErrorMessage="You must select at least one group" ValidationGroup="email" meta:resourcekey="cvGroupsResource1"
OnServerValidate="cvGroups_ServerValidate" />
<asp:Label ID="lblEmailResult" runat="server" />
</div>
<p> <p>
<asp:Literal ID="lblSystemStatusContent" runat="server" meta:resourcekey="lblSystemStatusContentResource1" /> <asp:Literal ID="lblSystemStatusContent" runat="server" meta:resourcekey="lblSystemStatusContentResource1" />
<br /><br /> <br /><br />

View file

@ -2,6 +2,7 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.IO; using System.IO;
using System.Linq;
using System.Net; using System.Net;
using System.Text; using System.Text;
using System.Web; using System.Web;
@ -26,6 +27,15 @@ namespace ScrewTurn.Wiki {
rptIndex.DataBind(); rptIndex.DataBind();
DisplayOrphansCount(); DisplayOrphansCount();
string anon = Settings.AnonymousGroup;
foreach(UserGroup group in Users.GetUserGroups()) {
if(group.Name != anon) {
ListItem item = new ListItem(group.Name, group.Name);
item.Selected = true;
lstGroups.Items.Add(item);
}
}
} }
} }
@ -40,6 +50,43 @@ namespace ScrewTurn.Wiki {
lblOrphanPagesCount.Text = orphans.ToString(); lblOrphanPagesCount.Text = orphans.ToString();
} }
protected void cvGroups_ServerValidate(object sender, ServerValidateEventArgs e) {
e.IsValid = false;
foreach(ListItem item in lstGroups.Items) {
if(item.Selected) {
e.IsValid = true;
break;
}
}
}
protected void btnSendBulkEmail_Click(object sender, EventArgs e) {
lblEmailResult.CssClass = "";
lblEmailResult.Text = "";
Page.Validate("email");
if(!Page.IsValid) return;
List<string> emails = new List<string>();
foreach(ListItem item in lstGroups.Items) {
if(item.Selected) {
UserGroup group = Users.FindUserGroup(item.Value);
if(group != null) {
foreach(string user in group.Users) {
UserInfo u = Users.FindUser(user);
if(u != null) emails.Add(u.Email);
}
}
}
}
EmailTools.AsyncSendMassEmail(emails.ToArray(), Settings.SenderEmail,
txtSubject.Text, txtBody.Text, false);
lblEmailResult.CssClass = "resultok";
lblEmailResult.Text = Properties.Messages.MassEmailSent;
}
protected void btnClearCache_Click(object sender, EventArgs e) { protected void btnClearCache_Click(object sender, EventArgs e) {
Redirections.Clear(); Redirections.Clear();
Content.ClearPseudoCache(); Content.ClearPseudoCache();

View file

@ -1,7 +1,7 @@
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
// <auto-generated> // <auto-generated>
// This code was generated by a tool. // This code was generated by a tool.
// Runtime Version:2.0.50727.4016 // Runtime Version:2.0.50727.4927
// //
// Changes to this file may cause incorrect behavior and will be lost if // Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated. // the code is regenerated.
@ -22,6 +22,105 @@ namespace ScrewTurn.Wiki {
/// </remarks> /// </remarks>
protected global::System.Web.UI.WebControls.Literal lblAdminHome; protected global::System.Web.UI.WebControls.Literal lblAdminHome;
/// <summary>
/// lblBulkEmail control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Literal lblBulkEmail;
/// <summary>
/// lblBulkEmailInfo control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Literal lblBulkEmailInfo;
/// <summary>
/// lstGroups control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.CheckBoxList lstGroups;
/// <summary>
/// lblSubject control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Literal lblSubject;
/// <summary>
/// txtSubject control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.TextBox txtSubject;
/// <summary>
/// txtBody control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.TextBox txtBody;
/// <summary>
/// btnSendBulkEmail control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Button btnSendBulkEmail;
/// <summary>
/// rfvSubject control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.RequiredFieldValidator rfvSubject;
/// <summary>
/// rfvBody control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.RequiredFieldValidator rfvBody;
/// <summary>
/// cvGroups control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.CustomValidator cvGroups;
/// <summary>
/// lblEmailResult control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblEmailResult;
/// <summary> /// <summary>
/// lblSystemStatusContent control. /// lblSystemStatusContent control.
/// </summary> /// </summary>

View file

@ -117,6 +117,30 @@
<resheader name="writer"> <resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<data name="btnSendBulkEmailResource1.Text" xml:space="preserve">
<value>Send Bulk Email</value>
</data>
<data name="btnSendBulkEmailResource1.ToolTip" xml:space="preserve">
<value />
</data>
<data name="cvGroupsResource1.ErrorMessage" xml:space="preserve">
<value>You must select at least one group</value>
</data>
<data name="lblBulkEmailInfoResource1.Text" xml:space="preserve">
<value>You can send an email message to all users of one or more groups.</value>
</data>
<data name="lblBulkEmailResource1.Text" xml:space="preserve">
<value>Mass Email</value>
</data>
<data name="lblSubjectResource1.Text" xml:space="preserve">
<value>Subject</value>
</data>
<data name="rfvBodyResource1.ErrorMessage" xml:space="preserve">
<value>Body is required</value>
</data>
<data name="rfvSubjectResource1.ErrorMessage" xml:space="preserve">
<value>Subject is required</value>
</data>
<data name="btnShutdownConfirmResource2.ToolTip" xml:space="preserve"> <data name="btnShutdownConfirmResource2.ToolTip" xml:space="preserve">
<value /> <value />
</data> </data>

View file

@ -117,6 +117,30 @@
<resheader name="writer"> <resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<data name="btnSendBulkEmailResource1.Text" xml:space="preserve">
<value>Send Bulk Email</value>
</data>
<data name="btnSendBulkEmailResource1.ToolTip" xml:space="preserve">
<value />
</data>
<data name="cvGroupsResource1.ErrorMessage" xml:space="preserve">
<value>You must select at least one group</value>
</data>
<data name="lblBulkEmailInfoResource1.Text" xml:space="preserve">
<value>You can send an email message to all users of one or more groups.</value>
</data>
<data name="lblBulkEmailResource1.Text" xml:space="preserve">
<value>Mass Email</value>
</data>
<data name="lblSubjectResource1.Text" xml:space="preserve">
<value>Subject</value>
</data>
<data name="rfvBodyResource1.ErrorMessage" xml:space="preserve">
<value>Body is required</value>
</data>
<data name="rfvSubjectResource1.ErrorMessage" xml:space="preserve">
<value>Subject is required</value>
</data>
<data name="btnShutdownConfirmResource2.Text" xml:space="preserve"> <data name="btnShutdownConfirmResource2.Text" xml:space="preserve">
<value>Shutdown Application</value> <value>Shutdown Application</value>
</data> </data>

View file

@ -117,6 +117,30 @@
<resheader name="writer"> <resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<data name="btnSendBulkEmailResource1.Text" xml:space="preserve">
<value>Send Bulk Email</value>
</data>
<data name="btnSendBulkEmailResource1.ToolTip" xml:space="preserve">
<value />
</data>
<data name="cvGroupsResource1.ErrorMessage" xml:space="preserve">
<value>You must select at least one group</value>
</data>
<data name="lblBulkEmailInfoResource1.Text" xml:space="preserve">
<value>You can send an email message to all users of one or more groups.</value>
</data>
<data name="lblBulkEmailResource1.Text" xml:space="preserve">
<value>Mass Email</value>
</data>
<data name="lblSubjectResource1.Text" xml:space="preserve">
<value>Subject</value>
</data>
<data name="rfvBodyResource1.ErrorMessage" xml:space="preserve">
<value>Body is required</value>
</data>
<data name="rfvSubjectResource1.ErrorMessage" xml:space="preserve">
<value>Subject is required</value>
</data>
<data name="btnShutdownConfirmResource2.Text" xml:space="preserve"> <data name="btnShutdownConfirmResource2.Text" xml:space="preserve">
<value>Shutdown Application</value> <value>Shutdown Application</value>
</data> </data>

View file

@ -117,6 +117,30 @@
<resheader name="writer"> <resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<data name="btnSendBulkEmailResource1.Text" xml:space="preserve">
<value>Send Bulk Email</value>
</data>
<data name="btnSendBulkEmailResource1.ToolTip" xml:space="preserve">
<value />
</data>
<data name="cvGroupsResource1.ErrorMessage" xml:space="preserve">
<value>You must select at least one group</value>
</data>
<data name="lblBulkEmailInfoResource1.Text" xml:space="preserve">
<value>You can send an email message to all users of one or more groups.</value>
</data>
<data name="lblBulkEmailResource1.Text" xml:space="preserve">
<value>Mass Email</value>
</data>
<data name="lblSubjectResource1.Text" xml:space="preserve">
<value>Subject</value>
</data>
<data name="rfvBodyResource1.ErrorMessage" xml:space="preserve">
<value>Body is required</value>
</data>
<data name="rfvSubjectResource1.ErrorMessage" xml:space="preserve">
<value>Subject is required</value>
</data>
<data name="btnShutdownConfirmResource2.Text" xml:space="preserve"> <data name="btnShutdownConfirmResource2.Text" xml:space="preserve">
<value>Parar aplicación</value> <value>Parar aplicación</value>
</data> </data>

View file

@ -117,6 +117,30 @@
<resheader name="writer"> <resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<data name="btnSendBulkEmailResource1.Text" xml:space="preserve">
<value>Send Bulk Email</value>
</data>
<data name="btnSendBulkEmailResource1.ToolTip" xml:space="preserve">
<value />
</data>
<data name="cvGroupsResource1.ErrorMessage" xml:space="preserve">
<value>You must select at least one group</value>
</data>
<data name="lblBulkEmailInfoResource1.Text" xml:space="preserve">
<value>You can send an email message to all users of one or more groups.</value>
</data>
<data name="lblBulkEmailResource1.Text" xml:space="preserve">
<value>Mass Email</value>
</data>
<data name="lblSubjectResource1.Text" xml:space="preserve">
<value>Subject</value>
</data>
<data name="rfvBodyResource1.ErrorMessage" xml:space="preserve">
<value>Body is required</value>
</data>
<data name="rfvSubjectResource1.ErrorMessage" xml:space="preserve">
<value>Subject is required</value>
</data>
<data name="btnShutdownConfirmResource2.Text" xml:space="preserve"> <data name="btnShutdownConfirmResource2.Text" xml:space="preserve">
<value>Shutdown Application</value> <value>Shutdown Application</value>
</data> </data>

View file

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<root> <root>
<!-- <!--
Microsoft ResX Schema Microsoft ResX Schema
@ -117,6 +117,30 @@
<resheader name="writer"> <resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<data name="btnSendBulkEmailResource1.Text" xml:space="preserve">
<value>Send Bulk Email</value>
</data>
<data name="btnSendBulkEmailResource1.ToolTip" xml:space="preserve">
<value />
</data>
<data name="cvGroupsResource1.ErrorMessage" xml:space="preserve">
<value>You must select at least one group</value>
</data>
<data name="lblBulkEmailInfoResource1.Text" xml:space="preserve">
<value>You can send an email message to all users of one or more groups.</value>
</data>
<data name="lblBulkEmailResource1.Text" xml:space="preserve">
<value>Mass Email</value>
</data>
<data name="lblSubjectResource1.Text" xml:space="preserve">
<value>Subject</value>
</data>
<data name="rfvBodyResource1.ErrorMessage" xml:space="preserve">
<value>Body is required</value>
</data>
<data name="rfvSubjectResource1.ErrorMessage" xml:space="preserve">
<value>Subject is required</value>
</data>
<data name="btnShutdownConfirmResource2.Text" xml:space="preserve"> <data name="btnShutdownConfirmResource2.Text" xml:space="preserve">
<value>Alkalmazás leállítása</value> <value>Alkalmazás leállítása</value>
</data> </data>

View file

@ -117,6 +117,30 @@
<resheader name="writer"> <resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<data name="btnSendBulkEmailResource1.Text" xml:space="preserve">
<value>Invia email di massa</value>
</data>
<data name="btnSendBulkEmailResource1.ToolTip" xml:space="preserve">
<value />
</data>
<data name="cvGroupsResource1.ErrorMessage" xml:space="preserve">
<value>Devi selezionare almeno un gruppo</value>
</data>
<data name="lblBulkEmailInfoResource1.Text" xml:space="preserve">
<value>E' possibile inviare un'email a tutti gli utenti di uno o più gruppi.</value>
</data>
<data name="lblBulkEmailResource1.Text" xml:space="preserve">
<value>Email di massa</value>
</data>
<data name="lblSubjectResource1.Text" xml:space="preserve">
<value>Oggetto</value>
</data>
<data name="rfvBodyResource1.ErrorMessage" xml:space="preserve">
<value>Il messaggio è richiesto</value>
</data>
<data name="rfvSubjectResource1.ErrorMessage" xml:space="preserve">
<value>L'oggetto è richiesto</value>
</data>
<data name="btnShutdownConfirmResource2.Text" xml:space="preserve"> <data name="btnShutdownConfirmResource2.Text" xml:space="preserve">
<value>Shutdown Applicazione</value> <value>Shutdown Applicazione</value>
</data> </data>

View file

@ -117,6 +117,30 @@
<resheader name="writer"> <resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<data name="btnSendBulkEmailResource1.Text" xml:space="preserve">
<value>Send Bulk Email</value>
</data>
<data name="btnSendBulkEmailResource1.ToolTip" xml:space="preserve">
<value />
</data>
<data name="cvGroupsResource1.ErrorMessage" xml:space="preserve">
<value>You must select at least one group</value>
</data>
<data name="lblBulkEmailInfoResource1.Text" xml:space="preserve">
<value>You can send an email message to all users of one or more groups.</value>
</data>
<data name="lblBulkEmailResource1.Text" xml:space="preserve">
<value>Mass Email</value>
</data>
<data name="lblSubjectResource1.Text" xml:space="preserve">
<value>Subject</value>
</data>
<data name="rfvBodyResource1.ErrorMessage" xml:space="preserve">
<value>Body is required</value>
</data>
<data name="rfvSubjectResource1.ErrorMessage" xml:space="preserve">
<value>Subject is required</value>
</data>
<data name="btnShutdownConfirmResource2.Text" xml:space="preserve"> <data name="btnShutdownConfirmResource2.Text" xml:space="preserve">
<value>Shutdown Application</value> <value>Shutdown Application</value>
</data> </data>

View file

@ -117,6 +117,30 @@
<resheader name="writer"> <resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<data name="btnSendBulkEmailResource1.Text" xml:space="preserve">
<value>Send Bulk Email</value>
</data>
<data name="btnSendBulkEmailResource1.ToolTip" xml:space="preserve">
<value />
</data>
<data name="cvGroupsResource1.ErrorMessage" xml:space="preserve">
<value>You must select at least one group</value>
</data>
<data name="lblBulkEmailInfoResource1.Text" xml:space="preserve">
<value>You can send an email message to all users of one or more groups.</value>
</data>
<data name="lblBulkEmailResource1.Text" xml:space="preserve">
<value>Mass Email</value>
</data>
<data name="lblSubjectResource1.Text" xml:space="preserve">
<value>Subject</value>
</data>
<data name="rfvBodyResource1.ErrorMessage" xml:space="preserve">
<value>Body is required</value>
</data>
<data name="rfvSubjectResource1.ErrorMessage" xml:space="preserve">
<value>Subject is required</value>
</data>
<data name="btnShutdownConfirmResource2.Text" xml:space="preserve"> <data name="btnShutdownConfirmResource2.Text" xml:space="preserve">
<value>Shutdown Application</value> <value>Shutdown Application</value>
</data> </data>

View file

@ -117,6 +117,30 @@
<resheader name="writer"> <resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<data name="btnSendBulkEmailResource1.Text" xml:space="preserve">
<value>Send Bulk Email</value>
</data>
<data name="btnSendBulkEmailResource1.ToolTip" xml:space="preserve">
<value />
</data>
<data name="cvGroupsResource1.ErrorMessage" xml:space="preserve">
<value>You must select at least one group</value>
</data>
<data name="lblBulkEmailInfoResource1.Text" xml:space="preserve">
<value>You can send an email message to all users of one or more groups.</value>
</data>
<data name="lblBulkEmailResource1.Text" xml:space="preserve">
<value>Mass Email</value>
</data>
<data name="lblSubjectResource1.Text" xml:space="preserve">
<value>Subject</value>
</data>
<data name="rfvBodyResource1.ErrorMessage" xml:space="preserve">
<value>Body is required</value>
</data>
<data name="rfvSubjectResource1.ErrorMessage" xml:space="preserve">
<value>Subject is required</value>
</data>
<data name="btnShutdownConfirmResource2.Text" xml:space="preserve"> <data name="btnShutdownConfirmResource2.Text" xml:space="preserve">
<value>Shutdown Application</value> <value>Shutdown Application</value>
</data> </data>

View file

@ -117,6 +117,30 @@
<resheader name="writer"> <resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<data name="btnSendBulkEmailResource1.Text" xml:space="preserve">
<value>Send Bulk Email</value>
</data>
<data name="btnSendBulkEmailResource1.ToolTip" xml:space="preserve">
<value />
</data>
<data name="cvGroupsResource1.ErrorMessage" xml:space="preserve">
<value>You must select at least one group</value>
</data>
<data name="lblBulkEmailInfoResource1.Text" xml:space="preserve">
<value>You can send an email message to all users of one or more groups.</value>
</data>
<data name="lblBulkEmailResource1.Text" xml:space="preserve">
<value>Mass Email</value>
</data>
<data name="lblSubjectResource1.Text" xml:space="preserve">
<value>Subject</value>
</data>
<data name="rfvBodyResource1.ErrorMessage" xml:space="preserve">
<value>Body is required</value>
</data>
<data name="rfvSubjectResource1.ErrorMessage" xml:space="preserve">
<value>Subject is required</value>
</data>
<data name="btnShutdownConfirmResource2.Text" xml:space="preserve"> <data name="btnShutdownConfirmResource2.Text" xml:space="preserve">
<value>Shutdown Application</value> <value>Shutdown Application</value>
</data> </data>

View file

@ -219,4 +219,28 @@
<data name="lnkPagesResource1.ToolTip" xml:space="preserve"> <data name="lnkPagesResource1.ToolTip" xml:space="preserve">
<value>Go to the Pages administration tab</value> <value>Go to the Pages administration tab</value>
</data> </data>
<data name="btnSendBulkEmailResource1.Text" xml:space="preserve">
<value>Send Bulk Email</value>
</data>
<data name="btnSendBulkEmailResource1.ToolTip" xml:space="preserve">
<value />
</data>
<data name="cvGroupsResource1.ErrorMessage" xml:space="preserve">
<value>You must select at least one group</value>
</data>
<data name="lblBulkEmailInfoResource1.Text" xml:space="preserve">
<value>You can send an email message to all users of one or more groups.</value>
</data>
<data name="lblBulkEmailResource1.Text" xml:space="preserve">
<value>Mass Email</value>
</data>
<data name="lblSubjectResource1.Text" xml:space="preserve">
<value>Subject</value>
</data>
<data name="rfvBodyResource1.ErrorMessage" xml:space="preserve">
<value>Body is required</value>
</data>
<data name="rfvSubjectResource1.ErrorMessage" xml:space="preserve">
<value>Subject is required</value>
</data>
</root> </root>

View file

@ -117,6 +117,30 @@
<resheader name="writer"> <resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<data name="btnSendBulkEmailResource1.Text" xml:space="preserve">
<value>Send Bulk Email</value>
</data>
<data name="btnSendBulkEmailResource1.ToolTip" xml:space="preserve">
<value />
</data>
<data name="cvGroupsResource1.ErrorMessage" xml:space="preserve">
<value>You must select at least one group</value>
</data>
<data name="lblBulkEmailInfoResource1.Text" xml:space="preserve">
<value>You can send an email message to all users of one or more groups.</value>
</data>
<data name="lblBulkEmailResource1.Text" xml:space="preserve">
<value>Mass Email</value>
</data>
<data name="lblSubjectResource1.Text" xml:space="preserve">
<value>Subject</value>
</data>
<data name="rfvBodyResource1.ErrorMessage" xml:space="preserve">
<value>Body is required</value>
</data>
<data name="rfvSubjectResource1.ErrorMessage" xml:space="preserve">
<value>Subject is required</value>
</data>
<data name="btnShutdownConfirmResource2.Text" xml:space="preserve"> <data name="btnShutdownConfirmResource2.Text" xml:space="preserve">
<value>Shutdown Application</value> <value>Shutdown Application</value>
</data> </data>

View file

@ -117,6 +117,30 @@
<resheader name="writer"> <resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<data name="btnSendBulkEmailResource1.Text" xml:space="preserve">
<value>Send Bulk Email</value>
</data>
<data name="btnSendBulkEmailResource1.ToolTip" xml:space="preserve">
<value />
</data>
<data name="cvGroupsResource1.ErrorMessage" xml:space="preserve">
<value>You must select at least one group</value>
</data>
<data name="lblBulkEmailInfoResource1.Text" xml:space="preserve">
<value>You can send an email message to all users of one or more groups.</value>
</data>
<data name="lblBulkEmailResource1.Text" xml:space="preserve">
<value>Mass Email</value>
</data>
<data name="lblSubjectResource1.Text" xml:space="preserve">
<value>Subject</value>
</data>
<data name="rfvBodyResource1.ErrorMessage" xml:space="preserve">
<value>Body is required</value>
</data>
<data name="rfvSubjectResource1.ErrorMessage" xml:space="preserve">
<value>Subject is required</value>
</data>
<data name="btnShutdownConfirmResource2.Text" xml:space="preserve"> <data name="btnShutdownConfirmResource2.Text" xml:space="preserve">
<value>Перегрузить Аппликацию</value> <value>Перегрузить Аппликацию</value>
</data> </data>

View file

@ -117,6 +117,30 @@
<resheader name="writer"> <resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<data name="btnSendBulkEmailResource1.Text" xml:space="preserve">
<value>Send Bulk Email</value>
</data>
<data name="btnSendBulkEmailResource1.ToolTip" xml:space="preserve">
<value />
</data>
<data name="cvGroupsResource1.ErrorMessage" xml:space="preserve">
<value>You must select at least one group</value>
</data>
<data name="lblBulkEmailInfoResource1.Text" xml:space="preserve">
<value>You can send an email message to all users of one or more groups.</value>
</data>
<data name="lblBulkEmailResource1.Text" xml:space="preserve">
<value>Mass Email</value>
</data>
<data name="lblSubjectResource1.Text" xml:space="preserve">
<value>Subject</value>
</data>
<data name="rfvBodyResource1.ErrorMessage" xml:space="preserve">
<value>Body is required</value>
</data>
<data name="rfvSubjectResource1.ErrorMessage" xml:space="preserve">
<value>Subject is required</value>
</data>
<data name="btnShutdownConfirmResource2.Text" xml:space="preserve"> <data name="btnShutdownConfirmResource2.Text" xml:space="preserve">
<value>Shutdown Application</value> <value>Shutdown Application</value>
</data> </data>

View file

@ -117,6 +117,30 @@
<resheader name="writer"> <resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<data name="btnSendBulkEmailResource1.Text" xml:space="preserve">
<value>Send Bulk Email</value>
</data>
<data name="btnSendBulkEmailResource1.ToolTip" xml:space="preserve">
<value />
</data>
<data name="cvGroupsResource1.ErrorMessage" xml:space="preserve">
<value>You must select at least one group</value>
</data>
<data name="lblBulkEmailInfoResource1.Text" xml:space="preserve">
<value>You can send an email message to all users of one or more groups.</value>
</data>
<data name="lblBulkEmailResource1.Text" xml:space="preserve">
<value>Mass Email</value>
</data>
<data name="lblSubjectResource1.Text" xml:space="preserve">
<value>Subject</value>
</data>
<data name="rfvBodyResource1.ErrorMessage" xml:space="preserve">
<value>Body is required</value>
</data>
<data name="rfvSubjectResource1.ErrorMessage" xml:space="preserve">
<value>Subject is required</value>
</data>
<data name="btnShutdownConfirmResource2.Text" xml:space="preserve"> <data name="btnShutdownConfirmResource2.Text" xml:space="preserve">
<value>Shutdown Application</value> <value>Shutdown Application</value>
</data> </data>

View file

@ -117,6 +117,30 @@
<resheader name="writer"> <resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<data name="btnSendBulkEmailResource1.Text" xml:space="preserve">
<value>Send Bulk Email</value>
</data>
<data name="btnSendBulkEmailResource1.ToolTip" xml:space="preserve">
<value />
</data>
<data name="cvGroupsResource1.ErrorMessage" xml:space="preserve">
<value>You must select at least one group</value>
</data>
<data name="lblBulkEmailInfoResource1.Text" xml:space="preserve">
<value>You can send an email message to all users of one or more groups.</value>
</data>
<data name="lblBulkEmailResource1.Text" xml:space="preserve">
<value>Mass Email</value>
</data>
<data name="lblSubjectResource1.Text" xml:space="preserve">
<value>Subject</value>
</data>
<data name="rfvBodyResource1.ErrorMessage" xml:space="preserve">
<value>Body is required</value>
</data>
<data name="rfvSubjectResource1.ErrorMessage" xml:space="preserve">
<value>Subject is required</value>
</data>
<data name="btnShutdownConfirmResource2.Text" xml:space="preserve"> <data name="btnShutdownConfirmResource2.Text" xml:space="preserve">
<value>Shutdown Application</value> <value>Shutdown Application</value>
</data> </data>

View file

@ -117,6 +117,30 @@
<resheader name="writer"> <resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<data name="btnSendBulkEmailResource1.Text" xml:space="preserve">
<value>Send Bulk Email</value>
</data>
<data name="btnSendBulkEmailResource1.ToolTip" xml:space="preserve">
<value />
</data>
<data name="cvGroupsResource1.ErrorMessage" xml:space="preserve">
<value>You must select at least one group</value>
</data>
<data name="lblBulkEmailInfoResource1.Text" xml:space="preserve">
<value>You can send an email message to all users of one or more groups.</value>
</data>
<data name="lblBulkEmailResource1.Text" xml:space="preserve">
<value>Mass Email</value>
</data>
<data name="lblSubjectResource1.Text" xml:space="preserve">
<value>Subject</value>
</data>
<data name="rfvBodyResource1.ErrorMessage" xml:space="preserve">
<value>Body is required</value>
</data>
<data name="rfvSubjectResource1.ErrorMessage" xml:space="preserve">
<value>Subject is required</value>
</data>
<data name="btnShutdownConfirmResource2.Text" xml:space="preserve"> <data name="btnShutdownConfirmResource2.Text" xml:space="preserve">
<value>Перезапуск Аплікації</value> <value>Перезапуск Аплікації</value>
</data> </data>

View file

@ -117,6 +117,30 @@
<resheader name="writer"> <resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<data name="btnSendBulkEmailResource1.Text" xml:space="preserve">
<value>Send Bulk Email</value>
</data>
<data name="btnSendBulkEmailResource1.ToolTip" xml:space="preserve">
<value />
</data>
<data name="cvGroupsResource1.ErrorMessage" xml:space="preserve">
<value>You must select at least one group</value>
</data>
<data name="lblBulkEmailInfoResource1.Text" xml:space="preserve">
<value>You can send an email message to all users of one or more groups.</value>
</data>
<data name="lblBulkEmailResource1.Text" xml:space="preserve">
<value>Mass Email</value>
</data>
<data name="lblSubjectResource1.Text" xml:space="preserve">
<value>Subject</value>
</data>
<data name="rfvBodyResource1.ErrorMessage" xml:space="preserve">
<value>Body is required</value>
</data>
<data name="rfvSubjectResource1.ErrorMessage" xml:space="preserve">
<value>Subject is required</value>
</data>
<data name="btnShutdownConfirmResource2.Text" xml:space="preserve"> <data name="btnShutdownConfirmResource2.Text" xml:space="preserve">
<value>关闭应用程序</value> <value>关闭应用程序</value>
</data> </data>

View file

@ -117,6 +117,30 @@
<resheader name="writer"> <resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<data name="btnSendBulkEmailResource1.Text" xml:space="preserve">
<value>Send Bulk Email</value>
</data>
<data name="btnSendBulkEmailResource1.ToolTip" xml:space="preserve">
<value />
</data>
<data name="cvGroupsResource1.ErrorMessage" xml:space="preserve">
<value>You must select at least one group</value>
</data>
<data name="lblBulkEmailInfoResource1.Text" xml:space="preserve">
<value>You can send an email message to all users of one or more groups.</value>
</data>
<data name="lblBulkEmailResource1.Text" xml:space="preserve">
<value>Mass Email</value>
</data>
<data name="lblSubjectResource1.Text" xml:space="preserve">
<value>Subject</value>
</data>
<data name="rfvBodyResource1.ErrorMessage" xml:space="preserve">
<value>Body is required</value>
</data>
<data name="rfvSubjectResource1.ErrorMessage" xml:space="preserve">
<value>Subject is required</value>
</data>
<data name="btnShutdownConfirmResource2.Text" xml:space="preserve"> <data name="btnShutdownConfirmResource2.Text" xml:space="preserve">
<value>Shutdown Application</value> <value>Shutdown Application</value>
</data> </data>

View file

@ -298,6 +298,23 @@ tr.warning td {
/* BEGIN AdminHome.aspx */ /* BEGIN AdminHome.aspx */
#BulkEmailDiv {
float: right;
width: 33%;
padding: 8px;
border: solid 1px #999999;
background-color: #FFFFFF;
}
#BulkEmailDiv input.textbox {
width: 98%;
}
#BulkEmailDiv textarea.body {
width: 98%;
height: 150px;
font-size: 11px;
font-family: Verdana, Arial, Helvetica, sans-serif;
}
#ShutdownDiv { #ShutdownDiv {
padding: 10px; padding: 10px;
float: left; float: left;