Partial Check in Exchange Litigation Hold

This commit is contained in:
robvde 2012-12-08 09:24:08 +04:00
parent 5de2f648b8
commit 87528108f8
29 changed files with 626 additions and 7013 deletions

View file

@ -1,4 +1,4 @@
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
// <auto-generated> // <auto-generated>
// This code was generated by a tool. // This code was generated by a tool.
// Runtime Version:4.0.30319.18010 // Runtime Version:4.0.30319.18010
@ -10,7 +10,6 @@
using System; using System;
using System.Reflection; using System.Reflection;
using System.Resources;
using System.Runtime.CompilerServices; using System.Runtime.CompilerServices;
using System.Runtime.InteropServices; using System.Runtime.InteropServices;

File diff suppressed because it is too large Load diff

View file

@ -1,4 +1,4 @@
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
// <auto-generated> // <auto-generated>
// This code was generated by a tool. // This code was generated by a tool.
// Runtime Version:4.0.30319.18010 // Runtime Version:4.0.30319.18010
@ -10,7 +10,6 @@
using System; using System;
using System.Reflection; using System.Reflection;
using System.Resources;
using System.Runtime.CompilerServices; using System.Runtime.CompilerServices;
using System.Runtime.InteropServices; using System.Runtime.InteropServices;

View file

@ -13,7 +13,6 @@ Option Explicit On
Imports System Imports System
Imports System.Reflection Imports System.Reflection
Imports System.Resources
Imports System.Runtime.CompilerServices Imports System.Runtime.CompilerServices
Imports System.Runtime.InteropServices Imports System.Runtime.InteropServices
<Assembly: AssemblyCompany("Outercurve Foundation"), _ <Assembly: AssemblyCompany("Outercurve Foundation"), _

View file

@ -114,6 +114,8 @@ order by rg.groupOrder
public const string EXCHANGE2007_MAXRECEIVEMESSAGESIZEKB = "Exchange2007.MaxReceiveMessageSizeKB"; // Max Receive Message Size public const string EXCHANGE2007_MAXRECEIVEMESSAGESIZEKB = "Exchange2007.MaxReceiveMessageSizeKB"; // Max Receive Message Size
public const string EXCHANGE2007_ISCONSUMER = "Exchange2007.IsConsumer"; // Is Consumer Organization public const string EXCHANGE2007_ISCONSUMER = "Exchange2007.IsConsumer"; // Is Consumer Organization
public const string EXCHANGE2007_ENABLEDPLANSEDITING = "Exchange2007.EnablePlansEditing"; // Enabled plans editing public const string EXCHANGE2007_ENABLEDPLANSEDITING = "Exchange2007.EnablePlansEditing"; // Enabled plans editing
public const string EXCHANGE2007_ALLOWLITIGATIONHOLD = "Exchange2007.AllowLitigationHold";
public const string EXCHANGE2007_RECOVERABLEITEMSSPACE = "Exchange2007.RecoverableItemsSpace";
public const string MSSQL2000_DATABASES = "MsSQL2000.Databases"; // Databases public const string MSSQL2000_DATABASES = "MsSQL2000.Databases"; // Databases
public const string MSSQL2000_USERS = "MsSQL2000.Users"; // Users public const string MSSQL2000_USERS = "MsSQL2000.Users"; // Users
public const string MSSQL2000_MAXDATABASESIZE = "MsSQL2000.MaxDatabaseSize"; // Max Database Size public const string MSSQL2000_MAXDATABASESIZE = "MsSQL2000.MaxDatabaseSize"; // Max Database Size

View file

@ -31,6 +31,7 @@ using System.IO;
using System.Text; using System.Text;
using System.Security.Cryptography; using System.Security.Cryptography;
using System.Configuration; using System.Configuration;
using Microsoft.Win32;
namespace WebsitePanel.EnterpriseServer namespace WebsitePanel.EnterpriseServer
{ {
@ -39,9 +40,32 @@ namespace WebsitePanel.EnterpriseServer
/// </summary> /// </summary>
public class CryptoUtils public class CryptoUtils
{ {
static string EnterpriseServerRegistryPath = "SOFTWARE\\WebsitePanel\\EnterpriseServer";
public static string CryptoKey public static string CryptoKey
{ {
get { return ConfigurationManager.AppSettings["WebsitePanel.CryptoKey"]; } get
{
string Key = ConfigurationManager.AppSettings["WebsitePanel.AltCryptoKey"];
string value = string.Empty;
if (!string.IsNullOrEmpty(Key))
{
RegistryKey root = Registry.LocalMachine;
RegistryKey rk = root.OpenSubKey(EnterpriseServerRegistryPath);
if (rk != null)
{
value = (string)rk.GetValue(Key, null);
rk.Close();
}
}
if (!string.IsNullOrEmpty(value))
return value;
else
return ConfigurationManager.AppSettings["WebsitePanel.CryptoKey"];
}
} }
public static bool EncryptionEnabled public static bool EncryptionEnabled

View file

@ -34,6 +34,7 @@ using System.Text.RegularExpressions;
using WebsitePanel.Providers.HostedSolution; using WebsitePanel.Providers.HostedSolution;
using Microsoft.ApplicationBlocks.Data; using Microsoft.ApplicationBlocks.Data;
using System.Collections.Generic; using System.Collections.Generic;
using Microsoft.Win32;
namespace WebsitePanel.EnterpriseServer namespace WebsitePanel.EnterpriseServer
{ {
@ -42,10 +43,30 @@ namespace WebsitePanel.EnterpriseServer
/// </summary> /// </summary>
public static class DataProvider public static class DataProvider
{ {
static string EnterpriseServerRegistryPath = "SOFTWARE\\WebsitePanel\\EnterpriseServer";
private static string ConnectionString private static string ConnectionString
{ {
get get
{ {
string ConnectionKey = ConfigurationManager.AppSettings["WebsitePanel.AltConnectionString"];
string value = string.Empty;
if (!string.IsNullOrEmpty(ConnectionKey))
{
RegistryKey root = Registry.LocalMachine;
RegistryKey rk = root.OpenSubKey(EnterpriseServerRegistryPath);
if (rk != null)
{
value = (string)rk.GetValue(ConnectionKey, null);
rk.Close();
}
}
if (!string.IsNullOrEmpty(value))
return value;
else
return ConfigurationManager.ConnectionStrings["EnterpriseServer"].ConnectionString; return ConfigurationManager.ConnectionStrings["EnterpriseServer"].ConnectionString;
} }
} }
@ -2512,7 +2533,8 @@ namespace WebsitePanel.EnterpriseServer
#region Exchange Mailbox Plans #region Exchange Mailbox Plans
public static int AddExchangeMailboxPlan(int itemID, string mailboxPlan, bool enableActiveSync, bool enableIMAP, bool enableMAPI, bool enableOWA, bool enablePOP, public static int AddExchangeMailboxPlan(int itemID, string mailboxPlan, bool enableActiveSync, bool enableIMAP, bool enableMAPI, bool enableOWA, bool enablePOP,
bool isDefault, int issueWarningPct, int keepDeletedItemsDays, int mailboxSizeMB, int maxReceiveMessageSizeKB, int maxRecipients, bool isDefault, int issueWarningPct, int keepDeletedItemsDays, int mailboxSizeMB, int maxReceiveMessageSizeKB, int maxRecipients,
int maxSendMessageSizeKB, int prohibitSendPct, int prohibitSendReceivePct, bool hideFromAddressBook, int mailboxPlanType) int maxSendMessageSizeKB, int prohibitSendPct, int prohibitSendReceivePct, bool hideFromAddressBook, int mailboxPlanType,
bool enabledLitigationHold, long recoverabelItemsSpace, long recoverabelItemsWarning)
{ {
SqlParameter outParam = new SqlParameter("@MailboxPlanId", SqlDbType.Int); SqlParameter outParam = new SqlParameter("@MailboxPlanId", SqlDbType.Int);
outParam.Direction = ParameterDirection.Output; outParam.Direction = ParameterDirection.Output;
@ -2539,7 +2561,10 @@ namespace WebsitePanel.EnterpriseServer
new SqlParameter("@ProhibitSendPct", prohibitSendPct), new SqlParameter("@ProhibitSendPct", prohibitSendPct),
new SqlParameter("@ProhibitSendReceivePct", prohibitSendReceivePct), new SqlParameter("@ProhibitSendReceivePct", prohibitSendReceivePct),
new SqlParameter("@HideFromAddressBook", hideFromAddressBook), new SqlParameter("@HideFromAddressBook", hideFromAddressBook),
new SqlParameter("@MailboxPlanType", mailboxPlanType) new SqlParameter("@MailboxPlanType", mailboxPlanType),
new SqlParameter("@AllowLitigationHold",enabledLitigationHold),
new SqlParameter("@RecoverableItemsWarningPct", recoverabelItemsSpace),
new SqlParameter("@RecoverableItemsSpace",recoverabelItemsWarning)
); );
return Convert.ToInt32(outParam.Value); return Convert.ToInt32(outParam.Value);
@ -2549,7 +2574,8 @@ namespace WebsitePanel.EnterpriseServer
public static void UpdateExchangeMailboxPlan(int mailboxPlanID, string mailboxPlan, bool enableActiveSync, bool enableIMAP, bool enableMAPI, bool enableOWA, bool enablePOP, public static void UpdateExchangeMailboxPlan(int mailboxPlanID, string mailboxPlan, bool enableActiveSync, bool enableIMAP, bool enableMAPI, bool enableOWA, bool enablePOP,
bool isDefault, int issueWarningPct, int keepDeletedItemsDays, int mailboxSizeMB, int maxReceiveMessageSizeKB, int maxRecipients, bool isDefault, int issueWarningPct, int keepDeletedItemsDays, int mailboxSizeMB, int maxReceiveMessageSizeKB, int maxRecipients,
int maxSendMessageSizeKB, int prohibitSendPct, int prohibitSendReceivePct, bool hideFromAddressBook, int mailboxPlanType) int maxSendMessageSizeKB, int prohibitSendPct, int prohibitSendReceivePct, bool hideFromAddressBook, int mailboxPlanType,
bool enabledLitigationHold, long recoverabelItemsSpace, long recoverabelItemsWarning)
{ {
SqlHelper.ExecuteNonQuery( SqlHelper.ExecuteNonQuery(
ConnectionString, ConnectionString,
@ -2572,7 +2598,10 @@ namespace WebsitePanel.EnterpriseServer
new SqlParameter("@ProhibitSendPct", prohibitSendPct), new SqlParameter("@ProhibitSendPct", prohibitSendPct),
new SqlParameter("@ProhibitSendReceivePct", prohibitSendReceivePct), new SqlParameter("@ProhibitSendReceivePct", prohibitSendReceivePct),
new SqlParameter("@HideFromAddressBook", hideFromAddressBook), new SqlParameter("@HideFromAddressBook", hideFromAddressBook),
new SqlParameter("@MailboxPlanType", mailboxPlanType) new SqlParameter("@MailboxPlanType", mailboxPlanType),
new SqlParameter("@AllowLitigationHold", enabledLitigationHold),
new SqlParameter("@RecoverableItemsWarningPct", recoverabelItemsSpace),
new SqlParameter("@RecoverableItemsSpace", recoverabelItemsWarning)
); );
} }

View file

@ -1709,6 +1709,25 @@ namespace WebsitePanel.EnterpriseServer
return BusinessErrorCodes.ERROR_EXCHANGE_STORAGE_QUOTAS_EXCEED_HOST_VALUES; return BusinessErrorCodes.ERROR_EXCHANGE_STORAGE_QUOTAS_EXCEED_HOST_VALUES;
} }
int maxRecoverableItemsSpace = -1;
int quotaRecoverableItemsUsed = 0;
if (cntx.Quotas.ContainsKey(Quotas.EXCHANGE2007_RECOVERABLEITEMSSPACE)
&& cntx.Quotas[Quotas.EXCHANGE2007_RECOVERABLEITEMSSPACE].QuotaAllocatedValue > 0)
{
maxRecoverableItemsSpace = cntx.Quotas[Quotas.EXCHANGE2007_RECOVERABLEITEMSSPACE].QuotaAllocatedValue;
quotaRecoverableItemsUsed = cntx.Quotas[Quotas.EXCHANGE2007_RECOVERABLEITEMSSPACE].QuotaUsedValue;
}
if (maxRecoverableItemsSpace != -1)
{
if (plan.RecoverableItemsSpace == -1)
return BusinessErrorCodes.ERROR_EXCHANGE_STORAGE_QUOTAS_EXCEED_HOST_VALUES;
if ((quotaRecoverableItemsUsed + plan.RecoverableItemsSpace) > (maxRecoverableItemsSpace))
return BusinessErrorCodes.ERROR_EXCHANGE_STORAGE_QUOTAS_EXCEED_HOST_VALUES;
}
//GetServiceSettings //GetServiceSettings
StringDictionary primSettings = ServerController.GetServiceSettings(exchangeServiceId); StringDictionary primSettings = ServerController.GetServiceSettings(exchangeServiceId);
@ -1729,7 +1748,10 @@ namespace WebsitePanel.EnterpriseServer
plan.MaxSendMessageSizeKB, plan.MaxSendMessageSizeKB,
plan.MaxReceiveMessageSizeKB, plan.MaxReceiveMessageSizeKB,
plan.HideFromAddressBook, plan.HideFromAddressBook,
Convert.ToBoolean(cntx.Quotas[Quotas.EXCHANGE2007_ISCONSUMER].QuotaAllocatedValue)); Convert.ToBoolean(cntx.Quotas[Quotas.EXCHANGE2007_ISCONSUMER].QuotaAllocatedValue),
plan.AllowLitigationHold,
plan.RecoverableItemsSpace != -1 ? (plan.RecoverableItemsSpace * 1024) : -1,
plan.RecoverableItemsSpace != -1 ? (((long)plan.RecoverableItemsWarningPct * (long)plan.RecoverableItemsSpace * 1024) / 100) : -1);
MailboxManagerActions pmmActions = MailboxManagerActions.GeneralSettings MailboxManagerActions pmmActions = MailboxManagerActions.GeneralSettings
| MailboxManagerActions.MailFlowSettings | MailboxManagerActions.MailFlowSettings
@ -2653,6 +2675,24 @@ namespace WebsitePanel.EnterpriseServer
} }
} }
int maxRecoverableItemsSpace = -1;
int quotaRecoverableItemsUsed = 0;
if (cntx.Quotas.ContainsKey(Quotas.EXCHANGE2007_RECOVERABLEITEMSSPACE)
&& cntx.Quotas[Quotas.EXCHANGE2007_RECOVERABLEITEMSSPACE].QuotaAllocatedValue > 0)
{
maxRecoverableItemsSpace = cntx.Quotas[Quotas.EXCHANGE2007_RECOVERABLEITEMSSPACE].QuotaAllocatedValue;
quotaRecoverableItemsUsed = cntx.Quotas[Quotas.EXCHANGE2007_RECOVERABLEITEMSSPACE].QuotaUsedValue;
}
if (maxRecoverableItemsSpace != -1)
{
if (plan.RecoverableItemsSpace == -1)
return BusinessErrorCodes.ERROR_EXCHANGE_STORAGE_QUOTAS_EXCEED_HOST_VALUES;
if ((quotaRecoverableItemsUsed + plan.RecoverableItemsSpace) > (maxRecoverableItemsSpace))
return BusinessErrorCodes.ERROR_EXCHANGE_STORAGE_QUOTAS_EXCEED_HOST_VALUES;
}
// get mailbox settings // get mailbox settings
int exchangeServiceId = GetExchangeServiceID(org.PackageId); int exchangeServiceId = GetExchangeServiceID(org.PackageId);
ExchangeServer exchange = GetExchangeServer(exchangeServiceId, org.ServiceId); ExchangeServer exchange = GetExchangeServer(exchangeServiceId, org.ServiceId);
@ -2671,7 +2711,10 @@ namespace WebsitePanel.EnterpriseServer
plan.KeepDeletedItemsDays, plan.KeepDeletedItemsDays,
plan.MaxRecipients, plan.MaxRecipients,
plan.MaxSendMessageSizeKB, plan.MaxSendMessageSizeKB,
plan.MaxReceiveMessageSizeKB); plan.MaxReceiveMessageSizeKB,
plan.AllowLitigationHold,
plan.RecoverableItemsSpace != -1 ? (plan.RecoverableItemsSpace * 1024) : -1,
plan.RecoverableItemsSpace != -1 ? (((long)plan.RecoverableItemsWarningPct * (long)plan.RecoverableItemsSpace * 1024) / 100) : -1);
DataProvider.SetExchangeAccountMailboxPlan(accountId, mailboxPlanId); DataProvider.SetExchangeAccountMailboxPlan(accountId, mailboxPlanId);
@ -2835,11 +2878,18 @@ namespace WebsitePanel.EnterpriseServer
mailboxPlan.MaxRecipients = cntx.Quotas[Quotas.EXCHANGE2007_MAXRECIPIENTS].QuotaAllocatedValue; mailboxPlan.MaxRecipients = cntx.Quotas[Quotas.EXCHANGE2007_MAXRECIPIENTS].QuotaAllocatedValue;
if (Convert.ToBoolean(cntx.Quotas[Quotas.EXCHANGE2007_ISCONSUMER].QuotaAllocatedValue)) mailboxPlan.HideFromAddressBook = true; if (Convert.ToBoolean(cntx.Quotas[Quotas.EXCHANGE2007_ISCONSUMER].QuotaAllocatedValue)) mailboxPlan.HideFromAddressBook = true;
mailboxPlan.AllowLitigationHold = mailboxPlan.AllowLitigationHold & Convert.ToBoolean(cntx.Quotas[Quotas.EXCHANGE2007_ALLOWLITIGATIONHOLD].QuotaAllocatedValue);
if (cntx.Quotas[Quotas.EXCHANGE2007_RECOVERABLEITEMSSPACE].QuotaAllocatedValue != -1)
if (mailboxPlan.RecoverableItemsSpace > cntx.Quotas[Quotas.EXCHANGE2007_RECOVERABLEITEMSSPACE].QuotaAllocatedValue)
mailboxPlan.RecoverableItemsSpace = cntx.Quotas[Quotas.EXCHANGE2007_RECOVERABLEITEMSSPACE].QuotaAllocatedValue;
} }
return DataProvider.AddExchangeMailboxPlan(itemID, mailboxPlan.MailboxPlan, mailboxPlan.EnableActiveSync, mailboxPlan.EnableIMAP, mailboxPlan.EnableMAPI, mailboxPlan.EnableOWA, mailboxPlan.EnablePOP, return DataProvider.AddExchangeMailboxPlan(itemID, mailboxPlan.MailboxPlan, mailboxPlan.EnableActiveSync, mailboxPlan.EnableIMAP, mailboxPlan.EnableMAPI, mailboxPlan.EnableOWA, mailboxPlan.EnablePOP,
mailboxPlan.IsDefault, mailboxPlan.IssueWarningPct, mailboxPlan.KeepDeletedItemsDays, mailboxPlan.MailboxSizeMB, mailboxPlan.MaxReceiveMessageSizeKB, mailboxPlan.MaxRecipients, mailboxPlan.IsDefault, mailboxPlan.IssueWarningPct, mailboxPlan.KeepDeletedItemsDays, mailboxPlan.MailboxSizeMB, mailboxPlan.MaxReceiveMessageSizeKB, mailboxPlan.MaxRecipients,
mailboxPlan.MaxSendMessageSizeKB, mailboxPlan.ProhibitSendPct, mailboxPlan.ProhibitSendReceivePct, mailboxPlan.HideFromAddressBook, mailboxPlan.MailboxPlanType); mailboxPlan.MaxSendMessageSizeKB, mailboxPlan.ProhibitSendPct, mailboxPlan.ProhibitSendReceivePct, mailboxPlan.HideFromAddressBook, mailboxPlan.MailboxPlanType,
mailboxPlan.AllowLitigationHold, mailboxPlan.RecoverableItemsSpace, mailboxPlan.RecoverableItemsWarningPct);
} }
catch (Exception ex) catch (Exception ex)
{ {
@ -2897,11 +2947,19 @@ namespace WebsitePanel.EnterpriseServer
mailboxPlan.MaxRecipients = cntx.Quotas[Quotas.EXCHANGE2007_MAXRECIPIENTS].QuotaAllocatedValue; mailboxPlan.MaxRecipients = cntx.Quotas[Quotas.EXCHANGE2007_MAXRECIPIENTS].QuotaAllocatedValue;
if (Convert.ToBoolean(cntx.Quotas[Quotas.EXCHANGE2007_ISCONSUMER].QuotaAllocatedValue)) mailboxPlan.HideFromAddressBook = true; if (Convert.ToBoolean(cntx.Quotas[Quotas.EXCHANGE2007_ISCONSUMER].QuotaAllocatedValue)) mailboxPlan.HideFromAddressBook = true;
mailboxPlan.AllowLitigationHold = mailboxPlan.AllowLitigationHold & Convert.ToBoolean(cntx.Quotas[Quotas.EXCHANGE2007_ALLOWLITIGATIONHOLD].QuotaAllocatedValue);
if (cntx.Quotas[Quotas.EXCHANGE2007_RECOVERABLEITEMSSPACE].QuotaAllocatedValue != -1)
if (mailboxPlan.RecoverableItemsSpace > cntx.Quotas[Quotas.EXCHANGE2007_RECOVERABLEITEMSSPACE].QuotaAllocatedValue)
mailboxPlan.RecoverableItemsSpace = cntx.Quotas[Quotas.EXCHANGE2007_RECOVERABLEITEMSSPACE].QuotaAllocatedValue;
} }
DataProvider.UpdateExchangeMailboxPlan(mailboxPlan.MailboxPlanId, mailboxPlan.MailboxPlan, mailboxPlan.EnableActiveSync, mailboxPlan.EnableIMAP, mailboxPlan.EnableMAPI, mailboxPlan.EnableOWA, mailboxPlan.EnablePOP, DataProvider.UpdateExchangeMailboxPlan(mailboxPlan.MailboxPlanId, mailboxPlan.MailboxPlan, mailboxPlan.EnableActiveSync, mailboxPlan.EnableIMAP, mailboxPlan.EnableMAPI, mailboxPlan.EnableOWA, mailboxPlan.EnablePOP,
mailboxPlan.IsDefault, mailboxPlan.IssueWarningPct, mailboxPlan.KeepDeletedItemsDays, mailboxPlan.MailboxSizeMB, mailboxPlan.MaxReceiveMessageSizeKB, mailboxPlan.MaxRecipients, mailboxPlan.IsDefault, mailboxPlan.IssueWarningPct, mailboxPlan.KeepDeletedItemsDays, mailboxPlan.MailboxSizeMB, mailboxPlan.MaxReceiveMessageSizeKB, mailboxPlan.MaxRecipients,
mailboxPlan.MaxSendMessageSizeKB, mailboxPlan.ProhibitSendPct, mailboxPlan.ProhibitSendReceivePct, mailboxPlan.HideFromAddressBook, mailboxPlan.MailboxPlanType); mailboxPlan.MaxSendMessageSizeKB, mailboxPlan.ProhibitSendPct, mailboxPlan.ProhibitSendReceivePct, mailboxPlan.HideFromAddressBook, mailboxPlan.MailboxPlanType,
mailboxPlan.AllowLitigationHold, mailboxPlan.RecoverableItemsSpace, mailboxPlan.RecoverableItemsWarningPct);
} }
catch (Exception ex) catch (Exception ex)
{ {

View file

@ -18,6 +18,9 @@
<!-- Maximum waiting time when sending request to the remote server <!-- Maximum waiting time when sending request to the remote server
The value is in seconds. "-1" - infinite. --> The value is in seconds. "-1" - infinite. -->
<add key="WebsitePanel.EnterpriseServer.ServerRequestTimeout" value="3600" /> <add key="WebsitePanel.EnterpriseServer.ServerRequestTimeout" value="3600" />
<!-- Alternative connection string, pulls the value from registry -->
<add key="WebsitePanel.AltConnectionString" value="ConnectionString" />
<add key="WebsitePanel.AltCryptoKey" value="CryptoKey" />
</appSettings> </appSettings>
<system.web> <system.web>
<!-- Disable any authentication --> <!-- Disable any authentication -->

View file

@ -20,6 +20,10 @@
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion> <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
<TargetFrameworkProfile /> <TargetFrameworkProfile />
<UseIISExpress>false</UseIISExpress> <UseIISExpress>false</UseIISExpress>
<IISExpressSSLPort />
<IISExpressAnonymousAuthentication />
<IISExpressWindowsAuthentication />
<IISExpressUseClassicPipelineMode />
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols> <DebugSymbols>true</DebugSymbols>
@ -411,9 +415,6 @@
<Content Include="esWebApplicationGallery.asmx" /> <Content Include="esWebApplicationGallery.asmx" />
<EmbeddedResource Include="Images\logo.png" /> <EmbeddedResource Include="Images\logo.png" />
<Content Include="SystemEventHandlers.config" /> <Content Include="SystemEventHandlers.config" />
<Content Include="Web6.config">
<SubType>Designer</SubType>
</Content>
<None Include="TaskEventHandlers.config" /> <None Include="TaskEventHandlers.config" />
<None Include="WsePolicyCache.Config" /> <None Include="WsePolicyCache.Config" />
</ItemGroup> </ItemGroup>

View file

@ -56,6 +56,10 @@ namespace WebsitePanel.Providers.HostedSolution
bool hideFromAddressBook; bool hideFromAddressBook;
int mailboxPlanType; int mailboxPlanType;
bool allowLitigationHold;
int recoverableItemsWarningPct;
int recoverableItemsSpace;
public int ItemId public int ItemId
{ {
@ -173,5 +177,24 @@ namespace WebsitePanel.Providers.HostedSolution
set { this.hideFromAddressBook = value; } set { this.hideFromAddressBook = value; }
} }
public bool AllowLitigationHold
{
get { return this.allowLitigationHold; }
set { this.allowLitigationHold = value; }
}
public int RecoverableItemsWarningPct
{
get { return this.recoverableItemsWarningPct; }
set { this.recoverableItemsWarningPct = value; }
}
public int RecoverableItemsSpace
{
get { return this.recoverableItemsSpace; }
set { this.recoverableItemsSpace = value; }
}
} }
} }

View file

@ -39,7 +39,7 @@ namespace WebsitePanel.Providers.HostedSolution
string accountName, bool enablePOP, bool enableIMAP, string accountName, bool enablePOP, bool enableIMAP,
bool enableOWA, bool enableMAPI, bool enableActiveSync, bool enableOWA, bool enableMAPI, bool enableActiveSync,
long issueWarningKB, long prohibitSendKB, long prohibitSendReceiveKB, long issueWarningKB, long prohibitSendKB, long prohibitSendReceiveKB,
int keepDeletedItemsDays, int maxRecipients, int maxSendMessageSizeKB, int maxReceiveMessageSizeKB, bool hideFromAddressBook, bool isConsumer); int keepDeletedItemsDays, int maxRecipients, int maxSendMessageSizeKB, int maxReceiveMessageSizeKB, bool hideFromAddressBook, bool isConsumer, bool enabledLitigationHold, long recoverabelItemsSpace, long recoverabelItemsWarning);
Organization ExtendToExchangeOrganization(string organizationId, string securityGroup, bool IsConsumer); Organization ExtendToExchangeOrganization(string organizationId, string securityGroup, bool IsConsumer);
string GetOABVirtualDirectory(); string GetOABVirtualDirectory();
@ -57,8 +57,6 @@ namespace WebsitePanel.Providers.HostedSolution
string[] GetAuthoritativeDomains(); string[] GetAuthoritativeDomains();
// Mailboxes // Mailboxes
//string CreateMailbox(string organizationId, string organizationDistinguishedName, string mailboxDatabase, string securityGroup, string offlineAddressBook, string addressBookPolicy, ExchangeAccountType accountType, string displayName, string accountName, string name, string domain, string password, bool enablePOP, bool enableIMAP, bool enableOWA, bool enableMAPI, bool enableActiveSync,
// int issueWarningKB, int prohibitSendKB, int prohibitSendReceiveKB, int keepDeletedItemsDays, int maxRecipients, int maxSendMessageSizeKB, int maxReceiveMessageSizeKB,bool hideFromAddressBook);
void DeleteMailbox(string accountName); void DeleteMailbox(string accountName);
void DisableMailbox(string id); void DisableMailbox(string id);
ExchangeMailbox GetMailboxGeneralSettings(string accountName); ExchangeMailbox GetMailboxGeneralSettings(string accountName);
@ -66,7 +64,7 @@ namespace WebsitePanel.Providers.HostedSolution
ExchangeMailbox GetMailboxMailFlowSettings(string accountName); ExchangeMailbox GetMailboxMailFlowSettings(string accountName);
void SetMailboxMailFlowSettings(string accountName, bool enableForwarding, string forwardingAccountName, bool forwardToBoth, string[] sendOnBehalfAccounts, string[] acceptAccounts, string[] rejectAccounts, bool requireSenderAuthentication); void SetMailboxMailFlowSettings(string accountName, bool enableForwarding, string forwardingAccountName, bool forwardToBoth, string[] sendOnBehalfAccounts, string[] acceptAccounts, string[] rejectAccounts, bool requireSenderAuthentication);
ExchangeMailbox GetMailboxAdvancedSettings(string accountName); ExchangeMailbox GetMailboxAdvancedSettings(string accountName);
void SetMailboxAdvancedSettings(string organizationId, string accountName, bool enablePOP, bool enableIMAP, bool enableOWA, bool enableMAPI, bool enableActiveSync, long issueWarningKB, long prohibitSendKB, long prohibitSendReceiveKB, int keepDeletedItemsDays, int maxRecipients, int maxSendMessageSizeKB, int maxReceiveMessageSizeKB); void SetMailboxAdvancedSettings(string organizationId, string accountName, bool enablePOP, bool enableIMAP, bool enableOWA, bool enableMAPI, bool enableActiveSync, long issueWarningKB, long prohibitSendKB, long prohibitSendReceiveKB, int keepDeletedItemsDays, int maxRecipients, int maxSendMessageSizeKB, int maxReceiveMessageSizeKB, bool enabledLitigationHold, long recoverabelItemsSpace, long recoverabelItemsWarning);
ExchangeEmailAddress[] GetMailboxEmailAddresses(string accountName); ExchangeEmailAddress[] GetMailboxEmailAddresses(string accountName);
void SetMailboxEmailAddresses(string accountName, string[] emailAddresses); void SetMailboxEmailAddresses(string accountName, string[] emailAddresses);
void SetMailboxPrimaryEmailAddress(string accountName, string emailAddress); void SetMailboxPrimaryEmailAddress(string accountName, string emailAddress);

View file

@ -251,20 +251,6 @@ namespace WebsitePanel.Providers.HostedSolution
SetMailboxPermissionsInternal(organizationId, accountName, sendAsAccounts, fullAccessAccounts); SetMailboxPermissionsInternal(organizationId, accountName, sendAsAccounts, fullAccessAccounts);
} }
/*
public string CreateMailbox(string organizationId, string organizationDistinguishedName,
string mailboxDatabase, string securityGroup, string offlineAddressBook, ExchangeAccountType accountType,
string displayName,
string accountName, string name, string domain, string password, bool enablePOP, bool enableIMAP,
bool enableOWA, bool enableMAPI, bool enableActiveSync,
int issueWarningKB, int prohibitSendKB, int prohibitSendReceiveKB, int keepDeletedItemsDays)
{
return CreateMailboxInternal(organizationId, organizationDistinguishedName, mailboxDatabase, securityGroup,
offlineAddressBook, accountType, displayName, accountName, name, domain, password, enablePOP, enableIMAP,
enableOWA, enableMAPI, enableActiveSync,
issueWarningKB, prohibitSendKB, prohibitSendReceiveKB, keepDeletedItemsDays);
}
*/
public void DeleteMailbox(string accountName) public void DeleteMailbox(string accountName)
{ {
DeleteMailboxInternal(accountName); DeleteMailboxInternal(accountName);
@ -301,11 +287,12 @@ namespace WebsitePanel.Providers.HostedSolution
public void SetMailboxAdvancedSettings(string organizationId, string accountName, bool enablePOP, public void SetMailboxAdvancedSettings(string organizationId, string accountName, bool enablePOP,
bool enableIMAP, bool enableOWA, bool enableMAPI, bool enableActiveSync, bool enableIMAP, bool enableOWA, bool enableMAPI, bool enableActiveSync,
long issueWarningKB, long prohibitSendKB, long prohibitSendReceiveKB, int keepDeletedItemsDays, int maxRecipients, int maxSendMessageSizeKB, long issueWarningKB, long prohibitSendKB, long prohibitSendReceiveKB, int keepDeletedItemsDays, int maxRecipients, int maxSendMessageSizeKB,
int maxReceiveMessageSizeKB) int maxReceiveMessageSizeKB, bool enabledLitigationHold, long recoverabelItemsSpace, long recoverabelItemsWarning)
{ {
SetMailboxAdvancedSettingsInternal(organizationId, accountName, enablePOP, enableIMAP, enableOWA, SetMailboxAdvancedSettingsInternal(organizationId, accountName, enablePOP, enableIMAP, enableOWA,
enableMAPI, enableActiveSync, issueWarningKB, enableMAPI, enableActiveSync, issueWarningKB,
prohibitSendKB, prohibitSendReceiveKB, keepDeletedItemsDays, maxRecipients, maxSendMessageSizeKB, maxReceiveMessageSizeKB); prohibitSendKB, prohibitSendReceiveKB, keepDeletedItemsDays, maxRecipients, maxSendMessageSizeKB, maxReceiveMessageSizeKB,
enabledLitigationHold, recoverabelItemsSpace, recoverabelItemsWarning);
} }
public ExchangeEmailAddress[] GetMailboxEmailAddresses(string accountName) public ExchangeEmailAddress[] GetMailboxEmailAddresses(string accountName)
@ -1845,14 +1832,14 @@ namespace WebsitePanel.Providers.HostedSolution
string accountName, bool enablePOP, bool enableIMAP, string accountName, bool enablePOP, bool enableIMAP,
bool enableOWA, bool enableMAPI, bool enableActiveSync, bool enableOWA, bool enableMAPI, bool enableActiveSync,
long issueWarningKB, long prohibitSendKB, long prohibitSendReceiveKB, int keepDeletedItemsDays, long issueWarningKB, long prohibitSendKB, long prohibitSendReceiveKB, int keepDeletedItemsDays,
int maxRecipients, int maxSendMessageSizeKB, int maxReceiveMessageSizeKB, bool hideFromAddressBook, bool IsConsumer) int maxRecipients, int maxSendMessageSizeKB, int maxReceiveMessageSizeKB, bool hideFromAddressBook, bool IsConsumer, bool enabledLitigationHold, long recoverabelItemsSpace, long recoverabelItemsWarning)
{ {
return CreateMailEnableUserInternal(upn, organizationId, organizationDistinguishedName, accountType, return CreateMailEnableUserInternal(upn, organizationId, organizationDistinguishedName, accountType,
mailboxDatabase, offlineAddressBook, addressBookPolicy, mailboxDatabase, offlineAddressBook, addressBookPolicy,
accountName, enablePOP, enableIMAP, accountName, enablePOP, enableIMAP,
enableOWA, enableMAPI, enableActiveSync, enableOWA, enableMAPI, enableActiveSync,
issueWarningKB, prohibitSendKB, prohibitSendReceiveKB, issueWarningKB, prohibitSendKB, prohibitSendReceiveKB,
keepDeletedItemsDays, maxRecipients, maxSendMessageSizeKB, maxReceiveMessageSizeKB, hideFromAddressBook, IsConsumer); keepDeletedItemsDays, maxRecipients, maxSendMessageSizeKB, maxReceiveMessageSizeKB, hideFromAddressBook, IsConsumer, enabledLitigationHold, recoverabelItemsSpace, recoverabelItemsWarning);
} }
internal virtual string CreateMailEnableUserInternal(string upn, string organizationId, string organizationDistinguishedName, ExchangeAccountType accountType, internal virtual string CreateMailEnableUserInternal(string upn, string organizationId, string organizationDistinguishedName, ExchangeAccountType accountType,
@ -1860,7 +1847,7 @@ namespace WebsitePanel.Providers.HostedSolution
string accountName, bool enablePOP, bool enableIMAP, string accountName, bool enablePOP, bool enableIMAP,
bool enableOWA, bool enableMAPI, bool enableActiveSync, bool enableOWA, bool enableMAPI, bool enableActiveSync,
long issueWarningKB, long prohibitSendKB, long prohibitSendReceiveKB, int keepDeletedItemsDays, long issueWarningKB, long prohibitSendKB, long prohibitSendReceiveKB, int keepDeletedItemsDays,
int maxRecipients, int maxSendMessageSizeKB, int maxReceiveMessageSizeKB, bool hideFromAddressBook, bool IsConsumer) int maxRecipients, int maxSendMessageSizeKB, int maxReceiveMessageSizeKB, bool hideFromAddressBook, bool IsConsumer, bool enabledLitigationHold, long recoverabelItemsSpace, long recoverabelItemsWarning)
{ {
ExchangeLog.LogStart("CreateMailEnableUserInternal"); ExchangeLog.LogStart("CreateMailEnableUserInternal");
@ -2485,7 +2472,7 @@ namespace WebsitePanel.Providers.HostedSolution
private void SetMailboxAdvancedSettingsInternal(string organizationId, string accountName, bool enablePOP, bool enableIMAP, private void SetMailboxAdvancedSettingsInternal(string organizationId, string accountName, bool enablePOP, bool enableIMAP,
bool enableOWA, bool enableMAPI, bool enableActiveSync, long issueWarningKB, long prohibitSendKB, bool enableOWA, bool enableMAPI, bool enableActiveSync, long issueWarningKB, long prohibitSendKB,
long prohibitSendReceiveKB, int keepDeletedItemsDays, int maxRecipients, int maxSendMessageSizeKB, long prohibitSendReceiveKB, int keepDeletedItemsDays, int maxRecipients, int maxSendMessageSizeKB,
int maxReceiveMessageSizeKB) int maxReceiveMessageSizeKB, bool enabledLitigationHold, long recoverabelItemsSpace, long recoverabelItemsWarning)
{ {
ExchangeLog.LogStart("SetMailboxAdvancedSettingsInternal"); ExchangeLog.LogStart("SetMailboxAdvancedSettingsInternal");
ExchangeLog.DebugInfo("Account: {0}", accountName); ExchangeLog.DebugInfo("Account: {0}", accountName);

View file

@ -249,20 +249,6 @@ namespace WebsitePanel.Providers.HostedSolution
SetMailboxPermissionsInternal(organizationId, accountName, sendAsAccounts, fullAccessAccounts); SetMailboxPermissionsInternal(organizationId, accountName, sendAsAccounts, fullAccessAccounts);
} }
/*
public string CreateMailbox(string organizationId, string organizationDistinguishedName,
string mailboxDatabase, string securityGroup, string offlineAddressBook, ExchangeAccountType accountType,
string displayName,
string accountName, string name, string domain, string password, bool enablePOP, bool enableIMAP,
bool enableOWA, bool enableMAPI, bool enableActiveSync,
int issueWarningKB, int prohibitSendKB, int prohibitSendReceiveKB, int keepDeletedItemsDays)
{
return CreateMailboxInternal(organizationId, organizationDistinguishedName, mailboxDatabase, securityGroup,
offlineAddressBook, accountType, displayName, accountName, name, domain, password, enablePOP, enableIMAP,
enableOWA, enableMAPI, enableActiveSync,
issueWarningKB, prohibitSendKB, prohibitSendReceiveKB, keepDeletedItemsDays);
}
*/
public void DeleteMailbox(string accountName) public void DeleteMailbox(string accountName)
{ {
DeleteMailboxInternal(accountName); DeleteMailboxInternal(accountName);
@ -299,11 +285,12 @@ namespace WebsitePanel.Providers.HostedSolution
public void SetMailboxAdvancedSettings(string organizationId, string accountName, bool enablePOP, public void SetMailboxAdvancedSettings(string organizationId, string accountName, bool enablePOP,
bool enableIMAP, bool enableOWA, bool enableMAPI, bool enableActiveSync, bool enableIMAP, bool enableOWA, bool enableMAPI, bool enableActiveSync,
long issueWarningKB, long prohibitSendKB, long prohibitSendReceiveKB, int keepDeletedItemsDays, int maxRecipients, int maxSendMessageSizeKB, long issueWarningKB, long prohibitSendKB, long prohibitSendReceiveKB, int keepDeletedItemsDays, int maxRecipients, int maxSendMessageSizeKB,
int maxReceiveMessageSizeKB) int maxReceiveMessageSizeKB, bool enabledLitigationHold, long recoverabelItemsSpace, long recoverabelItemsWarning)
{ {
SetMailboxAdvancedSettingsInternal(organizationId, accountName, enablePOP, enableIMAP, enableOWA, SetMailboxAdvancedSettingsInternal(organizationId, accountName, enablePOP, enableIMAP, enableOWA,
enableMAPI, enableActiveSync, issueWarningKB, enableMAPI, enableActiveSync, issueWarningKB,
prohibitSendKB, prohibitSendReceiveKB, keepDeletedItemsDays, maxRecipients, maxSendMessageSizeKB, maxReceiveMessageSizeKB); prohibitSendKB, prohibitSendReceiveKB, keepDeletedItemsDays, maxRecipients, maxSendMessageSizeKB, maxReceiveMessageSizeKB,
enabledLitigationHold, recoverabelItemsSpace, recoverabelItemsWarning);
} }
public ExchangeEmailAddress[] GetMailboxEmailAddresses(string accountName) public ExchangeEmailAddress[] GetMailboxEmailAddresses(string accountName)
@ -1770,14 +1757,14 @@ namespace WebsitePanel.Providers.HostedSolution
string accountName, bool enablePOP, bool enableIMAP, string accountName, bool enablePOP, bool enableIMAP,
bool enableOWA, bool enableMAPI, bool enableActiveSync, bool enableOWA, bool enableMAPI, bool enableActiveSync,
long issueWarningKB, long prohibitSendKB, long prohibitSendReceiveKB, int keepDeletedItemsDays, long issueWarningKB, long prohibitSendKB, long prohibitSendReceiveKB, int keepDeletedItemsDays,
int maxRecipients, int maxSendMessageSizeKB, int maxReceiveMessageSizeKB, bool hideFromAddressBook, bool IsConsumer) int maxRecipients, int maxSendMessageSizeKB, int maxReceiveMessageSizeKB, bool hideFromAddressBook, bool IsConsumer, bool enabledLitigationHold, long recoverabelItemsSpace, long recoverabelItemsWarning)
{ {
return CreateMailEnableUserInternal(upn, organizationId, organizationDistinguishedName, accountType, return CreateMailEnableUserInternal(upn, organizationId, organizationDistinguishedName, accountType,
mailboxDatabase, offlineAddressBook, addressBookPolicy, mailboxDatabase, offlineAddressBook, addressBookPolicy,
accountName, enablePOP, enableIMAP, accountName, enablePOP, enableIMAP,
enableOWA, enableMAPI, enableActiveSync, enableOWA, enableMAPI, enableActiveSync,
issueWarningKB, prohibitSendKB, prohibitSendReceiveKB, issueWarningKB, prohibitSendKB, prohibitSendReceiveKB,
keepDeletedItemsDays, maxRecipients, maxSendMessageSizeKB, maxReceiveMessageSizeKB, hideFromAddressBook, IsConsumer); keepDeletedItemsDays, maxRecipients, maxSendMessageSizeKB, maxReceiveMessageSizeKB, hideFromAddressBook, IsConsumer, enabledLitigationHold, recoverabelItemsSpace, recoverabelItemsWarning);
} }
internal virtual string CreateMailEnableUserInternal(string upn, string organizationId, string organizationDistinguishedName, ExchangeAccountType accountType, internal virtual string CreateMailEnableUserInternal(string upn, string organizationId, string organizationDistinguishedName, ExchangeAccountType accountType,
@ -1785,7 +1772,7 @@ namespace WebsitePanel.Providers.HostedSolution
string accountName, bool enablePOP, bool enableIMAP, string accountName, bool enablePOP, bool enableIMAP,
bool enableOWA, bool enableMAPI, bool enableActiveSync, bool enableOWA, bool enableMAPI, bool enableActiveSync,
long issueWarningKB, long prohibitSendKB, long prohibitSendReceiveKB, int keepDeletedItemsDays, long issueWarningKB, long prohibitSendKB, long prohibitSendReceiveKB, int keepDeletedItemsDays,
int maxRecipients, int maxSendMessageSizeKB, int maxReceiveMessageSizeKB, bool hideFromAddressBook, bool IsConsumer) int maxRecipients, int maxSendMessageSizeKB, int maxReceiveMessageSizeKB, bool hideFromAddressBook, bool IsConsumer,bool enabledLitigationHold, long recoverabelItemsSpace, long recoverabelItemsWarning)
{ {
ExchangeLog.LogStart("CreateMailEnableUserInternal"); ExchangeLog.LogStart("CreateMailEnableUserInternal");
@ -2428,7 +2415,7 @@ namespace WebsitePanel.Providers.HostedSolution
private void SetMailboxAdvancedSettingsInternal(string organizationId, string accountName, bool enablePOP, bool enableIMAP, private void SetMailboxAdvancedSettingsInternal(string organizationId, string accountName, bool enablePOP, bool enableIMAP,
bool enableOWA, bool enableMAPI, bool enableActiveSync, long issueWarningKB, long prohibitSendKB, bool enableOWA, bool enableMAPI, bool enableActiveSync, long issueWarningKB, long prohibitSendKB,
long prohibitSendReceiveKB, int keepDeletedItemsDays, int maxRecipients, int maxSendMessageSizeKB, long prohibitSendReceiveKB, int keepDeletedItemsDays, int maxRecipients, int maxSendMessageSizeKB,
int maxReceiveMessageSizeKB) int maxReceiveMessageSizeKB, bool enabledLitigationHold, long recoverabelItemsSpace, long recoverabelItemsWarning)
{ {
ExchangeLog.LogStart("SetMailboxAdvancedSettingsInternal"); ExchangeLog.LogStart("SetMailboxAdvancedSettingsInternal");
ExchangeLog.DebugInfo("Account: {0}", accountName); ExchangeLog.DebugInfo("Account: {0}", accountName);

View file

@ -327,7 +327,7 @@ namespace WebsitePanel.Providers.HostedSolution
string accountName, bool enablePOP, bool enableIMAP, string accountName, bool enablePOP, bool enableIMAP,
bool enableOWA, bool enableMAPI, bool enableActiveSync, bool enableOWA, bool enableMAPI, bool enableActiveSync,
long issueWarningKB, long prohibitSendKB, long prohibitSendReceiveKB, int keepDeletedItemsDays, long issueWarningKB, long prohibitSendKB, long prohibitSendReceiveKB, int keepDeletedItemsDays,
int maxRecipients, int maxSendMessageSizeKB, int maxReceiveMessageSizeKB, bool hideFromAddressBook, bool IsConsumer) int maxRecipients, int maxSendMessageSizeKB, int maxReceiveMessageSizeKB, bool hideFromAddressBook, bool IsConsumer, bool enabledLitigationHold, long recoverabelItemsSpace, long recoverabelItemsWarning)
{ {
ExchangeLog.LogStart("CreateMailEnableUserInternal"); ExchangeLog.LogStart("CreateMailEnableUserInternal");

View file

@ -32,6 +32,7 @@
<ErrorReport>prompt</ErrorReport> <ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel> <WarningLevel>4</WarningLevel>
<WarningsAsErrors>618</WarningsAsErrors> <WarningsAsErrors>618</WarningsAsErrors>
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<Reference Include="System" /> <Reference Include="System" />

View file

@ -29,7 +29,7 @@
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
// <auto-generated> // <auto-generated>
// This code was generated by a tool. // This code was generated by a tool.
// Runtime Version:2.0.50727.5456 // Runtime Version:2.0.50727.6400
// //
// 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.
@ -37,13 +37,12 @@
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
// //
// This source code was auto-generated by wsdl, Version=2.0.50727.42. // This source code was auto-generated by wsdl, Version=2.0.50727.3038.
// //
using WebsitePanel.Providers.HostedSolution; using WebsitePanel.Providers.HostedSolution;
namespace WebsitePanel.Providers.Exchange namespace WebsitePanel.Providers.Exchange {
{
using System.Xml.Serialization; using System.Xml.Serialization;
using System.Web.Services; using System.Web.Services;
using System.ComponentModel; using System.ComponentModel;
@ -85,6 +84,8 @@ namespace WebsitePanel.Providers.Exchange
private System.Threading.SendOrPostCallback AddAuthoritativeDomainOperationCompleted; private System.Threading.SendOrPostCallback AddAuthoritativeDomainOperationCompleted;
private System.Threading.SendOrPostCallback ChangeAcceptedDomainTypeOperationCompleted;
private System.Threading.SendOrPostCallback GetAuthoritativeDomainsOperationCompleted; private System.Threading.SendOrPostCallback GetAuthoritativeDomainsOperationCompleted;
private System.Threading.SendOrPostCallback DeleteAuthoritativeDomainOperationCompleted; private System.Threading.SendOrPostCallback DeleteAuthoritativeDomainOperationCompleted;
@ -233,6 +234,9 @@ namespace WebsitePanel.Providers.Exchange
/// <remarks/> /// <remarks/>
public event AddAuthoritativeDomainCompletedEventHandler AddAuthoritativeDomainCompleted; public event AddAuthoritativeDomainCompletedEventHandler AddAuthoritativeDomainCompleted;
/// <remarks/>
public event ChangeAcceptedDomainTypeCompletedEventHandler ChangeAcceptedDomainTypeCompleted;
/// <remarks/> /// <remarks/>
public event GetAuthoritativeDomainsCompletedEventHandler GetAuthoritativeDomainsCompleted; public event GetAuthoritativeDomainsCompletedEventHandler GetAuthoritativeDomainsCompleted;
@ -516,7 +520,10 @@ namespace WebsitePanel.Providers.Exchange
int maxSendMessageSizeKB, int maxSendMessageSizeKB,
int maxReceiveMessageSizeKB, int maxReceiveMessageSizeKB,
bool hideFromAddressBook, bool hideFromAddressBook,
bool isConsumer) { bool isConsumer,
bool enabledLitigationHold,
long recoverabelItemsSpace,
long recoverabelItemsWarning) {
object[] results = this.Invoke("CreateMailEnableUser", new object[] { object[] results = this.Invoke("CreateMailEnableUser", new object[] {
upn, upn,
organizationId, organizationId,
@ -539,7 +546,10 @@ namespace WebsitePanel.Providers.Exchange
maxSendMessageSizeKB, maxSendMessageSizeKB,
maxReceiveMessageSizeKB, maxReceiveMessageSizeKB,
hideFromAddressBook, hideFromAddressBook,
isConsumer}); isConsumer,
enabledLitigationHold,
recoverabelItemsSpace,
recoverabelItemsWarning});
return ((string)(results[0])); return ((string)(results[0]));
} }
@ -567,6 +577,9 @@ namespace WebsitePanel.Providers.Exchange
int maxReceiveMessageSizeKB, int maxReceiveMessageSizeKB,
bool hideFromAddressBook, bool hideFromAddressBook,
bool isConsumer, bool isConsumer,
bool enabledLitigationHold,
long recoverabelItemsSpace,
long recoverabelItemsWarning,
System.AsyncCallback callback, System.AsyncCallback callback,
object asyncState) { object asyncState) {
return this.BeginInvoke("CreateMailEnableUser", new object[] { return this.BeginInvoke("CreateMailEnableUser", new object[] {
@ -591,7 +604,10 @@ namespace WebsitePanel.Providers.Exchange
maxSendMessageSizeKB, maxSendMessageSizeKB,
maxReceiveMessageSizeKB, maxReceiveMessageSizeKB,
hideFromAddressBook, hideFromAddressBook,
isConsumer}, callback, asyncState); isConsumer,
enabledLitigationHold,
recoverabelItemsSpace,
recoverabelItemsWarning}, callback, asyncState);
} }
/// <remarks/> /// <remarks/>
@ -623,8 +639,11 @@ namespace WebsitePanel.Providers.Exchange
int maxSendMessageSizeKB, int maxSendMessageSizeKB,
int maxReceiveMessageSizeKB, int maxReceiveMessageSizeKB,
bool hideFromAddressBook, bool hideFromAddressBook,
bool isConsumer) { bool isConsumer,
this.CreateMailEnableUserAsync(upn, organizationId, organizationDistinguishedName, accountType, mailboxDatabase, offlineAddressBook, addressBookPolicy, accountName, enablePOP, enableIMAP, enableOWA, enableMAPI, enableActiveSync, issueWarningKB, prohibitSendKB, prohibitSendReceiveKB, keepDeletedItemsDays, maxRecipients, maxSendMessageSizeKB, maxReceiveMessageSizeKB, hideFromAddressBook, isConsumer, null); bool enabledLitigationHold,
long recoverabelItemsSpace,
long recoverabelItemsWarning) {
this.CreateMailEnableUserAsync(upn, organizationId, organizationDistinguishedName, accountType, mailboxDatabase, offlineAddressBook, addressBookPolicy, accountName, enablePOP, enableIMAP, enableOWA, enableMAPI, enableActiveSync, issueWarningKB, prohibitSendKB, prohibitSendReceiveKB, keepDeletedItemsDays, maxRecipients, maxSendMessageSizeKB, maxReceiveMessageSizeKB, hideFromAddressBook, isConsumer, enabledLitigationHold, recoverabelItemsSpace, recoverabelItemsWarning, null);
} }
/// <remarks/> /// <remarks/>
@ -651,6 +670,9 @@ namespace WebsitePanel.Providers.Exchange
int maxReceiveMessageSizeKB, int maxReceiveMessageSizeKB,
bool hideFromAddressBook, bool hideFromAddressBook,
bool isConsumer, bool isConsumer,
bool enabledLitigationHold,
long recoverabelItemsSpace,
long recoverabelItemsWarning,
object userState) { object userState) {
if ((this.CreateMailEnableUserOperationCompleted == null)) { if ((this.CreateMailEnableUserOperationCompleted == null)) {
this.CreateMailEnableUserOperationCompleted = new System.Threading.SendOrPostCallback(this.OnCreateMailEnableUserOperationCompleted); this.CreateMailEnableUserOperationCompleted = new System.Threading.SendOrPostCallback(this.OnCreateMailEnableUserOperationCompleted);
@ -677,7 +699,10 @@ namespace WebsitePanel.Providers.Exchange
maxSendMessageSizeKB, maxSendMessageSizeKB,
maxReceiveMessageSizeKB, maxReceiveMessageSizeKB,
hideFromAddressBook, hideFromAddressBook,
isConsumer}, this.CreateMailEnableUserOperationCompleted, userState); isConsumer,
enabledLitigationHold,
recoverabelItemsSpace,
recoverabelItemsWarning}, this.CreateMailEnableUserOperationCompleted, userState);
} }
private void OnCreateMailEnableUserOperationCompleted(object arg) { private void OnCreateMailEnableUserOperationCompleted(object arg) {
@ -1033,16 +1058,6 @@ namespace WebsitePanel.Providers.Exchange
domain}); domain});
} }
/// <remarks/>
[System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/ChangeAcceptedDomainType", RequestNamespace = "http://smbsaas/websitepanel/server/", ResponseNamespace = "http://smbsaas/websitepanel/server/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
public void ChangeAcceptedDomainType(string domain, ExchangeAcceptedDomainType domainType)
{
this.Invoke("ChangeAcceptedDomainType", new object[] {
domain,
domainType});
}
/// <remarks/> /// <remarks/>
public System.IAsyncResult BeginAddAuthoritativeDomain(string domain, System.AsyncCallback callback, object asyncState) { public System.IAsyncResult BeginAddAuthoritativeDomain(string domain, System.AsyncCallback callback, object asyncState) {
return this.BeginInvoke("AddAuthoritativeDomain", new object[] { return this.BeginInvoke("AddAuthoritativeDomain", new object[] {
@ -1075,6 +1090,49 @@ namespace WebsitePanel.Providers.Exchange
} }
} }
/// <remarks/>
[System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/ChangeAcceptedDomainType", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
public void ChangeAcceptedDomainType(string domain, ExchangeAcceptedDomainType domainType) {
this.Invoke("ChangeAcceptedDomainType", new object[] {
domain,
domainType});
}
/// <remarks/>
public System.IAsyncResult BeginChangeAcceptedDomainType(string domain, ExchangeAcceptedDomainType domainType, System.AsyncCallback callback, object asyncState) {
return this.BeginInvoke("ChangeAcceptedDomainType", new object[] {
domain,
domainType}, callback, asyncState);
}
/// <remarks/>
public void EndChangeAcceptedDomainType(System.IAsyncResult asyncResult) {
this.EndInvoke(asyncResult);
}
/// <remarks/>
public void ChangeAcceptedDomainTypeAsync(string domain, ExchangeAcceptedDomainType domainType) {
this.ChangeAcceptedDomainTypeAsync(domain, domainType, null);
}
/// <remarks/>
public void ChangeAcceptedDomainTypeAsync(string domain, ExchangeAcceptedDomainType domainType, object userState) {
if ((this.ChangeAcceptedDomainTypeOperationCompleted == null)) {
this.ChangeAcceptedDomainTypeOperationCompleted = new System.Threading.SendOrPostCallback(this.OnChangeAcceptedDomainTypeOperationCompleted);
}
this.InvokeAsync("ChangeAcceptedDomainType", new object[] {
domain,
domainType}, this.ChangeAcceptedDomainTypeOperationCompleted, userState);
}
private void OnChangeAcceptedDomainTypeOperationCompleted(object arg) {
if ((this.ChangeAcceptedDomainTypeCompleted != null)) {
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
this.ChangeAcceptedDomainTypeCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
/// <remarks/> /// <remarks/>
[System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/GetAuthoritativeDomains", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/GetAuthoritativeDomains", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
@ -1470,7 +1528,24 @@ namespace WebsitePanel.Providers.Exchange
/// <remarks/> /// <remarks/>
[System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")] [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/SetMailboxAdvancedSettings", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/server/SetMailboxAdvancedSettings", RequestNamespace="http://smbsaas/websitepanel/server/", ResponseNamespace="http://smbsaas/websitepanel/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
public void SetMailboxAdvancedSettings(string organizationId, string accountName, bool enablePOP, bool enableIMAP, bool enableOWA, bool enableMAPI, bool enableActiveSync, long issueWarningKB, long prohibitSendKB, long prohibitSendReceiveKB, int keepDeletedItemsDays, int maxRecipients, int maxSendMessageSizeKB, int maxReceiveMessageSizeKB) { public void SetMailboxAdvancedSettings(
string organizationId,
string accountName,
bool enablePOP,
bool enableIMAP,
bool enableOWA,
bool enableMAPI,
bool enableActiveSync,
long issueWarningKB,
long prohibitSendKB,
long prohibitSendReceiveKB,
int keepDeletedItemsDays,
int maxRecipients,
int maxSendMessageSizeKB,
int maxReceiveMessageSizeKB,
bool enabledLitigationHold,
long recoverabelItemsSpace,
long recoverabelItemsWarning) {
this.Invoke("SetMailboxAdvancedSettings", new object[] { this.Invoke("SetMailboxAdvancedSettings", new object[] {
organizationId, organizationId,
accountName, accountName,
@ -1485,7 +1560,10 @@ namespace WebsitePanel.Providers.Exchange
keepDeletedItemsDays, keepDeletedItemsDays,
maxRecipients, maxRecipients,
maxSendMessageSizeKB, maxSendMessageSizeKB,
maxReceiveMessageSizeKB}); maxReceiveMessageSizeKB,
enabledLitigationHold,
recoverabelItemsSpace,
recoverabelItemsWarning});
} }
/// <remarks/> /// <remarks/>
@ -1504,6 +1582,9 @@ namespace WebsitePanel.Providers.Exchange
int maxRecipients, int maxRecipients,
int maxSendMessageSizeKB, int maxSendMessageSizeKB,
int maxReceiveMessageSizeKB, int maxReceiveMessageSizeKB,
bool enabledLitigationHold,
long recoverabelItemsSpace,
long recoverabelItemsWarning,
System.AsyncCallback callback, System.AsyncCallback callback,
object asyncState) { object asyncState) {
return this.BeginInvoke("SetMailboxAdvancedSettings", new object[] { return this.BeginInvoke("SetMailboxAdvancedSettings", new object[] {
@ -1520,7 +1601,10 @@ namespace WebsitePanel.Providers.Exchange
keepDeletedItemsDays, keepDeletedItemsDays,
maxRecipients, maxRecipients,
maxSendMessageSizeKB, maxSendMessageSizeKB,
maxReceiveMessageSizeKB}, callback, asyncState); maxReceiveMessageSizeKB,
enabledLitigationHold,
recoverabelItemsSpace,
recoverabelItemsWarning}, callback, asyncState);
} }
/// <remarks/> /// <remarks/>
@ -1529,12 +1613,47 @@ namespace WebsitePanel.Providers.Exchange
} }
/// <remarks/> /// <remarks/>
public void SetMailboxAdvancedSettingsAsync(string organizationId, string accountName, bool enablePOP, bool enableIMAP, bool enableOWA, bool enableMAPI, bool enableActiveSync, long issueWarningKB, long prohibitSendKB, long prohibitSendReceiveKB, int keepDeletedItemsDays, int maxRecipients, int maxSendMessageSizeKB, int maxReceiveMessageSizeKB) { public void SetMailboxAdvancedSettingsAsync(
this.SetMailboxAdvancedSettingsAsync(organizationId, accountName, enablePOP, enableIMAP, enableOWA, enableMAPI, enableActiveSync, issueWarningKB, prohibitSendKB, prohibitSendReceiveKB, keepDeletedItemsDays, maxRecipients, maxSendMessageSizeKB, maxReceiveMessageSizeKB, null); string organizationId,
string accountName,
bool enablePOP,
bool enableIMAP,
bool enableOWA,
bool enableMAPI,
bool enableActiveSync,
long issueWarningKB,
long prohibitSendKB,
long prohibitSendReceiveKB,
int keepDeletedItemsDays,
int maxRecipients,
int maxSendMessageSizeKB,
int maxReceiveMessageSizeKB,
bool enabledLitigationHold,
long recoverabelItemsSpace,
long recoverabelItemsWarning) {
this.SetMailboxAdvancedSettingsAsync(organizationId, accountName, enablePOP, enableIMAP, enableOWA, enableMAPI, enableActiveSync, issueWarningKB, prohibitSendKB, prohibitSendReceiveKB, keepDeletedItemsDays, maxRecipients, maxSendMessageSizeKB, maxReceiveMessageSizeKB, enabledLitigationHold, recoverabelItemsSpace, recoverabelItemsWarning, null);
} }
/// <remarks/> /// <remarks/>
public void SetMailboxAdvancedSettingsAsync(string organizationId, string accountName, bool enablePOP, bool enableIMAP, bool enableOWA, bool enableMAPI, bool enableActiveSync, long issueWarningKB, long prohibitSendKB, long prohibitSendReceiveKB, int keepDeletedItemsDays, int maxRecipients, int maxSendMessageSizeKB, int maxReceiveMessageSizeKB, object userState) { public void SetMailboxAdvancedSettingsAsync(
string organizationId,
string accountName,
bool enablePOP,
bool enableIMAP,
bool enableOWA,
bool enableMAPI,
bool enableActiveSync,
long issueWarningKB,
long prohibitSendKB,
long prohibitSendReceiveKB,
int keepDeletedItemsDays,
int maxRecipients,
int maxSendMessageSizeKB,
int maxReceiveMessageSizeKB,
bool enabledLitigationHold,
long recoverabelItemsSpace,
long recoverabelItemsWarning,
object userState) {
if ((this.SetMailboxAdvancedSettingsOperationCompleted == null)) { if ((this.SetMailboxAdvancedSettingsOperationCompleted == null)) {
this.SetMailboxAdvancedSettingsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnSetMailboxAdvancedSettingsOperationCompleted); this.SetMailboxAdvancedSettingsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnSetMailboxAdvancedSettingsOperationCompleted);
} }
@ -1552,7 +1671,10 @@ namespace WebsitePanel.Providers.Exchange
keepDeletedItemsDays, keepDeletedItemsDays,
maxRecipients, maxRecipients,
maxSendMessageSizeKB, maxSendMessageSizeKB,
maxReceiveMessageSizeKB}, this.SetMailboxAdvancedSettingsOperationCompleted, userState); maxReceiveMessageSizeKB,
enabledLitigationHold,
recoverabelItemsSpace,
recoverabelItemsWarning}, this.SetMailboxAdvancedSettingsOperationCompleted, userState);
} }
private void OnSetMailboxAdvancedSettingsOperationCompleted(object arg) { private void OnSetMailboxAdvancedSettingsOperationCompleted(object arg) {
@ -4102,6 +4224,10 @@ namespace WebsitePanel.Providers.Exchange
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
public delegate void AddAuthoritativeDomainCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e); public delegate void AddAuthoritativeDomainCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e);
/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
public delegate void ChangeAcceptedDomainTypeCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e);
/// <remarks/> /// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")] [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
public delegate void GetAuthoritativeDomainsCompletedEventHandler(object sender, GetAuthoritativeDomainsCompletedEventArgs e); public delegate void GetAuthoritativeDomainsCompletedEventHandler(object sender, GetAuthoritativeDomainsCompletedEventArgs e);

View file

@ -14,9 +14,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution
EndProjectSection EndProjectSection
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WebsitePanel.Server", "WebsitePanel.Server\WebsitePanel.Server.csproj", "{38C6047C-E447-4CC2-891F-ABE54D4659F3}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WebsitePanel.Server", "WebsitePanel.Server\WebsitePanel.Server.csproj", "{38C6047C-E447-4CC2-891F-ABE54D4659F3}"
ProjectSection(ProjectDependencies) = postProject
{1C26EBB3-E92E-48A5-B1FB-3AED9D5B9D74} = {1C26EBB3-E92E-48A5-B1FB-3AED9D5B9D74}
EndProjectSection
EndProject EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WebsitePanel.Providers.Base", "WebsitePanel.Providers.Base\WebsitePanel.Providers.Base.csproj", "{684C932A-6C75-46AC-A327-F3689D89EB42}" Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WebsitePanel.Providers.Base", "WebsitePanel.Providers.Base\WebsitePanel.Providers.Base.csproj", "{684C932A-6C75-46AC-A327-F3689D89EB42}"
EndProject EndProject

View file

@ -93,7 +93,7 @@ namespace WebsitePanel.Server
string accountName, bool enablePOP, bool enableIMAP, string accountName, bool enablePOP, bool enableIMAP,
bool enableOWA, bool enableMAPI, bool enableActiveSync, bool enableOWA, bool enableMAPI, bool enableActiveSync,
long issueWarningKB, long prohibitSendKB, long prohibitSendReceiveKB, int keepDeletedItemsDays, long issueWarningKB, long prohibitSendKB, long prohibitSendReceiveKB, int keepDeletedItemsDays,
int maxRecipients, int maxSendMessageSizeKB, int maxReceiveMessageSizeKB, bool hideFromAddressBook, bool isConsumer) int maxRecipients, int maxSendMessageSizeKB, int maxReceiveMessageSizeKB, bool hideFromAddressBook, bool isConsumer, bool enabledLitigationHold, long recoverabelItemsSpace, long recoverabelItemsWarning)
{ {
try try
{ {
@ -104,7 +104,7 @@ namespace WebsitePanel.Server
enableOWA, enableMAPI, enableActiveSync, enableOWA, enableMAPI, enableActiveSync,
issueWarningKB, prohibitSendKB, prohibitSendReceiveKB, issueWarningKB, prohibitSendKB, prohibitSendReceiveKB,
keepDeletedItemsDays, keepDeletedItemsDays,
maxRecipients, maxSendMessageSizeKB, maxReceiveMessageSizeKB, hideFromAddressBook, isConsumer); maxRecipients, maxSendMessageSizeKB, maxReceiveMessageSizeKB, hideFromAddressBook, isConsumer, enabledLitigationHold, recoverabelItemsSpace, recoverabelItemsWarning);
LogEnd("CreateMailEnableUser"); LogEnd("CreateMailEnableUser");
return ret; return ret;
} }
@ -316,33 +316,6 @@ namespace WebsitePanel.Server
#endregion #endregion
#region Mailboxes #region Mailboxes
/*
[WebMethod, SoapHeader("settings")]
public string CreateMailbox(string organizationId, string organizationDistinguishedName, string mailboxDatabase,
string securityGroup, string offlineAddressBook, string addressBookPolicy, ExchangeAccountType accountType,
string displayName, string accountName, string name,
string domain, string password, bool enablePOP, bool enableIMAP, bool enableOWA, bool enableMAPI, bool enableActiveSync,
int issueWarningKB, int prohibitSendKB, int prohibitSendReceiveKB, int keepDeletedItemsDays, int maxRecipients, int maxSendMessageSizeKB, int maxReceiveMessageSizeKB, bool hideFromAddressBook)
{
try
{
LogStart("CreateMailbox");
string ret = ES.CreateMailbox(organizationId, organizationDistinguishedName, mailboxDatabase, securityGroup,
offlineAddressBook, addressBookPolicy, accountType,
displayName, accountName, name, domain, password, enablePOP, enableIMAP,
enableOWA, enableMAPI, enableActiveSync,
issueWarningKB, prohibitSendKB, prohibitSendReceiveKB, keepDeletedItemsDays,
maxRecipients, maxSendMessageSizeKB, maxReceiveMessageSizeKB, hideFromAddressBook);
LogEnd("CreateMailbox");
return ret;
}
catch (Exception ex)
{
LogError("CreateMailbox", ex);
throw;
}
}
*/
[WebMethod, SoapHeader("settings")] [WebMethod, SoapHeader("settings")]
public void DeleteMailbox(string accountName) public void DeleteMailbox(string accountName)
{ {
@ -461,13 +434,15 @@ namespace WebsitePanel.Server
[WebMethod, SoapHeader("settings")] [WebMethod, SoapHeader("settings")]
public void SetMailboxAdvancedSettings(string organizationId, string accountName, bool enablePOP, bool enableIMAP, bool enableOWA, bool enableMAPI, bool enableActiveSync, public void SetMailboxAdvancedSettings(string organizationId, string accountName, bool enablePOP, bool enableIMAP, bool enableOWA, bool enableMAPI, bool enableActiveSync,
long issueWarningKB, long prohibitSendKB, long prohibitSendReceiveKB, int keepDeletedItemsDays, int maxRecipients, int maxSendMessageSizeKB, int maxReceiveMessageSizeKB) long issueWarningKB, long prohibitSendKB, long prohibitSendReceiveKB, int keepDeletedItemsDays, int maxRecipients, int maxSendMessageSizeKB, int maxReceiveMessageSizeKB
, bool enabledLitigationHold, long recoverabelItemsSpace, long recoverabelItemsWarning)
{ {
try try
{ {
LogStart("SetMailboxAdvancedSettings"); LogStart("SetMailboxAdvancedSettings");
ES.SetMailboxAdvancedSettings(organizationId, accountName, enablePOP, enableIMAP, enableOWA, enableMAPI, enableActiveSync, ES.SetMailboxAdvancedSettings(organizationId, accountName, enablePOP, enableIMAP, enableOWA, enableMAPI, enableActiveSync,
issueWarningKB, prohibitSendKB, prohibitSendReceiveKB, keepDeletedItemsDays, maxRecipients, maxSendMessageSizeKB, maxReceiveMessageSizeKB); issueWarningKB, prohibitSendKB, prohibitSendReceiveKB, keepDeletedItemsDays, maxRecipients, maxSendMessageSizeKB, maxReceiveMessageSizeKB,
enabledLitigationHold, recoverabelItemsSpace, recoverabelItemsWarning);
LogEnd("SetMailboxAdvancedSettings"); LogEnd("SetMailboxAdvancedSettings");
} }
catch (Exception ex) catch (Exception ex)

View file

@ -228,4 +228,16 @@
<data name="btnUpdateMailboxPlan.Text" xml:space="preserve"> <data name="btnUpdateMailboxPlan.Text" xml:space="preserve">
<value>Update Mailbox Plan</value> <value>Update Mailbox Plan</value>
</data> </data>
<data name="chkEnableLitigationHold.Text" xml:space="preserve">
<value>Enable Litigation Hold</value>
</data>
<data name="locRecoverableItemsSpace.Text" xml:space="preserve">
<value>Recoverable Items Space (Mb):</value>
</data>
<data name="locRecoverableItemsWarning.Text" xml:space="preserve">
<value>Warning at:</value>
</data>
<data name="secLitigationHold.Text" xml:space="preserve">
<value>Litigation Hold</value>
</data>
</root> </root>

View file

@ -198,4 +198,16 @@
<data name="valRequireMailboxPlan.Text" xml:space="preserve"> <data name="valRequireMailboxPlan.Text" xml:space="preserve">
<value>*</value> <value>*</value>
</data> </data>
<data name="chkEnableLitigationHold.Text" xml:space="preserve">
<value>Enable Litigation Hold</value>
</data>
<data name="locRecoverableItemsSpace.Text" xml:space="preserve">
<value>Recoverable Items Space (Mb):</value>
</data>
<data name="locRecoverableItemsWarning.Text" xml:space="preserve">
<value>Warning at:</value>
</data>
<data name="secLitigationHold.Text" xml:space="preserve">
<value>Litigation Hold</value>
</data>
</root> </root>

View file

@ -91,7 +91,6 @@
</td> </td>
</tr> </tr>
</table> </table>
<br />
</asp:Panel> </asp:Panel>
<wsp:CollapsiblePanel id="secStorageQuotas" runat="server" <wsp:CollapsiblePanel id="secStorageQuotas" runat="server"
@ -102,52 +101,46 @@
<tr> <tr>
<td class="FormLabel200" align="right"><asp:Localize ID="locMailboxSize" runat="server" meta:resourcekey="locMailboxSize" Text="Mailbox size:"></asp:Localize></td> <td class="FormLabel200" align="right"><asp:Localize ID="locMailboxSize" runat="server" meta:resourcekey="locMailboxSize" Text="Mailbox size:"></asp:Localize></td>
<td> <td>
<div class="Right">
<uc1:QuotaEditor id="mailboxSize" runat="server" <uc1:QuotaEditor id="mailboxSize" runat="server"
QuotaTypeID="2" QuotaTypeID="2"
QuotaValue="0" QuotaValue="0"
ParentQuotaValue="-1"> ParentQuotaValue="-1">
</uc1:QuotaEditor> </uc1:QuotaEditor>
</div>
</td> </td>
</tr> </tr>
<tr> <tr>
<td class="FormLabel200" align="right"><asp:Localize ID="locMaxRecipients" runat="server" meta:resourcekey="locMaxRecipients" Text="Maximum Recipients:"></asp:Localize></td> <td class="FormLabel200" align="right"><asp:Localize ID="locMaxRecipients" runat="server" meta:resourcekey="locMaxRecipients" Text="Maximum Recipients:"></asp:Localize></td>
<td> <td>
<div class="Right">
<uc1:QuotaEditor id="maxRecipients" runat="server" <uc1:QuotaEditor id="maxRecipients" runat="server"
QuotaTypeID="2" QuotaTypeID="2"
QuotaValue="0" QuotaValue="0"
ParentQuotaValue="-1"> ParentQuotaValue="-1">
</uc1:QuotaEditor> </uc1:QuotaEditor>
</div>
</td> </td>
</tr> </tr>
<tr> <tr>
<td class="FormLabel200" align="right"><asp:Localize ID="locMaxSendMessageSizeKB" runat="server" meta:resourcekey="locMaxSendMessageSizeKB" Text="Maximum Send Message Size (Kb):"></asp:Localize></td> <td class="FormLabel200" align="right"><asp:Localize ID="locMaxSendMessageSizeKB" runat="server" meta:resourcekey="locMaxSendMessageSizeKB" Text="Maximum Send Message Size (Kb):"></asp:Localize></td>
<td> <td>
<div class="Right">
<uc1:QuotaEditor id="maxSendMessageSizeKB" runat="server" <uc1:QuotaEditor id="maxSendMessageSizeKB" runat="server"
QuotaTypeID="2" QuotaTypeID="2"
QuotaValue="0" QuotaValue="0"
ParentQuotaValue="-1"> ParentQuotaValue="-1">
</uc1:QuotaEditor> </uc1:QuotaEditor>
</div>
</td> </td>
</tr> </tr>
<tr> <tr>
<td class="FormLabel200" align="right"><asp:Localize ID="locMaxReceiveMessageSizeKB" runat="server" meta:resourcekey="locMaxReceiveMessageSizeKB" Text="Maximum Receive Message Size (Kb):"></asp:Localize></td> <td class="FormLabel200" align="right"><asp:Localize ID="locMaxReceiveMessageSizeKB" runat="server" meta:resourcekey="locMaxReceiveMessageSizeKB" Text="Maximum Receive Message Size (Kb):"></asp:Localize></td>
<td> <td>
<div class="Right">
<uc1:QuotaEditor id="maxReceiveMessageSizeKB" runat="server" <uc1:QuotaEditor id="maxReceiveMessageSizeKB" runat="server"
QuotaTypeID="2" QuotaTypeID="2"
QuotaValue="0" QuotaValue="0"
ParentQuotaValue="-1"> ParentQuotaValue="-1">
</uc1:QuotaEditor> </uc1:QuotaEditor>
</div>
</td> </td>
</tr> </tr>
<tr>
<td></td><td></td>
</tr>
<tr> <tr>
<td class="FormLabel200" colspan="2"><asp:Localize ID="locWhenSizeExceeds" runat="server" meta:resourcekey="locWhenSizeExceeds" Text="When the mailbox size exceeds the indicated amount:"></asp:Localize></td> <td class="FormLabel200" colspan="2"><asp:Localize ID="locWhenSizeExceeds" runat="server" meta:resourcekey="locWhenSizeExceeds" Text="When the mailbox size exceeds the indicated amount:"></asp:Localize></td>
</tr> </tr>
@ -170,7 +163,6 @@
</td> </td>
</tr> </tr>
</table> </table>
<br />
</asp:Panel> </asp:Panel>
@ -186,9 +178,39 @@
</td> </td>
</tr> </tr>
</table> </table>
<br />
</asp:Panel> </asp:Panel>
<wsp:CollapsiblePanel id="secLitigationHold" runat="server"
TargetControlID="LitigationHold" meta:resourcekey="secLitigationHold" Text="LitigationHold">
</wsp:CollapsiblePanel>
<asp:Panel ID="LitigationHold" runat="server" Height="0" style="overflow:hidden;">
<table>
<tr>
<td>
<asp:CheckBox ID="chkEnableLitigationHold" runat="server" meta:resourcekey="chkEnableLitigationHold" Text="Enabled Litigation Hold"></asp:CheckBox>
</td>
</tr>
<tr>
<td class="FormLabel200" align="right"><asp:Localize ID="locRecoverableItemsSpace" runat="server" meta:resourcekey="locRecoverableItemsSpace" Text="Recoverable Items Space (MB):"></asp:Localize></td>
<td>
<uc1:QuotaEditor id="recoverableItemsSpace" runat="server"
QuotaTypeID="2"
QuotaValue="0"
ParentQuotaValue="-1">
</uc1:QuotaEditor>
</td>
</tr>
<tr>
<td class="FormLabel200" align="right"><asp:Localize ID="locRecoverableItemsWarning" runat="server" meta:resourcekey="locRecoverableItemsWarning" Text="Issue warning at:"></asp:Localize></td>
<td>
<wsp:SizeBox id="recoverableItemsWarning" runat="server" ValidationGroup="CreateMailboxPlan" DisplayUnitsKB="false" DisplayUnitsMB="false" DisplayUnitsPct="true" RequireValidatorEnabled="true"/>
</td>
</tr>
</table>
</asp:Panel>
<br /> <br />
<div class="FormFooterClean"> <div class="FormFooterClean">
<asp:Button id="btnAdd" runat="server" Text="Add Mailboxplan" CssClass="Button1" meta:resourcekey="btnAdd" ValidationGroup="CreateMailboxPlan" OnClick="btnAdd_Click" OnClientClick="ShowProgressDialog('Creating Mailboxplan...');"></asp:Button> <asp:Button id="btnAdd" runat="server" Text="Add Mailboxplan" CssClass="Button1" meta:resourcekey="btnAdd" ValidationGroup="CreateMailboxPlan" OnClick="btnAdd_Click" OnClientClick="ShowProgressDialog('Creating Mailboxplan...');"></asp:Button>

View file

@ -60,6 +60,11 @@ namespace WebsitePanel.Portal.ExchangeServer
sizeProhibitSendReceive.ValueKB = plan.ProhibitSendReceivePct; sizeProhibitSendReceive.ValueKB = plan.ProhibitSendReceivePct;
daysKeepDeletedItems.ValueDays = plan.KeepDeletedItemsDays; daysKeepDeletedItems.ValueDays = plan.KeepDeletedItemsDays;
chkHideFromAddressBook.Checked = plan.HideFromAddressBook; chkHideFromAddressBook.Checked = plan.HideFromAddressBook;
chkEnableLitigationHold.Checked = plan.AllowLitigationHold;
recoverableItemsSpace.QuotaValue = plan.RecoverableItemsSpace;
recoverableItemsWarning.ValueKB = plan.RecoverableItemsWarningPct;
/* /*
txtMailboxPlan.Enabled = false; txtMailboxPlan.Enabled = false;
@ -138,11 +143,17 @@ namespace WebsitePanel.Portal.ExchangeServer
daysKeepDeletedItems.ValueDays = quota.QuotaAllocatedValue; daysKeepDeletedItems.ValueDays = quota.QuotaAllocatedValue;
daysKeepDeletedItems.RequireValidatorEnabled = true; daysKeepDeletedItems.RequireValidatorEnabled = true;
break; break;
case 420:
chkEnableLitigationHold.Checked = Convert.ToBoolean(quota.QuotaAllocatedValue);
chkEnableLitigationHold.Enabled = Convert.ToBoolean(quota.QuotaAllocatedValue);
break;
} }
sizeIssueWarning.ValueKB = 100; sizeIssueWarning.ValueKB = 95;
sizeProhibitSend.ValueKB = 100; sizeProhibitSend.ValueKB = 100;
sizeProhibitSendReceive.ValueKB = 100; sizeProhibitSendReceive.ValueKB = 100;
recoverableItemsWarning.ValueKB = 95;
} }
} }
else else
@ -183,6 +194,10 @@ namespace WebsitePanel.Portal.ExchangeServer
if ((plan.ProhibitSendReceivePct == 0)) plan.ProhibitSendReceivePct = 100; if ((plan.ProhibitSendReceivePct == 0)) plan.ProhibitSendReceivePct = 100;
plan.KeepDeletedItemsDays = daysKeepDeletedItems.ValueDays; plan.KeepDeletedItemsDays = daysKeepDeletedItems.ValueDays;
plan.HideFromAddressBook = chkHideFromAddressBook.Checked; plan.HideFromAddressBook = chkHideFromAddressBook.Checked;
plan.AllowLitigationHold = chkEnableLitigationHold.Checked;
plan.RecoverableItemsSpace = recoverableItemsSpace.QuotaValue;
plan.RecoverableItemsWarningPct = recoverableItemsWarning.ValueKB;
if ((plan.RecoverableItemsWarningPct == 0)) plan.RecoverableItemsWarningPct = 100;
int result = ES.Services.ExchangeServer.AddExchangeMailboxPlan(PanelRequest.ItemID, int result = ES.Services.ExchangeServer.AddExchangeMailboxPlan(PanelRequest.ItemID,
plan); plan);

View file

@ -381,6 +381,69 @@ namespace WebsitePanel.Portal.ExchangeServer {
/// </remarks> /// </remarks>
protected global::WebsitePanel.Portal.ExchangeServer.UserControls.DaysBox daysKeepDeletedItems; protected global::WebsitePanel.Portal.ExchangeServer.UserControls.DaysBox daysKeepDeletedItems;
/// <summary>
/// secLitigationHold control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::WebsitePanel.Portal.CollapsiblePanel secLitigationHold;
/// <summary>
/// LitigationHold 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.Panel LitigationHold;
/// <summary>
/// chkEnableLitigationHold 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 chkEnableLitigationHold;
/// <summary>
/// locRecoverableItemsSpace 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.Localize locRecoverableItemsSpace;
/// <summary>
/// recoverableItemsSpace control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::WebsitePanel.Portal.QuotaEditor recoverableItemsSpace;
/// <summary>
/// locRecoverableItemsWarning 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.Localize locRecoverableItemsWarning;
/// <summary>
/// recoverableItemsWarning control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::WebsitePanel.Portal.ExchangeServer.UserControls.SizeBox recoverableItemsWarning;
/// <summary> /// <summary>
/// btnAdd control. /// btnAdd control.
/// </summary> /// </summary>

View file

@ -215,6 +215,37 @@
<br /> <br />
</asp:Panel> </asp:Panel>
<wsp:CollapsiblePanel id="secLitigationHold" runat="server"
TargetControlID="LitigationHold" meta:resourcekey="secLitigationHold" Text="LitigationHold">
</wsp:CollapsiblePanel>
<asp:Panel ID="LitigationHold" runat="server" Height="0" style="overflow:hidden;">
<table>
<tr>
<td>
<asp:CheckBox ID="chkEnableLitigationHold" runat="server" meta:resourcekey="chkEnableLitigationHold" Text="Enabled Litigation Hold"></asp:CheckBox>
</td>
</tr>
<tr>
<td class="FormLabel200" align="right"><asp:Localize ID="locRecoverableItemsSpace" runat="server" meta:resourcekey="locRecoverableItemsSpace" Text="Recoverable Items Space (MB):"></asp:Localize></td>
<td>
<uc1:QuotaEditor id="recoverableItemsSpace" runat="server"
QuotaTypeID="2"
QuotaValue="0"
ParentQuotaValue="-1">
</uc1:QuotaEditor>
</td>
</tr>
<tr>
<td class="FormLabel200" align="right"><asp:Localize ID="locRecoverableItemsWarning" runat="server" meta:resourcekey="locRecoverableItemsWarning" Text="Issue warning at:"></asp:Localize></td>
<td>
<wsp:SizeBox id="recoverableItemsWarning" runat="server" ValidationGroup="CreateMailboxPlan" DisplayUnitsKB="false" DisplayUnitsMB="false" DisplayUnitsPct="true" RequireValidatorEnabled="true"/>
</td>
</tr>
</table>
</asp:Panel>
<table> <table>
<tr> <tr>
<td> <td>

View file

@ -120,6 +120,10 @@ namespace WebsitePanel.Portal
if ((plan.ProhibitSendReceivePct == 0)) plan.ProhibitSendReceivePct = 100; if ((plan.ProhibitSendReceivePct == 0)) plan.ProhibitSendReceivePct = 100;
plan.KeepDeletedItemsDays = daysKeepDeletedItems.ValueDays; plan.KeepDeletedItemsDays = daysKeepDeletedItems.ValueDays;
plan.HideFromAddressBook = chkHideFromAddressBook.Checked; plan.HideFromAddressBook = chkHideFromAddressBook.Checked;
plan.AllowLitigationHold = chkEnableLitigationHold.Checked;
plan.RecoverableItemsSpace = recoverableItemsSpace.QuotaValue;
plan.RecoverableItemsWarningPct = recoverableItemsWarning.ValueKB;
if ((plan.RecoverableItemsWarningPct == 0)) plan.RecoverableItemsWarningPct = 100;
if (PanelSecurity.SelectedUser.Role == UserRole.Administrator) if (PanelSecurity.SelectedUser.Role == UserRole.Administrator)
plan.MailboxPlanType = (int)ExchangeMailboxPlanType.Administrator; plan.MailboxPlanType = (int)ExchangeMailboxPlanType.Administrator;
@ -218,6 +222,10 @@ namespace WebsitePanel.Portal
sizeProhibitSendReceive.ValueKB = -1; sizeProhibitSendReceive.ValueKB = -1;
daysKeepDeletedItems.ValueDays = -1; daysKeepDeletedItems.ValueDays = -1;
chkHideFromAddressBook.Checked = false; chkHideFromAddressBook.Checked = false;
chkEnableLitigationHold.Checked = false;
recoverableItemsSpace.QuotaValue = 0;
recoverableItemsWarning.ValueKB = -1;
btnUpdateMailboxPlan.Enabled = (string.IsNullOrEmpty(txtMailboxPlan.Text)) ? false : true; btnUpdateMailboxPlan.Enabled = (string.IsNullOrEmpty(txtMailboxPlan.Text)) ? false : true;
@ -266,7 +274,9 @@ namespace WebsitePanel.Portal
if (plan.KeepDeletedItemsDays != -1) if (plan.KeepDeletedItemsDays != -1)
daysKeepDeletedItems.ValueDays = plan.KeepDeletedItemsDays; daysKeepDeletedItems.ValueDays = plan.KeepDeletedItemsDays;
chkHideFromAddressBook.Checked = plan.HideFromAddressBook; chkHideFromAddressBook.Checked = plan.HideFromAddressBook;
chkEnableLitigationHold.Checked = plan.AllowLitigationHold;
recoverableItemsSpace.QuotaValue = plan.RecoverableItemsSpace;
recoverableItemsWarning.ValueKB = plan.RecoverableItemsWarningPct;
btnUpdateMailboxPlan.Enabled = (string.IsNullOrEmpty(txtMailboxPlan.Text)) ? false : true; btnUpdateMailboxPlan.Enabled = (string.IsNullOrEmpty(txtMailboxPlan.Text)) ? false : true;
@ -369,6 +379,11 @@ namespace WebsitePanel.Portal
if ((plan.ProhibitSendReceivePct == 0)) plan.ProhibitSendReceivePct = 100; if ((plan.ProhibitSendReceivePct == 0)) plan.ProhibitSendReceivePct = 100;
plan.KeepDeletedItemsDays = daysKeepDeletedItems.ValueDays; plan.KeepDeletedItemsDays = daysKeepDeletedItems.ValueDays;
plan.HideFromAddressBook = chkHideFromAddressBook.Checked; plan.HideFromAddressBook = chkHideFromAddressBook.Checked;
plan.AllowLitigationHold = chkEnableLitigationHold.Checked;
plan.RecoverableItemsSpace = recoverableItemsSpace.QuotaValue;
plan.RecoverableItemsWarningPct = recoverableItemsWarning.ValueKB;
if ((plan.RecoverableItemsWarningPct == 0)) plan.RecoverableItemsWarningPct = 100;
if (PanelSecurity.SelectedUser.Role == UserRole.Administrator) if (PanelSecurity.SelectedUser.Role == UserRole.Administrator)
plan.MailboxPlanType = (int)ExchangeMailboxPlanType.Administrator; plan.MailboxPlanType = (int)ExchangeMailboxPlanType.Administrator;

View file

@ -1,32 +1,4 @@
// Copyright (c) 2012, Outercurve Foundation. //------------------------------------------------------------------------------
// All rights reserved.
//
// Redistribution and use in source and binary forms, with or without modification,
// are permitted provided that the following conditions are met:
//
// - Redistributions of source code must retain the above copyright notice, this
// list of conditions and the following disclaimer.
//
// - Redistributions in binary form must reproduce the above copyright notice,
// this list of conditions and the following disclaimer in the documentation
// and/or other materials provided with the distribution.
//
// - Neither the name of the Outercurve Foundation nor the names of its
// contributors may be used to endorse or promote products derived from this
// software without specific prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//------------------------------------------------------------------------------
// <auto-generated> // <auto-generated>
// This code was generated by a tool. // This code was generated by a tool.
// //
@ -382,6 +354,69 @@ namespace WebsitePanel.Portal {
/// </remarks> /// </remarks>
protected global::WebsitePanel.Portal.ExchangeServer.UserControls.DaysBox daysKeepDeletedItems; protected global::WebsitePanel.Portal.ExchangeServer.UserControls.DaysBox daysKeepDeletedItems;
/// <summary>
/// secLitigationHold control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::WebsitePanel.Portal.CollapsiblePanel secLitigationHold;
/// <summary>
/// LitigationHold 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.Panel LitigationHold;
/// <summary>
/// chkEnableLitigationHold 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 chkEnableLitigationHold;
/// <summary>
/// locRecoverableItemsSpace 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.Localize locRecoverableItemsSpace;
/// <summary>
/// recoverableItemsSpace control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::WebsitePanel.Portal.QuotaEditor recoverableItemsSpace;
/// <summary>
/// locRecoverableItemsWarning 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.Localize locRecoverableItemsWarning;
/// <summary>
/// recoverableItemsWarning control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::WebsitePanel.Portal.ExchangeServer.UserControls.SizeBox recoverableItemsWarning;
/// <summary> /// <summary>
/// btnAddMailboxPlan control. /// btnAddMailboxPlan control.
/// </summary> /// </summary>

View file

@ -17,8 +17,8 @@ REM %WSE_CLEAN% .\WebsitePanel.Server.Client\DatabaseServerProxy.cs
REM %WSDL% %SERVER_URL%/DNSServer.asmx /out:.\WebsitePanel.Server.Client\DnsServerProxy.cs /namespace:WebsitePanel.Providers.DNS /type:webClient /fields REM %WSDL% %SERVER_URL%/DNSServer.asmx /out:.\WebsitePanel.Server.Client\DnsServerProxy.cs /namespace:WebsitePanel.Providers.DNS /type:webClient /fields
REM %WSE_CLEAN% .\WebsitePanel.Server.Client\DnsServerProxy.cs REM %WSE_CLEAN% .\WebsitePanel.Server.Client\DnsServerProxy.cs
REM %WSDL% %SERVER_URL%/ExchangeServer.asmx /out:.\WebsitePanel.Server.Client\ExchangeServerProxy.cs /namespace:WebsitePanel.Providers.Exchange /type:webClient /fields %WSDL% %SERVER_URL%/ExchangeServer.asmx /out:.\WebsitePanel.Server.Client\ExchangeServerProxy.cs /namespace:WebsitePanel.Providers.Exchange /type:webClient /fields
REM %WSE_CLEAN% .\WebsitePanel.Server.Client\ExchangeServerProxy.cs %WSE_CLEAN% .\WebsitePanel.Server.Client\ExchangeServerProxy.cs
REM %WSDL% %SERVER_URL%/ExchangeServerHostedEdition.asmx /out:.\WebsitePanel.Server.Client\ExchangeServerHostedEditionProxy.cs /namespace:WebsitePanel.Providers.ExchangeHostedEdition /type:webClient /fields REM %WSDL% %SERVER_URL%/ExchangeServerHostedEdition.asmx /out:.\WebsitePanel.Server.Client\ExchangeServerHostedEditionProxy.cs /namespace:WebsitePanel.Providers.ExchangeHostedEdition /type:webClient /fields
REM %WSE_CLEAN% .\WebsitePanel.Server.Client\ExchangeServerHostedEditionProxy.cs REM %WSE_CLEAN% .\WebsitePanel.Server.Client\ExchangeServerHostedEditionProxy.cs
@ -35,8 +35,8 @@ REM %WSE_CLEAN% .\WebsitePanel.Server.Client\OCSServerProxy.cs
REM %WSDL% %SERVER_URL%/OperatingSystem.asmx /out:.\WebsitePanel.Server.Client\OperatingSystemProxy.cs /namespace:WebsitePanel.Providers.OS /type:webClient /fields REM %WSDL% %SERVER_URL%/OperatingSystem.asmx /out:.\WebsitePanel.Server.Client\OperatingSystemProxy.cs /namespace:WebsitePanel.Providers.OS /type:webClient /fields
REM %WSE_CLEAN% .\WebsitePanel.Server.Client\OperatingSystemProxy.cs REM %WSE_CLEAN% .\WebsitePanel.Server.Client\OperatingSystemProxy.cs
%WSDL% %SERVER_URL%/Organizations.asmx /out:.\WebsitePanel.Server.Client\OrganizationProxy.cs /namespace:WebsitePanel.Providers.HostedSolution /type:webClient /fields REM %WSDL% %SERVER_URL%/Organizations.asmx /out:.\WebsitePanel.Server.Client\OrganizationProxy.cs /namespace:WebsitePanel.Providers.HostedSolution /type:webClient /fields
%WSE_CLEAN% .\WebsitePanel.Server.Client\OrganizationProxy.cs REM %WSE_CLEAN% .\WebsitePanel.Server.Client\OrganizationProxy.cs
REM %WSDL% %SERVER_URL%/ServiceProvider.asmx /out:.\WebsitePanel.Server.Client\ServiceProviderProxy.cs /namespace:WebsitePanel.Providers /type:webClient /fields REM %WSDL% %SERVER_URL%/ServiceProvider.asmx /out:.\WebsitePanel.Server.Client\ServiceProviderProxy.cs /namespace:WebsitePanel.Providers /type:webClient /fields
REM %WSE_CLEAN% .\WebsitePanel.Server.Client\ServiceProviderProxy.cs REM %WSE_CLEAN% .\WebsitePanel.Server.Client\ServiceProviderProxy.cs