USP_FAFEVENT_METADATACLEANUP
Cleanup Friends Asking Friends meta data when called within event delete
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | |
@CHANGEAGENTID | uniqueidentifier | IN |
Definition
Copy
create procedure dbo.USP_FAFEVENT_METADATACLEANUP
(
@ID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier
)
as
begin
declare @PUBLISHED bit,
@APPEALID uniqueidentifier,
@CLIENTSITESID int,
@DESIGNATIONID uniqueidentifier,
@DESIGNATIONLEVELID uniqueidentifier
if exists (select R.ID from dbo.EVENTEXTENSION EX join dbo.REGISTRANT R on EX.EVENTID = R.EVENTID where EX.EVENTID = @ID)
raiserror('EVENTHASTRANSACTION', 13, 2)
select
@APPEALID = EVENT.APPEALID,
@DESIGNATIONID=APPEALDESIGNATION.DESIGNATIONID,
@DESIGNATIONLEVELID = DESIGNATION.DESIGNATIONLEVEL1ID,
@CLIENTSITESID = EVENTEXTENSION.CLIENTSITESID,
@PUBLISHED = dbo.UFN_CLIENTSITES_GETEVENTWEBSITESTATUS(@ID)
from dbo.EVENT
left join dbo.EVENTEXTENSION on EVENT.ID = EVENTEXTENSION.EVENTID
left join dbo.APPEALDESIGNATION on EVENT.APPEALID = APPEALDESIGNATION.APPEALID
left join dbo.DESIGNATION on APPEALDESIGNATION.DESIGNATIONID = DESIGNATION.ID
where EVENT.ID = @ID
if @PUBLISHED = 1
begin
raiserror('EVENTSITEISPUBLISHED',13,2);
end
if exists (select * from dbo.WIDGETEXTENSION where EVENTWIDGETID IN (select ID from EVENTWIDGET where EVENTID=@ID))
delete from dbo.WIDGETEXTENSION where EVENTWIDGETID IN (select ID from EVENTWIDGET where EVENTID=@ID)
if exists (select * from dbo.EVENTWIDGET where EVENTID=@ID)
delete from dbo.EVENTWIDGET where EVENTID=@ID
if exists (select * from dbo.STORY where EVENTID=@ID)
delete from dbo.STORY where EVENTID=@ID
delete from
dbo.APPEAL
where
APPEAL.ID = @APPEALID
exec dbo.USP_DESIGNATION_DELETE @ID=@DESIGNATIONID,@CHANGEAGENTID=@CHANGEAGENTID
delete from
dbo.DESIGNATIONLEVEL
where ID = @DESIGNATIONLEVELID
update dbo.CMSSITESETTING
set value = ''
where CLIENTSITESID = @CLIENTSITESID and ENUMID in (10,11)
update dbo.ClientSites
set
Deleted = 1
where ID = @CLIENTSITESID
if (select COUNT(*) from sysobjects where parent_obj = OBJECT_ID(N'[dbo].[ClientSites]')) > 0
begin
declare @SiteGuid uniqueidentifier
select @SiteGuid=Guid from dbo.ClientSites where ID = @CLIENTSITESID
if @SiteGuid is not null
exec dbo.spAuditThis @ClientUsersID=1,@AuditCodesID=8,@ObjectGuid=@SiteGuid,@ObjectTypesID=8
end
delete from dbo.IDSETREGISTER where ID in (select ADHOCQUERYID from dbo.FAFEVENTADHOCQUERY where EVENTID = @ID)
delete from dbo.ADHOCQUERY where ID in (select ADHOCQUERYID from dbo.FAFEVENTADHOCQUERY where EVENTID = @ID)
end