UFN_NEXT_AVAILABLE_FTI_TITLE

Return

Return Type
nvarchar(256)

Parameters

Parameter Parameter Type Mode Description
@PAGENAME nvarchar(60) IN
@CONTENTSUFFIX nvarchar(30) IN
@CLIENTSITESID int IN

Definition

Copy


      CREATE function dbo.UFN_NEXT_AVAILABLE_FTI_TITLE(@PAGENAME nvarchar(60), @CONTENTSUFFIX nvarchar(30), @CLIENTSITESID int)
      returns nvarchar(256)
      with execute as caller
      as begin
          declare @NAMEEXISTS bit = 1;
        declare @INDEX int = 2;
          declare @TITLE nvarchar(500) = @PAGENAME + @CONTENTSUFFIX

        while @NAMEEXISTS = 1 and @INDEX < 99
        begin
            if exists(select * from sitecontent where Title = @TITLE and ContentTypesID = 5 and ClientSitesId = @CLIENTSITESID)
                begin
                    if CHARINDEX(@CONTENTSUFFIX + ' ' + CAST(@INDEX as varchar(5)), @TITLE) > 0
                        begin
                            set @TITLE = replace(@TITLE, @CONTENTSUFFIX + ' ' + cast(@INDEX as varchar(5)), @CONTENTSUFFIX + ' ' + cast(@INDEX + 1 as varchar(5)))
                  set @INDEX = @INDEX + 1
                        end
                    else
                      begin
                          set @TITLE = @TITLE + ' ' + cast(@INDEX as varchar(5))
                      end
                end 
            else
                set @NAMEEXISTS = 0
        end

        if @NAMEEXISTS = 1
          return null

        return @TITLE
      end