USP_CLONESITE_CMSTEMPLATELAYOUT

Clones the CMS Template Layout mappings linked to a site.

Parameters

Parameter Parameter Type Mode Description
@SourceClientSitesID int IN
@TargetClientSitesID int IN
@CurrentUserID int IN
@CopyBatchGUID uniqueidentifier IN

Definition

Copy


create procedure dbo.USP_CLONESITE_CMSTEMPLATELAYOUT

  @SourceClientSitesID    as int,
  @TargetClientSitesID    as int,
  @CurrentUserID        as int,
  @CopyBatchGUID        as uniqueidentifier 
)
as
begin

    set nocount on;
    declare @CHANGEAGENTID uniqueidentifier, @CURRENTDATE datetime

    if @CHANGEAGENTID is null
        exec USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output

    set @CURRENTDATE = getdate();

    insert into CMSTEMPLATELAYOUT
        (
            TEMPLATEID,
            SITELAYOUTSID,
            CMSDELIVERYCHANNELID,
            ADDEDBYID,
            CHANGEDBYID,
            DATEADDED,
            DATECHANGED
        )
        select 
            isnull(SP_NEW.ID, CTL.TEMPLATEID), 
            isnull(SL_NEW.ID, CTL.SITELAYOUTSID), 
            CTL.CMSDELIVERYCHANNELID,
            @CHANGEAGENTID,
            @CHANGEAGENTID,
            @CURRENTDATE,
            @CURRENTDATE
        from SitePages SP_OLD
        inner join CMSTEMPLATELAYOUT CTL on SP_OLD.ID = CTL.TEMPLATEID
        inner join SitePages SP_NEW on SP_NEW.CopySourceID = SP_OLD.ID and SP_NEW.CopyBatchGUID = @CopyBatchGUID
        left join SiteLayouts SL_NEW on SL_NEW.CopySourceID = CTL.SITELAYOUTSID and SL_NEW.CopyBatchGUID = @CopyBatchGUID
        where SP_OLD.ClientSitesID = @SourceClientSitesID

end