USP_REGISTRANTBATCH_COMMIT_VALIDATION

Validate registration batch

Parameters

Parameter Parameter Type Mode Description
@EVENTID uniqueidentifier IN
@CLIENTSITESID int IN
@USERID nvarchar(100) IN
@PASSWORD nvarchar(20) IN
@PARTICIPANTPAGEURL nvarchar(200) IN
@TEAMPAGEURL nvarchar(200) IN
@COMPANYPAGEURL nvarchar(200) IN
@HOUSEHOLDPAGEURL nvarchar(200) IN
@REGISTRATIONOPTIONID uniqueidentifier IN
@ORIGINALCLIENTUSERID int IN
@ORIGINALCONSTITUENTID uniqueidentifier IN

Definition

Copy


CREATE procedure dbo.USP_REGISTRANTBATCH_COMMIT_VALIDATION
(
  @EVENTID uniqueidentifier,
  @CLIENTSITESID int,

  @USERID nvarchar(100),
  @PASSWORD nvarchar(20),

  @PARTICIPANTPAGEURL nvarchar(200),
  @TEAMPAGEURL nvarchar(200),
  @COMPANYPAGEURL nvarchar(200),
  @HOUSEHOLDPAGEURL nvarchar(200),
  @REGISTRATIONOPTIONID uniqueidentifier,

  @ORIGINALCLIENTUSERID int,
  @ORIGINALCONSTITUENTID uniqueidentifier
)
as
begin

  declare @ErrMsg nvarchar(500);

  --1. validate registration option (done in USP_FAFREGISTRATIONTYPE_AVLQTY_UPDATE)

  --2. validate user ID

  if @ORIGINALCLIENTUSERID is null or @ORIGINALCLIENTUSERID = 0
    if len(@USERID)>0 and len(@PASSWORD)>0
      if dbo.fnUserInformationExists(1, @USERID)=1
      begin
        raiserror('This User ID has already been used.', 13, 1);
      end

  --3. check if the matched constituent has already registered to the same event

  if @ORIGINALCONSTITUENTID is not null and @ORIGINALCONSTITUENTID <> '00000000-0000-0000-0000-000000000000'
  begin
    if dbo.UFN_EVENT_CONSTITUENTISREGISTRANT(@EVENTID, @ORIGINALCONSTITUENTID)=1
      raiserror('The same person cannot register twice for the same event.', 13, 1);
  end

  --4. Check group size (done in UFN_FAFGROUP_HASREACHEDLIMIT)


  --5. check group name


  --6. check vanityURL

  if @PARTICIPANTPAGEURL is not null and @PARTICIPANTPAGEURL <> ''
    if exists(select * from VanityURL where VanityURL=@PARTICIPANTPAGEURL and ClientSitesID=@CLIENTSITESID)
      begin
        set @ErrMsg = 'Friendly url ' + @PARTICIPANTPAGEURL + ' has been taken.';
        raiserror(@ErrMsg, 13, 1);
      end
  if @TEAMPAGEURL is not null and @TEAMPAGEURL <> ''
    if exists(select * from VanityURL where VanityURL=@TEAMPAGEURL and ClientSitesID=@CLIENTSITESID)
      begin
        set @ErrMsg = 'Friendly url ' + @TEAMPAGEURL + ' has been taken.';
        raiserror(@ErrMsg, 13, 1);
      end
  if @COMPANYPAGEURL is not null and @COMPANYPAGEURL <> ''
    if exists(select * from VanityURL where VanityURL=@COMPANYPAGEURL and ClientSitesID=@CLIENTSITESID)
      begin
        set @ErrMsg = 'Friendly url ' + @COMPANYPAGEURL + ' has been taken.';
        raiserror(@ErrMsg, 13, 1);
      end
  if @HOUSEHOLDPAGEURL is not null and @HOUSEHOLDPAGEURL <> ''
    if exists(select * from VanityURL where VanityURL=@HOUSEHOLDPAGEURL and ClientSitesID=@CLIENTSITESID)
      begin
        set @ErrMsg = 'Friendly url ' + @HOUSEHOLDPAGEURL + ' has been taken.';
        raiserror(@ErrMsg, 13, 1);
      end

end