diff --git a/WebsitePanel.Installer/Sources/Setup.WIXInstaller/Product.wxs b/WebsitePanel.Installer/Sources/Setup.WIXInstaller/Product.wxs
index 6d4f921b..ebf7abe3 100644
--- a/WebsitePanel.Installer/Sources/Setup.WIXInstaller/Product.wxs
+++ b/WebsitePanel.Installer/Sources/Setup.WIXInstaller/Product.wxs
@@ -596,13 +596,13 @@
-
+
-
+
-
+
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Setup/Internal/Adapter.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Setup/Internal/Adapter.cs
index ea1913ec..1c873917 100644
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Setup/Internal/Adapter.cs
+++ b/WebsitePanel.Installer/Sources/WebsitePanel.Setup/Internal/Adapter.cs
@@ -3928,6 +3928,13 @@ namespace WebsitePanel.Setup.Internal
{
try
{
+ XmlDocumentMerge.KeyAttributes = new List { "name", "id", "key", "pageID", "localName", "xmlns", "privatePath", "moduleDefinitionID", "ref", "verb;path", "controlRenderingCompatibilityVersion;clientIDMode" };
+ XmlDocumentMerge.FrozenAttributes = new List
+ {
+ new XmlDocumentMerge.FrozenAttrTag() { Path="configuration/microsoft.web.services3/security/securityTokenManager/add", Attributes = new List() {"localName"} },
+ new XmlDocumentMerge.FrozenAttrTag(true) { Path="compilation", Attributes = new List() {"targetFramework"} },
+ new XmlDocumentMerge.FrozenAttrTag() { Path="configuration/startup/supportedRuntime", Attributes = new List() {"version", "sku" } }
+ };
Log.WriteStart("RestoreXmlConfigs");
var Backup = BackupRestore.Find(Ctx.InstallerFolder, Global.DefaultProductName, Ctx.ComponentName);
switch(Ctx.ComponentCode)
@@ -3940,21 +3947,13 @@ namespace WebsitePanel.Setup.Internal
case Global.EntServer.ComponentCode:
{
Backup.XmlFiles.Add("Web.config");
+ Backup.XmlFiles.Add(@"bin\WebsitePanel.SchedulerService.exe.config");
}
break;
case Global.WebPortal.ComponentCode:
{
Backup.XmlFiles.Add("Web.config");
- Backup.XmlFiles.Add(@"App_Data\Countries.config");
- Backup.XmlFiles.Add(@"App_Data\CountryStates.config");
- Backup.XmlFiles.Add(@"App_Data\Ecommerce_Modules.config");
- Backup.XmlFiles.Add(@"App_Data\Ecommerce_Pages.config");
- Backup.XmlFiles.Add(@"App_Data\ESModule_ControlsHierarchy.config");
- Backup.XmlFiles.Add(@"App_Data\ModulesData.config");
Backup.XmlFiles.Add(@"App_Data\SiteSettings.config");
- Backup.XmlFiles.Add(@"App_Data\SupportedLocales.config");
- Backup.XmlFiles.Add(@"App_Data\SupportedThemes.config");
- Backup.XmlFiles.Add(@"App_Data\WebsitePanel_Modules.config");
Backup.XmlFiles.Add(@"App_Data\WebsitePanel_Pages.config");
}
break;
diff --git a/WebsitePanel.Installer/Sources/WebsitePanel.Setup/Internal/XmlDocumentMerge.cs b/WebsitePanel.Installer/Sources/WebsitePanel.Setup/Internal/XmlDocumentMerge.cs
index 4c4511c4..50a10dce 100644
--- a/WebsitePanel.Installer/Sources/WebsitePanel.Setup/Internal/XmlDocumentMerge.cs
+++ b/WebsitePanel.Installer/Sources/WebsitePanel.Setup/Internal/XmlDocumentMerge.cs
@@ -8,14 +8,46 @@ namespace WebsitePanel.Setup.Internal
{
public static class XmlDocumentMerge
{
+ public class AttrTag
+ {
+ public AttrTag()
+ : this(null)
+ {
+
+ }
+ public AttrTag(params string[] Attributes)
+ {
+ this.Attributes = Attributes;
+ Priority = Attributes == null ? 0 : (ulong)Attributes.LongLength;
+ }
+ public ulong Priority { get; private set; }
+ public string[] Attributes;
+ }
+ public class FrozenAttrTag
+ {
+ public FrozenAttrTag()
+ : this(false)
+ {
+
+ }
+ public FrozenAttrTag(bool Relative)
+ {
+ IsRelative = Relative;
+ }
+ public string Path { get; set; }
+ public IList Attributes { get; set; }
+ public bool IsRelative { get; private set; }
+ }
const string SuccessFormat = "Success: {0}.";
const string ErrorFormat = "Error: {0}.";
const string MergeCompleted = "XmlDocumentMerge completed";
static XmlDocumentMerge()
{
- KeyAttributes = new List { "name", "id", "key" };
+ KeyAttributes = new List();
+ FrozenAttributes = new List();
}
- public static List KeyAttributes { get; set; }
+ public static IList KeyAttributes { get; set; }
+ public static IList FrozenAttributes { get; set; }
public static string Process(string Src, string Dst, string SaveTo = "")
{
var Result = string.Empty;
@@ -83,57 +115,97 @@ namespace WebsitePanel.Setup.Internal
}
private static string NodeView(XPathNavigator Navi)
{
- foreach (var Attr in KeyAttributes)
+ foreach (var Item in GetProcessingChain(KeyAttributes))
{
- var Value = Navi.GetAttribute(Attr, string.Empty);
- if (!string.IsNullOrWhiteSpace(Value))
- return string.Format("{0}[@{1}='{2}']", Navi.Name, Attr, Value);
+ string Result = string.Empty;
+ foreach (var Attr in Item.Attributes)
+ {
+ var Value = Navi.GetAttribute(Attr, string.Empty);
+ if (string.IsNullOrWhiteSpace(Value))
+ {
+ Result = string.Empty;
+ continue;
+ }
+ else
+ {
+ if (string.IsNullOrWhiteSpace(Result))
+ Result = string.Format("@{0}='{1}'", Attr, Value);
+ else
+ Result = string.Format("{0} and @{1}='{2}'", Result, Attr, Value);
+ }
+ }
+ if (!string.IsNullOrWhiteSpace(Result))
+ return string.Format("{0}[{1}]", Navi.Name, Result);
}
return Navi.Name;
}
private static void Merge(XPathNavigator DstNavi, XmlDocument SrcDoc, string Parent)
{
- if (DstNavi.NodeType == XPathNodeType.Element)
+ var Current = NodePath(Parent, NodeView(DstNavi));
+ if (!string.IsNullOrWhiteSpace(Current))
{
- var SrcElem = SrcDoc.SelectSingleNode(NodePath(Parent, NodeView(DstNavi)));
- if (SrcElem != null)
+ if (DstNavi.NodeType == XPathNodeType.Element)
{
- if (DstNavi.MoveToFirstAttribute())
+ var SrcElem = SrcDoc.SelectSingleNode(Current);
+ if (SrcElem != null)
{
- do
+ var Frozen = GetFrozenAttributes(Current, FrozenAttributes);
+ if (DstNavi.MoveToFirstAttribute())
{
- var SrcElemAttr = SrcElem.Attributes[DstNavi.LocalName];
- if (SrcElemAttr != null)
- DstNavi.SetValue(SrcElemAttr.Value);
+ do
+ {
+ var SrcElemAttr = SrcElem.Attributes[DstNavi.LocalName];
+ if (SrcElemAttr != null && CanProcess(DstNavi.LocalName, Frozen))
+ DstNavi.SetValue(SrcElemAttr.Value);
+ }
+ while (DstNavi.MoveToNextAttribute());
+ DstNavi.MoveToParent();
}
- while (DstNavi.MoveToNextAttribute());
- DstNavi.MoveToParent();
}
}
- }
- else if (DstNavi.NodeType == XPathNodeType.Text)
- {
- var SrcElem = SrcDoc.SelectSingleNode(NodePath(Parent, NodeView(DstNavi)));
- if (SrcElem != null)
- DstNavi.SetValue(SrcElem.InnerText);
- }
- var Here = NodeView(DstNavi);
- if (DstNavi.MoveToFirstChild())
- {
- do
+ else if (DstNavi.NodeType == XPathNodeType.Text)
{
- Merge(DstNavi, SrcDoc, NodePath(Parent, Here));
+ var SrcElem = SrcDoc.SelectSingleNode(Current);
+ if (SrcElem != null)
+ DstNavi.SetValue(SrcElem.InnerText);
+ }
+ if (DstNavi.MoveToFirstChild())
+ {
+ do
+ {
+ Merge(DstNavi, SrcDoc, Current);
+ }
+ while (DstNavi.MoveToNext());
+ DstNavi.MoveToParent();
+ }
+ else if (DstNavi.NodeType == XPathNodeType.Element)
+ {
+ var SrcElem = SrcDoc.SelectSingleNode(Current);
+ if (SrcElem != null && !string.IsNullOrWhiteSpace(SrcElem.InnerXml))
+ foreach (XmlNode Child in SrcElem.ChildNodes)
+ DstNavi.AppendChild(Child.CloneNode(true).CreateNavigator());
}
- while (DstNavi.MoveToNext());
- DstNavi.MoveToParent();
- }
- else if (DstNavi.NodeType == XPathNodeType.Element)
- {
- var SrcElem = SrcDoc.SelectSingleNode(NodePath(Parent, Here));
- if (SrcElem != null && !string.IsNullOrWhiteSpace(SrcElem.InnerXml))
- foreach (XmlNode Child in SrcElem.ChildNodes)
- DstNavi.AppendChild(Child.CloneNode(true).CreateNavigator());
}
}
+ private static IList GetProcessingChain(IEnumerable Attributes)
+ {
+ var Delimiter = ";";
+ var Chain = new List();
+ foreach (var Attribute in Attributes)
+ Chain.Add(new AttrTag(Attribute.Split(new string[] { Delimiter }, StringSplitOptions.RemoveEmptyEntries)));
+ Chain.Sort(delegate(AttrTag a, AttrTag b) { return a.Priority == b.Priority ? 0 : a.Priority > b.Priority ? -1 : 1; });
+ return Chain;
+ }
+ private static FrozenAttrTag GetFrozenAttributes(string Path, IEnumerable Frozens)
+ {
+ foreach (var Frozen in Frozens)
+ if (Frozen.IsRelative ? Path.IndexOf(Frozen.Path, 1) == -1 : Path.StartsWith(Frozen.Path))
+ return Frozen;
+ return null;
+ }
+ private static bool CanProcess(string Name, FrozenAttrTag Frozen)
+ {
+ return Frozen == null ? true : !Frozen.Attributes.Contains(Name);
+ }
}
}
diff --git a/WebsitePanel/Database/wix_install_db.sql b/WebsitePanel/Database/wix_install_db.sql
index a058e413..01122d13 100644
--- a/WebsitePanel/Database/wix_install_db.sql
+++ b/WebsitePanel/Database/wix_install_db.sql
@@ -44364,7 +44364,7 @@ Hello #user.FirstName#,
-Please, find below details of your control panel account.
+Please, find below details of your control panel account. The one time password was generated for you. You should change the password after login.
Control Panel URL
@@ -44373,7 +44373,7 @@ Please, find below details of your control panel account.
Control Panel URL |
Username |
- Password |
+ One Time Password |
@@ -44411,11 +44411,11 @@ INSERT [dbo].[UserSettings] ([UserID], [SettingsName], [PropertyName], [Property
Hello #user.FirstName#,
-Please, find below details of your control panel account.
+Please, find below details of your control panel account. The one time password was generated for you. You should change the password after login.
Control Panel URL: http://panel.AcmeHosting.com
Username: #user.Username#
-Password: #user.Password#
+One Time Password: #user.Password#
If you have any questions regarding your hosting account, feel free to contact our support department at any time.
diff --git a/WebsitePanel/Database/wix_update_db.sql b/WebsitePanel/Database/wix_update_db.sql
index 4131b41b..deb9d711 100644
--- a/WebsitePanel/Database/wix_update_db.sql
+++ b/WebsitePanel/Database/wix_update_db.sql
@@ -73,7 +73,7 @@ GO
-ALTER PROCEDURE [dbo].[AddExchangeMailboxPlan]
+ALTER PROCEDURE [dbo].[AddExchangeMailboxPlan]
(
@MailboxPlanId int OUTPUT,
@ItemID int,
@@ -181,7 +181,7 @@ GO
-ALTER PROCEDURE [dbo].[UpdateExchangeMailboxPlan]
+ALTER PROCEDURE [dbo].[UpdateExchangeMailboxPlan]
(
@MailboxPlanId int,
@MailboxPlan nvarchar(300),
@@ -229,19 +229,19 @@ UPDATE ExchangeMailboxPlans SET
MailboxPlanType = @MailboxPlanType,
AllowLitigationHold = @AllowLitigationHold,
RecoverableItemsWarningPct = @RecoverableItemsWarningPct,
- RecoverableItemsSpace = @RecoverableItemsSpace,
+ RecoverableItemsSpace = @RecoverableItemsSpace,
LitigationHoldUrl = @LitigationHoldUrl,
LitigationHoldMsg = @LitigationHoldMsg
WHERE MailboxPlanId = @MailboxPlanId
RETURN
-
+
GO
-ALTER PROCEDURE [dbo].[GetExchangeMailboxPlan]
+ALTER PROCEDURE [dbo].[GetExchangeMailboxPlan]
(
@MailboxPlanId int
)
@@ -281,7 +281,7 @@ GO
-ALTER PROCEDURE [dbo].[GetExchangeOrganizationStatistics]
+ALTER PROCEDURE [dbo].[GetExchangeOrganizationStatistics]
(
@ItemID int
)
@@ -296,7 +296,7 @@ SELECT
(SELECT COUNT(*) FROM ExchangeAccounts WHERE AccountType = 4 AND ItemID = @ItemID) AS CreatedPublicFolders,
(SELECT COUNT(*) FROM ExchangeOrganizationDomains WHERE ItemID = @ItemID) AS CreatedDomains,
(SELECT MIN(B.MailboxSizeMB) FROM ExchangeAccounts AS A INNER JOIN ExchangeMailboxPlans AS B ON A.MailboxPlanId = B.MailboxPlanId WHERE A.ItemID=@ItemID) AS UsedDiskSpace,
- (SELECT MIN(B.RecoverableItemsSpace) FROM ExchangeAccounts AS A INNER JOIN ExchangeMailboxPlans AS B ON A.MailboxPlanId = B.MailboxPlanId WHERE A.ItemID=@ItemID) AS UsedLitigationHoldSpace
+ (SELECT MIN(B.RecoverableItemsSpace) FROM ExchangeAccounts AS A INNER JOIN ExchangeMailboxPlans AS B ON A.MailboxPlanId = B.MailboxPlanId WHERE A.ItemID=@ItemID) AS UsedLitigationHoldSpace
END
ELSE
BEGIN
@@ -307,7 +307,7 @@ SELECT
(SELECT COUNT(*) FROM ExchangeAccounts WHERE AccountType = 4 AND ItemID = @ItemID) AS CreatedPublicFolders,
(SELECT COUNT(*) FROM ExchangeOrganizationDomains WHERE ItemID = @ItemID) AS CreatedDomains,
(SELECT SUM(B.MailboxSizeMB) FROM ExchangeAccounts AS A INNER JOIN ExchangeMailboxPlans AS B ON A.MailboxPlanId = B.MailboxPlanId WHERE A.ItemID=@ItemID) AS UsedDiskSpace,
- (SELECT SUM(B.RecoverableItemsSpace) FROM ExchangeAccounts AS A INNER JOIN ExchangeMailboxPlans AS B ON A.MailboxPlanId = B.MailboxPlanId WHERE A.ItemID=@ItemID) AS UsedLitigationHoldSpace
+ (SELECT SUM(B.RecoverableItemsSpace) FROM ExchangeAccounts AS A INNER JOIN ExchangeMailboxPlans AS B ON A.MailboxPlanId = B.MailboxPlanId WHERE A.ItemID=@ItemID) AS UsedLitigationHoldSpace
END
@@ -384,7 +384,7 @@ EXEC sp_xml_preparedocument @idoc OUTPUT, @xml
-- Execute a SELECT statement that uses the OPENXML rowset provider.
DELETE FROM ServiceProperties
-WHERE ServiceID = @ServiceID
+WHERE ServiceID = @ServiceID
AND PropertyName COLLATE Latin1_General_CI_AS IN
(
SELECT PropertyName
@@ -402,7 +402,7 @@ SELECT
@ServiceID,
PropertyName,
PropertyValue
-FROM OPENXML(@idoc, '/properties/property',1) WITH
+FROM OPENXML(@idoc, '/properties/property',1) WITH
(
PropertyName nvarchar(50) '@name',
PropertyValue nvarchar(1000) '@value'
@@ -412,7 +412,7 @@ FROM OPENXML(@idoc, '/properties/property',1) WITH
exec sp_xml_removedocument @idoc
COMMIT TRAN
-RETURN
+RETURN
GO
IF NOT EXISTS (SELECT * FROM [dbo].[Providers] WHERE [DisplayName] = 'Hosted MS CRM 2011')
@@ -462,8 +462,8 @@ END
GO
-------------------------------- Scheduler Service------------------------------------------------------
-IF EXISTS( SELECT * FROM INFORMATION_SCHEMA.COLUMNS
- WHERE TABLE_NAME = 'Schedule'
+IF EXISTS( SELECT * FROM INFORMATION_SCHEMA.COLUMNS
+ WHERE TABLE_NAME = 'Schedule'
AND COLUMN_NAME = 'LastFinish')
ALTER TABLE Schedule
DROP COLUMN LastFinish
@@ -583,7 +583,7 @@ SELECT
FROM Schedule AS S
INNER JOIN PackagesTree(@PackageID, @Recursive) AS PT ON S.PackageID = PT.PackageID
ORDER BY S.Enabled DESC, S.NextRun
-
+
-- select schedules
SELECT
@@ -653,9 +653,17 @@ RAISERROR('You are not allowed to access this package', 16, 1)
DECLARE @condition nvarchar(400)
SET @condition = ' 1 = 1 '
-IF @FilterColumn <> '' AND @FilterColumn IS NOT NULL
-AND @FilterValue <> '' AND @FilterValue IS NOT NULL
-SET @condition = @condition + ' AND ' + @FilterColumn + ' LIKE ''' + @FilterValue + ''''
+IF @FilterValue <> '' AND @FilterValue IS NOT NULL
+BEGIN
+ IF @FilterColumn <> '' AND @FilterColumn IS NOT NULL
+ SET @condition = @condition + ' AND ' + @FilterColumn + ' LIKE ''' + @FilterValue + ''''
+ ELSE
+ SET @condition = @condition + '
+ AND (ScheduleName LIKE ''' + @FilterValue + '''
+ OR Username LIKE ''' + @FilterValue + '''
+ OR FullName LIKE ''' + @FilterValue + '''
+ OR Email LIKE ''' + @FilterValue + ''')'
+END
IF @SortColumn IS NULL OR @SortColumn = ''
SET @SortColumn = 'S.ScheduleName ASC'
@@ -711,7 +719,7 @@ SELECT
-- packages
P.PackageID,
P.PackageName,
-
+
-- user
P.UserID,
U.Username,
@@ -783,7 +791,7 @@ SET
WeekMonthDay = @WeekMonthDay
WHERE
ScheduleID = @ScheduleID
-
+
DECLARE @idoc int
--Create an internal representation of the XML document.
EXEC sp_xml_preparedocument @idoc OUTPUT, @XmlParameters
@@ -802,7 +810,7 @@ SELECT
@ScheduleID,
ParameterID,
ParameterValue
-FROM OPENXML(@idoc, '/parameters/parameter',1) WITH
+FROM OPENXML(@idoc, '/parameters/parameter',1) WITH
(
ParameterID nvarchar(50) '@id',
ParameterValue nvarchar(3000) '@value'
@@ -1008,7 +1016,7 @@ SELECT TOP 1
FROM BackgroundTasks AS T
INNER JOIN BackgroundTaskStack AS TS
ON TS.TaskId = T.ID
-WHERE T.TaskID = @TaskID
+WHERE T.TaskID = @TaskID
GO
IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'GetBackgroundTasks')
@@ -1031,7 +1039,7 @@ AS
inner join Users C on P.id = C.OwnerID
)
-SELECT
+SELECT
T.ID,
T.Guid,
T.TaskID,
@@ -1381,7 +1389,7 @@ DROP PROCEDURE GetProcessBackgroundTasks
GO
CREATE PROCEDURE [dbo].[GetProcessBackgroundTasks]
-(
+(
@Status INT
)
AS
@@ -1507,7 +1515,7 @@ SELECT
FROM
ExchangeDisclaimers
WHERE
- ItemID = @ItemID
+ ItemID = @ItemID
ORDER BY DisclaimerName
RETURN'
END
@@ -1533,7 +1541,7 @@ GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE type_desc = N'SQL_STORED_PROCEDURE' AND name = N'UpdateExchangeDisclaimer')
BEGIN
-EXEC sp_executesql N' CREATE PROCEDURE [dbo].[UpdateExchangeDisclaimer]
+EXEC sp_executesql N' CREATE PROCEDURE [dbo].[UpdateExchangeDisclaimer]
(
@ExchangeDisclaimerId int,
@DisclaimerName nvarchar(300),
@@ -1555,7 +1563,7 @@ GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE type_desc = N'SQL_STORED_PROCEDURE' AND name = N'AddExchangeDisclaimer')
BEGIN
-EXEC sp_executesql N'CREATE PROCEDURE [dbo].[AddExchangeDisclaimer]
+EXEC sp_executesql N'CREATE PROCEDURE [dbo].[AddExchangeDisclaimer]
(
@ExchangeDisclaimerId int OUTPUT,
@ItemID int,
@@ -1588,7 +1596,7 @@ GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE type_desc = N'SQL_STORED_PROCEDURE' AND name = N'GetExchangeDisclaimer')
BEGIN
-EXEC sp_executesql N'CREATE PROCEDURE [dbo].[GetExchangeDisclaimer]
+EXEC sp_executesql N'CREATE PROCEDURE [dbo].[GetExchangeDisclaimer]
(
@ExchangeDisclaimerId int
)
@@ -1621,7 +1629,7 @@ Go
IF NOT EXISTS (SELECT * FROM sys.objects WHERE type_desc = N'SQL_STORED_PROCEDURE' AND name = N'SetExchangeAccountDisclaimerId')
BEGIN
-EXEC sp_executesql N' CREATE PROCEDURE [dbo].[SetExchangeAccountDisclaimerId]
+EXEC sp_executesql N' CREATE PROCEDURE [dbo].[SetExchangeAccountDisclaimerId]
(
@AccountID int,
@ExchangeDisclaimerId int
@@ -1637,7 +1645,7 @@ GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE type_desc = N'SQL_STORED_PROCEDURE' AND name = N'GetExchangeAccountDisclaimerId')
BEGIN
-EXEC sp_executesql N'CREATE PROCEDURE [dbo].[GetExchangeAccountDisclaimerId]
+EXEC sp_executesql N'CREATE PROCEDURE [dbo].[GetExchangeAccountDisclaimerId]
(
@AccountID int
)
@@ -1653,10 +1661,10 @@ END
GO
--- add Disclaimers Quota
+-- add Disclaimers Quota
IF NOT EXISTS (SELECT * FROM [dbo].[Quotas] WHERE ([QuotaName] = N'Exchange2007.DisclaimersAllowed'))
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)
+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
@@ -1665,13 +1673,13 @@ GO
--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
+--GO
-- Lync Enterprise Voice
IF NOT EXISTS(select 1 from sys.columns COLS INNER JOIN sys.objects OBJS ON OBJS.object_id=COLS.object_id and OBJS.type='U' AND OBJS.name='LyncUserPlans' AND COLS.name='TelephonyVoicePolicy')
BEGIN
-ALTER TABLE [dbo].[LyncUserPlans] ADD
+ALTER TABLE [dbo].[LyncUserPlans] ADD
[RemoteUserAccess] [bit] NOT NULL DEFAULT 0,
[PublicIMConnectivity] [bit] NOT NULL DEFAULT 0,
@@ -1690,7 +1698,7 @@ ALTER TABLE [dbo].[LyncUserPlans] ADD
END
Go
---
+--
DROP PROCEDURE GetLyncUserPlan;
@@ -1722,7 +1730,7 @@ GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE type_desc = N'SQL_STORED_PROCEDURE' AND name = N'UpdateLyncUserPlan')
BEGIN
-EXEC sp_executesql N' CREATE PROCEDURE [dbo].[UpdateLyncUserPlan]
+EXEC sp_executesql N' CREATE PROCEDURE [dbo].[UpdateLyncUserPlan]
(
@LyncUserPlanId int,
@LyncUserPlanName nvarchar(300),
@@ -1744,9 +1752,9 @@ EXEC sp_executesql N' CREATE PROCEDURE [dbo].[UpdateLyncUserPlan]
@Telephony int,
@ServerURI nvarchar(300),
-
+
@ArchivePolicy nvarchar(300),
-
+
@TelephonyDialPlanPolicy nvarchar(300),
@TelephonyVoicePolicy nvarchar(300)
)
@@ -1772,7 +1780,7 @@ UPDATE LyncUserPlans SET
Telephony = @Telephony,
ServerURI = @ServerURI,
-
+
ArchivePolicy = @ArchivePolicy,
TelephonyDialPlanPolicy = @TelephonyDialPlanPolicy,
TelephonyVoicePolicy = @TelephonyVoicePolicy
@@ -1788,7 +1796,7 @@ GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE type_desc = N'SQL_STORED_PROCEDURE' AND name = N'AddLyncUserPlan')
BEGIN
-EXEC sp_executesql N'CREATE PROCEDURE [dbo].[AddLyncUserPlan]
+EXEC sp_executesql N'CREATE PROCEDURE [dbo].[AddLyncUserPlan]
(
@LyncUserPlanId int OUTPUT,
@ItemID int,
@@ -1811,7 +1819,7 @@ EXEC sp_executesql N'CREATE PROCEDURE [dbo].[AddLyncUserPlan]
@Telephony int,
@ServerURI nvarchar(300),
-
+
@ArchivePolicy nvarchar(300),
@TelephonyDialPlanPolicy nvarchar(300),
@TelephonyVoicePolicy nvarchar(300)
@@ -1856,7 +1864,7 @@ INSERT INTO LyncUserPlans
Telephony,
ServerURI,
-
+
ArchivePolicy,
TelephonyDialPlanPolicy,
TelephonyVoicePolicy
@@ -1884,7 +1892,7 @@ VALUES
@Telephony,
@ServerURI,
-
+
@ArchivePolicy,
@TelephonyDialPlanPolicy,
@TelephonyVoicePolicy
@@ -1893,7 +1901,7 @@ VALUES
SET @LyncUserPlanId = SCOPE_IDENTITY()
-RETURN'
+RETURN'
END
GO
@@ -1902,7 +1910,7 @@ GO
IF NOT EXISTS (SELECT * FROM sys.objects WHERE type_desc = N'SQL_STORED_PROCEDURE' AND name = N'GetLyncUserPlan')
BEGIN
-EXEC sp_executesql N'CREATE PROCEDURE [dbo].[GetLyncUserPlan]
+EXEC sp_executesql N'CREATE PROCEDURE [dbo].[GetLyncUserPlan]
(
@LyncUserPlanId int
)
@@ -1929,7 +1937,7 @@ SELECT
Telephony,
ServerURI,
-
+
ArchivePolicy,
TelephonyDialPlanPolicy,
TelephonyVoicePolicy
@@ -1946,7 +1954,7 @@ GO
-ALTER PROCEDURE [dbo].[GetLyncUserPlan]
+ALTER PROCEDURE [dbo].[GetLyncUserPlan]
(
@LyncUserPlanId int
)
@@ -1973,7 +1981,7 @@ SELECT
Telephony,
ServerURI,
-
+
ArchivePolicy,
TelephonyDialPlanPolicy,
TelephonyVoicePolicy
@@ -2068,13 +2076,13 @@ AS
INNER JOIN PackagesTreeCache AS PT ON PIP.PackageID = PT.PackageID
WHERE PT.ParentPackageID = @PackageID AND IP.PoolID = 3)
ELSE IF @QuotaID = 319 -- BB Users
- SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
+ SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
INNER JOIN BlackBerryUsers bu ON ea.AccountID = bu.AccountID
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
WHERE pt.ParentPackageID = @PackageID)
ELSE IF @QuotaID = 320 -- OCS Users
- SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
+ SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
INNER JOIN OCSUsers ocs ON ea.AccountID = ocs.AccountID
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
@@ -2088,12 +2096,12 @@ AS
SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts AS ea
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
- WHERE pt.ParentPackageID = @PackageID
+ WHERE pt.ParentPackageID = @PackageID
AND ea.AccountType IN (1)
AND ea.MailboxPlanId IS NOT NULL)
ELSE IF @QuotaID = 77 -- Exchange2007.DiskSpace
- SET @Result = (SELECT SUM(B.MailboxSizeMB) FROM ExchangeAccounts AS ea
- INNER JOIN ExchangeMailboxPlans AS B ON ea.MailboxPlanId = B.MailboxPlanId
+ SET @Result = (SELECT SUM(B.MailboxSizeMB) FROM ExchangeAccounts AS ea
+ INNER JOIN ExchangeMailboxPlans AS B ON ea.MailboxPlanId = B.MailboxPlanId
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
WHERE pt.ParentPackageID = @PackageID)
@@ -2255,11 +2263,11 @@ IF @FilterColumn <> '' AND @FilterColumn IS NOT NULL
AND @FilterValue <> '' AND @FilterValue IS NOT NULL
BEGIN
IF @FilterColumn = 'PrimaryEmailAddress' AND @AccountTypes <> '2'
- BEGIN
+ BEGIN
SET @condition = @condition + ' AND EA.AccountID IN (SELECT EAEA.AccountID FROM ExchangeAccountEmailAddresses EAEA WHERE EAEA.EmailAddress LIKE ''' + @FilterValue + ''')'
END
ELSE
- BEGIN
+ BEGIN
SET @condition = @condition + ' AND ' + @FilterColumn + ' LIKE ''' + @FilterValue + ''''
END
END
@@ -2278,7 +2286,7 @@ SELECT
EA.PrimaryEmailAddress,
EA.MailEnabledPublicFolder,
EA.MailboxPlanId,
- P.MailboxPlan,
+ P.MailboxPlan,
EA.SubscriberNumber,
EA.UserPrincipalName
FROM
@@ -2418,7 +2426,7 @@ GO
IF NOT EXISTS (SELECT * FROM [dbo].[Providers] WHERE [DisplayName] = 'Remote Desktop Services Windows 2012')
BEGIN
-INSERT [dbo].[Providers] ([ProviderId], [GroupId], [ProviderName], [DisplayName], [ProviderType], [EditorControl], [DisableAutoDiscovery])
+INSERT [dbo].[Providers] ([ProviderId], [GroupId], [ProviderName], [DisplayName], [ProviderType], [EditorControl], [DisableAutoDiscovery])
VALUES(1501, 45, N'RemoteDesktopServices2012', N'Remote Desktop Services Windows 2012', N'WebsitePanel.Providers.RemoteDesktopServices.Windows2012,WebsitePanel.Providers.RemoteDesktopServices.Windows2012', N'RDS', 1)
END
GO
@@ -2450,7 +2458,7 @@ BEGIN
-- delete
DELETE FROM PackageIPAddresses
FROM PackageIPAddresses AS PIP
- INNER JOIN OPENXML(@idoc, '/items/item', 1) WITH
+ INNER JOIN OPENXML(@idoc, '/items/item', 1) WITH
(
AddressID int '@id'
) as PV ON PIP.AddressID = PV.AddressID
@@ -2458,17 +2466,17 @@ BEGIN
-- insert
INSERT INTO dbo.PackageIPAddresses
- (
+ (
PackageID,
OrgID,
- AddressID
+ AddressID
)
- SELECT
+ SELECT
@PackageID,
@OrgID,
AddressID
- FROM OPENXML(@idoc, '/items/item', 1) WITH
+ FROM OPENXML(@idoc, '/items/item', 1) WITH
(
AddressID int '@id'
) as PV
@@ -2504,9 +2512,18 @@ AND (@PoolID = 0 OR @PoolID <> 0 AND IP.PoolID = @PoolID)
AND (@OrgID = 0 OR @OrgID <> 0 AND PA.OrgID = @OrgID)
'
-IF @FilterColumn <> '' AND @FilterColumn IS NOT NULL
-AND @FilterValue <> '' AND @FilterValue IS NOT NULL
-SET @condition = @condition + ' AND ' + @FilterColumn + ' LIKE ''' + @FilterValue + ''''
+IF @FilterValue <> '' AND @FilterValue IS NOT NULL
+BEGIN
+ IF @FilterColumn <> '' AND @FilterColumn IS NOT NULL
+ SET @condition = @condition + ' AND ' + @FilterColumn + ' LIKE ''' + @FilterValue + ''''
+ ELSE
+ SET @condition = @condition + '
+ AND (ExternalIP LIKE ''' + @FilterValue + '''
+ OR InternalIP LIKE ''' + @FilterValue + '''
+ OR DefaultGateway LIKE ''' + @FilterValue + '''
+ OR ItemName LIKE ''' + @FilterValue + '''
+ OR Username LIKE ''' + @FilterValue + ''')'
+END
IF @SortColumn IS NULL OR @SortColumn = ''
SET @SortColumn = 'IP.ExternalIP ASC'
@@ -2650,13 +2667,13 @@ GO
BEGIN
UPDATE [dbo].[CRMUsers]
- SET
- CALType = 0 WHERE CALType IS NULL
+ SET
+ CALType = 0 WHERE CALType IS NULL
END
GO
-ALTER PROCEDURE [dbo].[InsertCRMUser]
+ALTER PROCEDURE [dbo].[InsertCRMUser]
(
@ItemID int,
@CrmUserID uniqueidentifier,
@@ -2675,14 +2692,14 @@ INSERT INTO
BusinessUnitID,
CALType
)
-VALUES
+VALUES
(
- @ItemID,
+ @ItemID,
@CrmUserID,
@BusinessUnitID,
@CALType
)
-
+
END
GO
@@ -2701,15 +2718,15 @@ BEGIN
UPDATE [dbo].[CRMUsers]
- SET
+ SET
CALType = @CALType
WHERE AccountID = @ItemID
-
+
END
GO
-ALTER PROCEDURE [dbo].[GetCRMUsersCount]
+ALTER PROCEDURE [dbo].[GetCRMUsersCount]
(
@ItemID int,
@Name nvarchar(400),
@@ -2729,15 +2746,15 @@ BEGIN
SET @Email = '%'
END
-SELECT
- COUNT(ea.AccountID)
-FROM
- ExchangeAccounts ea
-INNER JOIN
- CRMUsers cu
-ON
+SELECT
+ COUNT(ea.AccountID)
+FROM
+ ExchangeAccounts ea
+INNER JOIN
+ CRMUsers cu
+ON
ea.AccountID = cu.AccountID
-WHERE
+WHERE
ea.ItemID = @ItemID AND ea.DisplayName LIKE @Name AND ea.PrimaryEmailAddress LIKE @Email
AND ((cu.CALType = @CALType) OR (@CALType = -1))
END
@@ -2783,17 +2800,17 @@ CREATE PROCEDURE [dbo].[GetPackageIPAddressesCount]
AS
BEGIN
-SELECT
+SELECT
COUNT(PA.PackageAddressID)
-FROM
+FROM
dbo.PackageIPAddresses PA
-INNER JOIN
+INNER JOIN
dbo.IPAddresses AS IP ON PA.AddressID = IP.AddressID
-INNER JOIN
+INNER JOIN
dbo.Packages P ON PA.PackageID = P.PackageID
-INNER JOIN
+INNER JOIN
dbo.Users U ON U.UserID = P.UserID
-LEFT JOIN
+LEFT JOIN
ServiceItems SI ON PA.ItemId = SI.ItemID
WHERE
(@PoolID = 0 OR @PoolID <> 0 AND IP.PoolID = @PoolID)
@@ -2901,13 +2918,13 @@ AS
INNER JOIN PackagesTreeCache AS PT ON PIP.PackageID = PT.PackageID
WHERE PT.ParentPackageID = @PackageID AND IP.PoolID = 3)
ELSE IF @QuotaID = 319 -- BB Users
- SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
+ SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
INNER JOIN BlackBerryUsers bu ON ea.AccountID = bu.AccountID
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
WHERE pt.ParentPackageID = @PackageID)
ELSE IF @QuotaID = 320 -- OCS Users
- SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
+ SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
INNER JOIN OCSUsers ocs ON ea.AccountID = ocs.AccountID
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
@@ -2921,12 +2938,12 @@ AS
SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts AS ea
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
- WHERE pt.ParentPackageID = @PackageID
+ WHERE pt.ParentPackageID = @PackageID
AND ea.AccountType IN (1)
AND ea.MailboxPlanId IS NOT NULL)
ELSE IF @QuotaID = 77 -- Exchange2007.DiskSpace
- SET @Result = (SELECT SUM(B.MailboxSizeMB) FROM ExchangeAccounts AS ea
- INNER JOIN ExchangeMailboxPlans AS B ON ea.MailboxPlanId = B.MailboxPlanId
+ SET @Result = (SELECT SUM(B.MailboxSizeMB) FROM ExchangeAccounts AS ea
+ INNER JOIN ExchangeMailboxPlans AS B ON ea.MailboxPlanId = B.MailboxPlanId
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
WHERE pt.ParentPackageID = @PackageID)
@@ -3213,17 +3230,17 @@ GO
IF EXISTS (SELECT * FROM [dbo].[Quotas] WHERE [QuotaName] = 'HostedSolution.SecurityGroupManagement' AND [QuotaID] = 423)
BEGIN
- UPDATE [dbo].[Quotas]
- SET [QuotaDescription] = N'Security Groups',
+ UPDATE [dbo].[Quotas]
+ SET [QuotaDescription] = N'Security Groups',
[QuotaName] = N'HostedSolution.SecurityGroups',
[QuotaTypeID] = 2
WHERE [QuotaID] = 423
- UPDATE [dbo].[HostingPlanQuotas]
+ UPDATE [dbo].[HostingPlanQuotas]
SET [QuotaValue] = -1
WHERE [QuotaID] = 423
- UPDATE [dbo].[PackageQuotas]
+ UPDATE [dbo].[PackageQuotas]
SET [QuotaValue] = -1
WHERE [QuotaID] = 423
END
@@ -3231,7 +3248,7 @@ ELSE
BEGIN
--add Security Groups Quota
IF NOT EXISTS (SELECT * FROM [dbo].[Quotas] WHERE [QuotaName] = 'HostedSolution.SecurityGroups')
- INSERT [dbo].[Quotas] ([QuotaID], [GroupID],[QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota]) VALUES (423, 13, 5, N'HostedSolution.SecurityGroups', N'Security Groups', 2, 0, NULL, NULL)
+ INSERT [dbo].[Quotas] ([QuotaID], [GroupID],[QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota]) VALUES (423, 13, 5, N'HostedSolution.SecurityGroups', N'Security Groups', 2, 0, NULL, NULL)
END
GO
@@ -3326,13 +3343,13 @@ AS
INNER JOIN PackagesTreeCache AS PT ON PIP.PackageID = PT.PackageID
WHERE PT.ParentPackageID = @PackageID AND IP.PoolID = 3)
ELSE IF @QuotaID = 319 -- BB Users
- SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
+ SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
INNER JOIN BlackBerryUsers bu ON ea.AccountID = bu.AccountID
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
WHERE pt.ParentPackageID = @PackageID)
ELSE IF @QuotaID = 320 -- OCS Users
- SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
+ SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
INNER JOIN OCSUsers ocs ON ea.AccountID = ocs.AccountID
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
@@ -3346,12 +3363,12 @@ AS
SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts AS ea
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
- WHERE pt.ParentPackageID = @PackageID
+ WHERE pt.ParentPackageID = @PackageID
AND ea.AccountType IN (1)
AND ea.MailboxPlanId IS NOT NULL)
ELSE IF @QuotaID = 77 -- Exchange2007.DiskSpace
- SET @Result = (SELECT SUM(B.MailboxSizeMB) FROM ExchangeAccounts AS ea
- INNER JOIN ExchangeMailboxPlans AS B ON ea.MailboxPlanId = B.MailboxPlanId
+ SET @Result = (SELECT SUM(B.MailboxSizeMB) FROM ExchangeAccounts AS ea
+ INNER JOIN ExchangeMailboxPlans AS B ON ea.MailboxPlanId = B.MailboxPlanId
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
WHERE pt.ParentPackageID = @PackageID)
@@ -3414,7 +3431,7 @@ GO
IF NOT EXISTS (SELECT * FROM [dbo].[Providers] WHERE [DisplayName] = 'Hosted MS CRM 2013')
BEGIN
-INSERT [dbo].[Providers] ([ProviderId], [GroupId], [ProviderName], [DisplayName], [ProviderType], [EditorControl], [DisableAutoDiscovery])
+INSERT [dbo].[Providers] ([ProviderId], [GroupId], [ProviderName], [DisplayName], [ProviderType], [EditorControl], [DisableAutoDiscovery])
VALUES(1202, 24, N'CRM', N'Hosted MS CRM 2013', N'WebsitePanel.Providers.HostedSolution.CRMProvider2013, WebsitePanel.Providers.HostedSolution.Crm2013', N'CRM2011', NULL)
END
GO
@@ -3423,35 +3440,35 @@ GO
IF NOT EXISTS (SELECT * FROM [dbo].[Quotas] WHERE [QuotaName] = 'HostedCRM2013.Organization')
BEGIN
-INSERT [dbo].[Quotas] ([QuotaID], [GroupID], [QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota])
+INSERT [dbo].[Quotas] ([QuotaID], [GroupID], [QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota])
VALUES (463, 24, 1, N'HostedCRM2013.Organization', N'CRM Organization', 1, 0, NULL, NULL)
END
GO
IF NOT EXISTS (SELECT * FROM [dbo].[Quotas] WHERE [QuotaName] = 'HostedCRM2013.MaxDatabaseSize')
BEGIN
-INSERT [dbo].[Quotas] ([QuotaID], [GroupID],[QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID])
+INSERT [dbo].[Quotas] ([QuotaID], [GroupID],[QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID])
VALUES (464, 24, 5, N'HostedCRM2013.MaxDatabaseSize', N'Max Database Size, MB',3, 0 , NULL)
END
GO
IF NOT EXISTS (SELECT * FROM [dbo].[Quotas] WHERE [QuotaName] = 'HostedCRM2013.EssentialUsers')
BEGIN
-INSERT [dbo].[Quotas] ([QuotaID], [GroupID], [QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota])
+INSERT [dbo].[Quotas] ([QuotaID], [GroupID], [QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota])
VALUES (465, 24, 2, N'HostedCRM2013.EssentialUsers', N'Essential licenses per organization', 3, 0, NULL, NULL)
END
GO
IF NOT EXISTS (SELECT * FROM [dbo].[Quotas] WHERE [QuotaName] = 'HostedCRM2013.BasicUsers')
BEGIN
-INSERT [dbo].[Quotas] ([QuotaID], [GroupID],[QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID])
+INSERT [dbo].[Quotas] ([QuotaID], [GroupID],[QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID])
VALUES (466, 24, 3, N'HostedCRM2013.BasicUsers', N'Basic licenses per organization',3, 0 , NULL)
END
GO
IF NOT EXISTS (SELECT * FROM [dbo].[Quotas] WHERE [QuotaName] = 'HostedCRM2013.ProfessionalUsers')
BEGIN
-INSERT [dbo].[Quotas] ([QuotaID], [GroupID],[QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID])
+INSERT [dbo].[Quotas] ([QuotaID], [GroupID],[QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID])
VALUES (467, 24, 4, N'HostedCRM2013.ProfessionalUsers', N'Professional licenses per organization',3, 0 , NULL)
END
GO
@@ -3479,14 +3496,14 @@ GO
IF NOT EXISTS (SELECT * FROM [dbo].[Quotas] WHERE [QuotaName] = 'Exchange2013.ArchivingStorage')
BEGIN
-INSERT [dbo].[Quotas] ([QuotaID], [GroupID], [QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota])
+INSERT [dbo].[Quotas] ([QuotaID], [GroupID], [QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota])
VALUES (425, 12, 29, N'Exchange2013.ArchivingStorage', N'Archiving storage, MB', 2, 0, NULL, NULL)
END
GO
IF NOT EXISTS (SELECT * FROM [dbo].[Quotas] WHERE [QuotaName] = 'Exchange2013.ArchivingMailboxes')
BEGIN
-INSERT [dbo].[Quotas] ([QuotaID], [GroupID], [QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota])
+INSERT [dbo].[Quotas] ([QuotaID], [GroupID], [QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota])
VALUES (426, 12, 28, N'Exchange2013.ArchivingMailboxes', N'Archiving Mailboxes per Organization', 2, 0, NULL, NULL)
END
GO
@@ -3523,7 +3540,7 @@ END
GO
-ALTER PROCEDURE [dbo].[AddExchangeMailboxPlan]
+ALTER PROCEDURE [dbo].[AddExchangeMailboxPlan]
(
@MailboxPlanId int OUTPUT,
@ItemID int,
@@ -3635,7 +3652,7 @@ RETURN
GO
-ALTER PROCEDURE [dbo].[UpdateExchangeMailboxPlan]
+ALTER PROCEDURE [dbo].[UpdateExchangeMailboxPlan]
(
@MailboxPlanId int,
@MailboxPlan nvarchar(300),
@@ -3687,7 +3704,7 @@ UPDATE ExchangeMailboxPlans SET
MailboxPlanType = @MailboxPlanType,
AllowLitigationHold = @AllowLitigationHold,
RecoverableItemsWarningPct = @RecoverableItemsWarningPct,
- RecoverableItemsSpace = @RecoverableItemsSpace,
+ RecoverableItemsSpace = @RecoverableItemsSpace,
LitigationHoldUrl = @LitigationHoldUrl,
LitigationHoldMsg = @LitigationHoldMsg,
Archiving = @Archiving,
@@ -3697,7 +3714,7 @@ UPDATE ExchangeMailboxPlans SET
WHERE MailboxPlanId = @MailboxPlanId
RETURN
-
+
GO
@@ -3735,7 +3752,7 @@ SELECT
FROM
ExchangeMailboxPlans
WHERE
- ItemID = @ItemID
+ ItemID = @ItemID
AND ((Archiving=@Archiving) OR ((@Archiving=0) AND (Archiving IS NULL)))
ORDER BY MailboxPlan
RETURN
@@ -3743,7 +3760,7 @@ RETURN
GO
-ALTER PROCEDURE [dbo].[GetExchangeMailboxPlan]
+ALTER PROCEDURE [dbo].[GetExchangeMailboxPlan]
(
@MailboxPlanId int
)
@@ -3802,7 +3819,7 @@ END
GO
-- Password column removed
-ALTER PROCEDURE [dbo].[GetExchangeAccount]
+ALTER PROCEDURE [dbo].[GetExchangeAccount]
(
@ItemID int,
@AccountID int
@@ -3822,12 +3839,12 @@ SELECT
P.MailboxPlan,
E.SubscriberNumber,
E.UserPrincipalName,
- E.ArchivingMailboxPlanId,
+ E.ArchivingMailboxPlanId,
AP.MailboxPlan as 'ArchivingMailboxPlan',
E.EnableArchiving
FROM
ExchangeAccounts AS E
-LEFT OUTER JOIN ExchangeMailboxPlans AS P ON E.MailboxPlanId = P.MailboxPlanId
+LEFT OUTER JOIN ExchangeMailboxPlans AS P ON E.MailboxPlanId = P.MailboxPlanId
LEFT OUTER JOIN ExchangeMailboxPlans AS AP ON E.ArchivingMailboxPlanId = AP.MailboxPlanId
WHERE
E.ItemID = @ItemID AND
@@ -3837,7 +3854,7 @@ GO
-- Password column removed
-ALTER PROCEDURE [dbo].[GetExchangeAccountByAccountName]
+ALTER PROCEDURE [dbo].[GetExchangeAccountByAccountName]
(
@ItemID int,
@AccountName nvarchar(300)
@@ -3857,12 +3874,12 @@ SELECT
P.MailboxPlan,
E.SubscriberNumber,
E.UserPrincipalName,
- E.ArchivingMailboxPlanId,
+ E.ArchivingMailboxPlanId,
AP.MailboxPlan as 'ArchivingMailboxPlan',
E.EnableArchiving
FROM
ExchangeAccounts AS E
-LEFT OUTER JOIN ExchangeMailboxPlans AS P ON E.MailboxPlanId = P.MailboxPlanId
+LEFT OUTER JOIN ExchangeMailboxPlans AS P ON E.MailboxPlanId = P.MailboxPlanId
LEFT OUTER JOIN ExchangeMailboxPlans AS AP ON E.ArchivingMailboxPlanId = AP.MailboxPlanId
WHERE
E.ItemID = @ItemID AND
@@ -3875,7 +3892,7 @@ GO
-- Password column removed
-ALTER PROCEDURE [dbo].[GetExchangeAccountByMailboxPlanId]
+ALTER PROCEDURE [dbo].[GetExchangeAccountByMailboxPlanId]
(
@ItemID int,
@MailboxPlanId int
@@ -3898,17 +3915,17 @@ SELECT
P.MailboxPlan,
E.SubscriberNumber,
E.UserPrincipalName,
- E.ArchivingMailboxPlanId,
+ E.ArchivingMailboxPlanId,
AP.MailboxPlan as 'ArchivingMailboxPlan',
E.EnableArchiving
FROM
ExchangeAccounts AS E
-LEFT OUTER JOIN ExchangeMailboxPlans AS P ON E.MailboxPlanId = P.MailboxPlanId
+LEFT OUTER JOIN ExchangeMailboxPlans AS P ON E.MailboxPlanId = P.MailboxPlanId
LEFT OUTER JOIN ExchangeMailboxPlans AS AP ON E.ArchivingMailboxPlanId = AP.MailboxPlanId
WHERE
E.ItemID = @ItemID AND
E.MailboxPlanId IS NULL AND
- E.AccountType IN (1,5)
+ E.AccountType IN (1,5)
RETURN
END
@@ -3929,16 +3946,16 @@ SELECT
P.MailboxPlan,
E.SubscriberNumber,
E.UserPrincipalName,
- E.ArchivingMailboxPlanId,
+ E.ArchivingMailboxPlanId,
AP.MailboxPlan as 'ArchivingMailboxPlan',
E.EnableArchiving
FROM
ExchangeAccounts AS E
-LEFT OUTER JOIN ExchangeMailboxPlans AS P ON E.MailboxPlanId = P.MailboxPlanId
+LEFT OUTER JOIN ExchangeMailboxPlans AS P ON E.MailboxPlanId = P.MailboxPlanId
LEFT OUTER JOIN ExchangeMailboxPlans AS AP ON E.ArchivingMailboxPlanId = AP.MailboxPlanId
WHERE
E.MailboxPlanId = @MailboxPlanId AND
- E.AccountType IN (1,5)
+ E.AccountType IN (1,5)
END
ELSE
BEGIN
@@ -3956,17 +3973,17 @@ SELECT
P.MailboxPlan,
E.SubscriberNumber,
E.UserPrincipalName,
- E.ArchivingMailboxPlanId,
+ E.ArchivingMailboxPlanId,
AP.MailboxPlan as 'ArchivingMailboxPlan',
E.EnableArchiving
FROM
ExchangeAccounts AS E
-LEFT OUTER JOIN ExchangeMailboxPlans AS P ON E.MailboxPlanId = P.MailboxPlanId
+LEFT OUTER JOIN ExchangeMailboxPlans AS P ON E.MailboxPlanId = P.MailboxPlanId
LEFT OUTER JOIN ExchangeMailboxPlans AS AP ON E.ArchivingMailboxPlanId = AP.MailboxPlanId
WHERE
E.ItemID = @ItemID AND
E.MailboxPlanId = @MailboxPlanId AND
- E.AccountType IN (1,5)
+ E.AccountType IN (1,5)
RETURN
END
GO
@@ -4007,18 +4024,18 @@ IF @FilterColumn <> '' AND @FilterColumn IS NOT NULL
AND @FilterValue <> '' AND @FilterValue IS NOT NULL
BEGIN
IF @FilterColumn = 'PrimaryEmailAddress' AND @AccountTypes <> '2'
- BEGIN
+ BEGIN
SET @condition = @condition + ' AND EA.AccountID IN (SELECT EAEA.AccountID FROM ExchangeAccountEmailAddresses EAEA WHERE EAEA.EmailAddress LIKE ''' + @FilterValue + ''')'
END
ELSE
- BEGIN
+ BEGIN
SET @condition = @condition + ' AND ' + @FilterColumn + ' LIKE ''' + @FilterValue + ''''
END
END
if @Archiving = 1
BEGIN
- SET @condition = @condition + ' AND (EA.ArchivingMailboxPlanId > 0) '
+ SET @condition = @condition + ' AND (EA.ArchivingMailboxPlanId > 0) '
END
IF @SortColumn IS NULL OR @SortColumn = ''
@@ -4058,12 +4075,12 @@ print @sql
exec sp_executesql @sql, N'@ItemID int, @StartRow int, @MaximumRows int',
@ItemID, @StartRow, @MaximumRows
-RETURN
+RETURN
GO
-ALTER PROCEDURE [dbo].[SetExchangeAccountMailboxplan]
+ALTER PROCEDURE [dbo].[SetExchangeAccountMailboxplan]
(
@AccountID int,
@MailboxPlanId int,
@@ -4084,7 +4101,7 @@ RETURN
GO
-- Password column removed
-ALTER PROCEDURE [dbo].[UpdateExchangeAccount]
+ALTER PROCEDURE [dbo].[UpdateExchangeAccount]
(
@AccountID int,
@AccountName nvarchar(300),
@@ -4101,9 +4118,9 @@ ALTER PROCEDURE [dbo].[UpdateExchangeAccount]
)
AS
-BEGIN TRAN
+BEGIN TRAN
-IF (@MailboxPlanId = -1)
+IF (@MailboxPlanId = -1)
BEGIN
SET @MailboxPlanId = NULL
END
@@ -4113,7 +4130,7 @@ UPDATE ExchangeAccounts SET
DisplayName = @DisplayName,
PrimaryEmailAddress = @PrimaryEmailAddress,
MailEnabledPublicFolder = @MailEnabledPublicFolder,
- MailboxManagerActions = @MailboxManagerActions,
+ MailboxManagerActions = @MailboxManagerActions,
AccountType =@AccountType,
SamAccountName = @SamAccountName,
MailboxPlanId = @MailboxPlanId,
@@ -4154,7 +4171,7 @@ IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'AddExchangeRet
DROP PROCEDURE [dbo].[AddExchangeRetentionPolicyTag]
GO
-CREATE PROCEDURE [dbo].[AddExchangeRetentionPolicyTag]
+CREATE PROCEDURE [dbo].[AddExchangeRetentionPolicyTag]
(
@TagID int OUTPUT,
@ItemID int,
@@ -4195,7 +4212,7 @@ IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'UpdateExchange
DROP PROCEDURE [dbo].[UpdateExchangeRetentionPolicyTag]
GO
-CREATE PROCEDURE [dbo].[UpdateExchangeRetentionPolicyTag]
+CREATE PROCEDURE [dbo].[UpdateExchangeRetentionPolicyTag]
(
@TagID int,
@ItemID int,
@@ -4215,7 +4232,7 @@ UPDATE ExchangeRetentionPolicyTags SET
WHERE TagID = @TagID
RETURN
-
+
GO
@@ -4238,7 +4255,7 @@ SELECT
FROM
ExchangeRetentionPolicyTags
WHERE
- ItemID = @ItemID
+ ItemID = @ItemID
ORDER BY TagName
RETURN
@@ -4249,7 +4266,7 @@ IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'GetExchangeRet
DROP PROCEDURE [dbo].[GetExchangeRetentionPolicyTag]
GO
-CREATE PROCEDURE [dbo].[GetExchangeRetentionPolicyTag]
+CREATE PROCEDURE [dbo].[GetExchangeRetentionPolicyTag]
(
@TagID int
)
@@ -4317,10 +4334,10 @@ P.MailboxPlan,
T.TagName
FROM
ExchangeMailboxPlanRetentionPolicyTags AS D
-LEFT OUTER JOIN ExchangeMailboxPlans AS P ON P.MailboxPlanId = D.MailboxPlanId
-LEFT OUTER JOIN ExchangeRetentionPolicyTags AS T ON T.TagID = D.TagID
+LEFT OUTER JOIN ExchangeMailboxPlans AS P ON P.MailboxPlanId = D.MailboxPlanId
+LEFT OUTER JOIN ExchangeRetentionPolicyTags AS T ON T.TagID = D.TagID
WHERE
- D.MailboxPlanId = @MailboxPlanId
+ D.MailboxPlanId = @MailboxPlanId
RETURN
GO
@@ -4329,7 +4346,7 @@ IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'AddExchangeMai
DROP PROCEDURE [dbo].[AddExchangeMailboxPlanRetentionPolicyTag]
GO
-CREATE PROCEDURE [dbo].[AddExchangeMailboxPlanRetentionPolicyTag]
+CREATE PROCEDURE [dbo].[AddExchangeMailboxPlanRetentionPolicyTag]
(
@PlanTagID int OUTPUT,
@TagID int,
@@ -4381,7 +4398,7 @@ GO
-- Exchange2013 Archiving
-ALTER PROCEDURE [dbo].[GetExchangeOrganizationStatistics]
+ALTER PROCEDURE [dbo].[GetExchangeOrganizationStatistics]
(
@ItemID int
)
@@ -4454,7 +4471,7 @@ UPDATE [dbo].[ServiceItemTypes] SET [Suspendable] = 1 WHERE [ItemTypeID] = 38 AN
END
GO
-/* ICE Warp */
+/* ICE Warp */
IF NOT EXISTS (SELECT * FROM [dbo].[Providers] WHERE [ProviderName] = 'IceWarp')
BEGIN
INSERT [dbo].[Providers] ([ProviderID], [GroupID], [ProviderName], [DisplayName], [ProviderType], [EditorControl], [DisableAutoDiscovery]) VALUES (160, 4, N'IceWarp', N'IceWarp Mail Server', N'WebsitePanel.Providers.Mail.IceWarp, WebsitePanel.Providers.Mail.IceWarp', N'IceWarp', NULL)
@@ -4542,7 +4559,7 @@ AS
SELECT *
FROM SupportServiceLevels
WHERE LevelID = @LevelID
-RETURN
+RETURN
GO
IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'AddSupportServiceLevel')
@@ -4582,7 +4599,7 @@ BEGIN
IF EXISTS (SELECT * FROM ResourceGroups WHERE GroupName = 'Service Levels')
BEGIN
- DECLARE @QuotaLastID int, @CurQuotaName nvarchar(100),
+ DECLARE @QuotaLastID int, @CurQuotaName nvarchar(100),
@CurQuotaDescription nvarchar(1000), @QuotaOrderInGroup int
SET @CurQuotaName = N'ServiceLevel.' + @LevelName
@@ -4598,23 +4615,23 @@ BEGIN
IF NOT EXISTS (SELECT * FROM Quotas WHERE QuotaName = @CurQuotaName)
BEGIN
- INSERT Quotas
- (QuotaID,
- GroupID,
- QuotaOrder,
- QuotaName,
- QuotaDescription,
- QuotaTypeID,
- ServiceQuota,
- ItemTypeID)
- VALUES
- (@QuotaLastID + 1,
- @ResourseGroupID,
- @QuotaOrderInGroup + 1,
- @CurQuotaName,
+ INSERT Quotas
+ (QuotaID,
+ GroupID,
+ QuotaOrder,
+ QuotaName,
+ QuotaDescription,
+ QuotaTypeID,
+ ServiceQuota,
+ ItemTypeID)
+ VALUES
+ (@QuotaLastID + 1,
+ @ResourseGroupID,
+ @QuotaOrderInGroup + 1,
+ @CurQuotaName,
@CurQuotaDescription,
- 2,
- 0,
+ 2,
+ 0,
NULL)
END
END
@@ -4659,7 +4676,7 @@ BEGIN
END
-RETURN
+RETURN
GO
IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'UpdateSupportServiceLevel')
@@ -4691,7 +4708,7 @@ BEGIN
DECLARE @QuotaID INT
SELECT @QuotaID = QuotaID FROM Quotas WHERE QuotaName = @PrevQuotaName
-
+
UPDATE Quotas
SET QuotaName = N'ServiceLevel.' + @LevelName,
QuotaDescription = @LevelName + ', users'
@@ -4700,12 +4717,12 @@ BEGIN
END
-RETURN
+RETURN
GO
-IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type IN ('FN', 'IF', 'TF') AND name = 'GetPackageServiceLevelResource')
+IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type IN ('FN', 'IF', 'TF') AND name = 'GetPackageServiceLevelResource')
DROP FUNCTION GetPackageServiceLevelResource
GO
@@ -4782,7 +4799,7 @@ BEGIN
)
SET @GroupEnabled = 0
END
-
+
-- check addons
IF EXISTS(
SELECT HPR.GroupID FROM PackageAddons AS PA
@@ -4792,10 +4809,10 @@ BEGIN
)
SET @GroupEnabled = 1
END
-
+
IF @GroupEnabled = 0
RETURN 0
-
+
SET @PID = @ParentPackageID
END -- end while
@@ -4944,7 +4961,7 @@ SELECT
END AS ParentEnabled,
ISNULL(HPR.CalculateDiskSpace, 1) AS CalculateDiskSpace,
ISNULL(HPR.CalculateBandwidth, 1) AS CalculateBandwidth
-FROM ResourceGroups AS RG
+FROM ResourceGroups AS RG
LEFT OUTER JOIN HostingPlanResources AS HPR ON RG.GroupID = HPR.GroupID AND HPR.PlanID = @PlanID
WHERE (RG.ShowGroup = 1)
ORDER BY RG.GroupOrder
@@ -5016,14 +5033,14 @@ WHERE ' + @condition
print @sql
-exec sp_executesql @sql, N'@ItemID int, @IncludeMailboxes bit',
+exec sp_executesql @sql, N'@ItemID int, @IncludeMailboxes bit',
@ItemID, @IncludeMailboxes
RETURN
GO
-- Password column removed
-ALTER PROCEDURE [dbo].[GetExchangeAccount]
+ALTER PROCEDURE [dbo].[GetExchangeAccount]
(
@ItemID int,
@AccountID int
@@ -5043,14 +5060,14 @@ SELECT
P.MailboxPlan,
E.SubscriberNumber,
E.UserPrincipalName,
- E.ArchivingMailboxPlanId,
+ E.ArchivingMailboxPlanId,
AP.MailboxPlan as 'ArchivingMailboxPlan',
E.EnableArchiving,
E.LevelID,
E.IsVIP
FROM
ExchangeAccounts AS E
-LEFT OUTER JOIN ExchangeMailboxPlans AS P ON E.MailboxPlanId = P.MailboxPlanId
+LEFT OUTER JOIN ExchangeMailboxPlans AS P ON E.MailboxPlanId = P.MailboxPlanId
LEFT OUTER JOIN ExchangeMailboxPlans AS AP ON E.ArchivingMailboxPlanId = AP.MailboxPlanId
WHERE
E.ItemID = @ItemID AND
@@ -5091,18 +5108,18 @@ IF @FilterColumn <> '' AND @FilterColumn IS NOT NULL
AND @FilterValue <> '' AND @FilterValue IS NOT NULL
BEGIN
IF @FilterColumn = 'PrimaryEmailAddress' AND @AccountTypes <> '2'
- BEGIN
+ BEGIN
SET @condition = @condition + ' AND EA.AccountID IN (SELECT EAEA.AccountID FROM ExchangeAccountEmailAddresses EAEA WHERE EAEA.EmailAddress LIKE ''' + @FilterValue + ''')'
END
ELSE
- BEGIN
+ BEGIN
SET @condition = @condition + ' AND ' + @FilterColumn + ' LIKE ''' + @FilterValue + ''''
END
END
if @Archiving = 1
BEGIN
- SET @condition = @condition + ' AND (EA.ArchivingMailboxPlanId > 0) '
+ SET @condition = @condition + ' AND (EA.ArchivingMailboxPlanId > 0) '
END
IF @SortColumn IS NULL OR @SortColumn = ''
@@ -5159,9 +5176,9 @@ CREATE PROCEDURE [dbo].[UpdateExchangeAccountSLSettings]
)
AS
-BEGIN TRAN
+BEGIN TRAN
- IF (@LevelID = -1)
+ IF (@LevelID = -1)
BEGIN
SET @LevelID = NULL
END
@@ -5178,7 +5195,7 @@ BEGIN TRAN
RETURN -1
END
COMMIT TRAN
-RETURN
+RETURN
GO
IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'CheckServiceLevelUsage')
@@ -5194,12 +5211,12 @@ SELECT COUNT(EA.AccountID)
FROM SupportServiceLevels AS SL
INNER JOIN ExchangeAccounts AS EA ON SL.LevelID = EA.LevelID
WHERE EA.LevelID = @LevelID
-RETURN
+RETURN
GO
--- Service Level Quotas, change type
+-- Service Level Quotas, change type
UPDATE Quotas
-SET QuotaTypeID = 2
+SET QuotaTypeID = 2
WHERE QuotaName like 'ServiceLevel.%'
GO
@@ -5278,13 +5295,13 @@ AS
INNER JOIN PackagesTreeCache AS PT ON PIP.PackageID = PT.PackageID
WHERE PT.ParentPackageID = @PackageID AND IP.PoolID = 3)
ELSE IF @QuotaID = 319 -- BB Users
- SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
+ SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
INNER JOIN BlackBerryUsers bu ON ea.AccountID = bu.AccountID
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
WHERE pt.ParentPackageID = @PackageID)
ELSE IF @QuotaID = 320 -- OCS Users
- SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
+ SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
INNER JOIN OCSUsers ocs ON ea.AccountID = ocs.AccountID
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
@@ -5298,12 +5315,12 @@ AS
SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts AS ea
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
- WHERE pt.ParentPackageID = @PackageID
+ WHERE pt.ParentPackageID = @PackageID
AND ea.AccountType IN (1)
AND ea.MailboxPlanId IS NOT NULL)
ELSE IF @QuotaID = 77 -- Exchange2007.DiskSpace
- SET @Result = (SELECT SUM(B.MailboxSizeMB) FROM ExchangeAccounts AS ea
- INNER JOIN ExchangeMailboxPlans AS B ON ea.MailboxPlanId = B.MailboxPlanId
+ SET @Result = (SELECT SUM(B.MailboxSizeMB) FROM ExchangeAccounts AS ea
+ INNER JOIN ExchangeMailboxPlans AS B ON ea.MailboxPlanId = B.MailboxPlanId
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
WHERE pt.ParentPackageID = @PackageID)
@@ -5370,14 +5387,14 @@ GO
-- IIS80 Provider update for SNI and CCS support
-- Add default serviceproperties for all existing IIS80 Services (if any). These properties are used as markers in the IIS70 Controls in WebPortal to know the version of the IIS Provider
-declare c cursor read_only for
+declare c cursor read_only for
select ServiceID from Services where ProviderID in(select ProviderID from Providers where ProviderName='IIS80')
declare @ServiceID int
open c
-fetch next from c
+fetch next from c
into @ServiceID
while @@FETCH_STATUS = 0
@@ -5398,7 +5415,7 @@ begin
insert into ServiceProperties(ServiceID, PropertyName, PropertyValue)
values(@ServiceID, 'sslusesni', 'False')
- fetch next from c
+ fetch next from c
into @ServiceID
end
@@ -5417,8 +5434,8 @@ IF NOT EXISTS (SELECT * FROM SYS.TABLES WHERE name = 'RDSCollectionUsers')
CREATE TABLE RDSCollectionUsers
(
ID INT IDENTITY(1,1) NOT NULL PRIMARY KEY,
- RDSCollectionId INT NOT NULL,
- AccountID INT NOT NULL
+ RDSCollectionId INT NOT NULL,
+ AccountID INT NOT NULL
)
GO
@@ -5479,7 +5496,7 @@ CREATE TABLE [dbo].[RDSCollectionSettings](
[ClientPrinterAsDefault] [bit] NULL,
[RDEasyPrintDriverEnabled] [bit] NULL,
[MaxRedirectedMonitors] [int] NULL,
- CONSTRAINT [PK_RDSCollectionSettings] PRIMARY KEY CLUSTERED
+ CONSTRAINT [PK_RDSCollectionSettings] PRIMARY KEY CLUSTERED
(
[ID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
@@ -5487,21 +5504,21 @@ CREATE TABLE [dbo].[RDSCollectionSettings](
GO
-IF NOT EXISTS(SELECT * FROM sys.columns
+IF NOT EXISTS(SELECT * FROM sys.columns
WHERE [name] = N'SecurityLayer' AND [object_id] = OBJECT_ID(N'RDSCollectionSettings'))
BEGIN
ALTER TABLE [dbo].[RDSCollectionSettings] ADD SecurityLayer NVARCHAR(20) null;
END
GO
-IF NOT EXISTS(SELECT * FROM sys.columns
+IF NOT EXISTS(SELECT * FROM sys.columns
WHERE [name] = N'EncryptionLevel' AND [object_id] = OBJECT_ID(N'RDSCollectionSettings'))
BEGIN
ALTER TABLE [dbo].[RDSCollectionSettings] ADD EncryptionLevel NVARCHAR(20) null;
END
GO
-IF NOT EXISTS(SELECT * FROM sys.columns
+IF NOT EXISTS(SELECT * FROM sys.columns
WHERE [name] = N'AuthenticateUsingNLA' AND [object_id] = OBJECT_ID(N'RDSCollectionSettings'))
BEGIN
ALTER TABLE [dbo].[RDSCollectionSettings] ADD AuthenticateUsingNLA BIT null;
@@ -5519,7 +5536,7 @@ CREATE TABLE [dbo].[RDSCertificates](
[FileName] [nvarchar](255) NOT NULL,
[ValidFrom] [datetime] NULL,
[ExpiryDate] [datetime] NULL
- CONSTRAINT [PK_RDSCertificates] PRIMARY KEY CLUSTERED
+ CONSTRAINT [PK_RDSCertificates] PRIMARY KEY CLUSTERED
(
[ID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
@@ -5540,7 +5557,7 @@ IF EXISTS (SELECT * FROM sys.objects WHERE type = 'F' AND name = 'FK_RDSCollect
BEGIN
ALTER TABLE [dbo].[RDSCollectionUsers]
DROP CONSTRAINT [FK_RDSCollectionUsers_UserId]
-END
+END
ELSE
PRINT 'FK_RDSCollectionUsers_UserId not EXISTS'
GO
@@ -5550,9 +5567,9 @@ IF EXISTS (SELECT * FROM sys.objects WHERE type = 'F' AND name = 'FK_RDSServers
BEGIN
ALTER TABLE [dbo].[RDSServers]
DROP CONSTRAINT [FK_RDSServers_RDSCollectionId]
-END
+END
ELSE
- PRINT 'FK_RDSServers_RDSCollectionId not EXISTS'
+ PRINT 'FK_RDSServers_RDSCollectionId not EXISTS'
GO
ALTER TABLE [dbo].[RDSCollectionUsers] WITH CHECK ADD CONSTRAINT [FK_RDSCollectionUsers_RDSCollectionId] FOREIGN KEY([RDSCollectionId])
@@ -5602,7 +5619,7 @@ INSERT INTO RDSCertificates
Hash,
FileName,
ValidFrom,
- ExpiryDate
+ ExpiryDate
)
VALUES
(
@@ -5631,7 +5648,7 @@ AS
SELECT TOP 1
Id,
ServiceId,
- Content,
+ Content,
Hash,
FileName,
ValidFrom,
@@ -5757,10 +5774,10 @@ CREATE PROCEDURE [dbo].[GetRDSServersByItemId]
@ItemID INT
)
AS
-SELECT
+SELECT
RS.Id,
RS.ItemID,
- RS.Name,
+ RS.Name,
RS.FqdName,
RS.Description,
RS.RdsCollectionId,
@@ -5776,10 +5793,10 @@ DROP PROCEDURE GetRDSServers
GO
CREATE PROCEDURE [dbo].[GetRDSServers]
AS
-SELECT
+SELECT
RS.Id,
RS.ItemID,
- RS.Name,
+ RS.Name,
RS.FqdName,
RS.Description,
RS.RdsCollectionId,
@@ -5801,7 +5818,7 @@ AS
SELECT TOP 1
RS.Id,
RS.ItemID,
- RS.Name,
+ RS.Name,
RS.FqdName,
RS.Description,
RS.RdsCollectionId,
@@ -5819,10 +5836,10 @@ CREATE PROCEDURE [dbo].[GetRDSServersByCollectionId]
@RdsCollectionId INT
)
AS
-SELECT
+SELECT
RS.Id,
RS.ItemID,
- RS.Name,
+ RS.Name,
RS.FqdName,
RS.Description,
RS.RdsCollectionId,
@@ -5877,7 +5894,7 @@ INSERT INTO @RDSCollections (RDSCollectionId)
SELECT
S.ID
FROM RDSCollections AS S
-WHERE
+WHERE
((@ItemID is Null AND S.ItemID is null)
or (@ItemID is not Null AND S.ItemID = @ItemID))'
@@ -5922,10 +5939,10 @@ CREATE PROCEDURE [dbo].[GetRDSCollectionsByItemId]
@ItemID INT
)
AS
-SELECT
+SELECT
Id,
ItemId,
- Name,
+ Name,
Description,
DisplayName
FROM RDSCollections
@@ -5944,7 +5961,7 @@ AS
SELECT TOP 1
Id,
- Name,
+ Name,
ItemId,
Description,
DisplayName
@@ -5965,9 +5982,9 @@ AS
SELECT TOP 1
Id,
ItemId,
- Name,
+ Name,
Description,
- DisplayName
+ DisplayName
FROM RDSCollections
WHERE ID = @ID
GO
@@ -6058,7 +6075,7 @@ CREATE PROCEDURE [dbo].[GetRDSCollectionUsersByRDSCollectionId]
@ID INT
)
AS
-SELECT
+SELECT
[AccountID],
[ItemID],
[AccountType],
@@ -6095,7 +6112,7 @@ AS
INSERT INTO RDSCollectionUsers
(
- RDSCollectionId,
+ RDSCollectionId,
AccountID
)
VALUES
@@ -6183,7 +6200,7 @@ AS
SELECT TOP 1
Id,
RDSCollectionId,
- DisconnectedSessionLimitMin,
+ DisconnectedSessionLimitMin,
ActiveSessionLimitMin,
IdleSessionLimitMin,
BrokenConnectionAction,
@@ -6207,7 +6224,7 @@ CREATE PROCEDURE [dbo].[AddRDSCollectionSettings]
(
@RDSCollectionSettingsID INT OUTPUT,
@RDSCollectionId INT,
- @DisconnectedSessionLimitMin INT,
+ @DisconnectedSessionLimitMin INT,
@ActiveSessionLimitMin INT,
@IdleSessionLimitMin INT,
@BrokenConnectionAction NVARCHAR(20),
@@ -6225,7 +6242,7 @@ AS
INSERT INTO RDSCollectionSettings
(
RDSCollectionId,
- DisconnectedSessionLimitMin,
+ DisconnectedSessionLimitMin,
ActiveSessionLimitMin,
IdleSessionLimitMin,
BrokenConnectionAction,
@@ -6241,7 +6258,7 @@ INSERT INTO RDSCollectionSettings
VALUES
(
@RDSCollectionId,
- @DisconnectedSessionLimitMin,
+ @DisconnectedSessionLimitMin,
@ActiveSessionLimitMin,
@IdleSessionLimitMin,
@BrokenConnectionAction,
@@ -6268,7 +6285,7 @@ CREATE PROCEDURE [dbo].[UpdateRDSCollectionSettings]
(
@ID INT,
@RDSCollectionId INT,
- @DisconnectedSessionLimitMin INT,
+ @DisconnectedSessionLimitMin INT,
@ActiveSessionLimitMin INT,
@IdleSessionLimitMin INT,
@BrokenConnectionAction NVARCHAR(20),
@@ -6329,24 +6346,24 @@ GO
-- Exchange2013 Shared and resource mailboxes
-- Exchange2013 Shared and resource mailboxes Quotas
-
+
IF NOT EXISTS (SELECT * FROM [dbo].[Quotas] WHERE [QuotaName] = 'Exchange2013.SharedMailboxes')
BEGIN
-INSERT [dbo].[Quotas] ([QuotaID], [GroupID], [QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota])
+INSERT [dbo].[Quotas] ([QuotaID], [GroupID], [QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota])
VALUES (429, 12, 30, N'Exchange2013.SharedMailboxes', N'Shared Mailboxes per Organization', 2, 0, NULL, NULL)
END
GO
IF NOT EXISTS (SELECT * FROM [dbo].[Quotas] WHERE [QuotaName] = 'Exchange2013.ResourceMailboxes')
BEGIN
-INSERT [dbo].[Quotas] ([QuotaID], [GroupID], [QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota])
+INSERT [dbo].[Quotas] ([QuotaID], [GroupID], [QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota])
VALUES (428, 12, 31, N'Exchange2013.ResourceMailboxes', N'Resource Mailboxes per Organization', 2, 0, NULL, NULL)
END
GO
-- Exchange2013 Shared and resource mailboxes Organization statistics
-ALTER PROCEDURE [dbo].[GetExchangeOrganizationStatistics]
+ALTER PROCEDURE [dbo].[GetExchangeOrganizationStatistics]
(
@ItemID int
)
@@ -6442,8 +6459,19 @@ WHERE (D.IsInstantAlias = 0 AND D.IsDomainPointer = 0) AND
AND (@ServerID = 0 OR (@ServerID > 0 AND S.ServerID = @ServerID))
'
-IF @FilterColumn <> '' AND @FilterValue <> ''
-SET @sql = @sql + ' AND ' + @FilterColumn + ' LIKE @FilterValue '
+IF @FilterValue <> ''
+BEGIN
+ IF @FilterColumn <> ''
+ BEGIN
+ SET @sql = @sql + ' AND ' + @FilterColumn + ' LIKE @FilterValue '
+ END
+ ELSE
+ SET @sql = @sql + '
+ AND (DomainName LIKE @FilterValue
+ OR Username LIKE @FilterValue
+ OR ServerName LIKE @FilterValue
+ OR PackageName LIKE @FilterValue) '
+END
IF @SortColumn <> '' AND @SortColumn IS NOT NULL
SET @sql = @sql + ' ORDER BY ' + @SortColumn + ' '
@@ -6463,16 +6491,16 @@ SET @sql = @sql + ' SELECT COUNT(DomainID) FROM @Domains;SELECT
D.IsSubDomain,
D.IsInstantAlias,
D.IsDomainPointer,
-
+
-- packages
P.PackageName,
-
+
-- server
ISNULL(SRV.ServerID, 0) AS ServerID,
ISNULL(SRV.ServerName, '''') AS ServerName,
ISNULL(SRV.Comments, '''') AS ServerComments,
ISNULL(SRV.VirtualServer, 0) AS VirtualServer,
-
+
-- user
P.UserID,
U.Username,
@@ -6613,21 +6641,21 @@ REFERENCES [dbo].[Domains] ([DomainID])
ON DELETE CASCADE
GO
-IF NOT EXISTS(SELECT * FROM sys.columns
+IF NOT EXISTS(SELECT * FROM sys.columns
WHERE [name] = N'CreationDate' AND [object_id] = OBJECT_ID(N'Domains'))
BEGIN
ALTER TABLE [dbo].[Domains] ADD CreationDate DateTime null;
END
GO
-IF NOT EXISTS(SELECT * FROM sys.columns
+IF NOT EXISTS(SELECT * FROM sys.columns
WHERE [name] = N'ExpirationDate' AND [object_id] = OBJECT_ID(N'Domains'))
BEGIN
ALTER TABLE [dbo].[Domains] ADD ExpirationDate DateTime null;
END
GO
-IF NOT EXISTS(SELECT * FROM sys.columns
+IF NOT EXISTS(SELECT * FROM sys.columns
WHERE [name] = N'LastUpdateDate' AND [object_id] = OBJECT_ID(N'Domains'))
BEGIN
ALTER TABLE [dbo].[Domains] ADD LastUpdateDate DateTime null;
@@ -6660,7 +6688,7 @@ Set @DomainExpirationLetterHtmlBody = N'
.Summary A { color: ##0153A4; }
.Summary { font-family: Tahoma; font-size: 9pt; }
.Summary H1 { font-size: 1.7em; color: ##1F4978; border-bottom: dotted 3px ##efefef; }
- .Summary H2 { font-size: 1.3em; color: ##1F4978; }
- .Summary H3 { font-size: 1em; color: ##1F4978; }
+ .Summary H2 { font-size: 1.3em; color: ##1F4978; }
+ .Summary H3 { font-size: 1em; color: ##1F4978; }
.Summary TABLE { border: solid 1px ##e5e5e5; }
.Summary TH,
.Summary TD.Label { padding: 5px; font-size: 8pt; font-weight: bold; background-color: ##f5f5f5; }
@@ -6881,7 +6909,7 @@ Please, find below details of MX and NS changes.
-
+
@@ -6968,7 +6996,7 @@ INSERT [dbo].[UserSettings] ([UserID], [SettingsName], [PropertyName], [Property
.Summary A { color: ##0153A4; }
.Summary { font-family: Tahoma; font-size: 9pt; }
.Summary H1 { font-size: 1.7em; color: ##1F4978; border-bottom: dotted 3px ##efefef; }
- .Summary H2 { font-size: 1.3em; color: ##1F4978; }
+ .Summary H2 { font-size: 1.3em; color: ##1F4978; }
.Summary TABLE { border: solid 1px ##e5e5e5; }
.Summary TH,
.Summary TD.Label { padding: 5px; font-size: 8pt; font-weight: bold; background-color: ##f5f5f5; }
@@ -7050,7 +7078,7 @@ DROP PROCEDURE GetScheduleTaskEmailTemplate
GO
CREATE PROCEDURE [dbo].GetScheduleTaskEmailTemplate
(
- @TaskID [nvarchar](100)
+ @TaskID [nvarchar](100)
)
AS
SELECT
@@ -7058,7 +7086,7 @@ SELECT
[From] ,
[Subject] ,
[Template]
- FROM [dbo].[ScheduleTasksEmailTemplates] where [TaskID] = @TaskID
+ FROM [dbo].[ScheduleTasksEmailTemplates] where [TaskID] = @TaskID
GO
IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'GetDomainDnsRecords')
@@ -7097,7 +7125,7 @@ SELECT
Value,
Date
FROM [dbo].[DomainDnsRecords]
- WHERE [DomainId] = @DomainId
+ WHERE [DomainId] = @DomainId
GO
@@ -7194,7 +7222,7 @@ CREATE PROCEDURE [dbo].UpdateDomainDates
@DomainId INT,
@DomainCreationDate DateTime,
@DomainExpirationDate DateTime,
- @DomainLastUpdateDate DateTime
+ @DomainLastUpdateDate DateTime
)
AS
UPDATE [dbo].[Domains] SET [CreationDate] = @DomainCreationDate, [ExpirationDate] = @DomainExpirationDate, [LastUpdateDate] = @DomainLastUpdateDate WHERE [DomainID] = @DomainId
@@ -7340,7 +7368,7 @@ LEFT OUTER JOIN Services AS S ON Z.ServiceID = S.ServiceID
LEFT OUTER JOIN Servers AS SRV ON S.ServerID = SRV.ServerID
WHERE SD.ItemPosition BETWEEN @StartRow + 1 AND @StartRow + @MaximumRows'
-exec sp_executesql @sql, N'@StartRow int, @MaximumRows int, @PackageID int, @FilterValue nvarchar(50), @ServerID int, @Recursive bit',
+exec sp_executesql @sql, N'@StartRow int, @MaximumRows int, @PackageID int, @FilterValue nvarchar(50), @ServerID int, @Recursive bit',
@StartRow, @MaximumRows, @PackageID, @FilterValue, @ServerID, @Recursive
@@ -7381,7 +7409,7 @@ INSERT INTO @RDSServer (RDSServerId)
SELECT
S.ID
FROM RDSServers AS S
-WHERE
+WHERE
((((@ItemID is Null AND S.ItemID is null) or @IgnoreItemId = 1)
or (@ItemID is not Null AND S.ItemID = @ItemID))
and
@@ -7398,7 +7426,7 @@ SET @sql = @sql + ' SELECT COUNT(RDSServerId) FROM @RDSServer;
SELECT
ST.ID,
ST.ItemID,
- ST.Name,
+ ST.Name,
ST.FqdName,
ST.Description,
ST.RdsCollectionId,
@@ -7410,7 +7438,7 @@ LEFT OUTER JOIN ServiceItems AS SI ON SI.ItemId = ST.ItemId
WHERE S.ItemPosition BETWEEN @StartRow AND @EndRow'
exec sp_executesql @sql, N'@StartRow int, @MaximumRows int, @FilterValue nvarchar(50), @ItemID int, @RdsCollectionId int, @IgnoreItemId bit, @IgnoreRdsCollectionId bit',
-@StartRow, @MaximumRows, @FilterValue, @ItemID, @RdsCollectionId, @IgnoreItemId , @IgnoreRdsCollectionId
+@StartRow, @MaximumRows, @FilterValue, @ItemID, @RdsCollectionId, @IgnoreItemId , @IgnoreRdsCollectionId
RETURN
@@ -7452,7 +7480,7 @@ GO
-- fix check domain used by HostedOrganization
-ALTER PROCEDURE [dbo].[CheckDomainUsedByHostedOrganization]
+ALTER PROCEDURE [dbo].[CheckDomainUsedByHostedOrganization]
@DomainName nvarchar(100),
@Result int OUTPUT
AS
@@ -7471,7 +7499,7 @@ AS
BEGIN
SET @Result = 1
END
-
+
RETURN @Result
GO
@@ -7507,34 +7535,34 @@ SELECT
eam.AccountID as OwnerID
FROM
ExchangeAccountEmailAddresses as eam
-INNER JOIN
+INNER JOIN
ExchangeAccounts ea
-ON
+ON
ea.AccountID = eam.AccountID
WHERE
(ea.PrimaryEmailAddress != eam.EmailAddress)
AND (ea.UserPrincipalName != eam.EmailAddress)
AND (eam.EmailAddress LIKE '%@'+ @DomainName)
UNION
-SELECT
+SELECT
'LyncUsers' as ObjectName,
ea.AccountID as ObjectID,
ea.AccountType as ObjectType,
ea.DisplayName as DisplayName,
0 as OwnerID
-FROM
- ExchangeAccounts ea
-INNER JOIN
+FROM
+ ExchangeAccounts ea
+INNER JOIN
LyncUsers ou
-ON
+ON
ea.AccountID = ou.AccountID
-WHERE
+WHERE
ou.SipAddress LIKE '%@'+ @DomainName
-ORDER BY
+ORDER BY
DisplayName
RETURN
GO
-IF NOT EXISTS(SELECT * FROM sys.columns
+IF NOT EXISTS(SELECT * FROM sys.columns
WHERE [name] = N'RegistrarName' AND [object_id] = OBJECT_ID(N'Domains'))
BEGIN
ALTER TABLE [dbo].[Domains] ADD RegistrarName nvarchar(max);
@@ -7607,8 +7635,19 @@ WHERE (D.IsInstantAlias = 0 AND D.IsDomainPointer = 0) AND
AND (@ServerID = 0 OR (@ServerID > 0 AND S.ServerID = @ServerID))
'
-IF @FilterColumn <> '' AND @FilterValue <> ''
-SET @sql = @sql + ' AND ' + @FilterColumn + ' LIKE @FilterValue '
+IF @FilterValue <> ''
+BEGIN
+ IF @FilterColumn <> ''
+ BEGIN
+ SET @sql = @sql + ' AND ' + @FilterColumn + ' LIKE @FilterValue '
+ END
+ ELSE
+ SET @sql = @sql + '
+ AND (DomainName LIKE @FilterValue
+ OR Username LIKE @FilterValue
+ OR ServerName LIKE @FilterValue
+ OR PackageName LIKE @FilterValue) '
+END
IF @SortColumn <> '' AND @SortColumn IS NOT NULL
SET @sql = @sql + ' ORDER BY ' + @SortColumn + ' '
@@ -7653,7 +7692,7 @@ LEFT OUTER JOIN Services AS S ON Z.ServiceID = S.ServiceID
LEFT OUTER JOIN Servers AS SRV ON S.ServerID = SRV.ServerID
WHERE SD.ItemPosition BETWEEN @StartRow + 1 AND @StartRow + @MaximumRows'
-exec sp_executesql @sql, N'@StartRow int, @MaximumRows int, @PackageID int, @FilterValue nvarchar(50), @ServerID int, @Recursive bit',
+exec sp_executesql @sql, N'@StartRow int, @MaximumRows int, @PackageID int, @FilterValue nvarchar(50), @ServerID int, @Recursive bit',
@StartRow, @MaximumRows, @PackageID, @FilterValue, @ServerID, @Recursive
@@ -7735,18 +7774,18 @@ SELECT
P.StatusID,
P.PlanID,
P.PurchaseDate,
-
+
dbo.GetItemComments(P.PackageID, 'PACKAGE', @ActorID) AS Comments,
-
+
-- server
ISNULL(P.ServerID, 0) AS ServerID,
ISNULL(S.ServerName, 'None') AS ServerName,
ISNULL(S.Comments, '') AS ServerComments,
ISNULL(S.VirtualServer, 1) AS VirtualServer,
-
+
-- hosting plan
HP.PlanName,
-
+
-- user
P.UserID,
U.Username,
@@ -7781,17 +7820,17 @@ SELECT
P.PackageName,
P.StatusID,
P.PurchaseDate,
-
+
-- server
ISNULL(P.ServerID, 0) AS ServerID,
ISNULL(S.ServerName, 'None') AS ServerName,
ISNULL(S.Comments, '') AS ServerComments,
ISNULL(S.VirtualServer, 1) AS VirtualServer,
-
+
-- hosting plan
P.PlanID,
HP.PlanName,
-
+
-- user
P.UserID,
U.Username,
@@ -7806,7 +7845,7 @@ INNER JOIN Users AS U ON P.UserID = U.UserID
INNER JOIN Servers AS S ON P.ServerID = S.ServerID
INNER JOIN HostingPlans AS HP ON P.PlanID = HP.PlanID
WHERE
- P.UserID = @UserID
+ P.UserID = @UserID
RETURN
GO
@@ -7991,7 +8030,7 @@ CREATE PROCEDURE [dbo].[GetWebDavAccessTokenById]
@Id int
)
AS
-SELECT
+SELECT
ID ,
FilePath ,
AuthData ,
@@ -7999,7 +8038,7 @@ SELECT
ExpirationDate,
AccountID,
ItemId
- FROM WebDavAccessTokens
+ FROM WebDavAccessTokens
Where ID = @Id AND ExpirationDate > getdate()
GO
@@ -8012,7 +8051,7 @@ CREATE PROCEDURE [dbo].[GetWebDavAccessTokenByAccessToken]
@AccessToken UNIQUEIDENTIFIER
)
AS
-SELECT
+SELECT
ID ,
FilePath ,
AuthData ,
@@ -8020,7 +8059,7 @@ SELECT
ExpirationDate,
AccountID,
ItemId
- FROM WebDavAccessTokens
+ FROM WebDavAccessTokens
Where AccessToken = @AccessToken AND ExpirationDate > getdate()
GO
@@ -8037,7 +8076,7 @@ END
GO
IF NOT EXISTS (SELECT * FROM SYS.TABLES WHERE name = 'ExchangeDeletedAccounts')
-CREATE TABLE ExchangeDeletedAccounts
+CREATE TABLE ExchangeDeletedAccounts
(
ID INT IDENTITY(1,1) NOT NULL PRIMARY KEY,
AccountID INT NOT NULL,
@@ -8106,7 +8145,7 @@ IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'AddOrganizatio
DROP PROCEDURE [dbo].[AddOrganizationDeletedUser]
GO
-CREATE PROCEDURE [dbo].[AddOrganizationDeletedUser]
+CREATE PROCEDURE [dbo].[AddOrganizationDeletedUser]
(
@ID int OUTPUT,
@AccountID int,
@@ -8205,7 +8244,7 @@ AS
DECLARE @Result2 int
SET @Result2 = (SELECT SUM(CAST(SIP.PropertyValue AS int)) FROM ServiceItemProperties AS SIP
INNER JOIN ServiceItems AS SI ON SIP.ItemID = SI.ItemID
- INNER JOIN ServiceItemProperties AS SIP2 ON
+ INNER JOIN ServiceItemProperties AS SIP2 ON
SIP2.ItemID = SI.ItemID AND SIP2.PropertyName = 'DynamicMemory.Enabled' AND SIP2.PropertyValue = 'True'
INNER JOIN PackagesTreeCache AS PT ON SI.PackageID = PT.PackageID
WHERE SIP.PropertyName = 'DynamicMemory.Maximum' AND PT.ParentPackageID = @PackageID)
@@ -8242,13 +8281,13 @@ AS
INNER JOIN PackagesTreeCache AS PT ON PIP.PackageID = PT.PackageID
WHERE PT.ParentPackageID = @PackageID AND IP.PoolID = 3)
ELSE IF @QuotaID = 319 -- BB Users
- SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
+ SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
INNER JOIN BlackBerryUsers bu ON ea.AccountID = bu.AccountID
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
WHERE pt.ParentPackageID = @PackageID)
ELSE IF @QuotaID = 320 -- OCS Users
- SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
+ SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts ea
INNER JOIN OCSUsers ocs ON ea.AccountID = ocs.AccountID
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
@@ -8262,12 +8301,12 @@ AS
SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts AS ea
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
- WHERE pt.ParentPackageID = @PackageID
+ WHERE pt.ParentPackageID = @PackageID
AND ea.AccountType IN (1)
AND ea.MailboxPlanId IS NOT NULL)
ELSE IF @QuotaID = 77 -- Exchange2007.DiskSpace
- SET @Result = (SELECT SUM(B.MailboxSizeMB) FROM ExchangeAccounts AS ea
- INNER JOIN ExchangeMailboxPlans AS B ON ea.MailboxPlanId = B.MailboxPlanId
+ SET @Result = (SELECT SUM(B.MailboxSizeMB) FROM ExchangeAccounts AS ea
+ INNER JOIN ExchangeMailboxPlans AS B ON ea.MailboxPlanId = B.MailboxPlanId
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
WHERE pt.ParentPackageID = @PackageID)
@@ -8316,7 +8355,7 @@ AS
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
WHERE PT.ParentPackageID = @PackageID)
ELSE IF @QuotaID = 451
- SET @Result = (SELECT COUNT(RS.[ID]) FROM [dbo].[RDSServers] RS
+ SET @Result = (SELECT COUNT(RS.[ID]) FROM [dbo].[RDSServers] RS
INNER JOIN ServiceItems si ON RS.ItemID = si.ItemID
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
WHERE PT.ParentPackageID = @PackageID)
@@ -8357,7 +8396,7 @@ BEGIN
END
GO
-ALTER PROCEDURE [dbo].[AddExchangeMailboxPlan]
+ALTER PROCEDURE [dbo].[AddExchangeMailboxPlan]
(
@MailboxPlanId int OUTPUT,
@ItemID int,
@@ -8471,7 +8510,7 @@ SET @MailboxPlanId = SCOPE_IDENTITY()
RETURN
GO
-ALTER PROCEDURE [dbo].[UpdateExchangeMailboxPlan]
+ALTER PROCEDURE [dbo].[UpdateExchangeMailboxPlan]
(
@MailboxPlanId int,
@MailboxPlan nvarchar(300),
@@ -8524,7 +8563,7 @@ UPDATE ExchangeMailboxPlans SET
MailboxPlanType = @MailboxPlanType,
AllowLitigationHold = @AllowLitigationHold,
RecoverableItemsWarningPct = @RecoverableItemsWarningPct,
- RecoverableItemsSpace = @RecoverableItemsSpace,
+ RecoverableItemsSpace = @RecoverableItemsSpace,
LitigationHoldUrl = @LitigationHoldUrl,
LitigationHoldMsg = @LitigationHoldMsg,
Archiving = @Archiving,
@@ -8537,7 +8576,7 @@ WHERE MailboxPlanId = @MailboxPlanId
RETURN
GO
-ALTER PROCEDURE [dbo].[GetExchangeMailboxPlan]
+ALTER PROCEDURE [dbo].[GetExchangeMailboxPlan]
(
@MailboxPlanId int
)
@@ -8613,7 +8652,7 @@ SELECT
FROM
ExchangeMailboxPlans
WHERE
- ItemID = @ItemID
+ ItemID = @ItemID
AND ((Archiving=@Archiving) OR ((@Archiving=0) AND (Archiving IS NULL)))
ORDER BY MailboxPlan
RETURN
@@ -8672,7 +8711,7 @@ SELECT
@ItemID,
PropertyName,
PropertyValue
-FROM OPENXML(@idoc, '/properties/property',1) WITH
+FROM OPENXML(@idoc, '/properties/property',1) WITH
(
PropertyName nvarchar(50) '@name',
PropertyValue nvarchar(3000) '@value'
@@ -8685,9 +8724,9 @@ INSERT INTO ServiceItemProperties
PropertyName,
PropertyValue
)
-SELECT
- ItemID,
- PropertyName,
+SELECT
+ ItemID,
+ PropertyName,
PropertyValue
FROM #TempTable
@@ -8698,7 +8737,7 @@ exec sp_xml_removedocument @idoc
COMMIT TRAN
-RETURN
+RETURN
GO
@@ -8706,7 +8745,7 @@ GO
IF OBJECTPROPERTY(object_id('dbo.GetExchangeAccountByAccountNameWithoutItemId'), N'IsProcedure') = 1
DROP PROCEDURE [dbo].[GetExchangeAccountByAccountNameWithoutItemId]
GO
-CREATE PROCEDURE [dbo].[GetExchangeAccountByAccountNameWithoutItemId]
+CREATE PROCEDURE [dbo].[GetExchangeAccountByAccountNameWithoutItemId]
(
@UserPrincipalName nvarchar(300)
)
@@ -8725,12 +8764,12 @@ SELECT
P.MailboxPlan,
E.SubscriberNumber,
E.UserPrincipalName,
- E.ArchivingMailboxPlanId,
+ E.ArchivingMailboxPlanId,
AP.MailboxPlan as 'ArchivingMailboxPlan',
E.EnableArchiving
FROM
ExchangeAccounts AS E
-LEFT OUTER JOIN ExchangeMailboxPlans AS P ON E.MailboxPlanId = P.MailboxPlanId
+LEFT OUTER JOIN ExchangeMailboxPlans AS P ON E.MailboxPlanId = P.MailboxPlanId
LEFT OUTER JOIN ExchangeMailboxPlans AS AP ON E.ArchivingMailboxPlanId = AP.MailboxPlanId
WHERE
E.UserPrincipalName = @UserPrincipalName
@@ -8855,11 +8894,11 @@ FROM ServiceItems AS SI
INNER JOIN ServiceItemTypes AS SIT ON SI.ItemTypeID = SIT.ItemTypeID
INNER JOIN ResourceGroups AS RG ON SIT.GroupID = RG.GroupID
INNER JOIN Services AS S ON SI.ServiceID = S.ServiceID
-WHERE S.ServiceID = @ServiceId
+WHERE S.ServiceID = @ServiceId
AND SIT.TypeName = @ItemTypeName
AND SI.ItemName = @ItemName
AND ((@GroupName IS NULL) OR (@GroupName IS NOT NULL AND RG.GroupName = @GroupName))
-RETURN
+RETURN
GO
-- Hyper-V 2012 R2 Provider
@@ -8928,10 +8967,10 @@ UPDATE [dbo].[Providers] SET [EditorControl] = N'HyperV2012R2', [GroupID] = 33 W
END
GO
-IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'GetVirtualMachinesPaged2012')
-DROP PROCEDURE GetVirtualMachinesPaged2012
+IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'GetVirtualMachinesPagedForPC')
+DROP PROCEDURE GetVirtualMachinesPagedForPC
GO
-CREATE PROCEDURE [dbo].[GetVirtualMachinesPaged2012]
+CREATE PROCEDURE [dbo].[GetVirtualMachinesPagedForPC]
(
@ActorID int,
@PackageID int,
@@ -8943,21 +8982,34 @@ CREATE PROCEDURE [dbo].[GetVirtualMachinesPaged2012]
@Recursive bit
)
AS
+
+
-- check rights
IF dbo.CheckActorPackageRights(@ActorID, @PackageID) = 0
-RAISERROR('You are not allowed to access this package', 16, 1)
+BEGIN
+ RAISERROR('You are not allowed to access this package', 16, 1)
+ RETURN
+END
-- start
DECLARE @condition nvarchar(700)
SET @condition = '
-SI.ItemTypeID = 41 -- VPS2012
+SI.ItemTypeID = 35 -- VPS
AND ((@Recursive = 0 AND P.PackageID = @PackageID)
OR (@Recursive = 1 AND dbo.CheckPackageParent(@PackageID, P.PackageID) = 1))
'
-IF @FilterColumn <> '' AND @FilterColumn IS NOT NULL
-AND @FilterValue <> '' AND @FilterValue IS NOT NULL
-SET @condition = @condition + ' AND ' + @FilterColumn + ' LIKE ''' + @FilterValue + ''''
+IF @FilterValue <> '' AND @FilterValue IS NOT NULL
+BEGIN
+ IF @FilterColumn <> '' AND @FilterColumn IS NOT NULL
+ SET @condition = @condition + ' AND ' + @FilterColumn + ' LIKE ''' + @FilterValue + ''''
+ ELSE
+ SET @condition = @condition + '
+ AND (ItemName LIKE ''' + @FilterValue + '''
+ OR Username LIKE ''' + @FilterValue + '''
+ OR ExternalIP LIKE ''' + @FilterValue + '''
+ OR IPAddress LIKE ''' + @FilterValue + ''')'
+END
IF @SortColumn IS NULL OR @SortColumn = ''
SET @SortColumn = 'SI.ItemName ASC'
@@ -9030,6 +9082,227 @@ exec sp_executesql @sql, N'@PackageID int, @StartRow int, @MaximumRows int, @Rec
RETURN
GO
+IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'GetVirtualMachinesPaged2012')
+DROP PROCEDURE GetVirtualMachinesPaged2012
+GO
+CREATE PROCEDURE [dbo].[GetVirtualMachinesPaged2012]
+(
+ @ActorID int,
+ @PackageID int,
+ @FilterColumn nvarchar(50) = '',
+ @FilterValue nvarchar(50) = '',
+ @SortColumn nvarchar(50),
+ @StartRow int,
+ @MaximumRows int,
+ @Recursive bit
+)
+AS
+-- check rights
+IF dbo.CheckActorPackageRights(@ActorID, @PackageID) = 0
+RAISERROR('You are not allowed to access this package', 16, 1)
+
+-- start
+DECLARE @condition nvarchar(700)
+SET @condition = '
+SI.ItemTypeID = 41 -- VPS2012
+AND ((@Recursive = 0 AND P.PackageID = @PackageID)
+OR (@Recursive = 1 AND dbo.CheckPackageParent(@PackageID, P.PackageID) = 1))
+'
+
+IF @FilterValue <> '' AND @FilterValue IS NOT NULL
+BEGIN
+ IF @FilterColumn <> '' AND @FilterColumn IS NOT NULL
+ SET @condition = @condition + ' AND ' + @FilterColumn + ' LIKE ''' + @FilterValue + ''''
+ ELSE
+ SET @condition = @condition + '
+ AND (ItemName LIKE ''' + @FilterValue + '''
+ OR Username LIKE ''' + @FilterValue + '''
+ OR ExternalIP LIKE ''' + @FilterValue + '''
+ OR IPAddress LIKE ''' + @FilterValue + ''')'
+END
+
+IF @SortColumn IS NULL OR @SortColumn = ''
+SET @SortColumn = 'SI.ItemName ASC'
+
+DECLARE @sql nvarchar(3500)
+
+set @sql = '
+SELECT COUNT(SI.ItemID) FROM Packages AS P
+INNER JOIN ServiceItems AS SI ON P.PackageID = SI.PackageID
+INNER JOIN Users AS U ON P.UserID = U.UserID
+LEFT OUTER JOIN (
+ SELECT PIP.ItemID, IP.ExternalIP FROM PackageIPAddresses AS PIP
+ INNER JOIN IPAddresses AS IP ON PIP.AddressID = IP.AddressID
+ WHERE PIP.IsPrimary = 1 AND IP.PoolID = 3 -- external IP addresses
+) AS EIP ON SI.ItemID = EIP.ItemID
+LEFT OUTER JOIN PrivateIPAddresses AS PIP ON PIP.ItemID = SI.ItemID AND PIP.IsPrimary = 1
+WHERE ' + @condition + '
+
+DECLARE @Items AS TABLE
+(
+ ItemID int
+);
+
+WITH TempItems AS (
+ SELECT ROW_NUMBER() OVER (ORDER BY ' + @SortColumn + ') as Row,
+ SI.ItemID
+ FROM Packages AS P
+ INNER JOIN ServiceItems AS SI ON P.PackageID = SI.PackageID
+ INNER JOIN Users AS U ON P.UserID = U.UserID
+ LEFT OUTER JOIN (
+ SELECT PIP.ItemID, IP.ExternalIP FROM PackageIPAddresses AS PIP
+ INNER JOIN IPAddresses AS IP ON PIP.AddressID = IP.AddressID
+ WHERE PIP.IsPrimary = 1 AND IP.PoolID = 3 -- external IP addresses
+ ) AS EIP ON SI.ItemID = EIP.ItemID
+ LEFT OUTER JOIN PrivateIPAddresses AS PIP ON PIP.ItemID = SI.ItemID AND PIP.IsPrimary = 1
+ WHERE ' + @condition + '
+)
+
+INSERT INTO @Items
+SELECT ItemID FROM TempItems
+WHERE TempItems.Row BETWEEN @StartRow + 1 and @StartRow + @MaximumRows
+
+SELECT
+ SI.ItemID,
+ SI.ItemName,
+ SI.PackageID,
+ P.PackageName,
+ P.UserID,
+ U.Username,
+
+ EIP.ExternalIP,
+ PIP.IPAddress
+FROM @Items AS TSI
+INNER JOIN ServiceItems AS SI ON TSI.ItemID = SI.ItemID
+INNER JOIN Packages AS P ON SI.PackageID = P.PackageID
+INNER JOIN Users AS U ON P.UserID = U.UserID
+LEFT OUTER JOIN (
+ SELECT PIP.ItemID, IP.ExternalIP FROM PackageIPAddresses AS PIP
+ INNER JOIN IPAddresses AS IP ON PIP.AddressID = IP.AddressID
+ WHERE PIP.IsPrimary = 1 AND IP.PoolID = 3 -- external IP addresses
+) AS EIP ON SI.ItemID = EIP.ItemID
+LEFT OUTER JOIN PrivateIPAddresses AS PIP ON PIP.ItemID = SI.ItemID AND PIP.IsPrimary = 1
+'
+
+--print @sql
+
+exec sp_executesql @sql, N'@PackageID int, @StartRow int, @MaximumRows int, @Recursive bit',
+@PackageID, @StartRow, @MaximumRows, @Recursive
+
+RETURN
+GO
+
+IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'GetVirtualMachinesPaged')
+DROP PROCEDURE GetVirtualMachinesPaged
+GO
+CREATE PROCEDURE [dbo].[GetVirtualMachinesPaged]
+(
+ @ActorID int,
+ @PackageID int,
+ @FilterColumn nvarchar(50) = '',
+ @FilterValue nvarchar(50) = '',
+ @SortColumn nvarchar(50),
+ @StartRow int,
+ @MaximumRows int,
+ @Recursive bit
+)
+AS
+
+
+-- check rights
+IF dbo.CheckActorPackageRights(@ActorID, @PackageID) = 0
+RAISERROR('You are not allowed to access this package', 16, 1)
+
+-- start
+DECLARE @condition nvarchar(700)
+SET @condition = '
+SI.ItemTypeID = 33 -- VPS
+AND ((@Recursive = 0 AND P.PackageID = @PackageID)
+OR (@Recursive = 1 AND dbo.CheckPackageParent(@PackageID, P.PackageID) = 1))
+'
+
+IF @FilterValue <> '' AND @FilterValue IS NOT NULL
+BEGIN
+ IF @FilterColumn <> '' AND @FilterColumn IS NOT NULL
+ SET @condition = @condition + ' AND ' + @FilterColumn + ' LIKE ''' + @FilterValue + ''''
+ ELSE
+ SET @condition = @condition + '
+ AND (ItemName LIKE ''' + @FilterValue + '''
+ OR Username LIKE ''' + @FilterValue + '''
+ OR ExternalIP LIKE ''' + @FilterValue + '''
+ OR IPAddress LIKE ''' + @FilterValue + ''')'
+END
+
+IF @SortColumn IS NULL OR @SortColumn = ''
+SET @SortColumn = 'SI.ItemName ASC'
+
+DECLARE @sql nvarchar(3500)
+
+set @sql = '
+SELECT COUNT(SI.ItemID) FROM Packages AS P
+INNER JOIN ServiceItems AS SI ON P.PackageID = SI.PackageID
+INNER JOIN Users AS U ON P.UserID = U.UserID
+LEFT OUTER JOIN (
+ SELECT PIP.ItemID, IP.ExternalIP FROM PackageIPAddresses AS PIP
+ INNER JOIN IPAddresses AS IP ON PIP.AddressID = IP.AddressID
+ WHERE PIP.IsPrimary = 1 AND IP.PoolID = 3 -- external IP addresses
+) AS EIP ON SI.ItemID = EIP.ItemID
+LEFT OUTER JOIN PrivateIPAddresses AS PIP ON PIP.ItemID = SI.ItemID AND PIP.IsPrimary = 1
+WHERE ' + @condition + '
+
+DECLARE @Items AS TABLE
+(
+ ItemID int
+);
+
+WITH TempItems AS (
+ SELECT ROW_NUMBER() OVER (ORDER BY ' + @SortColumn + ') as Row,
+ SI.ItemID
+ FROM Packages AS P
+ INNER JOIN ServiceItems AS SI ON P.PackageID = SI.PackageID
+ INNER JOIN Users AS U ON P.UserID = U.UserID
+ LEFT OUTER JOIN (
+ SELECT PIP.ItemID, IP.ExternalIP FROM PackageIPAddresses AS PIP
+ INNER JOIN IPAddresses AS IP ON PIP.AddressID = IP.AddressID
+ WHERE PIP.IsPrimary = 1 AND IP.PoolID = 3 -- external IP addresses
+ ) AS EIP ON SI.ItemID = EIP.ItemID
+ LEFT OUTER JOIN PrivateIPAddresses AS PIP ON PIP.ItemID = SI.ItemID AND PIP.IsPrimary = 1
+ WHERE ' + @condition + '
+)
+
+INSERT INTO @Items
+SELECT ItemID FROM TempItems
+WHERE TempItems.Row BETWEEN @StartRow + 1 and @StartRow + @MaximumRows
+
+SELECT
+ SI.ItemID,
+ SI.ItemName,
+ SI.PackageID,
+ P.PackageName,
+ P.UserID,
+ U.Username,
+
+ EIP.ExternalIP,
+ PIP.IPAddress
+FROM @Items AS TSI
+INNER JOIN ServiceItems AS SI ON TSI.ItemID = SI.ItemID
+INNER JOIN Packages AS P ON SI.PackageID = P.PackageID
+INNER JOIN Users AS U ON P.UserID = U.UserID
+LEFT OUTER JOIN (
+ SELECT PIP.ItemID, IP.ExternalIP FROM PackageIPAddresses AS PIP
+ INNER JOIN IPAddresses AS IP ON PIP.AddressID = IP.AddressID
+ WHERE PIP.IsPrimary = 1 AND IP.PoolID = 3 -- external IP addresses
+) AS EIP ON SI.ItemID = EIP.ItemID
+LEFT OUTER JOIN PrivateIPAddresses AS PIP ON PIP.ItemID = SI.ItemID AND PIP.IsPrimary = 1
+'
+
+--print @sql
+
+exec sp_executesql @sql, N'@PackageID int, @StartRow int, @MaximumRows int, @Recursive bit',
+@PackageID, @StartRow, @MaximumRows, @Recursive
+
+RETURN
+GO
--ES OWA Editing
IF NOT EXISTS (SELECT * FROM SYS.TABLES WHERE name = 'EnterpriseFoldersOwaPermissions')
@@ -9037,8 +9310,8 @@ CREATE TABLE EnterpriseFoldersOwaPermissions
(
ID INT IDENTITY(1,1) NOT NULL PRIMARY KEY,
ItemID INT NOT NULL,
- FolderID INT NOT NULL,
- AccountID INT NOT NULL
+ FolderID INT NOT NULL,
+ AccountID INT NOT NULL
)
GO
@@ -9088,21 +9361,21 @@ CREATE PROCEDURE [dbo].[AddEnterpriseFolderOwaUser]
(
@ESOwsaUserId INT OUTPUT,
@ItemID INT,
- @FolderID INT,
- @AccountID INT
+ @FolderID INT,
+ @AccountID INT
)
AS
INSERT INTO EnterpriseFoldersOwaPermissions
(
ItemID ,
- FolderID,
+ FolderID,
AccountID
)
VALUES
(
@ItemID,
- @FolderID,
- @AccountID
+ @FolderID,
+ @AccountID
)
SET @ESOwsaUserId = SCOPE_IDENTITY()
@@ -9121,7 +9394,7 @@ CREATE PROCEDURE [dbo].[GetEnterpriseFolderOwaUsers]
@FolderID INT
)
AS
-SELECT
+SELECT
EA.AccountID,
EA.ItemID,
EA.AccountType,
@@ -9131,7 +9404,7 @@ SELECT
EA.MailEnabledPublicFolder,
EA.MailboxPlanId,
EA.SubscriberNumber,
- EA.UserPrincipalName
+ EA.UserPrincipalName
FROM EnterpriseFoldersOwaPermissions AS EFOP
LEFT JOIN ExchangeAccounts AS EA ON EA.AccountID = EFOP.AccountID
WHERE EFOP.ItemID = @ItemID AND EFOP.FolderID = @FolderID
@@ -9167,7 +9440,7 @@ CREATE PROCEDURE [dbo].[GetUserEnterpriseFolderWithOwaEditPermission]
@AccountID INT
)
AS
-SELECT
+SELECT
EF.FolderName
FROM EnterpriseFoldersOwaPermissions AS EFOP
LEFT JOIN [dbo].[EnterpriseFolders] AS EF ON EF.EnterpriseFolderID = EFOP.FolderID
@@ -9179,7 +9452,7 @@ GO
IF NOT EXISTS (SELECT * FROM [dbo].[Providers] WHERE [DisplayName] = 'Hosted MS CRM 2015')
BEGIN
-INSERT [dbo].[Providers] ([ProviderId], [GroupId], [ProviderName], [DisplayName], [ProviderType], [EditorControl], [DisableAutoDiscovery])
+INSERT [dbo].[Providers] ([ProviderId], [GroupId], [ProviderName], [DisplayName], [ProviderType], [EditorControl], [DisableAutoDiscovery])
VALUES(1205, 24, N'CRM', N'Hosted MS CRM 2015', N'WebsitePanel.Providers.HostedSolution.CRMProvider2015, WebsitePanel.Providers.HostedSolution.Crm2015', N'CRM2011', NULL)
END
GO
@@ -9208,7 +9481,7 @@ Set @RDSSetupLetterHtmlBody = N'
.Summary A { color: ##0153A4; }
.Summary { font-family: Tahoma; font-size: 9pt; }
.Summary H1 { font-size: 1.7em; color: ##1F4978; border-bottom: dotted 3px ##efefef; }
- .Summary H2 { font-size: 1.3em; color: ##1F4978; }
+ .Summary H2 { font-size: 1.3em; color: ##1F4978; }
.Summary TABLE { border: solid 1px ##e5e5e5; }
.Summary TH,
.Summary TD.Label { padding: 5px; font-size: 8pt; font-weight: bold; background-color: ##f5f5f5; }
@@ -9271,14 +9544,14 @@ UPDATE [dbo].[UserSettings] SET [PropertyValue] = @RDSSetupLetterTextBody WHERE
GO
IF NOT EXISTS (SELECT * FROM [dbo].[ResourceGroups] WHERE GroupName = 'Sharepoint Foundation Server')
-BEGIN
+BEGIN
DECLARE @group_order AS INT
DECLARE @group_controller AS NVARCHAR(1000)
DECLARE @group_id AS INT
DECLARE @provider_id AS INT
UPDATE [dbo].[ResourceGroups] SET GroupName = 'Sharepoint Foundation Server' WHERE GroupName = 'Hosted Sharepoint'
- SELECT @group_order = GroupOrder, @group_controller = GroupController FROM [dbo].[ResourceGroups] WHERE GroupName = 'Sharepoint Foundation Server'
+ SELECT @group_order = GroupOrder, @group_controller = GroupController FROM [dbo].[ResourceGroups] WHERE GroupName = 'Sharepoint Foundation Server'
SELECT TOP 1 @group_id = GroupId + 1 From [dbo].[ResourceGroups] ORDER BY GroupID DESC
SELECT TOP 1 @provider_id = ProviderId + 1 From [dbo].[Providers] ORDER BY ProviderID DESC
UPDATE [dbo].[ResourceGroups] SET GroupOrder = GroupOrder + 1 WHERE GroupOrder > @group_order
@@ -9311,22 +9584,22 @@ CREATE PROCEDURE [dbo].[GetLyncUsers]
@SortColumn nvarchar(40),
@SortDirection nvarchar(20),
@StartRow int,
- @Count int
+ @Count int
)
AS
-CREATE TABLE #TempLyncUsers
-(
+CREATE TABLE #TempLyncUsers
+(
[ID] [int] IDENTITY(1,1) NOT NULL,
- [AccountID] [int],
+ [AccountID] [int],
[ItemID] [int] NOT NULL,
[AccountName] [nvarchar](300) NOT NULL,
[DisplayName] [nvarchar](300) NOT NULL,
[UserPrincipalName] [nvarchar](300) NULL,
[SipAddress] [nvarchar](300) NULL,
[SamAccountName] [nvarchar](100) NULL,
- [LyncUserPlanId] [int] NOT NULL,
- [LyncUserPlanName] [nvarchar] (300) NOT NULL,
+ [LyncUserPlanId] [int] NOT NULL,
+ [LyncUserPlanName] [nvarchar] (300) NOT NULL,
)
DECLARE @condition nvarchar(700)
@@ -9355,9 +9628,9 @@ END
DECLARE @sql nvarchar(3500)
set @sql = '
- INSERT INTO
- #TempLyncUsers
- SELECT
+ INSERT INTO
+ #TempLyncUsers
+ SELECT
ea.AccountID,
ea.ItemID,
ea.AccountName,
@@ -9366,29 +9639,29 @@ set @sql = '
ou.SipAddress,
ea.SamAccountName,
ou.LyncUserPlanId,
- lp.LyncUserPlanName
- FROM
- ExchangeAccounts ea
- INNER JOIN
+ lp.LyncUserPlanName
+ FROM
+ ExchangeAccounts ea
+ INNER JOIN
LyncUsers ou
INNER JOIN
- LyncUserPlans lp
- ON
- ou.LyncUserPlanId = lp.LyncUserPlanId
+ LyncUserPlans lp
ON
+ ou.LyncUserPlanId = lp.LyncUserPlanId
+ ON
ea.AccountID = ou.AccountID
- WHERE
+ WHERE
ea.ItemID = @ItemID ' + @condition
exec sp_executesql @sql, N'@ItemID int',@ItemID
DECLARE @RetCount int
-SELECT @RetCount = COUNT(ID) FROM #TempLyncUsers
+SELECT @RetCount = COUNT(ID) FROM #TempLyncUsers
IF (@SortDirection = 'ASC')
BEGIN
- SELECT * FROM #TempLyncUsers
- WHERE ID > @StartRow AND ID <= (@StartRow + @Count)
+ SELECT * FROM #TempLyncUsers
+ WHERE ID > @StartRow AND ID <= (@StartRow + @Count)
END
ELSE
BEGIN
@@ -9396,32 +9669,32 @@ BEGIN
BEGIN
IF (@SortColumn = 'DisplayName')
BEGIN
- SELECT * FROM #TempLyncUsers
+ SELECT * FROM #TempLyncUsers
WHERE ID >@RetCount - @Count - @StartRow AND ID <= @RetCount- @StartRow ORDER BY DisplayName DESC
END
IF (@SortColumn = 'UserPrincipalName')
BEGIN
- SELECT * FROM #TempLyncUsers
+ SELECT * FROM #TempLyncUsers
WHERE ID >@RetCount - @Count - @StartRow AND ID <= @RetCount- @StartRow ORDER BY UserPrincipalName DESC
END
IF (@SortColumn = 'SipAddress')
BEGIN
- SELECT * FROM #TempLyncUsers
+ SELECT * FROM #TempLyncUsers
WHERE ID >@RetCount - @Count - @StartRow AND ID <= @RetCount- @StartRow ORDER BY SipAddress DESC
END
IF (@SortColumn = 'LyncUserPlanName')
BEGIN
- SELECT * FROM #TempLyncUsers
+ SELECT * FROM #TempLyncUsers
WHERE ID >@RetCount - @Count - @StartRow AND ID <= @RetCount- @StartRow ORDER BY LyncUserPlanName DESC
END
END
ELSE
BEGIN
- SELECT * FROM #TempLyncUsers
+ SELECT * FROM #TempLyncUsers
WHERE ID >@RetCount - @Count - @StartRow AND ID <= @RetCount- @StartRow ORDER BY UserPrincipalName DESC
- END
+ END
END
DROP TABLE #TempLyncUsers
@@ -9488,10 +9761,10 @@ WHERE ' + @condition
print @sql
-exec sp_executesql @sql, N'@ItemID int, @IncludeMailboxes bit',
+exec sp_executesql @sql, N'@ItemID int, @IncludeMailboxes bit',
@ItemID, @IncludeMailboxes
-RETURN
+RETURN
GO
@@ -9506,7 +9779,7 @@ CREATE TABLE [dbo].[RDSServerSettings](
[PropertyValue] [ntext] COLLATE Latin1_General_CI_AS NULL,
[ApplyUsers] [BIT] NOT NULL,
[ApplyAdministrators] [BIT] NOT NULL
- CONSTRAINT [PK_RDSServerSettings] PRIMARY KEY CLUSTERED
+ CONSTRAINT [PK_RDSServerSettings] PRIMARY KEY CLUSTERED
(
[RdsServerId] ASC,
[SettingsName] ASC,
@@ -9528,7 +9801,7 @@ CREATE PROCEDURE GetRDSServerSettings
AS
SELECT RDSServerId, PropertyName, PropertyValue, ApplyUsers, ApplyAdministrators
FROM RDSServerSettings
- WHERE RDSServerId = @ServerId AND SettingsName = @SettingsName
+ WHERE RDSServerId = @ServerId AND SettingsName = @SettingsName
GO
IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'DeleteRDSServerSettings')
@@ -9568,7 +9841,7 @@ INSERT INTO RDSServerSettings
ApplyUsers,
ApplyAdministrators,
PropertyName,
- PropertyValue
+ PropertyValue
)
SELECT
@ServerId,
@@ -9577,7 +9850,7 @@ SELECT
ApplyAdministrators,
PropertyName,
PropertyValue
-FROM OPENXML(@idoc, '/properties/property',1) WITH
+FROM OPENXML(@idoc, '/properties/property',1) WITH
(
PropertyName nvarchar(50) '@name',
PropertyValue ntext '@value',
@@ -9589,7 +9862,7 @@ exec sp_xml_removedocument @idoc
COMMIT TRAN
-RETURN
+RETURN
GO
@@ -9608,24 +9881,27 @@ BEGIN
DELETE FROM Providers WHERE GroupID = @group_id
DELETE FROM Quotas WHERE GroupID = @group_id
DELETE FROM VirtualGroups WHERE GroupID = @group_id
- DELETE FROM ServiceItemTypes WHERE GroupID = @group_id
+ DELETE FROM ServiceItemTypes WHERE GroupID = @group_id
DELETE FROM ResourceGroups WHERE GroupID = @group_id
END
GO
IF NOT EXISTS (SELECT * FROM [dbo].[ServiceItemTypes] WHERE DisplayName = 'SharePointFoundationSiteCollection')
-BEGIN
+BEGIN
DECLARE @group_id AS INT
DECLARE @item_type_id INT
SELECT TOP 1 @item_type_id = ItemTypeId + 1 FROM [dbo].[ServiceItemTypes] ORDER BY ItemTypeId DESC
UPDATE [dbo].[ServiceItemTypes] SET DisplayName = 'SharePointFoundationSiteCollection' WHERE DisplayName = 'SharePointSiteCollection'
- SELECT @group_id = GroupId FROM [dbo].[ResourceGroups] WHERE GroupName = 'Sharepoint Server'
+ SELECT @group_id = GroupId FROM [dbo].[ResourceGroups] WHERE GroupName = 'Sharepoint Server'
- INSERT INTO [dbo].[ServiceItemTypes] (ItemTypeId, GroupId, DisplayName, TypeName, TypeOrder, CalculateDiskSpace, CalculateBandwidth, Suspendable, Disposable, Searchable, Importable, Backupable)
+ INSERT INTO [dbo].[ServiceItemTypes] (ItemTypeId, GroupId, DisplayName, TypeName, TypeOrder, CalculateDiskSpace, CalculateBandwidth, Suspendable, Disposable, Searchable, Importable, Backupable)
(SELECT TOP 1 @item_type_id, @group_id, 'SharePointSiteCollection', TypeName, 100, CalculateDiskSpace, CalculateBandwidth, Suspendable, Disposable, Searchable, Importable, Backupable FROM [dbo].[ServiceItemTypes] WHERE DisplayName = 'SharePointFoundationSiteCollection')
END
+
+
+
GO
UPDATE [dbo].[Quotas] SET GroupID = 45 WHERE QuotaName = 'EnterpriseStorage.DriveMaps'
@@ -9671,7 +9947,7 @@ END
GO
-
+
ALTER PROCEDURE [dbo].[AddServiceItem]
(
@ActorID int,
@@ -9710,9 +9986,9 @@ BEGIN
BEGIN
INSERT INTO ServiceItems (PackageID, ItemTypeID,ServiceID,ItemName,CreatedDate)
VALUES(1, @ItemTypeID, @ServiceID, 'System', @CreatedDate)
-
+
DECLARE @TempItemID int
-
+
SET @TempItemID = SCOPE_IDENTITY()
INSERT INTO ExchangeOrganizations (ItemID, OrganizationID)
VALUES(@TempItemID, 'System')
@@ -9720,7 +9996,7 @@ BEGIN
END
-
+
-- add item
INSERT INTO ServiceItems
(
@@ -9759,7 +10035,7 @@ SELECT
@ItemID,
PropertyName,
PropertyValue
-FROM OPENXML(@idoc, '/properties/property',1) WITH
+FROM OPENXML(@idoc, '/properties/property',1) WITH
(
PropertyName nvarchar(50) '@name',
PropertyValue nvarchar(3000) '@value'
@@ -9772,9 +10048,9 @@ INSERT INTO ServiceItemProperties
PropertyName,
PropertyValue
)
-SELECT
- ItemID,
- PropertyName,
+SELECT
+ ItemID,
+ PropertyName,
PropertyValue
FROM #TempTable
@@ -9784,7 +10060,7 @@ DROP TABLE #TempTable
exec sp_xml_removedocument @idoc
COMMIT TRAN
-RETURN
+RETURN
GO
UPDATE [dbo].[ServiceItemTypes] SET TypeName ='WebsitePanel.Providers.SharePoint.SharePointEnterpriseSiteCollection, WebsitePanel.Providers.Base' WHERE DisplayName = 'SharePointEnterpriseSiteCollection'
@@ -9830,7 +10106,7 @@ Set @UserPasswordExpirationLetterHtmlBody = N'
+
+ Password request notification
+
+
+
+
+
+
Password request notification
+
+
+
+Hello #user.FirstName#,
+
+
+
+
+Your account have been created. In order to create a password for your account, please follow next link:
+
+
+
#passwordResetLink#
+
+
+If you have any questions regarding your hosting account, feel free to contact our support department at any time.
+
+
+
+Best regards
+
+
+';
+
+IF NOT EXISTS (SELECT * FROM [dbo].[UserSettings] WHERE [UserID] = 1 AND [SettingsName]= N'OrganizationUserPasswordRequestLetter' AND [PropertyName]= N'HtmlBody' )
+BEGIN
+INSERT [dbo].[UserSettings] ([UserID], [SettingsName], [PropertyName], [PropertyValue]) VALUES (1, N'OrganizationUserPasswordRequestLetter', N'HtmlBody', @OrganizationUserPasswordRequestLetterHtmlBody)
+END
+GO
+
+
+IF NOT EXISTS (SELECT * FROM [dbo].[UserSettings] WHERE [UserID] = 1 AND [SettingsName]= N'OrganizationUserPasswordRequestLetter' AND [PropertyName]= N'Priority' )
+BEGIN
+INSERT [dbo].[UserSettings] ([UserID], [SettingsName], [PropertyName], [PropertyValue]) VALUES (1, N'OrganizationUserPasswordRequestLetter', N'Priority', N'Normal')
+END
+GO
+IF NOT EXISTS (SELECT * FROM [dbo].[UserSettings] WHERE [UserID] = 1 AND [SettingsName]= N'OrganizationUserPasswordRequestLetter' AND [PropertyName]= N'Subject' )
+BEGIN
+INSERT [dbo].[UserSettings] ([UserID], [SettingsName], [PropertyName], [PropertyValue]) VALUES (1, N'OrganizationUserPasswordRequestLetter', N'Subject', N'Password request notification')
+END
+GO
+IF NOT EXISTS (SELECT * FROM [dbo].[UserSettings] WHERE [UserID] = 1 AND [SettingsName]= N'OrganizationUserPasswordRequestLetter' AND [PropertyName]= N'LogoUrl' )
+BEGIN
+INSERT [dbo].[UserSettings] ([UserID], [SettingsName], [PropertyName], [PropertyValue]) VALUES (1, N'OrganizationUserPasswordRequestLetter', N'LogoUrl', N'')
+END
+GO
+
+
+DECLARE @OrganizationUserPasswordRequestLetterTextBody nvarchar(2500)
+
+Set @OrganizationUserPasswordRequestLetterTextBody = N'=========================================
+ Password request notification
+=========================================
+
+
+Hello #user.FirstName#,
+
+
+Your account have been created. In order to create a password for your account, please follow next link:
+
+#passwordResetLink#
+
+If you have any questions regarding your hosting account, feel free to contact our support department at any time.
+
+Best regards'
+
+IF NOT EXISTS (SELECT * FROM [dbo].[UserSettings] WHERE [UserID] = 1 AND [SettingsName]= N'OrganizationUserPasswordRequestLetter' AND [PropertyName]= N'TextBody' )
+BEGIN
+INSERT [dbo].[UserSettings] ([UserID], [SettingsName], [PropertyName], [PropertyValue]) VALUES (1, N'OrganizationUserPasswordRequestLetter', N'TextBody', @OrganizationUserPasswordRequestLetterTextBody)
+END
+GO
+
+DECLARE @OrganizationUserPasswordRequestLetterSMSBody nvarchar(2500)
+
+Set @OrganizationUserPasswordRequestLetterSMSBody = N'
+User have been created. Password request url:
+#passwordResetLink#'
+
+IF NOT EXISTS (SELECT * FROM [dbo].[UserSettings] WHERE [UserID] = 1 AND [SettingsName]= N'OrganizationUserPasswordRequestLetter' AND [PropertyName]= N'SMSBody' )
+BEGIN
+INSERT [dbo].[UserSettings] ([UserID], [SettingsName], [PropertyName], [PropertyValue]) VALUES (1, N'OrganizationUserPasswordRequestLetter', N'SMSBody', @OrganizationUserPasswordRequestLetterSMSBody)
+END
+GO
+
+
+
-- Exchange setup EMAIL TEMPLATE
IF NOT EXISTS (SELECT * FROM [dbo].[UserSettings] WHERE [UserID] = 1 AND [SettingsName]= N'ExchangeMailboxSetupLetter' AND [PropertyName]= N'From' )
BEGIN
-INSERT [dbo].[UserSettings] ([UserID], [SettingsName], [PropertyName], [PropertyValue]) VALUES (1, N'ExchangeMailboxSetupLetter', N'From', N'orders@virtuworks.com')
+INSERT [dbo].[UserSettings] ([UserID], [SettingsName], [PropertyName], [PropertyValue]) VALUES (1, N'ExchangeMailboxSetupLetter', N'From', N'')
END
GO
@@ -10197,7 +10577,7 @@ Set @ExchangeMailboxSetupLetterHtmlBody = N'
- |
+![]() |
@@ -10231,11 +10611,11 @@ Set @ExchangeMailboxSetupLetterHtmlBody = N'
-Visit VirtuWorks.com |
-Account Management |
-Control Panel |
-Support |
-Contact Us |
+ |
+ |
+ |
+ |
+ |
@@ -10267,7 +10647,7 @@ Set @ExchangeMailboxSetupLetterHtmlBody = N'
@@ -10306,38 +10686,38 @@ Set @ExchangeMailboxSetupLetterHtmlBody = N'https://mail.virtuworks.net/owa
+
Outlook (Windows Clients)
- To configure Outlook 2013 to work with the VirtuWorks servers, please reference:
+ To configure Outlook 2013 to work with the servers, please reference:
- http://www.virtuworks.com/how-to-configure-my-outlook-2010-client-to-work-with-my-velum-hosted-exchange-account/
+
If you need to download and install the Outlook client:
-
+
-
+
ActiveSync, iPhone, iPad
@@ -10358,17 +10738,17 @@ Set @ExchangeMailboxSetupLetterHtmlBody = N'Control Panel.
+ Passwords can be changed at any time using Webmail or the Control Panel.
Control Panel
- If you need to change the details of your account, you can easily do this using Control Panel.
+ If you need to change the details of your account, you can easily do this using Control Panel.
Support
- You have 2 options, email help@virtuworks.com or use the web interface at http://www.virtuworks.com/support
-
+ You have 2 options, email or use the web interface at
+
@@ -10395,9 +10775,9 @@ Set @ExchangeMailboxSetupLetterHtmlBody = N'
-Visit VirtuWorks.com Learn more about the services VirtuWorks can provide to improve your business. |
-Privacy Policy VirtuWorks follows strict guidelines in protecting your privacy. Learn about our Privacy Policy. |
-Contact Us Questions? For more information, contact us. |
+ Learn more about the services can provide to improve your business. |
+Privacy Policy follows strict guidelines in protecting your privacy. Learn about our Privacy Policy. |
+Contact Us Questions? For more information, contact us. |
@@ -10436,7 +10816,7 @@ END
GO
IF NOT EXISTS (SELECT * FROM [dbo].[UserSettings] WHERE [UserID] = 1 AND [SettingsName]= N'ExchangeMailboxSetupLetter' AND [PropertyName]= N'Subject' )
BEGIN
-INSERT [dbo].[UserSettings] ([UserID], [SettingsName], [PropertyName], [PropertyValue]) VALUES (1, N'ExchangeMailboxSetupLetter', N'Subject', N'Virtuworks Hosted Exchange Mailbox Setup')
+INSERT [dbo].[UserSettings] ([UserID], [SettingsName], [PropertyName], [PropertyValue]) VALUES (1, N'ExchangeMailboxSetupLetter', N'Subject', N' Hosted Exchange Mailbox Setup')
END
GO
@@ -10446,7 +10826,7 @@ DECLARE @ExchangeMailboxSetupLetterTextBody nvarchar(2500)
Set @ExchangeMailboxSetupLetterTextBody = N'
Hello #Account.DisplayName#,
-Thanks for choosing VirtuWorks as your Exchange hosting provider.
+Thanks for choosing as your Exchange hosting provider.
User Accounts
@@ -10472,22 +10852,21 @@ In order for us to accept mail for your domain, you will need to point your MX r
Webmail (OWA, Outlook Web Access)
=================================
-https://mail.virtuworks.net/owa
+
=================================
Outlook (Windows Clients)
=================================
-To configure Outlook 2010 to work with VirtuWorks servers, please reference:
+To configure Outlook 2010 to work with servers, please reference:
+
-https://portal.virtuworks.net/whmcs/knowledgebase.php?action=displayarticle&id=2
If you need to download and install the Outlook 2010 client:
Outlook 2010 Download URL:
-32 Bit - http://www.virtuworks.net/downloads/Outlook2010-32bit.zip
-64 Bit - http://www.virtuworks.net/downloads/Outlook2010-64bit.zip
-KEY: HXGFV-DY3HM-4W2BQ-3R7KQ-K8P49
+
+KEY:
=================================
ActiveSync, iPhone, iPad
@@ -10502,21 +10881,21 @@ Your username: #SamUsername#
Password Changes
=================================
-Passwords can be changed at any time using Webmail or the Control Panel (https://controlpanel.virtuworks.net).
+Passwords can be changed at any time using Webmail or the Control Panel
=================================
Control Panel
=================================
-If you need to change the details of your account, you can easily do this using the Control Panel (https://controlpanel.virtuworks.net).
+If you need to change the details of your account, you can easily do this using the Control Panel
=================================
Support
=================================
-You have 2 options, email help@virtuworks.com or use the web interface at http://www.virtuworks.com/contact/'
+You have 2 options, email or use the web interface at '
IF NOT EXISTS (SELECT * FROM [dbo].[UserSettings] WHERE [UserID] = 1 AND [SettingsName]= N'ExchangeMailboxSetupLetter' AND [PropertyName]= N'TextBody' )
BEGIN
@@ -10633,7 +11012,7 @@ CREATE PROCEDURE [dbo].[GetAccessTokenByAccessToken]
@TokenType INT
)
AS
-SELECT
+SELECT
ID ,
AccessTokenGuid,
ExpirationDate,
@@ -10641,7 +11020,7 @@ SELECT
ItemId,
TokenType,
SmsResponse
- FROM AccessTokens
+ FROM AccessTokens
Where AccessTokenGuid = @AccessToken AND ExpirationDate > getdate() AND TokenType = @TokenType
GO
@@ -10696,19 +11075,19 @@ CREATE PROCEDURE [dbo].[GetExchangeOrganizationSettings]
@SettingsName nvarchar(100)
)
AS
-SELECT
+SELECT
ItemId,
SettingsName,
Xml
-FROM ExchangeOrganizationSettings
+FROM ExchangeOrganizationSettings
Where ItemId = @ItemId AND SettingsName = @SettingsName
GO
-- Exchange Account password column removed
-if exists(select * from sys.columns
+if exists(select * from sys.columns
where Name = N'AccountPassword' and Object_ID = Object_ID(N'ExchangeAccounts'))
begin
ALTER TABLE [ExchangeAccounts] DROP COLUMN [AccountPassword]
@@ -10717,7 +11096,7 @@ end
IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'AddExchangeAccount')
DROP PROCEDURE AddExchangeAccount
GO
-CREATE PROCEDURE [dbo].[AddExchangeAccount]
+CREATE PROCEDURE [dbo].[AddExchangeAccount]
(
@AccountID int OUTPUT,
@ItemID int,
@@ -10820,7 +11199,7 @@ SELECT
FROM ExchangeAccounts
WHERE AccountID = @AccountID
-RETURN
+RETURN
GO
@@ -10829,6 +11208,963 @@ GO
SET QUOTED_IDENTIFIER OFF
GO
+IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'GetSearchTableByColumns')
+DROP PROCEDURE GetSearchTableByColumns
+GO
+CREATE PROCEDURE [dbo].[GetSearchTableByColumns]
+(
+ @PagedStored nvarchar(50) = '',
+ @FilterValue nvarchar(50) = '',
+ @MaximumRows int,
+
+ @Recursive bit,
+ @PoolID int,
+ @ServerID int,
+ @ActorID int,
+ @StatusID int,
+ @PlanID int,
+ @OrgID int,
+ @ItemTypeName nvarchar(200),
+ @GroupName nvarchar(100) = NULL,
+ @PackageID int,
+ @VPSType nvarchar(100) = NULL,
+ @UserID int,
+ @RoleID int,
+ @FilterColumns nvarchar(200)
+)
+AS
+
+DECLARE @VPSTypeID int
+IF @VPSType <> '' AND @VPSType IS NOT NULL
+BEGIN
+ SET @VPSTypeID = CASE @VPSType
+ WHEN 'VPS' THEN 33
+ WHEN 'VPS2012' THEN 41
+ WHEN 'VPSForPC' THEN 35
+ ELSE 33
+ END
+END
+
+DECLARE @sql nvarchar(3000)
+SET @sql = CASE @PagedStored
+WHEN 'Domains' THEN '
+ DECLARE @Domains TABLE
+ (
+ DomainID int,
+ DomainName nvarchar(100),
+ Username nvarchar(100),
+ FullName nvarchar(100),
+ Email nvarchar(100)
+ )
+ INSERT INTO @Domains (DomainID, DomainName, Username, FullName, Email)
+ SELECT
+ D.DomainID,
+ D.DomainName,
+ U.Username,
+ U.FullName,
+ U.Email
+ FROM Domains AS D
+ INNER JOIN Packages AS P ON D.PackageID = P.PackageID
+ INNER JOIN UsersDetailed AS U ON P.UserID = U.UserID
+ LEFT OUTER JOIN ServiceItems AS Z ON D.ZoneItemID = Z.ItemID
+ LEFT OUTER JOIN Services AS S ON Z.ServiceID = S.ServiceID
+ LEFT OUTER JOIN Servers AS SRV ON S.ServerID = SRV.ServerID
+ WHERE
+ (D.IsInstantAlias = 0 AND D.IsDomainPointer = 0)
+ AND ((@Recursive = 0 AND D.PackageID = @PackageID)
+ OR (@Recursive = 1 AND dbo.CheckPackageParent(@PackageID, D.PackageID) = 1))
+ AND (@ServerID = 0 OR (@ServerID > 0 AND S.ServerID = @ServerID))
+ '
+WHEN 'IPAddresses' THEN '
+ DECLARE @IPAddresses TABLE
+ (
+ AddressesID int,
+ ExternalIP nvarchar(100),
+ InternalIP nvarchar(100),
+ DefaultGateway nvarchar(100),
+ ServerName nvarchar(100),
+ UserName nvarchar(100),
+ ItemName nvarchar(100)
+ )
+ DECLARE @IsAdmin bit
+ SET @IsAdmin = dbo.CheckIsUserAdmin(@ActorID)
+ INSERT INTO @IPAddresses (AddressesID, ExternalIP, InternalIP, DefaultGateway, ServerName, UserName, ItemName)
+ SELECT
+ IP.AddressID,
+ IP.ExternalIP,
+ IP.InternalIP,
+ IP.DefaultGateway,
+ S.ServerName,
+ U.UserName,
+ SI.ItemName
+ FROM dbo.IPAddresses AS IP
+ LEFT JOIN Servers AS S ON IP.ServerID = S.ServerID
+ LEFT JOIN PackageIPAddresses AS PA ON IP.AddressID = PA.AddressID
+ LEFT JOIN ServiceItems SI ON PA.ItemId = SI.ItemID
+ LEFT JOIN dbo.Packages P ON PA.PackageID = P.PackageID
+ LEFT JOIN dbo.Users U ON P.UserID = U.UserID
+ WHERE
+ @IsAdmin = 1
+ AND (@PoolID = 0 OR @PoolID <> 0 AND IP.PoolID = @PoolID)
+ AND (@ServerID = 0 OR @ServerID <> 0 AND IP.ServerID = @ServerID)
+ '
+WHEN 'Schedules' THEN '
+ DECLARE @Schedules TABLE
+ (
+ ScheduleID int,
+ ScheduleName nvarchar(100),
+ Username nvarchar(100),
+ FullName nvarchar(100),
+ Email nvarchar(100)
+ )
+ INSERT INTO @Schedules (ScheduleID, ScheduleName, Username, FullName, Email)
+ SELECT
+ S.ScheduleID,
+ S.ScheduleName,
+ U.Username,
+ U.FullName,
+ U.Email
+ FROM Schedule AS S
+ INNER JOIN Packages AS P ON S.PackageID = P.PackageID
+ INNER JOIN PackagesTree(@PackageID, @Recursive) AS PT ON S.PackageID = PT.PackageID
+ INNER JOIN UsersDetailed AS U ON P.UserID = U.UserID
+ '
+WHEN 'NestedPackages' THEN '
+ DECLARE @NestedPackages TABLE
+ (
+ PackageID int,
+ PackageName nvarchar(100),
+ Username nvarchar(100),
+ FullName nvarchar(100),
+ Email nvarchar(100)
+ )
+ INSERT INTO @NestedPackages (PackageID, PackageName, Username, FullName, Email)
+ SELECT
+ P.PackageID,
+ P.PackageName,
+ U.Username,
+ U.FullName,
+ U.Email
+ FROM Packages AS P
+ INNER JOIN UsersDetailed AS U ON P.UserID = U.UserID
+ INNER JOIN Servers AS S ON P.ServerID = S.ServerID
+ INNER JOIN HostingPlans AS HP ON P.PlanID = HP.PlanID
+ WHERE
+ P.ParentPackageID = @PackageID
+ AND ((@StatusID = 0) OR (@StatusID > 0 AND P.StatusID = @StatusID))
+ AND ((@PlanID = 0) OR (@PlanID > 0 AND P.PlanID = @PlanID))
+ AND ((@ServerID = 0) OR (@ServerID > 0 AND P.ServerID = @ServerID))
+ '
+WHEN 'PackageIPAddresses' THEN '
+ DECLARE @PackageIPAddresses TABLE
+ (
+ PackageAddressID int,
+ ExternalIP nvarchar(100),
+ InternalIP nvarchar(100),
+ DefaultGateway nvarchar(100),
+ ItemName nvarchar(100),
+ UserName nvarchar(100)
+ )
+ INSERT INTO @PackageIPAddresses (PackageAddressID, ExternalIP, InternalIP, DefaultGateway, ItemName, UserName)
+ SELECT
+ PA.PackageAddressID,
+ IP.ExternalIP,
+ IP.InternalIP,
+ IP.DefaultGateway,
+ SI.ItemName,
+ U.UserName
+ FROM dbo.PackageIPAddresses PA
+ INNER JOIN dbo.IPAddresses AS IP ON PA.AddressID = IP.AddressID
+ INNER JOIN dbo.Packages P ON PA.PackageID = P.PackageID
+ INNER JOIN dbo.Users U ON U.UserID = P.UserID
+ LEFT JOIN ServiceItems SI ON PA.ItemId = SI.ItemID
+ WHERE
+ ((@Recursive = 0 AND PA.PackageID = @PackageID)
+ OR (@Recursive = 1 AND dbo.CheckPackageParent(@PackageID, PA.PackageID) = 1))
+ AND (@PoolID = 0 OR @PoolID <> 0 AND IP.PoolID = @PoolID)
+ AND (@OrgID = 0 OR @OrgID <> 0 AND PA.OrgID = @OrgID)
+ '
+WHEN 'ServiceItems' THEN '
+ IF dbo.CheckActorPackageRights(@ActorID, @PackageID) = 0
+ RAISERROR(''You are not allowed to access this package'', 16, 1)
+ DECLARE @ServiceItems TABLE
+ (
+ ItemID int,
+ ItemName nvarchar(100),
+ Username nvarchar(100),
+ FullName nvarchar(100),
+ Email nvarchar(100)
+ )
+ DECLARE @GroupID int
+ SELECT @GroupID = GroupID FROM ResourceGroups
+ WHERE GroupName = @GroupName
+ DECLARE @ItemTypeID int
+ SELECT @ItemTypeID = ItemTypeID FROM ServiceItemTypes
+ WHERE TypeName = @ItemTypeName
+ AND ((@GroupID IS NULL) OR (@GroupID IS NOT NULL AND GroupID = @GroupID))
+ INSERT INTO @ServiceItems (ItemID, ItemName, Username, FullName, Email)
+ SELECT
+ SI.ItemID,
+ SI.ItemName,
+ U.Username,
+ U.FirstName,
+ U.Email
+ FROM Packages AS P
+ INNER JOIN ServiceItems AS SI ON P.PackageID = SI.PackageID
+ INNER JOIN UsersDetailed AS U ON P.UserID = U.UserID
+ INNER JOIN ServiceItemTypes AS IT ON SI.ItemTypeID = IT.ItemTypeID
+ INNER JOIN Services AS S ON SI.ServiceID = S.ServiceID
+ INNER JOIN Servers AS SRV ON S.ServerID = SRV.ServerID
+ WHERE
+ SI.ItemTypeID = @ItemTypeID
+ AND ((@Recursive = 0 AND P.PackageID = @PackageID)
+ OR (@Recursive = 1 AND dbo.CheckPackageParent(@PackageID, P.PackageID) = 1))
+ AND ((@GroupID IS NULL) OR (@GroupID IS NOT NULL AND IT.GroupID = @GroupID))
+ AND (@ServerID = 0 OR (@ServerID > 0 AND S.ServerID = @ServerID))
+ '
+WHEN 'Users' THEN '
+ DECLARE @Users TABLE
+ (
+ UserID int,
+ Username nvarchar(100),
+ FullName nvarchar(100),
+ Email nvarchar(100),
+ CompanyName nvarchar(100)
+ )
+ DECLARE @HasUserRights bit
+ SET @HasUserRights = dbo.CheckActorUserRights(@ActorID, @UserID)
+ INSERT INTO @Users (UserID, Username, FullName, Email, CompanyName)
+ SELECT
+ U.UserID,
+ U.Username,
+ U.FullName,
+ U.Email,
+ U.CompanyName
+ FROM UsersDetailed AS U
+ WHERE
+ U.UserID <> @UserID AND U.IsPeer = 0 AND
+ (
+ (@Recursive = 0 AND OwnerID = @UserID) OR
+ (@Recursive = 1 AND dbo.CheckUserParent(@UserID, U.UserID) = 1)
+ )
+ AND ((@StatusID = 0) OR (@StatusID > 0 AND U.StatusID = @StatusID))
+ AND ((@RoleID = 0) OR (@RoleID > 0 AND U.RoleID = @RoleID))
+ AND @HasUserRights = 1
+ '
+WHEN 'VirtualMachines' THEN '
+ IF dbo.CheckActorPackageRights(@ActorID, @PackageID) = 0
+ RAISERROR(''You are not allowed to access this package'', 16, 1)
+ DECLARE @VirtualMachines TABLE
+ (
+ ItemID int,
+ ItemName nvarchar(100),
+ Username nvarchar(100),
+ ExternalIP nvarchar(100),
+ IPAddress nvarchar(100)
+ )
+ INSERT INTO @VirtualMachines (ItemID, ItemName, Username, ExternalIP, IPAddress)
+ SELECT
+ SI.ItemID,
+ SI.ItemName,
+ U.Username,
+ EIP.ExternalIP,
+ PIP.IPAddress
+ FROM Packages AS P
+ INNER JOIN ServiceItems AS SI ON P.PackageID = SI.PackageID
+ INNER JOIN Users AS U ON P.UserID = U.UserID
+ LEFT OUTER JOIN (
+ SELECT PIP.ItemID, IP.ExternalIP FROM PackageIPAddresses AS PIP
+ INNER JOIN IPAddresses AS IP ON PIP.AddressID = IP.AddressID
+ WHERE PIP.IsPrimary = 1 AND IP.PoolID = 3 -- external IP addresses
+ ) AS EIP ON SI.ItemID = EIP.ItemID
+ LEFT OUTER JOIN PrivateIPAddresses AS PIP ON PIP.ItemID = SI.ItemID AND PIP.IsPrimary = 1
+ WHERE
+ SI.ItemTypeID = ' + CAST(@VPSTypeID AS nvarchar(12)) + '
+ AND ((@Recursive = 0 AND P.PackageID = @PackageID)
+ OR (@Recursive = 1 AND dbo.CheckPackageParent(@PackageID, P.PackageID) = 1))
+ '
+WHEN 'PackagePrivateIPAddresses' THEN '
+ DECLARE @PackagePrivateIPAddresses TABLE
+ (
+ PrivateAddressID int,
+ IPAddress nvarchar(100),
+ ItemName nvarchar(100)
+ )
+ INSERT INTO @PackagePrivateIPAddresses (PrivateAddressID, IPAddress, ItemName)
+ SELECT
+ PA.PrivateAddressID,
+ PA.IPAddress,
+ SI.ItemName
+ FROM dbo.PrivateIPAddresses AS PA
+ INNER JOIN dbo.ServiceItems AS SI ON PA.ItemID = SI.ItemID
+ WHERE SI.PackageID = @PackageID
+ '
+ELSE ''
+END + 'SELECT TOP ' + CAST(@MaximumRows AS nvarchar(12)) + ' MIN(ItemID) as [ItemID], TextSearch, ColumnType, COUNT(*) AS [Count]' + CASE @PagedStored
+WHEN 'Domains' THEN '
+ FROM(
+ SELECT D0.DomainID AS ItemID, D0.DomainName AS TextSearch, ''DomainName'' AS ColumnType
+ FROM @Domains AS D0
+ UNION
+ SELECT D1.DomainID AS ItemID, D1.Username AS TextSearch, ''Username'' AS ColumnType
+ FROM @Domains AS D1
+ UNION
+ SELECT D2.DomainID as ItemID, D2.FullName AS TextSearch, ''FullName'' AS ColumnType
+ FROM @Domains AS D2
+ UNION
+ SELECT D3.DomainID as ItemID, D3.Email AS TextSearch, ''Email'' AS ColumnType
+ FROM @Domains AS D3) AS D'
+WHEN 'IPAddresses' THEN '
+ FROM(
+ SELECT D0.AddressesID AS ItemID, D0.ExternalIP AS TextSearch, ''ExternalIP'' AS ColumnType
+ FROM @IPAddresses AS D0
+ UNION
+ SELECT D1.AddressesID AS ItemID, D1.InternalIP AS TextSearch, ''InternalIP'' AS ColumnType
+ FROM @IPAddresses AS D1
+ UNION
+ SELECT D2.AddressesID AS ItemID, D2.DefaultGateway AS TextSearch, ''DefaultGateway'' AS ColumnType
+ FROM @IPAddresses AS D2
+ UNION
+ SELECT D3.AddressesID AS ItemID, D3.ServerName AS TextSearch, ''ServerName'' AS ColumnType
+ FROM @IPAddresses AS D3
+ UNION
+ SELECT D4.AddressesID AS ItemID, D4.UserName AS TextSearch, ''UserName'' AS ColumnType
+ FROM @IPAddresses AS D4
+ UNION
+ SELECT D6.AddressesID AS ItemID, D6.ItemName AS TextSearch, ''ItemName'' AS ColumnType
+ FROM @IPAddresses AS D6) AS D'
+WHEN 'Schedules' THEN '
+ FROM(
+ SELECT D0.ScheduleID AS ItemID, D0.ScheduleName AS TextSearch, ''ScheduleName'' AS ColumnType
+ FROM @Schedules AS D0
+ UNION
+ SELECT D1.ScheduleID AS ItemID, D1.Username AS TextSearch, ''Username'' AS ColumnType
+ FROM @Schedules AS D1
+ UNION
+ SELECT D2.ScheduleID AS ItemID, D2.FullName AS TextSearch, ''FullName'' AS ColumnType
+ FROM @Schedules AS D2
+ UNION
+ SELECT D3.ScheduleID AS ItemID, D3.Email AS TextSearch, ''Email'' AS ColumnType
+ FROM @Schedules AS D3) AS D'
+WHEN 'NestedPackages' THEN '
+ FROM(
+ SELECT D0.PackageID AS ItemID, D0.PackageName AS TextSearch, ''PackageName'' AS ColumnType
+ FROM @NestedPackages AS D0
+ UNION
+ SELECT D1.PackageID AS ItemID, D1.Username AS TextSearch, ''Username'' AS ColumnType
+ FROM @NestedPackages AS D1
+ UNION
+ SELECT D2.PackageID as ItemID, D2.FullName AS TextSearch, ''FullName'' AS ColumnType
+ FROM @NestedPackages AS D2
+ UNION
+ SELECT D3.PackageID as ItemID, D3.Email AS TextSearch, ''Email'' AS ColumnType
+ FROM @NestedPackages AS D3) AS D'
+WHEN 'PackageIPAddresses' THEN '
+ FROM(
+ SELECT D0.PackageAddressID AS ItemID, D0.ExternalIP AS TextSearch, ''ExternalIP'' AS ColumnType
+ FROM @PackageIPAddresses AS D0
+ UNION
+ SELECT D1.PackageAddressID AS ItemID, D1.InternalIP AS TextSearch, ''InternalIP'' AS ColumnType
+ FROM @PackageIPAddresses AS D1
+ UNION
+ SELECT D2.PackageAddressID as ItemID, D2.DefaultGateway AS TextSearch, ''DefaultGateway'' AS ColumnType
+ FROM @PackageIPAddresses AS D2
+ UNION
+ SELECT D3.PackageAddressID as ItemID, D3.ItemName AS TextSearch, ''ItemName'' AS ColumnType
+ FROM @PackageIPAddresses AS D3
+ UNION
+ SELECT D5.PackageAddressID as ItemID, D5.UserName AS TextSearch, ''UserName'' AS ColumnType
+ FROM @PackageIPAddresses AS D5) AS D'
+WHEN 'ServiceItems' THEN '
+ FROM(
+ SELECT D0.ItemID AS ItemID, D0.ItemName AS TextSearch, ''ItemName'' AS ColumnType
+ FROM @ServiceItems AS D0
+ UNION
+ SELECT D1.ItemID AS ItemID, D1.Username AS TextSearch, ''Username'' AS ColumnType
+ FROM @ServiceItems AS D1
+ UNION
+ SELECT D2.ItemID as ItemID, D2.FullName AS TextSearch, ''FullName'' AS ColumnType
+ FROM @ServiceItems AS D2
+ UNION
+ SELECT D3.ItemID as ItemID, D3.Email AS TextSearch, ''Email'' AS ColumnType
+ FROM @ServiceItems AS D3) AS D'
+WHEN 'Users' THEN '
+ FROM(
+ SELECT D0.UserID AS ItemID, D0.Username AS TextSearch, ''Username'' AS ColumnType
+ FROM @Users AS D0
+ UNION
+ SELECT D1.UserID AS ItemID, D1.FullName AS TextSearch, ''FullName'' AS ColumnType
+ FROM @Users AS D1
+ UNION
+ SELECT D2.UserID as ItemID, D2.Email AS TextSearch, ''Email'' AS ColumnType
+ FROM @Users AS D2
+ UNION
+ SELECT D3.UserID as ItemID, D3.CompanyName AS TextSearch, ''CompanyName'' AS ColumnType
+ FROM @Users AS D3) AS D'
+WHEN 'VirtualMachines' THEN '
+ FROM(
+ SELECT D0.ItemID AS ItemID, D0.ItemName AS TextSearch, ''ItemName'' AS ColumnType
+ FROM @VirtualMachines AS D0
+ UNION
+ SELECT D1.ItemID AS ItemID, D1.ExternalIP AS TextSearch, ''ExternalIP'' AS ColumnType
+ FROM @VirtualMachines AS D1
+ UNION
+ SELECT D2.ItemID as ItemID, D2.Username AS TextSearch, ''Username'' AS ColumnType
+ FROM @VirtualMachines AS D2
+ UNION
+ SELECT D3.ItemID as ItemID, D3.IPAddress AS TextSearch, ''IPAddress'' AS ColumnType
+ FROM @VirtualMachines AS D3) AS D'
+WHEN 'PackagePrivateIPAddresses' THEN '
+ FROM(
+ SELECT D0.PrivateAddressID AS ItemID, D0.IPAddress AS TextSearch, ''IPAddress'' AS ColumnType
+ FROM @PackagePrivateIPAddresses AS D0
+ UNION
+ SELECT D1.PrivateAddressID AS ItemID, D1.ItemName AS TextSearch, ''ItemName'' AS ColumnType
+ FROM @PackagePrivateIPAddresses AS D1) AS D'
+END + '
+ WHERE (TextSearch LIKE @FilterValue)'
+IF @FilterColumns <> '' AND @FilterColumns IS NOT NULL
+ SET @sql = @sql + '
+ AND (ColumnType IN (' + @FilterColumns + '))'
+SET @sql = @sql + '
+ GROUP BY TextSearch, ColumnType
+ ORDER BY TextSearch'
+
+exec sp_executesql @sql, N'@FilterValue nvarchar(50), @Recursive bit, @PoolID int, @ServerID int, @ActorID int, @StatusID int, @PlanID int, @OrgID int, @ItemTypeName nvarchar(200), @GroupName nvarchar(100), @PackageID int, @VPSTypeID int, @UserID int, @RoleID int',
+@FilterValue, @Recursive, @PoolID, @ServerID, @ActorID, @StatusID, @PlanID, @OrgID, @ItemTypeName, @GroupName, @PackageID, @VPSTypeID, @UserID, @RoleID
+
+RETURN
+GO
+
+IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'GetPackagePrivateIPAddressesPaged')
+DROP PROCEDURE GetPackagePrivateIPAddressesPaged
+GO
+CREATE PROCEDURE [dbo].[GetPackagePrivateIPAddressesPaged]
+ @PackageID int,
+ @FilterColumn nvarchar(50) = '',
+ @FilterValue nvarchar(50) = '',
+ @SortColumn nvarchar(50),
+ @StartRow int,
+ @MaximumRows int
+AS
+BEGIN
+
+
+-- start
+DECLARE @condition nvarchar(700)
+SET @condition = '
+SI.PackageID = @PackageID
+'
+
+IF @FilterValue <> '' AND @FilterValue IS NOT NULL
+BEGIN
+ IF @FilterColumn <> '' AND @FilterColumn IS NOT NULL
+ SET @condition = @condition + ' AND ' + @FilterColumn + ' LIKE ''' + @FilterValue + ''''
+ ELSE
+ SET @condition = @condition + '
+ AND (IPAddress LIKE ''' + @FilterValue + '''
+ OR ItemName LIKE ''' + @FilterValue + ''')'
+END
+
+IF @SortColumn IS NULL OR @SortColumn = ''
+SET @SortColumn = 'PA.IPAddress ASC'
+
+DECLARE @sql nvarchar(3500)
+
+set @sql = '
+SELECT COUNT(PA.PrivateAddressID)
+FROM dbo.PrivateIPAddresses AS PA
+INNER JOIN dbo.ServiceItems AS SI ON PA.ItemID = SI.ItemID
+WHERE ' + @condition + '
+
+DECLARE @Addresses AS TABLE
+(
+ PrivateAddressID int
+);
+
+WITH TempItems AS (
+ SELECT ROW_NUMBER() OVER (ORDER BY ' + @SortColumn + ') as Row,
+ PA.PrivateAddressID
+ FROM dbo.PrivateIPAddresses AS PA
+ INNER JOIN dbo.ServiceItems AS SI ON PA.ItemID = SI.ItemID
+ WHERE ' + @condition + '
+)
+
+INSERT INTO @Addresses
+SELECT PrivateAddressID FROM TempItems
+WHERE TempItems.Row BETWEEN @StartRow + 1 and @StartRow + @MaximumRows
+
+SELECT
+ PA.PrivateAddressID,
+ PA.IPAddress,
+ PA.ItemID,
+ SI.ItemName,
+ PA.IsPrimary
+FROM @Addresses AS TA
+INNER JOIN dbo.PrivateIPAddresses AS PA ON TA.PrivateAddressID = PA.PrivateAddressID
+INNER JOIN dbo.ServiceItems AS SI ON PA.ItemID = SI.ItemID
+'
+
+print @sql
+
+exec sp_executesql @sql, N'@PackageID int, @StartRow int, @MaximumRows int',
+@PackageID, @StartRow, @MaximumRows
+
+END
+GO
+
+IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'GetNestedPackagesPaged')
+DROP PROCEDURE GetNestedPackagesPaged
+GO
+CREATE PROCEDURE [dbo].[GetNestedPackagesPaged]
+(
+ @ActorID int,
+ @PackageID int,
+ @FilterColumn nvarchar(50) = '',
+ @FilterValue nvarchar(50) = '',
+ @StatusID int,
+ @PlanID int,
+ @ServerID int,
+ @SortColumn nvarchar(50),
+ @StartRow int,
+ @MaximumRows int
+)
+AS
+
+-- build query and run it to the temporary table
+DECLARE @sql nvarchar(2000)
+
+SET @sql = '
+IF dbo.CheckActorPackageRights(@ActorID, @PackageID) = 0
+RAISERROR(''You are not allowed to access this package'', 16, 1)
+
+DECLARE @EndRow int
+SET @EndRow = @StartRow + @MaximumRows
+DECLARE @Packages TABLE
+(
+ ItemPosition int IDENTITY(1,1),
+ PackageID int
+)
+INSERT INTO @Packages (PackageID)
+SELECT
+ P.PackageID
+FROM Packages AS P
+INNER JOIN UsersDetailed AS U ON P.UserID = U.UserID
+INNER JOIN Servers AS S ON P.ServerID = S.ServerID
+INNER JOIN HostingPlans AS HP ON P.PlanID = HP.PlanID
+WHERE
+ P.ParentPackageID = @PackageID
+ AND ((@StatusID = 0) OR (@StatusID > 0 AND P.StatusID = @StatusID))
+ AND ((@PlanID = 0) OR (@PlanID > 0 AND P.PlanID = @PlanID))
+ AND ((@ServerID = 0) OR (@ServerID > 0 AND P.ServerID = @ServerID)) '
+
+IF @FilterValue <> ''
+BEGIN
+ IF @FilterColumn <> ''
+ SET @sql = @sql + ' AND ' + @FilterColumn + ' LIKE @FilterValue '
+ ELSE
+ SET @sql = @sql + '
+ AND (Username LIKE @FilterValue
+ OR FullName LIKE @FilterValue
+ OR Email LIKE @FilterValue) '
+END
+
+IF @SortColumn <> '' AND @SortColumn IS NOT NULL
+SET @sql = @sql + ' ORDER BY ' + @SortColumn + ' '
+
+SET @sql = @sql + ' SELECT COUNT(PackageID) FROM @Packages;
+SELECT
+ P.PackageID,
+ P.PackageName,
+ P.StatusID,
+ P.PurchaseDate,
+
+ dbo.GetItemComments(P.PackageID, ''PACKAGE'', @ActorID) AS Comments,
+
+ -- server
+ P.ServerID,
+ ISNULL(S.ServerName, ''None'') AS ServerName,
+ ISNULL(S.Comments, '''') AS ServerComments,
+ ISNULL(S.VirtualServer, 1) AS VirtualServer,
+
+ -- hosting plan
+ P.PlanID,
+ HP.PlanName,
+
+ -- user
+ P.UserID,
+ U.Username,
+ U.FirstName,
+ U.LastName,
+ U.FullName,
+ U.RoleID,
+ U.Email
+FROM @Packages AS TP
+INNER JOIN Packages AS P ON TP.PackageID = P.PackageID
+INNER JOIN UsersDetailed AS U ON P.UserID = U.UserID
+INNER JOIN Servers AS S ON P.ServerID = S.ServerID
+INNER JOIN HostingPlans AS HP ON P.PlanID = HP.PlanID
+WHERE TP.ItemPosition BETWEEN @StartRow AND @EndRow'
+
+exec sp_executesql @sql, N'@StartRow int, @MaximumRows int, @PackageID int, @FilterValue nvarchar(50), @ActorID int, @StatusID int, @PlanID int, @ServerID int',
+@StartRow, @MaximumRows, @PackageID, @FilterValue, @ActorID, @StatusID, @PlanID, @ServerID
+
+
+RETURN
+GO
+
+IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'GetUsersPaged')
+DROP PROCEDURE GetUsersPaged
+GO
+CREATE PROCEDURE [dbo].[GetUsersPaged]
+(
+ @ActorID int,
+ @UserID int,
+ @FilterColumn nvarchar(50) = '',
+ @FilterValue nvarchar(50) = '',
+ @StatusID int,
+ @RoleID int,
+ @SortColumn nvarchar(50),
+ @StartRow int,
+ @MaximumRows int,
+ @Recursive bit
+)
+AS
+-- build query and run it to the temporary table
+DECLARE @sql nvarchar(2000)
+
+SET @sql = '
+
+DECLARE @HasUserRights bit
+SET @HasUserRights = dbo.CheckActorUserRights(@ActorID, @UserID)
+
+DECLARE @EndRow int
+SET @EndRow = @StartRow + @MaximumRows
+DECLARE @Users TABLE
+(
+ ItemPosition int IDENTITY(0,1),
+ UserID int
+)
+INSERT INTO @Users (UserID)
+SELECT
+ U.UserID
+FROM UsersDetailed AS U
+WHERE
+ U.UserID <> @UserID AND U.IsPeer = 0 AND
+ (
+ (@Recursive = 0 AND OwnerID = @UserID) OR
+ (@Recursive = 1 AND dbo.CheckUserParent(@UserID, U.UserID) = 1)
+ )
+ AND ((@StatusID = 0) OR (@StatusID > 0 AND U.StatusID = @StatusID))
+ AND ((@RoleID = 0) OR (@RoleID > 0 AND U.RoleID = @RoleID))
+ AND @HasUserRights = 1 '
+
+IF @FilterValue <> ''
+BEGIN
+ IF @FilterColumn <> ''
+ SET @sql = @sql + ' AND ' + @FilterColumn + ' LIKE @FilterValue '
+ ELSE
+ SET @sql = @sql + '
+ AND (Username LIKE @FilterValue
+ OR FullName LIKE @FilterValue
+ OR Email LIKE @FilterValue) '
+END
+
+IF @SortColumn <> '' AND @SortColumn IS NOT NULL
+SET @sql = @sql + ' ORDER BY ' + @SortColumn + ' '
+
+SET @sql = @sql + ' SELECT COUNT(UserID) FROM @Users;
+SELECT
+ U.UserID,
+ U.RoleID,
+ U.StatusID,
+ U.SubscriberNumber,
+ U.LoginStatusId,
+ U.FailedLogins,
+ U.OwnerID,
+ U.Created,
+ U.Changed,
+ U.IsDemo,
+ dbo.GetItemComments(U.UserID, ''USER'', @ActorID) AS Comments,
+ U.IsPeer,
+ U.Username,
+ U.FirstName,
+ U.LastName,
+ U.Email,
+ U.FullName,
+ U.OwnerUsername,
+ U.OwnerFirstName,
+ U.OwnerLastName,
+ U.OwnerRoleID,
+ U.OwnerFullName,
+ U.OwnerEmail,
+ U.PackagesNumber,
+ U.CompanyName,
+ U.EcommerceEnabled
+FROM @Users AS TU
+INNER JOIN UsersDetailed AS U ON TU.UserID = U.UserID
+WHERE TU.ItemPosition BETWEEN @StartRow AND @EndRow'
+
+exec sp_executesql @sql, N'@StartRow int, @MaximumRows int, @UserID int, @FilterValue nvarchar(50), @ActorID int, @Recursive bit, @StatusID int, @RoleID int',
+@StartRow, @MaximumRows, @UserID, @FilterValue, @ActorID, @Recursive, @StatusID, @RoleID
+
+
+RETURN
+GO
+
+IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'GetServiceItemsPaged')
+DROP PROCEDURE GetServiceItemsPaged
+GO
+CREATE PROCEDURE [dbo].[GetServiceItemsPaged]
+(
+ @ActorID int,
+ @PackageID int,
+ @ItemTypeName nvarchar(200),
+ @GroupName nvarchar(100) = NULL,
+ @ServerID int,
+ @Recursive bit,
+ @FilterColumn nvarchar(50) = '',
+ @FilterValue nvarchar(50) = '',
+ @SortColumn nvarchar(50),
+ @StartRow int,
+ @MaximumRows int
+)
+AS
+
+
+-- check rights
+IF dbo.CheckActorPackageRights(@ActorID, @PackageID) = 0
+RAISERROR('You are not allowed to access this package', 16, 1)
+
+-- start
+DECLARE @GroupID int
+SELECT @GroupID = GroupID FROM ResourceGroups
+WHERE GroupName = @GroupName
+
+DECLARE @ItemTypeID int
+SELECT @ItemTypeID = ItemTypeID FROM ServiceItemTypes
+WHERE TypeName = @ItemTypeName
+AND ((@GroupID IS NULL) OR (@GroupID IS NOT NULL AND GroupID = @GroupID))
+
+DECLARE @condition nvarchar(700)
+SET @condition = 'SI.ItemTypeID = @ItemTypeID
+AND ((@Recursive = 0 AND P.PackageID = @PackageID)
+ OR (@Recursive = 1 AND dbo.CheckPackageParent(@PackageID, P.PackageID) = 1))
+AND ((@GroupID IS NULL) OR (@GroupID IS NOT NULL AND IT.GroupID = @GroupID))
+AND (@ServerID = 0 OR (@ServerID > 0 AND S.ServerID = @ServerID))
+'
+
+IF @FilterValue <> '' AND @FilterValue IS NOT NULL
+BEGIN
+ IF @FilterColumn <> '' AND @FilterColumn IS NOT NULL
+ SET @condition = @condition + ' AND ' + @FilterColumn + ' LIKE ''' + @FilterValue + ''''
+ ELSE
+ SET @condition = @condition + '
+ AND (ItemName LIKE ''' + @FilterValue + '''
+ OR Username ''' + @FilterValue + '''
+ OR FullName ''' + @FilterValue + '''
+ OR Email ''' + @FilterValue + ''')'
+END
+
+IF @SortColumn IS NULL OR @SortColumn = ''
+SET @SortColumn = 'SI.ItemName ASC'
+
+DECLARE @sql nvarchar(3500)
+
+set @sql = '
+SELECT COUNT(SI.ItemID) FROM Packages AS P
+INNER JOIN ServiceItems AS SI ON P.PackageID = SI.PackageID
+INNER JOIN UsersDetailed AS U ON P.UserID = U.UserID
+INNER JOIN ServiceItemTypes AS IT ON SI.ItemTypeID = IT.ItemTypeID
+INNER JOIN Services AS S ON SI.ServiceID = S.ServiceID
+WHERE ' + @condition + '
+
+DECLARE @Items AS TABLE
+(
+ ItemID int
+);
+
+WITH TempItems AS (
+ SELECT ROW_NUMBER() OVER (ORDER BY ' + @SortColumn + ') as Row,
+ SI.ItemID
+ FROM Packages AS P
+ INNER JOIN ServiceItems AS SI ON P.PackageID = SI.PackageID
+ INNER JOIN UsersDetailed AS U ON P.UserID = U.UserID
+ INNER JOIN ServiceItemTypes AS IT ON SI.ItemTypeID = IT.ItemTypeID
+ INNER JOIN Services AS S ON SI.ServiceID = S.ServiceID
+ INNER JOIN Servers AS SRV ON S.ServerID = SRV.ServerID
+ WHERE ' + @condition + '
+)
+
+INSERT INTO @Items
+SELECT ItemID FROM TempItems
+WHERE TempItems.Row BETWEEN @StartRow + 1 and @StartRow + @MaximumRows
+
+SELECT
+ SI.ItemID,
+ SI.ItemName,
+ SI.ItemTypeID,
+ IT.TypeName,
+ SI.ServiceID,
+ SI.PackageID,
+ SI.CreatedDate,
+ RG.GroupName,
+
+ -- packages
+ P.PackageName,
+
+ -- server
+ ISNULL(SRV.ServerID, 0) AS ServerID,
+ ISNULL(SRV.ServerName, '''') AS ServerName,
+ ISNULL(SRV.Comments, '''') AS ServerComments,
+ ISNULL(SRV.VirtualServer, 0) AS VirtualServer,
+
+ -- user
+ P.UserID,
+ U.Username,
+ U.FirstName,
+ U.LastName,
+ U.FullName,
+ U.RoleID,
+ U.Email
+FROM @Items AS TSI
+INNER JOIN ServiceItems AS SI ON TSI.ItemID = SI.ItemID
+INNER JOIN ServiceItemTypes AS IT ON SI.ItemTypeID = IT.ItemTypeID
+INNER JOIN Packages AS P ON SI.PackageID = P.PackageID
+INNER JOIN UsersDetailed AS U ON P.UserID = U.UserID
+INNER JOIN Services AS S ON SI.ServiceID = S.ServiceID
+INNER JOIN Servers AS SRV ON S.ServerID = SRV.ServerID
+INNER JOIN ResourceGroups AS RG ON IT.GroupID = RG.GroupID
+
+
+SELECT
+ IP.ItemID,
+ IP.PropertyName,
+ IP.PropertyValue
+FROM ServiceItemProperties AS IP
+INNER JOIN @Items AS TSI ON IP.ItemID = TSI.ItemID'
+
+--print @sql
+
+exec sp_executesql @sql, N'@ItemTypeID int, @PackageID int, @GroupID int, @StartRow int, @MaximumRows int, @Recursive bit, @ServerID int',
+@ItemTypeID, @PackageID, @GroupID, @StartRow, @MaximumRows, @Recursive, @ServerID
+
+RETURN
+GO
+
+IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'GetIPAddressesPaged')
+DROP PROCEDURE GetIPAddressesPaged
+GO
+CREATE PROCEDURE [dbo].[GetIPAddressesPaged]
+(
+ @ActorID int,
+ @PoolID int,
+ @ServerID int,
+ @FilterColumn nvarchar(50) = '',
+ @FilterValue nvarchar(50) = '',
+ @SortColumn nvarchar(50),
+ @StartRow int,
+ @MaximumRows int
+)
+AS
+BEGIN
+
+-- check rights
+DECLARE @IsAdmin bit
+SET @IsAdmin = dbo.CheckIsUserAdmin(@ActorID)
+
+-- start
+DECLARE @condition nvarchar(700)
+SET @condition = '
+@IsAdmin = 1
+AND (@PoolID = 0 OR @PoolID <> 0 AND IP.PoolID = @PoolID)
+AND (@ServerID = 0 OR @ServerID <> 0 AND IP.ServerID = @ServerID)
+'
+
+IF @FilterValue <> '' AND @FilterValue IS NOT NULL
+BEGIN
+ IF @FilterColumn <> '' AND @FilterColumn IS NOT NULL
+ SET @condition = @condition + ' AND ' + @FilterColumn + ' LIKE ''' + @FilterValue + ''''
+ ELSE
+ SET @condition = @condition + '
+ AND (ExternalIP LIKE ''' + @FilterValue + '''
+ OR InternalIP LIKE ''' + @FilterValue + '''
+ OR DefaultGateway LIKE ''' + @FilterValue + '''
+ OR ServerName LIKE ''' + @FilterValue + '''
+ OR ItemName LIKE ''' + @FilterValue + '''
+ OR Username LIKE ''' + @FilterValue + ''')'
+END
+
+IF @SortColumn IS NULL OR @SortColumn = ''
+SET @SortColumn = 'IP.ExternalIP ASC'
+
+DECLARE @sql nvarchar(3500)
+
+set @sql = '
+SELECT COUNT(IP.AddressID)
+FROM dbo.IPAddresses AS IP
+LEFT JOIN Servers AS S ON IP.ServerID = S.ServerID
+LEFT JOIN PackageIPAddresses AS PA ON IP.AddressID = PA.AddressID
+LEFT JOIN ServiceItems SI ON PA.ItemId = SI.ItemID
+LEFT JOIN dbo.Packages P ON PA.PackageID = P.PackageID
+LEFT JOIN dbo.Users U ON P.UserID = U.UserID
+WHERE ' + @condition + '
+
+DECLARE @Addresses AS TABLE
+(
+ AddressID int
+);
+
+WITH TempItems AS (
+ SELECT ROW_NUMBER() OVER (ORDER BY ' + @SortColumn + ') as Row,
+ IP.AddressID
+ FROM dbo.IPAddresses AS IP
+ LEFT JOIN Servers AS S ON IP.ServerID = S.ServerID
+ LEFT JOIN PackageIPAddresses AS PA ON IP.AddressID = PA.AddressID
+ LEFT JOIN ServiceItems SI ON PA.ItemId = SI.ItemID
+ LEFT JOIN dbo.Packages P ON PA.PackageID = P.PackageID
+ LEFT JOIN dbo.Users U ON U.UserID = P.UserID
+ WHERE ' + @condition + '
+)
+
+INSERT INTO @Addresses
+SELECT AddressID FROM TempItems
+WHERE TempItems.Row BETWEEN @StartRow + 1 and @StartRow + @MaximumRows
+
+SELECT
+ IP.AddressID,
+ IP.PoolID,
+ IP.ExternalIP,
+ IP.InternalIP,
+ IP.SubnetMask,
+ IP.DefaultGateway,
+ IP.Comments,
+
+ IP.ServerID,
+ S.ServerName,
+
+ PA.ItemID,
+ SI.ItemName,
+
+ PA.PackageID,
+ P.PackageName,
+
+ P.UserID,
+ U.UserName
+FROM @Addresses AS TA
+INNER JOIN dbo.IPAddresses AS IP ON TA.AddressID = IP.AddressID
+LEFT JOIN Servers AS S ON IP.ServerID = S.ServerID
+LEFT JOIN PackageIPAddresses AS PA ON IP.AddressID = PA.AddressID
+LEFT JOIN ServiceItems SI ON PA.ItemId = SI.ItemID
+LEFT JOIN dbo.Packages P ON PA.PackageID = P.PackageID
+LEFT JOIN dbo.Users U ON U.UserID = P.UserID
+'
+
+exec sp_executesql @sql, N'@IsAdmin bit, @PoolID int, @ServerID int, @StartRow int, @MaximumRows int',
+@IsAdmin, @PoolID, @ServerID, @StartRow, @MaximumRows
+
+END
+GO
IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'GetSearchObject')
DROP PROCEDURE GetSearchObject
@@ -10854,16 +12190,16 @@ AS
IF dbo.CheckActorUserRights(@ActorID, @UserID) = 0
RAISERROR('You are not allowed to access this account', 16, 1)
-DECLARE @columnUsername nvarchar(20)
+DECLARE @columnUsername nvarchar(20)
SET @columnUsername = 'Username'
-DECLARE @columnEmail nvarchar(20)
+DECLARE @columnEmail nvarchar(20)
SET @columnEmail = 'Email'
-DECLARE @columnCompanyName nvarchar(20)
+DECLARE @columnCompanyName nvarchar(20)
SET @columnCompanyName = 'CompanyName'
-DECLARE @columnFullName nvarchar(20)
+DECLARE @columnFullName nvarchar(20)
SET @columnFullName = 'FullName'
DECLARE @curUsers cursor
@@ -10892,7 +12228,7 @@ SET @sqlUsers = @sqlUsers + 'TOP ' + CAST(@MaximumRows AS varchar(12)) + ' '
SET @sqlUsers = @sqlUsers + 'U.UserID
FROM UsersDetailed AS U
-WHERE
+WHERE
U.UserID <> @UserID AND U.IsPeer = 0 AND
(
(@Recursive = 0 AND OwnerID = @UserID) OR
@@ -10900,7 +12236,7 @@ WHERE
)
AND ((@StatusID = 0) OR (@StatusID > 0 AND U.StatusID = @StatusID))
AND ((@RoleID = 0) OR (@RoleID > 0 AND U.RoleID = @RoleID))
- AND @HasUserRights = 1
+ AND @HasUserRights = 1
SET @curValue = cursor local for
SELECT
U.ItemID,
@@ -10910,20 +12246,20 @@ SELECT
0 as PackageID,
0 as AccountID
FROM @Users AS TU
-INNER JOIN
+INNER JOIN
(
SELECT ItemID, TextSearch, ColumnType
FROM(
SELECT U0.UserID as ItemID, U0.Username as TextSearch, @columnUsername as ColumnType
FROM dbo.Users AS U0
UNION
-SELECT U1.UserID as ItemID, U1.Email as TextSearch, @columnEmail as ColumnType
+SELECT U1.UserID as ItemID, U1.Email as TextSearch, @columnEmail as ColumnType
FROM dbo.Users AS U1
UNION
-SELECT U2.UserID as ItemID, U2.CompanyName as TextSearch, @columnCompanyName as ColumnType
+SELECT U2.UserID as ItemID, U2.CompanyName as TextSearch, @columnCompanyName as ColumnType
FROM dbo.Users AS U2
UNION
-SELECT U3.UserID as ItemID, U3.FirstName + '' '' + U3.LastName as TextSearch, @columnFullName as ColumnType
+SELECT U3.UserID as ItemID, U3.FirstName + '' '' + U3.LastName as TextSearch, @columnFullName as ColumnType
FROM dbo.Users AS U3) as U
WHERE TextSearch<>'' '' OR ISNULL(TextSearch, 0) > 0
)
@@ -10963,10 +12299,10 @@ SET @sqlSpace = @sqlSpace + 'SI.ItemID
INNER JOIN UsersDetailed AS U ON P.UserID = U.UserID
WHERE
dbo.CheckUserParent(@UserID, P.UserID) = 1
-
+
SET @curValue = cursor local for
SELECT
-
+
SI.ItemID as ItemID,
SI.ItemName as TextSearch,
STYPE.DisplayName as ColumnType,
@@ -10978,7 +12314,7 @@ SET @sqlSpace = @sqlSpace + 'SI.ItemID
INNER JOIN ServiceItemTypes AS STYPE ON SI.ItemTypeID = STYPE.ItemTypeID
WHERE STYPE.Searchable = 1
UNION
- SELECT
+ SELECT
D.DomainID AS ItemID,
D.DomainName as TextSearch,
''Domain'' as ColumnType,
@@ -10993,14 +12329,14 @@ SET @sqlSpace = @sqlSpace + 'SI.ItemID
EA.ItemID AS ItemID,
EA.AccountName as TextSearch,
''ExchangeAccount'' as ColumnType,
- ''ExchangeAccount'' as FullType,
+ ''ExchangeAccountMailbox'' as FullType,
SI2.PackageID as PackageID,
EA.AccountID as AccountID
FROM @ItemsService AS I2
INNER JOIN ServiceItems AS SI2 ON I2.ItemID = SI2.ItemID
INNER JOIN ExchangeAccounts AS EA ON I2.ItemID = EA.ItemID
';
-
+
SET @sqlSpace = @sqlSpace + ' open @curValue'
exec sp_executesql @sqlSpace, N'@UserID int, @FilterValue nvarchar(50), @ActorID int, @curValue cursor output',
@@ -11052,7 +12388,7 @@ DECLARE @ItemsReturn TABLE
PackageID int,
AccountID int
)
-INSERT INTO @ItemsReturn(ItemID, TextSearch, ColumnType, FullType, PackageID, AccountID)
+INSERT INTO @ItemsReturn(ItemID, TextSearch, ColumnType, FullType, PackageID, AccountID)
SELECT ItemID, TextSearch, ColumnType, FullType, PackageID, AccountID
FROM @ItemsAll AS IA WHERE (1 = 1) '
@@ -11090,3 +12426,143 @@ DEALLOCATE @curSpace
CLOSE @curUsers
DEALLOCATE @curUsers
RETURN
+
+
+IF EXISTS (SELECT TOP 1 * FROM ServiceItemTypes WHERE DisplayName = 'SharePointEnterpriseSiteCollection')
+BEGIN
+ DECLARE @item_type_id AS INT
+ SELECT @item_type_id = ItemTypeId FROM ServiceItemTypes WHERE DisplayName = 'SharePointEnterpriseSiteCollection'
+ UPDATE [dbo].[Quotas] SET ItemTypeID = @item_type_id WHERE QuotaId = 550
+END
+GO
+
+-- OneTimePassword
+IF NOT EXISTS(select 1 from sys.columns COLS INNER JOIN sys.objects OBJS ON OBJS.object_id=COLS.object_id and OBJS.type='U' AND OBJS.name='Users' AND COLS.name='OneTimePasswordState')
+BEGIN
+ALTER TABLE [dbo].[Users] ADD
+ [OneTimePasswordState] int NULL
+END
+GO
+
+IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'SetUserOneTimePassword')
+DROP PROCEDURE SetUserOneTimePassword
+GO
+CREATE PROCEDURE [dbo].[SetUserOneTimePassword]
+(
+ @UserID int,
+ @Password nvarchar(200),
+ @OneTimePasswordState int
+)
+AS
+UPDATE Users
+SET Password = @Password, OneTimePasswordState = @OneTimePasswordState
+WHERE UserID = @UserID
+RETURN
+GO
+
+ALTER PROCEDURE [dbo].[GetUserByUsernameInternally]
+(
+ @Username nvarchar(50)
+)
+AS
+ SELECT
+ U.UserID,
+ U.RoleID,
+ U.StatusID,
+ U.SubscriberNumber,
+ U.LoginStatusId,
+ U.FailedLogins,
+ U.OwnerID,
+ U.Created,
+ U.Changed,
+ U.IsDemo,
+ U.Comments,
+ U.IsPeer,
+ U.Username,
+ U.Password,
+ U.FirstName,
+ U.LastName,
+ U.Email,
+ U.SecondaryEmail,
+ U.Address,
+ U.City,
+ U.State,
+ U.Country,
+ U.Zip,
+ U.PrimaryPhone,
+ U.SecondaryPhone,
+ U.Fax,
+ U.InstantMessenger,
+ U.HtmlMail,
+ U.CompanyName,
+ U.EcommerceEnabled,
+ U.[AdditionalParams],
+ U.OneTimePasswordState
+ FROM Users AS U
+ WHERE U.Username = @Username
+
+ RETURN
+GO
+
+ALTER PROCEDURE [dbo].[GetUserByIdInternally]
+(
+ @UserID int
+)
+AS
+ SELECT
+ U.UserID,
+ U.RoleID,
+ U.StatusID,
+ U.SubscriberNumber,
+ U.LoginStatusId,
+ U.FailedLogins,
+ U.OwnerID,
+ U.Created,
+ U.Changed,
+ U.IsDemo,
+ U.Comments,
+ U.IsPeer,
+ U.Username,
+ U.Password,
+ U.FirstName,
+ U.LastName,
+ U.Email,
+ U.SecondaryEmail,
+ U.Address,
+ U.City,
+ U.State,
+ U.Country,
+ U.Zip,
+ U.PrimaryPhone,
+ U.SecondaryPhone,
+ U.Fax,
+ U.InstantMessenger,
+ U.HtmlMail,
+ U.CompanyName,
+ U.EcommerceEnabled,
+ U.[AdditionalParams],
+ U.OneTimePasswordState
+ FROM Users AS U
+ WHERE U.UserID = @UserID
+
+ RETURN
+GO
+
+ALTER PROCEDURE [dbo].[ChangeUserPassword]
+(
+ @ActorID int,
+ @UserID int,
+ @Password nvarchar(200)
+)
+AS
+
+-- check actor rights
+IF dbo.CanUpdateUserDetails(@ActorID, @UserID) = 0
+RETURN
+
+UPDATE Users
+SET Password = @Password, OneTimePasswordState = 0
+WHERE UserID = @UserID
+
+RETURN
+GO
\ No newline at end of file