Copy Code Trigger Definition

                
            CREATE TRIGGER [dbo].[TR_SiteContent_INSERT_UPDATE]
            ON [dbo].[SiteContent]
            FOR INSERT, UPDATE
            AS

            BEGIN TRANSACTION

                DECLARE @DeprecatedInserts AS int
                
                SELECT
                    @DeprecatedInserts = Count(ct.[ID])
                FROM
                    inserted i
                INNER JOIN [dbo].[ContentTypes] ct
                    ON i.[ContentTypesID] = ct.[ID]
                WHERE
                    i.[ID] NOT IN (SELECT [ID] FROM deleted) -- UPDATEs are OK
                AND
                    ct.[Deprecated] = 1

                IF @DeprecatedInserts > 0
                BEGIN
                    RAISERROR('Cannot create deprecated site content.', 15, 1);
                    ROLLBACK TRANSACTION;
                    RETURN;
                END

                UPDATE sp
                    SET sp.[UpdateDate] = i.[UpdateDate]
                    FROM [dbo].[SitePages] sp
                    INNER JOIN [dbo].[PageContent] pc
                        ON sp.[ID] = pc.[SitePagesID]
                    INNER JOIN inserted i
                        ON pc.[SiteContentID] = i.[ID]
                
                IF @@TRANCOUNT > 0
                    COMMIT TRANSACTION;