Hello.
If I use export/import i will lose links ... and will have to create actually a new portal.
ok...
I try to run following script:
(this script is more specific for my portal)
-- Task : Move portal PortalID=1 to existing portal PortalID=0
-- tables prefix : dnn_
-------------------------
DECLARE @portal_to int
DECLARE @portal_from int
SET @portal_to=0
SET @portal_from=1
-------------------------
-- moving modules
UPDATE dbo.dnn_Modules SET
dbo.dnn_Modules.PortalID=@portal_to
FROM dbo.dnn_Modules
INNER JOIN dbo.dnn_TabModules ON dbo.dnn_Modules.ModuleID=dbo.dnn_TabModules.ModuleID
INNER JOIN dbo.dnn_Tabs ON dbo.dnn_TabModules.TabID=dbo.dnn_Tabs.TabID
AND dbo.dnn_Tabs.PortalID=@portal_from
AND dbo.dnn_Tabs.IsSecure=0
AND dbo.dnn_Tabs.TabName<>'Search Results'
WHERE dbo.dnn_Modules.PortalID=@portal_from
-------------------------
-- moving pages
DECLARE @MaxTabOrder int
SELECT @MaxTabOrder=MAX(dbo.dnn_Tabs.TabOrder) FROM dbo.dnn_Tabs
WHERE dbo.dnn_Tabs.PortalID=@portal_to AND dbo.dnn_Tabs.TabOrder < 10000
--SET @MaxTabOrder=5000
UPDATE dbo.dnn_Tabs SET
dbo.dnn_Tabs.PortalID=@portal_to ,
dbo.dnn_Tabs.TabOrder = dbo.dnn_Tabs.TabOrder + @MaxTabOrder -- put under existing pages
WHERE dbo.dnn_Tabs.PortalID=@portal_from and dbo.dnn_Tabs.IsSecure=0 and
dbo.dnn_Tabs.TabName<>'Search Results'
--and dbo.dnn_Tabs.TabName<>'Site map'
-------------------------
-- moving permissions
DECLARE @role_admin_to int -- 'Administrators'
DECLARE @role_reg_users_to int -- 'Registered Users'
DECLARE @role_subscribers_to int -- 'Subscribers'
DECLARE @role_admin_from int -- 'Administrators'
DECLARE @role_reg_users_from int -- 'Registered Users'
DECLARE @role_subscribers_from int -- 'Subscribers'
-- table Roles
SET @role_admin_to = 0 -- 'Administrators' PortalID=0
SET @role_reg_users_to = 1 -- 'Registered Users' PortalID=0
SET @role_subscribers_to = 2 -- 'Subscribers' PortalID=0
SET @role_admin_from = 3 -- 'Administrators' PortalID=1
SET @role_reg_users_from = 4 -- 'Registered Users' PortalID=1
SET @role_subscribers_from = 5 -- 'Subscribers' PortalID=1
--------------------------------------------------------------
UPDATE dbo.dnn_TabPermission
SET dbo.dnn_TabPermission.RoleID=@role_admin_to
WHERE dbo.dnn_TabPermission.RoleID=@role_admin_from
UPDATE dbo.dnn_TabPermission
SET dbo.dnn_TabPermission.RoleID=@role_reg_users_to
WHERE dbo.dnn_TabPermission.RoleID=@role_reg_users_from
UPDATE dbo.dnn_TabPermission
SET dbo.dnn_TabPermission.RoleID=@role_subscribers_to
WHERE dbo.dnn_TabPermission.RoleID=@role_subscribers_from
---------------------------------------------------------------
-------------------------
-- updating user roles
UPDATE dbo.dnn_UserRoles
SET dbo.dnn_UserRoles.RoleID=@role_admin_to
WHERE dbo.dnn_UserRoles.RoleID=@role_admin_from
UPDATE dbo.dnn_UserRoles
SET dbo.dnn_UserRoles.RoleID=@role_reg_users_to
WHERE dbo.dnn_UserRoles.RoleID=@role_reg_users_from
UPDATE dbo.dnn_UserRoles
SET dbo.dnn_UserRoles.RoleID=@role_subscribers_to
WHERE dbo.dnn_UserRoles.RoleID=@role_subscribers_from
-------------------------
-- moving users
UPDATE dbo.dnn_UserPortals
SET dbo.dnn_UserPortals.PortalId=@portal_to
WHERE dbo.dnn_UserPortals.PortalId=@portal_from
AND dbo.dnn_UserPortals.UserId<>490 --id:490 multi portal user
-------------------------
-- updating links ( copy all files from /Portals/1/ to /Portals/0/en/)
UPDATE dbo.dnn_HtmlText SET
DesktopHtml = REPLACE(Cast(DesktopHtml AS NVARCHAR(Max)),'/Portals/1/', '/Portals/0/en/')
WHERE DesktopHtml LIKE '%/Portals/1/%'
-------------------------
-- And last step login as superuser and delete portal 1
----------------------------------------------------
Can you tell me have correct this script is ?
maybe i have missed something...
Thanks ,
Kirill.