diff --git a/WebsitePanel/Database/update_db.sql b/WebsitePanel/Database/update_db.sql
index 0231b023..b0d6956d 100644
--- a/WebsitePanel/Database/update_db.sql
+++ b/WebsitePanel/Database/update_db.sql
@@ -1637,6 +1637,13 @@ IF NOT EXISTS (SELECT * FROM [dbo].[Quotas] WHERE ([QuotaName] = N'Exchange2007.
BEGIN
INSERT [dbo].[Quotas] ([QuotaID], [GroupID], [QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota]) VALUES (422, 12, 26, N'Exchange2007.DisclaimersAllowed', N'Disclaimers Allowed', 1, 0, NULL, NULL)
END
+GO
+
+--add SecurityGroupManagement Quota
+IF NOT EXISTS (SELECT * FROM [dbo].[Quotas] WHERE [QuotaName] = 'HostedSolution.SecurityGroupManagement')
+BEGIN
+INSERT [dbo].[Quotas] ([QuotaID], [GroupID],[QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota]) VALUES (423, 13, 5, N'HostedSolution.SecurityGroupManagement', N'Allow Security Group Management', 1, 0, NULL, NULL)
+END
GO
-- Lync Enterprise Voice
diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Base/Packages/Quotas.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Base/Packages/Quotas.cs
index 58a410ac..c415b5a8 100644
--- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Base/Packages/Quotas.cs
+++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Base/Packages/Quotas.cs
@@ -155,6 +155,7 @@ order by rg.groupOrder
public const string ORGANIZATION_USERS = "HostedSolution.Users";
public const string ORGANIZATION_DOMAINS = "HostedSolution.Domains";
public const string ORGANIZATION_ALLOWCHANGEUPN = "HostedSolution.AllowChangeUPN";
+ public const string ORGANIZATION_SECURITYGROUPMANAGEMENT = "HostedSolution.SecurityGroupManagement";
public const string CRM_USERS = "HostedCRM.Users";
public const string CRM_ORGANIZATION = "HostedCRM.Organization";
diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Client/OrganizationProxy.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Client/OrganizationProxy.cs
index 088e33d6..d2c60dd8 100644
--- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Client/OrganizationProxy.cs
+++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Client/OrganizationProxy.cs
@@ -39,7 +39,8 @@
//
// This source code was auto-generated by wsdl, Version=2.0.50727.3038.
//
-namespace WebsitePanel.EnterpriseServer.HostedSolution {
+namespace WebsitePanel.EnterpriseServer.HostedSolution
+{
using System.Xml.Serialization;
using System.Web.Services;
using System.ComponentModel;
@@ -53,151 +54,183 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
using WebsitePanel.Providers.HostedSolution;
using WebsitePanel.Providers.ResultObjects;
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- [System.Web.Services.WebServiceBindingAttribute(Name="esOrganizationsSoap", Namespace="http://tempuri.org/")]
+ [System.Web.Services.WebServiceBindingAttribute(Name = "esOrganizationsSoap", Namespace = "http://tempuri.org/")]
[System.Xml.Serialization.XmlIncludeAttribute(typeof(ResultObject))]
[System.Xml.Serialization.XmlIncludeAttribute(typeof(ServiceProviderItem))]
- public partial class esOrganizations : Microsoft.Web.Services3.WebServicesClientProtocol {
+ public partial class esOrganizations : Microsoft.Web.Services3.WebServicesClientProtocol
+ {
private System.Threading.SendOrPostCallback CheckOrgIdExistsOperationCompleted;
-
+
private System.Threading.SendOrPostCallback CreateOrganizationOperationCompleted;
-
+
private System.Threading.SendOrPostCallback GetRawOrganizationsPagedOperationCompleted;
-
+
private System.Threading.SendOrPostCallback GetOrganizationsOperationCompleted;
-
+
private System.Threading.SendOrPostCallback GetOrganizationUserSummuryLetterOperationCompleted;
-
+
private System.Threading.SendOrPostCallback SendOrganizationUserSummuryLetterOperationCompleted;
-
+
private System.Threading.SendOrPostCallback DeleteOrganizationOperationCompleted;
-
+
private System.Threading.SendOrPostCallback GetOrganizationStatisticsOperationCompleted;
-
+
private System.Threading.SendOrPostCallback GetOrganizationStatisticsByOrganizationOperationCompleted;
-
+
private System.Threading.SendOrPostCallback GetOrganizationOperationCompleted;
-
+
private System.Threading.SendOrPostCallback GetAccountIdByUserPrincipalNameOperationCompleted;
-
+
private System.Threading.SendOrPostCallback AddOrganizationDomainOperationCompleted;
-
+
private System.Threading.SendOrPostCallback ChangeOrganizationDomainTypeOperationCompleted;
-
+
private System.Threading.SendOrPostCallback GetOrganizationDomainsOperationCompleted;
-
+
private System.Threading.SendOrPostCallback DeleteOrganizationDomainOperationCompleted;
-
+
private System.Threading.SendOrPostCallback SetOrganizationDefaultDomainOperationCompleted;
-
+
private System.Threading.SendOrPostCallback CreateUserOperationCompleted;
-
+
private System.Threading.SendOrPostCallback ImportUserOperationCompleted;
-
+
private System.Threading.SendOrPostCallback GetOrganizationUsersPagedOperationCompleted;
-
+
private System.Threading.SendOrPostCallback GetUserGeneralSettingsOperationCompleted;
-
+
private System.Threading.SendOrPostCallback SetUserGeneralSettingsOperationCompleted;
-
+
private System.Threading.SendOrPostCallback SetUserPrincipalNameOperationCompleted;
-
+
private System.Threading.SendOrPostCallback SetUserPasswordOperationCompleted;
-
+
private System.Threading.SendOrPostCallback SearchAccountsOperationCompleted;
-
+
private System.Threading.SendOrPostCallback DeleteUserOperationCompleted;
-
+
private System.Threading.SendOrPostCallback GetPasswordPolicyOperationCompleted;
-
+
+ private System.Threading.SendOrPostCallback CreateSecurityGroupOperationCompleted;
+
+ private System.Threading.SendOrPostCallback GetSecurityGroupGeneralSettingsOperationCompleted;
+
+ private System.Threading.SendOrPostCallback DeleteSecurityGroupOperationCompleted;
+
+ private System.Threading.SendOrPostCallback SetSecurityGroupGeneralSettingsOperationCompleted;
+
+ private System.Threading.SendOrPostCallback GetOrganizationSecurityGroupsPagedOperationCompleted;
+
+ private System.Threading.SendOrPostCallback AddUserToSecurityGroupOperationCompleted;
+
///
- public esOrganizations() {
+ public esOrganizations()
+ {
this.Url = "http://localhost:9002/esOrganizations.asmx";
}
///
public event CheckOrgIdExistsCompletedEventHandler CheckOrgIdExistsCompleted;
-
+
///
public event CreateOrganizationCompletedEventHandler CreateOrganizationCompleted;
-
+
///
public event GetRawOrganizationsPagedCompletedEventHandler GetRawOrganizationsPagedCompleted;
-
+
///
public event GetOrganizationsCompletedEventHandler GetOrganizationsCompleted;
-
+
///
public event GetOrganizationUserSummuryLetterCompletedEventHandler GetOrganizationUserSummuryLetterCompleted;
-
+
///
public event SendOrganizationUserSummuryLetterCompletedEventHandler SendOrganizationUserSummuryLetterCompleted;
-
+
///
public event DeleteOrganizationCompletedEventHandler DeleteOrganizationCompleted;
-
+
///
public event GetOrganizationStatisticsCompletedEventHandler GetOrganizationStatisticsCompleted;
-
+
///
public event GetOrganizationStatisticsByOrganizationCompletedEventHandler GetOrganizationStatisticsByOrganizationCompleted;
-
+
///
public event GetOrganizationCompletedEventHandler GetOrganizationCompleted;
-
+
///
public event GetAccountIdByUserPrincipalNameCompletedEventHandler GetAccountIdByUserPrincipalNameCompleted;
-
+
///
public event AddOrganizationDomainCompletedEventHandler AddOrganizationDomainCompleted;
-
+
///
public event ChangeOrganizationDomainTypeCompletedEventHandler ChangeOrganizationDomainTypeCompleted;
-
+
///
public event GetOrganizationDomainsCompletedEventHandler GetOrganizationDomainsCompleted;
-
+
///
public event DeleteOrganizationDomainCompletedEventHandler DeleteOrganizationDomainCompleted;
-
+
///
public event SetOrganizationDefaultDomainCompletedEventHandler SetOrganizationDefaultDomainCompleted;
-
+
///
public event CreateUserCompletedEventHandler CreateUserCompleted;
-
+
///
public event ImportUserCompletedEventHandler ImportUserCompleted;
-
+
///
public event GetOrganizationUsersPagedCompletedEventHandler GetOrganizationUsersPagedCompleted;
-
+
///
public event GetUserGeneralSettingsCompletedEventHandler GetUserGeneralSettingsCompleted;
-
+
///
public event SetUserGeneralSettingsCompletedEventHandler SetUserGeneralSettingsCompleted;
-
+
///
public event SetUserPrincipalNameCompletedEventHandler SetUserPrincipalNameCompleted;
-
+
///
public event SetUserPasswordCompletedEventHandler SetUserPasswordCompleted;
-
+
///
public event SearchAccountsCompletedEventHandler SearchAccountsCompleted;
-
+
///
public event DeleteUserCompletedEventHandler DeleteUserCompleted;
-
+
///
public event GetPasswordPolicyCompletedEventHandler GetPasswordPolicyCompleted;
+ ///
+ public event CreateSecurityGroupCompletedEventHandler CreateSecurityGroupCompleted;
+
+ ///
+ public event GetSecurityGroupGeneralSettingsCompletedEventHandler GetSecurityGroupGeneralSettingsCompleted;
+
+ ///
+ public event DeleteSecurityGroupCompletedEventHandler DeleteSecurityGroupCompleted;
+
+ ///
+ public event SetSecurityGroupGeneralSettingsCompletedEventHandler SetSecurityGroupGeneralSettingsCompleted;
+
+ ///
+ public event GetOrganizationSecurityGroupsPagedCompletedEventHandler GetOrganizationSecurityGroupsPagedCompleted;
+
+ ///
+ public event AddUserToSecurityGroupCompletedEventHandler AddUserToSecurityGroupCompleted;
+
///
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/CheckOrgIdExists", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
public bool CheckOrgIdExists(string orgId)
@@ -246,10 +279,11 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
this.CheckOrgIdExistsCompleted(this, new CheckOrgIdExistsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
-
+
///
- [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/CreateOrganization", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
- public int CreateOrganization(int packageId, string organizationID, string organizationName, string domainName) {
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/CreateOrganization", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public int CreateOrganization(int packageId, string organizationID, string organizationName, string domainName)
+ {
object[] results = this.Invoke("CreateOrganization", new object[] {
packageId,
organizationID,
@@ -257,32 +291,37 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
domainName});
return ((int)(results[0]));
}
-
+
///
- public System.IAsyncResult BeginCreateOrganization(int packageId, string organizationID, string organizationName, string domainName, System.AsyncCallback callback, object asyncState) {
+ public System.IAsyncResult BeginCreateOrganization(int packageId, string organizationID, string organizationName, string domainName, System.AsyncCallback callback, object asyncState)
+ {
return this.BeginInvoke("CreateOrganization", new object[] {
packageId,
organizationID,
organizationName,
domainName}, callback, asyncState);
}
-
+
///
- public int EndCreateOrganization(System.IAsyncResult asyncResult) {
+ public int EndCreateOrganization(System.IAsyncResult asyncResult)
+ {
object[] results = this.EndInvoke(asyncResult);
return ((int)(results[0]));
}
-
+
///
- public void CreateOrganizationAsync(int packageId, string organizationID, string organizationName, string domainName) {
+ public void CreateOrganizationAsync(int packageId, string organizationID, string organizationName, string domainName)
+ {
this.CreateOrganizationAsync(packageId, organizationID, organizationName, domainName, null);
}
-
+
///
- public void CreateOrganizationAsync(int packageId, string organizationID, string organizationName, string domainName, object userState) {
- if ((this.CreateOrganizationOperationCompleted == null)) {
+ public void CreateOrganizationAsync(int packageId, string organizationID, string organizationName, string domainName, object userState)
+ {
+ if ((this.CreateOrganizationOperationCompleted == null))
+ {
this.CreateOrganizationOperationCompleted = new System.Threading.SendOrPostCallback(this.OnCreateOrganizationOperationCompleted);
}
this.InvokeAsync("CreateOrganization", new object[] {
@@ -291,17 +330,20 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
organizationName,
domainName}, this.CreateOrganizationOperationCompleted, userState);
}
-
- private void OnCreateOrganizationOperationCompleted(object arg) {
- if ((this.CreateOrganizationCompleted != null)) {
+
+ private void OnCreateOrganizationOperationCompleted(object arg)
+ {
+ if ((this.CreateOrganizationCompleted != null))
+ {
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
this.CreateOrganizationCompleted(this, new CreateOrganizationCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
-
+
///
- [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetRawOrganizationsPaged", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
- public System.Data.DataSet GetRawOrganizationsPaged(int packageId, bool recursive, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) {
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetRawOrganizationsPaged", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public System.Data.DataSet GetRawOrganizationsPaged(int packageId, bool recursive, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows)
+ {
object[] results = this.Invoke("GetRawOrganizationsPaged", new object[] {
packageId,
recursive,
@@ -312,9 +354,10 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
maximumRows});
return ((System.Data.DataSet)(results[0]));
}
-
+
///
- public System.IAsyncResult BeginGetRawOrganizationsPaged(int packageId, bool recursive, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, System.AsyncCallback callback, object asyncState) {
+ public System.IAsyncResult BeginGetRawOrganizationsPaged(int packageId, bool recursive, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, System.AsyncCallback callback, object asyncState)
+ {
return this.BeginInvoke("GetRawOrganizationsPaged", new object[] {
packageId,
recursive,
@@ -324,21 +367,25 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
startRow,
maximumRows}, callback, asyncState);
}
-
+
///
- public System.Data.DataSet EndGetRawOrganizationsPaged(System.IAsyncResult asyncResult) {
+ public System.Data.DataSet EndGetRawOrganizationsPaged(System.IAsyncResult asyncResult)
+ {
object[] results = this.EndInvoke(asyncResult);
return ((System.Data.DataSet)(results[0]));
}
-
+
///
- public void GetRawOrganizationsPagedAsync(int packageId, bool recursive, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) {
+ public void GetRawOrganizationsPagedAsync(int packageId, bool recursive, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows)
+ {
this.GetRawOrganizationsPagedAsync(packageId, recursive, filterColumn, filterValue, sortColumn, startRow, maximumRows, null);
}
-
+
///
- public void GetRawOrganizationsPagedAsync(int packageId, bool recursive, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, object userState) {
- if ((this.GetRawOrganizationsPagedOperationCompleted == null)) {
+ public void GetRawOrganizationsPagedAsync(int packageId, bool recursive, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, object userState)
+ {
+ if ((this.GetRawOrganizationsPagedOperationCompleted == null))
+ {
this.GetRawOrganizationsPagedOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetRawOrganizationsPagedOperationCompleted);
}
this.InvokeAsync("GetRawOrganizationsPaged", new object[] {
@@ -350,61 +397,72 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
startRow,
maximumRows}, this.GetRawOrganizationsPagedOperationCompleted, userState);
}
-
- private void OnGetRawOrganizationsPagedOperationCompleted(object arg) {
- if ((this.GetRawOrganizationsPagedCompleted != null)) {
+
+ private void OnGetRawOrganizationsPagedOperationCompleted(object arg)
+ {
+ if ((this.GetRawOrganizationsPagedCompleted != null))
+ {
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
this.GetRawOrganizationsPagedCompleted(this, new GetRawOrganizationsPagedCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
-
+
///
- [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetOrganizations", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
- public Organization[] GetOrganizations(int packageId, bool recursive) {
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetOrganizations", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public Organization[] GetOrganizations(int packageId, bool recursive)
+ {
object[] results = this.Invoke("GetOrganizations", new object[] {
packageId,
recursive});
return ((Organization[])(results[0]));
}
-
+
///
- public System.IAsyncResult BeginGetOrganizations(int packageId, bool recursive, System.AsyncCallback callback, object asyncState) {
+ public System.IAsyncResult BeginGetOrganizations(int packageId, bool recursive, System.AsyncCallback callback, object asyncState)
+ {
return this.BeginInvoke("GetOrganizations", new object[] {
packageId,
recursive}, callback, asyncState);
}
-
+
///
- public Organization[] EndGetOrganizations(System.IAsyncResult asyncResult) {
+ public Organization[] EndGetOrganizations(System.IAsyncResult asyncResult)
+ {
object[] results = this.EndInvoke(asyncResult);
return ((Organization[])(results[0]));
}
-
+
///
- public void GetOrganizationsAsync(int packageId, bool recursive) {
+ public void GetOrganizationsAsync(int packageId, bool recursive)
+ {
this.GetOrganizationsAsync(packageId, recursive, null);
}
-
+
///
- public void GetOrganizationsAsync(int packageId, bool recursive, object userState) {
- if ((this.GetOrganizationsOperationCompleted == null)) {
+ public void GetOrganizationsAsync(int packageId, bool recursive, object userState)
+ {
+ if ((this.GetOrganizationsOperationCompleted == null))
+ {
this.GetOrganizationsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetOrganizationsOperationCompleted);
}
this.InvokeAsync("GetOrganizations", new object[] {
packageId,
recursive}, this.GetOrganizationsOperationCompleted, userState);
}
-
- private void OnGetOrganizationsOperationCompleted(object arg) {
- if ((this.GetOrganizationsCompleted != null)) {
+
+ private void OnGetOrganizationsOperationCompleted(object arg)
+ {
+ if ((this.GetOrganizationsCompleted != null))
+ {
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
this.GetOrganizationsCompleted(this, new GetOrganizationsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
-
+
///
- [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetOrganizationUserSummuryLetter", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
- public string GetOrganizationUserSummuryLetter(int itemId, int accountId, bool pmm, bool emailMode, bool signup) {
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetOrganizationUserSummuryLetter", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public string GetOrganizationUserSummuryLetter(int itemId, int accountId, bool pmm, bool emailMode, bool signup)
+ {
object[] results = this.Invoke("GetOrganizationUserSummuryLetter", new object[] {
itemId,
accountId,
@@ -413,9 +471,10 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
signup});
return ((string)(results[0]));
}
-
+
///
- public System.IAsyncResult BeginGetOrganizationUserSummuryLetter(int itemId, int accountId, bool pmm, bool emailMode, bool signup, System.AsyncCallback callback, object asyncState) {
+ public System.IAsyncResult BeginGetOrganizationUserSummuryLetter(int itemId, int accountId, bool pmm, bool emailMode, bool signup, System.AsyncCallback callback, object asyncState)
+ {
return this.BeginInvoke("GetOrganizationUserSummuryLetter", new object[] {
itemId,
accountId,
@@ -423,21 +482,25 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
emailMode,
signup}, callback, asyncState);
}
-
+
///
- public string EndGetOrganizationUserSummuryLetter(System.IAsyncResult asyncResult) {
+ public string EndGetOrganizationUserSummuryLetter(System.IAsyncResult asyncResult)
+ {
object[] results = this.EndInvoke(asyncResult);
return ((string)(results[0]));
}
-
+
///
- public void GetOrganizationUserSummuryLetterAsync(int itemId, int accountId, bool pmm, bool emailMode, bool signup) {
+ public void GetOrganizationUserSummuryLetterAsync(int itemId, int accountId, bool pmm, bool emailMode, bool signup)
+ {
this.GetOrganizationUserSummuryLetterAsync(itemId, accountId, pmm, emailMode, signup, null);
}
-
+
///
- public void GetOrganizationUserSummuryLetterAsync(int itemId, int accountId, bool pmm, bool emailMode, bool signup, object userState) {
- if ((this.GetOrganizationUserSummuryLetterOperationCompleted == null)) {
+ public void GetOrganizationUserSummuryLetterAsync(int itemId, int accountId, bool pmm, bool emailMode, bool signup, object userState)
+ {
+ if ((this.GetOrganizationUserSummuryLetterOperationCompleted == null))
+ {
this.GetOrganizationUserSummuryLetterOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetOrganizationUserSummuryLetterOperationCompleted);
}
this.InvokeAsync("GetOrganizationUserSummuryLetter", new object[] {
@@ -447,17 +510,20 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
emailMode,
signup}, this.GetOrganizationUserSummuryLetterOperationCompleted, userState);
}
-
- private void OnGetOrganizationUserSummuryLetterOperationCompleted(object arg) {
- if ((this.GetOrganizationUserSummuryLetterCompleted != null)) {
+
+ private void OnGetOrganizationUserSummuryLetterOperationCompleted(object arg)
+ {
+ if ((this.GetOrganizationUserSummuryLetterCompleted != null))
+ {
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
this.GetOrganizationUserSummuryLetterCompleted(this, new GetOrganizationUserSummuryLetterCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
-
+
///
- [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/SendOrganizationUserSummuryLetter", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
- public int SendOrganizationUserSummuryLetter(int itemId, int accountId, bool signup, string to, string cc) {
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/SendOrganizationUserSummuryLetter", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public int SendOrganizationUserSummuryLetter(int itemId, int accountId, bool signup, string to, string cc)
+ {
object[] results = this.Invoke("SendOrganizationUserSummuryLetter", new object[] {
itemId,
accountId,
@@ -466,9 +532,10 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
cc});
return ((int)(results[0]));
}
-
+
///
- public System.IAsyncResult BeginSendOrganizationUserSummuryLetter(int itemId, int accountId, bool signup, string to, string cc, System.AsyncCallback callback, object asyncState) {
+ public System.IAsyncResult BeginSendOrganizationUserSummuryLetter(int itemId, int accountId, bool signup, string to, string cc, System.AsyncCallback callback, object asyncState)
+ {
return this.BeginInvoke("SendOrganizationUserSummuryLetter", new object[] {
itemId,
accountId,
@@ -476,21 +543,25 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
to,
cc}, callback, asyncState);
}
-
+
///
- public int EndSendOrganizationUserSummuryLetter(System.IAsyncResult asyncResult) {
+ public int EndSendOrganizationUserSummuryLetter(System.IAsyncResult asyncResult)
+ {
object[] results = this.EndInvoke(asyncResult);
return ((int)(results[0]));
}
-
+
///
- public void SendOrganizationUserSummuryLetterAsync(int itemId, int accountId, bool signup, string to, string cc) {
+ public void SendOrganizationUserSummuryLetterAsync(int itemId, int accountId, bool signup, string to, string cc)
+ {
this.SendOrganizationUserSummuryLetterAsync(itemId, accountId, signup, to, cc, null);
}
-
+
///
- public void SendOrganizationUserSummuryLetterAsync(int itemId, int accountId, bool signup, string to, string cc, object userState) {
- if ((this.SendOrganizationUserSummuryLetterOperationCompleted == null)) {
+ public void SendOrganizationUserSummuryLetterAsync(int itemId, int accountId, bool signup, string to, string cc, object userState)
+ {
+ if ((this.SendOrganizationUserSummuryLetterOperationCompleted == null))
+ {
this.SendOrganizationUserSummuryLetterOperationCompleted = new System.Threading.SendOrPostCallback(this.OnSendOrganizationUserSummuryLetterOperationCompleted);
}
this.InvokeAsync("SendOrganizationUserSummuryLetter", new object[] {
@@ -500,298 +571,354 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
to,
cc}, this.SendOrganizationUserSummuryLetterOperationCompleted, userState);
}
-
- private void OnSendOrganizationUserSummuryLetterOperationCompleted(object arg) {
- if ((this.SendOrganizationUserSummuryLetterCompleted != null)) {
+
+ private void OnSendOrganizationUserSummuryLetterOperationCompleted(object arg)
+ {
+ if ((this.SendOrganizationUserSummuryLetterCompleted != null))
+ {
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
this.SendOrganizationUserSummuryLetterCompleted(this, new SendOrganizationUserSummuryLetterCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
-
+
///
- [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/DeleteOrganization", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
- public int DeleteOrganization(int itemId) {
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/DeleteOrganization", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public int DeleteOrganization(int itemId)
+ {
object[] results = this.Invoke("DeleteOrganization", new object[] {
itemId});
return ((int)(results[0]));
}
-
+
///
- public System.IAsyncResult BeginDeleteOrganization(int itemId, System.AsyncCallback callback, object asyncState) {
+ public System.IAsyncResult BeginDeleteOrganization(int itemId, System.AsyncCallback callback, object asyncState)
+ {
return this.BeginInvoke("DeleteOrganization", new object[] {
itemId}, callback, asyncState);
}
-
+
///
- public int EndDeleteOrganization(System.IAsyncResult asyncResult) {
+ public int EndDeleteOrganization(System.IAsyncResult asyncResult)
+ {
object[] results = this.EndInvoke(asyncResult);
return ((int)(results[0]));
}
-
+
///
- public void DeleteOrganizationAsync(int itemId) {
+ public void DeleteOrganizationAsync(int itemId)
+ {
this.DeleteOrganizationAsync(itemId, null);
}
-
+
///
- public void DeleteOrganizationAsync(int itemId, object userState) {
- if ((this.DeleteOrganizationOperationCompleted == null)) {
+ public void DeleteOrganizationAsync(int itemId, object userState)
+ {
+ if ((this.DeleteOrganizationOperationCompleted == null))
+ {
this.DeleteOrganizationOperationCompleted = new System.Threading.SendOrPostCallback(this.OnDeleteOrganizationOperationCompleted);
}
this.InvokeAsync("DeleteOrganization", new object[] {
itemId}, this.DeleteOrganizationOperationCompleted, userState);
}
-
- private void OnDeleteOrganizationOperationCompleted(object arg) {
- if ((this.DeleteOrganizationCompleted != null)) {
+
+ private void OnDeleteOrganizationOperationCompleted(object arg)
+ {
+ if ((this.DeleteOrganizationCompleted != null))
+ {
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
this.DeleteOrganizationCompleted(this, new DeleteOrganizationCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
-
+
///
- [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetOrganizationStatistics", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
- public OrganizationStatistics GetOrganizationStatistics(int itemId) {
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetOrganizationStatistics", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public OrganizationStatistics GetOrganizationStatistics(int itemId)
+ {
object[] results = this.Invoke("GetOrganizationStatistics", new object[] {
itemId});
return ((OrganizationStatistics)(results[0]));
}
-
+
///
- public System.IAsyncResult BeginGetOrganizationStatistics(int itemId, System.AsyncCallback callback, object asyncState) {
+ public System.IAsyncResult BeginGetOrganizationStatistics(int itemId, System.AsyncCallback callback, object asyncState)
+ {
return this.BeginInvoke("GetOrganizationStatistics", new object[] {
itemId}, callback, asyncState);
}
-
+
///
- public OrganizationStatistics EndGetOrganizationStatistics(System.IAsyncResult asyncResult) {
+ public OrganizationStatistics EndGetOrganizationStatistics(System.IAsyncResult asyncResult)
+ {
object[] results = this.EndInvoke(asyncResult);
return ((OrganizationStatistics)(results[0]));
}
-
+
///
- public void GetOrganizationStatisticsAsync(int itemId) {
+ public void GetOrganizationStatisticsAsync(int itemId)
+ {
this.GetOrganizationStatisticsAsync(itemId, null);
}
-
+
///
- public void GetOrganizationStatisticsAsync(int itemId, object userState) {
- if ((this.GetOrganizationStatisticsOperationCompleted == null)) {
+ public void GetOrganizationStatisticsAsync(int itemId, object userState)
+ {
+ if ((this.GetOrganizationStatisticsOperationCompleted == null))
+ {
this.GetOrganizationStatisticsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetOrganizationStatisticsOperationCompleted);
}
this.InvokeAsync("GetOrganizationStatistics", new object[] {
itemId}, this.GetOrganizationStatisticsOperationCompleted, userState);
}
-
- private void OnGetOrganizationStatisticsOperationCompleted(object arg) {
- if ((this.GetOrganizationStatisticsCompleted != null)) {
+
+ private void OnGetOrganizationStatisticsOperationCompleted(object arg)
+ {
+ if ((this.GetOrganizationStatisticsCompleted != null))
+ {
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
this.GetOrganizationStatisticsCompleted(this, new GetOrganizationStatisticsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
-
+
///
- [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetOrganizationStatisticsByOrganization", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
- public OrganizationStatistics GetOrganizationStatisticsByOrganization(int itemId) {
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetOrganizationStatisticsByOrganization", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public OrganizationStatistics GetOrganizationStatisticsByOrganization(int itemId)
+ {
object[] results = this.Invoke("GetOrganizationStatisticsByOrganization", new object[] {
itemId});
return ((OrganizationStatistics)(results[0]));
}
-
+
///
- public System.IAsyncResult BeginGetOrganizationStatisticsByOrganization(int itemId, System.AsyncCallback callback, object asyncState) {
+ public System.IAsyncResult BeginGetOrganizationStatisticsByOrganization(int itemId, System.AsyncCallback callback, object asyncState)
+ {
return this.BeginInvoke("GetOrganizationStatisticsByOrganization", new object[] {
itemId}, callback, asyncState);
}
-
+
///
- public OrganizationStatistics EndGetOrganizationStatisticsByOrganization(System.IAsyncResult asyncResult) {
+ public OrganizationStatistics EndGetOrganizationStatisticsByOrganization(System.IAsyncResult asyncResult)
+ {
object[] results = this.EndInvoke(asyncResult);
return ((OrganizationStatistics)(results[0]));
}
-
+
///
- public void GetOrganizationStatisticsByOrganizationAsync(int itemId) {
+ public void GetOrganizationStatisticsByOrganizationAsync(int itemId)
+ {
this.GetOrganizationStatisticsByOrganizationAsync(itemId, null);
}
-
+
///
- public void GetOrganizationStatisticsByOrganizationAsync(int itemId, object userState) {
- if ((this.GetOrganizationStatisticsByOrganizationOperationCompleted == null)) {
+ public void GetOrganizationStatisticsByOrganizationAsync(int itemId, object userState)
+ {
+ if ((this.GetOrganizationStatisticsByOrganizationOperationCompleted == null))
+ {
this.GetOrganizationStatisticsByOrganizationOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetOrganizationStatisticsByOrganizationOperationCompleted);
}
this.InvokeAsync("GetOrganizationStatisticsByOrganization", new object[] {
itemId}, this.GetOrganizationStatisticsByOrganizationOperationCompleted, userState);
}
-
- private void OnGetOrganizationStatisticsByOrganizationOperationCompleted(object arg) {
- if ((this.GetOrganizationStatisticsByOrganizationCompleted != null)) {
+
+ private void OnGetOrganizationStatisticsByOrganizationOperationCompleted(object arg)
+ {
+ if ((this.GetOrganizationStatisticsByOrganizationCompleted != null))
+ {
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
this.GetOrganizationStatisticsByOrganizationCompleted(this, new GetOrganizationStatisticsByOrganizationCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
-
+
///
- [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetOrganization", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
- public Organization GetOrganization(int itemId) {
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetOrganization", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public Organization GetOrganization(int itemId)
+ {
object[] results = this.Invoke("GetOrganization", new object[] {
itemId});
return ((Organization)(results[0]));
}
-
+
///
- public System.IAsyncResult BeginGetOrganization(int itemId, System.AsyncCallback callback, object asyncState) {
+ public System.IAsyncResult BeginGetOrganization(int itemId, System.AsyncCallback callback, object asyncState)
+ {
return this.BeginInvoke("GetOrganization", new object[] {
itemId}, callback, asyncState);
}
-
+
///
- public Organization EndGetOrganization(System.IAsyncResult asyncResult) {
+ public Organization EndGetOrganization(System.IAsyncResult asyncResult)
+ {
object[] results = this.EndInvoke(asyncResult);
return ((Organization)(results[0]));
}
-
+
///
- public void GetOrganizationAsync(int itemId) {
+ public void GetOrganizationAsync(int itemId)
+ {
this.GetOrganizationAsync(itemId, null);
}
-
+
///
- public void GetOrganizationAsync(int itemId, object userState) {
- if ((this.GetOrganizationOperationCompleted == null)) {
+ public void GetOrganizationAsync(int itemId, object userState)
+ {
+ if ((this.GetOrganizationOperationCompleted == null))
+ {
this.GetOrganizationOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetOrganizationOperationCompleted);
}
this.InvokeAsync("GetOrganization", new object[] {
itemId}, this.GetOrganizationOperationCompleted, userState);
}
-
- private void OnGetOrganizationOperationCompleted(object arg) {
- if ((this.GetOrganizationCompleted != null)) {
+
+ private void OnGetOrganizationOperationCompleted(object arg)
+ {
+ if ((this.GetOrganizationCompleted != null))
+ {
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
this.GetOrganizationCompleted(this, new GetOrganizationCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
-
+
///
- [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetAccountIdByUserPrincipalName", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
- public int GetAccountIdByUserPrincipalName(int itemId, string userPrincipalName) {
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetAccountIdByUserPrincipalName", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public int GetAccountIdByUserPrincipalName(int itemId, string userPrincipalName)
+ {
object[] results = this.Invoke("GetAccountIdByUserPrincipalName", new object[] {
itemId,
userPrincipalName});
return ((int)(results[0]));
}
-
+
///
- public System.IAsyncResult BeginGetAccountIdByUserPrincipalName(int itemId, string userPrincipalName, System.AsyncCallback callback, object asyncState) {
+ public System.IAsyncResult BeginGetAccountIdByUserPrincipalName(int itemId, string userPrincipalName, System.AsyncCallback callback, object asyncState)
+ {
return this.BeginInvoke("GetAccountIdByUserPrincipalName", new object[] {
itemId,
userPrincipalName}, callback, asyncState);
}
-
+
///
- public int EndGetAccountIdByUserPrincipalName(System.IAsyncResult asyncResult) {
+ public int EndGetAccountIdByUserPrincipalName(System.IAsyncResult asyncResult)
+ {
object[] results = this.EndInvoke(asyncResult);
return ((int)(results[0]));
}
-
+
///
- public void GetAccountIdByUserPrincipalNameAsync(int itemId, string userPrincipalName) {
+ public void GetAccountIdByUserPrincipalNameAsync(int itemId, string userPrincipalName)
+ {
this.GetAccountIdByUserPrincipalNameAsync(itemId, userPrincipalName, null);
}
-
+
///
- public void GetAccountIdByUserPrincipalNameAsync(int itemId, string userPrincipalName, object userState) {
- if ((this.GetAccountIdByUserPrincipalNameOperationCompleted == null)) {
+ public void GetAccountIdByUserPrincipalNameAsync(int itemId, string userPrincipalName, object userState)
+ {
+ if ((this.GetAccountIdByUserPrincipalNameOperationCompleted == null))
+ {
this.GetAccountIdByUserPrincipalNameOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetAccountIdByUserPrincipalNameOperationCompleted);
}
this.InvokeAsync("GetAccountIdByUserPrincipalName", new object[] {
itemId,
userPrincipalName}, this.GetAccountIdByUserPrincipalNameOperationCompleted, userState);
}
-
- private void OnGetAccountIdByUserPrincipalNameOperationCompleted(object arg) {
- if ((this.GetAccountIdByUserPrincipalNameCompleted != null)) {
+
+ private void OnGetAccountIdByUserPrincipalNameOperationCompleted(object arg)
+ {
+ if ((this.GetAccountIdByUserPrincipalNameCompleted != null))
+ {
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
this.GetAccountIdByUserPrincipalNameCompleted(this, new GetAccountIdByUserPrincipalNameCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
-
+
///
- [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/AddOrganizationDomain", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
- public int AddOrganizationDomain(int itemId, string domainName) {
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/AddOrganizationDomain", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public int AddOrganizationDomain(int itemId, string domainName)
+ {
object[] results = this.Invoke("AddOrganizationDomain", new object[] {
itemId,
domainName});
return ((int)(results[0]));
}
-
+
///
- public System.IAsyncResult BeginAddOrganizationDomain(int itemId, string domainName, System.AsyncCallback callback, object asyncState) {
+ public System.IAsyncResult BeginAddOrganizationDomain(int itemId, string domainName, System.AsyncCallback callback, object asyncState)
+ {
return this.BeginInvoke("AddOrganizationDomain", new object[] {
itemId,
domainName}, callback, asyncState);
}
-
+
///
- public int EndAddOrganizationDomain(System.IAsyncResult asyncResult) {
+ public int EndAddOrganizationDomain(System.IAsyncResult asyncResult)
+ {
object[] results = this.EndInvoke(asyncResult);
return ((int)(results[0]));
}
-
+
///
- public void AddOrganizationDomainAsync(int itemId, string domainName) {
+ public void AddOrganizationDomainAsync(int itemId, string domainName)
+ {
this.AddOrganizationDomainAsync(itemId, domainName, null);
}
-
+
///
- public void AddOrganizationDomainAsync(int itemId, string domainName, object userState) {
- if ((this.AddOrganizationDomainOperationCompleted == null)) {
+ public void AddOrganizationDomainAsync(int itemId, string domainName, object userState)
+ {
+ if ((this.AddOrganizationDomainOperationCompleted == null))
+ {
this.AddOrganizationDomainOperationCompleted = new System.Threading.SendOrPostCallback(this.OnAddOrganizationDomainOperationCompleted);
}
this.InvokeAsync("AddOrganizationDomain", new object[] {
itemId,
domainName}, this.AddOrganizationDomainOperationCompleted, userState);
}
-
- private void OnAddOrganizationDomainOperationCompleted(object arg) {
- if ((this.AddOrganizationDomainCompleted != null)) {
+
+ private void OnAddOrganizationDomainOperationCompleted(object arg)
+ {
+ if ((this.AddOrganizationDomainCompleted != null))
+ {
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
this.AddOrganizationDomainCompleted(this, new AddOrganizationDomainCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
-
+
///
- [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/ChangeOrganizationDomainType", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
- public int ChangeOrganizationDomainType(int itemId, int domainId, ExchangeAcceptedDomainType newDomainType) {
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/ChangeOrganizationDomainType", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public int ChangeOrganizationDomainType(int itemId, int domainId, ExchangeAcceptedDomainType newDomainType)
+ {
object[] results = this.Invoke("ChangeOrganizationDomainType", new object[] {
itemId,
domainId,
newDomainType});
return ((int)(results[0]));
}
-
+
///
- public System.IAsyncResult BeginChangeOrganizationDomainType(int itemId, int domainId, ExchangeAcceptedDomainType newDomainType, System.AsyncCallback callback, object asyncState) {
+ public System.IAsyncResult BeginChangeOrganizationDomainType(int itemId, int domainId, ExchangeAcceptedDomainType newDomainType, System.AsyncCallback callback, object asyncState)
+ {
return this.BeginInvoke("ChangeOrganizationDomainType", new object[] {
itemId,
domainId,
newDomainType}, callback, asyncState);
}
-
+
///
- public int EndChangeOrganizationDomainType(System.IAsyncResult asyncResult) {
+ public int EndChangeOrganizationDomainType(System.IAsyncResult asyncResult)
+ {
object[] results = this.EndInvoke(asyncResult);
return ((int)(results[0]));
}
-
+
///
- public void ChangeOrganizationDomainTypeAsync(int itemId, int domainId, ExchangeAcceptedDomainType newDomainType) {
+ public void ChangeOrganizationDomainTypeAsync(int itemId, int domainId, ExchangeAcceptedDomainType newDomainType)
+ {
this.ChangeOrganizationDomainTypeAsync(itemId, domainId, newDomainType, null);
}
-
+
///
- public void ChangeOrganizationDomainTypeAsync(int itemId, int domainId, ExchangeAcceptedDomainType newDomainType, object userState) {
- if ((this.ChangeOrganizationDomainTypeOperationCompleted == null)) {
+ public void ChangeOrganizationDomainTypeAsync(int itemId, int domainId, ExchangeAcceptedDomainType newDomainType, object userState)
+ {
+ if ((this.ChangeOrganizationDomainTypeOperationCompleted == null))
+ {
this.ChangeOrganizationDomainTypeOperationCompleted = new System.Threading.SendOrPostCallback(this.OnChangeOrganizationDomainTypeOperationCompleted);
}
this.InvokeAsync("ChangeOrganizationDomainType", new object[] {
@@ -799,146 +926,173 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
domainId,
newDomainType}, this.ChangeOrganizationDomainTypeOperationCompleted, userState);
}
-
- private void OnChangeOrganizationDomainTypeOperationCompleted(object arg) {
- if ((this.ChangeOrganizationDomainTypeCompleted != null)) {
+
+ private void OnChangeOrganizationDomainTypeOperationCompleted(object arg)
+ {
+ if ((this.ChangeOrganizationDomainTypeCompleted != null))
+ {
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
this.ChangeOrganizationDomainTypeCompleted(this, new ChangeOrganizationDomainTypeCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
-
+
///
- [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetOrganizationDomains", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
- public OrganizationDomainName[] GetOrganizationDomains(int itemId) {
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetOrganizationDomains", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public OrganizationDomainName[] GetOrganizationDomains(int itemId)
+ {
object[] results = this.Invoke("GetOrganizationDomains", new object[] {
itemId});
return ((OrganizationDomainName[])(results[0]));
}
-
+
///
- public System.IAsyncResult BeginGetOrganizationDomains(int itemId, System.AsyncCallback callback, object asyncState) {
+ public System.IAsyncResult BeginGetOrganizationDomains(int itemId, System.AsyncCallback callback, object asyncState)
+ {
return this.BeginInvoke("GetOrganizationDomains", new object[] {
itemId}, callback, asyncState);
}
-
+
///
- public OrganizationDomainName[] EndGetOrganizationDomains(System.IAsyncResult asyncResult) {
+ public OrganizationDomainName[] EndGetOrganizationDomains(System.IAsyncResult asyncResult)
+ {
object[] results = this.EndInvoke(asyncResult);
return ((OrganizationDomainName[])(results[0]));
}
-
+
///
- public void GetOrganizationDomainsAsync(int itemId) {
+ public void GetOrganizationDomainsAsync(int itemId)
+ {
this.GetOrganizationDomainsAsync(itemId, null);
}
-
+
///
- public void GetOrganizationDomainsAsync(int itemId, object userState) {
- if ((this.GetOrganizationDomainsOperationCompleted == null)) {
+ public void GetOrganizationDomainsAsync(int itemId, object userState)
+ {
+ if ((this.GetOrganizationDomainsOperationCompleted == null))
+ {
this.GetOrganizationDomainsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetOrganizationDomainsOperationCompleted);
}
this.InvokeAsync("GetOrganizationDomains", new object[] {
itemId}, this.GetOrganizationDomainsOperationCompleted, userState);
}
-
- private void OnGetOrganizationDomainsOperationCompleted(object arg) {
- if ((this.GetOrganizationDomainsCompleted != null)) {
+
+ private void OnGetOrganizationDomainsOperationCompleted(object arg)
+ {
+ if ((this.GetOrganizationDomainsCompleted != null))
+ {
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
this.GetOrganizationDomainsCompleted(this, new GetOrganizationDomainsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
-
+
///
- [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/DeleteOrganizationDomain", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
- public int DeleteOrganizationDomain(int itemId, int domainId) {
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/DeleteOrganizationDomain", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public int DeleteOrganizationDomain(int itemId, int domainId)
+ {
object[] results = this.Invoke("DeleteOrganizationDomain", new object[] {
itemId,
domainId});
return ((int)(results[0]));
}
-
+
///
- public System.IAsyncResult BeginDeleteOrganizationDomain(int itemId, int domainId, System.AsyncCallback callback, object asyncState) {
+ public System.IAsyncResult BeginDeleteOrganizationDomain(int itemId, int domainId, System.AsyncCallback callback, object asyncState)
+ {
return this.BeginInvoke("DeleteOrganizationDomain", new object[] {
itemId,
domainId}, callback, asyncState);
}
-
+
///
- public int EndDeleteOrganizationDomain(System.IAsyncResult asyncResult) {
+ public int EndDeleteOrganizationDomain(System.IAsyncResult asyncResult)
+ {
object[] results = this.EndInvoke(asyncResult);
return ((int)(results[0]));
}
-
+
///
- public void DeleteOrganizationDomainAsync(int itemId, int domainId) {
+ public void DeleteOrganizationDomainAsync(int itemId, int domainId)
+ {
this.DeleteOrganizationDomainAsync(itemId, domainId, null);
}
-
+
///
- public void DeleteOrganizationDomainAsync(int itemId, int domainId, object userState) {
- if ((this.DeleteOrganizationDomainOperationCompleted == null)) {
+ public void DeleteOrganizationDomainAsync(int itemId, int domainId, object userState)
+ {
+ if ((this.DeleteOrganizationDomainOperationCompleted == null))
+ {
this.DeleteOrganizationDomainOperationCompleted = new System.Threading.SendOrPostCallback(this.OnDeleteOrganizationDomainOperationCompleted);
}
this.InvokeAsync("DeleteOrganizationDomain", new object[] {
itemId,
domainId}, this.DeleteOrganizationDomainOperationCompleted, userState);
}
-
- private void OnDeleteOrganizationDomainOperationCompleted(object arg) {
- if ((this.DeleteOrganizationDomainCompleted != null)) {
+
+ private void OnDeleteOrganizationDomainOperationCompleted(object arg)
+ {
+ if ((this.DeleteOrganizationDomainCompleted != null))
+ {
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
this.DeleteOrganizationDomainCompleted(this, new DeleteOrganizationDomainCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
-
+
///
- [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/SetOrganizationDefaultDomain", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
- public int SetOrganizationDefaultDomain(int itemId, int domainId) {
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/SetOrganizationDefaultDomain", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public int SetOrganizationDefaultDomain(int itemId, int domainId)
+ {
object[] results = this.Invoke("SetOrganizationDefaultDomain", new object[] {
itemId,
domainId});
return ((int)(results[0]));
}
-
+
///
- public System.IAsyncResult BeginSetOrganizationDefaultDomain(int itemId, int domainId, System.AsyncCallback callback, object asyncState) {
+ public System.IAsyncResult BeginSetOrganizationDefaultDomain(int itemId, int domainId, System.AsyncCallback callback, object asyncState)
+ {
return this.BeginInvoke("SetOrganizationDefaultDomain", new object[] {
itemId,
domainId}, callback, asyncState);
}
-
+
///
- public int EndSetOrganizationDefaultDomain(System.IAsyncResult asyncResult) {
+ public int EndSetOrganizationDefaultDomain(System.IAsyncResult asyncResult)
+ {
object[] results = this.EndInvoke(asyncResult);
return ((int)(results[0]));
}
-
+
///
- public void SetOrganizationDefaultDomainAsync(int itemId, int domainId) {
+ public void SetOrganizationDefaultDomainAsync(int itemId, int domainId)
+ {
this.SetOrganizationDefaultDomainAsync(itemId, domainId, null);
}
-
+
///
- public void SetOrganizationDefaultDomainAsync(int itemId, int domainId, object userState) {
- if ((this.SetOrganizationDefaultDomainOperationCompleted == null)) {
+ public void SetOrganizationDefaultDomainAsync(int itemId, int domainId, object userState)
+ {
+ if ((this.SetOrganizationDefaultDomainOperationCompleted == null))
+ {
this.SetOrganizationDefaultDomainOperationCompleted = new System.Threading.SendOrPostCallback(this.OnSetOrganizationDefaultDomainOperationCompleted);
}
this.InvokeAsync("SetOrganizationDefaultDomain", new object[] {
itemId,
domainId}, this.SetOrganizationDefaultDomainOperationCompleted, userState);
}
-
- private void OnSetOrganizationDefaultDomainOperationCompleted(object arg) {
- if ((this.SetOrganizationDefaultDomainCompleted != null)) {
+
+ private void OnSetOrganizationDefaultDomainOperationCompleted(object arg)
+ {
+ if ((this.SetOrganizationDefaultDomainCompleted != null))
+ {
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
this.SetOrganizationDefaultDomainCompleted(this, new SetOrganizationDefaultDomainCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
-
+
///
- [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/CreateUser", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
- public int CreateUser(int itemId, string displayName, string name, string domain, string password, string subscriberNumber, bool sendNotification, string to) {
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/CreateUser", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public int CreateUser(int itemId, string displayName, string name, string domain, string password, string subscriberNumber, bool sendNotification, string to)
+ {
object[] results = this.Invoke("CreateUser", new object[] {
itemId,
displayName,
@@ -950,9 +1104,10 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
to});
return ((int)(results[0]));
}
-
+
///
- public System.IAsyncResult BeginCreateUser(int itemId, string displayName, string name, string domain, string password, string subscriberNumber, bool sendNotification, string to, System.AsyncCallback callback, object asyncState) {
+ public System.IAsyncResult BeginCreateUser(int itemId, string displayName, string name, string domain, string password, string subscriberNumber, bool sendNotification, string to, System.AsyncCallback callback, object asyncState)
+ {
return this.BeginInvoke("CreateUser", new object[] {
itemId,
displayName,
@@ -963,21 +1118,25 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
sendNotification,
to}, callback, asyncState);
}
-
+
///
- public int EndCreateUser(System.IAsyncResult asyncResult) {
+ public int EndCreateUser(System.IAsyncResult asyncResult)
+ {
object[] results = this.EndInvoke(asyncResult);
return ((int)(results[0]));
}
-
+
///
- public void CreateUserAsync(int itemId, string displayName, string name, string domain, string password, string subscriberNumber, bool sendNotification, string to) {
+ public void CreateUserAsync(int itemId, string displayName, string name, string domain, string password, string subscriberNumber, bool sendNotification, string to)
+ {
this.CreateUserAsync(itemId, displayName, name, domain, password, subscriberNumber, sendNotification, to, null);
}
-
+
///
- public void CreateUserAsync(int itemId, string displayName, string name, string domain, string password, string subscriberNumber, bool sendNotification, string to, object userState) {
- if ((this.CreateUserOperationCompleted == null)) {
+ public void CreateUserAsync(int itemId, string displayName, string name, string domain, string password, string subscriberNumber, bool sendNotification, string to, object userState)
+ {
+ if ((this.CreateUserOperationCompleted == null))
+ {
this.CreateUserOperationCompleted = new System.Threading.SendOrPostCallback(this.OnCreateUserOperationCompleted);
}
this.InvokeAsync("CreateUser", new object[] {
@@ -990,17 +1149,20 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
sendNotification,
to}, this.CreateUserOperationCompleted, userState);
}
-
- private void OnCreateUserOperationCompleted(object arg) {
- if ((this.CreateUserCompleted != null)) {
+
+ private void OnCreateUserOperationCompleted(object arg)
+ {
+ if ((this.CreateUserCompleted != null))
+ {
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
this.CreateUserCompleted(this, new CreateUserCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
-
+
///
- [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/ImportUser", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
- public int ImportUser(int itemId, string accountName, string displayName, string name, string domain, string password, string subscriberNumber) {
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/ImportUser", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public int ImportUser(int itemId, string accountName, string displayName, string name, string domain, string password, string subscriberNumber)
+ {
object[] results = this.Invoke("ImportUser", new object[] {
itemId,
accountName,
@@ -1011,9 +1173,10 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
subscriberNumber});
return ((int)(results[0]));
}
-
+
///
- public System.IAsyncResult BeginImportUser(int itemId, string accountName, string displayName, string name, string domain, string password, string subscriberNumber, System.AsyncCallback callback, object asyncState) {
+ public System.IAsyncResult BeginImportUser(int itemId, string accountName, string displayName, string name, string domain, string password, string subscriberNumber, System.AsyncCallback callback, object asyncState)
+ {
return this.BeginInvoke("ImportUser", new object[] {
itemId,
accountName,
@@ -1023,21 +1186,25 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
password,
subscriberNumber}, callback, asyncState);
}
-
+
///
- public int EndImportUser(System.IAsyncResult asyncResult) {
+ public int EndImportUser(System.IAsyncResult asyncResult)
+ {
object[] results = this.EndInvoke(asyncResult);
return ((int)(results[0]));
}
-
+
///
- public void ImportUserAsync(int itemId, string accountName, string displayName, string name, string domain, string password, string subscriberNumber) {
+ public void ImportUserAsync(int itemId, string accountName, string displayName, string name, string domain, string password, string subscriberNumber)
+ {
this.ImportUserAsync(itemId, accountName, displayName, name, domain, password, subscriberNumber, null);
}
-
+
///
- public void ImportUserAsync(int itemId, string accountName, string displayName, string name, string domain, string password, string subscriberNumber, object userState) {
- if ((this.ImportUserOperationCompleted == null)) {
+ public void ImportUserAsync(int itemId, string accountName, string displayName, string name, string domain, string password, string subscriberNumber, object userState)
+ {
+ if ((this.ImportUserOperationCompleted == null))
+ {
this.ImportUserOperationCompleted = new System.Threading.SendOrPostCallback(this.OnImportUserOperationCompleted);
}
this.InvokeAsync("ImportUser", new object[] {
@@ -1049,17 +1216,20 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
password,
subscriberNumber}, this.ImportUserOperationCompleted, userState);
}
-
- private void OnImportUserOperationCompleted(object arg) {
- if ((this.ImportUserCompleted != null)) {
+
+ private void OnImportUserOperationCompleted(object arg)
+ {
+ if ((this.ImportUserCompleted != null))
+ {
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
this.ImportUserCompleted(this, new ImportUserCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
-
+
///
- [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetOrganizationUsersPaged", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
- public OrganizationUsersPaged GetOrganizationUsersPaged(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) {
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetOrganizationUsersPaged", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public OrganizationUsersPaged GetOrganizationUsersPaged(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows)
+ {
object[] results = this.Invoke("GetOrganizationUsersPaged", new object[] {
itemId,
filterColumn,
@@ -1069,9 +1239,10 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
maximumRows});
return ((OrganizationUsersPaged)(results[0]));
}
-
+
///
- public System.IAsyncResult BeginGetOrganizationUsersPaged(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, System.AsyncCallback callback, object asyncState) {
+ public System.IAsyncResult BeginGetOrganizationUsersPaged(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, System.AsyncCallback callback, object asyncState)
+ {
return this.BeginInvoke("GetOrganizationUsersPaged", new object[] {
itemId,
filterColumn,
@@ -1080,21 +1251,25 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
startRow,
maximumRows}, callback, asyncState);
}
-
+
///
- public OrganizationUsersPaged EndGetOrganizationUsersPaged(System.IAsyncResult asyncResult) {
+ public OrganizationUsersPaged EndGetOrganizationUsersPaged(System.IAsyncResult asyncResult)
+ {
object[] results = this.EndInvoke(asyncResult);
return ((OrganizationUsersPaged)(results[0]));
}
-
+
///
- public void GetOrganizationUsersPagedAsync(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) {
+ public void GetOrganizationUsersPagedAsync(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows)
+ {
this.GetOrganizationUsersPagedAsync(itemId, filterColumn, filterValue, sortColumn, startRow, maximumRows, null);
}
-
+
///
- public void GetOrganizationUsersPagedAsync(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, object userState) {
- if ((this.GetOrganizationUsersPagedOperationCompleted == null)) {
+ public void GetOrganizationUsersPagedAsync(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, object userState)
+ {
+ if ((this.GetOrganizationUsersPagedOperationCompleted == null))
+ {
this.GetOrganizationUsersPagedOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetOrganizationUsersPagedOperationCompleted);
}
this.InvokeAsync("GetOrganizationUsersPaged", new object[] {
@@ -1105,90 +1280,101 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
startRow,
maximumRows}, this.GetOrganizationUsersPagedOperationCompleted, userState);
}
-
- private void OnGetOrganizationUsersPagedOperationCompleted(object arg) {
- if ((this.GetOrganizationUsersPagedCompleted != null)) {
+
+ private void OnGetOrganizationUsersPagedOperationCompleted(object arg)
+ {
+ if ((this.GetOrganizationUsersPagedCompleted != null))
+ {
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
this.GetOrganizationUsersPagedCompleted(this, new GetOrganizationUsersPagedCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
-
+
///
- [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetUserGeneralSettings", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
- public OrganizationUser GetUserGeneralSettings(int itemId, int accountId) {
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetUserGeneralSettings", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public OrganizationUser GetUserGeneralSettings(int itemId, int accountId)
+ {
object[] results = this.Invoke("GetUserGeneralSettings", new object[] {
itemId,
accountId});
return ((OrganizationUser)(results[0]));
}
-
+
///
- public System.IAsyncResult BeginGetUserGeneralSettings(int itemId, int accountId, System.AsyncCallback callback, object asyncState) {
+ public System.IAsyncResult BeginGetUserGeneralSettings(int itemId, int accountId, System.AsyncCallback callback, object asyncState)
+ {
return this.BeginInvoke("GetUserGeneralSettings", new object[] {
itemId,
accountId}, callback, asyncState);
}
-
+
///
- public OrganizationUser EndGetUserGeneralSettings(System.IAsyncResult asyncResult) {
+ public OrganizationUser EndGetUserGeneralSettings(System.IAsyncResult asyncResult)
+ {
object[] results = this.EndInvoke(asyncResult);
return ((OrganizationUser)(results[0]));
}
-
+
///
- public void GetUserGeneralSettingsAsync(int itemId, int accountId) {
+ public void GetUserGeneralSettingsAsync(int itemId, int accountId)
+ {
this.GetUserGeneralSettingsAsync(itemId, accountId, null);
}
-
+
///
- public void GetUserGeneralSettingsAsync(int itemId, int accountId, object userState) {
- if ((this.GetUserGeneralSettingsOperationCompleted == null)) {
+ public void GetUserGeneralSettingsAsync(int itemId, int accountId, object userState)
+ {
+ if ((this.GetUserGeneralSettingsOperationCompleted == null))
+ {
this.GetUserGeneralSettingsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetUserGeneralSettingsOperationCompleted);
}
this.InvokeAsync("GetUserGeneralSettings", new object[] {
itemId,
accountId}, this.GetUserGeneralSettingsOperationCompleted, userState);
}
-
- private void OnGetUserGeneralSettingsOperationCompleted(object arg) {
- if ((this.GetUserGeneralSettingsCompleted != null)) {
+
+ private void OnGetUserGeneralSettingsOperationCompleted(object arg)
+ {
+ if ((this.GetUserGeneralSettingsCompleted != null))
+ {
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
this.GetUserGeneralSettingsCompleted(this, new GetUserGeneralSettingsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
-
+
///
- [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/SetUserGeneralSettings", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/SetUserGeneralSettings", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
public int SetUserGeneralSettings(
- int itemId,
- int accountId,
- string displayName,
- string password,
- bool hideAddressBook,
- bool disabled,
- bool locked,
- string firstName,
- string initials,
- string lastName,
- string address,
- string city,
- string state,
- string zip,
- string country,
- string jobTitle,
- string company,
- string department,
- string office,
- string managerAccountName,
- string businessPhone,
- string fax,
- string homePhone,
- string mobilePhone,
- string pager,
- string webPage,
- string notes,
- string externalEmail,
- string subscriberNumber) {
+ int itemId,
+ int accountId,
+ string displayName,
+ string password,
+ bool hideAddressBook,
+ bool disabled,
+ bool locked,
+ string firstName,
+ string initials,
+ string lastName,
+ string address,
+ string city,
+ string state,
+ string zip,
+ string country,
+ string jobTitle,
+ string company,
+ string department,
+ string office,
+ string managerAccountName,
+ string businessPhone,
+ string fax,
+ string homePhone,
+ string mobilePhone,
+ string pager,
+ string webPage,
+ string notes,
+ string externalEmail,
+ string subscriberNumber)
+ {
object[] results = this.Invoke("SetUserGeneralSettings", new object[] {
itemId,
accountId,
@@ -1221,40 +1407,41 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
subscriberNumber});
return ((int)(results[0]));
}
-
+
///
public System.IAsyncResult BeginSetUserGeneralSettings(
- int itemId,
- int accountId,
- string displayName,
- string password,
- bool hideAddressBook,
- bool disabled,
- bool locked,
- string firstName,
- string initials,
- string lastName,
- string address,
- string city,
- string state,
- string zip,
- string country,
- string jobTitle,
- string company,
- string department,
- string office,
- string managerAccountName,
- string businessPhone,
- string fax,
- string homePhone,
- string mobilePhone,
- string pager,
- string webPage,
- string notes,
- string externalEmail,
- string subscriberNumber,
- System.AsyncCallback callback,
- object asyncState) {
+ int itemId,
+ int accountId,
+ string displayName,
+ string password,
+ bool hideAddressBook,
+ bool disabled,
+ bool locked,
+ string firstName,
+ string initials,
+ string lastName,
+ string address,
+ string city,
+ string state,
+ string zip,
+ string country,
+ string jobTitle,
+ string company,
+ string department,
+ string office,
+ string managerAccountName,
+ string businessPhone,
+ string fax,
+ string homePhone,
+ string mobilePhone,
+ string pager,
+ string webPage,
+ string notes,
+ string externalEmail,
+ string subscriberNumber,
+ System.AsyncCallback callback,
+ object asyncState)
+ {
return this.BeginInvoke("SetUserGeneralSettings", new object[] {
itemId,
accountId,
@@ -1286,80 +1473,84 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
externalEmail,
subscriberNumber}, callback, asyncState);
}
-
+
///
- public int EndSetUserGeneralSettings(System.IAsyncResult asyncResult) {
+ public int EndSetUserGeneralSettings(System.IAsyncResult asyncResult)
+ {
object[] results = this.EndInvoke(asyncResult);
return ((int)(results[0]));
}
-
+
///
public void SetUserGeneralSettingsAsync(
- int itemId,
- int accountId,
- string displayName,
- string password,
- bool hideAddressBook,
- bool disabled,
- bool locked,
- string firstName,
- string initials,
- string lastName,
- string address,
- string city,
- string state,
- string zip,
- string country,
- string jobTitle,
- string company,
- string department,
- string office,
- string managerAccountName,
- string businessPhone,
- string fax,
- string homePhone,
- string mobilePhone,
- string pager,
- string webPage,
- string notes,
- string externalEmail,
- string subscriberNumber) {
+ int itemId,
+ int accountId,
+ string displayName,
+ string password,
+ bool hideAddressBook,
+ bool disabled,
+ bool locked,
+ string firstName,
+ string initials,
+ string lastName,
+ string address,
+ string city,
+ string state,
+ string zip,
+ string country,
+ string jobTitle,
+ string company,
+ string department,
+ string office,
+ string managerAccountName,
+ string businessPhone,
+ string fax,
+ string homePhone,
+ string mobilePhone,
+ string pager,
+ string webPage,
+ string notes,
+ string externalEmail,
+ string subscriberNumber)
+ {
this.SetUserGeneralSettingsAsync(itemId, accountId, displayName, password, hideAddressBook, disabled, locked, firstName, initials, lastName, address, city, state, zip, country, jobTitle, company, department, office, managerAccountName, businessPhone, fax, homePhone, mobilePhone, pager, webPage, notes, externalEmail, subscriberNumber, null);
}
-
+
///
public void SetUserGeneralSettingsAsync(
- int itemId,
- int accountId,
- string displayName,
- string password,
- bool hideAddressBook,
- bool disabled,
- bool locked,
- string firstName,
- string initials,
- string lastName,
- string address,
- string city,
- string state,
- string zip,
- string country,
- string jobTitle,
- string company,
- string department,
- string office,
- string managerAccountName,
- string businessPhone,
- string fax,
- string homePhone,
- string mobilePhone,
- string pager,
- string webPage,
- string notes,
- string externalEmail,
- string subscriberNumber,
- object userState) {
- if ((this.SetUserGeneralSettingsOperationCompleted == null)) {
+ int itemId,
+ int accountId,
+ string displayName,
+ string password,
+ bool hideAddressBook,
+ bool disabled,
+ bool locked,
+ string firstName,
+ string initials,
+ string lastName,
+ string address,
+ string city,
+ string state,
+ string zip,
+ string country,
+ string jobTitle,
+ string company,
+ string department,
+ string office,
+ string managerAccountName,
+ string businessPhone,
+ string fax,
+ string homePhone,
+ string mobilePhone,
+ string pager,
+ string webPage,
+ string notes,
+ string externalEmail,
+ string subscriberNumber,
+ object userState)
+ {
+ if ((this.SetUserGeneralSettingsOperationCompleted == null))
+ {
this.SetUserGeneralSettingsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnSetUserGeneralSettingsOperationCompleted);
}
this.InvokeAsync("SetUserGeneralSettings", new object[] {
@@ -1393,17 +1584,20 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
externalEmail,
subscriberNumber}, this.SetUserGeneralSettingsOperationCompleted, userState);
}
-
- private void OnSetUserGeneralSettingsOperationCompleted(object arg) {
- if ((this.SetUserGeneralSettingsCompleted != null)) {
+
+ private void OnSetUserGeneralSettingsOperationCompleted(object arg)
+ {
+ if ((this.SetUserGeneralSettingsCompleted != null))
+ {
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
this.SetUserGeneralSettingsCompleted(this, new SetUserGeneralSettingsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
-
+
///
- [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/SetUserPrincipalName", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
- public int SetUserPrincipalName(int itemId, int accountId, string userPrincipalName, bool inherit) {
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/SetUserPrincipalName", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public int SetUserPrincipalName(int itemId, int accountId, string userPrincipalName, bool inherit)
+ {
object[] results = this.Invoke("SetUserPrincipalName", new object[] {
itemId,
accountId,
@@ -1411,30 +1605,35 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
inherit});
return ((int)(results[0]));
}
-
+
///
- public System.IAsyncResult BeginSetUserPrincipalName(int itemId, int accountId, string userPrincipalName, bool inherit, System.AsyncCallback callback, object asyncState) {
+ public System.IAsyncResult BeginSetUserPrincipalName(int itemId, int accountId, string userPrincipalName, bool inherit, System.AsyncCallback callback, object asyncState)
+ {
return this.BeginInvoke("SetUserPrincipalName", new object[] {
itemId,
accountId,
userPrincipalName,
inherit}, callback, asyncState);
}
-
+
///
- public int EndSetUserPrincipalName(System.IAsyncResult asyncResult) {
+ public int EndSetUserPrincipalName(System.IAsyncResult asyncResult)
+ {
object[] results = this.EndInvoke(asyncResult);
return ((int)(results[0]));
}
-
+
///
- public void SetUserPrincipalNameAsync(int itemId, int accountId, string userPrincipalName, bool inherit) {
+ public void SetUserPrincipalNameAsync(int itemId, int accountId, string userPrincipalName, bool inherit)
+ {
this.SetUserPrincipalNameAsync(itemId, accountId, userPrincipalName, inherit, null);
}
-
+
///
- public void SetUserPrincipalNameAsync(int itemId, int accountId, string userPrincipalName, bool inherit, object userState) {
- if ((this.SetUserPrincipalNameOperationCompleted == null)) {
+ public void SetUserPrincipalNameAsync(int itemId, int accountId, string userPrincipalName, bool inherit, object userState)
+ {
+ if ((this.SetUserPrincipalNameOperationCompleted == null))
+ {
this.SetUserPrincipalNameOperationCompleted = new System.Threading.SendOrPostCallback(this.OnSetUserPrincipalNameOperationCompleted);
}
this.InvokeAsync("SetUserPrincipalName", new object[] {
@@ -1443,46 +1642,54 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
userPrincipalName,
inherit}, this.SetUserPrincipalNameOperationCompleted, userState);
}
-
- private void OnSetUserPrincipalNameOperationCompleted(object arg) {
- if ((this.SetUserPrincipalNameCompleted != null)) {
+
+ private void OnSetUserPrincipalNameOperationCompleted(object arg)
+ {
+ if ((this.SetUserPrincipalNameCompleted != null))
+ {
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
this.SetUserPrincipalNameCompleted(this, new SetUserPrincipalNameCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
-
+
///
- [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/SetUserPassword", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
- public int SetUserPassword(int itemId, int accountId, string password) {
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/SetUserPassword", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public int SetUserPassword(int itemId, int accountId, string password)
+ {
object[] results = this.Invoke("SetUserPassword", new object[] {
itemId,
accountId,
password});
return ((int)(results[0]));
}
-
+
///
- public System.IAsyncResult BeginSetUserPassword(int itemId, int accountId, string password, System.AsyncCallback callback, object asyncState) {
+ public System.IAsyncResult BeginSetUserPassword(int itemId, int accountId, string password, System.AsyncCallback callback, object asyncState)
+ {
return this.BeginInvoke("SetUserPassword", new object[] {
itemId,
accountId,
password}, callback, asyncState);
}
-
+
///
- public int EndSetUserPassword(System.IAsyncResult asyncResult) {
+ public int EndSetUserPassword(System.IAsyncResult asyncResult)
+ {
object[] results = this.EndInvoke(asyncResult);
return ((int)(results[0]));
}
-
+
///
- public void SetUserPasswordAsync(int itemId, int accountId, string password) {
+ public void SetUserPasswordAsync(int itemId, int accountId, string password)
+ {
this.SetUserPasswordAsync(itemId, accountId, password, null);
}
-
+
///
- public void SetUserPasswordAsync(int itemId, int accountId, string password, object userState) {
- if ((this.SetUserPasswordOperationCompleted == null)) {
+ public void SetUserPasswordAsync(int itemId, int accountId, string password, object userState)
+ {
+ if ((this.SetUserPasswordOperationCompleted == null))
+ {
this.SetUserPasswordOperationCompleted = new System.Threading.SendOrPostCallback(this.OnSetUserPasswordOperationCompleted);
}
this.InvokeAsync("SetUserPassword", new object[] {
@@ -1490,17 +1697,20 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
accountId,
password}, this.SetUserPasswordOperationCompleted, userState);
}
-
- private void OnSetUserPasswordOperationCompleted(object arg) {
- if ((this.SetUserPasswordCompleted != null)) {
+
+ private void OnSetUserPasswordOperationCompleted(object arg)
+ {
+ if ((this.SetUserPasswordCompleted != null))
+ {
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
this.SetUserPasswordCompleted(this, new SetUserPasswordCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
-
+
///
- [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/SearchAccounts", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
- public OrganizationUser[] SearchAccounts(int itemId, string filterColumn, string filterValue, string sortColumn, bool includeMailboxes) {
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/SearchAccounts", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public OrganizationUser[] SearchAccounts(int itemId, string filterColumn, string filterValue, string sortColumn, bool includeMailboxes)
+ {
object[] results = this.Invoke("SearchAccounts", new object[] {
itemId,
filterColumn,
@@ -1509,9 +1719,10 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
includeMailboxes});
return ((OrganizationUser[])(results[0]));
}
-
+
///
- public System.IAsyncResult BeginSearchAccounts(int itemId, string filterColumn, string filterValue, string sortColumn, bool includeMailboxes, System.AsyncCallback callback, object asyncState) {
+ public System.IAsyncResult BeginSearchAccounts(int itemId, string filterColumn, string filterValue, string sortColumn, bool includeMailboxes, System.AsyncCallback callback, object asyncState)
+ {
return this.BeginInvoke("SearchAccounts", new object[] {
itemId,
filterColumn,
@@ -1519,21 +1730,25 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
sortColumn,
includeMailboxes}, callback, asyncState);
}
-
+
///
- public OrganizationUser[] EndSearchAccounts(System.IAsyncResult asyncResult) {
+ public OrganizationUser[] EndSearchAccounts(System.IAsyncResult asyncResult)
+ {
object[] results = this.EndInvoke(asyncResult);
return ((OrganizationUser[])(results[0]));
}
-
+
///
- public void SearchAccountsAsync(int itemId, string filterColumn, string filterValue, string sortColumn, bool includeMailboxes) {
+ public void SearchAccountsAsync(int itemId, string filterColumn, string filterValue, string sortColumn, bool includeMailboxes)
+ {
this.SearchAccountsAsync(itemId, filterColumn, filterValue, sortColumn, includeMailboxes, null);
}
-
+
///
- public void SearchAccountsAsync(int itemId, string filterColumn, string filterValue, string sortColumn, bool includeMailboxes, object userState) {
- if ((this.SearchAccountsOperationCompleted == null)) {
+ public void SearchAccountsAsync(int itemId, string filterColumn, string filterValue, string sortColumn, bool includeMailboxes, object userState)
+ {
+ if ((this.SearchAccountsOperationCompleted == null))
+ {
this.SearchAccountsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnSearchAccountsOperationCompleted);
}
this.InvokeAsync("SearchAccounts", new object[] {
@@ -1543,101 +1758,462 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
sortColumn,
includeMailboxes}, this.SearchAccountsOperationCompleted, userState);
}
-
- private void OnSearchAccountsOperationCompleted(object arg) {
- if ((this.SearchAccountsCompleted != null)) {
+
+ private void OnSearchAccountsOperationCompleted(object arg)
+ {
+ if ((this.SearchAccountsCompleted != null))
+ {
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
this.SearchAccountsCompleted(this, new SearchAccountsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
-
+
///
- [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/DeleteUser", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
- public int DeleteUser(int itemId, int accountId) {
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/DeleteUser", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public int DeleteUser(int itemId, int accountId)
+ {
object[] results = this.Invoke("DeleteUser", new object[] {
itemId,
accountId});
return ((int)(results[0]));
}
-
+
///
- public System.IAsyncResult BeginDeleteUser(int itemId, int accountId, System.AsyncCallback callback, object asyncState) {
+ public System.IAsyncResult BeginDeleteUser(int itemId, int accountId, System.AsyncCallback callback, object asyncState)
+ {
return this.BeginInvoke("DeleteUser", new object[] {
itemId,
accountId}, callback, asyncState);
}
-
+
///
- public int EndDeleteUser(System.IAsyncResult asyncResult) {
+ public int EndDeleteUser(System.IAsyncResult asyncResult)
+ {
object[] results = this.EndInvoke(asyncResult);
return ((int)(results[0]));
}
-
+
///
- public void DeleteUserAsync(int itemId, int accountId) {
+ public void DeleteUserAsync(int itemId, int accountId)
+ {
this.DeleteUserAsync(itemId, accountId, null);
}
-
+
///
- public void DeleteUserAsync(int itemId, int accountId, object userState) {
- if ((this.DeleteUserOperationCompleted == null)) {
+ public void DeleteUserAsync(int itemId, int accountId, object userState)
+ {
+ if ((this.DeleteUserOperationCompleted == null))
+ {
this.DeleteUserOperationCompleted = new System.Threading.SendOrPostCallback(this.OnDeleteUserOperationCompleted);
}
this.InvokeAsync("DeleteUser", new object[] {
itemId,
accountId}, this.DeleteUserOperationCompleted, userState);
}
-
- private void OnDeleteUserOperationCompleted(object arg) {
- if ((this.DeleteUserCompleted != null)) {
+
+ private void OnDeleteUserOperationCompleted(object arg)
+ {
+ if ((this.DeleteUserCompleted != null))
+ {
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
this.DeleteUserCompleted(this, new DeleteUserCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
-
+
///
- [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetPasswordPolicy", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
- public PasswordPolicyResult GetPasswordPolicy(int itemId) {
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetPasswordPolicy", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public PasswordPolicyResult GetPasswordPolicy(int itemId)
+ {
object[] results = this.Invoke("GetPasswordPolicy", new object[] {
itemId});
return ((PasswordPolicyResult)(results[0]));
}
-
+
///
- public System.IAsyncResult BeginGetPasswordPolicy(int itemId, System.AsyncCallback callback, object asyncState) {
+ public System.IAsyncResult BeginGetPasswordPolicy(int itemId, System.AsyncCallback callback, object asyncState)
+ {
return this.BeginInvoke("GetPasswordPolicy", new object[] {
itemId}, callback, asyncState);
}
-
+
///
- public PasswordPolicyResult EndGetPasswordPolicy(System.IAsyncResult asyncResult) {
+ public PasswordPolicyResult EndGetPasswordPolicy(System.IAsyncResult asyncResult)
+ {
object[] results = this.EndInvoke(asyncResult);
return ((PasswordPolicyResult)(results[0]));
}
-
+
///
- public void GetPasswordPolicyAsync(int itemId) {
+ public void GetPasswordPolicyAsync(int itemId)
+ {
this.GetPasswordPolicyAsync(itemId, null);
}
-
+
///
- public void GetPasswordPolicyAsync(int itemId, object userState) {
- if ((this.GetPasswordPolicyOperationCompleted == null)) {
+ public void GetPasswordPolicyAsync(int itemId, object userState)
+ {
+ if ((this.GetPasswordPolicyOperationCompleted == null))
+ {
this.GetPasswordPolicyOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetPasswordPolicyOperationCompleted);
}
this.InvokeAsync("GetPasswordPolicy", new object[] {
itemId}, this.GetPasswordPolicyOperationCompleted, userState);
}
-
- private void OnGetPasswordPolicyOperationCompleted(object arg) {
- if ((this.GetPasswordPolicyCompleted != null)) {
+
+ private void OnGetPasswordPolicyOperationCompleted(object arg)
+ {
+ if ((this.GetPasswordPolicyCompleted != null))
+ {
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
this.GetPasswordPolicyCompleted(this, new GetPasswordPolicyCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
}
}
-
+
///
- public new void CancelAsync(object userState) {
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/CreateSecurityGroup", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public int CreateSecurityGroup(int itemId, string displayName, string managedBy)
+ {
+ object[] results = this.Invoke("CreateSecurityGroup", new object[] {
+ itemId,
+ displayName,
+ managedBy});
+ return ((int)(results[0]));
+ }
+
+ ///
+ public System.IAsyncResult BeginCreateSecurityGroup(int itemId, string displayName, string managedBy, System.AsyncCallback callback, object asyncState)
+ {
+ return this.BeginInvoke("CreateSecurityGroup", new object[] {
+ itemId,
+ displayName,
+ managedBy}, callback, asyncState);
+ }
+
+ ///
+ public int EndCreateSecurityGroup(System.IAsyncResult asyncResult)
+ {
+ object[] results = this.EndInvoke(asyncResult);
+ return ((int)(results[0]));
+ }
+
+ ///
+ public void CreateSecurityGroupAsync(int itemId, string displayName, string managedBy)
+ {
+ this.CreateSecurityGroupAsync(itemId, displayName, managedBy, null);
+ }
+
+ ///
+ public void CreateSecurityGroupAsync(int itemId, string displayName, string managedBy, object userState)
+ {
+ if ((this.CreateSecurityGroupOperationCompleted == null))
+ {
+ this.CreateSecurityGroupOperationCompleted = new System.Threading.SendOrPostCallback(this.OnCreateSecurityGroupOperationCompleted);
+ }
+ this.InvokeAsync("CreateSecurityGroup", new object[] {
+ itemId,
+ displayName,
+ managedBy}, this.CreateSecurityGroupOperationCompleted, userState);
+ }
+
+ private void OnCreateSecurityGroupOperationCompleted(object arg)
+ {
+ if ((this.CreateSecurityGroupCompleted != null))
+ {
+ System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
+ this.CreateSecurityGroupCompleted(this, new CreateSecurityGroupCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
+ }
+ }
+
+ ///
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetSecurityGroupGeneralSettings", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public OrganizationSecurityGroup GetSecurityGroupGeneralSettings(int itemId, int accountId)
+ {
+ object[] results = this.Invoke("GetSecurityGroupGeneralSettings", new object[] {
+ itemId,
+ accountId});
+ return ((OrganizationSecurityGroup)(results[0]));
+ }
+
+ ///
+ public System.IAsyncResult BeginGetSecurityGroupGeneralSettings(int itemId, int accountId, System.AsyncCallback callback, object asyncState)
+ {
+ return this.BeginInvoke("GetSecurityGroupGeneralSettings", new object[] {
+ itemId,
+ accountId}, callback, asyncState);
+ }
+
+ ///
+ public OrganizationSecurityGroup EndGetSecurityGroupGeneralSettings(System.IAsyncResult asyncResult)
+ {
+ object[] results = this.EndInvoke(asyncResult);
+ return ((OrganizationSecurityGroup)(results[0]));
+ }
+
+ ///
+ public void GetSecurityGroupGeneralSettingsAsync(int itemId, int accountId)
+ {
+ this.GetSecurityGroupGeneralSettingsAsync(itemId, accountId, null);
+ }
+
+ ///
+ public void GetSecurityGroupGeneralSettingsAsync(int itemId, int accountId, object userState)
+ {
+ if ((this.GetSecurityGroupGeneralSettingsOperationCompleted == null))
+ {
+ this.GetSecurityGroupGeneralSettingsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetSecurityGroupGeneralSettingsOperationCompleted);
+ }
+ this.InvokeAsync("GetSecurityGroupGeneralSettings", new object[] {
+ itemId,
+ accountId}, this.GetSecurityGroupGeneralSettingsOperationCompleted, userState);
+ }
+
+ private void OnGetSecurityGroupGeneralSettingsOperationCompleted(object arg)
+ {
+ if ((this.GetSecurityGroupGeneralSettingsCompleted != null))
+ {
+ System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
+ this.GetSecurityGroupGeneralSettingsCompleted(this, new GetSecurityGroupGeneralSettingsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
+ }
+ }
+
+ ///
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/DeleteSecurityGroup", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public int DeleteSecurityGroup(int itemId, int accountId)
+ {
+ object[] results = this.Invoke("DeleteSecurityGroup", new object[] {
+ itemId,
+ accountId});
+ return ((int)(results[0]));
+ }
+
+ ///
+ public System.IAsyncResult BeginDeleteSecurityGroup(int itemId, int accountId, System.AsyncCallback callback, object asyncState)
+ {
+ return this.BeginInvoke("DeleteSecurityGroup", new object[] {
+ itemId,
+ accountId}, callback, asyncState);
+ }
+
+ ///
+ public int EndDeleteSecurityGroup(System.IAsyncResult asyncResult)
+ {
+ object[] results = this.EndInvoke(asyncResult);
+ return ((int)(results[0]));
+ }
+
+ ///
+ public void DeleteSecurityGroupAsync(int itemId, int accountId)
+ {
+ this.DeleteSecurityGroupAsync(itemId, accountId, null);
+ }
+
+ ///
+ public void DeleteSecurityGroupAsync(int itemId, int accountId, object userState)
+ {
+ if ((this.DeleteSecurityGroupOperationCompleted == null))
+ {
+ this.DeleteSecurityGroupOperationCompleted = new System.Threading.SendOrPostCallback(this.OnDeleteSecurityGroupOperationCompleted);
+ }
+ this.InvokeAsync("DeleteSecurityGroup", new object[] {
+ itemId,
+ accountId}, this.DeleteSecurityGroupOperationCompleted, userState);
+ }
+
+ private void OnDeleteSecurityGroupOperationCompleted(object arg)
+ {
+ if ((this.DeleteSecurityGroupCompleted != null))
+ {
+ System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
+ this.DeleteSecurityGroupCompleted(this, new DeleteSecurityGroupCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
+ }
+ }
+
+ ///
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/SetSecurityGroupGeneralSettings", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public int SetSecurityGroupGeneralSettings(int itemId, int accountId, string displayName, string managedBy, string[] memberAccounts, string notes)
+ {
+ object[] results = this.Invoke("SetSecurityGroupGeneralSettings", new object[] {
+ itemId,
+ accountId,
+ displayName,
+ managedBy,
+ memberAccounts,
+ notes});
+ return ((int)(results[0]));
+ }
+
+ ///
+ public System.IAsyncResult BeginSetSecurityGroupGeneralSettings(int itemId, int accountId, string displayName, string managedBy, string[] memberAccounts, string notes, System.AsyncCallback callback, object asyncState)
+ {
+ return this.BeginInvoke("SetSecurityGroupGeneralSettings", new object[] {
+ itemId,
+ accountId,
+ displayName,
+ managedBy,
+ memberAccounts,
+ notes}, callback, asyncState);
+ }
+
+ ///
+ public int EndSetSecurityGroupGeneralSettings(System.IAsyncResult asyncResult)
+ {
+ object[] results = this.EndInvoke(asyncResult);
+ return ((int)(results[0]));
+ }
+
+ ///
+ public void SetSecurityGroupGeneralSettingsAsync(int itemId, int accountId, string displayName, string managedBy, string[] memberAccounts, string notes)
+ {
+ this.SetSecurityGroupGeneralSettingsAsync(itemId, accountId, displayName, managedBy, memberAccounts, notes, null);
+ }
+
+ ///
+ public void SetSecurityGroupGeneralSettingsAsync(int itemId, int accountId, string displayName, string managedBy, string[] memberAccounts, string notes, object userState)
+ {
+ if ((this.SetSecurityGroupGeneralSettingsOperationCompleted == null))
+ {
+ this.SetSecurityGroupGeneralSettingsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnSetSecurityGroupGeneralSettingsOperationCompleted);
+ }
+ this.InvokeAsync("SetSecurityGroupGeneralSettings", new object[] {
+ itemId,
+ accountId,
+ displayName,
+ managedBy,
+ memberAccounts,
+ notes}, this.SetSecurityGroupGeneralSettingsOperationCompleted, userState);
+ }
+
+ private void OnSetSecurityGroupGeneralSettingsOperationCompleted(object arg)
+ {
+ if ((this.SetSecurityGroupGeneralSettingsCompleted != null))
+ {
+ System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
+ this.SetSecurityGroupGeneralSettingsCompleted(this, new SetSecurityGroupGeneralSettingsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
+ }
+ }
+
+ ///
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetOrganizationSecurityGroupsPaged", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public ExchangeAccountsPaged GetOrganizationSecurityGroupsPaged(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows)
+ {
+ object[] results = this.Invoke("GetOrganizationSecurityGroupsPaged", new object[] {
+ itemId,
+ filterColumn,
+ filterValue,
+ sortColumn,
+ startRow,
+ maximumRows});
+ return ((ExchangeAccountsPaged)(results[0]));
+ }
+
+ ///
+ public System.IAsyncResult BeginGetOrganizationSecurityGroupsPaged(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, System.AsyncCallback callback, object asyncState)
+ {
+ return this.BeginInvoke("GetOrganizationSecurityGroupsPaged", new object[] {
+ itemId,
+ filterColumn,
+ filterValue,
+ sortColumn,
+ startRow,
+ maximumRows}, callback, asyncState);
+ }
+
+ ///
+ public ExchangeAccountsPaged EndGetOrganizationSecurityGroupsPaged(System.IAsyncResult asyncResult)
+ {
+ object[] results = this.EndInvoke(asyncResult);
+ return ((ExchangeAccountsPaged)(results[0]));
+ }
+
+ ///
+ public void GetOrganizationSecurityGroupsPagedAsync(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows)
+ {
+ this.GetOrganizationSecurityGroupsPagedAsync(itemId, filterColumn, filterValue, sortColumn, startRow, maximumRows, null);
+ }
+
+ ///
+ public void GetOrganizationSecurityGroupsPagedAsync(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, object userState)
+ {
+ if ((this.GetOrganizationSecurityGroupsPagedOperationCompleted == null))
+ {
+ this.GetOrganizationSecurityGroupsPagedOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetOrganizationSecurityGroupsPagedOperationCompleted);
+ }
+ this.InvokeAsync("GetOrganizationSecurityGroupsPaged", new object[] {
+ itemId,
+ filterColumn,
+ filterValue,
+ sortColumn,
+ startRow,
+ maximumRows}, this.GetOrganizationSecurityGroupsPagedOperationCompleted, userState);
+ }
+
+ private void OnGetOrganizationSecurityGroupsPagedOperationCompleted(object arg)
+ {
+ if ((this.GetOrganizationSecurityGroupsPagedCompleted != null))
+ {
+ System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
+ this.GetOrganizationSecurityGroupsPagedCompleted(this, new GetOrganizationSecurityGroupsPagedCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
+ }
+ }
+
+ ///
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/AddUserToSecurityGroup", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public int AddUserToSecurityGroup(int itemId, int userAccountId, int groupAccountId)
+ {
+ object[] results = this.Invoke("AddUserToSecurityGroup", new object[] {
+ itemId,
+ userAccountId,
+ groupAccountId});
+ return ((int)(results[0]));
+ }
+
+ ///
+ public System.IAsyncResult BeginAddUserToSecurityGroup(int itemId, int userAccountId, int groupAccountId, System.AsyncCallback callback, object asyncState)
+ {
+ return this.BeginInvoke("AddUserToSecurityGroup", new object[] {
+ itemId,
+ userAccountId,
+ groupAccountId}, callback, asyncState);
+ }
+
+ ///
+ public int EndAddUserToSecurityGroup(System.IAsyncResult asyncResult)
+ {
+ object[] results = this.EndInvoke(asyncResult);
+ return ((int)(results[0]));
+ }
+
+ ///
+ public void AddUserToSecurityGroupAsync(int itemId, int userAccountId, int groupAccountId)
+ {
+ this.AddUserToSecurityGroupAsync(itemId, userAccountId, groupAccountId, null);
+ }
+
+ ///
+ public void AddUserToSecurityGroupAsync(int itemId, int userAccountId, int groupAccountId, object userState)
+ {
+ if ((this.AddUserToSecurityGroupOperationCompleted == null))
+ {
+ this.AddUserToSecurityGroupOperationCompleted = new System.Threading.SendOrPostCallback(this.OnAddUserToSecurityGroupOperationCompleted);
+ }
+ this.InvokeAsync("AddUserToSecurityGroup", new object[] {
+ itemId,
+ userAccountId,
+ groupAccountId}, this.AddUserToSecurityGroupOperationCompleted, userState);
+ }
+
+ private void OnAddUserToSecurityGroupOperationCompleted(object arg)
+ {
+ if ((this.AddUserToSecurityGroupCompleted != null))
+ {
+ System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
+ this.AddUserToSecurityGroupCompleted(this, new AddUserToSecurityGroupCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
+ }
+ }
+
+ ///
+ public new void CancelAsync(object userState)
+ {
base.CancelAsync(userState);
}
}
@@ -1671,654 +2247,934 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
}
}
}
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
public delegate void CreateOrganizationCompletedEventHandler(object sender, CreateOrganizationCompletedEventArgs e);
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- public partial class CreateOrganizationCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
-
+ public partial class CreateOrganizationCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
private object[] results;
-
- internal CreateOrganizationCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
- base(exception, cancelled, userState) {
+
+ internal CreateOrganizationCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
this.results = results;
}
-
+
///
- public int Result {
- get {
+ public int Result
+ {
+ get
+ {
this.RaiseExceptionIfNecessary();
return ((int)(this.results[0]));
}
}
}
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
public delegate void GetRawOrganizationsPagedCompletedEventHandler(object sender, GetRawOrganizationsPagedCompletedEventArgs e);
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- public partial class GetRawOrganizationsPagedCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
-
+ public partial class GetRawOrganizationsPagedCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
private object[] results;
-
- internal GetRawOrganizationsPagedCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
- base(exception, cancelled, userState) {
+
+ internal GetRawOrganizationsPagedCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
this.results = results;
}
-
+
///
- public System.Data.DataSet Result {
- get {
+ public System.Data.DataSet Result
+ {
+ get
+ {
this.RaiseExceptionIfNecessary();
return ((System.Data.DataSet)(this.results[0]));
}
}
}
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
public delegate void GetOrganizationsCompletedEventHandler(object sender, GetOrganizationsCompletedEventArgs e);
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- public partial class GetOrganizationsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
-
+ public partial class GetOrganizationsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
private object[] results;
-
- internal GetOrganizationsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
- base(exception, cancelled, userState) {
+
+ internal GetOrganizationsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
this.results = results;
}
-
+
///
- public Organization[] Result {
- get {
+ public Organization[] Result
+ {
+ get
+ {
this.RaiseExceptionIfNecessary();
return ((Organization[])(this.results[0]));
}
}
}
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
public delegate void GetOrganizationUserSummuryLetterCompletedEventHandler(object sender, GetOrganizationUserSummuryLetterCompletedEventArgs e);
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- public partial class GetOrganizationUserSummuryLetterCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
-
+ public partial class GetOrganizationUserSummuryLetterCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
private object[] results;
-
- internal GetOrganizationUserSummuryLetterCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
- base(exception, cancelled, userState) {
+
+ internal GetOrganizationUserSummuryLetterCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
this.results = results;
}
-
+
///
- public string Result {
- get {
+ public string Result
+ {
+ get
+ {
this.RaiseExceptionIfNecessary();
return ((string)(this.results[0]));
}
}
}
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
public delegate void SendOrganizationUserSummuryLetterCompletedEventHandler(object sender, SendOrganizationUserSummuryLetterCompletedEventArgs e);
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- public partial class SendOrganizationUserSummuryLetterCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
-
+ public partial class SendOrganizationUserSummuryLetterCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
private object[] results;
-
- internal SendOrganizationUserSummuryLetterCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
- base(exception, cancelled, userState) {
+
+ internal SendOrganizationUserSummuryLetterCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
this.results = results;
}
-
+
///
- public int Result {
- get {
+ public int Result
+ {
+ get
+ {
this.RaiseExceptionIfNecessary();
return ((int)(this.results[0]));
}
}
}
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
public delegate void DeleteOrganizationCompletedEventHandler(object sender, DeleteOrganizationCompletedEventArgs e);
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- public partial class DeleteOrganizationCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
-
+ public partial class DeleteOrganizationCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
private object[] results;
-
- internal DeleteOrganizationCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
- base(exception, cancelled, userState) {
+
+ internal DeleteOrganizationCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
this.results = results;
}
-
+
///
- public int Result {
- get {
+ public int Result
+ {
+ get
+ {
this.RaiseExceptionIfNecessary();
return ((int)(this.results[0]));
}
}
}
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
public delegate void GetOrganizationStatisticsCompletedEventHandler(object sender, GetOrganizationStatisticsCompletedEventArgs e);
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- public partial class GetOrganizationStatisticsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
-
+ public partial class GetOrganizationStatisticsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
private object[] results;
-
- internal GetOrganizationStatisticsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
- base(exception, cancelled, userState) {
+
+ internal GetOrganizationStatisticsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
this.results = results;
}
-
+
///
- public OrganizationStatistics Result {
- get {
+ public OrganizationStatistics Result
+ {
+ get
+ {
this.RaiseExceptionIfNecessary();
return ((OrganizationStatistics)(this.results[0]));
}
}
}
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
public delegate void GetOrganizationStatisticsByOrganizationCompletedEventHandler(object sender, GetOrganizationStatisticsByOrganizationCompletedEventArgs e);
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- public partial class GetOrganizationStatisticsByOrganizationCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
-
+ public partial class GetOrganizationStatisticsByOrganizationCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
private object[] results;
-
- internal GetOrganizationStatisticsByOrganizationCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
- base(exception, cancelled, userState) {
+
+ internal GetOrganizationStatisticsByOrganizationCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
this.results = results;
}
-
+
///
- public OrganizationStatistics Result {
- get {
+ public OrganizationStatistics Result
+ {
+ get
+ {
this.RaiseExceptionIfNecessary();
return ((OrganizationStatistics)(this.results[0]));
}
}
}
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
public delegate void GetOrganizationCompletedEventHandler(object sender, GetOrganizationCompletedEventArgs e);
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- public partial class GetOrganizationCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
-
+ public partial class GetOrganizationCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
private object[] results;
-
- internal GetOrganizationCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
- base(exception, cancelled, userState) {
+
+ internal GetOrganizationCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
this.results = results;
}
-
+
///
- public Organization Result {
- get {
+ public Organization Result
+ {
+ get
+ {
this.RaiseExceptionIfNecessary();
return ((Organization)(this.results[0]));
}
}
}
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
public delegate void GetAccountIdByUserPrincipalNameCompletedEventHandler(object sender, GetAccountIdByUserPrincipalNameCompletedEventArgs e);
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- public partial class GetAccountIdByUserPrincipalNameCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
-
+ public partial class GetAccountIdByUserPrincipalNameCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
private object[] results;
-
- internal GetAccountIdByUserPrincipalNameCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
- base(exception, cancelled, userState) {
+
+ internal GetAccountIdByUserPrincipalNameCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
this.results = results;
}
-
+
///
- public int Result {
- get {
+ public int Result
+ {
+ get
+ {
this.RaiseExceptionIfNecessary();
return ((int)(this.results[0]));
}
}
}
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
public delegate void AddOrganizationDomainCompletedEventHandler(object sender, AddOrganizationDomainCompletedEventArgs e);
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- public partial class AddOrganizationDomainCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
-
+ public partial class AddOrganizationDomainCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
private object[] results;
-
- internal AddOrganizationDomainCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
- base(exception, cancelled, userState) {
+
+ internal AddOrganizationDomainCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
this.results = results;
}
-
+
///
- public int Result {
- get {
+ public int Result
+ {
+ get
+ {
this.RaiseExceptionIfNecessary();
return ((int)(this.results[0]));
}
}
}
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
public delegate void ChangeOrganizationDomainTypeCompletedEventHandler(object sender, ChangeOrganizationDomainTypeCompletedEventArgs e);
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- public partial class ChangeOrganizationDomainTypeCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
-
+ public partial class ChangeOrganizationDomainTypeCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
private object[] results;
-
- internal ChangeOrganizationDomainTypeCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
- base(exception, cancelled, userState) {
+
+ internal ChangeOrganizationDomainTypeCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
this.results = results;
}
-
+
///
- public int Result {
- get {
+ public int Result
+ {
+ get
+ {
this.RaiseExceptionIfNecessary();
return ((int)(this.results[0]));
}
}
}
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
public delegate void GetOrganizationDomainsCompletedEventHandler(object sender, GetOrganizationDomainsCompletedEventArgs e);
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- public partial class GetOrganizationDomainsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
-
+ public partial class GetOrganizationDomainsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
private object[] results;
-
- internal GetOrganizationDomainsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
- base(exception, cancelled, userState) {
+
+ internal GetOrganizationDomainsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
this.results = results;
}
-
+
///
- public OrganizationDomainName[] Result {
- get {
+ public OrganizationDomainName[] Result
+ {
+ get
+ {
this.RaiseExceptionIfNecessary();
return ((OrganizationDomainName[])(this.results[0]));
}
}
}
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
public delegate void DeleteOrganizationDomainCompletedEventHandler(object sender, DeleteOrganizationDomainCompletedEventArgs e);
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- public partial class DeleteOrganizationDomainCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
-
+ public partial class DeleteOrganizationDomainCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
private object[] results;
-
- internal DeleteOrganizationDomainCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
- base(exception, cancelled, userState) {
+
+ internal DeleteOrganizationDomainCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
this.results = results;
}
-
+
///
- public int Result {
- get {
+ public int Result
+ {
+ get
+ {
this.RaiseExceptionIfNecessary();
return ((int)(this.results[0]));
}
}
}
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
public delegate void SetOrganizationDefaultDomainCompletedEventHandler(object sender, SetOrganizationDefaultDomainCompletedEventArgs e);
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- public partial class SetOrganizationDefaultDomainCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
-
+ public partial class SetOrganizationDefaultDomainCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
private object[] results;
-
- internal SetOrganizationDefaultDomainCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
- base(exception, cancelled, userState) {
+
+ internal SetOrganizationDefaultDomainCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
this.results = results;
}
-
+
///
- public int Result {
- get {
+ public int Result
+ {
+ get
+ {
this.RaiseExceptionIfNecessary();
return ((int)(this.results[0]));
}
}
}
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
public delegate void CreateUserCompletedEventHandler(object sender, CreateUserCompletedEventArgs e);
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- public partial class CreateUserCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
-
+ public partial class CreateUserCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
private object[] results;
-
- internal CreateUserCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
- base(exception, cancelled, userState) {
+
+ internal CreateUserCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
this.results = results;
}
-
+
///
- public int Result {
- get {
+ public int Result
+ {
+ get
+ {
this.RaiseExceptionIfNecessary();
return ((int)(this.results[0]));
}
}
}
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
public delegate void ImportUserCompletedEventHandler(object sender, ImportUserCompletedEventArgs e);
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- public partial class ImportUserCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
-
+ public partial class ImportUserCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
private object[] results;
-
- internal ImportUserCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
- base(exception, cancelled, userState) {
+
+ internal ImportUserCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
this.results = results;
}
-
+
///
- public int Result {
- get {
+ public int Result
+ {
+ get
+ {
this.RaiseExceptionIfNecessary();
return ((int)(this.results[0]));
}
}
}
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
public delegate void GetOrganizationUsersPagedCompletedEventHandler(object sender, GetOrganizationUsersPagedCompletedEventArgs e);
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- public partial class GetOrganizationUsersPagedCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
-
+ public partial class GetOrganizationUsersPagedCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
private object[] results;
-
- internal GetOrganizationUsersPagedCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
- base(exception, cancelled, userState) {
+
+ internal GetOrganizationUsersPagedCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
this.results = results;
}
-
+
///
- public OrganizationUsersPaged Result {
- get {
+ public OrganizationUsersPaged Result
+ {
+ get
+ {
this.RaiseExceptionIfNecessary();
return ((OrganizationUsersPaged)(this.results[0]));
}
}
}
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
public delegate void GetUserGeneralSettingsCompletedEventHandler(object sender, GetUserGeneralSettingsCompletedEventArgs e);
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- public partial class GetUserGeneralSettingsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
-
+ public partial class GetUserGeneralSettingsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
private object[] results;
-
- internal GetUserGeneralSettingsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
- base(exception, cancelled, userState) {
+
+ internal GetUserGeneralSettingsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
this.results = results;
}
-
+
///
- public OrganizationUser Result {
- get {
+ public OrganizationUser Result
+ {
+ get
+ {
this.RaiseExceptionIfNecessary();
return ((OrganizationUser)(this.results[0]));
}
}
}
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
public delegate void SetUserGeneralSettingsCompletedEventHandler(object sender, SetUserGeneralSettingsCompletedEventArgs e);
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- public partial class SetUserGeneralSettingsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
-
+ public partial class SetUserGeneralSettingsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
private object[] results;
-
- internal SetUserGeneralSettingsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
- base(exception, cancelled, userState) {
+
+ internal SetUserGeneralSettingsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
this.results = results;
}
-
+
///
- public int Result {
- get {
+ public int Result
+ {
+ get
+ {
this.RaiseExceptionIfNecessary();
return ((int)(this.results[0]));
}
}
}
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
public delegate void SetUserPrincipalNameCompletedEventHandler(object sender, SetUserPrincipalNameCompletedEventArgs e);
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- public partial class SetUserPrincipalNameCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
-
+ public partial class SetUserPrincipalNameCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
private object[] results;
-
- internal SetUserPrincipalNameCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
- base(exception, cancelled, userState) {
+
+ internal SetUserPrincipalNameCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
this.results = results;
}
-
+
///
- public int Result {
- get {
+ public int Result
+ {
+ get
+ {
this.RaiseExceptionIfNecessary();
return ((int)(this.results[0]));
}
}
}
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
public delegate void SetUserPasswordCompletedEventHandler(object sender, SetUserPasswordCompletedEventArgs e);
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- public partial class SetUserPasswordCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
-
+ public partial class SetUserPasswordCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
private object[] results;
-
- internal SetUserPasswordCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
- base(exception, cancelled, userState) {
+
+ internal SetUserPasswordCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
this.results = results;
}
-
+
///
- public int Result {
- get {
+ public int Result
+ {
+ get
+ {
this.RaiseExceptionIfNecessary();
return ((int)(this.results[0]));
}
}
}
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
public delegate void SearchAccountsCompletedEventHandler(object sender, SearchAccountsCompletedEventArgs e);
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- public partial class SearchAccountsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
-
+ public partial class SearchAccountsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
private object[] results;
-
- internal SearchAccountsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
- base(exception, cancelled, userState) {
+
+ internal SearchAccountsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
this.results = results;
}
-
+
///
- public OrganizationUser[] Result {
- get {
+ public OrganizationUser[] Result
+ {
+ get
+ {
this.RaiseExceptionIfNecessary();
return ((OrganizationUser[])(this.results[0]));
}
}
}
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
public delegate void DeleteUserCompletedEventHandler(object sender, DeleteUserCompletedEventArgs e);
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- public partial class DeleteUserCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
-
+ public partial class DeleteUserCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
private object[] results;
-
- internal DeleteUserCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
- base(exception, cancelled, userState) {
+
+ internal DeleteUserCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
this.results = results;
}
-
+
///
- public int Result {
- get {
+ public int Result
+ {
+ get
+ {
this.RaiseExceptionIfNecessary();
return ((int)(this.results[0]));
}
}
}
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
public delegate void GetPasswordPolicyCompletedEventHandler(object sender, GetPasswordPolicyCompletedEventArgs e);
-
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
- public partial class GetPasswordPolicyCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
-
+ public partial class GetPasswordPolicyCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
private object[] results;
-
- internal GetPasswordPolicyCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
- base(exception, cancelled, userState) {
+
+ internal GetPasswordPolicyCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
this.results = results;
}
-
+
///
- public PasswordPolicyResult Result {
- get {
+ public PasswordPolicyResult Result
+ {
+ get
+ {
this.RaiseExceptionIfNecessary();
return ((PasswordPolicyResult)(this.results[0]));
}
}
}
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
+ public delegate void CreateSecurityGroupCompletedEventHandler(object sender, CreateSecurityGroupCompletedEventArgs e);
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ public partial class CreateSecurityGroupCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
+ private object[] results;
+
+ internal CreateSecurityGroupCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
+ this.results = results;
+ }
+
+ ///
+ public int Result
+ {
+ get
+ {
+ this.RaiseExceptionIfNecessary();
+ return ((int)(this.results[0]));
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
+ public delegate void GetSecurityGroupGeneralSettingsCompletedEventHandler(object sender, GetSecurityGroupGeneralSettingsCompletedEventArgs e);
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ public partial class GetSecurityGroupGeneralSettingsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
+ private object[] results;
+
+ internal GetSecurityGroupGeneralSettingsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
+ this.results = results;
+ }
+
+ ///
+ public OrganizationSecurityGroup Result
+ {
+ get
+ {
+ this.RaiseExceptionIfNecessary();
+ return ((OrganizationSecurityGroup)(this.results[0]));
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
+ public delegate void DeleteSecurityGroupCompletedEventHandler(object sender, DeleteSecurityGroupCompletedEventArgs e);
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ public partial class DeleteSecurityGroupCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
+ private object[] results;
+
+ internal DeleteSecurityGroupCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
+ this.results = results;
+ }
+
+ ///
+ public int Result
+ {
+ get
+ {
+ this.RaiseExceptionIfNecessary();
+ return ((int)(this.results[0]));
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
+ public delegate void SetSecurityGroupGeneralSettingsCompletedEventHandler(object sender, SetSecurityGroupGeneralSettingsCompletedEventArgs e);
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ public partial class SetSecurityGroupGeneralSettingsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
+ private object[] results;
+
+ internal SetSecurityGroupGeneralSettingsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
+ this.results = results;
+ }
+
+ ///
+ public int Result
+ {
+ get
+ {
+ this.RaiseExceptionIfNecessary();
+ return ((int)(this.results[0]));
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
+ public delegate void GetOrganizationSecurityGroupsPagedCompletedEventHandler(object sender, GetOrganizationSecurityGroupsPagedCompletedEventArgs e);
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ public partial class GetOrganizationSecurityGroupsPagedCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
+ private object[] results;
+
+ internal GetOrganizationSecurityGroupsPagedCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
+ this.results = results;
+ }
+
+ ///
+ public ExchangeAccountsPaged Result
+ {
+ get
+ {
+ this.RaiseExceptionIfNecessary();
+ return ((ExchangeAccountsPaged)(this.results[0]));
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
+ public delegate void AddUserToSecurityGroupCompletedEventHandler(object sender, AddUserToSecurityGroupCompletedEventArgs e);
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ public partial class AddUserToSecurityGroupCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
+ private object[] results;
+
+ internal AddUserToSecurityGroupCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
+ this.results = results;
+ }
+
+ ///
+ public int Result
+ {
+ get
+ {
+ this.RaiseExceptionIfNecessary();
+ return ((int)(this.results[0]));
+ }
+ }
+ }
}
diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/HostedSolution/OrganizationController.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/HostedSolution/OrganizationController.cs
index 95d5da6f..9f87df13 100644
--- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/HostedSolution/OrganizationController.cs
+++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/HostedSolution/OrganizationController.cs
@@ -371,6 +371,11 @@ namespace WebsitePanel.EnterpriseServer
// register domain
DataProvider.AddExchangeOrganizationDomain(itemId, domainId, true);
+ //add to exchangeAcounts
+ AddAccount(itemId, ExchangeAccountType.DefaultSecurityGroup, org.GroupName,
+ org.GroupName, null, false,
+ 0, org.GroupName, null, 0, null);
+
// register organization domain service item
OrganizationDomain orgDomain = new OrganizationDomain
{
@@ -1717,7 +1722,7 @@ namespace WebsitePanel.EnterpriseServer
return (account);
}
-
+
public static int SetUserGeneralSettings(int itemId, int accountId, string displayName,
string password, bool hideAddressBook, bool disabled, bool locked, string firstName, string initials,
string lastName, string address, string city, string state, string zip, string country,
@@ -2196,6 +2201,339 @@ namespace WebsitePanel.EnterpriseServer
return ocs;
}
+ private static int AddAccount(int itemId, ExchangeAccountType accountType,
+ string accountName, string displayName, string primaryEmailAddress, bool mailEnabledPublicFolder,
+ MailboxManagerActions mailboxManagerActions, string samAccountName, string accountPassword, int mailboxPlanId, string subscriberNumber)
+ {
+ return DataProvider.AddExchangeAccount(itemId, (int)accountType,
+ accountName, displayName, primaryEmailAddress, mailEnabledPublicFolder,
+ mailboxManagerActions.ToString(), samAccountName, CryptoUtils.Encrypt(accountPassword), mailboxPlanId, (string.IsNullOrEmpty(subscriberNumber) ? null : subscriberNumber.Trim()));
+ }
+
+ public static int CreateSecurityGroup(int itemId, string displayName, string managedBy)
+ {
+ if (string.IsNullOrEmpty(displayName))
+ throw new ArgumentNullException("displayName");
+
+ // check account
+ int accountCheck = SecurityContext.CheckAccount(DemandAccount.NotDemo | DemandAccount.IsActive);
+ if (accountCheck < 0) return accountCheck;
+
+
+ // place log record
+ TaskManager.StartTask("ORGANIZATION", "CREATE_SECURITY_GROUP", itemId);
+
+ TaskManager.Write("Organization ID :" + itemId);
+ TaskManager.Write("display name :" + displayName);
+
+ int securityGroupId = -1;
+
+ try
+ {
+ displayName = displayName.Trim();
+
+ // load organization
+ Organization org = GetOrganization(itemId);
+
+ if (org == null)
+ {
+ return -1;
+ }
+
+ StringDictionary serviceSettings = ServerController.GetServiceSettings(org.ServiceId);
+
+ if (serviceSettings == null)
+ {
+ return -1;
+ }
+
+ // check package
+ int packageCheck = SecurityContext.CheckPackage(org.PackageId, DemandPackage.IsActive);
+ if (packageCheck < 0) return packageCheck;
+
+ int errorCode;
+ if (!CheckUserQuota(org.Id, out errorCode))
+ return errorCode;
+
+ Organizations orgProxy = GetOrganizationProxy(org.ServiceId);
+
+ TaskManager.Write("accountName :" + displayName);
+
+ if (orgProxy.CreateSecurityGroup(org.OrganizationId, displayName, managedBy) == 0)
+ {
+ OrganizationSecurityGroup retSecurityGroup = orgProxy.GetSecurityGroupGeneralSettings(displayName, org.OrganizationId);
+ TaskManager.Write("sAMAccountName :" + retSecurityGroup.SAMAccountName);
+
+ securityGroupId = AddAccount(itemId, ExchangeAccountType.SecurityGroup, displayName,
+ displayName, null, false,
+ 0, retSecurityGroup.SAMAccountName, null, 0, null);
+ }
+ else
+ {
+ TaskManager.WriteError("Failed to create securitygroup");
+ }
+ }
+ catch (Exception ex)
+ {
+ TaskManager.WriteError(ex);
+ }
+ finally
+ {
+ TaskManager.CompleteTask();
+ }
+
+ return securityGroupId;
+ }
+
+ private static OrganizationSecurityGroup GetDemoSecurityGroupGeneralSettings()
+ {
+ OrganizationSecurityGroup c = new OrganizationSecurityGroup();
+ c.DisplayName = "Fabrikam Sales";
+ c.AccountName = "sales_fabrikam";
+
+ return c;
+ }
+
+ public static OrganizationSecurityGroup GetSecurityGroupGeneralSettings(int itemId, int accountId)
+ {
+ #region Demo Mode
+ if (IsDemoMode)
+ {
+ return GetDemoSecurityGroupGeneralSettings();
+ }
+ #endregion
+
+ // place log record
+ TaskManager.StartTask("ORGANIZATION", "GET_SECURITY_GROUP_GENERAL", itemId);
+
+ try
+ {
+ // load organization
+ Organization org = GetOrganization(itemId);
+ if (org == null)
+ return null;
+
+ OrganizationUser account = GetAccount(itemId, accountId);
+
+ // get mailbox settings
+ Organizations orgProxy = GetOrganizationProxy(org.ServiceId);
+
+ OrganizationSecurityGroup securityGroup = orgProxy.GetSecurityGroupGeneralSettings(account.AccountName, org.OrganizationId);
+
+ securityGroup.DisplayName = account.DisplayName;
+
+ securityGroup.IsDefault = account.AccountType == ExchangeAccountType.DefaultSecurityGroup;
+
+ foreach (OrganizationUser user in securityGroup.MembersAccounts)
+ {
+ OrganizationUser userAccount = GetAccountByAccountName(itemId, user.SamAccountName);
+
+ user.AccountId = userAccount.AccountId;
+ user.AccountName = userAccount.AccountName;
+ user.PrimaryEmailAddress = userAccount.PrimaryEmailAddress;
+ user.AccountType = userAccount.AccountType;
+ }
+
+ return securityGroup;
+ }
+ catch (Exception ex)
+ {
+ throw TaskManager.WriteError(ex);
+ }
+ finally
+ {
+ TaskManager.CompleteTask();
+ }
+ }
+
+ public static int DeleteSecurityGroup(int itemId, int accountId)
+ {
+ // check account
+ int accountCheck = SecurityContext.CheckAccount(DemandAccount.NotDemo | DemandAccount.IsActive);
+ if (accountCheck < 0) return accountCheck;
+
+ // place log record
+ TaskManager.StartTask("ORGANIZATION", "DELETE_SECURITY_GROUP", itemId);
+
+ try
+ {
+ // load organization
+ Organization org = GetOrganization(itemId);
+ if (org == null)
+ return -1;
+
+ // load account
+ ExchangeAccount account = ExchangeServerController.GetAccount(itemId, accountId);
+
+ Organizations orgProxy = GetOrganizationProxy(org.ServiceId);
+
+ orgProxy.DeleteSecurityGroup(account.AccountName, org.OrganizationId);
+
+ DeleteUserFromMetabase(itemId, accountId);
+
+ return 0;
+ }
+ catch (Exception ex)
+ {
+ throw TaskManager.WriteError(ex);
+ }
+ finally
+ {
+ TaskManager.CompleteTask();
+ }
+ }
+
+ public static int SetSecurityGroupGeneralSettings(int itemId, int accountId, string displayName, string managedBy, string[] memberAccounts, string notes)
+ {
+ // check account
+ int accountCheck = SecurityContext.CheckAccount(DemandAccount.NotDemo | DemandAccount.IsActive);
+ if (accountCheck < 0) return accountCheck;
+
+ // place log record
+ TaskManager.StartTask("ORGANIZATION", "UPDATE_SECURITY_GROUP_GENERAL", itemId);
+
+ try
+ {
+ displayName = displayName.Trim();
+
+ // load organization
+ Organization org = GetOrganization(itemId);
+ if (org == null)
+ return -1;
+
+ // check package
+ int packageCheck = SecurityContext.CheckPackage(org.PackageId, DemandPackage.IsActive);
+ if (packageCheck < 0) return packageCheck;
+
+ // load account
+ ExchangeAccount account = ExchangeServerController.GetAccount(itemId, accountId);
+
+ string accountName = GetAccountName(account.AccountName);
+ // get mailbox settings
+ Organizations orgProxy = GetOrganizationProxy(org.ServiceId);
+ // external email
+
+ orgProxy.SetSecurityGroupGeneralSettings(
+ org.OrganizationId,
+ accountName,
+ managedBy,
+ memberAccounts,
+ notes);
+
+ // update account
+ account.DisplayName = displayName;
+
+ UpdateAccount(account);
+
+ return 0;
+ }
+ catch (Exception ex)
+ {
+ throw TaskManager.WriteError(ex);
+ }
+ finally
+ {
+ TaskManager.CompleteTask();
+ }
+ }
+
+ public static ExchangeAccountsPaged GetOrganizationSecurityGroupsPaged(int itemId, string filterColumn, string filterValue, string sortColumn,
+ int startRow, int maximumRows)
+ {
+
+ #region Demo Mode
+ if (IsDemoMode)
+ {
+ ExchangeAccountsPaged res = new ExchangeAccountsPaged();
+ List demoSecurityGroups = new List();
+
+ ExchangeAccount r1 = new ExchangeAccount();
+ r1.AccountId = 20;
+ r1.AccountName = "group1_fabrikam";
+ r1.AccountType = ExchangeAccountType.SecurityGroup;
+ r1.DisplayName = "Group 1";
+ demoSecurityGroups.Add(r1);
+
+ ExchangeAccount r2 = new ExchangeAccount();
+ r1.AccountId = 21;
+ r1.AccountName = "group2_fabrikam";
+ r1.AccountType = ExchangeAccountType.SecurityGroup;
+ r1.DisplayName = "Group 2";
+ demoSecurityGroups.Add(r2);
+
+
+ res.PageItems = demoSecurityGroups.ToArray();
+ res.RecordsCount = res.PageItems.Length;
+
+ return res;
+ }
+ #endregion
+
+ string accountTypes = string.Format("{0}, {1}", ((int)ExchangeAccountType.SecurityGroup), ((int)ExchangeAccountType.DefaultSecurityGroup));
+
+ DataSet ds =
+ DataProvider.GetExchangeAccountsPaged(SecurityContext.User.UserId, itemId, accountTypes, filterColumn,
+ filterValue, sortColumn, startRow, maximumRows);
+
+ ExchangeAccountsPaged result = new ExchangeAccountsPaged();
+ result.RecordsCount = (int)ds.Tables[0].Rows[0][0];
+
+ List Tmpaccounts = new List();
+ ObjectUtils.FillCollectionFromDataView(Tmpaccounts, ds.Tables[1].DefaultView);
+ result.PageItems = Tmpaccounts.ToArray();
+
+ List accounts = new List();
+
+ foreach (ExchangeAccount account in Tmpaccounts.ToArray())
+ {
+ OrganizationSecurityGroup tmpSecurityGroup = GetSecurityGroupGeneralSettings(itemId, account.AccountId);
+
+ if (tmpSecurityGroup != null)
+ accounts.Add(account);
+ }
+
+ result.PageItems = accounts.ToArray();
+
+ return result;
+ }
+
+ public static int AddUserToSecurityGroup(int itemId, int userAccountId, int groupAccountId)
+ {
+ // check account
+ int accountCheck = SecurityContext.CheckAccount(DemandAccount.NotDemo | DemandAccount.IsActive);
+ if (accountCheck < 0) return accountCheck;
+
+ // place log record
+ TaskManager.StartTask("ORGANIZATION", "ADD_USER_TO_SECURITY_GROUP", itemId);
+
+ try
+ {
+ // load organization
+ Organization org = GetOrganization(itemId);
+ if (org == null)
+ return -1;
+
+ // load user account
+ OrganizationUser userAccount = GetAccount(itemId, userAccountId);
+
+ //load group account
+ ExchangeAccount groupAccount = ExchangeServerController.GetAccount(itemId, groupAccountId);
+
+ Organizations orgProxy = GetOrganizationProxy(org.ServiceId);
+
+ orgProxy.AddUserToSecurityGroup(org.OrganizationId, userAccount.AccountName, groupAccount.AccountName);
+
+ return 0;
+ }
+ catch (Exception ex)
+ {
+ throw TaskManager.WriteError(ex);
+ }
+ finally
+ {
+ TaskManager.CompleteTask();
+ }
+ }
}
}
diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/esOrganizations.asmx.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/esOrganizations.asmx.cs
index ac5a1e38..6d632462 100644
--- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/esOrganizations.asmx.cs
+++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/esOrganizations.asmx.cs
@@ -242,5 +242,46 @@ namespace WebsitePanel.EnterpriseServer
#endregion
+ #region Security Groups
+
+ [WebMethod]
+ public int CreateSecurityGroup(int itemId, string displayName, string managedBy)
+ {
+ return OrganizationController.CreateSecurityGroup(itemId, displayName, managedBy);
+ }
+
+ [WebMethod]
+ public OrganizationSecurityGroup GetSecurityGroupGeneralSettings(int itemId, int accountId)
+ {
+ return OrganizationController.GetSecurityGroupGeneralSettings(itemId, accountId);
+ }
+
+ [WebMethod]
+ public int DeleteSecurityGroup(int itemId, int accountId)
+ {
+ return OrganizationController.DeleteSecurityGroup(itemId, accountId);
+ }
+
+ [WebMethod]
+ public int SetSecurityGroupGeneralSettings(int itemId, int accountId, string displayName, string managedBy, string[] memberAccounts, string notes)
+ {
+ return OrganizationController.SetSecurityGroupGeneralSettings(itemId, accountId, displayName, managedBy, memberAccounts, notes);
+ }
+
+ [WebMethod]
+ public ExchangeAccountsPaged GetOrganizationSecurityGroupsPaged(int itemId, string filterColumn, string filterValue, string sortColumn,
+ int startRow, int maximumRows)
+ {
+ return OrganizationController.GetOrganizationSecurityGroupsPaged(itemId, filterColumn, filterValue, sortColumn, startRow, maximumRows);
+ }
+
+ [WebMethod]
+ public int AddUserToSecurityGroup(int itemId, int userAccountId, int groupAccountId)
+ {
+ return OrganizationController.AddUserToSecurityGroup(itemId, userAccountId, groupAccountId);
+ }
+
+ #endregion
+
}
}
diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.Base/HostedSolution/ADAttributes.cs b/WebsitePanel/Sources/WebsitePanel.Providers.Base/HostedSolution/ADAttributes.cs
index 9ef289cb..c53441a1 100644
--- a/WebsitePanel/Sources/WebsitePanel.Providers.Base/HostedSolution/ADAttributes.cs
+++ b/WebsitePanel/Sources/WebsitePanel.Providers.Base/HostedSolution/ADAttributes.cs
@@ -61,6 +61,7 @@ namespace WebsitePanel.Providers.HostedSolution
public const string ExternalEmail = "mail";
public const string CustomAttribute2 = "extensionAttribute2";
public const string DistinguishedName = "distinguishedName";
+ public const string ManagedBy = "ManagedBy";
}
}
diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.Base/HostedSolution/ActiveDirectoryUtils.cs b/WebsitePanel/Sources/WebsitePanel.Providers.Base/HostedSolution/ActiveDirectoryUtils.cs
index 99703719..773afad4 100644
--- a/WebsitePanel/Sources/WebsitePanel.Providers.Base/HostedSolution/ActiveDirectoryUtils.cs
+++ b/WebsitePanel/Sources/WebsitePanel.Providers.Base/HostedSolution/ActiveDirectoryUtils.cs
@@ -44,6 +44,35 @@ namespace WebsitePanel.Providers.HostedSolution
return de;
}
+ public static string[] GetUsersGroup(string group)
+ {
+ List rets = new List();
+
+ DirectorySearcher deSearch = new DirectorySearcher
+ {
+ Filter =
+ ("(&(objectClass=user))")
+ };
+
+ SearchResultCollection srcUsers = deSearch.FindAll();
+
+ foreach (SearchResult srcUser in srcUsers)
+ {
+ DirectoryEntry de = srcUser.GetDirectoryEntry();
+ PropertyValueCollection props = de.Properties["memberOf"];
+
+ foreach (string str in props)
+ {
+ if (str.IndexOf(group) != -1)
+ {
+ rets.Add(de.Path);
+ }
+ }
+ }
+
+ return rets.ToArray();
+ }
+
public static bool IsUserInGroup(string samAccountName, string group)
{
bool res = false;
@@ -328,6 +357,7 @@ namespace WebsitePanel.Providers.HostedSolution
newGroupObject.Properties[ADAttributes.SAMAccountName].Add(group);
newGroupObject.Properties[ADAttributes.GroupType].Add(-2147483640);
+
newGroupObject.CommitChanges();
}
@@ -339,6 +369,14 @@ namespace WebsitePanel.Providers.HostedSolution
group.Invoke("Add", user.Path);
}
+ public static void RemoveUserFromGroup(string userPath, string groupPath)
+ {
+ DirectoryEntry user = new DirectoryEntry(userPath);
+ DirectoryEntry group = new DirectoryEntry(groupPath);
+
+ group.Invoke("Remove", user.Path);
+ }
+
public static bool AdObjectExists(string path)
{
return DirectoryEntry.Exists(path);
diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.Base/HostedSolution/ExchangeAccountType.cs b/WebsitePanel/Sources/WebsitePanel.Providers.Base/HostedSolution/ExchangeAccountType.cs
index a72ef690..c8e3c3da 100644
--- a/WebsitePanel/Sources/WebsitePanel.Providers.Base/HostedSolution/ExchangeAccountType.cs
+++ b/WebsitePanel/Sources/WebsitePanel.Providers.Base/HostedSolution/ExchangeAccountType.cs
@@ -37,7 +37,9 @@ namespace WebsitePanel.Providers.HostedSolution
PublicFolder = 4,
Room = 5,
Equipment = 6,
- User = 7
+ User = 7,
+ SecurityGroup = 8,
+ DefaultSecurityGroup = 9
}
}
diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.Base/HostedSolution/IOrganization.cs b/WebsitePanel/Sources/WebsitePanel.Providers.Base/HostedSolution/IOrganization.cs
index 6da1e71a..bda213b7 100644
--- a/WebsitePanel/Sources/WebsitePanel.Providers.Base/HostedSolution/IOrganization.cs
+++ b/WebsitePanel/Sources/WebsitePanel.Providers.Base/HostedSolution/IOrganization.cs
@@ -42,6 +42,16 @@ namespace WebsitePanel.Providers.HostedSolution
OrganizationUser GetUserGeneralSettings(string loginName, string organizationId);
+ int CreateSecurityGroup(string organizationId, string groupName, string managedBy);
+
+ OrganizationSecurityGroup GetSecurityGroupGeneralSettings(string groupName, string organizationId);
+
+ void DeleteSecurityGroup(string groupName, string organizationId);
+
+ void SetSecurityGroupGeneralSettings(string organizationId, string groupName, string managedBy, string[] memberAccounts, string notes);
+
+ void AddUserToSecurityGroup(string organizationId, string loginName, string groupName);
+
void SetUserGeneralSettings(string organizationId, string accountName, string displayName, string password,
bool hideFromAddressBook, bool disabled, bool locked, string firstName, string initials,
string lastName,
diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.Base/HostedSolution/OrganizationSecurityGroup.cs b/WebsitePanel/Sources/WebsitePanel.Providers.Base/HostedSolution/OrganizationSecurityGroup.cs
new file mode 100644
index 00000000..52afb68c
--- /dev/null
+++ b/WebsitePanel/Sources/WebsitePanel.Providers.Base/HostedSolution/OrganizationSecurityGroup.cs
@@ -0,0 +1,52 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+
+namespace WebsitePanel.Providers.HostedSolution
+{
+ public class OrganizationSecurityGroup
+ {
+ public string DisplayName
+ {
+ get;
+ set;
+ }
+
+ public string AccountName
+ {
+ get;
+ set;
+ }
+
+ public OrganizationUser[] MembersAccounts
+ {
+ get;
+ set;
+ }
+
+ public OrganizationUser ManagerAccount
+ {
+ get;
+ set;
+ }
+
+ public string Notes
+ {
+ get;
+ set;
+ }
+
+ public string SAMAccountName
+ {
+ get;
+ set;
+ }
+
+ public bool IsDefault
+ {
+ get;
+ set;
+ }
+ }
+}
\ No newline at end of file
diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.Base/WebsitePanel.Providers.Base.csproj b/WebsitePanel/Sources/WebsitePanel.Providers.Base/WebsitePanel.Providers.Base.csproj
index 1e1c8954..2fb310a5 100644
--- a/WebsitePanel/Sources/WebsitePanel.Providers.Base/WebsitePanel.Providers.Base.csproj
+++ b/WebsitePanel/Sources/WebsitePanel.Providers.Base/WebsitePanel.Providers.Base.csproj
@@ -102,6 +102,7 @@
+
diff --git a/WebsitePanel/Sources/WebsitePanel.Providers.HostedSolution/OrganizationProvider.cs b/WebsitePanel/Sources/WebsitePanel.Providers.HostedSolution/OrganizationProvider.cs
index 53689f1d..f1cab4d2 100644
--- a/WebsitePanel/Sources/WebsitePanel.Providers.HostedSolution/OrganizationProvider.cs
+++ b/WebsitePanel/Sources/WebsitePanel.Providers.HostedSolution/OrganizationProvider.cs
@@ -27,10 +27,10 @@
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
using System;
+using System.Collections.Generic;
using System.DirectoryServices;
using System.Globalization;
using System.Text;
-
using WebsitePanel.Providers.Common;
using WebsitePanel.Providers.ResultObjects;
@@ -102,6 +102,20 @@ namespace WebsitePanel.Providers.HostedSolution
return sb.ToString();
}
+ private string GetGroupPath(string organizationId, string groupName)
+ {
+ StringBuilder sb = new StringBuilder();
+ // append provider
+ AppendProtocol(sb);
+ AppendDomainController(sb);
+ AppendCNPath(sb, groupName);
+ AppendOUPath(sb, organizationId);
+ AppendOUPath(sb, RootOU);
+ AppendDomainPath(sb, RootDomain);
+
+ return sb.ToString();
+ }
+
private string GetRootOU()
{
StringBuilder sb = new StringBuilder();
@@ -213,6 +227,7 @@ namespace WebsitePanel.Providers.HostedSolution
org.OrganizationId = organizationId;
org.DistinguishedName = ActiveDirectoryUtils.RemoveADPrefix(orgPath);
org.SecurityGroup = ActiveDirectoryUtils.RemoveADPrefix(GetGroupPath(organizationId));
+ org.GroupName = organizationId;
}
catch (Exception ex)
{
@@ -498,10 +513,19 @@ namespace WebsitePanel.Providers.HostedSolution
throw new ArgumentNullException("loginName");
string path = GetUserPath(organizationId, loginName);
- DirectoryEntry entry = ActiveDirectoryUtils.GetADObject(path);
+ OrganizationUser retUser = GetUser(path);
+
+ HostedSolutionLog.LogEnd("GetUserGeneralSettingsInternal");
+ return retUser;
+ }
+
+ private OrganizationUser GetUser(string path)
+ {
OrganizationUser retUser = new OrganizationUser();
+ DirectoryEntry entry = ActiveDirectoryUtils.GetADObject(path);
+
retUser.FirstName = ActiveDirectoryUtils.GetADObjectStringProperty(entry, ADAttributes.FirstName);
retUser.LastName = ActiveDirectoryUtils.GetADObjectStringProperty(entry, ADAttributes.LastName);
retUser.DisplayName = ActiveDirectoryUtils.GetADObjectStringProperty(entry, ADAttributes.DisplayName);
@@ -524,14 +548,13 @@ namespace WebsitePanel.Providers.HostedSolution
retUser.Notes = ActiveDirectoryUtils.GetADObjectStringProperty(entry, ADAttributes.Notes);
retUser.ExternalEmail = ActiveDirectoryUtils.GetADObjectStringProperty(entry, ADAttributes.ExternalEmail);
retUser.Disabled = (bool)entry.InvokeGet(ADAttributes.AccountDisabled);
- retUser.Manager = GetManager(entry);
+ retUser.Manager = GetManager(entry, ADAttributes.Manager);
retUser.SamAccountName = ActiveDirectoryUtils.GetADObjectStringProperty(entry, ADAttributes.SAMAccountName);
retUser.DomainUserName = GetDomainName(ActiveDirectoryUtils.GetADObjectStringProperty(entry, ADAttributes.SAMAccountName));
retUser.DistinguishedName = ActiveDirectoryUtils.GetADObjectStringProperty(entry, ADAttributes.DistinguishedName);
retUser.Locked = (bool)entry.InvokeGet(ADAttributes.AccountLocked);
- retUser.UserPrincipalName= (string)entry.InvokeGet(ADAttributes.UserPrincipalName);
+ retUser.UserPrincipalName = (string)entry.InvokeGet(ADAttributes.UserPrincipalName);
- HostedSolutionLog.LogEnd("GetUserGeneralSettingsInternal");
return retUser;
}
@@ -542,10 +565,10 @@ namespace WebsitePanel.Providers.HostedSolution
return ret;
}
- private OrganizationUser GetManager(DirectoryEntry entry)
+ private OrganizationUser GetManager(DirectoryEntry entry, string adAttribute)
{
OrganizationUser retUser = null;
- string path = ActiveDirectoryUtils.GetADObjectStringProperty(entry, ADAttributes.Manager);
+ string path = ActiveDirectoryUtils.GetADObjectStringProperty(entry, adAttribute);
if (!string.IsNullOrEmpty(path))
{
path = ActiveDirectoryUtils.AddADPrefix(path, PrimaryDomainController);
@@ -800,6 +823,226 @@ namespace WebsitePanel.Providers.HostedSolution
}
#endregion
+ #region Security Groups
+
+ public int CreateSecurityGroup(string organizationId, string groupName, string managedBy)
+ {
+ return CreateSecurityGroupInternal(organizationId, groupName, managedBy);
+ }
+
+ internal int CreateSecurityGroupInternal(string organizationId, string groupName, string managedBy)
+ {
+ HostedSolutionLog.LogStart("CreateSecurityGroupInternal");
+ HostedSolutionLog.DebugInfo("organizationId : {0}", organizationId);
+ HostedSolutionLog.DebugInfo("groupName : {0}", groupName);
+
+ if (string.IsNullOrEmpty(organizationId))
+ throw new ArgumentNullException("organizationId");
+
+ if (string.IsNullOrEmpty(groupName))
+ throw new ArgumentNullException("groupName");
+
+ bool groupCreated = false;
+ string groupPath = null;
+ try
+ {
+ string path = GetOrganizationPath(organizationId);
+ groupPath = GetGroupPath(organizationId, groupName);
+
+ if (!ActiveDirectoryUtils.AdObjectExists(groupPath))
+ {
+ ActiveDirectoryUtils.CreateGroup(path, groupName);
+
+ DirectoryEntry entry = ActiveDirectoryUtils.GetADObject(groupPath);
+
+ string manager = string.Empty;
+ if (!string.IsNullOrEmpty(managedBy))
+ {
+ string managerPath = GetUserPath(organizationId, managedBy);
+ manager = ActiveDirectoryUtils.AdObjectExists(managerPath) ? managerPath : string.Empty;
+ }
+
+ ActiveDirectoryUtils.SetADObjectProperty(entry, ADAttributes.ManagedBy, ActiveDirectoryUtils.RemoveADPrefix(manager));
+
+ entry.CommitChanges();
+
+ groupCreated = true;
+
+ HostedSolutionLog.DebugInfo("Security Group created: {0}", groupName);
+ }
+ else
+ {
+ HostedSolutionLog.DebugInfo("AD_OBJECT_ALREADY_EXISTS: {0}", groupPath);
+ HostedSolutionLog.LogEnd("CreateSecurityGroupInternal");
+
+ return Errors.AD_OBJECT_ALREADY_EXISTS;
+ }
+ }
+ catch (Exception e)
+ {
+ HostedSolutionLog.LogError(e);
+ try
+ {
+ if (groupCreated)
+ ActiveDirectoryUtils.DeleteADObject(groupPath);
+ }
+ catch (Exception ex)
+ {
+ HostedSolutionLog.LogError(ex);
+ }
+
+ return Errors.AD_OBJECT_ALREADY_EXISTS;
+ }
+
+ HostedSolutionLog.LogEnd("CreateSecurityGroupInternal");
+
+ return Errors.OK;
+ }
+
+ public OrganizationSecurityGroup GetSecurityGroupGeneralSettings(string groupName, string organizationId)
+ {
+ return GetSecurityGroupGeneralSettingsInternal(groupName, organizationId);
+ }
+
+ internal OrganizationSecurityGroup GetSecurityGroupGeneralSettingsInternal(string groupName, string organizationId)
+ {
+ HostedSolutionLog.LogStart("GetSecurityGroupGeneralSettingsInternal");
+ HostedSolutionLog.DebugInfo("groupName : {0}", groupName);
+ HostedSolutionLog.DebugInfo("organizationId : {0}", organizationId);
+
+ if (string.IsNullOrEmpty(organizationId))
+ throw new ArgumentNullException("organizationId");
+
+ if (string.IsNullOrEmpty(groupName))
+ throw new ArgumentNullException("groupName");
+
+ string path = GetGroupPath(organizationId, groupName);
+
+ DirectoryEntry entry = ActiveDirectoryUtils.GetADObject(path);
+
+ OrganizationSecurityGroup securityGroup = new OrganizationSecurityGroup();
+
+ securityGroup.ManagerAccount = GetManager(entry, ADAttributes.ManagedBy);
+
+ securityGroup.Notes = ActiveDirectoryUtils.GetADObjectStringProperty(entry, ADAttributes.Notes);
+
+ securityGroup.AccountName = ActiveDirectoryUtils.GetADObjectStringProperty(entry, ADAttributes.SAMAccountName);
+ securityGroup.SAMAccountName = ActiveDirectoryUtils.GetADObjectStringProperty(entry, ADAttributes.SAMAccountName);
+
+ List members = new List();
+
+ foreach (string userPath in ActiveDirectoryUtils.GetUsersGroup(groupName))
+ {
+ members.Add(GetUser(userPath));
+ }
+
+ securityGroup.MembersAccounts = members.ToArray();
+
+ HostedSolutionLog.LogEnd("GetSecurityGroupGeneralSettingsInternal");
+
+ return securityGroup;
+ }
+
+ public void DeleteSecurityGroup(string groupName, string organizationId)
+ {
+ DeleteSecurityGroupInternal(groupName, organizationId);
+ }
+
+ internal void DeleteSecurityGroupInternal(string groupName, string organizationId)
+ {
+ HostedSolutionLog.LogStart("DeleteSecurityGroupInternal");
+ HostedSolutionLog.DebugInfo("groupName : {0}", groupName);
+ HostedSolutionLog.DebugInfo("organizationId : {0}", organizationId);
+
+ if (string.IsNullOrEmpty(organizationId))
+ throw new ArgumentNullException("organizationId");
+
+ if (string.IsNullOrEmpty(groupName))
+ throw new ArgumentNullException("groupName");
+
+ string path = GetGroupPath(organizationId, groupName);
+
+ if (ActiveDirectoryUtils.AdObjectExists(path))
+ ActiveDirectoryUtils.DeleteADObject(path, true);
+
+ HostedSolutionLog.LogEnd("DeleteSecurityGroupInternal");
+ }
+
+ public void SetSecurityGroupGeneralSettings(string organizationId, string groupName, string managedBy, string[] memberAccounts, string notes)
+ {
+
+ SetSecurityGroupGeneralSettingsInternal(organizationId, groupName, managedBy, memberAccounts, notes);
+ }
+
+ internal void SetSecurityGroupGeneralSettingsInternal(string organizationId, string groupName, string managedBy, string[] memberAccounts, string notes)
+ {
+ HostedSolutionLog.LogStart("SetSecurityGroupGeneralSettingsInternal");
+ HostedSolutionLog.DebugInfo("organizationId : {0}", organizationId);
+ HostedSolutionLog.DebugInfo("groupName : {0}", groupName);
+
+ if (string.IsNullOrEmpty(organizationId))
+ throw new ArgumentNullException("organizationId");
+
+ if (string.IsNullOrEmpty(groupName))
+ throw new ArgumentNullException("groupName");
+
+ string path = GetGroupPath(organizationId, groupName);
+
+ DirectoryEntry entry = ActiveDirectoryUtils.GetADObject(path);
+
+ string manager = string.Empty;
+ if (!string.IsNullOrEmpty(managedBy))
+ {
+ string managerPath = GetUserPath(organizationId, managedBy);
+ manager = ActiveDirectoryUtils.AdObjectExists(managerPath) ? managerPath : string.Empty;
+ }
+
+ ActiveDirectoryUtils.SetADObjectProperty(entry, ADAttributes.ManagedBy, ActiveDirectoryUtils.RemoveADPrefix(manager));
+
+ ActiveDirectoryUtils.SetADObjectProperty(entry, ADAttributes.Notes, notes);
+
+ foreach(string userPath in ActiveDirectoryUtils.GetUsersGroup(groupName)) {
+ ActiveDirectoryUtils.RemoveUserFromGroup(userPath, path);
+ }
+
+ foreach(string user in memberAccounts) {
+ string userPath = GetUserPath(organizationId, user);
+ ActiveDirectoryUtils.AddUserToGroup(userPath, path);
+ }
+
+ entry.CommitChanges();
+ }
+
+ public void AddUserToSecurityGroup(string organizationId, string loginName, string groupName)
+ {
+ AddUserToSecurityGroupInternal(organizationId, loginName, groupName);
+ }
+
+ internal void AddUserToSecurityGroupInternal(string organizationId, string loginName, string groupName)
+ {
+ HostedSolutionLog.LogStart("AddUserToSecurityGroupInternal");
+ HostedSolutionLog.DebugInfo("organizationId : {0}", organizationId);
+ HostedSolutionLog.DebugInfo("loginName : {0}", loginName);
+ HostedSolutionLog.DebugInfo("groupName : {0}", groupName);
+
+ if (string.IsNullOrEmpty(organizationId))
+ throw new ArgumentNullException("organizationId");
+
+ if (string.IsNullOrEmpty(loginName))
+ throw new ArgumentNullException("loginName");
+
+ if (string.IsNullOrEmpty(groupName))
+ throw new ArgumentNullException("groupName");
+
+ string userPath = GetUserPath(organizationId, loginName);
+
+ string groupPath = GetGroupPath(organizationId, groupName);
+
+ ActiveDirectoryUtils.AddUserToGroup(userPath, groupPath);
+ }
+
+ #endregion
+
public override bool IsInstalled()
{
return Environment.UserDomainName != Environment.MachineName;
diff --git a/WebsitePanel/Sources/WebsitePanel.Server.Client/OrganizationProxy.cs b/WebsitePanel/Sources/WebsitePanel.Server.Client/OrganizationProxy.cs
index eb607e66..b01c7dc4 100644
--- a/WebsitePanel/Sources/WebsitePanel.Server.Client/OrganizationProxy.cs
+++ b/WebsitePanel/Sources/WebsitePanel.Server.Client/OrganizationProxy.cs
@@ -77,6 +77,16 @@ namespace WebsitePanel.Providers.HostedSolution
private System.Threading.SendOrPostCallback GetUserGeneralSettingsOperationCompleted;
+ private System.Threading.SendOrPostCallback CreateSecurityGroupOperationCompleted;
+
+ private System.Threading.SendOrPostCallback GetSecurityGroupGeneralSettingsOperationCompleted;
+
+ private System.Threading.SendOrPostCallback DeleteSecurityGroupOperationCompleted;
+
+ private System.Threading.SendOrPostCallback SetSecurityGroupGeneralSettingsOperationCompleted;
+
+ private System.Threading.SendOrPostCallback AddUserToSecurityGroupOperationCompleted;
+
private System.Threading.SendOrPostCallback SetUserGeneralSettingsOperationCompleted;
private System.Threading.SendOrPostCallback SetUserPasswordOperationCompleted;
@@ -117,6 +127,21 @@ namespace WebsitePanel.Providers.HostedSolution
///
public event GetUserGeneralSettingsCompletedEventHandler GetUserGeneralSettingsCompleted;
+ ///
+ public event CreateSecurityGroupCompletedEventHandler CreateSecurityGroupCompleted;
+
+ ///
+ public event GetSecurityGroupGeneralSettingsCompletedEventHandler GetSecurityGroupGeneralSettingsCompleted;
+
+ ///
+ public event DeleteSecurityGroupCompletedEventHandler DeleteSecurityGroupCompleted;
+
+ ///
+ public event SetSecurityGroupGeneralSettingsCompletedEventHandler SetSecurityGroupGeneralSettingsCompleted;
+
+ ///
+ public event AddUserToSecurityGroupCompletedEventHandler AddUserToSecurityGroupCompleted;
+
///
public event SetUserGeneralSettingsCompletedEventHandler SetUserGeneralSettingsCompleted;
@@ -458,6 +483,280 @@ namespace WebsitePanel.Providers.HostedSolution
}
}
+ ///
+ [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/CreateSecurityGroup", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public int CreateSecurityGroup(string organizationId, string groupName, string managedBy)
+ {
+ object[] results = this.Invoke("CreateSecurityGroup", new object[] {
+ organizationId,
+ groupName,
+ managedBy});
+ return ((int)(results[0]));
+ }
+
+ ///
+ public System.IAsyncResult BeginCreateSecurityGroup(string organizationId, string groupName, string managedBy, System.AsyncCallback callback, object asyncState)
+ {
+ return this.BeginInvoke("CreateSecurityGroup", new object[] {
+ organizationId,
+ groupName,
+ managedBy}, callback, asyncState);
+ }
+
+ ///
+ public int EndCreateSecurityGroup(System.IAsyncResult asyncResult)
+ {
+ object[] results = this.EndInvoke(asyncResult);
+ return ((int)(results[0]));
+ }
+
+ ///
+ public void CreateSecurityGroupAsync(string organizationId, string groupName, string managedBy)
+ {
+ this.CreateSecurityGroupAsync(organizationId, groupName, managedBy, null);
+ }
+
+ ///
+ public void CreateSecurityGroupAsync(string organizationId, string groupName, string managedBy, object userState)
+ {
+ if ((this.CreateSecurityGroupOperationCompleted == null))
+ {
+ this.CreateSecurityGroupOperationCompleted = new System.Threading.SendOrPostCallback(this.OnCreateSecurityGroupOperationCompleted);
+ }
+ this.InvokeAsync("CreateSecurityGroup", new object[] {
+ organizationId,
+ groupName,
+ managedBy}, this.CreateSecurityGroupOperationCompleted, userState);
+ }
+
+ private void OnCreateSecurityGroupOperationCompleted(object arg)
+ {
+ if ((this.CreateSecurityGroupCompleted != null))
+ {
+ System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
+ this.CreateSecurityGroupCompleted(this, new CreateSecurityGroupCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
+ }
+ }
+
+ ///
+ [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetSecurityGroupGeneralSettings", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public OrganizationSecurityGroup GetSecurityGroupGeneralSettings(string groupName, string organizationId)
+ {
+ object[] results = this.Invoke("GetSecurityGroupGeneralSettings", new object[] {
+ groupName,
+ organizationId});
+ return ((OrganizationSecurityGroup)(results[0]));
+ }
+
+ ///
+ public System.IAsyncResult BeginGetSecurityGroupGeneralSettings(string groupName, string organizationId, System.AsyncCallback callback, object asyncState)
+ {
+ return this.BeginInvoke("GetSecurityGroupGeneralSettings", new object[] {
+ groupName,
+ organizationId}, callback, asyncState);
+ }
+
+ ///
+ public OrganizationSecurityGroup EndGetSecurityGroupGeneralSettings(System.IAsyncResult asyncResult)
+ {
+ object[] results = this.EndInvoke(asyncResult);
+ return ((OrganizationSecurityGroup)(results[0]));
+ }
+
+ ///
+ public void GetSecurityGroupGeneralSettingsAsync(string groupName, string organizationId)
+ {
+ this.GetSecurityGroupGeneralSettingsAsync(groupName, organizationId, null);
+ }
+
+ ///
+ public void GetSecurityGroupGeneralSettingsAsync(string groupName, string organizationId, object userState)
+ {
+ if ((this.GetSecurityGroupGeneralSettingsOperationCompleted == null))
+ {
+ this.GetSecurityGroupGeneralSettingsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetSecurityGroupGeneralSettingsOperationCompleted);
+ }
+ this.InvokeAsync("GetSecurityGroupGeneralSettings", new object[] {
+ groupName,
+ organizationId}, this.GetSecurityGroupGeneralSettingsOperationCompleted, userState);
+ }
+
+ private void OnGetSecurityGroupGeneralSettingsOperationCompleted(object arg)
+ {
+ if ((this.GetSecurityGroupGeneralSettingsCompleted != null))
+ {
+ System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
+ this.GetSecurityGroupGeneralSettingsCompleted(this, new GetSecurityGroupGeneralSettingsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
+ }
+ }
+
+ ///
+ [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/DeleteSecurityGroup", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public void DeleteSecurityGroup(string groupName, string organizationId)
+ {
+ this.Invoke("DeleteSecurityGroup", new object[] {
+ groupName,
+ organizationId});
+ }
+
+ ///
+ public System.IAsyncResult BeginDeleteSecurityGroup(string groupName, string organizationId, System.AsyncCallback callback, object asyncState)
+ {
+ return this.BeginInvoke("DeleteSecurityGroup", new object[] {
+ groupName,
+ organizationId}, callback, asyncState);
+ }
+
+ ///
+ public void EndDeleteSecurityGroup(System.IAsyncResult asyncResult)
+ {
+ this.EndInvoke(asyncResult);
+ }
+
+ ///
+ public void DeleteSecurityGroupAsync(string groupName, string organizationId)
+ {
+ this.DeleteSecurityGroupAsync(groupName, organizationId, null);
+ }
+
+ ///
+ public void DeleteSecurityGroupAsync(string groupName, string organizationId, object userState)
+ {
+ if ((this.DeleteSecurityGroupOperationCompleted == null))
+ {
+ this.DeleteSecurityGroupOperationCompleted = new System.Threading.SendOrPostCallback(this.OnDeleteSecurityGroupOperationCompleted);
+ }
+ this.InvokeAsync("DeleteSecurityGroup", new object[] {
+ groupName,
+ organizationId}, this.DeleteSecurityGroupOperationCompleted, userState);
+ }
+
+ private void OnDeleteSecurityGroupOperationCompleted(object arg)
+ {
+ if ((this.DeleteSecurityGroupCompleted != null))
+ {
+ System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
+ this.DeleteSecurityGroupCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
+ }
+ }
+
+ ///
+ [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/SetSecurityGroupGeneralSettings", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public void SetSecurityGroupGeneralSettings(string organizationId, string groupName, string managedBy, string[] memberAccounts, string notes)
+ {
+ this.Invoke("SetSecurityGroupGeneralSettings", new object[] {
+ organizationId,
+ groupName,
+ managedBy,
+ memberAccounts,
+ notes});
+ }
+
+ ///
+ public System.IAsyncResult BeginSetSecurityGroupGeneralSettings(string organizationId, string groupName, string managedBy, string[] memberAccounts, string notes, System.AsyncCallback callback, object asyncState)
+ {
+ return this.BeginInvoke("SetSecurityGroupGeneralSettings", new object[] {
+ organizationId,
+ groupName,
+ managedBy,
+ memberAccounts,
+ notes}, callback, asyncState);
+ }
+
+ ///
+ public void EndSetSecurityGroupGeneralSettings(System.IAsyncResult asyncResult)
+ {
+ this.EndInvoke(asyncResult);
+ }
+
+ ///
+ public void SetSecurityGroupGeneralSettingsAsync(string organizationId, string groupName, string managedBy, string[] memberAccounts, string notes)
+ {
+ this.SetSecurityGroupGeneralSettingsAsync(organizationId, groupName, managedBy, memberAccounts, notes, null);
+ }
+
+ ///
+ public void SetSecurityGroupGeneralSettingsAsync(string organizationId, string groupName, string managedBy, string[] memberAccounts, string notes, object userState)
+ {
+ if ((this.SetSecurityGroupGeneralSettingsOperationCompleted == null))
+ {
+ this.SetSecurityGroupGeneralSettingsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnSetSecurityGroupGeneralSettingsOperationCompleted);
+ }
+ this.InvokeAsync("SetSecurityGroupGeneralSettings", new object[] {
+ organizationId,
+ groupName,
+ managedBy,
+ memberAccounts,
+ notes}, this.SetSecurityGroupGeneralSettingsOperationCompleted, userState);
+ }
+
+ private void OnSetSecurityGroupGeneralSettingsOperationCompleted(object arg)
+ {
+ if ((this.SetSecurityGroupGeneralSettingsCompleted != null))
+ {
+ System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
+ this.SetSecurityGroupGeneralSettingsCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
+ }
+ }
+
+ ///
+ [System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
+ [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/AddUserToSecurityGroup", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
+ public void AddUserToSecurityGroup(string organizationId, string loginName, string groupName)
+ {
+ this.Invoke("AddUserToSecurityGroup", new object[] {
+ organizationId,
+ loginName,
+ groupName});
+ }
+
+ ///
+ public System.IAsyncResult BeginAddUserToSecurityGroup(string organizationId, string loginName, string groupName, System.AsyncCallback callback, object asyncState)
+ {
+ return this.BeginInvoke("AddUserToSecurityGroup", new object[] {
+ organizationId,
+ loginName,
+ groupName}, callback, asyncState);
+ }
+
+ ///
+ public void EndAddUserToSecurityGroup(System.IAsyncResult asyncResult)
+ {
+ this.EndInvoke(asyncResult);
+ }
+
+ ///
+ public void AddUserToSecurityGroupAsync(string organizationId, string loginName, string groupName)
+ {
+ this.AddUserToSecurityGroupAsync(organizationId, loginName, groupName, null);
+ }
+
+ ///
+ public void AddUserToSecurityGroupAsync(string organizationId, string loginName, string groupName, object userState)
+ {
+ if ((this.AddUserToSecurityGroupOperationCompleted == null))
+ {
+ this.AddUserToSecurityGroupOperationCompleted = new System.Threading.SendOrPostCallback(this.OnAddUserToSecurityGroupOperationCompleted);
+ }
+ this.InvokeAsync("AddUserToSecurityGroup", new object[] {
+ organizationId,
+ loginName,
+ groupName}, this.AddUserToSecurityGroupOperationCompleted, userState);
+ }
+
+ private void OnAddUserToSecurityGroupOperationCompleted(object arg)
+ {
+ if ((this.AddUserToSecurityGroupCompleted != null))
+ {
+ System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
+ this.AddUserToSecurityGroupCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
+ }
+ }
+
///
[System.Web.Services.Protocols.SoapHeaderAttribute("ServiceProviderSettingsSoapHeaderValue")]
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/SetUserGeneralSettings", RequestNamespace = "http://tempuri.org/", ResponseNamespace = "http://tempuri.org/", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
@@ -1197,6 +1496,78 @@ namespace WebsitePanel.Providers.HostedSolution
}
}
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
+ public delegate void CreateSecurityGroupCompletedEventHandler(object sender, CreateSecurityGroupCompletedEventArgs e);
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ public partial class CreateSecurityGroupCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
+ private object[] results;
+
+ internal CreateSecurityGroupCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
+ this.results = results;
+ }
+
+ ///
+ public int Result
+ {
+ get
+ {
+ this.RaiseExceptionIfNecessary();
+ return ((int)(this.results[0]));
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
+ public delegate void GetSecurityGroupGeneralSettingsCompletedEventHandler(object sender, GetSecurityGroupGeneralSettingsCompletedEventArgs e);
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.ComponentModel.DesignerCategoryAttribute("code")]
+ public partial class GetSecurityGroupGeneralSettingsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
+ {
+
+ private object[] results;
+
+ internal GetSecurityGroupGeneralSettingsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
+ base(exception, cancelled, userState)
+ {
+ this.results = results;
+ }
+
+ ///
+ public OrganizationSecurityGroup Result
+ {
+ get
+ {
+ this.RaiseExceptionIfNecessary();
+ return ((OrganizationSecurityGroup)(this.results[0]));
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
+ public delegate void DeleteSecurityGroupCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e);
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
+ public delegate void SetSecurityGroupGeneralSettingsCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e);
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
+ public delegate void AddUserToSecurityGroupCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e);
+
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
public delegate void SetUserGeneralSettingsCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e);
diff --git a/WebsitePanel/Sources/WebsitePanel.Server/Organizations.asmx.cs b/WebsitePanel/Sources/WebsitePanel.Server/Organizations.asmx.cs
index 1e814394..dd7f3504 100644
--- a/WebsitePanel/Sources/WebsitePanel.Server/Organizations.asmx.cs
+++ b/WebsitePanel/Sources/WebsitePanel.Server/Organizations.asmx.cs
@@ -110,6 +110,36 @@ namespace WebsitePanel.Server
return Organization.GetUserGeneralSettings(loginName, organizationId);
}
+ [WebMethod, SoapHeader("settings")]
+ public int CreateSecurityGroup(string organizationId, string groupName, string managedBy)
+ {
+ return Organization.CreateSecurityGroup(organizationId, groupName, managedBy);
+ }
+
+ [WebMethod, SoapHeader("settings")]
+ public OrganizationSecurityGroup GetSecurityGroupGeneralSettings(string groupName, string organizationId)
+ {
+ return Organization.GetSecurityGroupGeneralSettings(groupName, organizationId);
+ }
+
+ [WebMethod, SoapHeader("settings")]
+ public void DeleteSecurityGroup(string groupName, string organizationId)
+ {
+ Organization.DeleteSecurityGroup(groupName, organizationId);
+ }
+
+ [WebMethod, SoapHeader("settings")]
+ public void SetSecurityGroupGeneralSettings(string organizationId, string groupName, string managedBy, string[] memberAccounts, string notes)
+ {
+ Organization.SetSecurityGroupGeneralSettings(organizationId, groupName, managedBy, memberAccounts, notes);
+ }
+
+ [WebMethod, SoapHeader("settings")]
+ public void AddUserToSecurityGroup(string organizationId, string loginName, string groupName)
+ {
+ Organization.AddUserToSecurityGroup(organizationId, loginName, groupName);
+ }
+
[WebMethod, SoapHeader("settings")]
public void SetUserGeneralSettings(string organizationId, string accountName, string displayName, string password,
bool hideFromAddressBook, bool disabled, bool locked, string firstName, string initials, string lastName,
diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/App_Data/WebsitePanel_Modules.config b/WebsitePanel/Sources/WebsitePanel.WebPortal/App_Data/WebsitePanel_Modules.config
index fd56bbb9..cdbb540b 100644
--- a/WebsitePanel/Sources/WebsitePanel.WebPortal/App_Data/WebsitePanel_Modules.config
+++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/App_Data/WebsitePanel_Modules.config
@@ -545,6 +545,10 @@
+
+
+
+
diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/App_GlobalResources/WebsitePanel_SharedResources.ascx.resx b/WebsitePanel/Sources/WebsitePanel.WebPortal/App_GlobalResources/WebsitePanel_SharedResources.ascx.resx
index e6c16978..da073665 100644
--- a/WebsitePanel/Sources/WebsitePanel.WebPortal/App_GlobalResources/WebsitePanel_SharedResources.ascx.resx
+++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/App_GlobalResources/WebsitePanel_SharedResources.ascx.resx
@@ -3301,6 +3301,9 @@
Domains per Organization
+
+ Allow Security Group Management
+
Hosted SharePoint
diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/Code/Helpers/OrganizationsHelper.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/Code/Helpers/OrganizationsHelper.cs
index f6790dde..6537ad67 100644
--- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/Code/Helpers/OrganizationsHelper.cs
+++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/Code/Helpers/OrganizationsHelper.cs
@@ -83,5 +83,30 @@ namespace WebsitePanel.Portal
}
#endregion
+
+ #region Security Groups
+
+ ExchangeAccountsPaged accounts;
+
+ public int GetOrganizationSecurityGroupsPagedCount(int itemId, string accountTypes,
+ string filterColumn, string filterValue)
+ {
+ return accounts.RecordsCount;
+ }
+
+ public ExchangeAccount[] GetOrganizationSecurityGroupsPaged(int itemId, string accountTypes,
+ string filterColumn, string filterValue,
+ int maximumRows, int startRowIndex, string sortColumn)
+ {
+ if (!String.IsNullOrEmpty(filterValue))
+ filterValue = filterValue + "%";
+
+ accounts = ES.Services.Organizations.GetOrganizationSecurityGroupsPaged(itemId,
+ filterColumn, filterValue, sortColumn, startRowIndex, maximumRows);
+
+ return accounts.PageItems;
+ }
+
+ #endregion
}
}
diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/App_LocalResources/OrganizationCreateSecurityGroup.ascx.resx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/App_LocalResources/OrganizationCreateSecurityGroup.ascx.resx
new file mode 100644
index 00000000..302d4e79
--- /dev/null
+++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/App_LocalResources/OrganizationCreateSecurityGroup.ascx.resx
@@ -0,0 +1,153 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ ShowProgressDialog('Creating group ...');
+
+
+ Create Group
+
+
+
+
+
+ E-mail Address: *
+
+
+ Display Name: *
+
+
+ Managed by: *
+
+
+ Create New Group
+
+
+ Security Groups
+
+
+ Please specify a manager
+
+
+ Enter Display Name
+
+
+ *
+
+
\ No newline at end of file
diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/App_LocalResources/OrganizationSecurityGroupGeneralSettings.ascx.resx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/App_LocalResources/OrganizationSecurityGroupGeneralSettings.ascx.resx
new file mode 100644
index 00000000..44c43842
--- /dev/null
+++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/App_LocalResources/OrganizationSecurityGroupGeneralSettings.ascx.resx
@@ -0,0 +1,156 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ ShowProgressDialog('Updating group settings...');
+
+
+ Save Changes
+
+
+ Hide from Address Book
+
+
+
+
+
+ Managed By: *
+
+
+ Members:
+
+
+ Notes:
+
+
+ Edit Group
+
+
+ Security Groups
+
+
+ Please specify a manager
+
+
+ Enter Display Name
+
+
+ *
+
+
\ No newline at end of file
diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/App_LocalResources/OrganizationSecurityGroups.ascx.resx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/App_LocalResources/OrganizationSecurityGroups.ascx.resx
new file mode 100644
index 00000000..62ee62f5
--- /dev/null
+++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/App_LocalResources/OrganizationSecurityGroups.ascx.resx
@@ -0,0 +1,153 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Create New Group
+
+
+ if(!confirm('Are you sure you want to delete this group?')) return false; else ShowProgressDialog('Deleting group...');
+
+
+ Delete
+
+
+ Delete Group
+
+
+ Search
+
+
+ Display Name
+
+
+
+
+
+ No groups have been created. To create a new group click "Create New Group" button.
+
+
+ Display Name
+
+
+ Groups
+
+
+ Security Groups
+
+
\ No newline at end of file
diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/OrganizationCreateSecurityGroup.ascx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/OrganizationCreateSecurityGroup.ascx
new file mode 100644
index 00000000..b3b0e1a8
--- /dev/null
+++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/OrganizationCreateSecurityGroup.ascx
@@ -0,0 +1,55 @@
+<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="OrganizationCreateSecurityGroup.ascx.cs" Inherits="WebsitePanel.Portal.ExchangeServer.OrganizationCreateSecurityGroup" %>
+<%@ Register Src="../UserControls/SimpleMessageBox.ascx" TagName="SimpleMessageBox" TagPrefix="wsp" %>
+<%@ Register Src="UserControls/EmailAddress.ascx" TagName="EmailAddress" TagPrefix="wsp" %>
+<%@ Register Src="UserControls/Menu.ascx" TagName="Menu" TagPrefix="wsp" %>
+<%@ Register Src="UserControls/Breadcrumb.ascx" TagName="Breadcrumb" TagPrefix="wsp" %>
+<%@ Register Src="../UserControls/EnableAsyncTasksSupport.ascx" TagName="EnableAsyncTasksSupport" TagPrefix="wsp" %>
+
+<%@ Register src="UserControls/UserSelector.ascx" tagname="UserSelector" tagprefix="wsp" %>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ |
+
+
+
+ |
+
+
+ |
+
+
+
+ |
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/OrganizationCreateSecurityGroup.ascx.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/OrganizationCreateSecurityGroup.ascx.cs
new file mode 100644
index 00000000..d81a3ecc
--- /dev/null
+++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/OrganizationCreateSecurityGroup.ascx.cs
@@ -0,0 +1,83 @@
+// 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.
+
+using System;
+using System.Data;
+using System.Configuration;
+using System.Collections;
+using System.Web;
+using System.Web.Security;
+using System.Web.UI;
+using System.Web.UI.WebControls;
+using System.Web.UI.WebControls.WebParts;
+using System.Web.UI.HtmlControls;
+using WebsitePanel.EnterpriseServer;
+
+namespace WebsitePanel.Portal.ExchangeServer
+{
+ public partial class OrganizationCreateSecurityGroup : WebsitePanelModuleBase
+ {
+ protected void Page_Load(object sender, EventArgs e)
+ {
+ }
+
+ protected void btnCreate_Click(object sender, EventArgs e)
+ {
+ CreateSecurityGroup();
+ }
+
+ private void CreateSecurityGroup()
+ {
+ if (!Page.IsValid)
+ return;
+ try
+ {
+ int accountId = ES.Services.Organizations.CreateSecurityGroup(PanelRequest.ItemID, txtDisplayName.Text, manager.GetAccount());
+
+ if (accountId < 0)
+ {
+ messageBox.ShowResultMessage(accountId);
+ return;
+ }
+
+ Response.Redirect(EditUrl("AccountID", accountId.ToString(), "secur_group_settings",
+ "SpaceID=" + PanelSecurity.PackageId.ToString(),
+ "ItemID=" + PanelRequest.ItemID.ToString()));
+ }
+ catch (Exception ex)
+ {
+ messageBox.ShowErrorMessage("ORGANIZATION_CREATE_SECURITY_GROUP", ex);
+ }
+ }
+
+ protected void valManager_ServerValidate(object source, ServerValidateEventArgs args)
+ {
+ args.IsValid = manager.GetAccountId() != 0;
+ }
+ }
+}
\ No newline at end of file
diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/OrganizationCreateSecurityGroup.ascx.designer.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/OrganizationCreateSecurityGroup.ascx.designer.cs
new file mode 100644
index 00000000..13281f4f
--- /dev/null
+++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/OrganizationCreateSecurityGroup.ascx.designer.cs
@@ -0,0 +1,141 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+namespace WebsitePanel.Portal.ExchangeServer {
+
+
+ public partial class OrganizationCreateSecurityGroup {
+
+ ///
+ /// asyncTasks control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::WebsitePanel.Portal.EnableAsyncTasksSupport asyncTasks;
+
+ ///
+ /// breadcrumb control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::WebsitePanel.Portal.ExchangeServer.UserControls.Breadcrumb breadcrumb;
+
+ ///
+ /// menu control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::WebsitePanel.Portal.ExchangeServer.UserControls.Menu menu;
+
+ ///
+ /// Image1 control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.Image Image1;
+
+ ///
+ /// locTitle control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.Localize locTitle;
+
+ ///
+ /// messageBox control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::WebsitePanel.Portal.UserControls.SimpleMessageBox messageBox;
+
+ ///
+ /// locDisplayName control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.Localize locDisplayName;
+
+ ///
+ /// txtDisplayName control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.TextBox txtDisplayName;
+
+ ///
+ /// valRequireDisplayName control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.RequiredFieldValidator valRequireDisplayName;
+
+ ///
+ /// Localize1 control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.Localize Localize1;
+
+ ///
+ /// manager control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::WebsitePanel.Portal.ExchangeServer.UserControls.UserSelector manager;
+
+ ///
+ /// valManager control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.CustomValidator valManager;
+
+ ///
+ /// btnCreate control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.Button btnCreate;
+
+ ///
+ /// ValidationSummary1 control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.ValidationSummary ValidationSummary1;
+ }
+}
diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/OrganizationSecurityGroupGeneralSettings.ascx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/OrganizationSecurityGroupGeneralSettings.ascx
new file mode 100644
index 00000000..f6453c2c
--- /dev/null
+++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/OrganizationSecurityGroupGeneralSettings.ascx
@@ -0,0 +1,82 @@
+<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="OrganizationSecurityGroupGeneralSettings.ascx.cs" Inherits="WebsitePanel.Portal.ExchangeServer.OrganizationSecurityGroupGeneralSettings" %>
+<%@ Register Src="../UserControls/SimpleMessageBox.ascx" TagName="SimpleMessageBox" TagPrefix="wsp" %>
+<%@ Register Src="UserControls/UsersList.ascx" TagName="UsersList" TagPrefix="wsp"%>
+<%@ Register Src="UserControls/UserSelector.ascx" TagName="UserSelector" TagPrefix="wsp" %>
+<%@ Register Src="UserControls/SecurityGroupTabs.ascx" TagName="SecurityGroupTabs" TagPrefix="wsp"%>
+<%@ Register Src="UserControls/Menu.ascx" TagName="Menu" TagPrefix="wsp" %>
+<%@ Register Src="UserControls/Breadcrumb.ascx" TagName="Breadcrumb" TagPrefix="wsp" %>
+<%@ Register TagPrefix="wsp" TagName="CollapsiblePanel" Src="../UserControls/CollapsiblePanel.ascx" %>
+<%@ Register Src="../UserControls/EnableAsyncTasksSupport.ascx" TagName="EnableAsyncTasksSupport" TagPrefix="wsp" %>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ |
+
+
+
+
+
+ |
+
+
+ |
+
+
+
+
+ |
+
+
+ |
+
+ |
+
+
+
+
+ |
+
+ |
+
+ |
+
+
+
+
+ |
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/OrganizationSecurityGroupGeneralSettings.ascx.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/OrganizationSecurityGroupGeneralSettings.ascx.cs
new file mode 100644
index 00000000..d8f71bf4
--- /dev/null
+++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/OrganizationSecurityGroupGeneralSettings.ascx.cs
@@ -0,0 +1,130 @@
+// 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.
+
+using System;
+using System.Data;
+using System.Configuration;
+using System.Collections;
+using System.Web;
+using System.Web.Security;
+using System.Web.UI;
+using System.Web.UI.WebControls;
+using System.Web.UI.WebControls.WebParts;
+using System.Web.UI.HtmlControls;
+
+using WebsitePanel.Providers.HostedSolution;
+using WebsitePanel.EnterpriseServer;
+
+namespace WebsitePanel.Portal.ExchangeServer
+{
+ public partial class OrganizationSecurityGroupGeneralSettings : WebsitePanelModuleBase
+ {
+ protected void Page_Load(object sender, EventArgs e)
+ {
+ if (!IsPostBack)
+ {
+ BindSettings();
+ }
+ }
+
+ private void BindSettings()
+ {
+ try
+ {
+ // get settings
+ OrganizationSecurityGroup securityGroup = ES.Services.Organizations.GetSecurityGroupGeneralSettings(
+ PanelRequest.ItemID, PanelRequest.AccountID);
+
+ litDisplayName.Text = PortalAntiXSS.Encode(securityGroup.DisplayName);
+
+ // bind form
+ txtDisplayName.Text = securityGroup.DisplayName;
+
+ manager.SetAccount(securityGroup.ManagerAccount);
+
+ members.SetAccounts(securityGroup.MembersAccounts);
+
+ txtNotes.Text = securityGroup.Notes;
+
+ if (securityGroup.IsDefault)
+ {
+ txtDisplayName.ReadOnly = true;
+ txtNotes.ReadOnly = true;
+ manager.Enabled = false;
+ members.Enabled = false;
+ }
+ }
+ catch (Exception ex)
+ {
+ messageBox.ShowErrorMessage("ORGANIZATION_GET_SECURITY_GROUP_SETTINGS", ex);
+ }
+ }
+
+ private void SaveSettings()
+ {
+ if (!Page.IsValid)
+ return;
+
+ try
+ {
+ int result = ES.Services.Organizations.SetSecurityGroupGeneralSettings(
+ PanelRequest.ItemID,
+ PanelRequest.AccountID,
+ txtDisplayName.Text,
+ manager.GetAccount(),
+ members.GetAccounts(),
+ txtNotes.Text);
+
+ if (result < 0)
+ {
+ messageBox.ShowResultMessage(result);
+ return;
+ }
+
+ litDisplayName.Text = PortalAntiXSS.Encode(txtDisplayName.Text);
+
+ messageBox.ShowSuccessMessage("ORGANIZATION_UPDATE_SECURITY_GROUP_SETTINGS");
+ }
+ catch (Exception ex)
+ {
+ messageBox.ShowErrorMessage("ORGANIZATION_UPDATE_SECURITY_GROUP_SETTINGS", ex);
+ }
+ }
+
+ protected void btnSave_Click(object sender, EventArgs e)
+ {
+ SaveSettings();
+ }
+
+ protected void valManager_ServerValidate(object source, ServerValidateEventArgs args)
+ {
+ args.IsValid = manager.GetAccount() != null;
+
+ }
+ }
+}
\ No newline at end of file
diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/OrganizationSecurityGroupGeneralSettings.ascx.designer.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/OrganizationSecurityGroupGeneralSettings.ascx.designer.cs
new file mode 100644
index 00000000..15f2c099
--- /dev/null
+++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/OrganizationSecurityGroupGeneralSettings.ascx.designer.cs
@@ -0,0 +1,195 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+namespace WebsitePanel.Portal.ExchangeServer {
+
+
+ public partial class OrganizationSecurityGroupGeneralSettings {
+
+ ///
+ /// asyncTasks control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::WebsitePanel.Portal.EnableAsyncTasksSupport asyncTasks;
+
+ ///
+ /// breadcrumb control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::WebsitePanel.Portal.ExchangeServer.UserControls.Breadcrumb breadcrumb;
+
+ ///
+ /// menu control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::WebsitePanel.Portal.ExchangeServer.UserControls.Menu menu;
+
+ ///
+ /// Image1 control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.Image Image1;
+
+ ///
+ /// locTitle control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.Localize locTitle;
+
+ ///
+ /// litDisplayName control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.Literal litDisplayName;
+
+ ///
+ /// tabs control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::WebsitePanel.Portal.ExchangeServer.UserControls.SecurityGroupTabs tabs;
+
+ ///
+ /// messageBox control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::WebsitePanel.Portal.UserControls.SimpleMessageBox messageBox;
+
+ ///
+ /// locDisplayName control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.Localize locDisplayName;
+
+ ///
+ /// txtDisplayName control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.TextBox txtDisplayName;
+
+ ///
+ /// valRequireDisplayName control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.RequiredFieldValidator valRequireDisplayName;
+
+ ///
+ /// locManager control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.Localize locManager;
+
+ ///
+ /// manager control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::WebsitePanel.Portal.ExchangeServer.UserControls.UserSelector manager;
+
+ ///
+ /// valManager control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.CustomValidator valManager;
+
+ ///
+ /// locMembers control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.Localize locMembers;
+
+ ///
+ /// members control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::WebsitePanel.Portal.ExchangeServer.UserControls.UsersList members;
+
+ ///
+ /// locNotes control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.Localize locNotes;
+
+ ///
+ /// txtNotes control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.TextBox txtNotes;
+
+ ///
+ /// btnSave control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.Button btnSave;
+
+ ///
+ /// ValidationSummary1 control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.ValidationSummary ValidationSummary1;
+ }
+}
diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/OrganizationSecurityGroups.ascx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/OrganizationSecurityGroups.ascx
new file mode 100644
index 00000000..14eabbc4
--- /dev/null
+++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/OrganizationSecurityGroups.ascx
@@ -0,0 +1,90 @@
+<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="OrganizationSecurityGroups.ascx.cs" Inherits="WebsitePanel.Portal.ExchangeServer.OrganizationSecurityGroups" %>
+<%@ Register Src="../UserControls/SimpleMessageBox.ascx" TagName="SimpleMessageBox" TagPrefix="wsp" %>
+<%@ Register Src="UserControls/Menu.ascx" TagName="Menu" TagPrefix="wsp" %>
+<%@ Register Src="UserControls/Breadcrumb.ascx" TagName="Breadcrumb" TagPrefix="wsp" %>
+<%@ Register Src="../UserControls/EnableAsyncTasksSupport.ascx" TagName="EnableAsyncTasksSupport" TagPrefix="wsp" %>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <%# Eval("DisplayName") %>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/OrganizationSecurityGroups.ascx.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/OrganizationSecurityGroups.ascx.cs
new file mode 100644
index 00000000..6719af20
--- /dev/null
+++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/OrganizationSecurityGroups.ascx.cs
@@ -0,0 +1,114 @@
+// 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.
+
+using System;
+using System.Data;
+using System.Configuration;
+using System.Collections;
+using System.Web;
+using System.Web.Security;
+using System.Web.UI;
+using System.Web.UI.WebControls;
+using System.Web.UI.WebControls.WebParts;
+using System.Web.UI.HtmlControls;
+
+using WebsitePanel.Providers.HostedSolution;
+using WebsitePanel.EnterpriseServer;
+
+namespace WebsitePanel.Portal.ExchangeServer
+{
+ public partial class OrganizationSecurityGroups : WebsitePanelModuleBase
+ {
+ protected void Page_Load(object sender, EventArgs e)
+ {
+
+ }
+
+ protected void btnCreateGroup_Click(object sender, EventArgs e)
+ {
+ Response.Redirect(EditUrl("ItemID", PanelRequest.ItemID.ToString(), "create_secur_group",
+ "SpaceID=" + PanelSecurity.PackageId.ToString()));
+ }
+
+ public string GetListEditUrl(string accountId)
+ {
+ return EditUrl("SpaceID", PanelSecurity.PackageId.ToString(), "secur_group_settings",
+ "AccountID=" + accountId,
+ "ItemID=" + PanelRequest.ItemID.ToString());
+ }
+
+ public bool IsNotDefault(string accountType)
+ {
+ return (ExchangeAccountType)Enum.Parse(typeof(ExchangeAccountType), accountType) != ExchangeAccountType.DefaultSecurityGroup;
+ }
+
+ protected void odsSecurityGroupsPaged_Selected(object sender, ObjectDataSourceStatusEventArgs e)
+ {
+ if (e.Exception != null)
+ {
+ messageBox.ShowErrorMessage("ORGANIZATION_GET_SECURITY_GROUP", e.Exception);
+ e.ExceptionHandled = true;
+ }
+ }
+
+ protected void gvSecurityGroups_RowCommand(object sender, GridViewCommandEventArgs e)
+ {
+ if (e.CommandName == "DeleteItem")
+ {
+ // delete security group
+ int accountId = Utils.ParseInt(e.CommandArgument.ToString(), 0);
+
+ try
+ {
+ int result = ES.Services.Organizations.DeleteSecurityGroup(PanelRequest.ItemID, accountId);
+ if (result < 0)
+ {
+ messageBox.ShowResultMessage(result);
+ return;
+ }
+
+ // rebind grid
+ gvGroups.DataBind();
+ }
+ catch (Exception ex)
+ {
+ messageBox.ShowErrorMessage("ORGANIZATION_DELETE_SECURITY_GROUP", ex);
+ }
+ }
+ }
+
+ protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
+ {
+ gvGroups.PageSize = Convert.ToInt16(ddlPageSize.SelectedValue);
+
+ // rebind grid
+ gvGroups.DataBind();
+
+ }
+ }
+}
\ No newline at end of file
diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/OrganizationSecurityGroups.ascx.designer.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/OrganizationSecurityGroups.ascx.designer.cs
new file mode 100644
index 00000000..1c8e4bc9
--- /dev/null
+++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/OrganizationSecurityGroups.ascx.designer.cs
@@ -0,0 +1,150 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+namespace WebsitePanel.Portal.ExchangeServer {
+
+
+ public partial class OrganizationSecurityGroups {
+
+ ///
+ /// asyncTasks control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::WebsitePanel.Portal.EnableAsyncTasksSupport asyncTasks;
+
+ ///
+ /// breadcrumb control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::WebsitePanel.Portal.ExchangeServer.UserControls.Breadcrumb breadcrumb;
+
+ ///
+ /// menu control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::WebsitePanel.Portal.ExchangeServer.UserControls.Menu menu;
+
+ ///
+ /// Image1 control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.Image Image1;
+
+ ///
+ /// locTitle control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.Localize locTitle;
+
+ ///
+ /// messageBox control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::WebsitePanel.Portal.UserControls.SimpleMessageBox messageBox;
+
+ ///
+ /// btnCreateGroup control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.Button btnCreateGroup;
+
+ ///
+ /// SearchPanel control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.Panel SearchPanel;
+
+ ///
+ /// locSearch control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.Localize locSearch;
+
+ ///
+ /// ddlPageSize control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.DropDownList ddlPageSize;
+
+ ///
+ /// ddlSearchColumn control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.DropDownList ddlSearchColumn;
+
+ ///
+ /// txtSearchValue control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.TextBox txtSearchValue;
+
+ ///
+ /// cmdSearch control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.ImageButton cmdSearch;
+
+ ///
+ /// gvGroups control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.GridView gvGroups;
+
+ ///
+ /// odsSecurityGroupsPaged control.
+ ///
+ ///
+ /// Auto-generated field.
+ /// To modify move field declaration from designer file to code-behind file.
+ ///
+ protected global::System.Web.UI.WebControls.ObjectDataSource odsSecurityGroupsPaged;
+ }
+}
diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/OrganizationUserMemberOf.ascx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/OrganizationUserMemberOf.ascx
index b2479926..2d2936f3 100644
--- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/OrganizationUserMemberOf.ascx
+++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/ExchangeServer/OrganizationUserMemberOf.ascx
@@ -10,6 +10,7 @@
<%@ Register Src="UserControls/Breadcrumb.ascx" TagName="Breadcrumb" TagPrefix="wsp" %>
<%@ Register Src="UserControls/EmailAddress.ascx" TagName="EmailAddress" TagPrefix="wsp" %>
<%@ Register Src="UserControls/AccountsList.ascx" TagName="AccountsList" TagPrefix="wsp" %>
+<%@ Register Src="UserControls/UsersList.ascx" TagName="UsersList" TagPrefix="wsp" %>
@@ -42,9 +43,9 @@
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+