USP_WEBFORMSUSERREGISTRATIONPARTSETTING_ADDUPDATE

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN
@CHANGEAGENTID uniqueidentifier IN
@CURRENTDATE datetime IN
@SITECONTENTID int IN
@ALLOWREGISTRATION bit IN
@REQUIREFIRSTNAME bit IN
@REQUIRETITLE bit IN
@REQUIREPHONE bit IN
@SENDEMAIL bit IN

Definition

Copy


            CREATE procedure dbo.USP_WEBFORMSUSERREGISTRATIONPARTSETTING_ADDUPDATE (
                @ID uniqueidentifier,
                @CHANGEAGENTID uniqueidentifier,
                @CURRENTDATE datetime,
                @SITECONTENTID integer,
                @ALLOWREGISTRATION bit = null,
                @REQUIREFIRSTNAME bit = null,
                @REQUIRETITLE bit = null,
                @REQUIREPHONE bit = null,
                @SENDEMAIL bit = 1
            )
            as
            begin
                if @ID is null
                    set @ID = newid()

                if @CHANGEAGENTID is null  
                    exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output

                if @CURRENTDATE is null
                    set @CURRENTDATE = getdate()

                --Getting default from payment part

                declare 
                    @PAYMENTPARTALLOWREGISTRATION bit = null,
                    @PAYMENTPARTREQUIREFIRSTNAME bit = null,
                    @PAYMENTPARTREQUIRETITLE bit = null,
                    @PAYMENTPARTREQUIREPHONE bit = null

                select 
                    @PAYMENTPARTALLOWREGISTRATION = [ALLOWINLINEREGISTRATION],
                    @PAYMENTPARTREQUIREFIRSTNAME = [REQUIREFIRSTNAME],
                    @PAYMENTPARTREQUIRETITLE = [REQUIRETITLE],
                    @PAYMENTPARTREQUIREPHONE = [REQUIREPHONE]
                from dbo.PAGEMODELITEM
                inner join dbo.SiteContent
                    on PAGEMODELITEM.PRIMARYKEY = SiteContent.ID
                inner join dbo.SHOPPINGCARTSETTINGS
                    on SiteContent.[Guid] = SHOPPINGCARTSETTINGS.ID
                where ARTIFACTID = 'f4f84e8c-12da-43d8-8957-0feff9cedd53' --Webforms payment part page model artifact ID


                set @ALLOWREGISTRATION = coalesce(@ALLOWREGISTRATION, @PAYMENTPARTALLOWREGISTRATION, 0)
                set @REQUIREFIRSTNAME = coalesce(@REQUIREFIRSTNAME, @PAYMENTPARTREQUIREFIRSTNAME, 0)
                set @REQUIRETITLE = coalesce(@REQUIRETITLE, @PAYMENTPARTREQUIRETITLE, 0)
                set @REQUIREPHONE = coalesce(@REQUIREPHONE, @PAYMENTPARTREQUIREPHONE, 0)
                set @SENDEMAIL = isnull(@SENDEMAIL, 1)

                merge dbo.[WEBFORMSUSERREGISTRATIONPARTSETTING] as [TARGET]
                using (select @ID as ID) as [SOURCE]
                on (TARGET.ID = SOURCE.ID)
                when matched then
                    update 
                    set 
                        SITECONTENTID = @SITECONTENTID,
                        ALLOWREGISTRATION = @ALLOWREGISTRATION,
                        REQUIREFIRSTNAME = @REQUIREFIRSTNAME,
                        REQUIRETITLE = @REQUIRETITLE,
                        REQUIREPHONE = @REQUIREPHONE,
                        SENDEMAIL = @SENDEMAIL,
                        ADDEDBYID = @CHANGEAGENTID,
                        CHANGEDBYID = @CHANGEAGENTID,
                        DATEADDED = @CURRENTDATE,
                        DATECHANGED = @CURRENTDATE
                when not matched then
                    insert (
                        ID, 
                        SITECONTENTID, 
                        ALLOWREGISTRATION,
                        REQUIREFIRSTNAME,
                        REQUIRETITLE,
                        REQUIREPHONE,
                        SENDEMAIL,
                        ADDEDBYID, 
                        CHANGEDBYID, 
                        DATEADDED, 
                        DATECHANGED
                    )
                    values (
                        @ID
                        @SITECONTENTID
                        @ALLOWREGISTRATION,
                        @REQUIREFIRSTNAME,
                        @REQUIRETITLE,
                        @REQUIREPHONE,
                        @SENDEMAIL,
                        @CHANGEAGENTID
                        @CHANGEAGENTID
                        @CURRENTDATE
                        @CURRENTDATE
                    );
            end