Exchange Shared and Resource mailboxes

This commit is contained in:
dev_amdtel 2014-11-26 17:31:04 +04:00
parent fd023a347d
commit ac3d594fbd
15 changed files with 239 additions and 6 deletions

View file

@ -5593,7 +5593,16 @@
<data name="Error.RDS_CREATE_COLLECTION_RDSSERVER_REQUAIRED" xml:space="preserve">
<value>Error creating rds collection. You need to add at least 1 rds server to collection</value>
</data>
<data name="Error.RDS_UNASSIGN_SERVER_FROM_ORG_SERVER_IS_IN_COLLECTION" xml:space="preserve">
<value>Error deleting rds server from organization: server is used in rds collection</value>
<data name="Quota.Exchange2013.ResourceMailboxes" xml:space="preserve">
<value>Resource Mailboxes per Organization</value>
</data>
<data name="Quota.Exchange2013.SharedMailboxes" xml:space="preserve">
<value>Shared Mailboxes per Organization</value>
</data>
<data name="ResourceMailbox.Text" xml:space="preserve">
<value> (resource mailbox)</value>
</data>
<data name="SharedMailbox.Text" xml:space="preserve">
<value> (shared mailbox)</value>
</data>
</root>

View file

@ -186,4 +186,10 @@
<data name="valRequireSubscriberNumber.Text" xml:space="preserve">
<value>*</value>
</data>
<data name="ResourceMailbox.Text" xml:space="preserve">
<value>Resource Mailbox</value>
</data>
<data name="SharedMailbox.Text" xml:space="preserve">
<value>Shared Mailbox</value>
</data>
</root>

View file

@ -101,6 +101,20 @@ namespace WebsitePanel.Portal.ExchangeServer
}
}
if (cntx.Quotas.ContainsKey(Quotas.EXCHANGE2013_SHAREDMAILBOXES))
{
if (cntx.Quotas[Quotas.EXCHANGE2013_SHAREDMAILBOXES].QuotaAllocatedValue != 0)
rbMailboxType.Items.Add(new System.Web.UI.WebControls.ListItem(GetLocalizedString("SharedMailbox.Text"), "10"));
}
if (cntx.Quotas.ContainsKey(Quotas.EXCHANGE2013_RESOURCEMAILBOXES))
{
if (cntx.Quotas[Quotas.EXCHANGE2013_RESOURCEMAILBOXES].QuotaAllocatedValue != 0)
rbMailboxType.Items.Add(new System.Web.UI.WebControls.ListItem(GetLocalizedString("ResourceMailbox.Text"), "11"));
}
rowRetentionPolicy.Visible = Utils.CheckQouta(Quotas.EXCHANGE2013_ALLOWRETENTIONPOLICY, cntx);
}

View file

@ -183,6 +183,12 @@ namespace WebsitePanel.Portal.ExchangeServer
}
imgVipUser.Visible = account.IsVIP && Cntx.Groups.ContainsKey(ResourceGroups.ServiceLevels);
if (account.AccountType == ExchangeAccountType.SharedMailbox)
litDisplayName.Text += GetSharedLocalizedString("SharedMailbox.Text");
if (account.AccountType == ExchangeAccountType.ResourceMailbox)
litDisplayName.Text += GetSharedLocalizedString("ResourceMailbox.Text");
}
catch (Exception ex)
{

View file

@ -67,6 +67,16 @@ namespace WebsitePanel.Portal.ExchangeServer
litDisplayName.Text = mailbox.DisplayName;
sendAsPermission.SetAccounts(mailbox.SendAsAccounts);
fullAccessPermission.SetAccounts(mailbox.FullAccessAccounts);
// get account meta
ExchangeAccount account = ES.Services.ExchangeServer.GetAccount(PanelRequest.ItemID, PanelRequest.AccountID);
if (account.AccountType == ExchangeAccountType.SharedMailbox)
litDisplayName.Text += GetSharedLocalizedString("SharedMailbox.Text");
if (account.AccountType == ExchangeAccountType.ResourceMailbox)
litDisplayName.Text += GetSharedLocalizedString("ResourceMailbox.Text");
}
catch (Exception ex)
{

View file

@ -25,6 +25,9 @@
</div>
<div class="FormButtonsBarCleanRight">
<asp:Panel ID="SearchPanel" runat="server" DefaultButton="cmdSearch">
<asp:CheckBox ID="chkMailboxes" runat="server" meta:resourcekey="chkMailboxes" Text="Mailboxes" AutoPostBack="true" OnCheckedChanged="chkMailboxes_CheckedChanged"/>
<asp:CheckBox ID="chkResourceMailboxes" runat="server" meta:resourcekey="chkResourceMailboxes" Text="Resource Mailboxes" AutoPostBack="true" OnCheckedChanged="chkMailboxes_CheckedChanged"/>
<asp:CheckBox ID="chkSharedMailboxes" runat="server" meta:resourcekey="chkSharedMailboxes" Text="Shared Mailboxes" AutoPostBack="true" OnCheckedChanged="chkMailboxes_CheckedChanged"/>
<asp:DropDownList ID="ddlPageSize" runat="server" AutoPostBack="True"
onselectedindexchanged="ddlPageSize_SelectedIndexChanged">
<asp:ListItem>10</asp:ListItem>

View file

@ -60,6 +60,10 @@ namespace WebsitePanel.Portal.ExchangeServer
if (!IsPostBack)
{
chkMailboxes.Checked = true;
chkResourceMailboxes.Checked = true;
chkSharedMailboxes.Checked = true;
BindStats();
}
@ -246,5 +250,25 @@ namespace WebsitePanel.Portal.ExchangeServer
return serviceLevel;
}
protected void chkMailboxes_CheckedChanged(object sender, EventArgs e)
{
List<string> accountTypes = new List<string>();
if ((!chkMailboxes.Checked)&&(!chkSharedMailboxes.Checked)&&(!chkResourceMailboxes.Checked))
chkMailboxes.Checked = true;
if (chkMailboxes.Checked)
accountTypes.AddRange(new string[] {"1","5","6"});
if (chkSharedMailboxes.Checked)
accountTypes.Add("10");
if (chkResourceMailboxes.Checked)
accountTypes.Add("11");
odsAccountsPaged.SelectParameters["accountTypes"].DefaultValue = string.Join(",", accountTypes);
}
}
}

View file

@ -66,6 +66,33 @@ namespace WebsitePanel.Portal.ExchangeServer {
/// </remarks>
protected global::System.Web.UI.WebControls.Panel SearchPanel;
/// <summary>
/// chkMailboxes 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.CheckBox chkMailboxes;
/// <summary>
/// chkResourceMailboxes 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.CheckBox chkResourceMailboxes;
/// <summary>
/// chkSharedMailboxes 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.CheckBox chkSharedMailboxes;
/// <summary>
/// ddlPageSize control.
/// </summary>