Disclaimers fix
This commit is contained in:
parent
da3008c9cc
commit
61f6820f98
7 changed files with 2152 additions and 1773 deletions
|
@ -5565,17 +5565,26 @@ namespace WebsitePanel.EnterpriseServer
|
|||
|
||||
#region Disclaimers
|
||||
|
||||
public static int AddExchangeDisclaimer(int itemID, ExchangeDisclaimer disclaimer)
|
||||
public static int AddExchangeDisclaimer(int itemId, ExchangeDisclaimer disclaimer)
|
||||
{
|
||||
int res = -1;
|
||||
|
||||
int accountCheck = SecurityContext.CheckAccount(DemandAccount.NotDemo | DemandAccount.IsActive);
|
||||
if (accountCheck < 0) return accountCheck;
|
||||
|
||||
// place log record
|
||||
TaskManager.StartTask("EXCHANGE", "ADD_EXCHANGE_EXCHANGEDISCLAIMER", itemID);
|
||||
TaskManager.StartTask("EXCHANGE", "ADD_EXCHANGE_EXCHANGEDISCLAIMER", itemId);
|
||||
|
||||
try
|
||||
{
|
||||
return DataProvider.AddExchangeDisclaimer(itemID, disclaimer);
|
||||
Organization org = (Organization)PackageController.GetPackageItem(itemId);
|
||||
if (org == null) return -1;
|
||||
int exchangeServiceId = GetExchangeServiceID(org.PackageId);
|
||||
ExchangeServer exchange = GetExchangeServer(exchangeServiceId, org.ServiceId);
|
||||
|
||||
res = DataProvider.AddExchangeDisclaimer(itemId, disclaimer);
|
||||
disclaimer.ExchangeDisclaimerId = res;
|
||||
exchange.SetDisclaimer(disclaimer.WSPUniqueName, disclaimer.DisclaimerText);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
@ -5586,20 +5595,26 @@ namespace WebsitePanel.EnterpriseServer
|
|||
TaskManager.CompleteTask();
|
||||
}
|
||||
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
public static int UpdateExchangeDisclaimer(int itemID, ExchangeDisclaimer disclaimer)
|
||||
public static int UpdateExchangeDisclaimer(int itemId, ExchangeDisclaimer disclaimer)
|
||||
{
|
||||
int accountCheck = SecurityContext.CheckAccount(DemandAccount.NotDemo | DemandAccount.IsActive);
|
||||
if (accountCheck < 0) return accountCheck;
|
||||
|
||||
// place log record
|
||||
TaskManager.StartTask("EXCHANGE", "UPDATE_EXCHANGE_EXCHANGEDISCLAIMER", itemID);
|
||||
TaskManager.StartTask("EXCHANGE", "UPDATE_EXCHANGE_EXCHANGEDISCLAIMER", itemId);
|
||||
|
||||
try
|
||||
{
|
||||
DataProvider.UpdateExchangeDisclaimer(itemID, disclaimer);
|
||||
Organization org = (Organization)PackageController.GetPackageItem(itemId);
|
||||
if (org == null) return -1;
|
||||
int exchangeServiceId = GetExchangeServiceID(org.PackageId);
|
||||
ExchangeServer exchange = GetExchangeServer(exchangeServiceId, org.ServiceId);
|
||||
|
||||
exchange.SetDisclaimer(disclaimer.WSPUniqueName, disclaimer.DisclaimerText);
|
||||
DataProvider.UpdateExchangeDisclaimer(itemId, disclaimer);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
@ -5622,7 +5637,17 @@ namespace WebsitePanel.EnterpriseServer
|
|||
|
||||
try
|
||||
{
|
||||
DataProvider.DeleteExchangeDisclaimer(exchangeDisclaimerId);
|
||||
ExchangeDisclaimer disclaimer = null;
|
||||
if (exchangeDisclaimerId != -1) disclaimer = GetExchangeDisclaimer(itemId, exchangeDisclaimerId);
|
||||
|
||||
Organization org = (Organization)PackageController.GetPackageItem(itemId);
|
||||
if (org == null) return -1;
|
||||
int exchangeServiceId = GetExchangeServiceID(org.PackageId);
|
||||
ExchangeServer exchange = GetExchangeServer(exchangeServiceId, org.ServiceId);
|
||||
|
||||
if (exchange.RemoveDisclaimer(disclaimer.WSPUniqueName)!=-1)
|
||||
DataProvider.DeleteExchangeDisclaimer(exchangeDisclaimerId);
|
||||
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
@ -5677,42 +5702,54 @@ namespace WebsitePanel.EnterpriseServer
|
|||
|
||||
}
|
||||
|
||||
public static int SetExchangeAccountDisclaimerId(int itemId, int AccountID, int ExchangeDisclaimerId)
|
||||
public static int SetExchangeAccountDisclaimerId(int itemId, int accountID, int newExchangeDisclaimerId)
|
||||
{
|
||||
int res = 0;
|
||||
|
||||
int accountCheck = SecurityContext.CheckAccount(DemandAccount.NotDemo | DemandAccount.IsActive);
|
||||
if (accountCheck < 0) return accountCheck;
|
||||
|
||||
// place log record
|
||||
TaskManager.StartTask("EXCHANGE", "SET_EXCHANGE_ACCOUNTDISCLAIMERID", AccountID);
|
||||
TaskManager.StartTask("EXCHANGE", "SET_EXCHANGE_ACCOUNTDISCLAIMERID", accountID);
|
||||
|
||||
try
|
||||
{
|
||||
ExchangeDisclaimer disclaimer = null;
|
||||
int oldExchangeDisclaimerId = GetExchangeAccountDisclaimerId(itemId, accountID);
|
||||
|
||||
if (ExchangeDisclaimerId != -1)
|
||||
disclaimer = GetExchangeDisclaimer(itemId, ExchangeDisclaimerId);
|
||||
ExchangeDisclaimer newDisclaimer = null;
|
||||
ExchangeDisclaimer oldDisclaimer = null;
|
||||
|
||||
if (newExchangeDisclaimerId != -1) newDisclaimer = GetExchangeDisclaimer(itemId, newExchangeDisclaimerId);
|
||||
if (oldExchangeDisclaimerId != -1) oldDisclaimer = GetExchangeDisclaimer(itemId, oldExchangeDisclaimerId);
|
||||
|
||||
// load account
|
||||
ExchangeAccount account = GetAccount(itemId, AccountID);
|
||||
ExchangeAccount account = GetAccount(itemId, accountID);
|
||||
|
||||
Organization org = (Organization)PackageController.GetPackageItem(itemId);
|
||||
if (org == null)
|
||||
return -1;
|
||||
|
||||
if (org == null) return -1;
|
||||
int exchangeServiceId = GetExchangeServiceID(org.PackageId);
|
||||
ExchangeServer exchange = GetExchangeServer(exchangeServiceId, org.ServiceId);
|
||||
|
||||
string transportRuleName = org.Name + "_" + account.PrimaryEmailAddress;
|
||||
// remove old version
|
||||
string oldTransportRuleName = org.Name + "_" + account.PrimaryEmailAddress;
|
||||
exchange.RemoveDisclaimer(oldTransportRuleName);
|
||||
|
||||
exchange.RemoveTransportRule(transportRuleName);
|
||||
// update disclaimer
|
||||
if (newDisclaimer!=null)
|
||||
exchange.SetDisclaimer(newDisclaimer.WSPUniqueName, newDisclaimer.DisclaimerText);
|
||||
|
||||
if (disclaimer != null)
|
||||
if (newExchangeDisclaimerId!=oldExchangeDisclaimerId)
|
||||
{
|
||||
if (!string.IsNullOrEmpty(disclaimer.DisclaimerText))
|
||||
exchange.NewDisclaimerTransportRule(transportRuleName, account.PrimaryEmailAddress, disclaimer.DisclaimerText);
|
||||
if (oldDisclaimer != null)
|
||||
exchange.RemoveDisclamerMember(oldDisclaimer.WSPUniqueName, account.PrimaryEmailAddress);
|
||||
|
||||
if (newDisclaimer != null)
|
||||
res = exchange.AddDisclamerMember(newDisclaimer.WSPUniqueName, account.PrimaryEmailAddress);
|
||||
|
||||
if (res == 0)
|
||||
DataProvider.SetExchangeAccountDisclaimerId(accountID, newExchangeDisclaimerId);
|
||||
}
|
||||
|
||||
DataProvider.SetExchangeAccountDisclaimerId(AccountID, ExchangeDisclaimerId);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
@ -5723,7 +5760,7 @@ namespace WebsitePanel.EnterpriseServer
|
|||
TaskManager.CompleteTask();
|
||||
}
|
||||
|
||||
return 0;
|
||||
return res;
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -29,6 +29,7 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
|
||||
namespace WebsitePanel.Providers.HostedSolution
|
||||
{
|
||||
|
@ -63,5 +64,14 @@ namespace WebsitePanel.Providers.HostedSolution
|
|||
set { this.disclaimerText = value; }
|
||||
}
|
||||
|
||||
public string WSPUniqueName
|
||||
{
|
||||
get
|
||||
{
|
||||
Regex r = new Regex(@"[^A-Za-z0-9]");
|
||||
return "WSPDisclaimer" + ExchangeDisclaimerId.ToString() + "_" + r.Replace(DisclaimerName, "");
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
@ -131,8 +131,10 @@ namespace WebsitePanel.Providers.HostedSolution
|
|||
void RemoveDevice(string id);
|
||||
|
||||
// Disclaimers
|
||||
int NewDisclaimerTransportRule(string Name, string From, string Text);
|
||||
int RemoveTransportRule(string Name);
|
||||
int SetDisclaimer(string name, string text);
|
||||
int RemoveDisclaimer(string name);
|
||||
int AddDisclamerMember(string name, string member);
|
||||
int RemoveDisclamerMember(string name, string member);
|
||||
|
||||
// Archiving
|
||||
ResultObject SetMailBoxArchiving(string organizationId, string accountName, bool archive, long archiveQuotaKB, long archiveWarningQuotaKB, string RetentionPolicy);
|
||||
|
|
|
@ -7615,31 +7615,54 @@ namespace WebsitePanel.Providers.HostedSolution
|
|||
|
||||
#region Disclaimers
|
||||
|
||||
public int NewDisclaimerTransportRule(string Name, string From, string Text)
|
||||
{
|
||||
return NewDisclaimerTransportRuleInternal(Name, From, Text);
|
||||
}
|
||||
private const string disclamerMemberPostfix = "_members";
|
||||
|
||||
public int RemoveTransportRule(string Name)
|
||||
public int SetDisclaimer(string name, string text)
|
||||
{
|
||||
return RemoveTransportRuleInternal(Name);
|
||||
}
|
||||
|
||||
internal virtual int NewDisclaimerTransportRuleInternal(string Name, string From, string Text)
|
||||
{
|
||||
ExchangeLog.LogStart("NewDisclaimerTransportRuleInternal");
|
||||
ExchangeLog.LogStart("SetDisclaimer");
|
||||
Runspace runSpace = null;
|
||||
try
|
||||
{
|
||||
runSpace = OpenRunspace();
|
||||
Command cmd = new Command("New-TransportRule");
|
||||
cmd.Parameters.Add("Name", Name);
|
||||
cmd.Parameters.Add("From", From);
|
||||
Command cmd;
|
||||
|
||||
bool distributionGroupExist = false;
|
||||
bool transportRuleExist = false;
|
||||
|
||||
cmd = new Command("Get-DistributionGroup");
|
||||
cmd.Parameters.Add("Identity", name + disclamerMemberPostfix);
|
||||
Collection<PSObject> res = ExecuteShellCommand(runSpace, cmd);
|
||||
distributionGroupExist = (res.Count > 0);
|
||||
|
||||
cmd = new Command("Get-TransportRule");
|
||||
cmd.Parameters.Add("Identity", name);
|
||||
res = ExecuteShellCommand(runSpace, cmd);
|
||||
transportRuleExist = (res.Count > 0);
|
||||
|
||||
if (!distributionGroupExist)
|
||||
{
|
||||
cmd = new Command("New-DistributionGroup");
|
||||
cmd.Parameters.Add("Name", name + disclamerMemberPostfix);
|
||||
ExecuteShellCommand(runSpace, cmd);
|
||||
}
|
||||
|
||||
if (transportRuleExist)
|
||||
{
|
||||
cmd = new Command("Set-TransportRule");
|
||||
cmd.Parameters.Add("Identity", name);
|
||||
}
|
||||
else
|
||||
{
|
||||
cmd = new Command("New-TransportRule");
|
||||
cmd.Parameters.Add("Name", name);
|
||||
}
|
||||
cmd.Parameters.Add("FromMemberOf", name + disclamerMemberPostfix);
|
||||
cmd.Parameters.Add("Enabled", true);
|
||||
cmd.Parameters.Add("ApplyHtmlDisclaimerLocation", "Append");
|
||||
cmd.Parameters.Add("ApplyHtmlDisclaimerText", Text);
|
||||
cmd.Parameters.Add("ApplyHtmlDisclaimerText", text);
|
||||
cmd.Parameters.Add("ApplyHtmlDisclaimerFallbackAction", "Wrap");
|
||||
ExecuteShellCommand(runSpace, cmd);
|
||||
|
||||
}
|
||||
catch (Exception exc)
|
||||
{
|
||||
|
@ -7650,23 +7673,85 @@ namespace WebsitePanel.Providers.HostedSolution
|
|||
{
|
||||
CloseRunspace(runSpace);
|
||||
}
|
||||
ExchangeLog.LogEnd("NewDisclaimerTransportRuleInternal");
|
||||
|
||||
ExchangeLog.LogEnd("SetDisclaimer");
|
||||
return 0;
|
||||
|
||||
}
|
||||
|
||||
internal virtual int RemoveTransportRuleInternal(string Name)
|
||||
public int RemoveDisclaimer(string name)
|
||||
{
|
||||
ExchangeLog.LogStart("RemoveTransportRuleInternal");
|
||||
ExchangeLog.LogStart("RemoveDisclaimer");
|
||||
Runspace runSpace = null;
|
||||
try
|
||||
{
|
||||
runSpace = OpenRunspace();
|
||||
Command cmd = new Command("Remove-TransportRule");
|
||||
cmd.Parameters.Add("Identity", Name);
|
||||
|
||||
Command cmd = new Command("Get-DistributionGroupMember");
|
||||
cmd.Parameters.Add("Identity", name + disclamerMemberPostfix);
|
||||
Collection<PSObject> res = ExecuteShellCommand(runSpace, cmd);
|
||||
if (res.Count > 0)
|
||||
return -1;
|
||||
|
||||
cmd = new Command("Remove-TransportRule");
|
||||
cmd.Parameters.Add("Identity", name);
|
||||
cmd.Parameters.Add("Confirm", new SwitchParameter(false));
|
||||
ExecuteShellCommand(runSpace, cmd);
|
||||
|
||||
cmd = new Command("Remove-DistributionGroup");
|
||||
cmd.Parameters.Add("Identity", name + disclamerMemberPostfix);
|
||||
cmd.Parameters.Add("Confirm", new SwitchParameter(false));
|
||||
ExecuteShellCommand(runSpace, cmd);
|
||||
|
||||
}
|
||||
catch (Exception exc)
|
||||
{
|
||||
ExchangeLog.LogError(exc);
|
||||
return -1;
|
||||
}
|
||||
finally
|
||||
{
|
||||
CloseRunspace(runSpace);
|
||||
}
|
||||
ExchangeLog.LogEnd("RemoveDisclaimer");
|
||||
return 0;
|
||||
}
|
||||
|
||||
public int AddDisclamerMember(string name, string member)
|
||||
{
|
||||
ExchangeLog.LogStart("SetDisclamerMember");
|
||||
Runspace runSpace = null;
|
||||
try
|
||||
{
|
||||
runSpace = OpenRunspace();
|
||||
Command cmd = new Command("Add-DistributionGroupMember");
|
||||
cmd.Parameters.Add("Identity", name + disclamerMemberPostfix);
|
||||
cmd.Parameters.Add("Member", member);
|
||||
ExecuteShellCommand(runSpace, cmd);
|
||||
|
||||
}
|
||||
catch (Exception exc)
|
||||
{
|
||||
ExchangeLog.LogError(exc);
|
||||
return -1;
|
||||
}
|
||||
finally
|
||||
{
|
||||
CloseRunspace(runSpace);
|
||||
}
|
||||
ExchangeLog.LogEnd("SetDisclamerMember");
|
||||
return 0;
|
||||
}
|
||||
|
||||
public int RemoveDisclamerMember(string name, string member)
|
||||
{
|
||||
ExchangeLog.LogStart("RemoveDisclamerMember");
|
||||
Runspace runSpace = null;
|
||||
try
|
||||
{
|
||||
runSpace = OpenRunspace();
|
||||
Command cmd = new Command("Remove-DistributionGroupMember");
|
||||
cmd.Parameters.Add("Identity", name + disclamerMemberPostfix);
|
||||
cmd.Parameters.Add("Member", member);
|
||||
ExecuteShellCommand(runSpace, cmd);
|
||||
}
|
||||
catch (Exception exc)
|
||||
{
|
||||
|
@ -7677,8 +7762,7 @@ namespace WebsitePanel.Providers.HostedSolution
|
|||
{
|
||||
CloseRunspace(runSpace);
|
||||
}
|
||||
ExchangeLog.LogEnd("RemoveTransportRuleInternal");
|
||||
|
||||
ExchangeLog.LogEnd("RemoveDisclamerMember");
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
|
@ -6933,31 +6933,143 @@ namespace WebsitePanel.Providers.HostedSolution
|
|||
|
||||
#region Disclaimers
|
||||
|
||||
public int NewDisclaimerTransportRule(string Name, string From, string Text)
|
||||
{
|
||||
return NewDisclaimerTransportRuleInternal(Name, From, Text);
|
||||
}
|
||||
private const string disclamerMemberPostfix = "_members";
|
||||
|
||||
public int RemoveTransportRule(string Name)
|
||||
public int SetDisclaimer(string name, string text)
|
||||
{
|
||||
return RemoveTransportRuleInternal(Name);
|
||||
}
|
||||
|
||||
internal virtual int NewDisclaimerTransportRuleInternal(string Name, string From, string Text)
|
||||
{
|
||||
ExchangeLog.LogStart("NewDisclaimerTransportRuleInternal");
|
||||
ExchangeLog.LogStart("SetDisclaimer");
|
||||
Runspace runSpace = null;
|
||||
try
|
||||
{
|
||||
runSpace = OpenRunspace();
|
||||
Command cmd = new Command("New-TransportRule");
|
||||
cmd.Parameters.Add("Name", Name);
|
||||
cmd.Parameters.Add("From", From);
|
||||
Command cmd;
|
||||
|
||||
bool distributionGroupExist = false;
|
||||
bool transportRuleExist = false;
|
||||
|
||||
cmd = new Command("Get-DistributionGroup");
|
||||
cmd.Parameters.Add("Identity", name + disclamerMemberPostfix);
|
||||
Collection<PSObject> res = ExecuteShellCommand(runSpace, cmd);
|
||||
distributionGroupExist = (res.Count > 0);
|
||||
|
||||
cmd = new Command("Get-TransportRule");
|
||||
cmd.Parameters.Add("Identity", name);
|
||||
res = ExecuteShellCommand(runSpace, cmd);
|
||||
transportRuleExist = (res.Count > 0);
|
||||
|
||||
if (!distributionGroupExist)
|
||||
{
|
||||
cmd = new Command("New-DistributionGroup");
|
||||
cmd.Parameters.Add("Name", name + disclamerMemberPostfix);
|
||||
ExecuteShellCommand(runSpace, cmd);
|
||||
}
|
||||
|
||||
if (transportRuleExist)
|
||||
{
|
||||
cmd = new Command("Set-TransportRule");
|
||||
cmd.Parameters.Add("Identity", name);
|
||||
}
|
||||
else
|
||||
{
|
||||
cmd = new Command("New-TransportRule");
|
||||
cmd.Parameters.Add("Name", name);
|
||||
}
|
||||
cmd.Parameters.Add("FromMemberOf", name + disclamerMemberPostfix);
|
||||
cmd.Parameters.Add("Enabled", true);
|
||||
cmd.Parameters.Add("ApplyHtmlDisclaimerLocation", "Append");
|
||||
cmd.Parameters.Add("ApplyHtmlDisclaimerText", Text);
|
||||
cmd.Parameters.Add("ApplyHtmlDisclaimerText", text);
|
||||
cmd.Parameters.Add("ApplyHtmlDisclaimerFallbackAction", "Wrap");
|
||||
ExecuteShellCommand(runSpace, cmd);
|
||||
|
||||
}
|
||||
catch (Exception exc)
|
||||
{
|
||||
ExchangeLog.LogError(exc);
|
||||
return -1;
|
||||
}
|
||||
finally
|
||||
{
|
||||
CloseRunspace(runSpace);
|
||||
}
|
||||
ExchangeLog.LogEnd("SetDisclaimer");
|
||||
return 0;
|
||||
}
|
||||
|
||||
public int RemoveDisclaimer(string name)
|
||||
{
|
||||
ExchangeLog.LogStart("RemoveDisclaimer");
|
||||
Runspace runSpace = null;
|
||||
try
|
||||
{
|
||||
runSpace = OpenRunspace();
|
||||
|
||||
Command cmd = new Command("Get-DistributionGroupMember");
|
||||
cmd.Parameters.Add("Identity", name + disclamerMemberPostfix);
|
||||
Collection<PSObject> res = ExecuteShellCommand(runSpace, cmd);
|
||||
if (res.Count > 0)
|
||||
return -1;
|
||||
|
||||
cmd = new Command("Remove-TransportRule");
|
||||
cmd.Parameters.Add("Identity", name);
|
||||
cmd.Parameters.Add("Confirm", new SwitchParameter(false));
|
||||
ExecuteShellCommand(runSpace, cmd);
|
||||
|
||||
cmd = new Command("Remove-DistributionGroup");
|
||||
cmd.Parameters.Add("Identity", name + disclamerMemberPostfix);
|
||||
cmd.Parameters.Add("Confirm", new SwitchParameter(false));
|
||||
ExecuteShellCommand(runSpace, cmd);
|
||||
|
||||
}
|
||||
catch (Exception exc)
|
||||
{
|
||||
ExchangeLog.LogError(exc);
|
||||
return -1;
|
||||
}
|
||||
finally
|
||||
{
|
||||
CloseRunspace(runSpace);
|
||||
}
|
||||
ExchangeLog.LogEnd("RemoveDisclaimer");
|
||||
return 0;
|
||||
}
|
||||
|
||||
public int AddDisclamerMember(string name, string member)
|
||||
{
|
||||
ExchangeLog.LogStart("SetDisclamerMember");
|
||||
Runspace runSpace = null;
|
||||
try
|
||||
{
|
||||
runSpace = OpenRunspace();
|
||||
Command cmd = new Command("Add-DistributionGroupMember");
|
||||
cmd.Parameters.Add("Identity", name + disclamerMemberPostfix);
|
||||
cmd.Parameters.Add("Member", member);
|
||||
ExecuteShellCommand(runSpace, cmd);
|
||||
|
||||
}
|
||||
catch (Exception exc)
|
||||
{
|
||||
ExchangeLog.LogError(exc);
|
||||
return -1;
|
||||
}
|
||||
finally
|
||||
{
|
||||
CloseRunspace(runSpace);
|
||||
}
|
||||
ExchangeLog.LogEnd("SetDisclamerMember");
|
||||
return 0;
|
||||
}
|
||||
|
||||
public int RemoveDisclamerMember(string name, string member)
|
||||
{
|
||||
ExchangeLog.LogStart("RemoveDisclamerMember");
|
||||
Runspace runSpace = null;
|
||||
try
|
||||
{
|
||||
runSpace = OpenRunspace();
|
||||
Command cmd = new Command("Remove-DistributionGroupMember");
|
||||
cmd.Parameters.Add("Identity", name + disclamerMemberPostfix);
|
||||
cmd.Parameters.Add("Member", member);
|
||||
ExecuteShellCommand(runSpace, cmd);
|
||||
}
|
||||
catch (Exception exc)
|
||||
{
|
||||
|
@ -6968,38 +7080,11 @@ namespace WebsitePanel.Providers.HostedSolution
|
|||
{
|
||||
CloseRunspace(runSpace);
|
||||
}
|
||||
ExchangeLog.LogEnd("NewDisclaimerTransportRuleInternal");
|
||||
|
||||
return 0;
|
||||
|
||||
}
|
||||
|
||||
internal virtual int RemoveTransportRuleInternal(string Name)
|
||||
{
|
||||
ExchangeLog.LogStart("RemoveTransportRuleInternal");
|
||||
Runspace runSpace = null;
|
||||
try
|
||||
{
|
||||
runSpace = OpenRunspace();
|
||||
Command cmd = new Command("Remove-TransportRule");
|
||||
cmd.Parameters.Add("Identity", Name);
|
||||
cmd.Parameters.Add("Confirm", false);
|
||||
ExecuteShellCommand(runSpace, cmd);
|
||||
}
|
||||
catch(Exception exc)
|
||||
{
|
||||
ExchangeLog.LogError(exc);
|
||||
return -1;
|
||||
}
|
||||
finally
|
||||
{
|
||||
CloseRunspace(runSpace);
|
||||
}
|
||||
ExchangeLog.LogEnd("RemoveTransportRuleInternal");
|
||||
|
||||
ExchangeLog.LogEnd("RemoveDisclamerMember");
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
#region Archiving
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -823,15 +823,27 @@ namespace WebsitePanel.Server
|
|||
#region Disclaimers
|
||||
|
||||
[WebMethod, SoapHeader("settings")]
|
||||
public int NewDisclaimerTransportRule(string Name, string From, string Text)
|
||||
public int SetDisclaimer(string name, string text)
|
||||
{
|
||||
return ES.NewDisclaimerTransportRule(Name, From, Text);
|
||||
return ES.SetDisclaimer(name, text);
|
||||
}
|
||||
|
||||
[WebMethod, SoapHeader("settings")]
|
||||
public int RemoveTransportRule(string Name)
|
||||
public int RemoveDisclaimer(string name)
|
||||
{
|
||||
return ES.RemoveTransportRule(Name);
|
||||
return ES.RemoveDisclaimer(name);
|
||||
}
|
||||
|
||||
[WebMethod, SoapHeader("settings")]
|
||||
public int AddDisclamerMember(string name, string member)
|
||||
{
|
||||
return ES.AddDisclamerMember(name, member);
|
||||
}
|
||||
|
||||
[WebMethod, SoapHeader("settings")]
|
||||
public int RemoveDisclamerMember(string name, string member)
|
||||
{
|
||||
return ES.RemoveDisclamerMember(name, member);
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue