Merge
This commit is contained in:
commit
1a6be953db
85 changed files with 9889 additions and 5332 deletions
|
@ -7746,4 +7746,564 @@ SELECT
|
||||||
ItemId
|
ItemId
|
||||||
FROM WebDavAccessTokens
|
FROM WebDavAccessTokens
|
||||||
Where AccessToken = @AccessToken AND ExpirationDate > getdate()
|
Where AccessToken = @AccessToken AND ExpirationDate > getdate()
|
||||||
|
GO
|
||||||
|
|
||||||
|
--add Deleted Users Quota
|
||||||
|
IF NOT EXISTS (SELECT * FROM [dbo].[Quotas] WHERE [QuotaName] = 'HostedSolution.DeletedUsers')
|
||||||
|
BEGIN
|
||||||
|
INSERT [dbo].[Quotas] ([QuotaID], [GroupID],[QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota]) VALUES (477, 13, 6, N'HostedSolution.DeletedUsers', N'Deleted Users', 2, 0, NULL, NULL)
|
||||||
|
END
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM [dbo].[Quotas] WHERE [QuotaName] = 'HostedSolution.DeletedUsersBackupStorageSpace')
|
||||||
|
BEGIN
|
||||||
|
INSERT [dbo].[Quotas] ([QuotaID], [GroupID],[QuotaOrder], [QuotaName], [QuotaDescription], [QuotaTypeID], [ServiceQuota], [ItemTypeID], [HideQuota]) VALUES (478, 13, 6, N'HostedSolution.DeletedUsersBackupStorageSpace', N'Deleted Users Backup Storage Space, Mb', 2, 0, NULL, NULL)
|
||||||
|
END
|
||||||
|
GO
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM SYS.TABLES WHERE name = 'ExchangeDeletedAccounts')
|
||||||
|
CREATE TABLE ExchangeDeletedAccounts
|
||||||
|
(
|
||||||
|
ID INT IDENTITY(1,1) NOT NULL PRIMARY KEY,
|
||||||
|
AccountID INT NOT NULL,
|
||||||
|
OriginAT INT NOT NULL,
|
||||||
|
StoragePath NVARCHAR(255) NULL,
|
||||||
|
FolderName NVARCHAR(128) NULL,
|
||||||
|
FileName NVARCHAR(128) NULL,
|
||||||
|
ExpirationDate DATETIME NOT NULL
|
||||||
|
)
|
||||||
|
GO
|
||||||
|
|
||||||
|
IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'GetOrganizationStatistics')
|
||||||
|
DROP PROCEDURE [dbo].[GetOrganizationStatistics]
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE PROCEDURE [dbo].[GetOrganizationStatistics]
|
||||||
|
(
|
||||||
|
@ItemID int
|
||||||
|
)
|
||||||
|
AS
|
||||||
|
SELECT
|
||||||
|
(SELECT COUNT(*) FROM ExchangeAccounts WHERE (AccountType = 7 OR AccountType = 1 OR AccountType = 6 OR AccountType = 5) AND ItemID = @ItemID) AS CreatedUsers,
|
||||||
|
(SELECT COUNT(*) FROM ExchangeOrganizationDomains WHERE ItemID = @ItemID) AS CreatedDomains,
|
||||||
|
(SELECT COUNT(*) FROM ExchangeAccounts WHERE (AccountType = 8 OR AccountType = 9) AND ItemID = @ItemID) AS CreatedGroups,
|
||||||
|
(SELECT COUNT(*) FROM ExchangeAccounts WHERE AccountType = 11 AND ItemID = @ItemID) AS DeletedUsers
|
||||||
|
RETURN
|
||||||
|
GO
|
||||||
|
|
||||||
|
IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'DeleteOrganizationDeletedUser')
|
||||||
|
DROP PROCEDURE [dbo].[GetOrganizationDeletedUser]
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE PROCEDURE [dbo].[DeleteOrganizationDeletedUser]
|
||||||
|
(
|
||||||
|
@ID int
|
||||||
|
)
|
||||||
|
AS
|
||||||
|
DELETE FROM ExchangeDeletedAccounts WHERE AccountID = @ID
|
||||||
|
RETURN
|
||||||
|
GO
|
||||||
|
|
||||||
|
IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'GetOrganizationDeletedUser')
|
||||||
|
DROP PROCEDURE [dbo].[GetOrganizationDeletedUser]
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE PROCEDURE [dbo].[GetOrganizationDeletedUser]
|
||||||
|
(
|
||||||
|
@AccountID int
|
||||||
|
)
|
||||||
|
AS
|
||||||
|
SELECT
|
||||||
|
EDA.AccountID,
|
||||||
|
EDA.OriginAT,
|
||||||
|
EDA.StoragePath,
|
||||||
|
EDA.FolderName,
|
||||||
|
EDA.FileName,
|
||||||
|
EDA.ExpirationDate
|
||||||
|
FROM
|
||||||
|
ExchangeDeletedAccounts AS EDA
|
||||||
|
WHERE
|
||||||
|
EDA.AccountID = @AccountID
|
||||||
|
RETURN
|
||||||
|
GO
|
||||||
|
|
||||||
|
IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'AddOrganizationDeletedUser')
|
||||||
|
DROP PROCEDURE [dbo].[AddOrganizationDeletedUser]
|
||||||
|
GO
|
||||||
|
|
||||||
|
CREATE PROCEDURE [dbo].[AddOrganizationDeletedUser]
|
||||||
|
(
|
||||||
|
@ID int OUTPUT,
|
||||||
|
@AccountID int,
|
||||||
|
@OriginAT int,
|
||||||
|
@StoragePath nvarchar(255),
|
||||||
|
@FolderName nvarchar(128),
|
||||||
|
@FileName nvarchar(128),
|
||||||
|
@ExpirationDate datetime
|
||||||
|
)
|
||||||
|
AS
|
||||||
|
|
||||||
|
INSERT INTO ExchangeDeletedAccounts
|
||||||
|
(
|
||||||
|
AccountID,
|
||||||
|
OriginAT,
|
||||||
|
StoragePath,
|
||||||
|
FolderName,
|
||||||
|
FileName,
|
||||||
|
ExpirationDate
|
||||||
|
)
|
||||||
|
VALUES
|
||||||
|
(
|
||||||
|
@AccountID,
|
||||||
|
@OriginAT,
|
||||||
|
@StoragePath,
|
||||||
|
@FolderName,
|
||||||
|
@FileName,
|
||||||
|
@ExpirationDate
|
||||||
|
)
|
||||||
|
|
||||||
|
SET @ID = SCOPE_IDENTITY()
|
||||||
|
|
||||||
|
RETURN
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER FUNCTION [dbo].[CalculateQuotaUsage]
|
||||||
|
(
|
||||||
|
@PackageID int,
|
||||||
|
@QuotaID int
|
||||||
|
)
|
||||||
|
RETURNS int
|
||||||
|
AS
|
||||||
|
BEGIN
|
||||||
|
|
||||||
|
DECLARE @QuotaTypeID int
|
||||||
|
DECLARE @QuotaName nvarchar(50)
|
||||||
|
SELECT @QuotaTypeID = QuotaTypeID, @QuotaName = QuotaName FROM Quotas
|
||||||
|
WHERE QuotaID = @QuotaID
|
||||||
|
|
||||||
|
IF @QuotaTypeID <> 2
|
||||||
|
RETURN 0
|
||||||
|
|
||||||
|
DECLARE @Result int
|
||||||
|
|
||||||
|
IF @QuotaID = 52 -- diskspace
|
||||||
|
SET @Result = dbo.CalculatePackageDiskspace(@PackageID)
|
||||||
|
ELSE IF @QuotaID = 51 -- bandwidth
|
||||||
|
SET @Result = dbo.CalculatePackageBandwidth(@PackageID)
|
||||||
|
ELSE IF @QuotaID = 53 -- domains
|
||||||
|
SET @Result = (SELECT COUNT(D.DomainID) FROM PackagesTreeCache AS PT
|
||||||
|
INNER JOIN Domains AS D ON D.PackageID = PT.PackageID
|
||||||
|
WHERE IsSubDomain = 0 AND IsInstantAlias = 0 AND IsDomainPointer = 0 AND PT.ParentPackageID = @PackageID)
|
||||||
|
ELSE IF @QuotaID = 54 -- sub-domains
|
||||||
|
SET @Result = (SELECT COUNT(D.DomainID) FROM PackagesTreeCache AS PT
|
||||||
|
INNER JOIN Domains AS D ON D.PackageID = PT.PackageID
|
||||||
|
WHERE IsSubDomain = 1 AND IsInstantAlias = 0 AND IsDomainPointer = 0 AND PT.ParentPackageID = @PackageID)
|
||||||
|
ELSE IF @QuotaID = 220 -- domain pointers
|
||||||
|
SET @Result = (SELECT COUNT(D.DomainID) FROM PackagesTreeCache AS PT
|
||||||
|
INNER JOIN Domains AS D ON D.PackageID = PT.PackageID
|
||||||
|
WHERE IsDomainPointer = 1 AND PT.ParentPackageID = @PackageID)
|
||||||
|
ELSE IF @QuotaID = 71 -- scheduled tasks
|
||||||
|
SET @Result = (SELECT COUNT(S.ScheduleID) FROM PackagesTreeCache AS PT
|
||||||
|
INNER JOIN Schedule AS S ON S.PackageID = PT.PackageID
|
||||||
|
WHERE PT.ParentPackageID = @PackageID)
|
||||||
|
ELSE IF @QuotaID = 305 -- RAM of VPS
|
||||||
|
SET @Result = (SELECT SUM(CAST(SIP.PropertyValue AS int)) FROM ServiceItemProperties AS SIP
|
||||||
|
INNER JOIN ServiceItems AS SI ON SIP.ItemID = SI.ItemID
|
||||||
|
INNER JOIN PackagesTreeCache AS PT ON SI.PackageID = PT.PackageID
|
||||||
|
WHERE SIP.PropertyName = 'RamSize' AND PT.ParentPackageID = @PackageID)
|
||||||
|
ELSE IF @QuotaID = 306 -- HDD of VPS
|
||||||
|
SET @Result = (SELECT SUM(CAST(SIP.PropertyValue AS int)) FROM ServiceItemProperties AS SIP
|
||||||
|
INNER JOIN ServiceItems AS SI ON SIP.ItemID = SI.ItemID
|
||||||
|
INNER JOIN PackagesTreeCache AS PT ON SI.PackageID = PT.PackageID
|
||||||
|
WHERE SIP.PropertyName = 'HddSize' AND PT.ParentPackageID = @PackageID)
|
||||||
|
ELSE IF @QuotaID = 309 -- External IP addresses of VPS
|
||||||
|
SET @Result = (SELECT COUNT(PIP.PackageAddressID) FROM PackageIPAddresses AS PIP
|
||||||
|
INNER JOIN IPAddresses AS IP ON PIP.AddressID = IP.AddressID
|
||||||
|
INNER JOIN PackagesTreeCache AS PT ON PIP.PackageID = PT.PackageID
|
||||||
|
WHERE PT.ParentPackageID = @PackageID AND IP.PoolID = 3)
|
||||||
|
ELSE IF @QuotaID = 100 -- Dedicated Web IP addresses
|
||||||
|
SET @Result = (SELECT COUNT(PIP.PackageAddressID) FROM PackageIPAddresses AS PIP
|
||||||
|
INNER JOIN IPAddresses AS IP ON PIP.AddressID = IP.AddressID
|
||||||
|
INNER JOIN PackagesTreeCache AS PT ON PIP.PackageID = PT.PackageID
|
||||||
|
WHERE PT.ParentPackageID = @PackageID AND IP.PoolID = 2)
|
||||||
|
ELSE IF @QuotaID = 350 -- RAM of VPSforPc
|
||||||
|
SET @Result = (SELECT SUM(CAST(SIP.PropertyValue AS int)) FROM ServiceItemProperties AS SIP
|
||||||
|
INNER JOIN ServiceItems AS SI ON SIP.ItemID = SI.ItemID
|
||||||
|
INNER JOIN PackagesTreeCache AS PT ON SI.PackageID = PT.PackageID
|
||||||
|
WHERE SIP.PropertyName = 'Memory' AND PT.ParentPackageID = @PackageID)
|
||||||
|
ELSE IF @QuotaID = 351 -- HDD of VPSforPc
|
||||||
|
SET @Result = (SELECT SUM(CAST(SIP.PropertyValue AS int)) FROM ServiceItemProperties AS SIP
|
||||||
|
INNER JOIN ServiceItems AS SI ON SIP.ItemID = SI.ItemID
|
||||||
|
INNER JOIN PackagesTreeCache AS PT ON SI.PackageID = PT.PackageID
|
||||||
|
WHERE SIP.PropertyName = 'HddSize' AND PT.ParentPackageID = @PackageID)
|
||||||
|
ELSE IF @QuotaID = 354 -- External IP addresses of VPSforPc
|
||||||
|
SET @Result = (SELECT COUNT(PIP.PackageAddressID) FROM PackageIPAddresses AS PIP
|
||||||
|
INNER JOIN IPAddresses AS IP ON PIP.AddressID = IP.AddressID
|
||||||
|
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
|
||||||
|
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
|
||||||
|
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
|
||||||
|
WHERE pt.ParentPackageID = @PackageID)
|
||||||
|
ELSE IF @QuotaID = 206 -- HostedSolution.Users
|
||||||
|
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 AND ea.AccountType IN (1,5,6,7))
|
||||||
|
ELSE IF @QuotaID = 78 -- Exchange2007.Mailboxes
|
||||||
|
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
|
||||||
|
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
|
||||||
|
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 = 370 -- Lync.Users
|
||||||
|
SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts AS ea
|
||||||
|
INNER JOIN LyncUsers lu ON ea.AccountID = lu.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 = 376 -- Lync.EVUsers
|
||||||
|
SET @Result = (SELECT COUNT(ea.AccountID) FROM ExchangeAccounts AS ea
|
||||||
|
INNER JOIN LyncUsers lu ON ea.AccountID = lu.AccountID
|
||||||
|
INNER JOIN LyncUserPlans lp ON lu.LyncUserPlanId = lp.LyncUserPlanId
|
||||||
|
INNER JOIN ServiceItems si ON ea.ItemID = si.ItemID
|
||||||
|
INNER JOIN PackagesTreeCache pt ON si.PackageID = pt.PackageID
|
||||||
|
WHERE pt.ParentPackageID = @PackageID AND lp.EnterpriseVoice = 1)
|
||||||
|
ELSE IF @QuotaID = 381 -- Dedicated Lync Phone Numbers
|
||||||
|
SET @Result = (SELECT COUNT(PIP.PackageAddressID) FROM PackageIPAddresses AS PIP
|
||||||
|
INNER JOIN IPAddresses AS IP ON PIP.AddressID = IP.AddressID
|
||||||
|
INNER JOIN PackagesTreeCache AS PT ON PIP.PackageID = PT.PackageID
|
||||||
|
WHERE PT.ParentPackageID = @PackageID AND IP.PoolID = 5)
|
||||||
|
ELSE IF @QuotaID = 430 -- Enterprise Storage
|
||||||
|
SET @Result = (SELECT SUM(ESF.FolderQuota) FROM EnterpriseFolders AS ESF
|
||||||
|
INNER JOIN ServiceItems SI ON ESF.ItemID = SI.ItemID
|
||||||
|
INNER JOIN PackagesTreeCache PT ON SI.PackageID = PT.PackageID
|
||||||
|
WHERE PT.ParentPackageID = @PackageID)
|
||||||
|
ELSE IF @QuotaID = 431 -- Enterprise Storage Folders
|
||||||
|
SET @Result = (SELECT COUNT(ESF.EnterpriseFolderID) FROM EnterpriseFolders AS ESF
|
||||||
|
INNER JOIN ServiceItems SI ON ESF.ItemID = SI.ItemID
|
||||||
|
INNER JOIN PackagesTreeCache PT ON SI.PackageID = PT.PackageID
|
||||||
|
WHERE PT.ParentPackageID = @PackageID)
|
||||||
|
ELSE IF @QuotaID = 423 -- HostedSolution.SecurityGroups
|
||||||
|
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 AND ea.AccountType IN (8,9))
|
||||||
|
ELSE IF @QuotaID = 477 -- HostedSolution.DeletedUsers
|
||||||
|
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 AND ea.AccountType = 11)
|
||||||
|
ELSE IF @QuotaName like 'ServiceLevel.%' -- Support Service Level Quota
|
||||||
|
BEGIN
|
||||||
|
DECLARE @LevelID int
|
||||||
|
|
||||||
|
SELECT @LevelID = LevelID FROM SupportServiceLevels
|
||||||
|
WHERE LevelName = REPLACE(@QuotaName,'ServiceLevel.','')
|
||||||
|
|
||||||
|
IF (@LevelID IS NOT NULL)
|
||||||
|
SET @Result = (SELECT COUNT(EA.AccountID)
|
||||||
|
FROM SupportServiceLevels AS SL
|
||||||
|
INNER JOIN ExchangeAccounts AS EA ON SL.LevelID = EA.LevelID
|
||||||
|
INNER JOIN ServiceItems SI ON EA.ItemID = SI.ItemID
|
||||||
|
INNER JOIN PackagesTreeCache PT ON SI.PackageID = PT.PackageID
|
||||||
|
WHERE EA.LevelID = @LevelID AND PT.ParentPackageID = @PackageID)
|
||||||
|
ELSE SET @Result = 0
|
||||||
|
END
|
||||||
|
ELSE
|
||||||
|
SET @Result = (SELECT COUNT(SI.ItemID) FROM Quotas AS Q
|
||||||
|
INNER JOIN ServiceItems AS SI ON SI.ItemTypeID = Q.ItemTypeID
|
||||||
|
INNER JOIN PackagesTreeCache AS PT ON SI.PackageID = PT.PackageID AND PT.ParentPackageID = @PackageID
|
||||||
|
WHERE Q.QuotaID = @QuotaID)
|
||||||
|
|
||||||
|
RETURN @Result
|
||||||
|
END
|
||||||
|
GO
|
||||||
|
|
||||||
|
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='ExchangeMailboxPlans' AND COLS.name='EnableForceArchiveDeletion')
|
||||||
|
BEGIN
|
||||||
|
ALTER TABLE [dbo].[ExchangeMailboxPlans] ADD [EnableForceArchiveDeletion] [bit] NULL
|
||||||
|
END
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER PROCEDURE [dbo].[AddExchangeMailboxPlan]
|
||||||
|
(
|
||||||
|
@MailboxPlanId int OUTPUT,
|
||||||
|
@ItemID int,
|
||||||
|
@MailboxPlan nvarchar(300),
|
||||||
|
@EnableActiveSync bit,
|
||||||
|
@EnableIMAP bit,
|
||||||
|
@EnableMAPI bit,
|
||||||
|
@EnableOWA bit,
|
||||||
|
@EnablePOP bit,
|
||||||
|
@IsDefault bit,
|
||||||
|
@IssueWarningPct int,
|
||||||
|
@KeepDeletedItemsDays int,
|
||||||
|
@MailboxSizeMB int,
|
||||||
|
@MaxReceiveMessageSizeKB int,
|
||||||
|
@MaxRecipients int,
|
||||||
|
@MaxSendMessageSizeKB int,
|
||||||
|
@ProhibitSendPct int,
|
||||||
|
@ProhibitSendReceivePct int ,
|
||||||
|
@HideFromAddressBook bit,
|
||||||
|
@MailboxPlanType int,
|
||||||
|
@AllowLitigationHold bit,
|
||||||
|
@RecoverableItemsWarningPct int,
|
||||||
|
@RecoverableItemsSpace int,
|
||||||
|
@LitigationHoldUrl nvarchar(256),
|
||||||
|
@LitigationHoldMsg nvarchar(512),
|
||||||
|
@Archiving bit,
|
||||||
|
@EnableArchiving bit,
|
||||||
|
@ArchiveSizeMB int,
|
||||||
|
@ArchiveWarningPct int,
|
||||||
|
@EnableForceArchiveDeletion bit
|
||||||
|
)
|
||||||
|
AS
|
||||||
|
|
||||||
|
IF (((SELECT Count(*) FROM ExchangeMailboxPlans WHERE ItemId = @ItemID) = 0) AND (@MailboxPlanType=0))
|
||||||
|
BEGIN
|
||||||
|
SET @IsDefault = 1
|
||||||
|
END
|
||||||
|
ELSE
|
||||||
|
BEGIN
|
||||||
|
IF ((@IsDefault = 1) AND (@MailboxPlanType=0))
|
||||||
|
BEGIN
|
||||||
|
UPDATE ExchangeMailboxPlans SET IsDefault = 0 WHERE ItemID = @ItemID
|
||||||
|
END
|
||||||
|
END
|
||||||
|
|
||||||
|
INSERT INTO ExchangeMailboxPlans
|
||||||
|
(
|
||||||
|
ItemID,
|
||||||
|
MailboxPlan,
|
||||||
|
EnableActiveSync,
|
||||||
|
EnableIMAP,
|
||||||
|
EnableMAPI,
|
||||||
|
EnableOWA,
|
||||||
|
EnablePOP,
|
||||||
|
IsDefault,
|
||||||
|
IssueWarningPct,
|
||||||
|
KeepDeletedItemsDays,
|
||||||
|
MailboxSizeMB,
|
||||||
|
MaxReceiveMessageSizeKB,
|
||||||
|
MaxRecipients,
|
||||||
|
MaxSendMessageSizeKB,
|
||||||
|
ProhibitSendPct,
|
||||||
|
ProhibitSendReceivePct,
|
||||||
|
HideFromAddressBook,
|
||||||
|
MailboxPlanType,
|
||||||
|
AllowLitigationHold,
|
||||||
|
RecoverableItemsWarningPct,
|
||||||
|
RecoverableItemsSpace,
|
||||||
|
LitigationHoldUrl,
|
||||||
|
LitigationHoldMsg,
|
||||||
|
Archiving,
|
||||||
|
EnableArchiving,
|
||||||
|
ArchiveSizeMB,
|
||||||
|
ArchiveWarningPct,
|
||||||
|
EnableForceArchiveDeletion
|
||||||
|
)
|
||||||
|
VALUES
|
||||||
|
(
|
||||||
|
@ItemID,
|
||||||
|
@MailboxPlan,
|
||||||
|
@EnableActiveSync,
|
||||||
|
@EnableIMAP,
|
||||||
|
@EnableMAPI,
|
||||||
|
@EnableOWA,
|
||||||
|
@EnablePOP,
|
||||||
|
@IsDefault,
|
||||||
|
@IssueWarningPct,
|
||||||
|
@KeepDeletedItemsDays,
|
||||||
|
@MailboxSizeMB,
|
||||||
|
@MaxReceiveMessageSizeKB,
|
||||||
|
@MaxRecipients,
|
||||||
|
@MaxSendMessageSizeKB,
|
||||||
|
@ProhibitSendPct,
|
||||||
|
@ProhibitSendReceivePct,
|
||||||
|
@HideFromAddressBook,
|
||||||
|
@MailboxPlanType,
|
||||||
|
@AllowLitigationHold,
|
||||||
|
@RecoverableItemsWarningPct,
|
||||||
|
@RecoverableItemsSpace,
|
||||||
|
@LitigationHoldUrl,
|
||||||
|
@LitigationHoldMsg,
|
||||||
|
@Archiving,
|
||||||
|
@EnableArchiving,
|
||||||
|
@ArchiveSizeMB,
|
||||||
|
@ArchiveWarningPct,
|
||||||
|
@EnableForceArchiveDeletion
|
||||||
|
)
|
||||||
|
|
||||||
|
SET @MailboxPlanId = SCOPE_IDENTITY()
|
||||||
|
|
||||||
|
RETURN
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER PROCEDURE [dbo].[UpdateExchangeMailboxPlan]
|
||||||
|
(
|
||||||
|
@MailboxPlanId int,
|
||||||
|
@MailboxPlan nvarchar(300),
|
||||||
|
@EnableActiveSync bit,
|
||||||
|
@EnableIMAP bit,
|
||||||
|
@EnableMAPI bit,
|
||||||
|
@EnableOWA bit,
|
||||||
|
@EnablePOP bit,
|
||||||
|
@IsDefault bit,
|
||||||
|
@IssueWarningPct int,
|
||||||
|
@KeepDeletedItemsDays int,
|
||||||
|
@MailboxSizeMB int,
|
||||||
|
@MaxReceiveMessageSizeKB int,
|
||||||
|
@MaxRecipients int,
|
||||||
|
@MaxSendMessageSizeKB int,
|
||||||
|
@ProhibitSendPct int,
|
||||||
|
@ProhibitSendReceivePct int ,
|
||||||
|
@HideFromAddressBook bit,
|
||||||
|
@MailboxPlanType int,
|
||||||
|
@AllowLitigationHold bit,
|
||||||
|
@RecoverableItemsWarningPct int,
|
||||||
|
@RecoverableItemsSpace int,
|
||||||
|
@LitigationHoldUrl nvarchar(256),
|
||||||
|
@LitigationHoldMsg nvarchar(512),
|
||||||
|
@Archiving bit,
|
||||||
|
@EnableArchiving bit,
|
||||||
|
@ArchiveSizeMB int,
|
||||||
|
@ArchiveWarningPct int,
|
||||||
|
@EnableForceArchiveDeletion bit
|
||||||
|
)
|
||||||
|
AS
|
||||||
|
|
||||||
|
UPDATE ExchangeMailboxPlans SET
|
||||||
|
MailboxPlan = @MailboxPlan,
|
||||||
|
EnableActiveSync = @EnableActiveSync,
|
||||||
|
EnableIMAP = @EnableIMAP,
|
||||||
|
EnableMAPI = @EnableMAPI,
|
||||||
|
EnableOWA = @EnableOWA,
|
||||||
|
EnablePOP = @EnablePOP,
|
||||||
|
IsDefault = @IsDefault,
|
||||||
|
IssueWarningPct= @IssueWarningPct,
|
||||||
|
KeepDeletedItemsDays = @KeepDeletedItemsDays,
|
||||||
|
MailboxSizeMB= @MailboxSizeMB,
|
||||||
|
MaxReceiveMessageSizeKB= @MaxReceiveMessageSizeKB,
|
||||||
|
MaxRecipients= @MaxRecipients,
|
||||||
|
MaxSendMessageSizeKB= @MaxSendMessageSizeKB,
|
||||||
|
ProhibitSendPct= @ProhibitSendPct,
|
||||||
|
ProhibitSendReceivePct = @ProhibitSendReceivePct,
|
||||||
|
HideFromAddressBook = @HideFromAddressBook,
|
||||||
|
MailboxPlanType = @MailboxPlanType,
|
||||||
|
AllowLitigationHold = @AllowLitigationHold,
|
||||||
|
RecoverableItemsWarningPct = @RecoverableItemsWarningPct,
|
||||||
|
RecoverableItemsSpace = @RecoverableItemsSpace,
|
||||||
|
LitigationHoldUrl = @LitigationHoldUrl,
|
||||||
|
LitigationHoldMsg = @LitigationHoldMsg,
|
||||||
|
Archiving = @Archiving,
|
||||||
|
EnableArchiving = @EnableArchiving,
|
||||||
|
ArchiveSizeMB = @ArchiveSizeMB,
|
||||||
|
ArchiveWarningPct = @ArchiveWarningPct,
|
||||||
|
EnableForceArchiveDeletion = @EnableForceArchiveDeletion
|
||||||
|
WHERE MailboxPlanId = @MailboxPlanId
|
||||||
|
|
||||||
|
RETURN
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER PROCEDURE [dbo].[GetExchangeMailboxPlan]
|
||||||
|
(
|
||||||
|
@MailboxPlanId int
|
||||||
|
)
|
||||||
|
AS
|
||||||
|
SELECT
|
||||||
|
MailboxPlanId,
|
||||||
|
ItemID,
|
||||||
|
MailboxPlan,
|
||||||
|
EnableActiveSync,
|
||||||
|
EnableIMAP,
|
||||||
|
EnableMAPI,
|
||||||
|
EnableOWA,
|
||||||
|
EnablePOP,
|
||||||
|
IsDefault,
|
||||||
|
IssueWarningPct,
|
||||||
|
KeepDeletedItemsDays,
|
||||||
|
MailboxSizeMB,
|
||||||
|
MaxReceiveMessageSizeKB,
|
||||||
|
MaxRecipients,
|
||||||
|
MaxSendMessageSizeKB,
|
||||||
|
ProhibitSendPct,
|
||||||
|
ProhibitSendReceivePct,
|
||||||
|
HideFromAddressBook,
|
||||||
|
MailboxPlanType,
|
||||||
|
AllowLitigationHold,
|
||||||
|
RecoverableItemsWarningPct,
|
||||||
|
RecoverableItemsSpace,
|
||||||
|
LitigationHoldUrl,
|
||||||
|
LitigationHoldMsg,
|
||||||
|
Archiving,
|
||||||
|
EnableArchiving,
|
||||||
|
ArchiveSizeMB,
|
||||||
|
ArchiveWarningPct,
|
||||||
|
EnableForceArchiveDeletion
|
||||||
|
FROM
|
||||||
|
ExchangeMailboxPlans
|
||||||
|
WHERE
|
||||||
|
MailboxPlanId = @MailboxPlanId
|
||||||
|
RETURN
|
||||||
|
GO
|
||||||
|
|
||||||
|
ALTER PROCEDURE [dbo].[GetExchangeMailboxPlans]
|
||||||
|
(
|
||||||
|
@ItemID int,
|
||||||
|
@Archiving bit
|
||||||
|
)
|
||||||
|
AS
|
||||||
|
SELECT
|
||||||
|
MailboxPlanId,
|
||||||
|
ItemID,
|
||||||
|
MailboxPlan,
|
||||||
|
EnableActiveSync,
|
||||||
|
EnableIMAP,
|
||||||
|
EnableMAPI,
|
||||||
|
EnableOWA,
|
||||||
|
EnablePOP,
|
||||||
|
IsDefault,
|
||||||
|
IssueWarningPct,
|
||||||
|
KeepDeletedItemsDays,
|
||||||
|
MailboxSizeMB,
|
||||||
|
MaxReceiveMessageSizeKB,
|
||||||
|
MaxRecipients,
|
||||||
|
MaxSendMessageSizeKB,
|
||||||
|
ProhibitSendPct,
|
||||||
|
ProhibitSendReceivePct,
|
||||||
|
HideFromAddressBook,
|
||||||
|
MailboxPlanType,
|
||||||
|
Archiving,
|
||||||
|
EnableArchiving,
|
||||||
|
ArchiveSizeMB,
|
||||||
|
ArchiveWarningPct,
|
||||||
|
EnableForceArchiveDeletion
|
||||||
|
FROM
|
||||||
|
ExchangeMailboxPlans
|
||||||
|
WHERE
|
||||||
|
ItemID = @ItemID
|
||||||
|
AND ((Archiving=@Archiving) OR ((@Archiving=0) AND (Archiving IS NULL)))
|
||||||
|
ORDER BY MailboxPlan
|
||||||
|
RETURN
|
||||||
|
GO
|
||||||
|
|
||||||
|
IF NOT EXISTS (SELECT * FROM [dbo].[ScheduleTasks] WHERE [TaskID] = 'SCHEDULE_TASK_DELETE_EXCHANGE_ACCOUNTS')
|
||||||
|
BEGIN
|
||||||
|
INSERT INTO [dbo].[ScheduleTasks] ([TaskID], [TaskType], [RoleID]) VALUES (N'SCHEDULE_TASK_DELETE_EXCHANGE_ACCOUNTS', N'WebsitePanel.EnterpriseServer.DeleteExchangeAccountsTask, WebsitePanel.EnterpriseServer.Code', 3)
|
||||||
|
END
|
||||||
GO
|
GO
|
|
@ -326,6 +326,7 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
public const int CURRENT_USER_IS_CRM_USER = -2708;
|
public const int CURRENT_USER_IS_CRM_USER = -2708;
|
||||||
public const int CURRENT_USER_IS_OCS_USER = -2709;
|
public const int CURRENT_USER_IS_OCS_USER = -2709;
|
||||||
public const int CURRENT_USER_IS_LYNC_USER = -2710;
|
public const int CURRENT_USER_IS_LYNC_USER = -2710;
|
||||||
|
public const int ERROR_DELETED_USERS_RESOURCE_QUOTA_LIMIT = -2711;
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
|
|
@ -161,6 +161,8 @@ order by rg.groupOrder
|
||||||
public const string STATS_SITES = "Stats.Sites"; // Statistics Sites
|
public const string STATS_SITES = "Stats.Sites"; // Statistics Sites
|
||||||
public const string ORGANIZATIONS = "HostedSolution.Organizations";
|
public const string ORGANIZATIONS = "HostedSolution.Organizations";
|
||||||
public const string ORGANIZATION_USERS = "HostedSolution.Users";
|
public const string ORGANIZATION_USERS = "HostedSolution.Users";
|
||||||
|
public const string ORGANIZATION_DELETED_USERS = "HostedSolution.DeletedUsers";
|
||||||
|
public const string ORGANIZATION_DELETED_USERS_BACKUP_STORAGE_SPACE = "HostedSolution.DeletedUsersBackupStorageSpace";
|
||||||
public const string ORGANIZATION_DOMAINS = "HostedSolution.Domains";
|
public const string ORGANIZATION_DOMAINS = "HostedSolution.Domains";
|
||||||
public const string ORGANIZATION_ALLOWCHANGEUPN = "HostedSolution.AllowChangeUPN";
|
public const string ORGANIZATION_ALLOWCHANGEUPN = "HostedSolution.AllowChangeUPN";
|
||||||
public const string ORGANIZATION_SECURITYGROUPS = "HostedSolution.SecurityGroups";
|
public const string ORGANIZATION_SECURITYGROUPS = "HostedSolution.SecurityGroups";
|
||||||
|
|
|
@ -19,10 +19,10 @@ namespace WebsitePanel.EnterpriseServer {
|
||||||
using System;
|
using System;
|
||||||
using System.Diagnostics;
|
using System.Diagnostics;
|
||||||
using System.Data;
|
using System.Data;
|
||||||
using WebsitePanel.Providers;
|
|
||||||
using WebsitePanel.Providers.HostedSolution;
|
using WebsitePanel.Providers.HostedSolution;
|
||||||
using WebsitePanel.Providers.ResultObjects;
|
|
||||||
using WebsitePanel.Providers.Common;
|
using WebsitePanel.Providers.Common;
|
||||||
|
using WebsitePanel.Providers.ResultObjects;
|
||||||
|
using WebsitePanel.Providers;
|
||||||
|
|
||||||
|
|
||||||
/// <remarks/>
|
/// <remarks/>
|
||||||
|
@ -34,6 +34,10 @@ namespace WebsitePanel.EnterpriseServer {
|
||||||
[System.Xml.Serialization.XmlIncludeAttribute(typeof(ServiceProviderItem))]
|
[System.Xml.Serialization.XmlIncludeAttribute(typeof(ServiceProviderItem))]
|
||||||
public partial class esExchangeServer : Microsoft.Web.Services3.WebServicesClientProtocol {
|
public partial class esExchangeServer : Microsoft.Web.Services3.WebServicesClientProtocol {
|
||||||
|
|
||||||
|
private System.Threading.SendOrPostCallback DeleteDistributionListMemberOperationCompleted;
|
||||||
|
|
||||||
|
private System.Threading.SendOrPostCallback GetMobileDevicesOperationCompleted;
|
||||||
|
|
||||||
private System.Threading.SendOrPostCallback GetMobileDeviceOperationCompleted;
|
private System.Threading.SendOrPostCallback GetMobileDeviceOperationCompleted;
|
||||||
|
|
||||||
private System.Threading.SendOrPostCallback WipeDataFromDeviceOperationCompleted;
|
private System.Threading.SendOrPostCallback WipeDataFromDeviceOperationCompleted;
|
||||||
|
@ -196,6 +200,10 @@ namespace WebsitePanel.EnterpriseServer {
|
||||||
|
|
||||||
private System.Threading.SendOrPostCallback SetMailboxPermissionsOperationCompleted;
|
private System.Threading.SendOrPostCallback SetMailboxPermissionsOperationCompleted;
|
||||||
|
|
||||||
|
private System.Threading.SendOrPostCallback ExportMailBoxOperationCompleted;
|
||||||
|
|
||||||
|
private System.Threading.SendOrPostCallback SetDeletedMailboxOperationCompleted;
|
||||||
|
|
||||||
private System.Threading.SendOrPostCallback CreateContactOperationCompleted;
|
private System.Threading.SendOrPostCallback CreateContactOperationCompleted;
|
||||||
|
|
||||||
private System.Threading.SendOrPostCallback DeleteContactOperationCompleted;
|
private System.Threading.SendOrPostCallback DeleteContactOperationCompleted;
|
||||||
|
@ -236,15 +244,17 @@ namespace WebsitePanel.EnterpriseServer {
|
||||||
|
|
||||||
private System.Threading.SendOrPostCallback AddDistributionListMemberOperationCompleted;
|
private System.Threading.SendOrPostCallback AddDistributionListMemberOperationCompleted;
|
||||||
|
|
||||||
private System.Threading.SendOrPostCallback DeleteDistributionListMemberOperationCompleted;
|
|
||||||
|
|
||||||
private System.Threading.SendOrPostCallback GetMobileDevicesOperationCompleted;
|
|
||||||
|
|
||||||
/// <remarks/>
|
/// <remarks/>
|
||||||
public esExchangeServer() {
|
public esExchangeServer() {
|
||||||
this.Url = "http://localhost:9002/esExchangeServer.asmx";
|
this.Url = "http://localhost:9002/esExchangeServer.asmx";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public event DeleteDistributionListMemberCompletedEventHandler DeleteDistributionListMemberCompleted;
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public event GetMobileDevicesCompletedEventHandler GetMobileDevicesCompleted;
|
||||||
|
|
||||||
/// <remarks/>
|
/// <remarks/>
|
||||||
public event GetMobileDeviceCompletedEventHandler GetMobileDeviceCompleted;
|
public event GetMobileDeviceCompletedEventHandler GetMobileDeviceCompleted;
|
||||||
|
|
||||||
|
@ -488,6 +498,12 @@ namespace WebsitePanel.EnterpriseServer {
|
||||||
/// <remarks/>
|
/// <remarks/>
|
||||||
public event SetMailboxPermissionsCompletedEventHandler SetMailboxPermissionsCompleted;
|
public event SetMailboxPermissionsCompletedEventHandler SetMailboxPermissionsCompleted;
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public event ExportMailBoxCompletedEventHandler ExportMailBoxCompleted;
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public event SetDeletedMailboxCompletedEventHandler SetDeletedMailboxCompleted;
|
||||||
|
|
||||||
/// <remarks/>
|
/// <remarks/>
|
||||||
public event CreateContactCompletedEventHandler CreateContactCompleted;
|
public event CreateContactCompletedEventHandler CreateContactCompleted;
|
||||||
|
|
||||||
|
@ -549,10 +565,95 @@ namespace WebsitePanel.EnterpriseServer {
|
||||||
public event AddDistributionListMemberCompletedEventHandler AddDistributionListMemberCompleted;
|
public event AddDistributionListMemberCompletedEventHandler AddDistributionListMemberCompleted;
|
||||||
|
|
||||||
/// <remarks/>
|
/// <remarks/>
|
||||||
public event DeleteDistributionListMemberCompletedEventHandler DeleteDistributionListMemberCompleted;
|
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/DeleteDistributionListMember", RequestNamespace="http://smbsaas/websitepanel/enterpriseserver", ResponseNamespace="http://smbsaas/websitepanel/enterpriseserver", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
|
||||||
|
public int DeleteDistributionListMember(int itemId, string distributionListName, int memberId) {
|
||||||
|
object[] results = this.Invoke("DeleteDistributionListMember", new object[] {
|
||||||
|
itemId,
|
||||||
|
distributionListName,
|
||||||
|
memberId});
|
||||||
|
return ((int)(results[0]));
|
||||||
|
}
|
||||||
|
|
||||||
/// <remarks/>
|
/// <remarks/>
|
||||||
public event GetMobileDevicesCompletedEventHandler GetMobileDevicesCompleted;
|
public System.IAsyncResult BeginDeleteDistributionListMember(int itemId, string distributionListName, int memberId, System.AsyncCallback callback, object asyncState) {
|
||||||
|
return this.BeginInvoke("DeleteDistributionListMember", new object[] {
|
||||||
|
itemId,
|
||||||
|
distributionListName,
|
||||||
|
memberId}, callback, asyncState);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public int EndDeleteDistributionListMember(System.IAsyncResult asyncResult) {
|
||||||
|
object[] results = this.EndInvoke(asyncResult);
|
||||||
|
return ((int)(results[0]));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public void DeleteDistributionListMemberAsync(int itemId, string distributionListName, int memberId) {
|
||||||
|
this.DeleteDistributionListMemberAsync(itemId, distributionListName, memberId, null);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public void DeleteDistributionListMemberAsync(int itemId, string distributionListName, int memberId, object userState) {
|
||||||
|
if ((this.DeleteDistributionListMemberOperationCompleted == null)) {
|
||||||
|
this.DeleteDistributionListMemberOperationCompleted = new System.Threading.SendOrPostCallback(this.OnDeleteDistributionListMemberOperationCompleted);
|
||||||
|
}
|
||||||
|
this.InvokeAsync("DeleteDistributionListMember", new object[] {
|
||||||
|
itemId,
|
||||||
|
distributionListName,
|
||||||
|
memberId}, this.DeleteDistributionListMemberOperationCompleted, userState);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnDeleteDistributionListMemberOperationCompleted(object arg) {
|
||||||
|
if ((this.DeleteDistributionListMemberCompleted != null)) {
|
||||||
|
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
|
||||||
|
this.DeleteDistributionListMemberCompleted(this, new DeleteDistributionListMemberCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetMobileDevices", RequestNamespace="http://smbsaas/websitepanel/enterpriseserver", ResponseNamespace="http://smbsaas/websitepanel/enterpriseserver", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
|
||||||
|
public ExchangeMobileDevice[] GetMobileDevices(int itemId, int accountId) {
|
||||||
|
object[] results = this.Invoke("GetMobileDevices", new object[] {
|
||||||
|
itemId,
|
||||||
|
accountId});
|
||||||
|
return ((ExchangeMobileDevice[])(results[0]));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public System.IAsyncResult BeginGetMobileDevices(int itemId, int accountId, System.AsyncCallback callback, object asyncState) {
|
||||||
|
return this.BeginInvoke("GetMobileDevices", new object[] {
|
||||||
|
itemId,
|
||||||
|
accountId}, callback, asyncState);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public ExchangeMobileDevice[] EndGetMobileDevices(System.IAsyncResult asyncResult) {
|
||||||
|
object[] results = this.EndInvoke(asyncResult);
|
||||||
|
return ((ExchangeMobileDevice[])(results[0]));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public void GetMobileDevicesAsync(int itemId, int accountId) {
|
||||||
|
this.GetMobileDevicesAsync(itemId, accountId, null);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public void GetMobileDevicesAsync(int itemId, int accountId, object userState) {
|
||||||
|
if ((this.GetMobileDevicesOperationCompleted == null)) {
|
||||||
|
this.GetMobileDevicesOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetMobileDevicesOperationCompleted);
|
||||||
|
}
|
||||||
|
this.InvokeAsync("GetMobileDevices", new object[] {
|
||||||
|
itemId,
|
||||||
|
accountId}, this.GetMobileDevicesOperationCompleted, userState);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnGetMobileDevicesOperationCompleted(object arg) {
|
||||||
|
if ((this.GetMobileDevicesCompleted != null)) {
|
||||||
|
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
|
||||||
|
this.GetMobileDevicesCompleted(this, new GetMobileDevicesCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <remarks/>
|
/// <remarks/>
|
||||||
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetMobileDevice", RequestNamespace="http://smbsaas/websitepanel/enterpriseserver", ResponseNamespace="http://smbsaas/websitepanel/enterpriseserver", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
|
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetMobileDevice", RequestNamespace="http://smbsaas/websitepanel/enterpriseserver", ResponseNamespace="http://smbsaas/websitepanel/enterpriseserver", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
|
||||||
|
@ -4458,6 +4559,97 @@ namespace WebsitePanel.EnterpriseServer {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/ExportMailBox", RequestNamespace="http://smbsaas/websitepanel/enterpriseserver", ResponseNamespace="http://smbsaas/websitepanel/enterpriseserver", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
|
||||||
|
public int ExportMailBox(int itemId, int accountId, string path) {
|
||||||
|
object[] results = this.Invoke("ExportMailBox", new object[] {
|
||||||
|
itemId,
|
||||||
|
accountId,
|
||||||
|
path});
|
||||||
|
return ((int)(results[0]));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public System.IAsyncResult BeginExportMailBox(int itemId, int accountId, string path, System.AsyncCallback callback, object asyncState) {
|
||||||
|
return this.BeginInvoke("ExportMailBox", new object[] {
|
||||||
|
itemId,
|
||||||
|
accountId,
|
||||||
|
path}, callback, asyncState);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public int EndExportMailBox(System.IAsyncResult asyncResult) {
|
||||||
|
object[] results = this.EndInvoke(asyncResult);
|
||||||
|
return ((int)(results[0]));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public void ExportMailBoxAsync(int itemId, int accountId, string path) {
|
||||||
|
this.ExportMailBoxAsync(itemId, accountId, path, null);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public void ExportMailBoxAsync(int itemId, int accountId, string path, object userState) {
|
||||||
|
if ((this.ExportMailBoxOperationCompleted == null)) {
|
||||||
|
this.ExportMailBoxOperationCompleted = new System.Threading.SendOrPostCallback(this.OnExportMailBoxOperationCompleted);
|
||||||
|
}
|
||||||
|
this.InvokeAsync("ExportMailBox", new object[] {
|
||||||
|
itemId,
|
||||||
|
accountId,
|
||||||
|
path}, this.ExportMailBoxOperationCompleted, userState);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnExportMailBoxOperationCompleted(object arg) {
|
||||||
|
if ((this.ExportMailBoxCompleted != null)) {
|
||||||
|
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
|
||||||
|
this.ExportMailBoxCompleted(this, new ExportMailBoxCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/SetDeletedMailbox", RequestNamespace="http://smbsaas/websitepanel/enterpriseserver", ResponseNamespace="http://smbsaas/websitepanel/enterpriseserver", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
|
||||||
|
public int SetDeletedMailbox(int itemId, int accountId) {
|
||||||
|
object[] results = this.Invoke("SetDeletedMailbox", new object[] {
|
||||||
|
itemId,
|
||||||
|
accountId});
|
||||||
|
return ((int)(results[0]));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public System.IAsyncResult BeginSetDeletedMailbox(int itemId, int accountId, System.AsyncCallback callback, object asyncState) {
|
||||||
|
return this.BeginInvoke("SetDeletedMailbox", new object[] {
|
||||||
|
itemId,
|
||||||
|
accountId}, callback, asyncState);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public int EndSetDeletedMailbox(System.IAsyncResult asyncResult) {
|
||||||
|
object[] results = this.EndInvoke(asyncResult);
|
||||||
|
return ((int)(results[0]));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public void SetDeletedMailboxAsync(int itemId, int accountId) {
|
||||||
|
this.SetDeletedMailboxAsync(itemId, accountId, null);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public void SetDeletedMailboxAsync(int itemId, int accountId, object userState) {
|
||||||
|
if ((this.SetDeletedMailboxOperationCompleted == null)) {
|
||||||
|
this.SetDeletedMailboxOperationCompleted = new System.Threading.SendOrPostCallback(this.OnSetDeletedMailboxOperationCompleted);
|
||||||
|
}
|
||||||
|
this.InvokeAsync("SetDeletedMailbox", new object[] {
|
||||||
|
itemId,
|
||||||
|
accountId}, this.SetDeletedMailboxOperationCompleted, userState);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnSetDeletedMailboxOperationCompleted(object arg) {
|
||||||
|
if ((this.SetDeletedMailboxCompleted != null)) {
|
||||||
|
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
|
||||||
|
this.SetDeletedMailboxCompleted(this, new SetDeletedMailboxCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <remarks/>
|
/// <remarks/>
|
||||||
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/CreateContact", RequestNamespace="http://smbsaas/websitepanel/enterpriseserver", ResponseNamespace="http://smbsaas/websitepanel/enterpriseserver", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
|
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/CreateContact", RequestNamespace="http://smbsaas/websitepanel/enterpriseserver", ResponseNamespace="http://smbsaas/websitepanel/enterpriseserver", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
|
||||||
public int CreateContact(int itemId, string displayName, string email) {
|
public int CreateContact(int itemId, string displayName, string email) {
|
||||||
|
@ -5582,103 +5774,64 @@ namespace WebsitePanel.EnterpriseServer {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <remarks/>
|
|
||||||
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/DeleteDistributionListMember", RequestNamespace="http://smbsaas/websitepanel/enterpriseserver", ResponseNamespace="http://smbsaas/websitepanel/enterpriseserver", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
|
|
||||||
public int DeleteDistributionListMember(int itemId, string distributionListName, int memberId) {
|
|
||||||
object[] results = this.Invoke("DeleteDistributionListMember", new object[] {
|
|
||||||
itemId,
|
|
||||||
distributionListName,
|
|
||||||
memberId});
|
|
||||||
return ((int)(results[0]));
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <remarks/>
|
|
||||||
public System.IAsyncResult BeginDeleteDistributionListMember(int itemId, string distributionListName, int memberId, System.AsyncCallback callback, object asyncState) {
|
|
||||||
return this.BeginInvoke("DeleteDistributionListMember", new object[] {
|
|
||||||
itemId,
|
|
||||||
distributionListName,
|
|
||||||
memberId}, callback, asyncState);
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <remarks/>
|
|
||||||
public int EndDeleteDistributionListMember(System.IAsyncResult asyncResult) {
|
|
||||||
object[] results = this.EndInvoke(asyncResult);
|
|
||||||
return ((int)(results[0]));
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <remarks/>
|
|
||||||
public void DeleteDistributionListMemberAsync(int itemId, string distributionListName, int memberId) {
|
|
||||||
this.DeleteDistributionListMemberAsync(itemId, distributionListName, memberId, null);
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <remarks/>
|
|
||||||
public void DeleteDistributionListMemberAsync(int itemId, string distributionListName, int memberId, object userState) {
|
|
||||||
if ((this.DeleteDistributionListMemberOperationCompleted == null)) {
|
|
||||||
this.DeleteDistributionListMemberOperationCompleted = new System.Threading.SendOrPostCallback(this.OnDeleteDistributionListMemberOperationCompleted);
|
|
||||||
}
|
|
||||||
this.InvokeAsync("DeleteDistributionListMember", new object[] {
|
|
||||||
itemId,
|
|
||||||
distributionListName,
|
|
||||||
memberId}, this.DeleteDistributionListMemberOperationCompleted, userState);
|
|
||||||
}
|
|
||||||
|
|
||||||
private void OnDeleteDistributionListMemberOperationCompleted(object arg) {
|
|
||||||
if ((this.DeleteDistributionListMemberCompleted != null)) {
|
|
||||||
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
|
|
||||||
this.DeleteDistributionListMemberCompleted(this, new DeleteDistributionListMemberCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <remarks/>
|
|
||||||
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetMobileDevices", RequestNamespace="http://smbsaas/websitepanel/enterpriseserver", ResponseNamespace="http://smbsaas/websitepanel/enterpriseserver", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
|
|
||||||
public ExchangeMobileDevice[] GetMobileDevices(int itemId, int accountId) {
|
|
||||||
object[] results = this.Invoke("GetMobileDevices", new object[] {
|
|
||||||
itemId,
|
|
||||||
accountId});
|
|
||||||
return ((ExchangeMobileDevice[])(results[0]));
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <remarks/>
|
|
||||||
public System.IAsyncResult BeginGetMobileDevices(int itemId, int accountId, System.AsyncCallback callback, object asyncState) {
|
|
||||||
return this.BeginInvoke("GetMobileDevices", new object[] {
|
|
||||||
itemId,
|
|
||||||
accountId}, callback, asyncState);
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <remarks/>
|
|
||||||
public ExchangeMobileDevice[] EndGetMobileDevices(System.IAsyncResult asyncResult) {
|
|
||||||
object[] results = this.EndInvoke(asyncResult);
|
|
||||||
return ((ExchangeMobileDevice[])(results[0]));
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <remarks/>
|
|
||||||
public void GetMobileDevicesAsync(int itemId, int accountId) {
|
|
||||||
this.GetMobileDevicesAsync(itemId, accountId, null);
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <remarks/>
|
|
||||||
public void GetMobileDevicesAsync(int itemId, int accountId, object userState) {
|
|
||||||
if ((this.GetMobileDevicesOperationCompleted == null)) {
|
|
||||||
this.GetMobileDevicesOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetMobileDevicesOperationCompleted);
|
|
||||||
}
|
|
||||||
this.InvokeAsync("GetMobileDevices", new object[] {
|
|
||||||
itemId,
|
|
||||||
accountId}, this.GetMobileDevicesOperationCompleted, userState);
|
|
||||||
}
|
|
||||||
|
|
||||||
private void OnGetMobileDevicesOperationCompleted(object arg) {
|
|
||||||
if ((this.GetMobileDevicesCompleted != null)) {
|
|
||||||
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
|
|
||||||
this.GetMobileDevicesCompleted(this, new GetMobileDevicesCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <remarks/>
|
/// <remarks/>
|
||||||
public new void CancelAsync(object userState) {
|
public new void CancelAsync(object userState) {
|
||||||
base.CancelAsync(userState);
|
base.CancelAsync(userState);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
|
||||||
|
public delegate void DeleteDistributionListMemberCompletedEventHandler(object sender, DeleteDistributionListMemberCompletedEventArgs e);
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
|
||||||
|
[System.Diagnostics.DebuggerStepThroughAttribute()]
|
||||||
|
[System.ComponentModel.DesignerCategoryAttribute("code")]
|
||||||
|
public partial class DeleteDistributionListMemberCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
|
||||||
|
|
||||||
|
private object[] results;
|
||||||
|
|
||||||
|
internal DeleteDistributionListMemberCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
|
||||||
|
base(exception, cancelled, userState) {
|
||||||
|
this.results = results;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public int Result {
|
||||||
|
get {
|
||||||
|
this.RaiseExceptionIfNecessary();
|
||||||
|
return ((int)(this.results[0]));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
|
||||||
|
public delegate void GetMobileDevicesCompletedEventHandler(object sender, GetMobileDevicesCompletedEventArgs e);
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
|
||||||
|
[System.Diagnostics.DebuggerStepThroughAttribute()]
|
||||||
|
[System.ComponentModel.DesignerCategoryAttribute("code")]
|
||||||
|
public partial class GetMobileDevicesCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
|
||||||
|
|
||||||
|
private object[] results;
|
||||||
|
|
||||||
|
internal GetMobileDevicesCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
|
||||||
|
base(exception, cancelled, userState) {
|
||||||
|
this.results = results;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public ExchangeMobileDevice[] Result {
|
||||||
|
get {
|
||||||
|
this.RaiseExceptionIfNecessary();
|
||||||
|
return ((ExchangeMobileDevice[])(this.results[0]));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <remarks/>
|
/// <remarks/>
|
||||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
|
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
|
||||||
public delegate void GetMobileDeviceCompletedEventHandler(object sender, GetMobileDeviceCompletedEventArgs e);
|
public delegate void GetMobileDeviceCompletedEventHandler(object sender, GetMobileDeviceCompletedEventArgs e);
|
||||||
|
@ -7697,6 +7850,58 @@ namespace WebsitePanel.EnterpriseServer {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
|
||||||
|
public delegate void ExportMailBoxCompletedEventHandler(object sender, ExportMailBoxCompletedEventArgs e);
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
|
||||||
|
[System.Diagnostics.DebuggerStepThroughAttribute()]
|
||||||
|
[System.ComponentModel.DesignerCategoryAttribute("code")]
|
||||||
|
public partial class ExportMailBoxCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
|
||||||
|
|
||||||
|
private object[] results;
|
||||||
|
|
||||||
|
internal ExportMailBoxCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
|
||||||
|
base(exception, cancelled, userState) {
|
||||||
|
this.results = results;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public int Result {
|
||||||
|
get {
|
||||||
|
this.RaiseExceptionIfNecessary();
|
||||||
|
return ((int)(this.results[0]));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
|
||||||
|
public delegate void SetDeletedMailboxCompletedEventHandler(object sender, SetDeletedMailboxCompletedEventArgs e);
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
|
||||||
|
[System.Diagnostics.DebuggerStepThroughAttribute()]
|
||||||
|
[System.ComponentModel.DesignerCategoryAttribute("code")]
|
||||||
|
public partial class SetDeletedMailboxCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
|
||||||
|
|
||||||
|
private object[] results;
|
||||||
|
|
||||||
|
internal SetDeletedMailboxCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
|
||||||
|
base(exception, cancelled, userState) {
|
||||||
|
this.results = results;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public int Result {
|
||||||
|
get {
|
||||||
|
this.RaiseExceptionIfNecessary();
|
||||||
|
return ((int)(this.results[0]));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <remarks/>
|
/// <remarks/>
|
||||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
|
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
|
||||||
public delegate void CreateContactCompletedEventHandler(object sender, CreateContactCompletedEventArgs e);
|
public delegate void CreateContactCompletedEventHandler(object sender, CreateContactCompletedEventArgs e);
|
||||||
|
@ -8216,56 +8421,4 @@ namespace WebsitePanel.EnterpriseServer {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <remarks/>
|
|
||||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
|
|
||||||
public delegate void DeleteDistributionListMemberCompletedEventHandler(object sender, DeleteDistributionListMemberCompletedEventArgs e);
|
|
||||||
|
|
||||||
/// <remarks/>
|
|
||||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
|
|
||||||
[System.Diagnostics.DebuggerStepThroughAttribute()]
|
|
||||||
[System.ComponentModel.DesignerCategoryAttribute("code")]
|
|
||||||
public partial class DeleteDistributionListMemberCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
|
|
||||||
|
|
||||||
private object[] results;
|
|
||||||
|
|
||||||
internal DeleteDistributionListMemberCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
|
|
||||||
base(exception, cancelled, userState) {
|
|
||||||
this.results = results;
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <remarks/>
|
|
||||||
public int Result {
|
|
||||||
get {
|
|
||||||
this.RaiseExceptionIfNecessary();
|
|
||||||
return ((int)(this.results[0]));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <remarks/>
|
|
||||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
|
|
||||||
public delegate void GetMobileDevicesCompletedEventHandler(object sender, GetMobileDevicesCompletedEventArgs e);
|
|
||||||
|
|
||||||
/// <remarks/>
|
|
||||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
|
|
||||||
[System.Diagnostics.DebuggerStepThroughAttribute()]
|
|
||||||
[System.ComponentModel.DesignerCategoryAttribute("code")]
|
|
||||||
public partial class GetMobileDevicesCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
|
|
||||||
|
|
||||||
private object[] results;
|
|
||||||
|
|
||||||
internal GetMobileDevicesCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
|
|
||||||
base(exception, cancelled, userState) {
|
|
||||||
this.results = results;
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <remarks/>
|
|
||||||
public ExchangeMobileDevice[] Result {
|
|
||||||
get {
|
|
||||||
this.RaiseExceptionIfNecessary();
|
|
||||||
return ((ExchangeMobileDevice[])(this.results[0]));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -22,8 +22,8 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
|
||||||
using WebsitePanel.Providers.HostedSolution;
|
using WebsitePanel.Providers.HostedSolution;
|
||||||
using WebsitePanel.EnterpriseServer.Base.HostedSolution;
|
using WebsitePanel.EnterpriseServer.Base.HostedSolution;
|
||||||
using WebsitePanel.Providers.ResultObjects;
|
using WebsitePanel.Providers.ResultObjects;
|
||||||
using WebsitePanel.Providers.Common;
|
|
||||||
using WebsitePanel.Providers;
|
using WebsitePanel.Providers;
|
||||||
|
using WebsitePanel.Providers.Common;
|
||||||
|
|
||||||
|
|
||||||
/// <remarks/>
|
/// <remarks/>
|
||||||
|
@ -78,6 +78,8 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
|
||||||
|
|
||||||
private System.Threading.SendOrPostCallback ImportUserOperationCompleted;
|
private System.Threading.SendOrPostCallback ImportUserOperationCompleted;
|
||||||
|
|
||||||
|
private System.Threading.SendOrPostCallback GetOrganizationDeletedUsersPagedOperationCompleted;
|
||||||
|
|
||||||
private System.Threading.SendOrPostCallback GetOrganizationUsersPagedOperationCompleted;
|
private System.Threading.SendOrPostCallback GetOrganizationUsersPagedOperationCompleted;
|
||||||
|
|
||||||
private System.Threading.SendOrPostCallback GetUserGeneralSettingsOperationCompleted;
|
private System.Threading.SendOrPostCallback GetUserGeneralSettingsOperationCompleted;
|
||||||
|
@ -90,6 +92,10 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
|
||||||
|
|
||||||
private System.Threading.SendOrPostCallback SearchAccountsOperationCompleted;
|
private System.Threading.SendOrPostCallback SearchAccountsOperationCompleted;
|
||||||
|
|
||||||
|
private System.Threading.SendOrPostCallback SetDeletedUserOperationCompleted;
|
||||||
|
|
||||||
|
private System.Threading.SendOrPostCallback GetArchiveFileBinaryChunkOperationCompleted;
|
||||||
|
|
||||||
private System.Threading.SendOrPostCallback DeleteUserOperationCompleted;
|
private System.Threading.SendOrPostCallback DeleteUserOperationCompleted;
|
||||||
|
|
||||||
private System.Threading.SendOrPostCallback GetPasswordPolicyOperationCompleted;
|
private System.Threading.SendOrPostCallback GetPasswordPolicyOperationCompleted;
|
||||||
|
@ -201,6 +207,9 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
|
||||||
/// <remarks/>
|
/// <remarks/>
|
||||||
public event ImportUserCompletedEventHandler ImportUserCompleted;
|
public event ImportUserCompletedEventHandler ImportUserCompleted;
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public event GetOrganizationDeletedUsersPagedCompletedEventHandler GetOrganizationDeletedUsersPagedCompleted;
|
||||||
|
|
||||||
/// <remarks/>
|
/// <remarks/>
|
||||||
public event GetOrganizationUsersPagedCompletedEventHandler GetOrganizationUsersPagedCompleted;
|
public event GetOrganizationUsersPagedCompletedEventHandler GetOrganizationUsersPagedCompleted;
|
||||||
|
|
||||||
|
@ -219,6 +228,12 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
|
||||||
/// <remarks/>
|
/// <remarks/>
|
||||||
public event SearchAccountsCompletedEventHandler SearchAccountsCompleted;
|
public event SearchAccountsCompletedEventHandler SearchAccountsCompleted;
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public event SetDeletedUserCompletedEventHandler SetDeletedUserCompleted;
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public event GetArchiveFileBinaryChunkCompletedEventHandler GetArchiveFileBinaryChunkCompleted;
|
||||||
|
|
||||||
/// <remarks/>
|
/// <remarks/>
|
||||||
public event DeleteUserCompletedEventHandler DeleteUserCompleted;
|
public event DeleteUserCompletedEventHandler DeleteUserCompleted;
|
||||||
|
|
||||||
|
@ -1299,6 +1314,62 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetOrganizationDeletedUsersPaged", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
|
||||||
|
public OrganizationDeletedUsersPaged GetOrganizationDeletedUsersPaged(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) {
|
||||||
|
object[] results = this.Invoke("GetOrganizationDeletedUsersPaged", new object[] {
|
||||||
|
itemId,
|
||||||
|
filterColumn,
|
||||||
|
filterValue,
|
||||||
|
sortColumn,
|
||||||
|
startRow,
|
||||||
|
maximumRows});
|
||||||
|
return ((OrganizationDeletedUsersPaged)(results[0]));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public System.IAsyncResult BeginGetOrganizationDeletedUsersPaged(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, System.AsyncCallback callback, object asyncState) {
|
||||||
|
return this.BeginInvoke("GetOrganizationDeletedUsersPaged", new object[] {
|
||||||
|
itemId,
|
||||||
|
filterColumn,
|
||||||
|
filterValue,
|
||||||
|
sortColumn,
|
||||||
|
startRow,
|
||||||
|
maximumRows}, callback, asyncState);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public OrganizationDeletedUsersPaged EndGetOrganizationDeletedUsersPaged(System.IAsyncResult asyncResult) {
|
||||||
|
object[] results = this.EndInvoke(asyncResult);
|
||||||
|
return ((OrganizationDeletedUsersPaged)(results[0]));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public void GetOrganizationDeletedUsersPagedAsync(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) {
|
||||||
|
this.GetOrganizationDeletedUsersPagedAsync(itemId, filterColumn, filterValue, sortColumn, startRow, maximumRows, null);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public void GetOrganizationDeletedUsersPagedAsync(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows, object userState) {
|
||||||
|
if ((this.GetOrganizationDeletedUsersPagedOperationCompleted == null)) {
|
||||||
|
this.GetOrganizationDeletedUsersPagedOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetOrganizationDeletedUsersPagedOperationCompleted);
|
||||||
|
}
|
||||||
|
this.InvokeAsync("GetOrganizationDeletedUsersPaged", new object[] {
|
||||||
|
itemId,
|
||||||
|
filterColumn,
|
||||||
|
filterValue,
|
||||||
|
sortColumn,
|
||||||
|
startRow,
|
||||||
|
maximumRows}, this.GetOrganizationDeletedUsersPagedOperationCompleted, userState);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnGetOrganizationDeletedUsersPagedOperationCompleted(object arg) {
|
||||||
|
if ((this.GetOrganizationDeletedUsersPagedCompleted != null)) {
|
||||||
|
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
|
||||||
|
this.GetOrganizationDeletedUsersPagedCompleted(this, new GetOrganizationDeletedUsersPagedCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <remarks/>
|
/// <remarks/>
|
||||||
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetOrganizationUsersPaged", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
|
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetOrganizationUsersPaged", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
|
||||||
public OrganizationUsersPaged GetOrganizationUsersPaged(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) {
|
public OrganizationUsersPaged GetOrganizationUsersPaged(int itemId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) {
|
||||||
|
@ -1807,6 +1878,104 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/SetDeletedUser", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
|
||||||
|
public int SetDeletedUser(int itemId, int accountId, bool enableForceArchive) {
|
||||||
|
object[] results = this.Invoke("SetDeletedUser", new object[] {
|
||||||
|
itemId,
|
||||||
|
accountId,
|
||||||
|
enableForceArchive});
|
||||||
|
return ((int)(results[0]));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public System.IAsyncResult BeginSetDeletedUser(int itemId, int accountId, bool enableForceArchive, System.AsyncCallback callback, object asyncState) {
|
||||||
|
return this.BeginInvoke("SetDeletedUser", new object[] {
|
||||||
|
itemId,
|
||||||
|
accountId,
|
||||||
|
enableForceArchive}, callback, asyncState);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public int EndSetDeletedUser(System.IAsyncResult asyncResult) {
|
||||||
|
object[] results = this.EndInvoke(asyncResult);
|
||||||
|
return ((int)(results[0]));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public void SetDeletedUserAsync(int itemId, int accountId, bool enableForceArchive) {
|
||||||
|
this.SetDeletedUserAsync(itemId, accountId, enableForceArchive, null);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public void SetDeletedUserAsync(int itemId, int accountId, bool enableForceArchive, object userState) {
|
||||||
|
if ((this.SetDeletedUserOperationCompleted == null)) {
|
||||||
|
this.SetDeletedUserOperationCompleted = new System.Threading.SendOrPostCallback(this.OnSetDeletedUserOperationCompleted);
|
||||||
|
}
|
||||||
|
this.InvokeAsync("SetDeletedUser", new object[] {
|
||||||
|
itemId,
|
||||||
|
accountId,
|
||||||
|
enableForceArchive}, this.SetDeletedUserOperationCompleted, userState);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnSetDeletedUserOperationCompleted(object arg) {
|
||||||
|
if ((this.SetDeletedUserCompleted != null)) {
|
||||||
|
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
|
||||||
|
this.SetDeletedUserCompleted(this, new SetDeletedUserCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/GetArchiveFileBinaryChunk", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
|
||||||
|
[return: System.Xml.Serialization.XmlElementAttribute(DataType="base64Binary")]
|
||||||
|
public byte[] GetArchiveFileBinaryChunk(int packageId, string path, int offset, int length) {
|
||||||
|
object[] results = this.Invoke("GetArchiveFileBinaryChunk", new object[] {
|
||||||
|
packageId,
|
||||||
|
path,
|
||||||
|
offset,
|
||||||
|
length});
|
||||||
|
return ((byte[])(results[0]));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public System.IAsyncResult BeginGetArchiveFileBinaryChunk(int packageId, string path, int offset, int length, System.AsyncCallback callback, object asyncState) {
|
||||||
|
return this.BeginInvoke("GetArchiveFileBinaryChunk", new object[] {
|
||||||
|
packageId,
|
||||||
|
path,
|
||||||
|
offset,
|
||||||
|
length}, callback, asyncState);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public byte[] EndGetArchiveFileBinaryChunk(System.IAsyncResult asyncResult) {
|
||||||
|
object[] results = this.EndInvoke(asyncResult);
|
||||||
|
return ((byte[])(results[0]));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public void GetArchiveFileBinaryChunkAsync(int packageId, string path, int offset, int length) {
|
||||||
|
this.GetArchiveFileBinaryChunkAsync(packageId, path, offset, length, null);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public void GetArchiveFileBinaryChunkAsync(int packageId, string path, int offset, int length, object userState) {
|
||||||
|
if ((this.GetArchiveFileBinaryChunkOperationCompleted == null)) {
|
||||||
|
this.GetArchiveFileBinaryChunkOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetArchiveFileBinaryChunkOperationCompleted);
|
||||||
|
}
|
||||||
|
this.InvokeAsync("GetArchiveFileBinaryChunk", new object[] {
|
||||||
|
packageId,
|
||||||
|
path,
|
||||||
|
offset,
|
||||||
|
length}, this.GetArchiveFileBinaryChunkOperationCompleted, userState);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnGetArchiveFileBinaryChunkOperationCompleted(object arg) {
|
||||||
|
if ((this.GetArchiveFileBinaryChunkCompleted != null)) {
|
||||||
|
System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
|
||||||
|
this.GetArchiveFileBinaryChunkCompleted(this, new GetArchiveFileBinaryChunkCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <remarks/>
|
/// <remarks/>
|
||||||
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/DeleteUser", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
|
[System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/DeleteUser", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
|
||||||
public int DeleteUser(int itemId, int accountId) {
|
public int DeleteUser(int itemId, int accountId) {
|
||||||
|
@ -3255,6 +3424,32 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
|
||||||
|
public delegate void GetOrganizationDeletedUsersPagedCompletedEventHandler(object sender, GetOrganizationDeletedUsersPagedCompletedEventArgs e);
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
|
||||||
|
[System.Diagnostics.DebuggerStepThroughAttribute()]
|
||||||
|
[System.ComponentModel.DesignerCategoryAttribute("code")]
|
||||||
|
public partial class GetOrganizationDeletedUsersPagedCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
|
||||||
|
|
||||||
|
private object[] results;
|
||||||
|
|
||||||
|
internal GetOrganizationDeletedUsersPagedCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
|
||||||
|
base(exception, cancelled, userState) {
|
||||||
|
this.results = results;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public OrganizationDeletedUsersPaged Result {
|
||||||
|
get {
|
||||||
|
this.RaiseExceptionIfNecessary();
|
||||||
|
return ((OrganizationDeletedUsersPaged)(this.results[0]));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <remarks/>
|
/// <remarks/>
|
||||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
|
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
|
||||||
public delegate void GetOrganizationUsersPagedCompletedEventHandler(object sender, GetOrganizationUsersPagedCompletedEventArgs e);
|
public delegate void GetOrganizationUsersPagedCompletedEventHandler(object sender, GetOrganizationUsersPagedCompletedEventArgs e);
|
||||||
|
@ -3411,6 +3606,58 @@ namespace WebsitePanel.EnterpriseServer.HostedSolution {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
|
||||||
|
public delegate void SetDeletedUserCompletedEventHandler(object sender, SetDeletedUserCompletedEventArgs e);
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
|
||||||
|
[System.Diagnostics.DebuggerStepThroughAttribute()]
|
||||||
|
[System.ComponentModel.DesignerCategoryAttribute("code")]
|
||||||
|
public partial class SetDeletedUserCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
|
||||||
|
|
||||||
|
private object[] results;
|
||||||
|
|
||||||
|
internal SetDeletedUserCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
|
||||||
|
base(exception, cancelled, userState) {
|
||||||
|
this.results = results;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public int Result {
|
||||||
|
get {
|
||||||
|
this.RaiseExceptionIfNecessary();
|
||||||
|
return ((int)(this.results[0]));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
|
||||||
|
public delegate void GetArchiveFileBinaryChunkCompletedEventHandler(object sender, GetArchiveFileBinaryChunkCompletedEventArgs e);
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
|
||||||
|
[System.Diagnostics.DebuggerStepThroughAttribute()]
|
||||||
|
[System.ComponentModel.DesignerCategoryAttribute("code")]
|
||||||
|
public partial class GetArchiveFileBinaryChunkCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
|
||||||
|
|
||||||
|
private object[] results;
|
||||||
|
|
||||||
|
internal GetArchiveFileBinaryChunkCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) :
|
||||||
|
base(exception, cancelled, userState) {
|
||||||
|
this.results = results;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <remarks/>
|
||||||
|
public byte[] Result {
|
||||||
|
get {
|
||||||
|
this.RaiseExceptionIfNecessary();
|
||||||
|
return ((byte[])(this.results[0]));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <remarks/>
|
/// <remarks/>
|
||||||
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
|
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.3038")]
|
||||||
public delegate void DeleteUserCompletedEventHandler(object sender, DeleteUserCompletedEventArgs e);
|
public delegate void DeleteUserCompletedEventHandler(object sender, DeleteUserCompletedEventArgs e);
|
||||||
|
|
|
@ -2073,7 +2073,8 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
return SqlHelper.ExecuteDataset(ConnectionString, CommandType.StoredProcedure,
|
return SqlHelper.ExecuteDataset(ConnectionString, CommandType.StoredProcedure,
|
||||||
ObjectQualifier + "GetSchedules",
|
ObjectQualifier + "GetSchedules",
|
||||||
new SqlParameter("@actorId", actorId),
|
new SqlParameter("@actorId", actorId),
|
||||||
new SqlParameter("@packageId", packageId));
|
new SqlParameter("@packageId", packageId),
|
||||||
|
new SqlParameter("@recursive", true));
|
||||||
}
|
}
|
||||||
|
|
||||||
public static DataSet GetSchedulesPaged(int actorId, int packageId, bool recursive,
|
public static DataSet GetSchedulesPaged(int actorId, int packageId, bool recursive,
|
||||||
|
@ -2367,7 +2368,6 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
|
|
||||||
#region Exchange Server
|
#region Exchange Server
|
||||||
|
|
||||||
|
|
||||||
public static int AddExchangeAccount(int itemId, int accountType, string accountName,
|
public static int AddExchangeAccount(int itemId, int accountType, string accountName,
|
||||||
string displayName, string primaryEmailAddress, bool mailEnabledPublicFolder,
|
string displayName, string primaryEmailAddress, bool mailEnabledPublicFolder,
|
||||||
string mailboxManagerActions, string samAccountName, string accountPassword, int mailboxPlanId, string subscriberNumber)
|
string mailboxManagerActions, string samAccountName, string accountPassword, int mailboxPlanId, string subscriberNumber)
|
||||||
|
@ -2396,7 +2396,6 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
return Convert.ToInt32(outParam.Value);
|
return Convert.ToInt32(outParam.Value);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public static void AddExchangeAccountEmailAddress(int accountId, string emailAddress)
|
public static void AddExchangeAccountEmailAddress(int accountId, string emailAddress)
|
||||||
{
|
{
|
||||||
SqlHelper.ExecuteNonQuery(
|
SqlHelper.ExecuteNonQuery(
|
||||||
|
@ -2814,7 +2813,7 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
bool isDefault, int issueWarningPct, int keepDeletedItemsDays, int mailboxSizeMB, int maxReceiveMessageSizeKB, int maxRecipients,
|
bool isDefault, int issueWarningPct, int keepDeletedItemsDays, int mailboxSizeMB, int maxReceiveMessageSizeKB, int maxRecipients,
|
||||||
int maxSendMessageSizeKB, int prohibitSendPct, int prohibitSendReceivePct, bool hideFromAddressBook, int mailboxPlanType,
|
int maxSendMessageSizeKB, int prohibitSendPct, int prohibitSendReceivePct, bool hideFromAddressBook, int mailboxPlanType,
|
||||||
bool enabledLitigationHold, long recoverabelItemsSpace, long recoverabelItemsWarning, string litigationHoldUrl, string litigationHoldMsg,
|
bool enabledLitigationHold, long recoverabelItemsSpace, long recoverabelItemsWarning, string litigationHoldUrl, string litigationHoldMsg,
|
||||||
bool archiving, bool EnableArchiving, int ArchiveSizeMB, int ArchiveWarningPct)
|
bool archiving, bool EnableArchiving, int ArchiveSizeMB, int ArchiveWarningPct, bool enableForceArchiveDeletion)
|
||||||
{
|
{
|
||||||
SqlParameter outParam = new SqlParameter("@MailboxPlanId", SqlDbType.Int);
|
SqlParameter outParam = new SqlParameter("@MailboxPlanId", SqlDbType.Int);
|
||||||
outParam.Direction = ParameterDirection.Output;
|
outParam.Direction = ParameterDirection.Output;
|
||||||
|
@ -2850,7 +2849,8 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
new SqlParameter("@Archiving", archiving),
|
new SqlParameter("@Archiving", archiving),
|
||||||
new SqlParameter("@EnableArchiving", EnableArchiving),
|
new SqlParameter("@EnableArchiving", EnableArchiving),
|
||||||
new SqlParameter("@ArchiveSizeMB", ArchiveSizeMB),
|
new SqlParameter("@ArchiveSizeMB", ArchiveSizeMB),
|
||||||
new SqlParameter("@ArchiveWarningPct", ArchiveWarningPct)
|
new SqlParameter("@ArchiveWarningPct", ArchiveWarningPct),
|
||||||
|
new SqlParameter("@EnableForceArchiveDeletion", enableForceArchiveDeletion)
|
||||||
);
|
);
|
||||||
|
|
||||||
return Convert.ToInt32(outParam.Value);
|
return Convert.ToInt32(outParam.Value);
|
||||||
|
@ -2861,8 +2861,8 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
public static void UpdateExchangeMailboxPlan(int mailboxPlanID, string mailboxPlan, bool enableActiveSync, bool enableIMAP, bool enableMAPI, bool enableOWA, bool enablePOP,
|
public static void UpdateExchangeMailboxPlan(int mailboxPlanID, string mailboxPlan, bool enableActiveSync, bool enableIMAP, bool enableMAPI, bool enableOWA, bool enablePOP,
|
||||||
bool isDefault, int issueWarningPct, int keepDeletedItemsDays, int mailboxSizeMB, int maxReceiveMessageSizeKB, int maxRecipients,
|
bool isDefault, int issueWarningPct, int keepDeletedItemsDays, int mailboxSizeMB, int maxReceiveMessageSizeKB, int maxRecipients,
|
||||||
int maxSendMessageSizeKB, int prohibitSendPct, int prohibitSendReceivePct, bool hideFromAddressBook, int mailboxPlanType,
|
int maxSendMessageSizeKB, int prohibitSendPct, int prohibitSendReceivePct, bool hideFromAddressBook, int mailboxPlanType,
|
||||||
bool enabledLitigationHold, long recoverabelItemsSpace, long recoverabelItemsWarning, string litigationHoldUrl, string litigationHoldMsg,
|
bool enabledLitigationHold, long recoverabelItemsSpace, long recoverabelItemsWarning, string litigationHoldUrl, string litigationHoldMsg,
|
||||||
bool Archiving, bool EnableArchiving, int ArchiveSizeMB, int ArchiveWarningPct)
|
bool Archiving, bool EnableArchiving, int ArchiveSizeMB, int ArchiveWarningPct, bool enableForceArchiveDeletion)
|
||||||
{
|
{
|
||||||
SqlHelper.ExecuteNonQuery(
|
SqlHelper.ExecuteNonQuery(
|
||||||
ConnectionString,
|
ConnectionString,
|
||||||
|
@ -2894,7 +2894,8 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
new SqlParameter("@Archiving", Archiving),
|
new SqlParameter("@Archiving", Archiving),
|
||||||
new SqlParameter("@EnableArchiving", EnableArchiving),
|
new SqlParameter("@EnableArchiving", EnableArchiving),
|
||||||
new SqlParameter("@ArchiveSizeMB", ArchiveSizeMB),
|
new SqlParameter("@ArchiveSizeMB", ArchiveSizeMB),
|
||||||
new SqlParameter("@ArchiveWarningPct", ArchiveWarningPct)
|
new SqlParameter("@ArchiveWarningPct", ArchiveWarningPct),
|
||||||
|
new SqlParameter("@EnableForceArchiveDeletion", enableForceArchiveDeletion)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3170,6 +3171,45 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
|
|
||||||
#region Organizations
|
#region Organizations
|
||||||
|
|
||||||
|
public static int AddOrganizationDeletedUser(int accountId, int originAT, string storagePath, string folderName, string fileName, DateTime expirationDate)
|
||||||
|
{
|
||||||
|
SqlParameter outParam = new SqlParameter("@ID", SqlDbType.Int);
|
||||||
|
outParam.Direction = ParameterDirection.Output;
|
||||||
|
|
||||||
|
SqlHelper.ExecuteNonQuery(
|
||||||
|
ConnectionString,
|
||||||
|
CommandType.StoredProcedure,
|
||||||
|
"AddOrganizationDeletedUser",
|
||||||
|
outParam,
|
||||||
|
new SqlParameter("@AccountID", accountId),
|
||||||
|
new SqlParameter("@OriginAT", originAT),
|
||||||
|
new SqlParameter("@StoragePath", storagePath),
|
||||||
|
new SqlParameter("@FolderName", folderName),
|
||||||
|
new SqlParameter("@FileName", fileName),
|
||||||
|
new SqlParameter("@ExpirationDate", expirationDate)
|
||||||
|
);
|
||||||
|
|
||||||
|
return Convert.ToInt32(outParam.Value);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void DeleteOrganizationDeletedUser(int id)
|
||||||
|
{
|
||||||
|
SqlHelper.ExecuteNonQuery(ConnectionString,
|
||||||
|
CommandType.StoredProcedure,
|
||||||
|
"DeleteOrganizationDeletedUser",
|
||||||
|
new SqlParameter("@ID", id));
|
||||||
|
}
|
||||||
|
|
||||||
|
public static IDataReader GetOrganizationDeletedUser(int accountId)
|
||||||
|
{
|
||||||
|
return SqlHelper.ExecuteReader(
|
||||||
|
ConnectionString,
|
||||||
|
CommandType.StoredProcedure,
|
||||||
|
"GetOrganizationDeletedUser",
|
||||||
|
new SqlParameter("@AccountID", accountId)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
public static IDataReader GetAdditionalGroups(int userId)
|
public static IDataReader GetAdditionalGroups(int userId)
|
||||||
{
|
{
|
||||||
return SqlHelper.ExecuteReader(
|
return SqlHelper.ExecuteReader(
|
||||||
|
|
|
@ -1967,6 +1967,86 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static int ExportMailBox(int itemId, int accountId, string path)
|
||||||
|
{
|
||||||
|
// check account
|
||||||
|
int accountCheck = SecurityContext.CheckAccount(DemandAccount.NotDemo | DemandAccount.IsActive);
|
||||||
|
|
||||||
|
if (accountCheck < 0)
|
||||||
|
{
|
||||||
|
return accountCheck;
|
||||||
|
}
|
||||||
|
|
||||||
|
// place log record
|
||||||
|
TaskManager.StartTask("EXCHANGE", "EXPORT_MAILBOX", itemId);
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
// load organization
|
||||||
|
Organization org = GetOrganization(itemId);
|
||||||
|
if (org == null)
|
||||||
|
return -1;
|
||||||
|
|
||||||
|
// load account
|
||||||
|
ExchangeAccount account = GetAccount(itemId, accountId);
|
||||||
|
|
||||||
|
// export mailbox
|
||||||
|
int serviceExchangeId = GetExchangeServiceID(org.PackageId);
|
||||||
|
ExchangeServer exchange = GetExchangeServer(serviceExchangeId, org.ServiceId);
|
||||||
|
exchange.ExportMailBox(org.OrganizationId, account.UserPrincipalName, path);
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
throw TaskManager.WriteError(ex);
|
||||||
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
TaskManager.CompleteTask();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static int SetDeletedMailbox(int itemId, int accountId)
|
||||||
|
{
|
||||||
|
// check account
|
||||||
|
int accountCheck = SecurityContext.CheckAccount(DemandAccount.NotDemo | DemandAccount.IsActive);
|
||||||
|
if (accountCheck < 0) return accountCheck;
|
||||||
|
|
||||||
|
// place log record
|
||||||
|
TaskManager.StartTask("EXCHANGE", "SET_DELETED_MAILBOX", itemId);
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
// load organization
|
||||||
|
Organization org = GetOrganization(itemId);
|
||||||
|
if (org == null)
|
||||||
|
return -1;
|
||||||
|
|
||||||
|
// load account
|
||||||
|
ExchangeAccount account = GetAccount(itemId, accountId);
|
||||||
|
|
||||||
|
if (BlackBerryController.CheckBlackBerryUserExists(accountId))
|
||||||
|
{
|
||||||
|
BlackBerryController.DeleteBlackBerryUser(itemId, accountId);
|
||||||
|
}
|
||||||
|
|
||||||
|
// delete mailbox
|
||||||
|
int serviceExchangeId = GetExchangeServiceID(org.PackageId);
|
||||||
|
ExchangeServer exchange = GetExchangeServer(serviceExchangeId, org.ServiceId);
|
||||||
|
exchange.DisableMailbox(account.UserPrincipalName);
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
throw TaskManager.WriteError(ex);
|
||||||
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
TaskManager.CompleteTask();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public static int DeleteMailbox(int itemId, int accountId)
|
public static int DeleteMailbox(int itemId, int accountId)
|
||||||
{
|
{
|
||||||
|
@ -2998,7 +3078,7 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
mailboxPlan.MaxSendMessageSizeKB, mailboxPlan.ProhibitSendPct, mailboxPlan.ProhibitSendReceivePct, mailboxPlan.HideFromAddressBook, mailboxPlan.MailboxPlanType,
|
mailboxPlan.MaxSendMessageSizeKB, mailboxPlan.ProhibitSendPct, mailboxPlan.ProhibitSendReceivePct, mailboxPlan.HideFromAddressBook, mailboxPlan.MailboxPlanType,
|
||||||
mailboxPlan.AllowLitigationHold, mailboxPlan.RecoverableItemsSpace, mailboxPlan.RecoverableItemsWarningPct,
|
mailboxPlan.AllowLitigationHold, mailboxPlan.RecoverableItemsSpace, mailboxPlan.RecoverableItemsWarningPct,
|
||||||
mailboxPlan.LitigationHoldUrl, mailboxPlan.LitigationHoldMsg, mailboxPlan.Archiving, mailboxPlan.EnableArchiving,
|
mailboxPlan.LitigationHoldUrl, mailboxPlan.LitigationHoldMsg, mailboxPlan.Archiving, mailboxPlan.EnableArchiving,
|
||||||
mailboxPlan.ArchiveSizeMB, mailboxPlan.ArchiveWarningPct);
|
mailboxPlan.ArchiveSizeMB, mailboxPlan.ArchiveWarningPct, mailboxPlan.EnableForceArchiveDeletion);
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
|
@ -3068,9 +3148,8 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
mailboxPlan.IsDefault, mailboxPlan.IssueWarningPct, mailboxPlan.KeepDeletedItemsDays, mailboxPlan.MailboxSizeMB, mailboxPlan.MaxReceiveMessageSizeKB, mailboxPlan.MaxRecipients,
|
mailboxPlan.IsDefault, mailboxPlan.IssueWarningPct, mailboxPlan.KeepDeletedItemsDays, mailboxPlan.MailboxSizeMB, mailboxPlan.MaxReceiveMessageSizeKB, mailboxPlan.MaxRecipients,
|
||||||
mailboxPlan.MaxSendMessageSizeKB, mailboxPlan.ProhibitSendPct, mailboxPlan.ProhibitSendReceivePct, mailboxPlan.HideFromAddressBook, mailboxPlan.MailboxPlanType,
|
mailboxPlan.MaxSendMessageSizeKB, mailboxPlan.ProhibitSendPct, mailboxPlan.ProhibitSendReceivePct, mailboxPlan.HideFromAddressBook, mailboxPlan.MailboxPlanType,
|
||||||
mailboxPlan.AllowLitigationHold, mailboxPlan.RecoverableItemsSpace, mailboxPlan.RecoverableItemsWarningPct,
|
mailboxPlan.AllowLitigationHold, mailboxPlan.RecoverableItemsSpace, mailboxPlan.RecoverableItemsWarningPct,
|
||||||
mailboxPlan.LitigationHoldUrl, mailboxPlan.LitigationHoldMsg,
|
mailboxPlan.LitigationHoldUrl, mailboxPlan.LitigationHoldMsg, mailboxPlan.Archiving, mailboxPlan.EnableArchiving,
|
||||||
mailboxPlan.Archiving, mailboxPlan.EnableArchiving,
|
mailboxPlan.ArchiveSizeMB, mailboxPlan.ArchiveWarningPct, mailboxPlan.EnableForceArchiveDeletion);
|
||||||
mailboxPlan.ArchiveSizeMB, mailboxPlan.ArchiveWarningPct);
|
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
|
|
|
@ -49,6 +49,8 @@ using System.Xml;
|
||||||
using System.Xml.Serialization;
|
using System.Xml.Serialization;
|
||||||
using WebsitePanel.EnterpriseServer.Base.HostedSolution;
|
using WebsitePanel.EnterpriseServer.Base.HostedSolution;
|
||||||
using WebsitePanel.Providers.OS;
|
using WebsitePanel.Providers.OS;
|
||||||
|
using System.Text.RegularExpressions;
|
||||||
|
using WebsitePanel.Server.Client;
|
||||||
|
|
||||||
namespace WebsitePanel.EnterpriseServer
|
namespace WebsitePanel.EnterpriseServer
|
||||||
{
|
{
|
||||||
|
@ -71,6 +73,21 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static bool CheckDeletedUserQuota(int orgId, out int errorCode)
|
||||||
|
{
|
||||||
|
errorCode = 0;
|
||||||
|
OrganizationStatistics stats = GetOrganizationStatistics(orgId);
|
||||||
|
|
||||||
|
|
||||||
|
if (stats.AllocatedDeletedUsers != -1 && (stats.DeletedUsers >= stats.AllocatedDeletedUsers))
|
||||||
|
{
|
||||||
|
errorCode = BusinessErrorCodes.ERROR_DELETED_USERS_RESOURCE_QUOTA_LIMIT;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
private static string EvaluateMailboxTemplate(int itemId, int accountId,
|
private static string EvaluateMailboxTemplate(int itemId, int accountId,
|
||||||
bool pmm, bool emailMode, bool signup, string template)
|
bool pmm, bool emailMode, bool signup, string template)
|
||||||
{
|
{
|
||||||
|
@ -942,6 +959,7 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
stats.CreatedUsers = tempStats.CreatedUsers;
|
stats.CreatedUsers = tempStats.CreatedUsers;
|
||||||
stats.CreatedDomains = tempStats.CreatedDomains;
|
stats.CreatedDomains = tempStats.CreatedDomains;
|
||||||
stats.CreatedGroups = tempStats.CreatedGroups;
|
stats.CreatedGroups = tempStats.CreatedGroups;
|
||||||
|
stats.DeletedUsers = tempStats.DeletedUsers;
|
||||||
|
|
||||||
PackageContext cntxTmp = PackageController.GetPackageContext(org.PackageId);
|
PackageContext cntxTmp = PackageController.GetPackageContext(org.PackageId);
|
||||||
|
|
||||||
|
@ -1090,6 +1108,7 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
// allocated quotas
|
// allocated quotas
|
||||||
PackageContext cntx = PackageController.GetPackageContext(org.PackageId);
|
PackageContext cntx = PackageController.GetPackageContext(org.PackageId);
|
||||||
stats.AllocatedUsers = cntx.Quotas[Quotas.ORGANIZATION_USERS].QuotaAllocatedValue;
|
stats.AllocatedUsers = cntx.Quotas[Quotas.ORGANIZATION_USERS].QuotaAllocatedValue;
|
||||||
|
stats.AllocatedDeletedUsers = cntx.Quotas[Quotas.ORGANIZATION_DELETED_USERS].QuotaAllocatedValue;
|
||||||
stats.AllocatedDomains = cntx.Quotas[Quotas.ORGANIZATION_DOMAINS].QuotaAllocatedValue;
|
stats.AllocatedDomains = cntx.Quotas[Quotas.ORGANIZATION_DOMAINS].QuotaAllocatedValue;
|
||||||
stats.AllocatedGroups = cntx.Quotas[Quotas.ORGANIZATION_SECURITYGROUPS].QuotaAllocatedValue;
|
stats.AllocatedGroups = cntx.Quotas[Quotas.ORGANIZATION_SECURITYGROUPS].QuotaAllocatedValue;
|
||||||
|
|
||||||
|
@ -1357,8 +1376,64 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
|
|
||||||
#region Users
|
#region Users
|
||||||
|
|
||||||
|
public static List<OrganizationDeletedUser> GetOrganizationDeletedUsers(int itemId)
|
||||||
|
{
|
||||||
|
var result = new List<OrganizationDeletedUser>();
|
||||||
|
|
||||||
|
var orgDeletedUsers = ObjectUtils.CreateListFromDataReader<OrganizationUser>(
|
||||||
|
DataProvider.GetExchangeAccounts(itemId, (int)ExchangeAccountType.DeletedUser));
|
||||||
|
|
||||||
|
foreach (var orgDeletedUser in orgDeletedUsers)
|
||||||
|
{
|
||||||
|
OrganizationDeletedUser deletedUser = GetDeletedUser(orgDeletedUser.AccountId);
|
||||||
|
|
||||||
|
if (deletedUser == null)
|
||||||
|
continue;
|
||||||
|
|
||||||
|
deletedUser.User = orgDeletedUser;
|
||||||
|
|
||||||
|
result.Add(deletedUser);
|
||||||
|
}
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static OrganizationDeletedUsersPaged GetOrganizationDeletedUsersPaged(int itemId, string filterColumn, string filterValue, string sortColumn,
|
||||||
|
int startRow, int maximumRows)
|
||||||
|
{
|
||||||
|
DataSet ds =
|
||||||
|
DataProvider.GetExchangeAccountsPaged(SecurityContext.User.UserId, itemId, ((int)ExchangeAccountType.DeletedUser).ToString(),
|
||||||
|
filterColumn, filterValue, sortColumn, startRow, maximumRows, false);
|
||||||
|
|
||||||
|
OrganizationDeletedUsersPaged result = new OrganizationDeletedUsersPaged();
|
||||||
|
result.RecordsCount = (int)ds.Tables[0].Rows[0][0];
|
||||||
|
|
||||||
|
List<OrganizationUser> Tmpaccounts = new List<OrganizationUser>();
|
||||||
|
ObjectUtils.FillCollectionFromDataView(Tmpaccounts, ds.Tables[1].DefaultView);
|
||||||
|
|
||||||
|
List<OrganizationDeletedUser> deletedUsers = new List<OrganizationDeletedUser>();
|
||||||
|
|
||||||
|
foreach (OrganizationUser user in Tmpaccounts.ToArray())
|
||||||
|
{
|
||||||
|
OrganizationDeletedUser deletedUser = GetDeletedUser(user.AccountId);
|
||||||
|
|
||||||
|
if (deletedUser == null)
|
||||||
|
continue;
|
||||||
|
|
||||||
|
OrganizationUser tmpUser = GetUserGeneralSettings(itemId, user.AccountId);
|
||||||
|
|
||||||
|
if (tmpUser != null)
|
||||||
|
{
|
||||||
|
deletedUser.User = tmpUser;
|
||||||
|
|
||||||
|
deletedUsers.Add(deletedUser);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
result.PageDeletedUsers = deletedUsers.ToArray();
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
public static OrganizationUsersPaged GetOrganizationUsersPaged(int itemId, string filterColumn, string filterValue, string sortColumn,
|
public static OrganizationUsersPaged GetOrganizationUsersPaged(int itemId, string filterColumn, string filterValue, string sortColumn,
|
||||||
int startRow, int maximumRows)
|
int startRow, int maximumRows)
|
||||||
|
@ -1752,10 +1827,256 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#region Deleted Users
|
||||||
|
|
||||||
|
public static int SetDeletedUser(int itemId, int accountId, bool enableForceArchive)
|
||||||
|
{
|
||||||
|
// check account
|
||||||
|
int accountCheck = SecurityContext.CheckAccount(DemandAccount.NotDemo | DemandAccount.IsActive);
|
||||||
|
if (accountCheck < 0) return accountCheck;
|
||||||
|
|
||||||
|
// place log record
|
||||||
|
TaskManager.StartTask("ORGANIZATION", "SET_DELETED_USER", itemId);
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
Guid crmUserId = CRMController.GetCrmUserId(accountId);
|
||||||
|
if (crmUserId != Guid.Empty)
|
||||||
|
{
|
||||||
|
return BusinessErrorCodes.CURRENT_USER_IS_CRM_USER;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (DataProvider.CheckOCSUserExists(accountId))
|
||||||
|
{
|
||||||
|
return BusinessErrorCodes.CURRENT_USER_IS_OCS_USER;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (DataProvider.CheckLyncUserExists(accountId))
|
||||||
|
{
|
||||||
|
return BusinessErrorCodes.CURRENT_USER_IS_LYNC_USER;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// load organization
|
||||||
|
Organization org = GetOrganization(itemId);
|
||||||
|
if (org == null)
|
||||||
|
return -1;
|
||||||
|
|
||||||
|
int errorCode;
|
||||||
|
if (!CheckDeletedUserQuota(org.Id, out errorCode))
|
||||||
|
return errorCode;
|
||||||
|
|
||||||
|
// load account
|
||||||
|
ExchangeAccount account = ExchangeServerController.GetAccount(itemId, accountId);
|
||||||
|
|
||||||
|
string accountName = GetAccountName(account.AccountName);
|
||||||
|
|
||||||
|
var deletedUser = new OrganizationDeletedUser
|
||||||
|
{
|
||||||
|
AccountId = account.AccountId,
|
||||||
|
OriginAT = account.AccountType,
|
||||||
|
ExpirationDate = DateTime.UtcNow.AddHours(1)
|
||||||
|
};
|
||||||
|
|
||||||
|
if (account.AccountType == ExchangeAccountType.User)
|
||||||
|
{
|
||||||
|
Organizations orgProxy = GetOrganizationProxy(org.ServiceId);
|
||||||
|
|
||||||
|
//Disable user in AD
|
||||||
|
orgProxy.DisableUser(accountName, org.OrganizationId);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (enableForceArchive)
|
||||||
|
{
|
||||||
|
var serviceId = PackageController.GetPackageServiceId(org.PackageId, ResourceGroups.HostedOrganizations);
|
||||||
|
|
||||||
|
if (serviceId != 0)
|
||||||
|
{
|
||||||
|
var settings = ServerController.GetServiceSettings(serviceId);
|
||||||
|
|
||||||
|
deletedUser.StoragePath = settings["ArchiveStoragePath"];
|
||||||
|
|
||||||
|
if (!string.IsNullOrEmpty(deletedUser.StoragePath))
|
||||||
|
{
|
||||||
|
deletedUser.FolderName = org.OrganizationId;
|
||||||
|
|
||||||
|
if (!CheckFolderExists(org.PackageId, deletedUser.StoragePath, deletedUser.FolderName))
|
||||||
|
{
|
||||||
|
CreateFolder(org.PackageId, deletedUser.StoragePath, deletedUser.FolderName);
|
||||||
|
}
|
||||||
|
|
||||||
|
QuotaValueInfo diskSpaceQuota = PackageController.GetPackageQuota(org.PackageId, Quotas.ORGANIZATION_DELETED_USERS_BACKUP_STORAGE_SPACE);
|
||||||
|
|
||||||
|
if (diskSpaceQuota.QuotaAllocatedValue != -1)
|
||||||
|
{
|
||||||
|
SetFRSMQuotaOnFolder(org.PackageId, deletedUser.StoragePath, org.OrganizationId, diskSpaceQuota, QuotaType.Hard);
|
||||||
|
}
|
||||||
|
|
||||||
|
deletedUser.FileName = string.Format("{0}.pst", account.UserPrincipalName);
|
||||||
|
|
||||||
|
ExchangeServerController.ExportMailBox(itemId, accountId,
|
||||||
|
FilesController.ConvertToUncPath(serviceId,
|
||||||
|
Path.Combine(GetDirectory(deletedUser.StoragePath), deletedUser.FolderName, deletedUser.FileName)));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//Set Deleted Mailbox
|
||||||
|
ExchangeServerController.SetDeletedMailbox(itemId, accountId);
|
||||||
|
}
|
||||||
|
|
||||||
|
AddDeletedUser(deletedUser);
|
||||||
|
|
||||||
|
account.AccountType = ExchangeAccountType.DeletedUser;
|
||||||
|
|
||||||
|
UpdateAccount(account);
|
||||||
|
|
||||||
|
var taskId = "SCHEDULE_TASK_DELETE_EXCHANGE_ACCOUNTS";
|
||||||
|
|
||||||
|
if (!CheckScheduleTaskRun(org.PackageId, taskId))
|
||||||
|
{
|
||||||
|
AddScheduleTask(org.PackageId, taskId, "Auto Delete Exchange Account");
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
throw TaskManager.WriteError(ex);
|
||||||
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
TaskManager.CompleteTask();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static byte[] GetArchiveFileBinaryChunk(int packageId, string path, int offset, int length)
|
||||||
|
{
|
||||||
|
var os = GetOS(packageId);
|
||||||
|
|
||||||
|
if (os != null && os.CheckFileServicesInstallation())
|
||||||
|
{
|
||||||
|
return os.GetFileBinaryChunk(path, offset, length);
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
private static bool CheckScheduleTaskRun(int packageId, string taskId)
|
||||||
|
{
|
||||||
|
var schedules = new List<ScheduleInfo>();
|
||||||
|
|
||||||
|
ObjectUtils.FillCollectionFromDataSet(schedules, SchedulerController.GetSchedules(packageId));
|
||||||
|
|
||||||
|
foreach(var schedule in schedules)
|
||||||
|
{
|
||||||
|
if (schedule.TaskId == taskId)
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
private static int AddScheduleTask(int packageId, string taskId, string taskName)
|
||||||
|
{
|
||||||
|
return SchedulerController.AddSchedule(new ScheduleInfo
|
||||||
|
{
|
||||||
|
PackageId = packageId,
|
||||||
|
TaskId = taskId,
|
||||||
|
ScheduleName = taskName,
|
||||||
|
ScheduleTypeId = "Daily",
|
||||||
|
FromTime = new DateTime(2000, 1, 1, 0, 0, 0),
|
||||||
|
ToTime = new DateTime(2000, 1, 1, 23, 59, 59),
|
||||||
|
Interval = 3600,
|
||||||
|
StartTime = new DateTime(2000, 01, 01, 0, 30, 0),
|
||||||
|
MaxExecutionTime = 3600,
|
||||||
|
PriorityId = "Normal",
|
||||||
|
Enabled = true,
|
||||||
|
WeekMonthDay = 1,
|
||||||
|
HistoriesNumber = 0
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
private static bool CheckFolderExists(int packageId, string path, string folderName)
|
||||||
|
{
|
||||||
|
var os = GetOS(packageId);
|
||||||
|
|
||||||
|
if (os != null && os.CheckFileServicesInstallation())
|
||||||
|
{
|
||||||
|
return os.DirectoryExists(Path.Combine(path, folderName));
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
private static void CreateFolder(int packageId, string path, string folderName)
|
||||||
|
{
|
||||||
|
var os = GetOS(packageId);
|
||||||
|
|
||||||
|
if (os != null && os.CheckFileServicesInstallation())
|
||||||
|
{
|
||||||
|
os.CreateDirectory(Path.Combine(path, folderName));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private static void RemoveArchive(int packageId, string path, string folderName, string fileName)
|
||||||
|
{
|
||||||
|
var os = GetOS(packageId);
|
||||||
|
|
||||||
|
if (os != null && os.CheckFileServicesInstallation())
|
||||||
|
{
|
||||||
|
os.DeleteFile(Path.Combine(path, folderName, fileName));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private static string GetLocationDrive(string path)
|
||||||
|
{
|
||||||
|
var drive = System.IO.Path.GetPathRoot(path);
|
||||||
|
|
||||||
|
return drive.Split(':')[0];
|
||||||
|
}
|
||||||
|
|
||||||
|
private static string GetDirectory(string path)
|
||||||
|
{
|
||||||
|
var drive = System.IO.Path.GetPathRoot(path);
|
||||||
|
|
||||||
|
return path.Replace(drive, string.Empty);
|
||||||
|
}
|
||||||
|
|
||||||
|
private static void SetFRSMQuotaOnFolder(int packageId, string path, string folderName, QuotaValueInfo quotaInfo, QuotaType quotaType)
|
||||||
|
{
|
||||||
|
var os = GetOS(packageId);
|
||||||
|
|
||||||
|
if (os != null && os.CheckFileServicesInstallation())
|
||||||
|
{
|
||||||
|
#region figure Quota Unit
|
||||||
|
|
||||||
|
// Quota Unit
|
||||||
|
string unit = string.Empty;
|
||||||
|
if (quotaInfo.QuotaDescription.ToLower().Contains("gb"))
|
||||||
|
unit = "GB";
|
||||||
|
else if (quotaInfo.QuotaDescription.ToLower().Contains("mb"))
|
||||||
|
unit = "MB";
|
||||||
|
else
|
||||||
|
unit = "KB";
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
os.SetQuotaLimitOnFolder(
|
||||||
|
Path.Combine(GetDirectory(path), folderName),
|
||||||
|
GetLocationDrive(path), quotaType,
|
||||||
|
quotaInfo.QuotaAllocatedValue.ToString() + unit,
|
||||||
|
0, String.Empty, String.Empty);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
public static int DeleteUser(int itemId, int accountId)
|
public static int DeleteUser(int itemId, int accountId)
|
||||||
{
|
{
|
||||||
// check account
|
// check account
|
||||||
|
@ -1763,7 +2084,7 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
if (accountCheck < 0) return accountCheck;
|
if (accountCheck < 0) return accountCheck;
|
||||||
|
|
||||||
// place log record
|
// place log record
|
||||||
TaskManager.StartTask("ORGANIZATION", "DELETE_USER", itemId);
|
TaskManager.StartTask("ORGANIZATION", "REMOVE_USER", itemId);
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
@ -1791,13 +2112,32 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
// load account
|
// load account
|
||||||
OrganizationUser user = GetAccount(itemId, accountId);
|
ExchangeAccount user = ExchangeServerController.GetAccount(itemId, accountId);
|
||||||
|
|
||||||
Organizations orgProxy = GetOrganizationProxy(org.ServiceId);
|
Organizations orgProxy = GetOrganizationProxy(org.ServiceId);
|
||||||
|
|
||||||
string account = GetAccountName(user.AccountName);
|
string account = GetAccountName(user.AccountName);
|
||||||
|
|
||||||
if (user.AccountType == ExchangeAccountType.User)
|
var accountType = user.AccountType;
|
||||||
|
|
||||||
|
if (accountType == ExchangeAccountType.DeletedUser)
|
||||||
|
{
|
||||||
|
var deletedUser = GetDeletedUser(user.AccountId);
|
||||||
|
|
||||||
|
if (deletedUser != null)
|
||||||
|
{
|
||||||
|
accountType = deletedUser.OriginAT;
|
||||||
|
|
||||||
|
if (!deletedUser.IsArchiveEmpty)
|
||||||
|
{
|
||||||
|
RemoveArchive(org.PackageId, deletedUser.StoragePath, deletedUser.FolderName, deletedUser.FileName);
|
||||||
|
}
|
||||||
|
|
||||||
|
RemoveDeletedUser(deletedUser.Id);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (user.AccountType == ExchangeAccountType.User )
|
||||||
{
|
{
|
||||||
//Delete user from AD
|
//Delete user from AD
|
||||||
orgProxy.DeleteUser(account, org.OrganizationId);
|
orgProxy.DeleteUser(account, org.OrganizationId);
|
||||||
|
@ -1821,6 +2161,30 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static OrganizationDeletedUser GetDeletedUser(int accountId)
|
||||||
|
{
|
||||||
|
OrganizationDeletedUser deletedUser = ObjectUtils.FillObjectFromDataReader<OrganizationDeletedUser>(
|
||||||
|
DataProvider.GetOrganizationDeletedUser(accountId));
|
||||||
|
|
||||||
|
if (deletedUser == null)
|
||||||
|
return null;
|
||||||
|
|
||||||
|
deletedUser.IsArchiveEmpty = string.IsNullOrEmpty(deletedUser.FileName);
|
||||||
|
|
||||||
|
return deletedUser;
|
||||||
|
}
|
||||||
|
|
||||||
|
private static int AddDeletedUser(OrganizationDeletedUser deletedUser)
|
||||||
|
{
|
||||||
|
return DataProvider.AddOrganizationDeletedUser(
|
||||||
|
deletedUser.AccountId, (int)deletedUser.OriginAT, deletedUser.StoragePath, deletedUser.FolderName, deletedUser.FileName, deletedUser.ExpirationDate);
|
||||||
|
}
|
||||||
|
|
||||||
|
private static void RemoveDeletedUser(int id)
|
||||||
|
{
|
||||||
|
DataProvider.DeleteOrganizationDeletedUser(id);
|
||||||
|
}
|
||||||
|
|
||||||
public static OrganizationUser GetAccount(int itemId, int userId)
|
public static OrganizationUser GetAccount(int itemId, int userId)
|
||||||
{
|
{
|
||||||
OrganizationUser account = ObjectUtils.FillObjectFromDataReader<OrganizationUser>(
|
OrganizationUser account = ObjectUtils.FillObjectFromDataReader<OrganizationUser>(
|
||||||
|
@ -3111,6 +3475,22 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
#region OS
|
||||||
|
|
||||||
|
private static WebsitePanel.Providers.OS.OperatingSystem GetOS(int packageId)
|
||||||
|
{
|
||||||
|
int sid = PackageController.GetPackageServiceId(packageId, ResourceGroups.Os);
|
||||||
|
if (sid <= 0)
|
||||||
|
return null;
|
||||||
|
|
||||||
|
var os = new WebsitePanel.Providers.OS.OperatingSystem();
|
||||||
|
ServiceProviderProxy.Init(os, sid);
|
||||||
|
|
||||||
|
return os;
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
public static DataSet GetOrganizationObjectsByDomain(int itemId, string domainName)
|
public static DataSet GetOrganizationObjectsByDomain(int itemId, string domainName)
|
||||||
{
|
{
|
||||||
return DataProvider.GetOrganizationObjectsByDomain(itemId, domainName);
|
return DataProvider.GetOrganizationObjectsByDomain(itemId, domainName);
|
||||||
|
|
|
@ -0,0 +1,64 @@
|
||||||
|
// Copyright (c) 2014, Outercurve Foundation.
|
||||||
|
// All rights reserved.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without modification,
|
||||||
|
// are permitted provided that the following conditions are met:
|
||||||
|
//
|
||||||
|
// - Redistributions of source code must retain the above copyright notice, this
|
||||||
|
// list of conditions and the following disclaimer.
|
||||||
|
//
|
||||||
|
// - Redistributions in binary form must reproduce the above copyright notice,
|
||||||
|
// this list of conditions and the following disclaimer in the documentation
|
||||||
|
// and/or other materials provided with the distribution.
|
||||||
|
//
|
||||||
|
// - Neither the name of the Outercurve Foundation nor the names of its
|
||||||
|
// contributors may be used to endorse or promote products derived from this
|
||||||
|
// software without specific prior written permission.
|
||||||
|
//
|
||||||
|
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
||||||
|
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||||
|
// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||||
|
// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
|
||||||
|
// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||||
|
// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||||
|
// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
||||||
|
// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||||
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||||
|
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
|
using System;
|
||||||
|
using System.Diagnostics;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Text;
|
||||||
|
|
||||||
|
using WebsitePanel.Providers.Exchange;
|
||||||
|
using WebsitePanel.Providers.HostedSolution;
|
||||||
|
|
||||||
|
namespace WebsitePanel.EnterpriseServer
|
||||||
|
{
|
||||||
|
public class DeleteExchangeAccountsTask : SchedulerTask
|
||||||
|
{
|
||||||
|
public override void DoWork()
|
||||||
|
{
|
||||||
|
DeletedAccounts();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void DeletedAccounts()
|
||||||
|
{
|
||||||
|
List<Organization> organizations = OrganizationController.GetOrganizations(TaskManager.TopTask.PackageId, true);
|
||||||
|
|
||||||
|
foreach (Organization organization in organizations)
|
||||||
|
{
|
||||||
|
List<OrganizationDeletedUser> deletedUsers = OrganizationController.GetOrganizationDeletedUsers(organization.Id);
|
||||||
|
|
||||||
|
foreach (OrganizationDeletedUser deletedUser in deletedUsers)
|
||||||
|
{
|
||||||
|
if (deletedUser.ExpirationDate > DateTime.UtcNow)
|
||||||
|
{
|
||||||
|
OrganizationController.DeleteUser(TaskManager.TopTask.ItemId, deletedUser.AccountId);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -141,6 +141,7 @@
|
||||||
<Compile Include="SchedulerTasks\ActivatePaidInvoicesTask.cs" />
|
<Compile Include="SchedulerTasks\ActivatePaidInvoicesTask.cs" />
|
||||||
<Compile Include="SchedulerTasks\BackupDatabaseTask.cs" />
|
<Compile Include="SchedulerTasks\BackupDatabaseTask.cs" />
|
||||||
<Compile Include="SchedulerTasks\BackupTask.cs" />
|
<Compile Include="SchedulerTasks\BackupTask.cs" />
|
||||||
|
<Compile Include="SchedulerTasks\DeleteExchangeAccountsTask.cs" />
|
||||||
<Compile Include="SchedulerTasks\CalculateExchangeDiskspaceTask.cs" />
|
<Compile Include="SchedulerTasks\CalculateExchangeDiskspaceTask.cs" />
|
||||||
<Compile Include="SchedulerTasks\CalculatePackagesBandwidthTask.cs" />
|
<Compile Include="SchedulerTasks\CalculatePackagesBandwidthTask.cs" />
|
||||||
<Compile Include="SchedulerTasks\CalculatePackagesDiskspaceTask.cs" />
|
<Compile Include="SchedulerTasks\CalculatePackagesDiskspaceTask.cs" />
|
||||||
|
|
|
@ -5,22 +5,21 @@
|
||||||
</configSections>
|
</configSections>
|
||||||
<!-- Connection strings -->
|
<!-- Connection strings -->
|
||||||
<connectionStrings>
|
<connectionStrings>
|
||||||
<!--<add name="EnterpriseServer" connectionString="Server=(local)\SQLExpress;Database=WebsitePanel;uid=sa;pwd=Password12" providerName="System.Data.SqlClient"/>-->
|
<add name="EnterpriseServer" connectionString="server=dev-sql;database=WebsitePanel;uid=WebsitePanel;pwd=sbbk40q85dc7jzj8b5kn;" providerName="System.Data.SqlClient"/>
|
||||||
<add name="EnterpriseServer" connectionString="server=IOGAN_HOME\ALEX;database=WebsitePanel3;uid=WebsitePanel3;pwd=7j3j0daqj4dqpt22x8eb;" providerName="System.Data.SqlClient" />
|
|
||||||
</connectionStrings>
|
</connectionStrings>
|
||||||
<appSettings>
|
<appSettings>
|
||||||
<!-- Encryption util settings -->
|
<!-- Encryption util settings -->
|
||||||
<add key="WebsitePanel.CryptoKey" value="31alhk2jnarmrmt5ecg3" />
|
<add key="WebsitePanel.CryptoKey" value="jj2n22t2kje035cg4l77"/>
|
||||||
<!-- A1D4KDHUE83NKHddF -->
|
<!-- A1D4KDHUE83NKHddF -->
|
||||||
<add key="WebsitePanel.EncryptionEnabled" value="true" />
|
<add key="WebsitePanel.EncryptionEnabled" value="true"/>
|
||||||
<!-- Web Applications -->
|
<!-- Web Applications -->
|
||||||
<add key="WebsitePanel.EnterpriseServer.WebApplicationsPath" value="~/WebApplications" />
|
<add key="WebsitePanel.EnterpriseServer.WebApplicationsPath" value="~/WebApplications"/>
|
||||||
<!-- Communication settings -->
|
<!-- Communication settings -->
|
||||||
<!-- Maximum waiting time when sending request to the remote server
|
<!-- Maximum waiting time when sending request to the remote server
|
||||||
The value is in seconds. "-1" - infinite. -->
|
The value is in seconds. "-1" - infinite. -->
|
||||||
<add key="WebsitePanel.EnterpriseServer.ServerRequestTimeout" value="3600" />
|
<add key="WebsitePanel.EnterpriseServer.ServerRequestTimeout" value="3600"/>
|
||||||
<add key="WebsitePanel.AltConnectionString" value="ConnectionString" />
|
<add key="WebsitePanel.AltConnectionString" value="ConnectionString"/>
|
||||||
<add key="WebsitePanel.AltCryptoKey" value="CryptoKey" />
|
<add key="WebsitePanel.AltCryptoKey" value="CryptoKey"/>
|
||||||
</appSettings>
|
</appSettings>
|
||||||
<system.web>
|
<system.web>
|
||||||
<!-- Disable any authentication -->
|
<!-- Disable any authentication -->
|
||||||
|
|
|
@ -344,6 +344,18 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
return ExchangeServerController.SetMailboxPermissions(itemId, accountId, sendAsaccounts, fullAccessAcounts);
|
return ExchangeServerController.SetMailboxPermissions(itemId, accountId, sendAsaccounts, fullAccessAcounts);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[WebMethod]
|
||||||
|
public int ExportMailBox(int itemId, int accountId, string path)
|
||||||
|
{
|
||||||
|
return ExchangeServerController.ExportMailBox(itemId, accountId, path);
|
||||||
|
}
|
||||||
|
|
||||||
|
[WebMethod]
|
||||||
|
public int SetDeletedMailbox(int itemId, int accountId)
|
||||||
|
{
|
||||||
|
return ExchangeServerController.SetDeletedMailbox(itemId, accountId);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
|
|
@ -193,6 +193,12 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
return OrganizationController.ImportUser(itemId, accountName, displayName, name, domain, password, subscriberNumber);
|
return OrganizationController.ImportUser(itemId, accountName, displayName, name, domain, password, subscriberNumber);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[WebMethod]
|
||||||
|
public OrganizationDeletedUsersPaged GetOrganizationDeletedUsersPaged(int itemId, string filterColumn, string filterValue, string sortColumn,
|
||||||
|
int startRow, int maximumRows)
|
||||||
|
{
|
||||||
|
return OrganizationController.GetOrganizationDeletedUsersPaged(itemId, filterColumn, filterValue, sortColumn, startRow, maximumRows);
|
||||||
|
}
|
||||||
|
|
||||||
[WebMethod]
|
[WebMethod]
|
||||||
public OrganizationUsersPaged GetOrganizationUsersPaged(int itemId, string filterColumn, string filterValue, string sortColumn,
|
public OrganizationUsersPaged GetOrganizationUsersPaged(int itemId, string filterColumn, string filterValue, string sortColumn,
|
||||||
|
@ -248,6 +254,17 @@ namespace WebsitePanel.EnterpriseServer
|
||||||
filterColumn, filterValue, sortColumn, includeMailboxes);
|
filterColumn, filterValue, sortColumn, includeMailboxes);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[WebMethod]
|
||||||
|
public int SetDeletedUser(int itemId, int accountId, bool enableForceArchive)
|
||||||
|
{
|
||||||
|
return OrganizationController.SetDeletedUser(itemId, accountId, enableForceArchive);
|
||||||
|
}
|
||||||
|
|
||||||
|
[WebMethod]
|
||||||
|
public byte[] GetArchiveFileBinaryChunk(int packageId, string path, int offset, int length)
|
||||||
|
{
|
||||||
|
return OrganizationController.GetArchiveFileBinaryChunk(packageId, path, offset, length);
|
||||||
|
}
|
||||||
|
|
||||||
[WebMethod]
|
[WebMethod]
|
||||||
public int DeleteUser(int itemId, int accountId)
|
public int DeleteUser(int itemId, int accountId)
|
||||||
|
|
|
@ -40,6 +40,7 @@ namespace WebsitePanel.Providers.HostedSolution
|
||||||
User = 7,
|
User = 7,
|
||||||
SecurityGroup = 8,
|
SecurityGroup = 8,
|
||||||
DefaultSecurityGroup = 9,
|
DefaultSecurityGroup = 9,
|
||||||
SharedMailbox = 10
|
SharedMailbox = 10,
|
||||||
|
DeletedUser = 11
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -247,6 +247,13 @@ namespace WebsitePanel.Providers.HostedSolution
|
||||||
set { this.archiveWarningPct = value; }
|
set { this.archiveWarningPct = value; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool enableForceArchiveDeletion;
|
||||||
|
public bool EnableForceArchiveDeletion
|
||||||
|
{
|
||||||
|
get { return this.enableForceArchiveDeletion; }
|
||||||
|
set { this.enableForceArchiveDeletion = value; }
|
||||||
|
}
|
||||||
|
|
||||||
public string WSPUniqueName
|
public string WSPUniqueName
|
||||||
{
|
{
|
||||||
get
|
get
|
||||||
|
|
|
@ -143,6 +143,7 @@ namespace WebsitePanel.Providers.HostedSolution
|
||||||
int RemoveDisclamerMember(string name, string member);
|
int RemoveDisclamerMember(string name, string member);
|
||||||
|
|
||||||
// Archiving
|
// Archiving
|
||||||
|
ResultObject ExportMailBox(string organizationId, string accountName, string storagePath);
|
||||||
ResultObject SetMailBoxArchiving(string organizationId, string accountName, bool archive, long archiveQuotaKB, long archiveWarningQuotaKB, string RetentionPolicy);
|
ResultObject SetMailBoxArchiving(string organizationId, string accountName, bool archive, long archiveQuotaKB, long archiveWarningQuotaKB, string RetentionPolicy);
|
||||||
|
|
||||||
// Retention policy
|
// Retention policy
|
||||||
|
|
|
@ -39,6 +39,8 @@ namespace WebsitePanel.Providers.HostedSolution
|
||||||
|
|
||||||
int CreateUser(string organizationId, string loginName, string displayName, string upn, string password, bool enabled);
|
int CreateUser(string organizationId, string loginName, string displayName, string upn, string password, bool enabled);
|
||||||
|
|
||||||
|
void DisableUser(string loginName, string organizationId);
|
||||||
|
|
||||||
void DeleteUser(string loginName, string organizationId);
|
void DeleteUser(string loginName, string organizationId);
|
||||||
|
|
||||||
OrganizationUser GetUserGeneralSettings(string loginName, string organizationId);
|
OrganizationUser GetUserGeneralSettings(string loginName, string organizationId);
|
||||||
|
|
|
@ -0,0 +1,53 @@
|
||||||
|
// Copyright (c) 2014, Outercurve Foundation.
|
||||||
|
// All rights reserved.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without modification,
|
||||||
|
// are permitted provided that the following conditions are met:
|
||||||
|
//
|
||||||
|
// - Redistributions of source code must retain the above copyright notice, this
|
||||||
|
// list of conditions and the following disclaimer.
|
||||||
|
//
|
||||||
|
// - Redistributions in binary form must reproduce the above copyright notice,
|
||||||
|
// this list of conditions and the following disclaimer in the documentation
|
||||||
|
// and/or other materials provided with the distribution.
|
||||||
|
//
|
||||||
|
// - Neither the name of the Outercurve Foundation nor the names of its
|
||||||
|
// contributors may be used to endorse or promote products derived from this
|
||||||
|
// software without specific prior written permission.
|
||||||
|
//
|
||||||
|
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
||||||
|
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||||
|
// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||||
|
// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
|
||||||
|
// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||||
|
// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||||
|
// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
||||||
|
// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||||
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||||
|
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
|
using System;
|
||||||
|
|
||||||
|
namespace WebsitePanel.Providers.HostedSolution
|
||||||
|
{
|
||||||
|
public class OrganizationDeletedUser
|
||||||
|
{
|
||||||
|
public int Id { get; set; }
|
||||||
|
|
||||||
|
public int AccountId { get; set; }
|
||||||
|
|
||||||
|
public ExchangeAccountType OriginAT { get; set; }
|
||||||
|
|
||||||
|
public string StoragePath { get; set; }
|
||||||
|
|
||||||
|
public string FolderName { get; set; }
|
||||||
|
|
||||||
|
public string FileName { get; set; }
|
||||||
|
|
||||||
|
public DateTime ExpirationDate { get; set; }
|
||||||
|
|
||||||
|
public OrganizationUser User { get; set; }
|
||||||
|
|
||||||
|
public bool IsArchiveEmpty { get; set; }
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,48 @@
|
||||||
|
// Copyright (c) 2014, Outercurve Foundation.
|
||||||
|
// All rights reserved.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without modification,
|
||||||
|
// are permitted provided that the following conditions are met:
|
||||||
|
//
|
||||||
|
// - Redistributions of source code must retain the above copyright notice, this
|
||||||
|
// list of conditions and the following disclaimer.
|
||||||
|
//
|
||||||
|
// - Redistributions in binary form must reproduce the above copyright notice,
|
||||||
|
// this list of conditions and the following disclaimer in the documentation
|
||||||
|
// and/or other materials provided with the distribution.
|
||||||
|
//
|
||||||
|
// - Neither the name of the Outercurve Foundation nor the names of its
|
||||||
|
// contributors may be used to endorse or promote products derived from this
|
||||||
|
// software without specific prior written permission.
|
||||||
|
//
|
||||||
|
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
||||||
|
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||||
|
// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||||
|
// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
|
||||||
|
// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||||
|
// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||||
|
// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
||||||
|
// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||||
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||||
|
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
|
namespace WebsitePanel.Providers.HostedSolution
|
||||||
|
{
|
||||||
|
public class OrganizationDeletedUsersPaged
|
||||||
|
{
|
||||||
|
int recordsCount;
|
||||||
|
OrganizationDeletedUser[] pageDeletedUsers;
|
||||||
|
|
||||||
|
public int RecordsCount
|
||||||
|
{
|
||||||
|
get { return recordsCount; }
|
||||||
|
set { recordsCount = value; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public OrganizationDeletedUser[] PageDeletedUsers
|
||||||
|
{
|
||||||
|
get { return pageDeletedUsers; }
|
||||||
|
set { pageDeletedUsers = value; }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -82,6 +82,12 @@ namespace WebsitePanel.Providers.HostedSolution
|
||||||
private int createdProfessionalCRMUsers;
|
private int createdProfessionalCRMUsers;
|
||||||
private int allocatedProfessionalCRMUsers;
|
private int allocatedProfessionalCRMUsers;
|
||||||
|
|
||||||
|
private int allocatedDeletedUsers;
|
||||||
|
private int deletedUsers;
|
||||||
|
|
||||||
|
private int allocatedDeletedUsersBackupStorageSpace;
|
||||||
|
private int usedDeletedUsersBackupStorageSpace;
|
||||||
|
|
||||||
public int CreatedProfessionalCRMUsers
|
public int CreatedProfessionalCRMUsers
|
||||||
{
|
{
|
||||||
get { return createdProfessionalCRMUsers; }
|
get { return createdProfessionalCRMUsers; }
|
||||||
|
@ -376,6 +382,29 @@ namespace WebsitePanel.Providers.HostedSolution
|
||||||
public int AllocatedRdsServers { get; set; }
|
public int AllocatedRdsServers { get; set; }
|
||||||
public int AllocatedRdsCollections { get; set; }
|
public int AllocatedRdsCollections { get; set; }
|
||||||
public int AllocatedRdsUsers { get; set; }
|
public int AllocatedRdsUsers { get; set; }
|
||||||
|
|
||||||
|
public int AllocatedDeletedUsers
|
||||||
|
{
|
||||||
|
get { return allocatedDeletedUsers; }
|
||||||
|
set { allocatedDeletedUsers = value; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public int DeletedUsers
|
||||||
|
{
|
||||||
|
get { return deletedUsers; }
|
||||||
|
set { deletedUsers = value; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public int AllocatedDeletedUsersBackupStorageSpace
|
||||||
|
{
|
||||||
|
get { return allocatedDeletedUsersBackupStorageSpace; }
|
||||||
|
set { allocatedDeletedUsersBackupStorageSpace = value; }
|
||||||
|
}
|
||||||
|
public int UsedDeletedUsersBackupStorageSpace
|
||||||
|
{
|
||||||
|
get { return usedDeletedUsersBackupStorageSpace; }
|
||||||
|
set { usedDeletedUsersBackupStorageSpace = value; }
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -120,6 +120,8 @@
|
||||||
<Compile Include="HostedSolution\LyncUsersPaged.cs" />
|
<Compile Include="HostedSolution\LyncUsersPaged.cs" />
|
||||||
<Compile Include="HostedSolution\LyncVoicePolicyType.cs" />
|
<Compile Include="HostedSolution\LyncVoicePolicyType.cs" />
|
||||||
<Compile Include="HostedSolution\OrganizationSecurityGroup.cs" />
|
<Compile Include="HostedSolution\OrganizationSecurityGroup.cs" />
|
||||||
|
<Compile Include="HostedSolution\OrganizationDeletedUser.cs" />
|
||||||
|
<Compile Include="HostedSolution\OrganizationDeletedUsersPaged.cs" />
|
||||||
<Compile Include="HostedSolution\TransactionAction.cs" />
|
<Compile Include="HostedSolution\TransactionAction.cs" />
|
||||||
<Compile Include="OS\MappedDrivesPaged.cs" />
|
<Compile Include="OS\MappedDrivesPaged.cs" />
|
||||||
<Compile Include="OS\MappedDrive.cs" />
|
<Compile Include="OS\MappedDrive.cs" />
|
||||||
|
|
|
@ -7482,6 +7482,43 @@ namespace WebsitePanel.Providers.HostedSolution
|
||||||
|
|
||||||
#region Archiving
|
#region Archiving
|
||||||
|
|
||||||
|
public ResultObject ExportMailBox(string organizationId, string accountName, string storagePath)
|
||||||
|
{
|
||||||
|
return ExportMailBoxInternal(organizationId, accountName, storagePath);
|
||||||
|
}
|
||||||
|
|
||||||
|
public ResultObject ExportMailBoxInternal(string organizationId, string accountName, string storagePath)
|
||||||
|
{
|
||||||
|
ExchangeLog.LogStart("ExportMailBoxInternal");
|
||||||
|
ExchangeLog.DebugInfo("Account: {0}", accountName);
|
||||||
|
|
||||||
|
ResultObject res = new ResultObject() { IsSuccess = true };
|
||||||
|
|
||||||
|
Runspace runSpace = null;
|
||||||
|
Runspace runSpaceEx = null;
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
runSpace = OpenRunspace();
|
||||||
|
runSpaceEx = OpenRunspaceEx();
|
||||||
|
|
||||||
|
Command cmd = new Command("New-MailboxExportRequest");
|
||||||
|
cmd.Parameters.Add("Mailbox", accountName);
|
||||||
|
cmd.Parameters.Add("FilePath", storagePath);
|
||||||
|
|
||||||
|
ExecuteShellCommand(runSpace, cmd, res);
|
||||||
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
CloseRunspace(runSpace);
|
||||||
|
CloseRunspaceEx(runSpaceEx);
|
||||||
|
}
|
||||||
|
|
||||||
|
ExchangeLog.LogEnd("ExportMailBoxInternal");
|
||||||
|
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
public ResultObject SetMailBoxArchiving(string organizationId, string accountName, bool archive, long archiveQuotaKB, long archiveWarningQuotaKB, string RetentionPolicy)
|
public ResultObject SetMailBoxArchiving(string organizationId, string accountName, bool archive, long archiveQuotaKB, long archiveWarningQuotaKB, string RetentionPolicy)
|
||||||
{
|
{
|
||||||
return SetMailBoxArchivingInternal(organizationId, accountName, archive, archiveQuotaKB, archiveWarningQuotaKB, RetentionPolicy);
|
return SetMailBoxArchivingInternal(organizationId, accountName, archive, archiveQuotaKB, archiveWarningQuotaKB, RetentionPolicy);
|
||||||
|
|
|
@ -7103,6 +7103,13 @@ namespace WebsitePanel.Providers.HostedSolution
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region Archiving
|
#region Archiving
|
||||||
|
|
||||||
|
public virtual ResultObject ExportMailBox(string organizationId, string accountName, string storagePath)
|
||||||
|
{
|
||||||
|
// not implemented
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
public virtual ResultObject SetMailBoxArchiving(string organizationId, string accountName, bool archive, long archiveQuotaKB, long archiveWarningQuotaKB, string RetentionPolicy)
|
public virtual ResultObject SetMailBoxArchiving(string organizationId, string accountName, bool archive, long archiveQuotaKB, long archiveWarningQuotaKB, string RetentionPolicy)
|
||||||
{
|
{
|
||||||
// not implemented
|
// not implemented
|
||||||
|
|
|
@ -526,6 +526,36 @@ namespace WebsitePanel.Providers.HostedSolution
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void DisableUser(string loginName, string organizationId)
|
||||||
|
{
|
||||||
|
DisableUserInternal(loginName, organizationId);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void DisableUserInternal(string loginName, string organizationId)
|
||||||
|
{
|
||||||
|
HostedSolutionLog.LogStart("DisableUserInternal");
|
||||||
|
HostedSolutionLog.DebugInfo("loginName : {0}", loginName);
|
||||||
|
HostedSolutionLog.DebugInfo("organizationId : {0}", organizationId);
|
||||||
|
|
||||||
|
if (string.IsNullOrEmpty(loginName))
|
||||||
|
throw new ArgumentNullException("loginName");
|
||||||
|
|
||||||
|
if (string.IsNullOrEmpty(organizationId))
|
||||||
|
throw new ArgumentNullException("organizationId");
|
||||||
|
|
||||||
|
string path = GetUserPath(organizationId, loginName);
|
||||||
|
|
||||||
|
if (ActiveDirectoryUtils.AdObjectExists(path))
|
||||||
|
{
|
||||||
|
DirectoryEntry entry = ActiveDirectoryUtils.GetADObject(path);
|
||||||
|
|
||||||
|
entry.InvokeSet(ADAttributes.AccountDisabled, true);
|
||||||
|
|
||||||
|
entry.CommitChanges();
|
||||||
|
}
|
||||||
|
|
||||||
|
HostedSolutionLog.LogEnd("DisableUserInternal");
|
||||||
|
}
|
||||||
|
|
||||||
public void DeleteUser(string loginName, string organizationId)
|
public void DeleteUser(string loginName, string organizationId)
|
||||||
{
|
{
|
||||||
|
|
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
@ -1,5 +1,7 @@
|
||||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||||
# Visual Studio 2012
|
# Visual Studio 2013
|
||||||
|
VisualStudioVersion = 12.0.30723.0
|
||||||
|
MinimumVisualStudioVersion = 10.0.40219.1
|
||||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Caching Application Block", "Caching Application Block", "{C8E6F2E4-A5B8-486A-A56E-92D864524682}"
|
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Caching Application Block", "Caching Application Block", "{C8E6F2E4-A5B8-486A-A56E-92D864524682}"
|
||||||
ProjectSection(SolutionItems) = preProject
|
ProjectSection(SolutionItems) = preProject
|
||||||
Bin\Microsoft.Practices.EnterpriseLibrary.Common.dll = Bin\Microsoft.Practices.EnterpriseLibrary.Common.dll
|
Bin\Microsoft.Practices.EnterpriseLibrary.Common.dll = Bin\Microsoft.Practices.EnterpriseLibrary.Common.dll
|
||||||
|
|
|
@ -1271,6 +1271,28 @@ namespace WebsitePanel.Server
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region Archiving
|
#region Archiving
|
||||||
|
|
||||||
|
[WebMethod, SoapHeader("settings")]
|
||||||
|
public ResultObject ExportMailBox(string organizationId, string accountName, string storagePath)
|
||||||
|
{
|
||||||
|
ResultObject res = null;
|
||||||
|
try
|
||||||
|
{
|
||||||
|
LogStart("ExportMailBox");
|
||||||
|
|
||||||
|
res = ES.ExportMailBox(organizationId, accountName, storagePath);
|
||||||
|
|
||||||
|
LogEnd("ExportMailBox");
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
LogError("ExportMailBox", ex);
|
||||||
|
throw;
|
||||||
|
}
|
||||||
|
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
[WebMethod, SoapHeader("settings")]
|
[WebMethod, SoapHeader("settings")]
|
||||||
public ResultObject SetMailBoxArchiving(string organizationId, string accountName, bool archive, long archiveQuotaKB, long archiveWarningQuotaKB, string RetentionPolicy)
|
public ResultObject SetMailBoxArchiving(string organizationId, string accountName, bool archive, long archiveQuotaKB, long archiveWarningQuotaKB, string RetentionPolicy)
|
||||||
{
|
{
|
||||||
|
|
|
@ -99,6 +99,12 @@ namespace WebsitePanel.Server
|
||||||
return Organization.CreateUser(organizationId, loginName, displayName, upn, password, enabled);
|
return Organization.CreateUser(organizationId, loginName, displayName, upn, password, enabled);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[WebMethod, SoapHeader("settings")]
|
||||||
|
public void DisableUser(string loginName, string organizationId)
|
||||||
|
{
|
||||||
|
Organization.DisableUser(loginName, organizationId);
|
||||||
|
}
|
||||||
|
|
||||||
[WebMethod, SoapHeader("settings")]
|
[WebMethod, SoapHeader("settings")]
|
||||||
public void DeleteUser(string loginName, string organizationId)
|
public void DeleteUser(string loginName, string organizationId)
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,40 +1,46 @@
|
||||||
<?xml version="1.0"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<configuration>
|
<configuration>
|
||||||
<!-- Custom configuration sections -->
|
<!-- Custom configuration sections -->
|
||||||
<configSections>
|
<configSections>
|
||||||
<section name="microsoft.web.services3" type="Microsoft.Web.Services3.Configuration.WebServicesConfiguration, Microsoft.Web.Services3"/>
|
<section name="microsoft.web.services3" type="Microsoft.Web.Services3.Configuration.WebServicesConfiguration, Microsoft.Web.Services3" />
|
||||||
<section name="websitepanel.server" type="WebsitePanel.Server.ServerConfiguration, WebsitePanel.Server"/>
|
<section name="websitepanel.server" type="WebsitePanel.Server.ServerConfiguration, WebsitePanel.Server" />
|
||||||
<section name="cachingConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Caching.Configuration.CacheManagerSettings,Microsoft.Practices.EnterpriseLibrary.Caching"/>
|
<section name="cachingConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Caching.Configuration.CacheManagerSettings,Microsoft.Practices.EnterpriseLibrary.Caching" />
|
||||||
|
<sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
|
||||||
|
<sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
|
||||||
|
<sectionGroup name="webServices" type="System.Web.Configuration.ScriptingWebServicesSectionGroup, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
|
||||||
|
</sectionGroup>
|
||||||
|
</sectionGroup>
|
||||||
|
</sectionGroup>
|
||||||
</configSections>
|
</configSections>
|
||||||
<appSettings>
|
<appSettings>
|
||||||
<add key="WebsitePanel.HyperV.UseDiskPartClearReadOnlyFlag" value="false"/>
|
<add key="WebsitePanel.HyperV.UseDiskPartClearReadOnlyFlag" value="false" />
|
||||||
<add key="WebsitePanel.Exchange.ClearQueryBaseDN" value="false"/>
|
<add key="WebsitePanel.Exchange.ClearQueryBaseDN" value="false" />
|
||||||
<add key="WebsitePanel.Exchange.enableSP2abp" value="false"/>
|
<add key="WebsitePanel.Exchange.enableSP2abp" value="false" />
|
||||||
<add key="SCVMMServerName" value=""/>
|
<add key="SCVMMServerName" value="" />
|
||||||
<add key="SCVMMServerPort" value=""/>
|
<add key="SCVMMServerPort" value="" />
|
||||||
</appSettings>
|
</appSettings>
|
||||||
<system.diagnostics>
|
<system.diagnostics>
|
||||||
<switches>
|
<switches>
|
||||||
<add name="Log" value="2"/>
|
<add name="Log" value="2" />
|
||||||
<!-- 0 - Off, 1 - Error, 2 - Warning, 3 - Info, 4 - Verbose -->
|
<!-- 0 - Off, 1 - Error, 2 - Warning, 3 - Info, 4 - Verbose -->
|
||||||
</switches>
|
</switches>
|
||||||
<trace autoflush="true">
|
<trace autoflush="true">
|
||||||
<listeners>
|
<listeners>
|
||||||
<add name="DefaultListener" type="WebsitePanel.Server.Utils.EventLogTraceListener, WebsitePanel.Server.Utils" initializeData="WebsitePanel"/>
|
<add name="DefaultListener" type="WebsitePanel.Server.Utils.EventLogTraceListener, WebsitePanel.Server.Utils" initializeData="WebsitePanel" />
|
||||||
<!-- Writes log to the file
|
<!-- Writes log to the file
|
||||||
<add name="DefaultListener" type="System.Diagnostics.TextWriterTraceListener" initializeData="WebsitePanel.Server.log" />
|
<add name="DefaultListener" type="System.Diagnostics.TextWriterTraceListener" initializeData="WebsitePanel.Server.log" />
|
||||||
-->
|
-->
|
||||||
<remove name="Default"/>
|
<remove name="Default" />
|
||||||
</listeners>
|
</listeners>
|
||||||
</trace>
|
</trace>
|
||||||
</system.diagnostics>
|
</system.diagnostics>
|
||||||
<!-- Caching Configuration -->
|
<!-- Caching Configuration -->
|
||||||
<cachingConfiguration defaultCacheManager="Default Cache Manager">
|
<cachingConfiguration defaultCacheManager="Default Cache Manager">
|
||||||
<backingStores>
|
<backingStores>
|
||||||
<add name="inMemory" type="Microsoft.Practices.EnterpriseLibrary.Caching.BackingStoreImplementations.NullBackingStore, Microsoft.Practices.EnterpriseLibrary.Caching"/>
|
<add name="inMemory" type="Microsoft.Practices.EnterpriseLibrary.Caching.BackingStoreImplementations.NullBackingStore, Microsoft.Practices.EnterpriseLibrary.Caching" />
|
||||||
</backingStores>
|
</backingStores>
|
||||||
<cacheManagers>
|
<cacheManagers>
|
||||||
<add name="Default Cache Manager" expirationPollFrequencyInSeconds="43200" maximumElementsInCacheBeforeScavenging="1000" numberToRemoveWhenScavenging="10" backingStoreName="inMemory"/>
|
<add name="Default Cache Manager" expirationPollFrequencyInSeconds="43200" maximumElementsInCacheBeforeScavenging="1000" numberToRemoveWhenScavenging="10" backingStoreName="inMemory" />
|
||||||
</cacheManagers>
|
</cacheManagers>
|
||||||
</cachingConfiguration>
|
</cachingConfiguration>
|
||||||
<!-- WebsitePanel Configuration -->
|
<!-- WebsitePanel Configuration -->
|
||||||
|
@ -42,72 +48,127 @@
|
||||||
<!-- Security settings -->
|
<!-- Security settings -->
|
||||||
<security>
|
<security>
|
||||||
<!-- Perform security check -->
|
<!-- Perform security check -->
|
||||||
<enabled value="true"/>
|
<enabled value="true" />
|
||||||
<!-- Server password -->
|
<!-- Server password -->
|
||||||
<password value="FEhQyToJwdSRkkaytoTUGQRU5k4="/>
|
<password value="TaIF+82DBVpZ/Ix216bG/o02fUE=" />
|
||||||
</security>
|
</security>
|
||||||
</websitepanel.server>
|
</websitepanel.server>
|
||||||
<system.web>
|
<system.web>
|
||||||
<!-- Disable any authentication -->
|
<!-- Disable any authentication -->
|
||||||
<authentication mode="None"/>
|
<authentication mode="None" />
|
||||||
<!-- Correct HTTP runtime settings -->
|
<!-- Correct HTTP runtime settings -->
|
||||||
<httpRuntime executionTimeout="3600" maxRequestLength="16384"/>
|
<httpRuntime executionTimeout="3600" maxRequestLength="16384" />
|
||||||
<!-- Set globalization settings -->
|
<!-- Set globalization settings -->
|
||||||
<globalization culture="en-US" uiCulture="en" requestEncoding="UTF-8" responseEncoding="UTF-8" fileEncoding="UTF-8"/>
|
<globalization culture="en-US" uiCulture="en" requestEncoding="UTF-8" responseEncoding="UTF-8" fileEncoding="UTF-8" />
|
||||||
<!-- Web Services settings -->
|
<!-- Web Services settings -->
|
||||||
<webServices>
|
<webServices>
|
||||||
<protocols>
|
<protocols>
|
||||||
<remove name="HttpPost"/>
|
<remove name="HttpPost" />
|
||||||
<remove name="HttpPostLocalhost"/>
|
<remove name="HttpPostLocalhost" />
|
||||||
<remove name="HttpGet"/>
|
<remove name="HttpGet" />
|
||||||
</protocols>
|
</protocols>
|
||||||
<soapServerProtocolFactory type="Microsoft.Web.Services3.WseProtocolFactory, Microsoft.Web.Services3"/>
|
<soapServerProtocolFactory type="Microsoft.Web.Services3.WseProtocolFactory, Microsoft.Web.Services3" />
|
||||||
</webServices>
|
</webServices>
|
||||||
<compilation debug="true" targetFramework="4.0"/>
|
<compilation debug="true">
|
||||||
<pages controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID"/>
|
<assemblies>
|
||||||
|
<add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
|
||||||
|
<add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
|
||||||
|
<add assembly="System.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
|
||||||
|
<add assembly="System.Data.DataSetExtensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
|
||||||
|
</assemblies>
|
||||||
|
</compilation>
|
||||||
|
<pages>
|
||||||
|
<controls>
|
||||||
|
<add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
|
||||||
|
<add tagPrefix="asp" namespace="System.Web.UI.WebControls" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
|
||||||
|
</controls>
|
||||||
|
</pages>
|
||||||
|
<httpHandlers>
|
||||||
|
<remove verb="*" path="*.asmx" />
|
||||||
|
<add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
|
||||||
|
<add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
|
||||||
|
<add verb="GET,HEAD" path="ScriptResource.axd" validate="false" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
|
||||||
|
</httpHandlers>
|
||||||
|
<httpModules>
|
||||||
|
<add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
|
||||||
|
</httpModules>
|
||||||
</system.web>
|
</system.web>
|
||||||
<!-- WSE 3.0 settings -->
|
<!-- WSE 3.0 settings -->
|
||||||
<microsoft.web.services3>
|
<microsoft.web.services3>
|
||||||
<diagnostics>
|
<diagnostics>
|
||||||
<trace enabled="false" input="InputTrace.webinfo" output="OutputTrace.webinfo"/>
|
<trace enabled="false" input="InputTrace.webinfo" output="OutputTrace.webinfo" />
|
||||||
</diagnostics>
|
</diagnostics>
|
||||||
<messaging>
|
<messaging>
|
||||||
<maxMessageLength value="-1"/>
|
<maxMessageLength value="-1" />
|
||||||
<mtom serverMode="optional" clientMode="On"/>
|
<mtom serverMode="optional" clientMode="On" />
|
||||||
</messaging>
|
</messaging>
|
||||||
<security>
|
<security>
|
||||||
<securityTokenManager>
|
<securityTokenManager>
|
||||||
<add type="WebsitePanel.Server.ServerUsernameTokenManager, WebsitePanel.Server" namespace="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" localName="UsernameToken"/>
|
<add type="WebsitePanel.Server.ServerUsernameTokenManager, WebsitePanel.Server" namespace="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" localName="UsernameToken" />
|
||||||
</securityTokenManager>
|
</securityTokenManager>
|
||||||
<timeToleranceInSeconds value="86400"/>
|
<timeToleranceInSeconds value="86400" />
|
||||||
</security>
|
</security>
|
||||||
<policy fileName="WsePolicyCache.Config"/>
|
<policy fileName="WsePolicyCache.Config" />
|
||||||
</microsoft.web.services3>
|
</microsoft.web.services3>
|
||||||
<system.serviceModel>
|
<system.serviceModel>
|
||||||
<bindings>
|
<bindings>
|
||||||
<wsHttpBinding>
|
<wsHttpBinding>
|
||||||
<binding name="WSHttpBinding_IVirtualMachineManagementService" closeTimeout="00:01:00" openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00" bypassProxyOnLocal="false" transactionFlow="false" hostNameComparisonMode="StrongWildcard" maxBufferPoolSize="524288" maxReceivedMessageSize="10485760" messageEncoding="Text" textEncoding="utf-8" useDefaultWebProxy="true" allowCookies="false">
|
<binding name="WSHttpBinding_IVirtualMachineManagementService" closeTimeout="00:01:00" openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00" bypassProxyOnLocal="false" transactionFlow="false" hostNameComparisonMode="StrongWildcard" maxBufferPoolSize="524288" maxReceivedMessageSize="10485760" messageEncoding="Text" textEncoding="utf-8" useDefaultWebProxy="true" allowCookies="false">
|
||||||
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384"/>
|
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384" />
|
||||||
<reliableSession ordered="true" inactivityTimeout="00:10:00" enabled="false"/>
|
<reliableSession ordered="true" inactivityTimeout="00:10:00" enabled="false" />
|
||||||
<security mode="Message">
|
<security mode="Message">
|
||||||
<transport clientCredentialType="Windows" proxyCredentialType="None" realm=""/>
|
<transport clientCredentialType="Windows" proxyCredentialType="None" realm="" />
|
||||||
<message clientCredentialType="Windows" negotiateServiceCredential="true" algorithmSuite="Default"/>
|
<message clientCredentialType="Windows" negotiateServiceCredential="true" algorithmSuite="Default" />
|
||||||
</security>
|
</security>
|
||||||
</binding>
|
</binding>
|
||||||
<binding name="WSHttpBinding_IMonitoringService" closeTimeout="00:01:00" openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00" bypassProxyOnLocal="false" transactionFlow="false" hostNameComparisonMode="StrongWildcard" maxBufferPoolSize="524288" maxReceivedMessageSize="10485760" messageEncoding="Text" textEncoding="utf-8" useDefaultWebProxy="true" allowCookies="false">
|
<binding name="WSHttpBinding_IMonitoringService" closeTimeout="00:01:00" openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00" bypassProxyOnLocal="false" transactionFlow="false" hostNameComparisonMode="StrongWildcard" maxBufferPoolSize="524288" maxReceivedMessageSize="10485760" messageEncoding="Text" textEncoding="utf-8" useDefaultWebProxy="true" allowCookies="false">
|
||||||
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384"/>
|
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384" />
|
||||||
<reliableSession ordered="true" inactivityTimeout="00:10:00" enabled="false"/>
|
<reliableSession ordered="true" inactivityTimeout="00:10:00" enabled="false" />
|
||||||
<security mode="Message">
|
<security mode="Message">
|
||||||
<transport clientCredentialType="Windows" proxyCredentialType="None" realm=""/>
|
<transport clientCredentialType="Windows" proxyCredentialType="None" realm="" />
|
||||||
<message clientCredentialType="Windows" negotiateServiceCredential="true" algorithmSuite="Default"/>
|
<message clientCredentialType="Windows" negotiateServiceCredential="true" algorithmSuite="Default" />
|
||||||
</security>
|
</security>
|
||||||
</binding>
|
</binding>
|
||||||
</wsHttpBinding>
|
</wsHttpBinding>
|
||||||
</bindings>
|
</bindings>
|
||||||
</system.serviceModel>
|
</system.serviceModel>
|
||||||
|
<system.codedom>
|
||||||
|
<compilers>
|
||||||
|
<compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CSharp.CSharpCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" warningLevel="4">
|
||||||
|
<providerOption name="CompilerVersion" value="v3.5" />
|
||||||
|
<providerOption name="WarnAsError" value="false" />
|
||||||
|
</compiler>
|
||||||
|
</compilers>
|
||||||
|
</system.codedom>
|
||||||
|
<system.webServer>
|
||||||
|
<validation validateIntegratedModeConfiguration="false" />
|
||||||
|
<modules>
|
||||||
|
<remove name="ScriptModule" />
|
||||||
|
<add name="ScriptModule" preCondition="managedHandler" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
|
||||||
|
</modules>
|
||||||
|
<handlers>
|
||||||
|
<remove name="WebServiceHandlerFactory-Integrated" />
|
||||||
|
<remove name="ScriptHandlerFactory" />
|
||||||
|
<remove name="ScriptHandlerFactoryAppServices" />
|
||||||
|
<remove name="ScriptResource" />
|
||||||
|
<add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
|
||||||
|
<add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
|
||||||
|
<add name="ScriptResource" verb="GET,HEAD" path="ScriptResource.axd" preCondition="integratedMode" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
|
||||||
|
</handlers>
|
||||||
|
</system.webServer>
|
||||||
<runtime>
|
<runtime>
|
||||||
|
<assemblyBinding appliesTo="v2.0.50727" xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||||
|
<dependentAssembly>
|
||||||
|
<assemblyIdentity name="System.Web.Extensions" publicKeyToken="31bf3856ad364e35" />
|
||||||
|
<bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="3.5.0.0" />
|
||||||
|
</dependentAssembly>
|
||||||
|
<dependentAssembly>
|
||||||
|
<assemblyIdentity name="System.Web.Extensions.Design" publicKeyToken="31bf3856ad364e35" />
|
||||||
|
<bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="3.5.0.0" />
|
||||||
|
</dependentAssembly>
|
||||||
|
</assemblyBinding>
|
||||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||||
<probing privatePath="bin/Crm2011;bin/Crm2013;bin/Exchange2013;bin/Sharepoint2013;bin/Lync2013;bin/Lync2013HP;bin/Dns2012;bin/IceWarp;bin/IIs80"/>
|
<probing privatePath="bin/Crm2011;bin/Crm2013;bin/Exchange2013;bin/Sharepoint2013;bin/Lync2013;bin/Lync2013HP;bin/Dns2012" />
|
||||||
</assemblyBinding>
|
</assemblyBinding>
|
||||||
</runtime>
|
</runtime>
|
||||||
</configuration>
|
</configuration>
|
|
@ -1,5 +1,13 @@
|
||||||
/// <reference path="modernizr-2.8.3.js" />
|
/// <autosync enabled="true" />
|
||||||
/// <reference path="jquery-2.1.1.js" />
|
|
||||||
/// <autosync enabled="true" />
|
|
||||||
/// <reference path="bootstrap.js" />
|
/// <reference path="bootstrap.js" />
|
||||||
|
/// <reference path="jquery-2.1.1.js" />
|
||||||
|
/// <reference path="jquery.cookie.js" />
|
||||||
|
/// <reference path="jquery.validate.js" />
|
||||||
|
/// <reference path="jquery.validate.unobtrusive.js" />
|
||||||
|
/// <reference path="modernizr-2.8.3.js" />
|
||||||
|
/// <reference path="npm.js" />
|
||||||
/// <reference path="respond.js" />
|
/// <reference path="respond.js" />
|
||||||
|
/// <reference path="respond.matchmedia.addlistener.js" />
|
||||||
|
/// <reference path="appscripts/authentication.js" />
|
||||||
|
/// <reference path="appscripts/recalculateresourseheight.js" />
|
||||||
|
/// <reference path="appscripts/uploadingdata2.js" />
|
||||||
|
|
|
@ -15,6 +15,11 @@
|
||||||
<Control key="user_memberof" general_key="users" />
|
<Control key="user_memberof" general_key="users" />
|
||||||
<!--<Control key="organization_user_setup" />-->
|
<!--<Control key="organization_user_setup" />-->
|
||||||
|
|
||||||
|
<Control key="deleted_users" />
|
||||||
|
<Control key="view_deleted_user" general_key="deleted_users" />
|
||||||
|
<Control key="deleted_user_memberof" general_key="deleted_users" />
|
||||||
|
|
||||||
|
|
||||||
<Control key="secur_groups" />
|
<Control key="secur_groups" />
|
||||||
<Control key="create_secur_group" general_key="secur_groups" />
|
<Control key="create_secur_group" general_key="secur_groups" />
|
||||||
<Control key="secur_group_settings" general_key="secur_groups" />
|
<Control key="secur_group_settings" general_key="secur_groups" />
|
||||||
|
|
|
@ -575,6 +575,9 @@
|
||||||
<Control key="rds_create_collection" src="WebsitePanel/RDS/RDSCreateCollection.ascx" title="RDSCreateCollection" type="View" />
|
<Control key="rds_create_collection" src="WebsitePanel/RDS/RDSCreateCollection.ascx" title="RDSCreateCollection" type="View" />
|
||||||
<Control key="rds_collection_edit_apps" src="WebsitePanel/RDS/RDSEditCollectionApps.ascx" title="RDSEditCollectionApps" type="View" />
|
<Control key="rds_collection_edit_apps" src="WebsitePanel/RDS/RDSEditCollectionApps.ascx" title="RDSEditCollectionApps" type="View" />
|
||||||
<Control key="rds_collection_edit_users" src="WebsitePanel/RDS/RDSEditCollectionUsers.ascx" title="RDSEditCollectionUsers" type="View" />
|
<Control key="rds_collection_edit_users" src="WebsitePanel/RDS/RDSEditCollectionUsers.ascx" title="RDSEditCollectionUsers" type="View" />
|
||||||
|
<Control key="deleted_users" src="WebsitePanel/ExchangeServer/OrganizationDeletedUsers.ascx" title="OrganizationDeletedUsers" type="View" />
|
||||||
|
<Control key="view_deleted_user" src="WebsitePanel/ExchangeServer/OrganizationDeletedUserGeneralSettings.ascx" title="OrganizationDeletedUserGeneralSettings" type="View" />
|
||||||
|
<Control key="deleted_user_memberof" src="WebsitePanel/ExchangeServer/OrganizationDeletedUserMemberOf.ascx" title="DeletedUserMemberOf" type="View" />
|
||||||
<Control key="rds_application_edit_users" src="WebsitePanel/RDS/RDSEditApplicationUsers.ascx" title="RDSEditApplicationUsers" type="View" />
|
<Control key="rds_application_edit_users" src="WebsitePanel/RDS/RDSEditApplicationUsers.ascx" title="RDSEditApplicationUsers" type="View" />
|
||||||
<Control key="rds_edit_collection" src="WebsitePanel/RDS/RDSEditCollection.ascx" title="RDSEditCollection" type="View" />
|
<Control key="rds_edit_collection" src="WebsitePanel/RDS/RDSEditCollection.ascx" title="RDSEditCollection" type="View" />
|
||||||
</Controls>
|
</Controls>
|
||||||
|
|
|
@ -3346,6 +3346,12 @@
|
||||||
<data name="Quota.HostedSolution.SecurityGroups" xml:space="preserve">
|
<data name="Quota.HostedSolution.SecurityGroups" xml:space="preserve">
|
||||||
<value>Security Groups per Organization</value>
|
<value>Security Groups per Organization</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="Quota.HostedSolution.DeletedUsers" xml:space="preserve">
|
||||||
|
<value>Deleted Users per Organization</value>
|
||||||
|
</data>
|
||||||
|
<data name="Quota.HostedSolution.DeletedUsersBackupStorageSpace" xml:space="preserve">
|
||||||
|
<value>Deleted Users Backup Storage Space per Organization, Mb</value>
|
||||||
|
</data>
|
||||||
<data name="ResourceGroup.Hosted SharePoint" xml:space="preserve">
|
<data name="ResourceGroup.Hosted SharePoint" xml:space="preserve">
|
||||||
<value>Hosted SharePoint</value>
|
<value>Hosted SharePoint</value>
|
||||||
</data>
|
</data>
|
||||||
|
|
Binary file not shown.
After Width: | Height: | Size: 916 B |
|
@ -20,6 +20,10 @@
|
||||||
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
||||||
<TargetFrameworkProfile />
|
<TargetFrameworkProfile />
|
||||||
<UseIISExpress>false</UseIISExpress>
|
<UseIISExpress>false</UseIISExpress>
|
||||||
|
<IISExpressSSLPort />
|
||||||
|
<IISExpressAnonymousAuthentication />
|
||||||
|
<IISExpressWindowsAuthentication />
|
||||||
|
<IISExpressUseClassicPipelineMode />
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||||
<DebugSymbols>true</DebugSymbols>
|
<DebugSymbols>true</DebugSymbols>
|
||||||
|
@ -113,42 +117,36 @@
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="BillingCycles.ascx.cs">
|
<Compile Include="BillingCycles.ascx.cs">
|
||||||
<DependentUpon>BillingCycles.ascx</DependentUpon>
|
<DependentUpon>BillingCycles.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="BillingCycles.ascx.designer.cs">
|
<Compile Include="BillingCycles.ascx.designer.cs">
|
||||||
<DependentUpon>BillingCycles.ascx</DependentUpon>
|
<DependentUpon>BillingCycles.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="BillingCyclesAddCycle.ascx.cs">
|
<Compile Include="BillingCyclesAddCycle.ascx.cs">
|
||||||
<DependentUpon>BillingCyclesAddCycle.ascx</DependentUpon>
|
<DependentUpon>BillingCyclesAddCycle.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="BillingCyclesAddCycle.ascx.designer.cs">
|
<Compile Include="BillingCyclesAddCycle.ascx.designer.cs">
|
||||||
<DependentUpon>BillingCyclesAddCycle.ascx</DependentUpon>
|
<DependentUpon>BillingCyclesAddCycle.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="BillingCyclesEditCycle.ascx.cs">
|
<Compile Include="BillingCyclesEditCycle.ascx.cs">
|
||||||
<DependentUpon>BillingCyclesEditCycle.ascx</DependentUpon>
|
<DependentUpon>BillingCyclesEditCycle.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="BillingCyclesEditCycle.ascx.designer.cs">
|
<Compile Include="BillingCyclesEditCycle.ascx.designer.cs">
|
||||||
<DependentUpon>BillingCyclesEditCycle.ascx</DependentUpon>
|
<DependentUpon>BillingCyclesEditCycle.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="Categories.ascx.cs">
|
<Compile Include="Categories.ascx.cs">
|
||||||
<DependentUpon>Categories.ascx</DependentUpon>
|
<DependentUpon>Categories.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="Categories.ascx.designer.cs">
|
<Compile Include="Categories.ascx.designer.cs">
|
||||||
<DependentUpon>Categories.ascx</DependentUpon>
|
<DependentUpon>Categories.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="CategoriesAddCategory.ascx.cs">
|
<Compile Include="CategoriesAddCategory.ascx.cs">
|
||||||
<DependentUpon>CategoriesAddCategory.ascx</DependentUpon>
|
<DependentUpon>CategoriesAddCategory.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="CategoriesAddCategory.ascx.designer.cs">
|
<Compile Include="CategoriesAddCategory.ascx.designer.cs">
|
||||||
<DependentUpon>CategoriesAddCategory.ascx</DependentUpon>
|
<DependentUpon>CategoriesAddCategory.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="CategoriesEditCategory.ascx.cs">
|
<Compile Include="CategoriesEditCategory.ascx.cs">
|
||||||
<DependentUpon>CategoriesEditCategory.ascx</DependentUpon>
|
<DependentUpon>CategoriesEditCategory.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="CategoriesEditCategory.ascx.designer.cs">
|
<Compile Include="CategoriesEditCategory.ascx.designer.cs">
|
||||||
<DependentUpon>CategoriesEditCategory.ascx</DependentUpon>
|
<DependentUpon>CategoriesEditCategory.ascx</DependentUpon>
|
||||||
|
@ -160,12 +158,8 @@
|
||||||
<Compile Include="Code\Framework\CheckoutBasePage.cs">
|
<Compile Include="Code\Framework\CheckoutBasePage.cs">
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
<SubType>ASPXCodeBehind</SubType>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="Code\Framework\ecControlBase.cs">
|
<Compile Include="Code\Framework\ecControlBase.cs" />
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
<Compile Include="Code\Framework\ecModuleBase.cs" />
|
||||||
</Compile>
|
|
||||||
<Compile Include="Code\Framework\ecModuleBase.cs">
|
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
|
||||||
<Compile Include="Code\Framework\ecPanelFormatter.cs" />
|
<Compile Include="Code\Framework\ecPanelFormatter.cs" />
|
||||||
<Compile Include="Code\Framework\ecPanelGlobals.cs" />
|
<Compile Include="Code\Framework\ecPanelGlobals.cs" />
|
||||||
<Compile Include="Code\Framework\ecPanelRequest.cs" />
|
<Compile Include="Code\Framework\ecPanelRequest.cs" />
|
||||||
|
@ -192,175 +186,150 @@
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="CustomerPaymentProfile.ascx.cs">
|
<Compile Include="CustomerPaymentProfile.ascx.cs">
|
||||||
<DependentUpon>CustomerPaymentProfile.ascx</DependentUpon>
|
<DependentUpon>CustomerPaymentProfile.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="CustomerPaymentProfile.ascx.designer.cs">
|
<Compile Include="CustomerPaymentProfile.ascx.designer.cs">
|
||||||
<DependentUpon>CustomerPaymentProfile.ascx</DependentUpon>
|
<DependentUpon>CustomerPaymentProfile.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="CustomersInvoices.ascx.cs">
|
<Compile Include="CustomersInvoices.ascx.cs">
|
||||||
<DependentUpon>CustomersInvoices.ascx</DependentUpon>
|
<DependentUpon>CustomersInvoices.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="CustomersInvoices.ascx.designer.cs">
|
<Compile Include="CustomersInvoices.ascx.designer.cs">
|
||||||
<DependentUpon>CustomersInvoices.ascx</DependentUpon>
|
<DependentUpon>CustomersInvoices.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="CustomersInvoicesViewInvoice.ascx.cs">
|
<Compile Include="CustomersInvoicesViewInvoice.ascx.cs">
|
||||||
<DependentUpon>CustomersInvoicesViewInvoice.ascx</DependentUpon>
|
<DependentUpon>CustomersInvoicesViewInvoice.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="CustomersInvoicesViewInvoice.ascx.designer.cs">
|
<Compile Include="CustomersInvoicesViewInvoice.ascx.designer.cs">
|
||||||
<DependentUpon>CustomersInvoicesViewInvoice.ascx</DependentUpon>
|
<DependentUpon>CustomersInvoicesViewInvoice.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="CustomersPayments.ascx.cs">
|
<Compile Include="CustomersPayments.ascx.cs">
|
||||||
<DependentUpon>CustomersPayments.ascx</DependentUpon>
|
<DependentUpon>CustomersPayments.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="CustomersPayments.ascx.designer.cs">
|
<Compile Include="CustomersPayments.ascx.designer.cs">
|
||||||
<DependentUpon>CustomersPayments.ascx</DependentUpon>
|
<DependentUpon>CustomersPayments.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="CustomersServices.ascx.cs">
|
<Compile Include="CustomersServices.ascx.cs">
|
||||||
<DependentUpon>CustomersServices.ascx</DependentUpon>
|
<DependentUpon>CustomersServices.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="CustomersServices.ascx.designer.cs">
|
<Compile Include="CustomersServices.ascx.designer.cs">
|
||||||
<DependentUpon>CustomersServices.ascx</DependentUpon>
|
<DependentUpon>CustomersServices.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="CustomersServicesUpgradeService.ascx.cs">
|
<Compile Include="CustomersServicesUpgradeService.ascx.cs">
|
||||||
<DependentUpon>CustomersServicesUpgradeService.ascx</DependentUpon>
|
<DependentUpon>CustomersServicesUpgradeService.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="CustomersServicesUpgradeService.ascx.designer.cs">
|
<Compile Include="CustomersServicesUpgradeService.ascx.designer.cs">
|
||||||
<DependentUpon>CustomersServicesUpgradeService.ascx</DependentUpon>
|
<DependentUpon>CustomersServicesUpgradeService.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="CustomersServicesViewService.ascx.cs">
|
<Compile Include="CustomersServicesViewService.ascx.cs">
|
||||||
<DependentUpon>CustomersServicesViewService.ascx</DependentUpon>
|
<DependentUpon>CustomersServicesViewService.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="CustomersServicesViewService.ascx.designer.cs">
|
<Compile Include="CustomersServicesViewService.ascx.designer.cs">
|
||||||
<DependentUpon>CustomersServicesViewService.ascx</DependentUpon>
|
<DependentUpon>CustomersServicesViewService.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="DomainNames.ascx.cs">
|
<Compile Include="DomainNames.ascx.cs">
|
||||||
<DependentUpon>DomainNames.ascx</DependentUpon>
|
<DependentUpon>DomainNames.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="DomainNames.ascx.designer.cs">
|
<Compile Include="DomainNames.ascx.designer.cs">
|
||||||
<DependentUpon>DomainNames.ascx</DependentUpon>
|
<DependentUpon>DomainNames.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="DomainNamesAddDomain.ascx.cs">
|
<Compile Include="DomainNamesAddDomain.ascx.cs">
|
||||||
<DependentUpon>DomainNamesAddDomain.ascx</DependentUpon>
|
<DependentUpon>DomainNamesAddDomain.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="DomainNamesAddDomain.ascx.designer.cs">
|
<Compile Include="DomainNamesAddDomain.ascx.designer.cs">
|
||||||
<DependentUpon>DomainNamesAddDomain.ascx</DependentUpon>
|
<DependentUpon>DomainNamesAddDomain.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="DomainNamesEditDomain.ascx.cs">
|
<Compile Include="DomainNamesEditDomain.ascx.cs">
|
||||||
<DependentUpon>DomainNamesEditDomain.ascx</DependentUpon>
|
<DependentUpon>DomainNamesEditDomain.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="DomainNamesEditDomain.ascx.designer.cs">
|
<Compile Include="DomainNamesEditDomain.ascx.designer.cs">
|
||||||
<DependentUpon>DomainNamesEditDomain.ascx</DependentUpon>
|
<DependentUpon>DomainNamesEditDomain.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="DomainRegistrarDirecti.ascx.cs">
|
<Compile Include="DomainRegistrarDirecti.ascx.cs">
|
||||||
<DependentUpon>DomainRegistrarDirecti.ascx</DependentUpon>
|
<DependentUpon>DomainRegistrarDirecti.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="DomainRegistrarDirecti.ascx.designer.cs">
|
<Compile Include="DomainRegistrarDirecti.ascx.designer.cs">
|
||||||
<DependentUpon>DomainRegistrarDirecti.ascx</DependentUpon>
|
<DependentUpon>DomainRegistrarDirecti.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="DomainRegistrarEnom.ascx.cs">
|
<Compile Include="DomainRegistrarEnom.ascx.cs">
|
||||||
<DependentUpon>DomainRegistrarEnom.ascx</DependentUpon>
|
<DependentUpon>DomainRegistrarEnom.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="DomainRegistrarEnom.ascx.designer.cs">
|
<Compile Include="DomainRegistrarEnom.ascx.designer.cs">
|
||||||
<DependentUpon>DomainRegistrarEnom.ascx</DependentUpon>
|
<DependentUpon>DomainRegistrarEnom.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="EcommerceSystemSettings.ascx.cs">
|
<Compile Include="EcommerceSystemSettings.ascx.cs">
|
||||||
<DependentUpon>EcommerceSystemSettings.ascx</DependentUpon>
|
<DependentUpon>EcommerceSystemSettings.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="EcommerceSystemSettings.ascx.designer.cs">
|
<Compile Include="EcommerceSystemSettings.ascx.designer.cs">
|
||||||
<DependentUpon>EcommerceSystemSettings.ascx</DependentUpon>
|
<DependentUpon>EcommerceSystemSettings.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="HostingAddons.ascx.cs">
|
<Compile Include="HostingAddons.ascx.cs">
|
||||||
<DependentUpon>HostingAddons.ascx</DependentUpon>
|
<DependentUpon>HostingAddons.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="HostingAddons.ascx.designer.cs">
|
<Compile Include="HostingAddons.ascx.designer.cs">
|
||||||
<DependentUpon>HostingAddons.ascx</DependentUpon>
|
<DependentUpon>HostingAddons.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="HostingAddonsAddAddon.ascx.cs">
|
<Compile Include="HostingAddonsAddAddon.ascx.cs">
|
||||||
<DependentUpon>HostingAddonsAddAddon.ascx</DependentUpon>
|
<DependentUpon>HostingAddonsAddAddon.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="HostingAddonsAddAddon.ascx.designer.cs">
|
<Compile Include="HostingAddonsAddAddon.ascx.designer.cs">
|
||||||
<DependentUpon>HostingAddonsAddAddon.ascx</DependentUpon>
|
<DependentUpon>HostingAddonsAddAddon.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="HostingAddonsEditAddon.ascx.cs">
|
<Compile Include="HostingAddonsEditAddon.ascx.cs">
|
||||||
<DependentUpon>HostingAddonsEditAddon.ascx</DependentUpon>
|
<DependentUpon>HostingAddonsEditAddon.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="HostingAddonsEditAddon.ascx.designer.cs">
|
<Compile Include="HostingAddonsEditAddon.ascx.designer.cs">
|
||||||
<DependentUpon>HostingAddonsEditAddon.ascx</DependentUpon>
|
<DependentUpon>HostingAddonsEditAddon.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="HostingPlans.ascx.cs">
|
<Compile Include="HostingPlans.ascx.cs">
|
||||||
<DependentUpon>HostingPlans.ascx</DependentUpon>
|
<DependentUpon>HostingPlans.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="HostingPlans.ascx.designer.cs">
|
<Compile Include="HostingPlans.ascx.designer.cs">
|
||||||
<DependentUpon>HostingPlans.ascx</DependentUpon>
|
<DependentUpon>HostingPlans.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="HostingPlansAddPlan.ascx.cs">
|
<Compile Include="HostingPlansAddPlan.ascx.cs">
|
||||||
<DependentUpon>HostingPlansAddPlan.ascx</DependentUpon>
|
<DependentUpon>HostingPlansAddPlan.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="HostingPlansAddPlan.ascx.designer.cs">
|
<Compile Include="HostingPlansAddPlan.ascx.designer.cs">
|
||||||
<DependentUpon>HostingPlansAddPlan.ascx</DependentUpon>
|
<DependentUpon>HostingPlansAddPlan.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="HostingPlansEditPlan.ascx.cs">
|
<Compile Include="HostingPlansEditPlan.ascx.cs">
|
||||||
<DependentUpon>HostingPlansEditPlan.ascx</DependentUpon>
|
<DependentUpon>HostingPlansEditPlan.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="HostingPlansEditPlan.ascx.designer.cs">
|
<Compile Include="HostingPlansEditPlan.ascx.designer.cs">
|
||||||
<DependentUpon>HostingPlansEditPlan.ascx</DependentUpon>
|
<DependentUpon>HostingPlansEditPlan.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="NotificationNewInvoice.ascx.cs">
|
<Compile Include="NotificationNewInvoice.ascx.cs">
|
||||||
<DependentUpon>NotificationNewInvoice.ascx</DependentUpon>
|
<DependentUpon>NotificationNewInvoice.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="NotificationNewInvoice.ascx.designer.cs">
|
<Compile Include="NotificationNewInvoice.ascx.designer.cs">
|
||||||
<DependentUpon>NotificationNewInvoice.ascx</DependentUpon>
|
<DependentUpon>NotificationNewInvoice.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="NotificationPaymentReceived.ascx.cs">
|
<Compile Include="NotificationPaymentReceived.ascx.cs">
|
||||||
<DependentUpon>NotificationPaymentReceived.ascx</DependentUpon>
|
<DependentUpon>NotificationPaymentReceived.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="NotificationPaymentReceived.ascx.designer.cs">
|
<Compile Include="NotificationPaymentReceived.ascx.designer.cs">
|
||||||
<DependentUpon>NotificationPaymentReceived.ascx</DependentUpon>
|
<DependentUpon>NotificationPaymentReceived.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="NotificationServiceActivated.ascx.cs">
|
<Compile Include="NotificationServiceActivated.ascx.cs">
|
||||||
<DependentUpon>NotificationServiceActivated.ascx</DependentUpon>
|
<DependentUpon>NotificationServiceActivated.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="NotificationServiceActivated.ascx.designer.cs">
|
<Compile Include="NotificationServiceActivated.ascx.designer.cs">
|
||||||
<DependentUpon>NotificationServiceActivated.ascx</DependentUpon>
|
<DependentUpon>NotificationServiceActivated.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="NotificationServiceCancelled.ascx.cs">
|
<Compile Include="NotificationServiceCancelled.ascx.cs">
|
||||||
<DependentUpon>NotificationServiceCancelled.ascx</DependentUpon>
|
<DependentUpon>NotificationServiceCancelled.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="NotificationServiceCancelled.ascx.designer.cs">
|
<Compile Include="NotificationServiceCancelled.ascx.designer.cs">
|
||||||
<DependentUpon>NotificationServiceCancelled.ascx</DependentUpon>
|
<DependentUpon>NotificationServiceCancelled.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="NotificationServiceSuspended.ascx.cs">
|
<Compile Include="NotificationServiceSuspended.ascx.cs">
|
||||||
<DependentUpon>NotificationServiceSuspended.ascx</DependentUpon>
|
<DependentUpon>NotificationServiceSuspended.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="NotificationServiceSuspended.ascx.designer.cs">
|
<Compile Include="NotificationServiceSuspended.ascx.designer.cs">
|
||||||
<DependentUpon>NotificationServiceSuspended.ascx</DependentUpon>
|
<DependentUpon>NotificationServiceSuspended.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="OrderFailed.ascx.cs">
|
<Compile Include="OrderFailed.ascx.cs">
|
||||||
<DependentUpon>OrderFailed.ascx</DependentUpon>
|
<DependentUpon>OrderFailed.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="OrderFailed.ascx.designer.cs">
|
<Compile Include="OrderFailed.ascx.designer.cs">
|
||||||
<DependentUpon>OrderFailed.ascx</DependentUpon>
|
<DependentUpon>OrderFailed.ascx</DependentUpon>
|
||||||
|
@ -374,56 +343,48 @@
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="PaymentMethod2Checkout.ascx.cs">
|
<Compile Include="PaymentMethod2Checkout.ascx.cs">
|
||||||
<DependentUpon>PaymentMethod2Checkout.ascx</DependentUpon>
|
<DependentUpon>PaymentMethod2Checkout.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="PaymentMethod2Checkout.ascx.designer.cs">
|
<Compile Include="PaymentMethod2Checkout.ascx.designer.cs">
|
||||||
<DependentUpon>PaymentMethod2Checkout.ascx</DependentUpon>
|
<DependentUpon>PaymentMethod2Checkout.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="PaymentMethodCreditCard.ascx.cs">
|
<Compile Include="PaymentMethodCreditCard.ascx.cs">
|
||||||
<DependentUpon>PaymentMethodCreditCard.ascx</DependentUpon>
|
<DependentUpon>PaymentMethodCreditCard.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="PaymentMethodCreditCard.ascx.designer.cs">
|
<Compile Include="PaymentMethodCreditCard.ascx.designer.cs">
|
||||||
<DependentUpon>PaymentMethodCreditCard.ascx</DependentUpon>
|
<DependentUpon>PaymentMethodCreditCard.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="PaymentMethodOffline.ascx.cs">
|
<Compile Include="PaymentMethodOffline.ascx.cs">
|
||||||
<DependentUpon>PaymentMethodOffline.ascx</DependentUpon>
|
<DependentUpon>PaymentMethodOffline.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="PaymentMethodOffline.ascx.designer.cs">
|
<Compile Include="PaymentMethodOffline.ascx.designer.cs">
|
||||||
<DependentUpon>PaymentMethodOffline.ascx</DependentUpon>
|
<DependentUpon>PaymentMethodOffline.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="PaymentMethodPayPalAccount.ascx.cs">
|
<Compile Include="PaymentMethodPayPalAccount.ascx.cs">
|
||||||
<DependentUpon>PaymentMethodPayPalAccount.ascx</DependentUpon>
|
<DependentUpon>PaymentMethodPayPalAccount.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="PaymentMethodPayPalAccount.ascx.designer.cs">
|
<Compile Include="PaymentMethodPayPalAccount.ascx.designer.cs">
|
||||||
<DependentUpon>PaymentMethodPayPalAccount.ascx</DependentUpon>
|
<DependentUpon>PaymentMethodPayPalAccount.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="PaymentMethods\2CO_Payment.ascx.cs">
|
<Compile Include="PaymentMethods\2CO_Payment.ascx.cs">
|
||||||
<DependentUpon>2CO_Payment.ascx</DependentUpon>
|
<DependentUpon>2CO_Payment.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="PaymentMethods\2CO_Payment.ascx.designer.cs">
|
<Compile Include="PaymentMethods\2CO_Payment.ascx.designer.cs">
|
||||||
<DependentUpon>2CO_Payment.ascx</DependentUpon>
|
<DependentUpon>2CO_Payment.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="PaymentMethods\CreditCard_Payment.ascx.cs">
|
<Compile Include="PaymentMethods\CreditCard_Payment.ascx.cs">
|
||||||
<DependentUpon>CreditCard_Payment.ascx</DependentUpon>
|
<DependentUpon>CreditCard_Payment.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="PaymentMethods\CreditCard_Payment.ascx.designer.cs">
|
<Compile Include="PaymentMethods\CreditCard_Payment.ascx.designer.cs">
|
||||||
<DependentUpon>CreditCard_Payment.ascx</DependentUpon>
|
<DependentUpon>CreditCard_Payment.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="PaymentMethods\Offline_Payment.ascx.cs">
|
<Compile Include="PaymentMethods\Offline_Payment.ascx.cs">
|
||||||
<DependentUpon>Offline_Payment.ascx</DependentUpon>
|
<DependentUpon>Offline_Payment.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="PaymentMethods\Offline_Payment.ascx.designer.cs">
|
<Compile Include="PaymentMethods\Offline_Payment.ascx.designer.cs">
|
||||||
<DependentUpon>Offline_Payment.ascx</DependentUpon>
|
<DependentUpon>Offline_Payment.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="PaymentMethods\PPAccount_Payment.ascx.cs">
|
<Compile Include="PaymentMethods\PPAccount_Payment.ascx.cs">
|
||||||
<DependentUpon>PPAccount_Payment.ascx</DependentUpon>
|
<DependentUpon>PPAccount_Payment.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="PaymentMethods\PPAccount_Payment.ascx.designer.cs">
|
<Compile Include="PaymentMethods\PPAccount_Payment.ascx.designer.cs">
|
||||||
<DependentUpon>PPAccount_Payment.ascx</DependentUpon>
|
<DependentUpon>PPAccount_Payment.ascx</DependentUpon>
|
||||||
|
@ -437,35 +398,30 @@
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="ProductControls\DomainName_ServiceDetails.ascx.cs">
|
<Compile Include="ProductControls\DomainName_ServiceDetails.ascx.cs">
|
||||||
<DependentUpon>DomainName_ServiceDetails.ascx</DependentUpon>
|
<DependentUpon>DomainName_ServiceDetails.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="ProductControls\DomainName_ServiceDetails.ascx.designer.cs">
|
<Compile Include="ProductControls\DomainName_ServiceDetails.ascx.designer.cs">
|
||||||
<DependentUpon>DomainName_ServiceDetails.ascx</DependentUpon>
|
<DependentUpon>DomainName_ServiceDetails.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="ProductControls\HostingAddon_ServiceDetails.ascx.cs">
|
<Compile Include="ProductControls\HostingAddon_ServiceDetails.ascx.cs">
|
||||||
<DependentUpon>HostingAddon_ServiceDetails.ascx</DependentUpon>
|
<DependentUpon>HostingAddon_ServiceDetails.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="ProductControls\HostingAddon_ServiceDetails.ascx.designer.cs">
|
<Compile Include="ProductControls\HostingAddon_ServiceDetails.ascx.designer.cs">
|
||||||
<DependentUpon>HostingAddon_ServiceDetails.ascx</DependentUpon>
|
<DependentUpon>HostingAddon_ServiceDetails.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="ProductControls\HostingPlan_Brief.ascx.cs">
|
<Compile Include="ProductControls\HostingPlan_Brief.ascx.cs">
|
||||||
<DependentUpon>HostingPlan_Brief.ascx</DependentUpon>
|
<DependentUpon>HostingPlan_Brief.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="ProductControls\HostingPlan_Brief.ascx.designer.cs">
|
<Compile Include="ProductControls\HostingPlan_Brief.ascx.designer.cs">
|
||||||
<DependentUpon>HostingPlan_Brief.ascx</DependentUpon>
|
<DependentUpon>HostingPlan_Brief.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="ProductControls\HostingPlan_Highlights.ascx.cs">
|
<Compile Include="ProductControls\HostingPlan_Highlights.ascx.cs">
|
||||||
<DependentUpon>HostingPlan_Highlights.ascx</DependentUpon>
|
<DependentUpon>HostingPlan_Highlights.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="ProductControls\HostingPlan_Highlights.ascx.designer.cs">
|
<Compile Include="ProductControls\HostingPlan_Highlights.ascx.designer.cs">
|
||||||
<DependentUpon>HostingPlan_Highlights.ascx</DependentUpon>
|
<DependentUpon>HostingPlan_Highlights.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="ProductControls\HostingPlan_ServiceDetails.ascx.cs">
|
<Compile Include="ProductControls\HostingPlan_ServiceDetails.ascx.cs">
|
||||||
<DependentUpon>HostingPlan_ServiceDetails.ascx</DependentUpon>
|
<DependentUpon>HostingPlan_ServiceDetails.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="ProductControls\HostingPlan_ServiceDetails.ascx.designer.cs">
|
<Compile Include="ProductControls\HostingPlan_ServiceDetails.ascx.designer.cs">
|
||||||
<DependentUpon>HostingPlan_ServiceDetails.ascx</DependentUpon>
|
<DependentUpon>HostingPlan_ServiceDetails.ascx</DependentUpon>
|
||||||
|
@ -473,28 +429,24 @@
|
||||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||||
<Compile Include="ProvisioningSettingsEdit.ascx.cs">
|
<Compile Include="ProvisioningSettingsEdit.ascx.cs">
|
||||||
<DependentUpon>ProvisioningSettingsEdit.ascx</DependentUpon>
|
<DependentUpon>ProvisioningSettingsEdit.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="ProvisioningSettingsEdit.ascx.designer.cs">
|
<Compile Include="ProvisioningSettingsEdit.ascx.designer.cs">
|
||||||
<DependentUpon>ProvisioningSettingsEdit.ascx</DependentUpon>
|
<DependentUpon>ProvisioningSettingsEdit.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="QuickSignup.ascx.cs">
|
<Compile Include="QuickSignup.ascx.cs">
|
||||||
<DependentUpon>QuickSignup.ascx</DependentUpon>
|
<DependentUpon>QuickSignup.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="QuickSignup.ascx.designer.cs">
|
<Compile Include="QuickSignup.ascx.designer.cs">
|
||||||
<DependentUpon>QuickSignup.ascx</DependentUpon>
|
<DependentUpon>QuickSignup.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="OrderComplete.ascx.cs">
|
<Compile Include="OrderComplete.ascx.cs">
|
||||||
<DependentUpon>OrderComplete.ascx</DependentUpon>
|
<DependentUpon>OrderComplete.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="OrderComplete.ascx.designer.cs">
|
<Compile Include="OrderComplete.ascx.designer.cs">
|
||||||
<DependentUpon>OrderComplete.ascx</DependentUpon>
|
<DependentUpon>OrderComplete.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="OrderCheckout.ascx.cs">
|
<Compile Include="OrderCheckout.ascx.cs">
|
||||||
<DependentUpon>OrderCheckout.ascx</DependentUpon>
|
<DependentUpon>OrderCheckout.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="OrderCheckout.ascx.designer.cs">
|
<Compile Include="OrderCheckout.ascx.designer.cs">
|
||||||
<DependentUpon>OrderCheckout.ascx</DependentUpon>
|
<DependentUpon>OrderCheckout.ascx</DependentUpon>
|
||||||
|
@ -506,119 +458,102 @@
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="SkinControls\CatalogBreadCrumb.ascx.cs">
|
<Compile Include="SkinControls\CatalogBreadCrumb.ascx.cs">
|
||||||
<DependentUpon>CatalogBreadCrumb.ascx</DependentUpon>
|
<DependentUpon>CatalogBreadCrumb.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="SkinControls\CatalogBreadCrumb.ascx.designer.cs">
|
<Compile Include="SkinControls\CatalogBreadCrumb.ascx.designer.cs">
|
||||||
<DependentUpon>CatalogBreadCrumb.ascx</DependentUpon>
|
<DependentUpon>CatalogBreadCrumb.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="StorefrontMenu.ascx.cs">
|
<Compile Include="StorefrontMenu.ascx.cs">
|
||||||
<DependentUpon>StorefrontMenu.ascx</DependentUpon>
|
<DependentUpon>StorefrontMenu.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="StorefrontMenu.ascx.designer.cs">
|
<Compile Include="StorefrontMenu.ascx.designer.cs">
|
||||||
<DependentUpon>StorefrontMenu.ascx</DependentUpon>
|
<DependentUpon>StorefrontMenu.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="StorefrontOrderProduct.ascx.cs">
|
<Compile Include="StorefrontOrderProduct.ascx.cs">
|
||||||
<DependentUpon>StorefrontOrderProduct.ascx</DependentUpon>
|
<DependentUpon>StorefrontOrderProduct.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="StorefrontOrderProduct.ascx.designer.cs">
|
<Compile Include="StorefrontOrderProduct.ascx.designer.cs">
|
||||||
<DependentUpon>StorefrontOrderProduct.ascx</DependentUpon>
|
<DependentUpon>StorefrontOrderProduct.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="StorefrontViewCategory.ascx.cs">
|
<Compile Include="StorefrontViewCategory.ascx.cs">
|
||||||
<DependentUpon>StorefrontViewCategory.ascx</DependentUpon>
|
<DependentUpon>StorefrontViewCategory.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="StorefrontViewCategory.ascx.designer.cs">
|
<Compile Include="StorefrontViewCategory.ascx.designer.cs">
|
||||||
<DependentUpon>StorefrontViewCategory.ascx</DependentUpon>
|
<DependentUpon>StorefrontViewCategory.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="StorefrontWelcome.ascx.cs">
|
<Compile Include="StorefrontWelcome.ascx.cs">
|
||||||
<DependentUpon>StorefrontWelcome.ascx</DependentUpon>
|
<DependentUpon>StorefrontWelcome.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="StorefrontWelcome.ascx.designer.cs">
|
<Compile Include="StorefrontWelcome.ascx.designer.cs">
|
||||||
<DependentUpon>StorefrontWelcome.ascx</DependentUpon>
|
<DependentUpon>StorefrontWelcome.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="StorefrontWelcomeEdit.ascx.cs">
|
<Compile Include="StorefrontWelcomeEdit.ascx.cs">
|
||||||
<DependentUpon>StorefrontWelcomeEdit.ascx</DependentUpon>
|
<DependentUpon>StorefrontWelcomeEdit.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="StorefrontWelcomeEdit.ascx.designer.cs">
|
<Compile Include="StorefrontWelcomeEdit.ascx.designer.cs">
|
||||||
<DependentUpon>StorefrontWelcomeEdit.ascx</DependentUpon>
|
<DependentUpon>StorefrontWelcomeEdit.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="SupportedPlugins\2Checkout_Settings.ascx.cs">
|
<Compile Include="SupportedPlugins\2Checkout_Settings.ascx.cs">
|
||||||
<DependentUpon>2Checkout_Settings.ascx</DependentUpon>
|
<DependentUpon>2Checkout_Settings.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="SupportedPlugins\2Checkout_Settings.ascx.designer.cs">
|
<Compile Include="SupportedPlugins\2Checkout_Settings.ascx.designer.cs">
|
||||||
<DependentUpon>2Checkout_Settings.ascx</DependentUpon>
|
<DependentUpon>2Checkout_Settings.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="SupportedPlugins\AuthorizeNet_Settings.ascx.cs">
|
<Compile Include="SupportedPlugins\AuthorizeNet_Settings.ascx.cs">
|
||||||
<DependentUpon>AuthorizeNet_Settings.ascx</DependentUpon>
|
<DependentUpon>AuthorizeNet_Settings.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="SupportedPlugins\AuthorizeNet_Settings.ascx.designer.cs">
|
<Compile Include="SupportedPlugins\AuthorizeNet_Settings.ascx.designer.cs">
|
||||||
<DependentUpon>AuthorizeNet_Settings.ascx</DependentUpon>
|
<DependentUpon>AuthorizeNet_Settings.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="SupportedPlugins\OfflinePayment_Settings.ascx.cs">
|
<Compile Include="SupportedPlugins\OfflinePayment_Settings.ascx.cs">
|
||||||
<DependentUpon>OfflinePayment_Settings.ascx</DependentUpon>
|
<DependentUpon>OfflinePayment_Settings.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="SupportedPlugins\OfflinePayment_Settings.ascx.designer.cs">
|
<Compile Include="SupportedPlugins\OfflinePayment_Settings.ascx.designer.cs">
|
||||||
<DependentUpon>OfflinePayment_Settings.ascx</DependentUpon>
|
<DependentUpon>OfflinePayment_Settings.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="SupportedPlugins\PayPalPro_Settings.ascx.cs">
|
<Compile Include="SupportedPlugins\PayPalPro_Settings.ascx.cs">
|
||||||
<DependentUpon>PayPalPro_Settings.ascx</DependentUpon>
|
<DependentUpon>PayPalPro_Settings.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="SupportedPlugins\PayPalPro_Settings.ascx.designer.cs">
|
<Compile Include="SupportedPlugins\PayPalPro_Settings.ascx.designer.cs">
|
||||||
<DependentUpon>PayPalPro_Settings.ascx</DependentUpon>
|
<DependentUpon>PayPalPro_Settings.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="SupportedPlugins\PayPalStandard_Settings.ascx.cs">
|
<Compile Include="SupportedPlugins\PayPalStandard_Settings.ascx.cs">
|
||||||
<DependentUpon>PayPalStandard_Settings.ascx</DependentUpon>
|
<DependentUpon>PayPalStandard_Settings.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="SupportedPlugins\PayPalStandard_Settings.ascx.designer.cs">
|
<Compile Include="SupportedPlugins\PayPalStandard_Settings.ascx.designer.cs">
|
||||||
<DependentUpon>PayPalStandard_Settings.ascx</DependentUpon>
|
<DependentUpon>PayPalStandard_Settings.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="Taxations.ascx.cs">
|
<Compile Include="Taxations.ascx.cs">
|
||||||
<DependentUpon>Taxations.ascx</DependentUpon>
|
<DependentUpon>Taxations.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="Taxations.ascx.designer.cs">
|
<Compile Include="Taxations.ascx.designer.cs">
|
||||||
<DependentUpon>Taxations.ascx</DependentUpon>
|
<DependentUpon>Taxations.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="TaxationsAddTax.ascx.cs">
|
<Compile Include="TaxationsAddTax.ascx.cs">
|
||||||
<DependentUpon>TaxationsAddTax.ascx</DependentUpon>
|
<DependentUpon>TaxationsAddTax.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="TaxationsAddTax.ascx.designer.cs">
|
<Compile Include="TaxationsAddTax.ascx.designer.cs">
|
||||||
<DependentUpon>TaxationsAddTax.ascx</DependentUpon>
|
<DependentUpon>TaxationsAddTax.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="TaxationsEditTax.ascx.cs">
|
<Compile Include="TaxationsEditTax.ascx.cs">
|
||||||
<DependentUpon>TaxationsEditTax.ascx</DependentUpon>
|
<DependentUpon>TaxationsEditTax.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="TaxationsEditTax.ascx.designer.cs">
|
<Compile Include="TaxationsEditTax.ascx.designer.cs">
|
||||||
<DependentUpon>TaxationsEditTax.ascx</DependentUpon>
|
<DependentUpon>TaxationsEditTax.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="TermsAndConditions.ascx.cs">
|
<Compile Include="TermsAndConditions.ascx.cs">
|
||||||
<DependentUpon>TermsAndConditions.ascx</DependentUpon>
|
<DependentUpon>TermsAndConditions.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="TermsAndConditions.ascx.designer.cs">
|
<Compile Include="TermsAndConditions.ascx.designer.cs">
|
||||||
<DependentUpon>TermsAndConditions.ascx</DependentUpon>
|
<DependentUpon>TermsAndConditions.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="TermsAndConditionsEdit.ascx.cs">
|
<Compile Include="TermsAndConditionsEdit.ascx.cs">
|
||||||
<DependentUpon>TermsAndConditionsEdit.ascx</DependentUpon>
|
<DependentUpon>TermsAndConditionsEdit.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="TermsAndConditionsEdit.ascx.designer.cs">
|
<Compile Include="TermsAndConditionsEdit.ascx.designer.cs">
|
||||||
<DependentUpon>TermsAndConditionsEdit.ascx</DependentUpon>
|
<DependentUpon>TermsAndConditionsEdit.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\AddonProducts.ascx.cs">
|
<Compile Include="UserControls\AddonProducts.ascx.cs">
|
||||||
<DependentUpon>AddonProducts.ascx</DependentUpon>
|
<DependentUpon>AddonProducts.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\AddonProducts.ascx.designer.cs">
|
<Compile Include="UserControls\AddonProducts.ascx.designer.cs">
|
||||||
<DependentUpon>AddonProducts.ascx</DependentUpon>
|
<DependentUpon>AddonProducts.ascx</DependentUpon>
|
||||||
|
@ -635,140 +570,120 @@
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\ChoosePaymentMethod.ascx.cs">
|
<Compile Include="UserControls\ChoosePaymentMethod.ascx.cs">
|
||||||
<DependentUpon>ChoosePaymentMethod.ascx</DependentUpon>
|
<DependentUpon>ChoosePaymentMethod.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\ChoosePaymentMethod.ascx.designer.cs">
|
<Compile Include="UserControls\ChoosePaymentMethod.ascx.designer.cs">
|
||||||
<DependentUpon>ChoosePaymentMethod.ascx</DependentUpon>
|
<DependentUpon>ChoosePaymentMethod.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\CreateUserAccount.ascx.cs">
|
<Compile Include="UserControls\CreateUserAccount.ascx.cs">
|
||||||
<DependentUpon>CreateUserAccount.ascx</DependentUpon>
|
<DependentUpon>CreateUserAccount.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\CreateUserAccount.ascx.designer.cs">
|
<Compile Include="UserControls\CreateUserAccount.ascx.designer.cs">
|
||||||
<DependentUpon>CreateUserAccount.ascx</DependentUpon>
|
<DependentUpon>CreateUserAccount.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\CustomerInvoiceTemplated.ascx.cs">
|
<Compile Include="UserControls\CustomerInvoiceTemplated.ascx.cs">
|
||||||
<DependentUpon>CustomerInvoiceTemplated.ascx</DependentUpon>
|
<DependentUpon>CustomerInvoiceTemplated.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\CustomerInvoiceTemplated.ascx.designer.cs">
|
<Compile Include="UserControls\CustomerInvoiceTemplated.ascx.designer.cs">
|
||||||
<DependentUpon>CustomerInvoiceTemplated.ascx</DependentUpon>
|
<DependentUpon>CustomerInvoiceTemplated.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\DomainNameBillingCycles.ascx.cs">
|
<Compile Include="UserControls\DomainNameBillingCycles.ascx.cs">
|
||||||
<DependentUpon>DomainNameBillingCycles.ascx</DependentUpon>
|
<DependentUpon>DomainNameBillingCycles.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\DomainNameBillingCycles.ascx.designer.cs">
|
<Compile Include="UserControls\DomainNameBillingCycles.ascx.designer.cs">
|
||||||
<DependentUpon>DomainNameBillingCycles.ascx</DependentUpon>
|
<DependentUpon>DomainNameBillingCycles.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\EmailNotificationEditor.ascx.cs">
|
<Compile Include="UserControls\EmailNotificationEditor.ascx.cs">
|
||||||
<DependentUpon>EmailNotificationEditor.ascx</DependentUpon>
|
<DependentUpon>EmailNotificationEditor.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\EmailNotificationEditor.ascx.designer.cs">
|
<Compile Include="UserControls\EmailNotificationEditor.ascx.designer.cs">
|
||||||
<DependentUpon>EmailNotificationEditor.ascx</DependentUpon>
|
<DependentUpon>EmailNotificationEditor.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\HostingAddonOneTimeFee.ascx.cs">
|
<Compile Include="UserControls\HostingAddonOneTimeFee.ascx.cs">
|
||||||
<DependentUpon>HostingAddonOneTimeFee.ascx</DependentUpon>
|
<DependentUpon>HostingAddonOneTimeFee.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\HostingAddonOneTimeFee.ascx.designer.cs">
|
<Compile Include="UserControls\HostingAddonOneTimeFee.ascx.designer.cs">
|
||||||
<DependentUpon>HostingAddonOneTimeFee.ascx</DependentUpon>
|
<DependentUpon>HostingAddonOneTimeFee.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\HostingPlanBillingCycles.ascx.cs">
|
<Compile Include="UserControls\HostingPlanBillingCycles.ascx.cs">
|
||||||
<DependentUpon>HostingPlanBillingCycles.ascx</DependentUpon>
|
<DependentUpon>HostingPlanBillingCycles.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\HostingPlanBillingCycles.ascx.designer.cs">
|
<Compile Include="UserControls\HostingPlanBillingCycles.ascx.designer.cs">
|
||||||
<DependentUpon>HostingPlanBillingCycles.ascx</DependentUpon>
|
<DependentUpon>HostingPlanBillingCycles.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\HostingPlanQuotas.ascx.cs">
|
<Compile Include="UserControls\HostingPlanQuotas.ascx.cs">
|
||||||
<DependentUpon>HostingPlanQuotas.ascx</DependentUpon>
|
<DependentUpon>HostingPlanQuotas.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\HostingPlanQuotas.ascx.designer.cs">
|
<Compile Include="UserControls\HostingPlanQuotas.ascx.designer.cs">
|
||||||
<DependentUpon>HostingPlanQuotas.ascx</DependentUpon>
|
<DependentUpon>HostingPlanQuotas.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\LoginUserAccount.ascx.cs">
|
<Compile Include="UserControls\LoginUserAccount.ascx.cs">
|
||||||
<DependentUpon>LoginUserAccount.ascx</DependentUpon>
|
<DependentUpon>LoginUserAccount.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\LoginUserAccount.ascx.designer.cs">
|
<Compile Include="UserControls\LoginUserAccount.ascx.designer.cs">
|
||||||
<DependentUpon>LoginUserAccount.ascx</DependentUpon>
|
<DependentUpon>LoginUserAccount.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\ManualPaymentAdd.ascx.cs">
|
<Compile Include="UserControls\ManualPaymentAdd.ascx.cs">
|
||||||
<DependentUpon>ManualPaymentAdd.ascx</DependentUpon>
|
<DependentUpon>ManualPaymentAdd.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\ManualPaymentAdd.ascx.designer.cs">
|
<Compile Include="UserControls\ManualPaymentAdd.ascx.designer.cs">
|
||||||
<DependentUpon>ManualPaymentAdd.ascx</DependentUpon>
|
<DependentUpon>ManualPaymentAdd.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\PlanDomainOption.ascx.cs">
|
<Compile Include="UserControls\PlanDomainOption.ascx.cs">
|
||||||
<DependentUpon>PlanDomainOption.ascx</DependentUpon>
|
<DependentUpon>PlanDomainOption.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\PlanDomainOption.ascx.designer.cs">
|
<Compile Include="UserControls\PlanDomainOption.ascx.designer.cs">
|
||||||
<DependentUpon>PlanDomainOption.ascx</DependentUpon>
|
<DependentUpon>PlanDomainOption.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\PlanHostingAddons.ascx.cs">
|
<Compile Include="UserControls\PlanHostingAddons.ascx.cs">
|
||||||
<DependentUpon>PlanHostingAddons.ascx</DependentUpon>
|
<DependentUpon>PlanHostingAddons.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\PlanHostingAddons.ascx.designer.cs">
|
<Compile Include="UserControls\PlanHostingAddons.ascx.designer.cs">
|
||||||
<DependentUpon>PlanHostingAddons.ascx</DependentUpon>
|
<DependentUpon>PlanHostingAddons.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\ProductHighlights.ascx.cs">
|
<Compile Include="UserControls\ProductHighlights.ascx.cs">
|
||||||
<DependentUpon>ProductHighlights.ascx</DependentUpon>
|
<DependentUpon>ProductHighlights.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\ProductHighlights.ascx.designer.cs">
|
<Compile Include="UserControls\ProductHighlights.ascx.designer.cs">
|
||||||
<DependentUpon>ProductHighlights.ascx</DependentUpon>
|
<DependentUpon>ProductHighlights.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\QuickHostingAddon.ascx.cs">
|
<Compile Include="UserControls\QuickHostingAddon.ascx.cs">
|
||||||
<DependentUpon>QuickHostingAddon.ascx</DependentUpon>
|
<DependentUpon>QuickHostingAddon.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\QuickHostingAddon.ascx.designer.cs">
|
<Compile Include="UserControls\QuickHostingAddon.ascx.designer.cs">
|
||||||
<DependentUpon>QuickHostingAddon.ascx</DependentUpon>
|
<DependentUpon>QuickHostingAddon.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\QuickHostingPlanCycles.ascx.cs">
|
<Compile Include="UserControls\QuickHostingPlanCycles.ascx.cs">
|
||||||
<DependentUpon>QuickHostingPlanCycles.ascx</DependentUpon>
|
<DependentUpon>QuickHostingPlanCycles.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\QuickHostingPlanCycles.ascx.designer.cs">
|
<Compile Include="UserControls\QuickHostingPlanCycles.ascx.designer.cs">
|
||||||
<DependentUpon>QuickHostingPlanCycles.ascx</DependentUpon>
|
<DependentUpon>QuickHostingPlanCycles.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\QuickHostingPlans.ascx.cs">
|
<Compile Include="UserControls\QuickHostingPlans.ascx.cs">
|
||||||
<DependentUpon>QuickHostingPlans.ascx</DependentUpon>
|
<DependentUpon>QuickHostingPlans.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\QuickHostingPlans.ascx.designer.cs">
|
<Compile Include="UserControls\QuickHostingPlans.ascx.designer.cs">
|
||||||
<DependentUpon>QuickHostingPlans.ascx</DependentUpon>
|
<DependentUpon>QuickHostingPlans.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\PathBreadCrumb.ascx.cs">
|
<Compile Include="UserControls\PathBreadCrumb.ascx.cs">
|
||||||
<DependentUpon>PathBreadCrumb.ascx</DependentUpon>
|
<DependentUpon>PathBreadCrumb.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\PathBreadCrumb.ascx.designer.cs">
|
<Compile Include="UserControls\PathBreadCrumb.ascx.designer.cs">
|
||||||
<DependentUpon>PathBreadCrumb.ascx</DependentUpon>
|
<DependentUpon>PathBreadCrumb.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\ProductCategories.ascx.cs">
|
<Compile Include="UserControls\ProductCategories.ascx.cs">
|
||||||
<DependentUpon>ProductCategories.ascx</DependentUpon>
|
<DependentUpon>ProductCategories.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\ProductCategories.ascx.designer.cs">
|
<Compile Include="UserControls\ProductCategories.ascx.designer.cs">
|
||||||
<DependentUpon>ProductCategories.ascx</DependentUpon>
|
<DependentUpon>ProductCategories.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\UserAccountDetails.ascx.cs">
|
<Compile Include="UserControls\UserAccountDetails.ascx.cs">
|
||||||
<DependentUpon>UserAccountDetails.ascx</DependentUpon>
|
<DependentUpon>UserAccountDetails.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="UserControls\UserAccountDetails.ascx.designer.cs">
|
<Compile Include="UserControls\UserAccountDetails.ascx.designer.cs">
|
||||||
<DependentUpon>UserAccountDetails.ascx</DependentUpon>
|
<DependentUpon>UserAccountDetails.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="ViewProductDetails.ascx.cs">
|
<Compile Include="ViewProductDetails.ascx.cs">
|
||||||
<DependentUpon>ViewProductDetails.ascx</DependentUpon>
|
<DependentUpon>ViewProductDetails.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="ViewProductDetails.ascx.designer.cs">
|
<Compile Include="ViewProductDetails.ascx.designer.cs">
|
||||||
<DependentUpon>ViewProductDetails.ascx</DependentUpon>
|
<DependentUpon>ViewProductDetails.ascx</DependentUpon>
|
||||||
|
|
|
@ -207,4 +207,7 @@
|
||||||
<data name="lblEnterpriseStorage.Text" xml:space="preserve">
|
<data name="lblEnterpriseStorage.Text" xml:space="preserve">
|
||||||
<value>Enterprise Storage, MB:</value>
|
<value>Enterprise Storage, MB:</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="lblDeletedUsers.Text" xml:space="preserve">
|
||||||
|
<value>Deleted Users:</value>
|
||||||
|
</data>
|
||||||
</root>
|
</root>
|
|
@ -261,4 +261,7 @@
|
||||||
<data name="Text.RDSServers" xml:space="preserve">
|
<data name="Text.RDSServers" xml:space="preserve">
|
||||||
<value>RDS Servers</value>
|
<value>RDS Servers</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="Text.DeletedUsers" xml:space="preserve">
|
||||||
|
<value>Deleted Users</value>
|
||||||
|
</data>
|
||||||
</root>
|
</root>
|
|
@ -95,6 +95,30 @@ namespace WebsitePanel.Portal
|
||||||
return users.PageUsers;
|
return users.PageUsers;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
OrganizationDeletedUsersPaged deletedUsers;
|
||||||
|
|
||||||
|
public int GetOrganizationDeletedUsersPagedCount(int itemId,
|
||||||
|
string filterColumn, string filterValue)
|
||||||
|
{
|
||||||
|
return deletedUsers.RecordsCount;
|
||||||
|
}
|
||||||
|
|
||||||
|
public OrganizationDeletedUser[] GetOrganizationDeletedUsersPaged(int itemId,
|
||||||
|
string filterColumn, string filterValue,
|
||||||
|
int maximumRows, int startRowIndex, string sortColumn)
|
||||||
|
{
|
||||||
|
if (!String.IsNullOrEmpty(filterValue))
|
||||||
|
filterValue = filterValue + "%";
|
||||||
|
if (maximumRows == 0)
|
||||||
|
{
|
||||||
|
maximumRows = Int32.MaxValue;
|
||||||
|
}
|
||||||
|
|
||||||
|
deletedUsers = ES.Services.Organizations.GetOrganizationDeletedUsersPaged(itemId, filterColumn, filterValue, sortColumn, startRowIndex, maximumRows);
|
||||||
|
|
||||||
|
return deletedUsers.PageDeletedUsers;
|
||||||
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region Security Groups
|
#region Security Groups
|
||||||
|
|
|
@ -222,4 +222,7 @@
|
||||||
<data name="secMailboxPlanArchiving.Text" xml:space="preserve">
|
<data name="secMailboxPlanArchiving.Text" xml:space="preserve">
|
||||||
<value>Retention policy</value>
|
<value>Retention policy</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="chkEnableForceArchiveDeletion" xml:space="preserve">
|
||||||
|
<value>Force Archive on Mailbox Deletion</value>
|
||||||
|
</data>
|
||||||
</root>
|
</root>
|
|
@ -0,0 +1,231 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<data name="chkDisable.Text" xml:space="preserve">
|
||||||
|
<value>Disable User</value>
|
||||||
|
</data>
|
||||||
|
<data name="chkLocked.Text" xml:space="preserve">
|
||||||
|
<value>Account is locked out</value>
|
||||||
|
</data>
|
||||||
|
<data name="locAddress.Text" xml:space="preserve">
|
||||||
|
<value>Address:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locBusinessPhone.Text" xml:space="preserve">
|
||||||
|
<value>Business Phone:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locCity.Text" xml:space="preserve">
|
||||||
|
<value>City:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locCompany.Text" xml:space="preserve">
|
||||||
|
<value>Company:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locCountry.Text" xml:space="preserve">
|
||||||
|
<value>Country/Region:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locDepartment.Text" xml:space="preserve">
|
||||||
|
<value>Department:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locDisplayName.Text" xml:space="preserve">
|
||||||
|
<value>Display Name: *</value>
|
||||||
|
</data>
|
||||||
|
<data name="locExternalEmailAddress.Text" xml:space="preserve">
|
||||||
|
<value>External e-mail:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locFax.Text" xml:space="preserve">
|
||||||
|
<value>Fax:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locFirstName.Text" xml:space="preserve">
|
||||||
|
<value>First Name:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locHomePhone.Text" xml:space="preserve">
|
||||||
|
<value>Home Phone:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locInitials.Text" xml:space="preserve">
|
||||||
|
<value>Initials:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locJobTitle.Text" xml:space="preserve">
|
||||||
|
<value>Job Title:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locLastName.Text" xml:space="preserve">
|
||||||
|
<value>Last Name:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locManager.Text" xml:space="preserve">
|
||||||
|
<value>Manager:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locMobilePhone.Text" xml:space="preserve">
|
||||||
|
<value>Mobile Phone:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locNotes.Text" xml:space="preserve">
|
||||||
|
<value>Notes:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locOffice.Text" xml:space="preserve">
|
||||||
|
<value>Office:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locPager.Text" xml:space="preserve">
|
||||||
|
<value>Pager:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locState.Text" xml:space="preserve">
|
||||||
|
<value>State/Province:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locSubscriberNumber.Text" xml:space="preserve">
|
||||||
|
<value>Account Number:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locTitle.Text" xml:space="preserve">
|
||||||
|
<value>Deleted User</value>
|
||||||
|
</data>
|
||||||
|
<data name="locUserDomainName.Text" xml:space="preserve">
|
||||||
|
<value>User Domain Name:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locWebPage.Text" xml:space="preserve">
|
||||||
|
<value>Web Page:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locZip.Text" xml:space="preserve">
|
||||||
|
<value>Zip/Postal Code:</value>
|
||||||
|
</data>
|
||||||
|
<data name="secAddressInfo.Text" xml:space="preserve">
|
||||||
|
<value>Address</value>
|
||||||
|
</data>
|
||||||
|
<data name="secAdvanced.Text" xml:space="preserve">
|
||||||
|
<value>Advanced</value>
|
||||||
|
</data>
|
||||||
|
<data name="secCompanyInfo.Text" xml:space="preserve">
|
||||||
|
<value>Company Information</value>
|
||||||
|
</data>
|
||||||
|
<data name="secContactInfo.Text" xml:space="preserve">
|
||||||
|
<value>Contact Information</value>
|
||||||
|
</data>
|
||||||
|
<data name="Text.PageName" xml:space="preserve">
|
||||||
|
<value>Deleted User</value>
|
||||||
|
</data>
|
||||||
|
<data name="lblUserPrincipalName" xml:space="preserve">
|
||||||
|
<value>Login Name:</value>
|
||||||
|
</data>
|
||||||
|
<data name="chkInherit.Text" xml:space="preserve">
|
||||||
|
<value>Update Services</value>
|
||||||
|
</data>
|
||||||
|
<data name="locServiceLevel.Text" xml:space="preserve">
|
||||||
|
<value>Service Level:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locVIPUser.Text" xml:space="preserve">
|
||||||
|
<value>VIP:</value>
|
||||||
|
</data>
|
||||||
|
<data name="secServiceLevels.Text" xml:space="preserve">
|
||||||
|
<value>Service Level Information</value>
|
||||||
|
</data>
|
||||||
|
</root>
|
|
@ -0,0 +1,129 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<data name="locTitle.Text" xml:space="preserve">
|
||||||
|
<value>Deleted User </value>
|
||||||
|
</data>
|
||||||
|
<data name="secGeneral.Text" xml:space="preserve">
|
||||||
|
<value>General</value>
|
||||||
|
</data>
|
||||||
|
<data name="Text.PageName" xml:space="preserve">
|
||||||
|
<value>Deleted User</value>
|
||||||
|
</data>
|
||||||
|
</root>
|
|
@ -0,0 +1,180 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<data name="cmdDelete.OnClientClick" xml:space="preserve">
|
||||||
|
<value>if(!confirm('Are you sure you want to delete this user?')) return false; else ShowProgressDialog('Deleting user...');</value>
|
||||||
|
</data>
|
||||||
|
<data name="cmdDelete.Text" xml:space="preserve">
|
||||||
|
<value>Delete</value>
|
||||||
|
</data>
|
||||||
|
<data name="cmdDelete.ToolTip" xml:space="preserve">
|
||||||
|
<value>Delete User</value>
|
||||||
|
</data>
|
||||||
|
<data name="cmdSearch.AlternateText" xml:space="preserve">
|
||||||
|
<value>Search</value>
|
||||||
|
</data>
|
||||||
|
<data name="ddlSearchColumnAccountName.Text" xml:space="preserve">
|
||||||
|
<value>Domain Account</value>
|
||||||
|
</data>
|
||||||
|
<data name="ddlSearchColumnDisplayName.Text" xml:space="preserve">
|
||||||
|
<value>Display Name</value>
|
||||||
|
</data>
|
||||||
|
<data name="ddlSearchColumnEmail.Text" xml:space="preserve">
|
||||||
|
<value>E-mail Address</value>
|
||||||
|
</data>
|
||||||
|
<data name="ddlSearchColumnSubscriberNumber" xml:space="preserve">
|
||||||
|
<value>Account Number</value>
|
||||||
|
</data>
|
||||||
|
<data name="gvSubscriberNumber.Header" xml:space="preserve">
|
||||||
|
<value>Subscriber</value>
|
||||||
|
</data>
|
||||||
|
<data name="gvDeletedUsers.Empty" xml:space="preserve">
|
||||||
|
<value>No users have been deleted.</value>
|
||||||
|
</data>
|
||||||
|
<data name="gvDeletedUsersDisplayName.Header" xml:space="preserve">
|
||||||
|
<value>Display Name</value>
|
||||||
|
</data>
|
||||||
|
<data name="gvDeletedUsersEmail.Header" xml:space="preserve">
|
||||||
|
<value>Primary E-mail Address</value>
|
||||||
|
</data>
|
||||||
|
<data name="locQuota.Text" xml:space="preserve">
|
||||||
|
<value>Total Deleted Users in this Organization:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locTitle.Text" xml:space="preserve">
|
||||||
|
<value>Deleted Users</value>
|
||||||
|
</data>
|
||||||
|
<data name="Text.PageName" xml:space="preserve">
|
||||||
|
<value>Deleted Users</value>
|
||||||
|
</data>
|
||||||
|
<data name="locTenantAvailable.Text" xml:space="preserve">
|
||||||
|
<value>Available Deleted Users for this Tenant:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locTenantQuota.Text" xml:space="preserve">
|
||||||
|
<value>Total Deleted Users for this Tenant:</value>
|
||||||
|
</data>
|
||||||
|
<data name="ddlSearchColumnUserPrincipalName.Text" xml:space="preserve">
|
||||||
|
<value>Login</value>
|
||||||
|
</data>
|
||||||
|
<data name="gvDeletedUsersLogin.Header" xml:space="preserve">
|
||||||
|
<value>Login</value>
|
||||||
|
</data>
|
||||||
|
<data name="gvServiceLevel.Header" xml:space="preserve">
|
||||||
|
<value>Service Level</value>
|
||||||
|
</data>
|
||||||
|
</root>
|
|
@ -222,6 +222,9 @@
|
||||||
<data name="locServiceLevels.Text" xml:space="preserve">
|
<data name="locServiceLevels.Text" xml:space="preserve">
|
||||||
<value>Service Levels</value>
|
<value>Service Levels</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="lnkDeletedUsers.Text" xml:space="preserve">
|
||||||
|
<value>Deleted Users:</value>
|
||||||
|
</data>
|
||||||
<data name="locRemoteDesktop.Text" xml:space="preserve">
|
<data name="locRemoteDesktop.Text" xml:space="preserve">
|
||||||
<value>Remote Desktop</value>
|
<value>Remote Desktop</value>
|
||||||
</data>
|
</data>
|
||||||
|
|
|
@ -120,7 +120,7 @@
|
||||||
<data name="btnCreateUser.Text" xml:space="preserve">
|
<data name="btnCreateUser.Text" xml:space="preserve">
|
||||||
<value>Create New User</value>
|
<value>Create New User</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="cmdDelete.OnClientClick" xml:space="preserve">
|
<data name="cmdDelete1.OnClientClick" xml:space="preserve">
|
||||||
<value>if(!confirm('Are you sure you want to delete this user?')) return false; else ShowProgressDialog('Deleting user...');</value>
|
<value>if(!confirm('Are you sure you want to delete this user?')) return false; else ShowProgressDialog('Deleting user...');</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="cmdDelete.Text" xml:space="preserve">
|
<data name="cmdDelete.Text" xml:space="preserve">
|
||||||
|
@ -183,4 +183,22 @@
|
||||||
<data name="gvServiceLevel.Header" xml:space="preserve">
|
<data name="gvServiceLevel.Header" xml:space="preserve">
|
||||||
<value>Service Level</value>
|
<value>Service Level</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="btnCancel.Text" xml:space="preserve">
|
||||||
|
<value>Cancel</value>
|
||||||
|
</data>
|
||||||
|
<data name="btnDelete.OnClientClick" xml:space="preserve">
|
||||||
|
<value>ShowProgressDialog('Deleting user...');</value>
|
||||||
|
</data>
|
||||||
|
<data name="btnDelete.Text" xml:space="preserve">
|
||||||
|
<value>Delete</value>
|
||||||
|
</data>
|
||||||
|
<data name="chkEnableForceArchiveMailbox.Text" xml:space="preserve">
|
||||||
|
<value>Archive Mailboxes</value>
|
||||||
|
</data>
|
||||||
|
<data name="headerDeleteUser.Text" xml:space="preserve">
|
||||||
|
<value>Delete User</value>
|
||||||
|
</data>
|
||||||
|
<data name="litDeleteUser.text" xml:space="preserve">
|
||||||
|
<value>Are you sure you want to delete this user?</value>
|
||||||
|
</data>
|
||||||
</root>
|
</root>
|
|
@ -248,7 +248,11 @@
|
||||||
<wsp:SizeBox id="archiveWarningQuota" runat="server" DisplayUnitsKB="false" DisplayUnitsMB="false" DisplayUnitsPct="true" RequireValidatorEnabled="true"/>
|
<wsp:SizeBox id="archiveWarningQuota" runat="server" DisplayUnitsKB="false" DisplayUnitsMB="false" DisplayUnitsPct="true" RequireValidatorEnabled="true"/>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="FormLabel200" colspan="2">
|
||||||
|
<asp:CheckBox ID="chkEnableForceArchiveDeletion" runat="server" meta:resourcekey="chkEnableForceArchiveDeletion" Text="Force Archive on Mailbox Deletion"></asp:CheckBox>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<br />
|
<br />
|
||||||
</asp:Panel>
|
</asp:Panel>
|
||||||
|
|
|
@ -123,7 +123,7 @@ namespace WebsitePanel.Portal.ExchangeServer
|
||||||
chkEnableArchiving.Checked = plan.EnableArchiving;
|
chkEnableArchiving.Checked = plan.EnableArchiving;
|
||||||
archiveQuota.QuotaValue = plan.ArchiveSizeMB;
|
archiveQuota.QuotaValue = plan.ArchiveSizeMB;
|
||||||
archiveWarningQuota.ValueKB = plan.ArchiveWarningPct;
|
archiveWarningQuota.ValueKB = plan.ArchiveWarningPct;
|
||||||
|
chkEnableForceArchiveDeletion.Checked = plan.EnableForceArchiveDeletion;
|
||||||
}
|
}
|
||||||
|
|
||||||
locTitle.Text = plan.MailboxPlan;
|
locTitle.Text = plan.MailboxPlan;
|
||||||
|
@ -315,11 +315,13 @@ namespace WebsitePanel.Portal.ExchangeServer
|
||||||
plan.LitigationHoldUrl = txtLitigationHoldUrl.Text.Trim();
|
plan.LitigationHoldUrl = txtLitigationHoldUrl.Text.Trim();
|
||||||
|
|
||||||
plan.EnableArchiving = chkEnableArchiving.Checked;
|
plan.EnableArchiving = chkEnableArchiving.Checked;
|
||||||
|
|
||||||
plan.ArchiveSizeMB = archiveQuota.QuotaValue;
|
plan.ArchiveSizeMB = archiveQuota.QuotaValue;
|
||||||
plan.ArchiveWarningPct = archiveWarningQuota.ValueKB;
|
plan.ArchiveWarningPct = archiveWarningQuota.ValueKB;
|
||||||
if ((plan.ArchiveWarningPct == 0)) plan.ArchiveWarningPct = 100;
|
if ((plan.ArchiveWarningPct == 0))
|
||||||
|
{
|
||||||
|
plan.ArchiveWarningPct = 100;
|
||||||
|
}
|
||||||
|
plan.EnableForceArchiveDeletion = chkEnableForceArchiveDeletion.Checked;
|
||||||
}
|
}
|
||||||
|
|
||||||
int planId = ES.Services.ExchangeServer.AddExchangeMailboxPlan(PanelRequest.ItemID,
|
int planId = ES.Services.ExchangeServer.AddExchangeMailboxPlan(PanelRequest.ItemID,
|
||||||
|
|
|
@ -562,6 +562,15 @@ namespace WebsitePanel.Portal.ExchangeServer {
|
||||||
/// </remarks>
|
/// </remarks>
|
||||||
protected global::WebsitePanel.Portal.ExchangeServer.UserControls.SizeBox archiveWarningQuota;
|
protected global::WebsitePanel.Portal.ExchangeServer.UserControls.SizeBox archiveWarningQuota;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// chkEnableForceArchiveDeletion control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.CheckBox chkEnableForceArchiveDeletion;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// secRetentionPolicyTags control.
|
/// secRetentionPolicyTags control.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
|
@ -0,0 +1,317 @@
|
||||||
|
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="OrganizationDeletedUserGeneralSettings.ascx.cs" Inherits="WebsitePanel.Portal.HostedSolution.DeletedUserGeneralSettings" %>
|
||||||
|
<%@ Register Src="UserControls/UserSelector.ascx" TagName="UserSelector" TagPrefix="wsp" %>
|
||||||
|
<%@ Register Src="UserControls/CountrySelector.ascx" TagName="CountrySelector" TagPrefix="wsp" %>
|
||||||
|
<%@ Register Src="../UserControls/SimpleMessageBox.ascx" TagName="SimpleMessageBox" TagPrefix="wsp" %>
|
||||||
|
|
||||||
|
<%@ Register Src="../UserControls/PasswordControl.ascx" TagName="PasswordControl" TagPrefix="wsp" %>
|
||||||
|
<%@ Register Src="../UserControls/CollapsiblePanel.ascx" TagName="CollapsiblePanel" TagPrefix="wsp" %>
|
||||||
|
<%@ Register Src="../UserControls/EnableAsyncTasksSupport.ascx" TagName="EnableAsyncTasksSupport" TagPrefix="wsp" %>
|
||||||
|
<%@ Register Src="UserControls/EmailAddress.ascx" TagName="EmailAddress" TagPrefix="wsp" %>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<%@ Register src="UserControls/DeletedUserTabs.ascx" tagname="UserTabs" tagprefix="uc1" %>
|
||||||
|
<%@ Register src="UserControls/MailboxTabs.ascx" tagname="MailboxTabs" tagprefix="uc1" %>
|
||||||
|
|
||||||
|
<%@ Register Src="../UserControls/ItemButtonPanel.ascx" TagName="ItemButtonPanel" TagPrefix="wsp" %>
|
||||||
|
|
||||||
|
|
||||||
|
<wsp:EnableAsyncTasksSupport id="asyncTasks" runat="server"/>
|
||||||
|
|
||||||
|
<div id="ExchangeContainer">
|
||||||
|
<div class="Module">
|
||||||
|
<div class="Left">
|
||||||
|
</div>
|
||||||
|
<div class="Content">
|
||||||
|
<div class="Center">
|
||||||
|
<div class="Title">
|
||||||
|
<asp:Image ID="Image1" SkinID="OrganizationUser48" runat="server" />
|
||||||
|
<asp:Localize ID="locTitle" runat="server" meta:resourcekey="locTitle" Text="Deleted User"></asp:Localize>
|
||||||
|
-
|
||||||
|
<asp:Literal ID="litDisplayName" runat="server" Text="John Smith" />
|
||||||
|
<asp:Image ID="imgVipUser" SkinID="VipUser16" runat="server" tooltip="VIP user" Visible="false"/>
|
||||||
|
<asp:Label ID="litServiceLevel" runat="server" style="float:right;padding-right:8px;" Visible="false"></asp:Label>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="FormBody">
|
||||||
|
<uc1:UserTabs ID="UserTabsId" runat="server" SelectedTab="view_deleted_user" />
|
||||||
|
<uc1:MailboxTabs ID="MailboxTabsId" runat="server" SelectedTab="view_deleted_user" />
|
||||||
|
<wsp:SimpleMessageBox id="messageBox" runat="server" />
|
||||||
|
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<td class="FormLabel150">
|
||||||
|
<asp:Localize ID="locUserPrincipalName" runat="server" meta:resourcekey="locUserPrincipalName" Text="Login Name:" />
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<asp:Label runat="server" ID="lblUserPrincipalName" />
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<asp:CheckBox ID="chkInherit" runat="server" meta:resourcekey="chkInherit" Text="Services inherit Login Name" checked="true" Enabled="false" />
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td class="FormLabel150">
|
||||||
|
<asp:Localize ID="locDisplayName" runat="server" meta:resourcekey="locDisplayName" Text="Display Name: *" />
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<asp:Label ID="lblDisplayName" runat="server"></asp:Label>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<br />
|
||||||
|
<asp:CheckBox ID="chkDisable" runat="server" meta:resourcekey="chkDisable" Text="Disable User" Enabled="false"/>
|
||||||
|
<br />
|
||||||
|
<asp:CheckBox ID="chkLocked" runat="server" meta:resourcekey="chkLocked" Text="Lock User" Enabled="false"/>
|
||||||
|
<br />
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="FormLabel150">
|
||||||
|
<asp:Localize ID="locFirstName" runat="server" meta:resourcekey="locFirstName" Text="First Name:" />
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<asp:label ID="lblFirstName" runat="server"></asp:label>
|
||||||
|
|
||||||
|
<asp:Localize ID="locInitials" runat="server" meta:resourcekey="locInitials" Text="Initials:" />
|
||||||
|
<asp:Label ID="lblInitials" runat="server"></asp:Label>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="FormLabel150">
|
||||||
|
<asp:Localize ID="locLastName" runat="server" meta:resourcekey="locLastName" Text="Last Name:" />
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<asp:Label ID="lblLastName" runat="server"></asp:Label>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="FormLabel150" valign="top">
|
||||||
|
<asp:Localize ID="locSubscriberNumber" runat="server" meta:resourcekey="locSubscriberNumber" />
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<asp:Label runat="server" ID="lblSubscriberNumber" />
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="FormLabel150" valign="top">
|
||||||
|
<asp:Localize ID="locExternalEmailAddress" runat="server" meta:resourcekey="locExternalEmailAddress" />
|
||||||
|
</td>
|
||||||
|
<td><asp:Label runat="server" ID="lblExternalEmailAddress" />
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<td class="FormLabel150">
|
||||||
|
<asp:Localize ID="locNotes" runat="server" meta:resourcekey="locNotes" Text="Notes:" />
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<asp:Label ID="lblNotes" runat="server" />
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<wsp:CollapsiblePanel id="secServiceLevels" runat="server" IsCollapsed="true"
|
||||||
|
TargetControlID="ServiceLevels" meta:resourcekey="secServiceLevels" Text="Service Level Information">
|
||||||
|
</wsp:CollapsiblePanel>
|
||||||
|
|
||||||
|
<asp:Panel ID="ServiceLevels" runat="server" Height="0" style="overflow:hidden;">
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<td class="FormLabel150">
|
||||||
|
<asp:Localize ID="locServiceLevel" runat="server" meta:resourcekey="locServiceLevel" Text="Service Level:" />
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<asp:Label ID="lblServiceLevel" runat="server" />
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="FormLabel150">
|
||||||
|
<asp:Localize ID="locVIPUser" runat="server" meta:resourcekey="locVIPUser" Text="VIP:" />
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<asp:CheckBox ID="chkVIP" runat="server" Enabled="false" />
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</asp:Panel>
|
||||||
|
|
||||||
|
<wsp:CollapsiblePanel id="secCompanyInfo" runat="server" IsCollapsed="true"
|
||||||
|
TargetControlID="CompanyInfo" meta:resourcekey="secCompanyInfo" Text="Company Information">
|
||||||
|
</wsp:CollapsiblePanel>
|
||||||
|
|
||||||
|
<asp:Panel ID="CompanyInfo" runat="server" Height="0" style="overflow:hidden;">
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<td class="FormLabel150">
|
||||||
|
<asp:Localize ID="locJobTitle" runat="server" meta:resourcekey="locJobTitle" Text="Job Title:" />
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<asp:Label ID="lblJobTitle" runat="server" />
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="FormLabel150">
|
||||||
|
<asp:Localize ID="locCompany" runat="server" meta:resourcekey="locCompany" Text="Company:" />
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<asp:Label ID="lblCompany" runat="server" />
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="FormLabel150">
|
||||||
|
<asp:Localize ID="locDepartment" runat="server" meta:resourcekey="locDepartment" Text="Department:" />
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<asp:Label ID="lblDepartment" runat="server" />
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="FormLabel150">
|
||||||
|
<asp:Localize ID="locOffice" runat="server" meta:resourcekey="locOffice" Text="Office:" />
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<asp:Label ID="lblOffice" runat="server" />
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="FormLabel150">
|
||||||
|
<asp:Localize ID="locManager" runat="server" meta:resourcekey="locManager" Text="Manager:" />
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<asp:Label ID="lblManager" runat="server" />
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</asp:Panel>
|
||||||
|
|
||||||
|
<wsp:CollapsiblePanel id="secContactInfo" runat="server" IsCollapsed="true"
|
||||||
|
TargetControlID="ContactInfo" meta:resourcekey="secContactInfo" Text="Contact Information">
|
||||||
|
</wsp:CollapsiblePanel>
|
||||||
|
|
||||||
|
<asp:Panel ID="ContactInfo" runat="server" Height="0" style="overflow:hidden;">
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<td class="FormLabel150">
|
||||||
|
<asp:Localize ID="locBusinessPhone" runat="server" meta:resourcekey="locBusinessPhone" Text="Business Phone:" />
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<asp:Label ID="lblBusinessPhone" runat="server" />
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="FormLabel150">
|
||||||
|
<asp:Localize ID="locFax" runat="server" meta:resourcekey="locFax" Text="Fax:" />
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<asp:Label ID="lblFax" runat="server" />
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="FormLabel150">
|
||||||
|
<asp:Localize ID="locHomePhone" runat="server" meta:resourcekey="locHomePhone" Text="Home Phone:" />
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<asp:Label ID="lblHomePhone" runat="server" />
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="FormLabel150">
|
||||||
|
<asp:Localize ID="locMobilePhone" runat="server" meta:resourcekey="locMobilePhone" Text="Mobile Phone:" />
|
||||||
|
<td>
|
||||||
|
<asp:Label ID="lblMobilePhone" runat="server" />
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="FormLabel150">
|
||||||
|
<asp:Localize ID="locPager" runat="server" meta:resourcekey="locPager" Text="Pager:" />
|
||||||
|
<td>
|
||||||
|
<asp:Label ID="lblPager" runat="server" />
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="FormLabel150">
|
||||||
|
<asp:Localize ID="locWebPage" runat="server" meta:resourcekey="locWebPage" Text="Web Page:" />
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<asp:Label ID="lblWebPage" runat="server" />
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</asp:Panel>
|
||||||
|
|
||||||
|
<wsp:CollapsiblePanel id="secAddressInfo" runat="server" IsCollapsed="true"
|
||||||
|
TargetControlID="AddressInfo" meta:resourcekey="secAddressInfo" Text="Address">
|
||||||
|
</wsp:CollapsiblePanel>
|
||||||
|
|
||||||
|
<asp:Panel ID="AddressInfo" runat="server" Height="0" style="overflow:hidden;">
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<td class="FormLabel150">
|
||||||
|
<asp:Localize ID="locAddress" runat="server" meta:resourcekey="locAddress" Text="Street Address:" />
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<asp:Label ID="lblAddress" runat="server" />
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="FormLabel150">
|
||||||
|
<asp:Localize ID="locCity" runat="server" meta:resourcekey="locCity" Text="City:" />
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<asp:Label ID="lblCity" runat="server" />
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="FormLabel150">
|
||||||
|
<asp:Localize ID="locState" runat="server" meta:resourcekey="locState" Text="State/Province:" />
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<asp:Label ID="lblState" runat="server" />
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="FormLabel150">
|
||||||
|
<asp:Localize ID="locZip" runat="server" meta:resourcekey="locZip" Text="Zip/Postal Code:" />
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<asp:Label ID="lblZip" runat="server" />
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="FormLabel150">
|
||||||
|
<asp:Localize ID="locCountry" runat="server" meta:resourcekey="locCountry" Text="Country/Region:" />
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<asp:Label id="lblCountry" runat="server" />
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</asp:Panel>
|
||||||
|
|
||||||
|
<wsp:CollapsiblePanel id="secAdvanced" runat="server" IsCollapsed="true"
|
||||||
|
TargetControlID="AdvancedInfo" meta:resourcekey="secAdvanced" Text="Advanced">
|
||||||
|
</wsp:CollapsiblePanel>
|
||||||
|
|
||||||
|
<asp:Panel ID="AdvancedInfo" runat="server" Height="0" style="overflow:hidden;">
|
||||||
|
<table>
|
||||||
|
<tr>
|
||||||
|
<td class="FormLabel150">
|
||||||
|
<asp:Localize ID="locUserDomainName" runat="server" meta:resourcekey="locUserDomainName" Text="User Domain Name:" />
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<asp:Label runat="server" ID="lblUserDomainName" />
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</asp:Panel>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
|
@ -0,0 +1,199 @@
|
||||||
|
// Copyright (c) 2014, Outercurve Foundation.
|
||||||
|
// All rights reserved.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without modification,
|
||||||
|
// are permitted provided that the following conditions are met:
|
||||||
|
//
|
||||||
|
// - Redistributions of source code must retain the above copyright notice, this
|
||||||
|
// list of conditions and the following disclaimer.
|
||||||
|
//
|
||||||
|
// - Redistributions in binary form must reproduce the above copyright notice,
|
||||||
|
// this list of conditions and the following disclaimer in the documentation
|
||||||
|
// and/or other materials provided with the distribution.
|
||||||
|
//
|
||||||
|
// - Neither the name of the Outercurve Foundation nor the names of its
|
||||||
|
// contributors may be used to endorse or promote products derived from this
|
||||||
|
// software without specific prior written permission.
|
||||||
|
//
|
||||||
|
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
||||||
|
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||||
|
// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||||
|
// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
|
||||||
|
// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||||
|
// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||||
|
// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
||||||
|
// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||||
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||||
|
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Web.UI.WebControls;
|
||||||
|
using WebsitePanel.EnterpriseServer;
|
||||||
|
using WebsitePanel.EnterpriseServer.Base.HostedSolution;
|
||||||
|
using WebsitePanel.Providers.HostedSolution;
|
||||||
|
using WebsitePanel.Providers.ResultObjects;
|
||||||
|
|
||||||
|
namespace WebsitePanel.Portal.HostedSolution
|
||||||
|
{
|
||||||
|
public partial class DeletedUserGeneralSettings : WebsitePanelModuleBase
|
||||||
|
{
|
||||||
|
protected void Page_Load(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
if (!IsPostBack)
|
||||||
|
{
|
||||||
|
BindServiceLevels();
|
||||||
|
|
||||||
|
BindSettings();
|
||||||
|
|
||||||
|
MailboxTabsId.Visible = (PanelRequest.Context == "Mailbox");
|
||||||
|
UserTabsId.Visible = (PanelRequest.Context == "User");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void BindSettings()
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
// get settings
|
||||||
|
OrganizationUser user = ES.Services.Organizations.GetUserGeneralSettings(PanelRequest.ItemID,
|
||||||
|
PanelRequest.AccountID);
|
||||||
|
|
||||||
|
litDisplayName.Text = PortalAntiXSS.Encode(user.DisplayName);
|
||||||
|
|
||||||
|
lblUserDomainName.Text = user.DomainUserName;
|
||||||
|
|
||||||
|
// bind form
|
||||||
|
lblDisplayName.Text = user.DisplayName;
|
||||||
|
|
||||||
|
chkDisable.Checked = user.Disabled;
|
||||||
|
|
||||||
|
lblFirstName.Text = user.FirstName;
|
||||||
|
lblInitials.Text = user.Initials;
|
||||||
|
lblLastName.Text = user.LastName;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
lblJobTitle.Text = user.JobTitle;
|
||||||
|
lblCompany.Text = user.Company;
|
||||||
|
lblDepartment.Text = user.Department;
|
||||||
|
lblOffice.Text = user.Office;
|
||||||
|
|
||||||
|
if (user.Manager != null)
|
||||||
|
{
|
||||||
|
lblManager.Text = user.Manager.DisplayName;
|
||||||
|
}
|
||||||
|
|
||||||
|
lblBusinessPhone.Text = user.BusinessPhone;
|
||||||
|
lblFax.Text = user.Fax;
|
||||||
|
lblHomePhone.Text = user.HomePhone;
|
||||||
|
lblMobilePhone.Text = user.MobilePhone;
|
||||||
|
lblPager.Text = user.Pager;
|
||||||
|
lblWebPage.Text = user.WebPage;
|
||||||
|
|
||||||
|
lblAddress.Text = user.Address;
|
||||||
|
lblCity.Text = user.City;
|
||||||
|
lblState.Text = user.State;
|
||||||
|
lblZip.Text = user.Zip;
|
||||||
|
lblCountry.Text = user.Country;
|
||||||
|
|
||||||
|
lblNotes.Text = user.Notes;
|
||||||
|
lblExternalEmailAddress.Text = user.ExternalEmail;
|
||||||
|
|
||||||
|
lblExternalEmailAddress.Enabled = user.AccountType == ExchangeAccountType.User;
|
||||||
|
lblUserDomainName.Text = user.DomainUserName;
|
||||||
|
|
||||||
|
lblSubscriberNumber.Text = user.SubscriberNumber;
|
||||||
|
lblUserPrincipalName.Text = user.UserPrincipalName;
|
||||||
|
|
||||||
|
PackageContext cntx = PackagesHelper.GetCachedPackageContext(PanelSecurity.PackageId);
|
||||||
|
if (cntx.Quotas.ContainsKey(Quotas.EXCHANGE2007_ISCONSUMER))
|
||||||
|
{
|
||||||
|
if (cntx.Quotas[Quotas.EXCHANGE2007_ISCONSUMER].QuotaAllocatedValue != 1)
|
||||||
|
{
|
||||||
|
locSubscriberNumber.Visible = false;
|
||||||
|
lblSubscriberNumber.Visible = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (user.LevelId > 0 && secServiceLevels.Visible)
|
||||||
|
{
|
||||||
|
secServiceLevels.IsCollapsed = false;
|
||||||
|
|
||||||
|
ServiceLevel serviceLevel = ES.Services.Organizations.GetSupportServiceLevel(user.LevelId);
|
||||||
|
|
||||||
|
litServiceLevel.Visible = true;
|
||||||
|
litServiceLevel.Text = serviceLevel.LevelName;
|
||||||
|
litServiceLevel.ToolTip = serviceLevel.LevelDescription;
|
||||||
|
|
||||||
|
lblServiceLevel.Text = serviceLevel.LevelName;
|
||||||
|
}
|
||||||
|
|
||||||
|
chkVIP.Checked = user.IsVIP && secServiceLevels.Visible;
|
||||||
|
imgVipUser.Visible = user.IsVIP && secServiceLevels.Visible;
|
||||||
|
|
||||||
|
if (cntx.Quotas.ContainsKey(Quotas.ORGANIZATION_ALLOWCHANGEUPN))
|
||||||
|
{
|
||||||
|
if (cntx.Quotas[Quotas.ORGANIZATION_ALLOWCHANGEUPN].QuotaAllocatedValue != 1)
|
||||||
|
{
|
||||||
|
chkInherit.Visible = false;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
chkInherit.Visible = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (user.Locked)
|
||||||
|
chkLocked.Enabled = true;
|
||||||
|
else
|
||||||
|
chkLocked.Enabled = false;
|
||||||
|
|
||||||
|
chkLocked.Checked = user.Locked;
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
messageBox.ShowErrorMessage("ORGANIZATION_GET_USER_SETTINGS", ex);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void BindServiceLevels()
|
||||||
|
{
|
||||||
|
PackageContext cntx = PackagesHelper.GetCachedPackageContext(PanelSecurity.PackageId);
|
||||||
|
|
||||||
|
if (cntx.Groups.ContainsKey(ResourceGroups.ServiceLevels))
|
||||||
|
{
|
||||||
|
List<ServiceLevel> enabledServiceLevels = new List<ServiceLevel>();
|
||||||
|
|
||||||
|
foreach (var quota in cntx.Quotas.Where(x => x.Key.Contains(Quotas.SERVICE_LEVELS)))
|
||||||
|
{
|
||||||
|
foreach (var serviceLevel in ES.Services.Organizations.GetSupportServiceLevels())
|
||||||
|
{
|
||||||
|
if (quota.Key.Replace(Quotas.SERVICE_LEVELS, "") == serviceLevel.LevelName && CheckServiceLevelQuota(quota.Value))
|
||||||
|
{
|
||||||
|
enabledServiceLevels.Add(serviceLevel);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
secServiceLevels.Visible = true;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
secServiceLevels.Visible = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private bool CheckServiceLevelQuota(QuotaValueInfo quota)
|
||||||
|
{
|
||||||
|
|
||||||
|
if (quota.QuotaAllocatedValue != -1)
|
||||||
|
{
|
||||||
|
return quota.QuotaAllocatedValue > quota.QuotaUsedValue;
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,699 @@
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// <auto-generated>
|
||||||
|
// This code was generated by a tool.
|
||||||
|
//
|
||||||
|
// Changes to this file may cause incorrect behavior and will be lost if
|
||||||
|
// the code is regenerated.
|
||||||
|
// </auto-generated>
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
namespace WebsitePanel.Portal.HostedSolution {
|
||||||
|
|
||||||
|
|
||||||
|
public partial class DeletedUserGeneralSettings {
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// asyncTasks control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::WebsitePanel.Portal.EnableAsyncTasksSupport asyncTasks;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Image1 control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Image Image1;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// locTitle control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Localize locTitle;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// litDisplayName control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Literal litDisplayName;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// imgVipUser control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Image imgVipUser;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// litServiceLevel control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Label litServiceLevel;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// UserTabsId control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::WebsitePanel.Portal.ExchangeServer.UserControls.DeletedUserTabs UserTabsId;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// MailboxTabsId control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::WebsitePanel.Portal.ExchangeServer.UserControls.MailboxTabs MailboxTabsId;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// messageBox control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::WebsitePanel.Portal.UserControls.SimpleMessageBox messageBox;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// locUserPrincipalName control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Localize locUserPrincipalName;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// lblUserPrincipalName control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Label lblUserPrincipalName;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// chkInherit control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.CheckBox chkInherit;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// locDisplayName control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Localize locDisplayName;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// lblDisplayName control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Label lblDisplayName;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// chkDisable control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.CheckBox chkDisable;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// chkLocked control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.CheckBox chkLocked;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// locFirstName control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Localize locFirstName;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// lblFirstName control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Label lblFirstName;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// locInitials control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Localize locInitials;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// lblInitials control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Label lblInitials;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// locLastName control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Localize locLastName;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// lblLastName control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Label lblLastName;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// locSubscriberNumber control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Localize locSubscriberNumber;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// lblSubscriberNumber control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Label lblSubscriberNumber;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// locExternalEmailAddress control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Localize locExternalEmailAddress;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// lblExternalEmailAddress control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Label lblExternalEmailAddress;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// locNotes control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Localize locNotes;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// lblNotes control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Label lblNotes;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// secServiceLevels control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::WebsitePanel.Portal.CollapsiblePanel secServiceLevels;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// ServiceLevels control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Panel ServiceLevels;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// locServiceLevel control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Localize locServiceLevel;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// lblServiceLevel control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Label lblServiceLevel;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// locVIPUser control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Localize locVIPUser;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// chkVIP control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.CheckBox chkVIP;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// secCompanyInfo control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::WebsitePanel.Portal.CollapsiblePanel secCompanyInfo;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// CompanyInfo control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Panel CompanyInfo;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// locJobTitle control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Localize locJobTitle;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// lblJobTitle control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Label lblJobTitle;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// locCompany control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Localize locCompany;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// lblCompany control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Label lblCompany;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// locDepartment control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Localize locDepartment;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// lblDepartment control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Label lblDepartment;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// locOffice control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Localize locOffice;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// lblOffice control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Label lblOffice;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// locManager control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Localize locManager;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// lblManager control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Label lblManager;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// secContactInfo control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::WebsitePanel.Portal.CollapsiblePanel secContactInfo;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// ContactInfo control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Panel ContactInfo;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// locBusinessPhone control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Localize locBusinessPhone;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// lblBusinessPhone control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Label lblBusinessPhone;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// locFax control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Localize locFax;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// lblFax control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Label lblFax;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// locHomePhone control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Localize locHomePhone;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// lblHomePhone control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Label lblHomePhone;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// locMobilePhone control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Localize locMobilePhone;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// lblMobilePhone control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Label lblMobilePhone;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// locPager control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Localize locPager;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// lblPager control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Label lblPager;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// locWebPage control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Localize locWebPage;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// lblWebPage control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Label lblWebPage;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// secAddressInfo control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::WebsitePanel.Portal.CollapsiblePanel secAddressInfo;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// AddressInfo control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Panel AddressInfo;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// locAddress control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Localize locAddress;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// lblAddress control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Label lblAddress;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// locCity control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Localize locCity;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// lblCity control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Label lblCity;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// locState control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Localize locState;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// lblState control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Label lblState;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// locZip control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Localize locZip;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// lblZip control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Label lblZip;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// locCountry control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Localize locCountry;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// lblCountry control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Label lblCountry;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// secAdvanced control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::WebsitePanel.Portal.CollapsiblePanel secAdvanced;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// AdvancedInfo control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Panel AdvancedInfo;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// locUserDomainName control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Localize locUserDomainName;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// lblUserDomainName control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Label lblUserDomainName;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,61 @@
|
||||||
|
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="OrganizationDeletedUserMemberOf.ascx.cs" Inherits="WebsitePanel.Portal.HostedSolution.DeletedUserMemberOf" %>
|
||||||
|
<%@ Register Src="UserControls/UserSelector.ascx" TagName="UserSelector" TagPrefix="wsp" %>
|
||||||
|
<%@ Register Src="UserControls/CountrySelector.ascx" TagName="CountrySelector" TagPrefix="wsp" %>
|
||||||
|
<%@ Register Src="../UserControls/SimpleMessageBox.ascx" TagName="SimpleMessageBox" TagPrefix="wsp" %>
|
||||||
|
|
||||||
|
<%@ Register Src="../UserControls/PasswordControl.ascx" TagName="PasswordControl" TagPrefix="wsp" %>
|
||||||
|
<%@ Register Src="../UserControls/CollapsiblePanel.ascx" TagName="CollapsiblePanel" TagPrefix="wsp" %>
|
||||||
|
<%@ Register Src="../UserControls/EnableAsyncTasksSupport.ascx" TagName="EnableAsyncTasksSupport" TagPrefix="wsp" %>
|
||||||
|
<%@ Register Src="UserControls/EmailAddress.ascx" TagName="EmailAddress" TagPrefix="wsp" %>
|
||||||
|
<%@ Register Src="UserControls/AccountsList.ascx" TagName="AccountsList" TagPrefix="wsp" %>
|
||||||
|
<%@ Register Src="UserControls/GroupsList.ascx" TagName="GroupsList" TagPrefix="wsp" %>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<%@ Register src="UserControls/DeletedUserTabs.ascx" tagname="UserTabs" tagprefix="uc1" %>
|
||||||
|
<%@ Register src="UserControls/MailboxTabs.ascx" tagname="MailboxTabs" tagprefix="uc1" %>
|
||||||
|
|
||||||
|
<%@ Register Src="../UserControls/ItemButtonPanel.ascx" TagName="ItemButtonPanel" TagPrefix="wsp" %>
|
||||||
|
|
||||||
|
|
||||||
|
<wsp:EnableAsyncTasksSupport id="asyncTasks" runat="server"/>
|
||||||
|
|
||||||
|
<div id="ExchangeContainer">
|
||||||
|
<div class="Module">
|
||||||
|
<div class="Left">
|
||||||
|
</div>
|
||||||
|
<div class="Content">
|
||||||
|
<div class="Center">
|
||||||
|
<div class="Title">
|
||||||
|
<asp:Image ID="Image1" SkinID="OrganizationUser48" runat="server" />
|
||||||
|
<asp:Localize ID="locTitle" runat="server" meta:resourcekey="locTitle" Text="Edit User"></asp:Localize>
|
||||||
|
-
|
||||||
|
<asp:Literal ID="litDisplayName" runat="server" Text="John Smith" />
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="FormBody">
|
||||||
|
<uc1:UserTabs ID="UserTabsId" runat="server" SelectedTab="deleted_user_memberof" />
|
||||||
|
<uc1:MailboxTabs ID="MailboxTabsId" runat="server" SelectedTab="deleted_user_memberof" />
|
||||||
|
<wsp:SimpleMessageBox id="messageBox" runat="server" />
|
||||||
|
|
||||||
|
<wsp:CollapsiblePanel id="secGroups" runat="server" TargetControlID="GroupsPanel" meta:resourcekey="secGroups" Text="Groups"></wsp:CollapsiblePanel>
|
||||||
|
<asp:Panel ID="GroupsPanel" runat="server" Height="0" style="overflow:hidden;">
|
||||||
|
<asp:UpdatePanel ID="GeneralUpdatePanel" runat="server" UpdateMode="Conditional" ChildrenAsTriggers="true">
|
||||||
|
<ContentTemplate>
|
||||||
|
|
||||||
|
<wsp:AccountsList id="groups" runat="server"
|
||||||
|
Disabled="true"
|
||||||
|
MailboxesEnabled="false"
|
||||||
|
EnableMailboxOnly="true"
|
||||||
|
ContactsEnabled="false"
|
||||||
|
DistributionListsEnabled="true"
|
||||||
|
SecurityGroupsEnabled="true" />
|
||||||
|
|
||||||
|
</ContentTemplate>
|
||||||
|
</asp:UpdatePanel>
|
||||||
|
</asp:Panel>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
|
@ -0,0 +1,132 @@
|
||||||
|
// Copyright (c) 2014, Outercurve Foundation.
|
||||||
|
// All rights reserved.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without modification,
|
||||||
|
// are permitted provided that the following conditions are met:
|
||||||
|
//
|
||||||
|
// - Redistributions of source code must retain the above copyright notice, this
|
||||||
|
// list of conditions and the following disclaimer.
|
||||||
|
//
|
||||||
|
// - Redistributions in binary form must reproduce the above copyright notice,
|
||||||
|
// this list of conditions and the following disclaimer in the documentation
|
||||||
|
// and/or other materials provided with the distribution.
|
||||||
|
//
|
||||||
|
// - Neither the name of the Outercurve Foundation nor the names of its
|
||||||
|
// contributors may be used to endorse or promote products derived from this
|
||||||
|
// software without specific prior written permission.
|
||||||
|
//
|
||||||
|
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
||||||
|
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||||
|
// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||||
|
// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
|
||||||
|
// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||||
|
// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||||
|
// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
||||||
|
// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||||
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||||
|
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
|
using System;
|
||||||
|
using System.Web.UI.WebControls;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using WebsitePanel.EnterpriseServer;
|
||||||
|
using WebsitePanel.Providers.HostedSolution;
|
||||||
|
using WebsitePanel.Providers.ResultObjects;
|
||||||
|
|
||||||
|
namespace WebsitePanel.Portal.HostedSolution
|
||||||
|
{
|
||||||
|
public partial class DeletedUserMemberOf : WebsitePanelModuleBase
|
||||||
|
{
|
||||||
|
protected PackageContext cntx;
|
||||||
|
|
||||||
|
protected PackageContext Cntx
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
if (cntx == null)
|
||||||
|
{
|
||||||
|
cntx = PackagesHelper.GetCachedPackageContext(PanelSecurity.PackageId);
|
||||||
|
}
|
||||||
|
|
||||||
|
return cntx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
protected bool EnableDistributionLists
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return Cntx.Groups.ContainsKey(ResourceGroups.Exchange) & Utils.CheckQouta(Quotas.EXCHANGE2007_DISTRIBUTIONLISTS, Cntx);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
protected bool EnableSecurityGroups
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return Utils.CheckQouta(Quotas.ORGANIZATION_SECURITYGROUPS, Cntx);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
protected void Page_Load(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
groups.DistributionListsEnabled = EnableDistributionLists;
|
||||||
|
groups.SecurityGroupsEnabled = EnableSecurityGroups;
|
||||||
|
|
||||||
|
if (!IsPostBack)
|
||||||
|
{
|
||||||
|
BindSettings();
|
||||||
|
|
||||||
|
MailboxTabsId.Visible = (PanelRequest.Context == "Mailbox");
|
||||||
|
|
||||||
|
UserTabsId.Visible = (PanelRequest.Context == "User");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void BindSettings()
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
// get settings
|
||||||
|
OrganizationUser user = ES.Services.Organizations.GetUserGeneralSettings(PanelRequest.ItemID, PanelRequest.AccountID);
|
||||||
|
|
||||||
|
groups.DistributionListsEnabled = EnableDistributionLists && (user.AccountType == ExchangeAccountType.Mailbox
|
||||||
|
|| user.AccountType == ExchangeAccountType.Room
|
||||||
|
|| user.AccountType == ExchangeAccountType.Equipment);
|
||||||
|
|
||||||
|
litDisplayName.Text = user.DisplayName;
|
||||||
|
|
||||||
|
List<ExchangeAccount> groupsList = new List<ExchangeAccount>();
|
||||||
|
|
||||||
|
if (EnableDistributionLists)
|
||||||
|
{
|
||||||
|
//Distribution Lists
|
||||||
|
ExchangeAccount[] dLists = ES.Services.ExchangeServer.GetDistributionListsByMember(PanelRequest.ItemID, PanelRequest.AccountID);
|
||||||
|
|
||||||
|
foreach (ExchangeAccount distList in dLists)
|
||||||
|
{
|
||||||
|
groupsList.Add(distList);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (EnableSecurityGroups)
|
||||||
|
{
|
||||||
|
//Security Groups
|
||||||
|
ExchangeAccount[] securGroups = ES.Services.Organizations.GetSecurityGroupsByMember(PanelRequest.ItemID, PanelRequest.AccountID);
|
||||||
|
|
||||||
|
foreach (ExchangeAccount secGroup in securGroups)
|
||||||
|
{
|
||||||
|
groupsList.Add(secGroup);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
groups.SetAccounts(groupsList.ToArray());
|
||||||
|
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
messageBox.ShowErrorMessage("ORGANIZATION_GET_USER_SETTINGS", ex);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,114 @@
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// <auto-generated>
|
||||||
|
// This code was generated by a tool.
|
||||||
|
//
|
||||||
|
// Changes to this file may cause incorrect behavior and will be lost if
|
||||||
|
// the code is regenerated.
|
||||||
|
// </auto-generated>
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
namespace WebsitePanel.Portal.HostedSolution {
|
||||||
|
|
||||||
|
|
||||||
|
public partial class DeletedUserMemberOf {
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// asyncTasks control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::WebsitePanel.Portal.EnableAsyncTasksSupport asyncTasks;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Image1 control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Image Image1;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// locTitle control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Localize locTitle;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// litDisplayName control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Literal litDisplayName;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// UserTabsId control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::WebsitePanel.Portal.ExchangeServer.UserControls.DeletedUserTabs UserTabsId;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// MailboxTabsId control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::WebsitePanel.Portal.ExchangeServer.UserControls.MailboxTabs MailboxTabsId;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// messageBox control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::WebsitePanel.Portal.UserControls.SimpleMessageBox messageBox;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// secGroups control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::WebsitePanel.Portal.CollapsiblePanel secGroups;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// GroupsPanel control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Panel GroupsPanel;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// GeneralUpdatePanel control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.UpdatePanel GeneralUpdatePanel;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// groups control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::WebsitePanel.Portal.ExchangeServer.UserControls.AccountsList groups;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,119 @@
|
||||||
|
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="OrganizationDeletedUsers.ascx.cs" Inherits="WebsitePanel.Portal.HostedSolution.OrganizationDeletedUsers" %>
|
||||||
|
|
||||||
|
<%@ Register Src="../UserControls/SimpleMessageBox.ascx" TagName="SimpleMessageBox" TagPrefix="wsp" %>
|
||||||
|
<%@ Register Src="../UserControls/QuotaViewer.ascx" TagName="QuotaViewer" TagPrefix="wsp" %>
|
||||||
|
<%@ Register Src="../UserControls/EnableAsyncTasksSupport.ascx" TagName="EnableAsyncTasksSupport" TagPrefix="wsp" %>
|
||||||
|
|
||||||
|
<wsp:EnableAsyncTasksSupport id="asyncTasks" runat="server"/>
|
||||||
|
|
||||||
|
<div id="ExchangeContainer">
|
||||||
|
<div class="Module">
|
||||||
|
<div class="Left">
|
||||||
|
</div>
|
||||||
|
<div class="Content">
|
||||||
|
<div class="Center">
|
||||||
|
<div class="Title">
|
||||||
|
<asp:Image ID="Image1" SkinID="OrganizationUser48" runat="server" />
|
||||||
|
<asp:Localize ID="locTitle" runat="server" meta:resourcekey="locTitle" Text="Users"></asp:Localize>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="FormBody">
|
||||||
|
<wsp:SimpleMessageBox id="messageBox" runat="server" />
|
||||||
|
|
||||||
|
<div class="FormButtonsBarClean">
|
||||||
|
<div class="FormButtonsBarCleanRight">
|
||||||
|
<asp:Panel ID="SearchPanel" runat="server" DefaultButton="cmdSearch">
|
||||||
|
<asp:DropDownList ID="ddlPageSize" runat="server" AutoPostBack="True"
|
||||||
|
onselectedindexchanged="ddlPageSize_SelectedIndexChanged">
|
||||||
|
<asp:ListItem>10</asp:ListItem>
|
||||||
|
<asp:ListItem Selected="True">20</asp:ListItem>
|
||||||
|
<asp:ListItem>50</asp:ListItem>
|
||||||
|
<asp:ListItem>100</asp:ListItem>
|
||||||
|
</asp:DropDownList>
|
||||||
|
|
||||||
|
<asp:DropDownList ID="ddlSearchColumn" runat="server" CssClass="NormalTextBox">
|
||||||
|
<asp:ListItem Value="DisplayName" meta:resourcekey="ddlSearchColumnDisplayName">DisplayName</asp:ListItem>
|
||||||
|
<asp:ListItem Value="PrimaryEmailAddress" meta:resourcekey="ddlSearchColumnEmail">Email</asp:ListItem>
|
||||||
|
<asp:ListItem Value="AccountName" meta:resourcekey="ddlSearchColumnAccountName">AccountName</asp:ListItem>
|
||||||
|
<asp:ListItem Value="SubscriberNumber" meta:resourcekey="ddlSearchColumnSubscriberNumber">Account Number</asp:ListItem>
|
||||||
|
<asp:ListItem Value="UserPrincipalName" meta:resourcekey="ddlSearchColumnUserPrincipalName">Login</asp:ListItem>
|
||||||
|
</asp:DropDownList><asp:TextBox ID="txtSearchValue" runat="server" CssClass="NormalTextBox" Width="100"></asp:TextBox><asp:ImageButton ID="cmdSearch" Runat="server" meta:resourcekey="cmdSearch" SkinID="SearchButton"
|
||||||
|
CausesValidation="false"/>
|
||||||
|
</asp:Panel>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<asp:GridView ID="gvDeletedUsers" runat="server" AutoGenerateColumns="False" EnableViewState="true"
|
||||||
|
Width="100%" EmptyDataText="gvDeletedUsers" CssSelectorClass="NormalGridView"
|
||||||
|
OnRowCommand="gvDeletedUsers_RowCommand" AllowPaging="True" AllowSorting="True"
|
||||||
|
DataSourceID="odsAccountsPaged" PageSize="20">
|
||||||
|
<Columns>
|
||||||
|
<asp:TemplateField HeaderText="gvDeletedUsersDisplayName" SortExpression="DisplayName">
|
||||||
|
<ItemStyle Width="25%"></ItemStyle>
|
||||||
|
<ItemTemplate>
|
||||||
|
<asp:Image ID="img1" runat="server" ImageUrl='<%# GetAccountImage((int)Eval("OriginAT"),(bool)Eval("User.IsVIP")) %>' ImageAlign="AbsMiddle"/>
|
||||||
|
<asp:hyperlink id="lnk1" runat="server"
|
||||||
|
NavigateUrl='<%# GetUserEditUrl(Eval("AccountId").ToString()) %>'>
|
||||||
|
<%# Eval("User.DisplayName") %>
|
||||||
|
</asp:hyperlink>
|
||||||
|
</ItemTemplate>
|
||||||
|
</asp:TemplateField>
|
||||||
|
<asp:BoundField HeaderText="gvDeletedUsersLogin" DataField="User.UserPrincipalName" SortExpression="UserPrincipalName" ItemStyle-Width="25%" />
|
||||||
|
<asp:TemplateField HeaderText="gvServiceLevel">
|
||||||
|
<ItemStyle Width="25%"></ItemStyle>
|
||||||
|
<ItemTemplate>
|
||||||
|
<asp:Label id="lbServLevel" runat="server" ToolTip = '<%# GetServiceLevel((int)Eval("User.LevelId")).LevelDescription%>'>
|
||||||
|
<%# GetServiceLevel((int)Eval("User.LevelId")).LevelName%>
|
||||||
|
</asp:Label>
|
||||||
|
</ItemTemplate>
|
||||||
|
</asp:TemplateField>
|
||||||
|
<asp:BoundField HeaderText="gvDeletedUsersEmail" DataField="User.PrimaryEmailAddress" SortExpression="PrimaryEmailAddress" ItemStyle-Width="25%" />
|
||||||
|
<asp:BoundField HeaderText="gvSubscriberNumber" DataField="User.SubscriberNumber" ItemStyle-Width="20%" />
|
||||||
|
<asp:TemplateField ItemStyle-Wrap="False">
|
||||||
|
<ItemTemplate>
|
||||||
|
<asp:ImageButton ID="Image2" runat="server" Width="16px" Height="16px" ToolTip="Mail" ImageUrl='<%# GetMailImage((int)Eval("OriginAT")) %>' CommandName="OpenMailProperties" CommandArgument='<%# Eval("AccountId") %>' Enabled=<%# EnableMailImageButton((int)Eval("OriginAT")) %>/>
|
||||||
|
<asp:ImageButton ID="Image3" runat="server" Width="16px" Height="16px" ToolTip="UC" ImageUrl='<%# GetOCSImage((bool)Eval("User.IsOCSUser"),(bool)Eval("User.IsLyncUser")) %>' CommandName="OpenUCProperties" CommandArgument='<%# GetOCSArgument((int)Eval("AccountId"),(bool)Eval("User.IsOCSUser"),(bool)Eval("User.IsLyncUser")) %>' Enabled=<%# EnableOCSImageButton((bool)Eval("User.IsOCSUser"),(bool)Eval("User.IsLyncUser")) %>/>
|
||||||
|
<asp:ImageButton ID="Image4" runat="server" Width="16px" Height="16px" ToolTip="BlackBerry" ImageUrl='<%# GetBlackBerryImage((bool)Eval("User.IsBlackBerryUser")) %>' CommandName="OpenBlackBerryProperties" CommandArgument='<%# Eval("AccountId") %>' Enabled=<%# EnableBlackBerryImageButton((bool)Eval("User.IsBlackBerryUser")) %>/>
|
||||||
|
<asp:Image ID="Image5" runat="server" Width="16px" Height="16px" ToolTip="CRM" ImageUrl='<%# GetCRMImage((Guid)Eval("User.CrmUserId")) %>' />
|
||||||
|
</ItemTemplate>
|
||||||
|
</asp:TemplateField>
|
||||||
|
<asp:TemplateField>
|
||||||
|
<ItemTemplate>
|
||||||
|
<asp:HyperLink ID="lnkDownload" runat="server" Visible='<%# !(bool)Eval("IsArchiveEmpty") %>'
|
||||||
|
NavigateUrl='<%# (bool)Eval("IsArchiveEmpty") ? "#" : GetDownloadLink((string)Eval("StoragePath"),(string)Eval("FolderName"),(string)Eval("FileName")) %>'>
|
||||||
|
<%# Eval("FileName") %>
|
||||||
|
</asp:HyperLink>
|
||||||
|
</ItemTemplate>
|
||||||
|
</asp:TemplateField>
|
||||||
|
<asp:TemplateField>
|
||||||
|
<ItemTemplate>
|
||||||
|
<asp:ImageButton ID="cmdDelete" runat="server" Text="Delete" SkinID="ExchangeDelete"
|
||||||
|
CommandName="DeleteItem" CommandArgument='<%# Eval("AccountId") %>'
|
||||||
|
meta:resourcekey="cmdDelete" OnClientClick="return confirm('Remove this item?');"></asp:ImageButton>
|
||||||
|
</ItemTemplate>
|
||||||
|
</asp:TemplateField>
|
||||||
|
</Columns>
|
||||||
|
</asp:GridView>
|
||||||
|
<asp:ObjectDataSource ID="odsAccountsPaged" runat="server" EnablePaging="True"
|
||||||
|
SelectCountMethod="GetOrganizationDeletedUsersPagedCount"
|
||||||
|
SelectMethod="GetOrganizationDeletedUsersPaged"
|
||||||
|
SortParameterName="sortColumn"
|
||||||
|
TypeName="WebsitePanel.Portal.OrganizationsHelper"
|
||||||
|
OnSelected="odsAccountsPaged_Selected">
|
||||||
|
<SelectParameters>
|
||||||
|
<asp:QueryStringParameter Name="itemId" QueryStringField="ItemID" DefaultValue="0" />
|
||||||
|
<asp:ControlParameter Name="filterColumn" ControlID="ddlSearchColumn" PropertyName="SelectedValue" />
|
||||||
|
<asp:ControlParameter Name="filterValue" ControlID="txtSearchValue" PropertyName="Text" />
|
||||||
|
</SelectParameters>
|
||||||
|
</asp:ObjectDataSource>
|
||||||
|
<br />
|
||||||
|
<div>
|
||||||
|
<asp:Localize ID="locQuota" runat="server" meta:resourcekey="locQuota" Text="Total Users Created:"></asp:Localize>
|
||||||
|
|
||||||
|
<wsp:QuotaViewer ID="deletedUsersQuota" runat="server" QuotaTypeId="2" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
|
@ -0,0 +1,345 @@
|
||||||
|
// Copyright (c) 2014, Outercurve Foundation.
|
||||||
|
// All rights reserved.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without modification,
|
||||||
|
// are permitted provided that the following conditions are met:
|
||||||
|
//
|
||||||
|
// - Redistributions of source code must retain the above copyright notice, this
|
||||||
|
// list of conditions and the following disclaimer.
|
||||||
|
//
|
||||||
|
// - Redistributions in binary form must reproduce the above copyright notice,
|
||||||
|
// this list of conditions and the following disclaimer in the documentation
|
||||||
|
// and/or other materials provided with the distribution.
|
||||||
|
//
|
||||||
|
// - Neither the name of the SMB SAAS Systems Inc. nor the names of its
|
||||||
|
// contributors may be used to endorse or promote products derived from this
|
||||||
|
// software without specific prior written permission.
|
||||||
|
//
|
||||||
|
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
||||||
|
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||||
|
// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||||
|
// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
|
||||||
|
// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||||
|
// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||||
|
// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
||||||
|
// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||||
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||||
|
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Web.UI.WebControls;
|
||||||
|
using WebsitePanel.Providers.HostedSolution;
|
||||||
|
using WebsitePanel.EnterpriseServer;
|
||||||
|
using WebsitePanel.EnterpriseServer.Base.HostedSolution;
|
||||||
|
using System.IO;
|
||||||
|
|
||||||
|
namespace WebsitePanel.Portal.HostedSolution
|
||||||
|
{
|
||||||
|
public partial class OrganizationDeletedUsers : WebsitePanelModuleBase
|
||||||
|
{
|
||||||
|
private ServiceLevel[] ServiceLevels;
|
||||||
|
private PackageContext cntx;
|
||||||
|
|
||||||
|
protected void Page_Load(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
string downloadFile = Request["DownloadFile"];
|
||||||
|
if (downloadFile != null)
|
||||||
|
{
|
||||||
|
// download file
|
||||||
|
Response.Clear();
|
||||||
|
Response.AddHeader("Content-Disposition", "attachment; filename=" + Path.GetFileName(downloadFile));
|
||||||
|
Response.ContentType = "application/octet-stream";
|
||||||
|
|
||||||
|
int FILE_BUFFER_LENGTH = 5000000;
|
||||||
|
byte[] buffer = null;
|
||||||
|
int offset = 0;
|
||||||
|
do
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
// read remote content
|
||||||
|
buffer = ES.Services.Organizations.GetArchiveFileBinaryChunk(PanelSecurity.PackageId, downloadFile, offset, FILE_BUFFER_LENGTH);
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
messageBox.ShowErrorMessage("ARCHIVE_FILE_READ_FILE", ex);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
// write to stream
|
||||||
|
Response.BinaryWrite(buffer);
|
||||||
|
|
||||||
|
offset += FILE_BUFFER_LENGTH;
|
||||||
|
}
|
||||||
|
while (buffer.Length == FILE_BUFFER_LENGTH);
|
||||||
|
Response.End();
|
||||||
|
}
|
||||||
|
|
||||||
|
cntx = PackagesHelper.GetCachedPackageContext(PanelSecurity.PackageId);
|
||||||
|
|
||||||
|
if (!IsPostBack)
|
||||||
|
{
|
||||||
|
BindStats();
|
||||||
|
}
|
||||||
|
|
||||||
|
BindServiceLevels();
|
||||||
|
|
||||||
|
gvDeletedUsers.Columns[3].Visible = cntx.Groups.ContainsKey(ResourceGroups.ServiceLevels);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void BindServiceLevels()
|
||||||
|
{
|
||||||
|
ServiceLevels = ES.Services.Organizations.GetSupportServiceLevels();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void BindStats()
|
||||||
|
{
|
||||||
|
// quota values
|
||||||
|
OrganizationStatistics stats = ES.Services.Organizations.GetOrganizationStatisticsByOrganization(PanelRequest.ItemID);
|
||||||
|
OrganizationStatistics tenantStats = ES.Services.Organizations.GetOrganizationStatistics(PanelRequest.ItemID);
|
||||||
|
deletedUsersQuota.QuotaUsedValue = stats.DeletedUsers;
|
||||||
|
deletedUsersQuota.QuotaValue = stats.AllocatedDeletedUsers;
|
||||||
|
if (stats.AllocatedUsers != -1) deletedUsersQuota.QuotaAvailable = tenantStats.AllocatedDeletedUsers - tenantStats.DeletedUsers;
|
||||||
|
}
|
||||||
|
|
||||||
|
public string GetUserEditUrl(string accountId)
|
||||||
|
{
|
||||||
|
return EditUrl("SpaceID", PanelSecurity.PackageId.ToString(), "view_deleted_user",
|
||||||
|
"AccountID=" + accountId,
|
||||||
|
"ItemID=" + PanelRequest.ItemID,
|
||||||
|
"Context=User");
|
||||||
|
}
|
||||||
|
|
||||||
|
protected void odsAccountsPaged_Selected(object sender, ObjectDataSourceStatusEventArgs e)
|
||||||
|
{
|
||||||
|
if (e.Exception != null)
|
||||||
|
{
|
||||||
|
messageBox.ShowErrorMessage("ORGANZATION_GET_USERS", e.Exception);
|
||||||
|
e.ExceptionHandled = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
protected void gvDeletedUsers_RowCommand(object sender, GridViewCommandEventArgs e)
|
||||||
|
{
|
||||||
|
if (e.CommandName == "DeleteItem")
|
||||||
|
{
|
||||||
|
// delete user
|
||||||
|
int accountId = Utils.ParseInt(e.CommandArgument.ToString(), 0);
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
int result = ES.Services.Organizations.DeleteUser(PanelRequest.ItemID, accountId);
|
||||||
|
if (result < 0)
|
||||||
|
{
|
||||||
|
messageBox.ShowResultMessage(result);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// rebind grid
|
||||||
|
gvDeletedUsers.DataBind();
|
||||||
|
|
||||||
|
// bind stats
|
||||||
|
BindStats();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
messageBox.ShowErrorMessage("ORGANIZATIONS_DELETE_USERS", ex);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (e.CommandName == "OpenMailProperties")
|
||||||
|
{
|
||||||
|
int accountId = Utils.ParseInt(e.CommandArgument.ToString(), 0);
|
||||||
|
|
||||||
|
Response.Redirect(EditUrl("SpaceID", PanelSecurity.PackageId.ToString(), "mailbox_settings",
|
||||||
|
"AccountID=" + accountId,
|
||||||
|
"ItemID=" + PanelRequest.ItemID));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (e.CommandName == "OpenBlackBerryProperties")
|
||||||
|
{
|
||||||
|
int accountId = Utils.ParseInt(e.CommandArgument.ToString(), 0);
|
||||||
|
|
||||||
|
Response.Redirect(EditUrl("SpaceID", PanelSecurity.PackageId.ToString(), "edit_blackberry_user",
|
||||||
|
"AccountID=" + accountId,
|
||||||
|
"ItemID=" + PanelRequest.ItemID));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (e.CommandName == "OpenCRMProperties")
|
||||||
|
{
|
||||||
|
int accountId = Utils.ParseInt(e.CommandArgument.ToString(), 0);
|
||||||
|
|
||||||
|
Response.Redirect(EditUrl("SpaceID", PanelSecurity.PackageId.ToString(), "mailbox_settings",
|
||||||
|
"AccountID=" + accountId,
|
||||||
|
"ItemID=" + PanelRequest.ItemID));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (e.CommandName == "OpenUCProperties")
|
||||||
|
{
|
||||||
|
string[] Tmp = e.CommandArgument.ToString().Split('|');
|
||||||
|
|
||||||
|
int accountId = Utils.ParseInt(Tmp[0], 0);
|
||||||
|
if (Tmp[1] == "True")
|
||||||
|
Response.Redirect(EditUrl("SpaceID", PanelSecurity.PackageId.ToString(), "edit_ocs_user",
|
||||||
|
"AccountID=" + accountId,
|
||||||
|
"ItemID=" + PanelRequest.ItemID));
|
||||||
|
else
|
||||||
|
if (Tmp[2] == "True")
|
||||||
|
Response.Redirect(EditUrl("SpaceID", PanelSecurity.PackageId.ToString(), "edit_lync_user",
|
||||||
|
"AccountID=" + accountId,
|
||||||
|
"ItemID=" + PanelRequest.ItemID));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public string GetAccountImage(int accountTypeId, bool vip)
|
||||||
|
{
|
||||||
|
string imgName = string.Empty;
|
||||||
|
|
||||||
|
ExchangeAccountType accountType = (ExchangeAccountType)accountTypeId;
|
||||||
|
switch (accountType)
|
||||||
|
{
|
||||||
|
case ExchangeAccountType.Room:
|
||||||
|
imgName = "room_16.gif";
|
||||||
|
break;
|
||||||
|
case ExchangeAccountType.Equipment:
|
||||||
|
imgName = "equipment_16.gif";
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
imgName = "admin_16.png";
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
if (vip && cntx.Groups.ContainsKey(ResourceGroups.ServiceLevels)) imgName = "vip_user_16.png";
|
||||||
|
|
||||||
|
return GetThemedImage("Exchange/" + imgName);
|
||||||
|
}
|
||||||
|
|
||||||
|
public string GetMailImage(int accountTypeId)
|
||||||
|
{
|
||||||
|
string imgName = "exchange24.png";
|
||||||
|
|
||||||
|
ExchangeAccountType accountType = (ExchangeAccountType)accountTypeId;
|
||||||
|
|
||||||
|
if (accountType == ExchangeAccountType.User)
|
||||||
|
imgName = "blank16.gif";
|
||||||
|
|
||||||
|
return GetThemedImage("Exchange/" + imgName);
|
||||||
|
}
|
||||||
|
|
||||||
|
public string GetOCSImage(bool IsOCSUser, bool IsLyncUser)
|
||||||
|
{
|
||||||
|
string imgName = "blank16.gif";
|
||||||
|
|
||||||
|
if (IsLyncUser)
|
||||||
|
imgName = "lync16.png";
|
||||||
|
else
|
||||||
|
if ((IsOCSUser))
|
||||||
|
imgName = "ocs16.png";
|
||||||
|
|
||||||
|
return GetThemedImage("Exchange/" + imgName);
|
||||||
|
}
|
||||||
|
|
||||||
|
public string GetBlackBerryImage(bool IsBlackBerryUser)
|
||||||
|
{
|
||||||
|
string imgName = "blank16.gif";
|
||||||
|
|
||||||
|
if (IsBlackBerryUser)
|
||||||
|
imgName = "blackberry16.png";
|
||||||
|
|
||||||
|
return GetThemedImage("Exchange/" + imgName);
|
||||||
|
}
|
||||||
|
|
||||||
|
public string GetCRMImage(Guid CrmUserId)
|
||||||
|
{
|
||||||
|
string imgName = "blank16.gif";
|
||||||
|
|
||||||
|
if (CrmUserId != Guid.Empty)
|
||||||
|
imgName = "crm_16.png";
|
||||||
|
|
||||||
|
return GetThemedImage("Exchange/" + imgName);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
gvDeletedUsers.PageSize = Convert.ToInt16(ddlPageSize.SelectedValue);
|
||||||
|
|
||||||
|
// rebind grid
|
||||||
|
gvDeletedUsers.DataBind();
|
||||||
|
|
||||||
|
// bind stats
|
||||||
|
BindStats();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public bool EnableMailImageButton(int accountTypeId)
|
||||||
|
{
|
||||||
|
bool imgName = true;
|
||||||
|
|
||||||
|
ExchangeAccountType accountType = (ExchangeAccountType)accountTypeId;
|
||||||
|
|
||||||
|
if (accountType == ExchangeAccountType.User)
|
||||||
|
imgName = false;
|
||||||
|
|
||||||
|
return imgName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public bool EnableOCSImageButton(bool IsOCSUser, bool IsLyncUser)
|
||||||
|
{
|
||||||
|
bool imgName = false;
|
||||||
|
|
||||||
|
if (IsLyncUser)
|
||||||
|
imgName = true;
|
||||||
|
else
|
||||||
|
if ((IsOCSUser))
|
||||||
|
imgName = true;
|
||||||
|
|
||||||
|
return imgName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public bool EnableBlackBerryImageButton(bool IsBlackBerryUser)
|
||||||
|
{
|
||||||
|
bool imgName = false;
|
||||||
|
|
||||||
|
if (IsBlackBerryUser)
|
||||||
|
imgName = true;
|
||||||
|
|
||||||
|
return imgName;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public string GetOCSArgument(int accountID, bool IsOCS, bool IsLync)
|
||||||
|
{
|
||||||
|
return accountID.ToString() + "|" + IsOCS.ToString() + "|" + IsLync.ToString();
|
||||||
|
}
|
||||||
|
|
||||||
|
public ServiceLevel GetServiceLevel(int levelId)
|
||||||
|
{
|
||||||
|
ServiceLevel serviceLevel = ServiceLevels.Where(x => x.LevelId == levelId).DefaultIfEmpty(new ServiceLevel { LevelName = "", LevelDescription = "" }).FirstOrDefault();
|
||||||
|
|
||||||
|
bool enable = !string.IsNullOrEmpty(serviceLevel.LevelName);
|
||||||
|
|
||||||
|
enable = enable ? cntx.Quotas.ContainsKey(Quotas.SERVICE_LEVELS + serviceLevel.LevelName) : false;
|
||||||
|
enable = enable ? cntx.Quotas[Quotas.SERVICE_LEVELS + serviceLevel.LevelName].QuotaAllocatedValue != 0 : false;
|
||||||
|
|
||||||
|
if (!enable)
|
||||||
|
{
|
||||||
|
serviceLevel.LevelName = "";
|
||||||
|
serviceLevel.LevelDescription = "";
|
||||||
|
}
|
||||||
|
|
||||||
|
return serviceLevel;
|
||||||
|
}
|
||||||
|
|
||||||
|
public string GetDownloadLink(string storagePath, string folderName, string fileName)
|
||||||
|
{
|
||||||
|
return NavigateURL(PortalUtils.SPACE_ID_PARAM,
|
||||||
|
PanelSecurity.PackageId.ToString(),
|
||||||
|
"ctl=" + PanelRequest.Ctl,
|
||||||
|
"ItemID=" + PanelRequest.ItemID,
|
||||||
|
"mid=" + this.ModuleID,
|
||||||
|
"DownloadFile=" + Server.UrlEncode(Path.Combine(storagePath, folderName, fileName)));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,132 @@
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// <auto-generated>
|
||||||
|
// This code was generated by a tool.
|
||||||
|
//
|
||||||
|
// Changes to this file may cause incorrect behavior and will be lost if
|
||||||
|
// the code is regenerated.
|
||||||
|
// </auto-generated>
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
namespace WebsitePanel.Portal.HostedSolution {
|
||||||
|
|
||||||
|
|
||||||
|
public partial class OrganizationDeletedUsers {
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// asyncTasks control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::WebsitePanel.Portal.EnableAsyncTasksSupport asyncTasks;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Image1 control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Image Image1;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// locTitle control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Localize locTitle;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// messageBox control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::WebsitePanel.Portal.UserControls.SimpleMessageBox messageBox;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// SearchPanel control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Panel SearchPanel;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// ddlPageSize control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.DropDownList ddlPageSize;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// ddlSearchColumn control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.DropDownList ddlSearchColumn;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// txtSearchValue control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.TextBox txtSearchValue;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// cmdSearch control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.ImageButton cmdSearch;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// gvDeletedUsers control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.GridView gvDeletedUsers;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// odsAccountsPaged control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.ObjectDataSource odsAccountsPaged;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// locQuota control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Localize locQuota;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// deletedUsersQuota control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::WebsitePanel.Portal.QuotaViewer deletedUsersQuota;
|
||||||
|
}
|
||||||
|
}
|
|
@ -65,6 +65,14 @@
|
||||||
<wsp:QuotaViewer ID="userStats" QuotaTypeId="2" runat="server" DisplayGauge="true" />
|
<wsp:QuotaViewer ID="userStats" QuotaTypeId="2" runat="server" DisplayGauge="true" />
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr class="OrgStatsRow">
|
||||||
|
<td class="OrgStatsQuota" nowrap>
|
||||||
|
<asp:HyperLink ID="lnkDeletedUsers" runat="server" meta:resourcekey="lnkDeletedUsers"></asp:HyperLink>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<wsp:QuotaViewer ID="deletedUserStats" QuotaTypeId="2" runat="server" DisplayGauge="true" />
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
<tr class="OrgStatsRow" id="securGroupsStat" runat="server">
|
<tr class="OrgStatsRow" id="securGroupsStat" runat="server">
|
||||||
<td class="OrgStatsQuota" nowrap >
|
<td class="OrgStatsQuota" nowrap >
|
||||||
<asp:HyperLink ID="lnkGroups" runat="server" meta:resourcekey="lnkGroups" Text="Groups:"></asp:HyperLink>
|
<asp:HyperLink ID="lnkGroups" runat="server" meta:resourcekey="lnkGroups" Text="Groups:"></asp:HyperLink>
|
||||||
|
|
|
@ -189,7 +189,13 @@ namespace WebsitePanel.Portal.ExchangeServer
|
||||||
|
|
||||||
userStats.QuotaUsedValue = orgStats.CreatedUsers;
|
userStats.QuotaUsedValue = orgStats.CreatedUsers;
|
||||||
userStats.QuotaValue = orgStats.AllocatedUsers;
|
userStats.QuotaValue = orgStats.AllocatedUsers;
|
||||||
if (orgStats.AllocatedUsers != -1) userStats.QuotaAvailable = tenantStats.AllocatedUsers - tenantStats.CreatedUsers;
|
if (orgStats.AllocatedUsers != -1)
|
||||||
|
userStats.QuotaAvailable = tenantStats.AllocatedUsers - tenantStats.CreatedUsers;
|
||||||
|
|
||||||
|
deletedUserStats.QuotaUsedValue = orgStats.DeletedUsers;
|
||||||
|
deletedUserStats.QuotaValue = orgStats.AllocatedDeletedUsers;
|
||||||
|
if (orgStats.AllocatedDeletedUsers != -1)
|
||||||
|
userStats.QuotaAvailable = tenantStats.AllocatedDeletedUsers - tenantStats.DeletedUsers;
|
||||||
|
|
||||||
lnkDomains.NavigateUrl = EditUrl("ItemID", PanelRequest.ItemID.ToString(), "domains",
|
lnkDomains.NavigateUrl = EditUrl("ItemID", PanelRequest.ItemID.ToString(), "domains",
|
||||||
"SpaceID=" + PanelSecurity.PackageId);
|
"SpaceID=" + PanelSecurity.PackageId);
|
||||||
|
@ -197,6 +203,9 @@ namespace WebsitePanel.Portal.ExchangeServer
|
||||||
lnkUsers.NavigateUrl = EditUrl("ItemID", PanelRequest.ItemID.ToString(), "users",
|
lnkUsers.NavigateUrl = EditUrl("ItemID", PanelRequest.ItemID.ToString(), "users",
|
||||||
"SpaceID=" + PanelSecurity.PackageId);
|
"SpaceID=" + PanelSecurity.PackageId);
|
||||||
|
|
||||||
|
lnkDeletedUsers.NavigateUrl = EditUrl("ItemID", PanelRequest.ItemID.ToString(), "deleted_users",
|
||||||
|
"SpaceID=" + PanelSecurity.PackageId);
|
||||||
|
|
||||||
if (Utils.CheckQouta(Quotas.ORGANIZATION_SECURITYGROUPS, cntx))
|
if (Utils.CheckQouta(Quotas.ORGANIZATION_SECURITYGROUPS, cntx))
|
||||||
{
|
{
|
||||||
securGroupsStat.Visible = true;
|
securGroupsStat.Visible = true;
|
||||||
|
|
|
@ -138,6 +138,24 @@ namespace WebsitePanel.Portal.ExchangeServer {
|
||||||
/// </remarks>
|
/// </remarks>
|
||||||
protected global::WebsitePanel.Portal.QuotaViewer userStats;
|
protected global::WebsitePanel.Portal.QuotaViewer userStats;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// lnkDeletedUsers control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.HyperLink lnkDeletedUsers;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// deletedUserStats control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::WebsitePanel.Portal.QuotaViewer deletedUserStats;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// securGroupsStat control.
|
/// securGroupsStat control.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
|
@ -0,0 +1,255 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<data name="buttonPanel.OnSaveClientClick" xml:space="preserve">
|
||||||
|
<value>ShowProgressDialog('Updating user settings...');</value>
|
||||||
|
</data>
|
||||||
|
<data name="chkDisable.Text" xml:space="preserve">
|
||||||
|
<value>Disable User</value>
|
||||||
|
</data>
|
||||||
|
<data name="chkLocked.Text" xml:space="preserve">
|
||||||
|
<value>Account is locked out</value>
|
||||||
|
</data>
|
||||||
|
<data name="chkSetPassword.Text" xml:space="preserve">
|
||||||
|
<value>Set Password</value>
|
||||||
|
</data>
|
||||||
|
<data name="HSFormComments.Text" xml:space="preserve">
|
||||||
|
<value />
|
||||||
|
</data>
|
||||||
|
<data name="locAddress.Text" xml:space="preserve">
|
||||||
|
<value>Address:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locBusinessPhone.Text" xml:space="preserve">
|
||||||
|
<value>Business Phone:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locCity.Text" xml:space="preserve">
|
||||||
|
<value>City:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locCompany.Text" xml:space="preserve">
|
||||||
|
<value>Company:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locCountry.Text" xml:space="preserve">
|
||||||
|
<value>Country/Region:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locDepartment.Text" xml:space="preserve">
|
||||||
|
<value>Department:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locDisplayName.Text" xml:space="preserve">
|
||||||
|
<value>Display Name: *</value>
|
||||||
|
</data>
|
||||||
|
<data name="locExternalEmailAddress.Text" xml:space="preserve">
|
||||||
|
<value>External e-mail:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locFax.Text" xml:space="preserve">
|
||||||
|
<value>Fax:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locFirstName.Text" xml:space="preserve">
|
||||||
|
<value>First Name:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locHomePhone.Text" xml:space="preserve">
|
||||||
|
<value>Home Phone:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locInitials.Text" xml:space="preserve">
|
||||||
|
<value>Initials:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locJobTitle.Text" xml:space="preserve">
|
||||||
|
<value>Job Title:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locLastName.Text" xml:space="preserve">
|
||||||
|
<value>Last Name:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locManager.Text" xml:space="preserve">
|
||||||
|
<value>Manager:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locMobilePhone.Text" xml:space="preserve">
|
||||||
|
<value>Mobile Phone:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locNotes.Text" xml:space="preserve">
|
||||||
|
<value>Notes:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locOffice.Text" xml:space="preserve">
|
||||||
|
<value>Office:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locPager.Text" xml:space="preserve">
|
||||||
|
<value>Pager:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locPassword.Text" xml:space="preserve">
|
||||||
|
<value>Password:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locState.Text" xml:space="preserve">
|
||||||
|
<value>State/Province:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locSubscriberNumber.Text" xml:space="preserve">
|
||||||
|
<value>Account Number:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locTitle.Text" xml:space="preserve">
|
||||||
|
<value>Edit User</value>
|
||||||
|
</data>
|
||||||
|
<data name="locUserDomainName.Text" xml:space="preserve">
|
||||||
|
<value>User Domain Name:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locWebPage.Text" xml:space="preserve">
|
||||||
|
<value>Web Page:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locZip.Text" xml:space="preserve">
|
||||||
|
<value>Zip/Postal Code:</value>
|
||||||
|
</data>
|
||||||
|
<data name="secAddressInfo.Text" xml:space="preserve">
|
||||||
|
<value>Address</value>
|
||||||
|
</data>
|
||||||
|
<data name="secAdvanced.Text" xml:space="preserve">
|
||||||
|
<value>Advanced</value>
|
||||||
|
</data>
|
||||||
|
<data name="secCompanyInfo.Text" xml:space="preserve">
|
||||||
|
<value>Company Information</value>
|
||||||
|
</data>
|
||||||
|
<data name="secContactInfo.Text" xml:space="preserve">
|
||||||
|
<value>Contact Information</value>
|
||||||
|
</data>
|
||||||
|
<data name="Text.PageName" xml:space="preserve">
|
||||||
|
<value>User</value>
|
||||||
|
</data>
|
||||||
|
<data name="valRequireDisplayName.ErrorMessage" xml:space="preserve">
|
||||||
|
<value>Enter Display Name</value>
|
||||||
|
</data>
|
||||||
|
<data name="valRequireDisplayName.Text" xml:space="preserve">
|
||||||
|
<value>*</value>
|
||||||
|
</data>
|
||||||
|
<data name="lblUserPrincipalName" xml:space="preserve">
|
||||||
|
<value>Login Name:</value>
|
||||||
|
</data>
|
||||||
|
<data name="btnSetUserPassword.Text" xml:space="preserve">
|
||||||
|
<value>Set Password</value>
|
||||||
|
</data>
|
||||||
|
<data name="btnSetUserPrincipalName.Text" xml:space="preserve">
|
||||||
|
<value>Set Login Name</value>
|
||||||
|
</data>
|
||||||
|
<data name="chkInherit.Text" xml:space="preserve">
|
||||||
|
<value>Update Services</value>
|
||||||
|
</data>
|
||||||
|
<data name="locServiceLevel.Text" xml:space="preserve">
|
||||||
|
<value>Service Level:</value>
|
||||||
|
</data>
|
||||||
|
<data name="locVIPUser.Text" xml:space="preserve">
|
||||||
|
<value>VIP:</value>
|
||||||
|
</data>
|
||||||
|
<data name="secServiceLevels.Text" xml:space="preserve">
|
||||||
|
<value>Service Level Information</value>
|
||||||
|
</data>
|
||||||
|
</root>
|
|
@ -0,0 +1,129 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<data name="locTitle.Text" xml:space="preserve">
|
||||||
|
<value>Edit User </value>
|
||||||
|
</data>
|
||||||
|
<data name="secGeneral.Text" xml:space="preserve">
|
||||||
|
<value>General</value>
|
||||||
|
</data>
|
||||||
|
<data name="Text.PageName" xml:space="preserve">
|
||||||
|
<value>Users</value>
|
||||||
|
</data>
|
||||||
|
</root>
|
|
@ -46,68 +46,107 @@
|
||||||
</asp:Panel>
|
</asp:Panel>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<asp:Panel ID="UsersPanel" runat="server">
|
||||||
<asp:GridView ID="gvUsers" runat="server" AutoGenerateColumns="False" EnableViewState="true"
|
<asp:UpdatePanel ID="UsersUpdatePanel" runat="server" UpdateMode="Conditional" ChildrenAsTriggers="true">
|
||||||
Width="100%" EmptyDataText="gvUsers" CssSelectorClass="NormalGridView"
|
<ContentTemplate>
|
||||||
OnRowCommand="gvUsers_RowCommand" AllowPaging="True" AllowSorting="True"
|
<asp:GridView ID="gvUsers" runat="server" AutoGenerateColumns="False" EnableViewState="true"
|
||||||
DataSourceID="odsAccountsPaged" PageSize="20">
|
Width="100%" EmptyDataText="gvUsers" CssSelectorClass="NormalGridView" DataKeyNames="AccountId,AccountType"
|
||||||
<Columns>
|
OnRowCommand="gvUsers_RowCommand" AllowPaging="True" AllowSorting="True"
|
||||||
<asp:TemplateField>
|
DataSourceID="odsAccountsPaged" PageSize="20">
|
||||||
<ItemTemplate>
|
<Columns>
|
||||||
<asp:Image ID="img2" runat="server" Width="16px" Height="16px" ImageUrl='<%# GetStateImage((bool)Eval("Locked"),(bool)Eval("Disabled")) %>' ImageAlign="AbsMiddle" />
|
<asp:TemplateField>
|
||||||
</ItemTemplate>
|
<ItemTemplate>
|
||||||
</asp:TemplateField>
|
<asp:Image ID="img2" runat="server" Width="16px" Height="16px" ImageUrl='<%# GetStateImage((bool)Eval("Locked"),(bool)Eval("Disabled")) %>' ImageAlign="AbsMiddle" />
|
||||||
|
</ItemTemplate>
|
||||||
|
</asp:TemplateField>
|
||||||
|
|
||||||
<asp:TemplateField HeaderText="gvUsersDisplayName" SortExpression="DisplayName">
|
<asp:TemplateField HeaderText="gvUsersDisplayName" SortExpression="DisplayName">
|
||||||
<ItemStyle Width="25%"></ItemStyle>
|
<ItemStyle Width="25%"></ItemStyle>
|
||||||
<ItemTemplate>
|
<ItemTemplate>
|
||||||
<asp:Image ID="img1" runat="server" ImageUrl='<%# GetAccountImage((int)Eval("AccountType"),(bool)Eval("IsVIP")) %>' ImageAlign="AbsMiddle"/>
|
<asp:Image ID="img1" runat="server" ImageUrl='<%# GetAccountImage((int)Eval("AccountType"),(bool)Eval("IsVIP")) %>' ImageAlign="AbsMiddle"/>
|
||||||
<asp:hyperlink id="lnk1" runat="server"
|
<asp:hyperlink id="lnk1" runat="server"
|
||||||
NavigateUrl='<%# GetUserEditUrl(Eval("AccountId").ToString()) %>'>
|
NavigateUrl='<%# GetUserEditUrl(Eval("AccountId").ToString()) %>'>
|
||||||
<%# Eval("DisplayName") %>
|
<%# Eval("DisplayName") %>
|
||||||
</asp:hyperlink>
|
</asp:hyperlink>
|
||||||
</ItemTemplate>
|
</ItemTemplate>
|
||||||
</asp:TemplateField>
|
</asp:TemplateField>
|
||||||
<asp:BoundField HeaderText="gvUsersLogin" DataField="UserPrincipalName" SortExpression="UserPrincipalName" ItemStyle-Width="25%" />
|
<asp:BoundField HeaderText="gvUsersLogin" DataField="UserPrincipalName" SortExpression="UserPrincipalName" ItemStyle-Width="25%" />
|
||||||
<asp:TemplateField HeaderText="gvServiceLevel">
|
<asp:TemplateField HeaderText="gvServiceLevel">
|
||||||
<ItemStyle Width="25%"></ItemStyle>
|
<ItemStyle Width="25%"></ItemStyle>
|
||||||
<ItemTemplate>
|
<ItemTemplate>
|
||||||
<asp:Label id="lbServLevel" runat="server" ToolTip = '<%# GetServiceLevel((int)Eval("LevelId")).LevelDescription%>'>
|
<asp:Label id="lbServLevel" runat="server" ToolTip = '<%# GetServiceLevel((int)Eval("LevelId")).LevelDescription%>'>
|
||||||
<%# GetServiceLevel((int)Eval("LevelId")).LevelName%>
|
<%# GetServiceLevel((int)Eval("LevelId")).LevelName%>
|
||||||
</asp:Label>
|
</asp:Label>
|
||||||
</ItemTemplate>
|
</ItemTemplate>
|
||||||
</asp:TemplateField>
|
</asp:TemplateField>
|
||||||
<asp:BoundField HeaderText="gvUsersEmail" DataField="PrimaryEmailAddress" SortExpression="PrimaryEmailAddress" ItemStyle-Width="25%" />
|
<asp:BoundField HeaderText="gvUsersEmail" DataField="PrimaryEmailAddress" SortExpression="PrimaryEmailAddress" ItemStyle-Width="25%" />
|
||||||
<asp:BoundField HeaderText="gvSubscriberNumber" DataField="SubscriberNumber" ItemStyle-Width="20%" />
|
<asp:BoundField HeaderText="gvSubscriberNumber" DataField="SubscriberNumber" ItemStyle-Width="20%" />
|
||||||
<asp:TemplateField ItemStyle-Wrap="False">
|
<asp:TemplateField ItemStyle-Wrap="False">
|
||||||
<ItemTemplate>
|
<ItemTemplate>
|
||||||
<asp:ImageButton ID="Image2" runat="server" Width="16px" Height="16px" ToolTip="Mail" ImageUrl='<%# GetMailImage((int)Eval("AccountType")) %>' CommandName="OpenMailProperties" CommandArgument='<%# Eval("AccountId") %>' Enabled=<%# EnableMailImageButton((int)Eval("AccountType")) %>/>
|
<asp:ImageButton ID="Image2" runat="server" Width="16px" Height="16px" ToolTip="Mail" ImageUrl='<%# GetMailImage((int)Eval("AccountType")) %>' CommandName="OpenMailProperties" CommandArgument='<%# Eval("AccountId") %>' Enabled=<%# EnableMailImageButton((int)Eval("AccountType")) %>/>
|
||||||
<asp:ImageButton ID="Image3" runat="server" Width="16px" Height="16px" ToolTip="UC" ImageUrl='<%# GetOCSImage((bool)Eval("IsOCSUser"),(bool)Eval("IsLyncUser")) %>' CommandName="OpenUCProperties" CommandArgument='<%# GetOCSArgument((int)Eval("AccountId"),(bool)Eval("IsOCSUser"),(bool)Eval("IsLyncUser")) %>' Enabled=<%# EnableOCSImageButton((bool)Eval("IsOCSUser"),(bool)Eval("IsLyncUser")) %>/>
|
<asp:ImageButton ID="Image3" runat="server" Width="16px" Height="16px" ToolTip="UC" ImageUrl='<%# GetOCSImage((bool)Eval("IsOCSUser"),(bool)Eval("IsLyncUser")) %>' CommandName="OpenUCProperties" CommandArgument='<%# GetOCSArgument((int)Eval("AccountId"),(bool)Eval("IsOCSUser"),(bool)Eval("IsLyncUser")) %>' Enabled=<%# EnableOCSImageButton((bool)Eval("IsOCSUser"),(bool)Eval("IsLyncUser")) %>/>
|
||||||
<asp:ImageButton ID="Image4" runat="server" Width="16px" Height="16px" ToolTip="BlackBerry" ImageUrl='<%# GetBlackBerryImage((bool)Eval("IsBlackBerryUser")) %>' CommandName="OpenBlackBerryProperties" CommandArgument='<%# Eval("AccountId") %>' Enabled=<%# EnableBlackBerryImageButton((bool)Eval("IsBlackBerryUser")) %>/>
|
<asp:ImageButton ID="Image4" runat="server" Width="16px" Height="16px" ToolTip="BlackBerry" ImageUrl='<%# GetBlackBerryImage((bool)Eval("IsBlackBerryUser")) %>' CommandName="OpenBlackBerryProperties" CommandArgument='<%# Eval("AccountId") %>' Enabled=<%# EnableBlackBerryImageButton((bool)Eval("IsBlackBerryUser")) %>/>
|
||||||
<asp:Image ID="Image5" runat="server" Width="16px" Height="16px" ToolTip="CRM" ImageUrl='<%# GetCRMImage((Guid)Eval("CrmUserId")) %>' />
|
<asp:Image ID="Image5" runat="server" Width="16px" Height="16px" ToolTip="CRM" ImageUrl='<%# GetCRMImage((Guid)Eval("CrmUserId")) %>' />
|
||||||
</ItemTemplate>
|
</ItemTemplate>
|
||||||
</asp:TemplateField>
|
</asp:TemplateField>
|
||||||
<asp:TemplateField>
|
<asp:TemplateField>
|
||||||
<ItemTemplate>
|
<ItemTemplate>
|
||||||
<asp:ImageButton ID="cmdDelete" runat="server" Text="Delete" SkinID="ExchangeDelete"
|
<asp:ImageButton ID="cmdDelete" runat="server" Text="Delete" SkinID="ExchangeDelete" CommandName="DeleteItem"
|
||||||
CommandName="DeleteItem" CommandArgument='<%# Eval("AccountId") %>'
|
CommandArgument='<%# Container.DataItemIndex %>' meta:resourcekey="cmdDelete"></asp:ImageButton>
|
||||||
meta:resourcekey="cmdDelete" OnClientClick="return confirm('Remove this item?');"></asp:ImageButton>
|
</ItemTemplate>
|
||||||
</ItemTemplate>
|
</asp:TemplateField>
|
||||||
</asp:TemplateField>
|
</Columns>
|
||||||
</Columns>
|
</asp:GridView>
|
||||||
</asp:GridView>
|
<asp:ObjectDataSource ID="odsAccountsPaged" runat="server" EnablePaging="True"
|
||||||
<asp:ObjectDataSource ID="odsAccountsPaged" runat="server" EnablePaging="True"
|
SelectCountMethod="GetOrganizationUsersPagedCount"
|
||||||
SelectCountMethod="GetOrganizationUsersPagedCount"
|
SelectMethod="GetOrganizationUsersPaged"
|
||||||
SelectMethod="GetOrganizationUsersPaged"
|
SortParameterName="sortColumn"
|
||||||
SortParameterName="sortColumn"
|
TypeName="WebsitePanel.Portal.OrganizationsHelper"
|
||||||
TypeName="WebsitePanel.Portal.OrganizationsHelper"
|
OnSelected="odsAccountsPaged_Selected">
|
||||||
OnSelected="odsAccountsPaged_Selected">
|
<SelectParameters>
|
||||||
<SelectParameters>
|
<asp:QueryStringParameter Name="itemId" QueryStringField="ItemID" DefaultValue="0" />
|
||||||
<asp:QueryStringParameter Name="itemId" QueryStringField="ItemID" DefaultValue="0" />
|
<asp:ControlParameter Name="filterColumn" ControlID="ddlSearchColumn" PropertyName="SelectedValue" />
|
||||||
<asp:ControlParameter Name="filterColumn" ControlID="ddlSearchColumn" PropertyName="SelectedValue" />
|
<asp:ControlParameter Name="filterValue" ControlID="txtSearchValue" PropertyName="Text" />
|
||||||
<asp:ControlParameter Name="filterValue" ControlID="txtSearchValue" PropertyName="Text" />
|
</SelectParameters>
|
||||||
</SelectParameters>
|
</asp:ObjectDataSource>
|
||||||
</asp:ObjectDataSource>
|
<asp:Panel ID="DeleteUserPanel" runat="server" CssClass="Popup" style="display:none">
|
||||||
|
<table class="Popup-Header" cellpadding="0" cellspacing="0">
|
||||||
|
<tr>
|
||||||
|
<td class="Popup-HeaderLeft"></td>
|
||||||
|
<td class="Popup-HeaderTitle">
|
||||||
|
<asp:Localize ID="headerDeleteUser" runat="server" meta:resourcekey="headerDeleteUser"></asp:Localize>
|
||||||
|
</td>
|
||||||
|
<td class="Popup-HeaderRight"></td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
<div class="Popup-Content">
|
||||||
|
<div class="Popup-Body">
|
||||||
|
<br />
|
||||||
|
<asp:UpdatePanel ID="DeleteUserUpdatePanel" runat="server" UpdateMode="Conditional" ChildrenAsTriggers="true">
|
||||||
|
<ContentTemplate>
|
||||||
|
<asp:HiddenField ID="hdAccountId" runat="server" Value="0" />
|
||||||
|
<asp:Literal ID="litDeleteUser" runat="server" meta:resourcekey="litDeleteUser"></asp:Literal>
|
||||||
|
<br />
|
||||||
|
<asp:CheckBox ID="chkEnableForceArchiveMailbox" runat="server" meta:resourcekey="chkEnableForceArchiveMailbox" Visible="false" Checked="false" />
|
||||||
|
</ContentTemplate>
|
||||||
|
</asp:UpdatePanel>
|
||||||
|
<br />
|
||||||
|
</div>
|
||||||
|
<div class="FormFooter">
|
||||||
|
<asp:Button ID="btnDeleteUser" runat="server" CssClass="Button1" meta:resourcekey="btnDelete" Text="Delete" OnClientClick="return ShowProgressDialog('Deleting user...');" OnClick="btnDelete_Click" />
|
||||||
|
<asp:Button ID="btnCancelDelete" runat="server" CssClass="Button1" meta:resourcekey="btnCancel" Text="Cancel" CausesValidation="false" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</asp:Panel>
|
||||||
|
<asp:Button ID="btnDeleteUserFake" runat="server" style="display:none;" />
|
||||||
|
<ajaxToolkit:ModalPopupExtender ID="DeleteUserModal" runat="server" TargetControlID="btnDeleteUserFake" EnableViewState="true"
|
||||||
|
PopupControlID="DeleteUserPanel" BackgroundCssClass="modalBackground" DropShadow="false" CancelControlID="btnCancelDelete" />
|
||||||
|
</ContentTemplate>
|
||||||
|
<triggers>
|
||||||
|
<asp:PostBackTrigger ControlID="btnDeleteUser" />
|
||||||
|
</triggers>
|
||||||
|
</asp:UpdatePanel>
|
||||||
|
</asp:Panel>
|
||||||
<br />
|
<br />
|
||||||
<div>
|
<div>
|
||||||
<asp:Localize ID="locQuota" runat="server" meta:resourcekey="locQuota" Text="Total Users Created:"></asp:Localize>
|
<asp:Localize ID="locQuota" runat="server" meta:resourcekey="locQuota" Text="Total Users Created:"></asp:Localize>
|
||||||
|
@ -127,7 +166,6 @@
|
||||||
</div>
|
</div>
|
||||||
</ItemTemplate>
|
</ItemTemplate>
|
||||||
</asp:Repeater>
|
</asp:Repeater>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -130,28 +130,30 @@ namespace WebsitePanel.Portal.HostedSolution
|
||||||
{
|
{
|
||||||
if (e.CommandName == "DeleteItem")
|
if (e.CommandName == "DeleteItem")
|
||||||
{
|
{
|
||||||
// delete user
|
int rowIndex = Utils.ParseInt(e.CommandArgument.ToString(), 0);
|
||||||
int accountId = Utils.ParseInt(e.CommandArgument.ToString(), 0);
|
|
||||||
|
|
||||||
try
|
var accountId = Utils.ParseInt(gvUsers.DataKeys[rowIndex][0], 0);
|
||||||
|
|
||||||
|
var accountType = (ExchangeAccountType)gvUsers.DataKeys[rowIndex][1];
|
||||||
|
|
||||||
|
if (cntx.Quotas.ContainsKey(Quotas.ORGANIZATION_DELETED_USERS) && accountType != ExchangeAccountType.User)
|
||||||
{
|
{
|
||||||
int result = ES.Services.Organizations.DeleteUser(PanelRequest.ItemID, accountId);
|
chkEnableForceArchiveMailbox.Visible = true;
|
||||||
if (result < 0)
|
|
||||||
{
|
|
||||||
messageBox.ShowResultMessage(result);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// rebind grid
|
var account = ES.Services.ExchangeServer.GetAccount(PanelRequest.ItemID, accountId);
|
||||||
gvUsers.DataBind();
|
var mailboxPlan = ES.Services.ExchangeServer.GetExchangeMailboxPlan(PanelRequest.ItemID, account.MailboxPlanId);
|
||||||
|
|
||||||
// bind stats
|
chkEnableForceArchiveMailbox.Checked = mailboxPlan.EnableForceArchiveDeletion;
|
||||||
BindStats();
|
chkEnableForceArchiveMailbox.Enabled = !mailboxPlan.EnableForceArchiveDeletion;
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
else
|
||||||
{
|
{
|
||||||
messageBox.ShowErrorMessage("ORGANIZATIONS_DELETE_USERS", ex);
|
chkEnableForceArchiveMailbox.Visible = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
hdAccountId.Value = accountId.ToString();
|
||||||
|
|
||||||
|
DeleteUserModal.Show();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (e.CommandName == "OpenMailProperties")
|
if (e.CommandName == "OpenMailProperties")
|
||||||
|
@ -195,13 +197,9 @@ namespace WebsitePanel.Portal.HostedSolution
|
||||||
Response.Redirect(EditUrl("SpaceID", PanelSecurity.PackageId.ToString(), "edit_lync_user",
|
Response.Redirect(EditUrl("SpaceID", PanelSecurity.PackageId.ToString(), "edit_lync_user",
|
||||||
"AccountID=" + accountId,
|
"AccountID=" + accountId,
|
||||||
"ItemID=" + PanelRequest.ItemID));
|
"ItemID=" + PanelRequest.ItemID));
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public string GetAccountImage(int accountTypeId, bool vip)
|
public string GetAccountImage(int accountTypeId, bool vip)
|
||||||
{
|
{
|
||||||
string imgName = string.Empty;
|
string imgName = string.Empty;
|
||||||
|
@ -354,5 +352,41 @@ namespace WebsitePanel.Portal.HostedSolution
|
||||||
|
|
||||||
return serviceLevel;
|
return serviceLevel;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected void btnDelete_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
DeleteUserModal.Hide();
|
||||||
|
|
||||||
|
// delete user
|
||||||
|
try
|
||||||
|
{
|
||||||
|
int result = 0;
|
||||||
|
|
||||||
|
if (cntx.Quotas.ContainsKey(Quotas.ORGANIZATION_DELETED_USERS))
|
||||||
|
{
|
||||||
|
result = ES.Services.Organizations.SetDeletedUser(PanelRequest.ItemID, int.Parse(hdAccountId.Value), chkEnableForceArchiveMailbox.Checked);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
result = ES.Services.Organizations.DeleteUser(PanelRequest.ItemID, int.Parse(hdAccountId.Value));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (result < 0)
|
||||||
|
{
|
||||||
|
messageBox.ShowResultMessage(result);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// rebind grid
|
||||||
|
gvUsers.DataBind();
|
||||||
|
|
||||||
|
// bind stats
|
||||||
|
BindStats();
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
messageBox.ShowErrorMessage("ORGANIZATIONS_DELETE_USERS", ex);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -130,6 +130,24 @@ namespace WebsitePanel.Portal.HostedSolution {
|
||||||
/// </remarks>
|
/// </remarks>
|
||||||
protected global::System.Web.UI.WebControls.ImageButton cmdSearch;
|
protected global::System.Web.UI.WebControls.ImageButton cmdSearch;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// UsersPanel control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Panel UsersPanel;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// UsersUpdatePanel control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.UpdatePanel UsersUpdatePanel;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// gvUsers control.
|
/// gvUsers control.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
@ -148,6 +166,96 @@ namespace WebsitePanel.Portal.HostedSolution {
|
||||||
/// </remarks>
|
/// </remarks>
|
||||||
protected global::System.Web.UI.WebControls.ObjectDataSource odsAccountsPaged;
|
protected global::System.Web.UI.WebControls.ObjectDataSource odsAccountsPaged;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// DeleteUserPanel control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Panel DeleteUserPanel;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// headerDeleteUser control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Localize headerDeleteUser;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// DeleteUserUpdatePanel control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.UpdatePanel DeleteUserUpdatePanel;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// hdAccountId control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.HiddenField hdAccountId;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// litDeleteUser control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Literal litDeleteUser;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// chkEnableForceArchiveMailbox control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.CheckBox chkEnableForceArchiveMailbox;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// btnDeleteUser control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Button btnDeleteUser;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// btnCancelDelete control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Button btnCancelDelete;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// btnDeleteUserFake control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Button btnDeleteUserFake;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// DeleteUserModal control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::AjaxControlToolkit.ModalPopupExtender DeleteUserModal;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// locQuota control.
|
/// locQuota control.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
|
@ -44,6 +44,12 @@ namespace WebsitePanel.Portal.ExchangeServer.UserControls
|
||||||
Unselected
|
Unselected
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public bool Disabled
|
||||||
|
{
|
||||||
|
get { return ViewState["Disabled"] != null ? (bool)ViewState["Disabled"] : false; }
|
||||||
|
set { ViewState["Disabled"] = value; }
|
||||||
|
}
|
||||||
|
|
||||||
public bool EnableMailboxOnly
|
public bool EnableMailboxOnly
|
||||||
{
|
{
|
||||||
get {return ViewState["EnableMailboxOnly"] != null ? (bool)ViewState["EnableMailboxOnly"]: false; }
|
get {return ViewState["EnableMailboxOnly"] != null ? (bool)ViewState["EnableMailboxOnly"]: false; }
|
||||||
|
@ -116,6 +122,11 @@ namespace WebsitePanel.Portal.ExchangeServer.UserControls
|
||||||
// toggle controls
|
// toggle controls
|
||||||
if (!IsPostBack)
|
if (!IsPostBack)
|
||||||
{
|
{
|
||||||
|
if (Disabled)
|
||||||
|
{
|
||||||
|
btnAdd.Visible = btnDelete.Visible = gvAccounts.Columns[0].Visible = false;
|
||||||
|
}
|
||||||
|
|
||||||
chkIncludeMailboxes.Visible = chkIncludeRooms.Visible = chkIncludeEquipment.Visible = MailboxesEnabled;
|
chkIncludeMailboxes.Visible = chkIncludeRooms.Visible = chkIncludeEquipment.Visible = MailboxesEnabled;
|
||||||
chkIncludeMailboxes.Checked = chkIncludeRooms.Checked = chkIncludeEquipment.Checked = MailboxesEnabled;
|
chkIncludeMailboxes.Checked = chkIncludeRooms.Checked = chkIncludeEquipment.Checked = MailboxesEnabled;
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,132 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<data name="Tab.Advanced" xml:space="preserve">
|
||||||
|
<value>Advanced</value>
|
||||||
|
</data>
|
||||||
|
<data name="Tab.General" xml:space="preserve">
|
||||||
|
<value>General</value>
|
||||||
|
</data>
|
||||||
|
<data name="Tab.Settings" xml:space="preserve">
|
||||||
|
<value>Settings</value>
|
||||||
|
</data>
|
||||||
|
<data name="Tab.MemberOf" xml:space="preserve">
|
||||||
|
<value>Member Of</value>
|
||||||
|
</data>
|
||||||
|
</root>
|
|
@ -225,4 +225,7 @@
|
||||||
<data name="Text.RetentionPolicyTag" xml:space="preserve">
|
<data name="Text.RetentionPolicyTag" xml:space="preserve">
|
||||||
<value>Retention Policy Tag</value>
|
<value>Retention Policy Tag</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="Text.DeletedUsers" xml:space="preserve">
|
||||||
|
<value>Deleted Users</value>
|
||||||
|
</data>
|
||||||
</root>
|
</root>
|
|
@ -0,0 +1,27 @@
|
||||||
|
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="DeletedUserTabs.ascx.cs" Inherits="WebsitePanel.Portal.ExchangeServer.UserControls.DeletedUserTabs" %>
|
||||||
|
<table width="100%" cellpadding="0" cellspacing="1">
|
||||||
|
<tr>
|
||||||
|
<td class="Tabs">
|
||||||
|
|
||||||
|
<asp:DataList ID="dlTabs" runat="server" RepeatDirection="Horizontal"
|
||||||
|
RepeatLayout="Flow" EnableViewState="false" RepeatColumns="6" SeparatorStyle-CssClass="Separator" SeparatorStyle-Height="22px" >
|
||||||
|
<ItemStyle Wrap="False" />
|
||||||
|
<ItemTemplate >
|
||||||
|
<asp:HyperLink ID="lnkTab" runat="server" CssClass="Tab" NavigateUrl='<%# Eval("Url") %>'>
|
||||||
|
<%# Eval("Name") %>
|
||||||
|
</asp:HyperLink>
|
||||||
|
</ItemTemplate>
|
||||||
|
<SelectedItemStyle Wrap="False" />
|
||||||
|
<SelectedItemTemplate>
|
||||||
|
<asp:HyperLink ID="lnkSelTab" runat="server" CssClass="ActiveTab" NavigateUrl='<%# Eval("Url") %>'>
|
||||||
|
<%# Eval("Name") %>
|
||||||
|
</asp:HyperLink>
|
||||||
|
</SelectedItemTemplate>
|
||||||
|
<SeparatorTemplate>
|
||||||
|
|
||||||
|
</SeparatorTemplate>
|
||||||
|
</asp:DataList>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
<br />
|
|
@ -0,0 +1,100 @@
|
||||||
|
// Copyright (c) 2014, Outercurve Foundation.
|
||||||
|
// All rights reserved.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without modification,
|
||||||
|
// are permitted provided that the following conditions are met:
|
||||||
|
//
|
||||||
|
// - Redistributions of source code must retain the above copyright notice, this
|
||||||
|
// list of conditions and the following disclaimer.
|
||||||
|
//
|
||||||
|
// - Redistributions in binary form must reproduce the above copyright notice,
|
||||||
|
// this list of conditions and the following disclaimer in the documentation
|
||||||
|
// and/or other materials provided with the distribution.
|
||||||
|
//
|
||||||
|
// - Neither the name of the Outercurve Foundation nor the names of its
|
||||||
|
// contributors may be used to endorse or promote products derived from this
|
||||||
|
// software without specific prior written permission.
|
||||||
|
//
|
||||||
|
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
||||||
|
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||||
|
// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||||
|
// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
|
||||||
|
// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||||
|
// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||||
|
// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
||||||
|
// ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||||
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||||
|
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using WebsitePanel.Portal.Code.UserControls;
|
||||||
|
using WebsitePanel.WebPortal;
|
||||||
|
using WebsitePanel.EnterpriseServer;
|
||||||
|
using WebsitePanel.Providers.HostedSolution;
|
||||||
|
|
||||||
|
namespace WebsitePanel.Portal.ExchangeServer.UserControls
|
||||||
|
{
|
||||||
|
public partial class DeletedUserTabs : WebsitePanelControlBase
|
||||||
|
{
|
||||||
|
private string selectedTab;
|
||||||
|
public string SelectedTab
|
||||||
|
{
|
||||||
|
get { return selectedTab; }
|
||||||
|
set { selectedTab = value; }
|
||||||
|
}
|
||||||
|
|
||||||
|
protected void Page_Load(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
BindTabs();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void BindTabs()
|
||||||
|
{
|
||||||
|
List<Tab> tabsList = new List<Tab>();
|
||||||
|
tabsList.Add(CreateTab("view_deleted_user", "Tab.General"));
|
||||||
|
|
||||||
|
PackageContext cntx = PackagesHelper.GetCachedPackageContext(PanelSecurity.PackageId);
|
||||||
|
|
||||||
|
bool bSuccess = Utils.CheckQouta(Quotas.ORGANIZATION_SECURITYGROUPS, cntx);
|
||||||
|
|
||||||
|
if (!bSuccess)
|
||||||
|
{
|
||||||
|
// get user settings
|
||||||
|
OrganizationUser user = ES.Services.Organizations.GetUserGeneralSettings(PanelRequest.ItemID, PanelRequest.AccountID);
|
||||||
|
|
||||||
|
bSuccess = (Utils.CheckQouta(Quotas.EXCHANGE2007_DISTRIBUTIONLISTS, cntx)
|
||||||
|
&& (user.AccountType == ExchangeAccountType.Mailbox
|
||||||
|
|| user.AccountType == ExchangeAccountType.Room
|
||||||
|
|| user.AccountType == ExchangeAccountType.Equipment));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (bSuccess)
|
||||||
|
{
|
||||||
|
tabsList.Add(CreateTab("deleted_user_memberof", "Tab.MemberOf"));
|
||||||
|
}
|
||||||
|
|
||||||
|
// find selected menu item
|
||||||
|
int idx = 0;
|
||||||
|
foreach (Tab tab in tabsList)
|
||||||
|
{
|
||||||
|
if (String.Compare(tab.Id, SelectedTab, true) == 0)
|
||||||
|
break;
|
||||||
|
idx++;
|
||||||
|
}
|
||||||
|
dlTabs.SelectedIndex = idx;
|
||||||
|
|
||||||
|
dlTabs.DataSource = tabsList;
|
||||||
|
dlTabs.DataBind();
|
||||||
|
}
|
||||||
|
|
||||||
|
private Tab CreateTab(string id, string text)
|
||||||
|
{
|
||||||
|
return new Tab(id, GetLocalizedString(text),
|
||||||
|
HostModule.EditUrl("AccountID", PanelRequest.AccountID.ToString(), id,
|
||||||
|
"SpaceID=" + PanelSecurity.PackageId.ToString(),
|
||||||
|
"ItemID=" + PanelRequest.ItemID.ToString(),
|
||||||
|
"Context=User"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,24 @@
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// <auto-generated>
|
||||||
|
// This code was generated by a tool.
|
||||||
|
//
|
||||||
|
// Changes to this file may cause incorrect behavior and will be lost if
|
||||||
|
// the code is regenerated.
|
||||||
|
// </auto-generated>
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
namespace WebsitePanel.Portal.ExchangeServer.UserControls {
|
||||||
|
|
||||||
|
|
||||||
|
public partial class DeletedUserTabs {
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// dlTabs control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.DataList dlTabs;
|
||||||
|
}
|
||||||
|
}
|
|
@ -186,9 +186,13 @@ namespace WebsitePanel.Portal.ExchangeServer.UserControls
|
||||||
if (Utils.CheckQouta(Quotas.ORGANIZATION_DOMAINS, cntx))
|
if (Utils.CheckQouta(Quotas.ORGANIZATION_DOMAINS, cntx))
|
||||||
organizationGroup.MenuItems.Add(CreateMenuItem("DomainNames", "org_domains"));
|
organizationGroup.MenuItems.Add(CreateMenuItem("DomainNames", "org_domains"));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Utils.CheckQouta(Quotas.ORGANIZATION_USERS, cntx))
|
if (Utils.CheckQouta(Quotas.ORGANIZATION_USERS, cntx))
|
||||||
organizationGroup.MenuItems.Add(CreateMenuItem("Users", "users"));
|
organizationGroup.MenuItems.Add(CreateMenuItem("Users", "users"));
|
||||||
|
|
||||||
|
if (Utils.CheckQouta(Quotas.ORGANIZATION_DELETED_USERS, cntx))
|
||||||
|
organizationGroup.MenuItems.Add(CreateMenuItem("DeletedUsers", "deleted_users"));
|
||||||
|
|
||||||
if (Utils.CheckQouta(Quotas.ORGANIZATION_SECURITYGROUPS, cntx))
|
if (Utils.CheckQouta(Quotas.ORGANIZATION_SECURITYGROUPS, cntx))
|
||||||
organizationGroup.MenuItems.Add(CreateMenuItem("SecurityGroups", "secur_groups"));
|
organizationGroup.MenuItems.Add(CreateMenuItem("SecurityGroups", "secur_groups"));
|
||||||
|
|
||||||
|
|
|
@ -112,10 +112,10 @@
|
||||||
<value>2.0</value>
|
<value>2.0</value>
|
||||||
</resheader>
|
</resheader>
|
||||||
<resheader name="reader">
|
<resheader name="reader">
|
||||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
</resheader>
|
</resheader>
|
||||||
<resheader name="writer">
|
<resheader name="writer">
|
||||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
</resheader>
|
</resheader>
|
||||||
<data name="lblPrimaryDomainController.Text" xml:space="preserve">
|
<data name="lblPrimaryDomainController.Text" xml:space="preserve">
|
||||||
<value>Preferred Domain Controller:</value>
|
<value>Preferred Domain Controller:</value>
|
||||||
|
@ -135,4 +135,7 @@
|
||||||
<data name="listItemAppendOrgId.Text" xml:space="preserve">
|
<data name="listItemAppendOrgId.Text" xml:space="preserve">
|
||||||
<value>Append OrgID</value>
|
<value>Append OrgID</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="lblArchiveStorageSpace.Text" xml:space="preserve">
|
||||||
|
<value>Archive Storage Path:</value>
|
||||||
|
</data>
|
||||||
</root>
|
</root>
|
|
@ -32,4 +32,8 @@
|
||||||
</asp:DropDownList>
|
</asp:DropDownList>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="SubHead" nowrap="true"><asp:Label runat="server" ID="Label2" meta:resourcekey="lblArchiveStorageSpace" /></td>
|
||||||
|
<td><asp:TextBox runat="server" ID="txtArchiveStorageSpace" MaxLength="100" Width="200px" /></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
|
@ -36,6 +36,7 @@ namespace WebsitePanel.Portal.ProviderControls
|
||||||
public const string PrimaryDomainController = "PrimaryDomainController";
|
public const string PrimaryDomainController = "PrimaryDomainController";
|
||||||
public const string TemporyDomainName = "TempDomain";
|
public const string TemporyDomainName = "TempDomain";
|
||||||
public const string UserNameFormat = "UserNameFormat";
|
public const string UserNameFormat = "UserNameFormat";
|
||||||
|
public const string ArchiveStoragePath = "ArchiveStoragePath";
|
||||||
|
|
||||||
protected void Page_Load(object sender, EventArgs e)
|
protected void Page_Load(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
|
@ -53,6 +54,8 @@ namespace WebsitePanel.Portal.ProviderControls
|
||||||
UserNameFormatDropDown.SelectedValue =
|
UserNameFormatDropDown.SelectedValue =
|
||||||
UserNameFormatDropDown.Items.FindByText(settings[UserNameFormat]).Value;
|
UserNameFormatDropDown.Items.FindByText(settings[UserNameFormat]).Value;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
txtArchiveStorageSpace.Text = settings[ArchiveStoragePath];
|
||||||
}
|
}
|
||||||
|
|
||||||
public void SaveSettings(System.Collections.Specialized.StringDictionary settings)
|
public void SaveSettings(System.Collections.Specialized.StringDictionary settings)
|
||||||
|
@ -61,6 +64,7 @@ namespace WebsitePanel.Portal.ProviderControls
|
||||||
settings[PrimaryDomainController] = txtPrimaryDomainController.Text.Trim();
|
settings[PrimaryDomainController] = txtPrimaryDomainController.Text.Trim();
|
||||||
settings[TemporyDomainName] = txtTemporyDomainName.Text.Trim();
|
settings[TemporyDomainName] = txtTemporyDomainName.Text.Trim();
|
||||||
settings[UserNameFormat] = UserNameFormatDropDown.SelectedItem.Text;
|
settings[UserNameFormat] = UserNameFormatDropDown.SelectedItem.Text;
|
||||||
|
settings[ArchiveStoragePath] = txtArchiveStorageSpace.Text.Trim();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -120,5 +120,23 @@ namespace WebsitePanel.Portal.ProviderControls {
|
||||||
/// To modify move field declaration from designer file to code-behind file.
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
/// </remarks>
|
/// </remarks>
|
||||||
protected global::System.Web.UI.WebControls.DropDownList UserNameFormatDropDown;
|
protected global::System.Web.UI.WebControls.DropDownList UserNameFormatDropDown;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Label2 control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Label Label2;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// txtArchiveStorageSpace control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.TextBox txtArchiveStorageSpace;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -37,6 +37,10 @@
|
||||||
<td class="SubHead" nowrap><asp:Label ID="lblUserAccounts" runat="server" meta:resourcekey="lblUserAccounts" Text="User Accounts:"></asp:Label></td>
|
<td class="SubHead" nowrap><asp:Label ID="lblUserAccounts" runat="server" meta:resourcekey="lblUserAccounts" Text="User Accounts:"></asp:Label></td>
|
||||||
<td class="Normal"><wsp:Quota ID="quotaUserAccounts" runat="server" QuotaName="HostedSolution.Users" DisplayGauge="True" /></td>
|
<td class="Normal"><wsp:Quota ID="quotaUserAccounts" runat="server" QuotaName="HostedSolution.Users" DisplayGauge="True" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr ID="pnlDeletedUsers" runat="server">
|
||||||
|
<td class="SubHead" nowrap><asp:Label ID="lblDeletedUsers" runat="server" meta:resourcekey="lblDeletedUsers" Text="Deleted Users:"></asp:Label></td>
|
||||||
|
<td class="Normal"><wsp:Quota ID="quotaDeletedUsers" runat="server" QuotaName="HostedSolution.DeletedUsers" DisplayGauge="True" /></td>
|
||||||
|
</tr>
|
||||||
<tr ID="pnlExchangeAccounts" runat="server">
|
<tr ID="pnlExchangeAccounts" runat="server">
|
||||||
<td class="SubHead" nowrap><asp:Label ID="lblExchangeAccounts" runat="server" meta:resourcekey="lblExchangeAccounts" Text="Exchange Accounts:"></asp:Label></td>
|
<td class="SubHead" nowrap><asp:Label ID="lblExchangeAccounts" runat="server" meta:resourcekey="lblExchangeAccounts" Text="Exchange Accounts:"></asp:Label></td>
|
||||||
<td class="Normal"><wsp:Quota ID="quotaExchangeAccounts" runat="server" QuotaName="Exchange2007.Mailboxes" DisplayGauge="True" /></td>
|
<td class="Normal"><wsp:Quota ID="quotaExchangeAccounts" runat="server" QuotaName="Exchange2007.Mailboxes" DisplayGauge="True" /></td>
|
||||||
|
|
|
@ -60,6 +60,7 @@ namespace WebsitePanel.Portal
|
||||||
//{ "quotaDomainPointers", "pnlDomainPointers" },
|
//{ "quotaDomainPointers", "pnlDomainPointers" },
|
||||||
{ "quotaOrganizations", "pnlOrganizations" },
|
{ "quotaOrganizations", "pnlOrganizations" },
|
||||||
{ "quotaUserAccounts", "pnlUserAccounts" },
|
{ "quotaUserAccounts", "pnlUserAccounts" },
|
||||||
|
{ "quotaDeletedUsers", "pnlDeletedUsers" },
|
||||||
{ "quotaMailAccounts", "pnlMailAccounts" },
|
{ "quotaMailAccounts", "pnlMailAccounts" },
|
||||||
{ "quotaExchangeAccounts", "pnlExchangeAccounts" },
|
{ "quotaExchangeAccounts", "pnlExchangeAccounts" },
|
||||||
{ "quotaOCSUsers", "pnlOCSUsers" },
|
{ "quotaOCSUsers", "pnlOCSUsers" },
|
||||||
|
|
|
@ -211,6 +211,33 @@ namespace WebsitePanel.Portal {
|
||||||
/// </remarks>
|
/// </remarks>
|
||||||
protected global::WebsitePanel.Portal.Quota quotaUserAccounts;
|
protected global::WebsitePanel.Portal.Quota quotaUserAccounts;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// pnlDeletedUsers control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.HtmlControls.HtmlTableRow pnlDeletedUsers;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// lblDeletedUsers control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.WebControls.Label lblDeletedUsers;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// quotaDeletedUsers control.
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// Auto-generated field.
|
||||||
|
/// To modify move field declaration from designer file to code-behind file.
|
||||||
|
/// </remarks>
|
||||||
|
protected global::WebsitePanel.Portal.Quota quotaDeletedUsers;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// pnlExchangeAccounts control.
|
/// pnlExchangeAccounts control.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
|
@ -169,9 +169,13 @@ namespace WebsitePanel.Portal.UserControls
|
||||||
if (Utils.CheckQouta(Quotas.ORGANIZATION_DOMAINS, Cntx))
|
if (Utils.CheckQouta(Quotas.ORGANIZATION_DOMAINS, Cntx))
|
||||||
items.Add(CreateMenuItem("DomainNames", "org_domains"));
|
items.Add(CreateMenuItem("DomainNames", "org_domains"));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Utils.CheckQouta(Quotas.ORGANIZATION_USERS, Cntx))
|
if (Utils.CheckQouta(Quotas.ORGANIZATION_USERS, Cntx))
|
||||||
items.Add(CreateMenuItem("Users", "users", @"Icons/user_48.png"));
|
items.Add(CreateMenuItem("Users", "users", @"Icons/user_48.png"));
|
||||||
|
|
||||||
|
if (Utils.CheckQouta(Quotas.ORGANIZATION_DELETED_USERS, Cntx))
|
||||||
|
items.Add(CreateMenuItem("DeletedUsers", "deleted_users", @"Icons/deleted_user_48.png"));
|
||||||
|
|
||||||
if (Utils.CheckQouta(Quotas.ORGANIZATION_SECURITYGROUPS, Cntx))
|
if (Utils.CheckQouta(Quotas.ORGANIZATION_SECURITYGROUPS, Cntx))
|
||||||
items.Add(CreateMenuItem("SecurityGroups", "secur_groups", @"Icons/group_48.png"));
|
items.Add(CreateMenuItem("SecurityGroups", "secur_groups", @"Icons/group_48.png"));
|
||||||
}
|
}
|
||||||
|
|
|
@ -211,19 +211,47 @@
|
||||||
<Compile Include="Code\ReportingServices\IResourceStorage.cs" />
|
<Compile Include="Code\ReportingServices\IResourceStorage.cs" />
|
||||||
<Compile Include="Code\ReportingServices\ReportingServicesUtils.cs" />
|
<Compile Include="Code\ReportingServices\ReportingServicesUtils.cs" />
|
||||||
<Compile Include="Code\UserControls\Tab.cs" />
|
<Compile Include="Code\UserControls\Tab.cs" />
|
||||||
<Compile Include="ExchangeServer\ExchangeCheckDomainName.ascx.cs">
|
<Compile Include="ExchangeServer\OrganizationDeletedUsers.ascx.cs">
|
||||||
<DependentUpon>ExchangeCheckDomainName.ascx</DependentUpon>
|
<DependentUpon>OrganizationDeletedUsers.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
<SubType>ASPXCodeBehind</SubType>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="ExchangeServer\ExchangeCheckDomainName.ascx.designer.cs">
|
<Compile Include="ExchangeServer\ExchangeCheckDomainName.ascx.cs">
|
||||||
|
<DependentUpon>ExchangeCheckDomainName.ascx</DependentUpon>
|
||||||
|
<SubType>ASPXCodeBehind</SubType>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="ExchangeServer\OrganizationDeletedUsers.ascx.designer.cs">
|
||||||
|
<DependentUpon>OrganizationDeletedUsers.ascx</DependentUpon>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="ExchangeServer\ExchangeCheckDomainName.ascx.designer.cs">
|
||||||
<DependentUpon>ExchangeCheckDomainName.ascx</DependentUpon>
|
<DependentUpon>ExchangeCheckDomainName.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="ProviderControls\Windows2012_Settings.ascx.cs">
|
<Compile Include="ExchangeServer\OrganizationDeletedUserGeneralSettings.ascx.cs">
|
||||||
|
<DependentUpon>OrganizationDeletedUserGeneralSettings.ascx</DependentUpon>
|
||||||
|
<SubType>ASPXCodeBehind</SubType>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="ProviderControls\Windows2012_Settings.ascx.cs">
|
||||||
<DependentUpon>Windows2012_Settings.ascx</DependentUpon>
|
<DependentUpon>Windows2012_Settings.ascx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
<SubType>ASPXCodeBehind</SubType>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="ProviderControls\Windows2012_Settings.ascx.designer.cs">
|
<Compile Include="ExchangeServer\OrganizationDeletedUserGeneralSettings.ascx.designer.cs">
|
||||||
|
<DependentUpon>OrganizationDeletedUserGeneralSettings.ascx</DependentUpon>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="ProviderControls\Windows2012_Settings.ascx.designer.cs">
|
||||||
<DependentUpon>Windows2012_Settings.ascx</DependentUpon>
|
<DependentUpon>Windows2012_Settings.ascx</DependentUpon>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="ExchangeServer\OrganizationDeletedUserMemberOf.ascx.cs">
|
||||||
|
<DependentUpon>OrganizationDeletedUserMemberOf.ascx</DependentUpon>
|
||||||
|
<SubType>ASPXCodeBehind</SubType>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="ExchangeServer\OrganizationDeletedUserMemberOf.ascx.designer.cs">
|
||||||
|
<DependentUpon>OrganizationDeletedUserMemberOf.ascx</DependentUpon>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="ExchangeServer\UserControls\DeletedUserTabs.ascx.cs">
|
||||||
|
<DependentUpon>DeletedUserTabs.ascx</DependentUpon>
|
||||||
|
<SubType>ASPXCodeBehind</SubType>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="ExchangeServer\UserControls\DeletedUserTabs.ascx.designer.cs">
|
||||||
|
<DependentUpon>DeletedUserTabs.ascx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="RDSServersAddserver.ascx.cs">
|
<Compile Include="RDSServersAddserver.ascx.cs">
|
||||||
<DependentUpon>RDSServersAddserver.ascx</DependentUpon>
|
<DependentUpon>RDSServersAddserver.ascx</DependentUpon>
|
||||||
|
@ -4307,6 +4335,10 @@
|
||||||
<Content Include="ApplyEnableHardQuotaFeature.ascx" />
|
<Content Include="ApplyEnableHardQuotaFeature.ascx" />
|
||||||
<Content Include="ExchangeServer\ExchangeCheckDomainName.ascx" />
|
<Content Include="ExchangeServer\ExchangeCheckDomainName.ascx" />
|
||||||
<Content Include="ProviderControls\Windows2012_Settings.ascx" />
|
<Content Include="ProviderControls\Windows2012_Settings.ascx" />
|
||||||
|
<Content Include="ExchangeServer\OrganizationDeletedUsers.ascx" />
|
||||||
|
<Content Include="ExchangeServer\OrganizationDeletedUserGeneralSettings.ascx" />
|
||||||
|
<Content Include="ExchangeServer\OrganizationDeletedUserMemberOf.ascx" />
|
||||||
|
<Content Include="ExchangeServer\UserControls\DeletedUserTabs.ascx" />
|
||||||
<Content Include="RDSServersAddserver.ascx" />
|
<Content Include="RDSServersAddserver.ascx" />
|
||||||
<Content Include="RDSServers.ascx" />
|
<Content Include="RDSServers.ascx" />
|
||||||
<Content Include="RDS\AssignedRDSServers.ascx" />
|
<Content Include="RDS\AssignedRDSServers.ascx" />
|
||||||
|
@ -5654,7 +5686,23 @@
|
||||||
<Content Include="RDS\UserControls\App_LocalResources\RDSCollectionServers.ascx.resx" />
|
<Content Include="RDS\UserControls\App_LocalResources\RDSCollectionServers.ascx.resx" />
|
||||||
<Content Include="RDS\UserControls\App_LocalResources\RDSCollectionApps.ascx.resx" />
|
<Content Include="RDS\UserControls\App_LocalResources\RDSCollectionApps.ascx.resx" />
|
||||||
<Content Include="ProviderControls\App_LocalResources\RDS_Settings.ascx.resx" />
|
<Content Include="ProviderControls\App_LocalResources\RDS_Settings.ascx.resx" />
|
||||||
<Content Include="UserControls\App_LocalResources\DomainControl.ascx.resx" />
|
<Content Include="UserControls\App_LocalResources\DomainControl.ascx.resx">
|
||||||
|
<SubType>Designer</SubType>
|
||||||
|
</Content>
|
||||||
|
<Content Include="ExchangeServer\App_LocalResources\OrganizationDeletedUsers.ascx.resx">
|
||||||
|
<SubType>Designer</SubType>
|
||||||
|
</Content>
|
||||||
|
<Content Include="ExchangeServer\OrganizationUserGeneralSettings.ascx.resx">
|
||||||
|
<SubType>Designer</SubType>
|
||||||
|
</Content>
|
||||||
|
<Content Include="ExchangeServer\OrganizationUserMemberOf.ascx.resx" />
|
||||||
|
<Content Include="ExchangeServer\App_LocalResources\OrganizationDeletedUserGeneralSettings.ascx.resx">
|
||||||
|
<SubType>Designer</SubType>
|
||||||
|
</Content>
|
||||||
|
<Content Include="ExchangeServer\App_LocalResources\OrganizationDeletedUserMemberOf.ascx.resx" />
|
||||||
|
<Content Include="ExchangeServer\UserControls\App_LocalResources\DeletedUserTabs.ascx.resx">
|
||||||
|
<SubType>Designer</SubType>
|
||||||
|
</Content>
|
||||||
<EmbeddedResource Include="UserControls\App_LocalResources\EditDomainsList.ascx.resx">
|
<EmbeddedResource Include="UserControls\App_LocalResources\EditDomainsList.ascx.resx">
|
||||||
<SubType>Designer</SubType>
|
<SubType>Designer</SubType>
|
||||||
</EmbeddedResource>
|
</EmbeddedResource>
|
||||||
|
|
|
@ -1,55 +1,55 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<configuration>
|
<configuration>
|
||||||
<appSettings>
|
<appSettings>
|
||||||
<add key="WebPortal.ThemeProvider" value="WebsitePanel.Portal.WebPortalThemeProvider, WebsitePanel.Portal.Modules" />
|
<add key="WebPortal.ThemeProvider" value="WebsitePanel.Portal.WebPortalThemeProvider, WebsitePanel.Portal.Modules" />
|
||||||
<add key="WebPortal.PageTitleProvider" value="WebsitePanel.Portal.WebPortalPageTitleProvider, WebsitePanel.Portal.Modules" />
|
<add key="WebPortal.PageTitleProvider" value="WebsitePanel.Portal.WebPortalPageTitleProvider, WebsitePanel.Portal.Modules" />
|
||||||
<add key="ChartImageHandler" value="storage=file;timeout=20;" />
|
<add key="ChartImageHandler" value="storage=file;timeout=20;" />
|
||||||
<add key="SessionValidationKey" value="DAD46D476F85E0198BCA134D7AA5CC1D7" />
|
<add key="SessionValidationKey" value="DAD46D476F85E0198BCA134D7AA5CC1D7" />
|
||||||
</appSettings>
|
</appSettings>
|
||||||
<system.web>
|
<system.web>
|
||||||
<!-- SiteMap settings -->
|
<!-- SiteMap settings -->
|
||||||
<siteMap defaultProvider="WebsitePanelSiteMapProvider" enabled="true">
|
<siteMap defaultProvider="WebsitePanelSiteMapProvider" enabled="true">
|
||||||
<providers>
|
<providers>
|
||||||
<add name="WebsitePanelSiteMapProvider" type="WebsitePanel.WebPortal.WebsitePanelSiteMapProvider, WebsitePanel.WebPortal" securityTrimmingEnabled="true" />
|
<add name="WebsitePanelSiteMapProvider" type="WebsitePanel.WebPortal.WebsitePanelSiteMapProvider, WebsitePanel.WebPortal" securityTrimmingEnabled="true" />
|
||||||
</providers>
|
</providers>
|
||||||
</siteMap>
|
</siteMap>
|
||||||
<!-- Set default scheme -->
|
<!-- Set default scheme -->
|
||||||
<pages theme="Default" validateRequest="false" controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID">
|
<pages theme="Default" validateRequest="false" controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID">
|
||||||
<controls>
|
<controls>
|
||||||
<add tagPrefix="ajaxToolkit" namespace="AjaxControlToolkit" assembly="AjaxControlToolkit" />
|
<add tagPrefix="ajaxToolkit" namespace="AjaxControlToolkit" assembly="AjaxControlToolkit" />
|
||||||
</controls>
|
</controls>
|
||||||
</pages>
|
</pages>
|
||||||
<!-- Maximum size of uploaded file, in MB -->
|
<!-- Maximum size of uploaded file, in MB -->
|
||||||
<httpRuntime executionTimeout="1800" requestValidationMode="2.0" maxRequestLength="16384" enableVersionHeader="false" />
|
<httpRuntime executionTimeout="1800" requestValidationMode="2.0" maxRequestLength="16384" enableVersionHeader="false" />
|
||||||
<!--
|
<!--
|
||||||
ASMX is mapped to a new handler so that proxy javascripts can also be served.
|
ASMX is mapped to a new handler so that proxy javascripts can also be served.
|
||||||
-->
|
-->
|
||||||
<httpHandlers>
|
<httpHandlers>
|
||||||
<add verb="*" path="Reserved.ReportViewerWebControl.axd" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" validate="false" />
|
<add verb="*" path="Reserved.ReportViewerWebControl.axd" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" validate="false" />
|
||||||
</httpHandlers>
|
</httpHandlers>
|
||||||
<!-- Authentication -->
|
<!-- Authentication -->
|
||||||
<authentication mode="Forms">
|
<authentication mode="Forms">
|
||||||
<forms name=".WEBSITEPANELPORTALAUTHASPX" protection="All" timeout="30" path="/" requireSSL="false" slidingExpiration="true" cookieless="UseDeviceProfile" domain="" enableCrossAppRedirects="false">
|
<forms name=".WEBSITEPANELPORTALAUTHASPX" protection="All" timeout="30" path="/" requireSSL="false" slidingExpiration="true" cookieless="UseDeviceProfile" domain="" enableCrossAppRedirects="false">
|
||||||
</forms>
|
</forms>
|
||||||
</authentication>
|
</authentication>
|
||||||
<!-- Custom errors -->
|
<!-- Custom errors -->
|
||||||
<customErrors mode="RemoteOnly" defaultRedirect="~/error.htm" />
|
<customErrors mode="RemoteOnly" defaultRedirect="~/error.htm" />
|
||||||
<!-- Default authorization settings -->
|
<!-- Default authorization settings -->
|
||||||
<authorization>
|
<authorization>
|
||||||
<allow users="*" />
|
<allow users="*" />
|
||||||
</authorization>
|
</authorization>
|
||||||
<!-- Globalization settings -->
|
<!-- Globalization settings -->
|
||||||
<globalization culture="auto:en-US" uiCulture="auto:en" requestEncoding="UTF-8" responseEncoding="UTF-8"></globalization>
|
<globalization culture="auto:en-US" uiCulture="auto:en" requestEncoding="UTF-8" responseEncoding="UTF-8"></globalization>
|
||||||
<compilation debug="true" targetFramework="4.0">
|
<compilation debug="true" targetFramework="4.0">
|
||||||
</compilation>
|
</compilation>
|
||||||
</system.web>
|
</system.web>
|
||||||
<system.webServer>
|
<system.webServer>
|
||||||
<validation validateIntegratedModeConfiguration="false" />
|
<validation validateIntegratedModeConfiguration="false" />
|
||||||
<handlers>
|
<handlers>
|
||||||
<add name="ChartImg" path="ChartImg.axd" verb="GET,HEAD,POST" type="System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" resourceType="Unspecified" preCondition="integratedMode" />
|
<add name="ChartImg" path="ChartImg.axd" verb="GET,HEAD,POST" type="System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" resourceType="Unspecified" preCondition="integratedMode" />
|
||||||
</handlers>
|
</handlers>
|
||||||
<modules>
|
<modules>
|
||||||
<add name="SecureSession" type="WebsitePanel.WebPortal.SecureSessionModule" />
|
<add name="SecureSession" type="WebsitePanel.WebPortal.SecureSessionModule" />
|
||||||
</modules>
|
</modules>
|
||||||
</system.webServer>
|
</system.webServer>
|
||||||
</configuration>
|
</configuration>
|
|
@ -115,6 +115,7 @@
|
||||||
<Content Include="App_Themes\Default\Icons\crm_orgs_48.png" />
|
<Content Include="App_Themes\Default\Icons\crm_orgs_48.png" />
|
||||||
<Content Include="App_Themes\Default\Icons\crm_storage_settings_48.png" />
|
<Content Include="App_Themes\Default\Icons\crm_storage_settings_48.png" />
|
||||||
<Content Include="App_Themes\Default\Icons\crm_users_48.png" />
|
<Content Include="App_Themes\Default\Icons\crm_users_48.png" />
|
||||||
|
<Content Include="App_Themes\Default\Icons\deleted_user_48.png" />
|
||||||
<Content Include="App_Themes\Default\Icons\disclaimers_48.png" />
|
<Content Include="App_Themes\Default\Icons\disclaimers_48.png" />
|
||||||
<Content Include="App_Themes\Default\Icons\domains_48.png" />
|
<Content Include="App_Themes\Default\Icons\domains_48.png" />
|
||||||
<Content Include="App_Themes\Default\Icons\enterprisestorage_drive_maps_48.png" />
|
<Content Include="App_Themes\Default\Icons\enterprisestorage_drive_maps_48.png" />
|
||||||
|
|
|
@ -35,8 +35,8 @@ REM %WSE_CLEAN% .\WebsitePanel.EnterpriseServer.Client\ecStorefrontProxy.cs
|
||||||
REM %WSDL% %SERVER_URL%/ecStorehouse.asmx /out:.\WebsitePanel.EnterpriseServer.Client\ecStorehouseProxy.cs /namespace:WebsitePanel.Ecommerce.EnterpriseServer /type:webClient
|
REM %WSDL% %SERVER_URL%/ecStorehouse.asmx /out:.\WebsitePanel.EnterpriseServer.Client\ecStorehouseProxy.cs /namespace:WebsitePanel.Ecommerce.EnterpriseServer /type:webClient
|
||||||
REM %WSE_CLEAN% .\WebsitePanel.EnterpriseServer.Client\ecStorehouseProxy.cs
|
REM %WSE_CLEAN% .\WebsitePanel.EnterpriseServer.Client\ecStorehouseProxy.cs
|
||||||
|
|
||||||
REM %WSDL% %SERVER_URL%/esExchangeServer.asmx /out:.\WebsitePanel.EnterpriseServer.Client\ExchangeServerProxy.cs /namespace:WebsitePanel.EnterpriseServer /type:webClient
|
%WSDL% %SERVER_URL%/esExchangeServer.asmx /out:.\WebsitePanel.EnterpriseServer.Client\ExchangeServerProxy.cs /namespace:WebsitePanel.EnterpriseServer /type:webClient
|
||||||
REM %WSE_CLEAN% .\WebsitePanel.EnterpriseServer.Client\ExchangeServerProxy.cs
|
%WSE_CLEAN% .\WebsitePanel.EnterpriseServer.Client\ExchangeServerProxy.cs
|
||||||
|
|
||||||
REM %WSDL% %SERVER_URL%/esExchangeHostedEdition.asmx /out:.\WebsitePanel.EnterpriseServer.Client\ExchangeHostedEditionProxy.cs /namespace:WebsitePanel.EnterpriseServer /type:webClient
|
REM %WSDL% %SERVER_URL%/esExchangeHostedEdition.asmx /out:.\WebsitePanel.EnterpriseServer.Client\ExchangeHostedEditionProxy.cs /namespace:WebsitePanel.EnterpriseServer /type:webClient
|
||||||
REM %WSE_CLEAN% .\WebsitePanel.EnterpriseServer.Client\ExchangeHostedEditionProxy.cs
|
REM %WSE_CLEAN% .\WebsitePanel.EnterpriseServer.Client\ExchangeHostedEditionProxy.cs
|
||||||
|
@ -56,8 +56,8 @@ REM %WSE_CLEAN% .\WebsitePanel.EnterpriseServer.Client\OCSProxy.cs
|
||||||
REM %WSDL% %SERVER_URL%/esOperatingSystems.asmx /out:.\WebsitePanel.EnterpriseServer.Client\OperatingSystemsProxy.cs /namespace:WebsitePanel.EnterpriseServer /type:webClient
|
REM %WSDL% %SERVER_URL%/esOperatingSystems.asmx /out:.\WebsitePanel.EnterpriseServer.Client\OperatingSystemsProxy.cs /namespace:WebsitePanel.EnterpriseServer /type:webClient
|
||||||
REM %WSE_CLEAN% .\WebsitePanel.EnterpriseServer.Client\OperatingSystemsProxy.cs
|
REM %WSE_CLEAN% .\WebsitePanel.EnterpriseServer.Client\OperatingSystemsProxy.cs
|
||||||
|
|
||||||
REM %WSDL% %SERVER_URL%/esOrganizations.asmx /out:.\WebsitePanel.EnterpriseServer.Client\OrganizationProxy.cs /namespace:WebsitePanel.EnterpriseServer.HostedSolution /type:webClient
|
%WSDL% %SERVER_URL%/esOrganizations.asmx /out:.\WebsitePanel.EnterpriseServer.Client\OrganizationProxy.cs /namespace:WebsitePanel.EnterpriseServer.HostedSolution /type:webClient
|
||||||
REM %WSE_CLEAN% .\WebsitePanel.EnterpriseServer.Client\OrganizationProxy.cs
|
%WSE_CLEAN% .\WebsitePanel.EnterpriseServer.Client\OrganizationProxy.cs
|
||||||
|
|
||||||
REM %WSDL% %SERVER_URL%/esPackages.asmx /out:.\WebsitePanel.EnterpriseServer.Client\PackagesProxy.cs /namespace:WebsitePanel.EnterpriseServer /type:webClient
|
REM %WSDL% %SERVER_URL%/esPackages.asmx /out:.\WebsitePanel.EnterpriseServer.Client\PackagesProxy.cs /namespace:WebsitePanel.EnterpriseServer /type:webClient
|
||||||
REM %WSE_CLEAN% .\WebsitePanel.EnterpriseServer.Client\PackagesProxy.cs
|
REM %WSE_CLEAN% .\WebsitePanel.EnterpriseServer.Client\PackagesProxy.cs
|
||||||
|
|
|
@ -17,8 +17,8 @@ REM %WSE_CLEAN% .\WebsitePanel.Server.Client\DatabaseServerProxy.cs
|
||||||
REM %WSDL% %SERVER_URL%/DNSServer.asmx /out:.\WebsitePanel.Server.Client\DnsServerProxy.cs /namespace:WebsitePanel.Providers.DNS /type:webClient /fields
|
REM %WSDL% %SERVER_URL%/DNSServer.asmx /out:.\WebsitePanel.Server.Client\DnsServerProxy.cs /namespace:WebsitePanel.Providers.DNS /type:webClient /fields
|
||||||
REM %WSE_CLEAN% .\WebsitePanel.Server.Client\DnsServerProxy.cs
|
REM %WSE_CLEAN% .\WebsitePanel.Server.Client\DnsServerProxy.cs
|
||||||
|
|
||||||
REM %WSDL% %SERVER_URL%/ExchangeServer.asmx /out:.\WebsitePanel.Server.Client\ExchangeServerProxy.cs /namespace:WebsitePanel.Providers.Exchange /type:webClient /fields
|
%WSDL% %SERVER_URL%/ExchangeServer.asmx /out:.\WebsitePanel.Server.Client\ExchangeServerProxy.cs /namespace:WebsitePanel.Providers.Exchange /type:webClient /fields
|
||||||
REM %WSE_CLEAN% .\WebsitePanel.Server.Client\ExchangeServerProxy.cs
|
%WSE_CLEAN% .\WebsitePanel.Server.Client\ExchangeServerProxy.cs
|
||||||
|
|
||||||
REM %WSDL% %SERVER_URL%/ExchangeServerHostedEdition.asmx /out:.\WebsitePanel.Server.Client\ExchangeServerHostedEditionProxy.cs /namespace:WebsitePanel.Providers.ExchangeHostedEdition /type:webClient /fields
|
REM %WSDL% %SERVER_URL%/ExchangeServerHostedEdition.asmx /out:.\WebsitePanel.Server.Client\ExchangeServerHostedEditionProxy.cs /namespace:WebsitePanel.Providers.ExchangeHostedEdition /type:webClient /fields
|
||||||
REM %WSE_CLEAN% .\WebsitePanel.Server.Client\ExchangeServerHostedEditionProxy.cs
|
REM %WSE_CLEAN% .\WebsitePanel.Server.Client\ExchangeServerHostedEditionProxy.cs
|
||||||
|
@ -32,11 +32,11 @@ REM %WSE_CLEAN% .\WebsitePanel.Server.Client\OCSEdgeServerProxy.cs
|
||||||
REM %WSDL% %SERVER_URL%/OCSServer.asmx /out:.\WebsitePanel.Server.Client\OCSServerProxy.cs /namespace:WebsitePanel.Providers.OCS /type:webClient /fields
|
REM %WSDL% %SERVER_URL%/OCSServer.asmx /out:.\WebsitePanel.Server.Client\OCSServerProxy.cs /namespace:WebsitePanel.Providers.OCS /type:webClient /fields
|
||||||
REM %WSE_CLEAN% .\WebsitePanel.Server.Client\OCSServerProxy.cs
|
REM %WSE_CLEAN% .\WebsitePanel.Server.Client\OCSServerProxy.cs
|
||||||
|
|
||||||
%WSDL% %SERVER_URL%/OperatingSystem.asmx /out:.\WebsitePanel.Server.Client\OperatingSystemProxy.cs /namespace:WebsitePanel.Providers.OS /type:webClient /fields
|
REM %WSDL% %SERVER_URL%/OperatingSystem.asmx /out:.\WebsitePanel.Server.Client\OperatingSystemProxy.cs /namespace:WebsitePanel.Providers.OS /type:webClient /fields
|
||||||
%WSE_CLEAN% .\WebsitePanel.Server.Client\OperatingSystemProxy.cs
|
REM %WSE_CLEAN% .\WebsitePanel.Server.Client\OperatingSystemProxy.cs
|
||||||
|
|
||||||
REM %WSDL% %SERVER_URL%/Organizations.asmx /out:.\WebsitePanel.Server.Client\OrganizationProxy.cs /namespace:WebsitePanel.Providers.HostedSolution /type:webClient /fields
|
%WSDL% %SERVER_URL%/Organizations.asmx /out:.\WebsitePanel.Server.Client\OrganizationProxy.cs /namespace:WebsitePanel.Providers.HostedSolution /type:webClient /fields
|
||||||
REM %WSE_CLEAN% .\WebsitePanel.Server.Client\OrganizationProxy.cs
|
%WSE_CLEAN% .\WebsitePanel.Server.Client\OrganizationProxy.cs
|
||||||
|
|
||||||
REM %WSDL% %SERVER_URL%/ServiceProvider.asmx /out:.\WebsitePanel.Server.Client\ServiceProviderProxy.cs /namespace:WebsitePanel.Providers /type:webClient /fields
|
REM %WSDL% %SERVER_URL%/ServiceProvider.asmx /out:.\WebsitePanel.Server.Client\ServiceProviderProxy.cs /namespace:WebsitePanel.Providers /type:webClient /fields
|
||||||
REM %WSE_CLEAN% .\WebsitePanel.Server.Client\ServiceProviderProxy.cs
|
REM %WSE_CLEAN% .\WebsitePanel.Server.Client\ServiceProviderProxy.cs
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue