USP_DATALIST_PROGRAMCALENDAR_SPECIALEVENTS
Displays the events on the event calendar.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@INCLUDEINACTIVE | bit | IN | Include inactive |
@ONLYSHOWUSERSEVENTS | bit | IN | Only show my events |
@CURRENTAPPUSERID | uniqueidentifier | IN | Input parameter indicating the ID of the current user. |
@SECURITYFEATUREID | uniqueidentifier | IN | Input parameter indicating the ID of the feature to use for site security checking. |
@SECURITYFEATURETYPE | tinyint | IN | Input parameter indicating the type of the feature to use for site security checking. |
@SITEID | uniqueidentifier | IN | Site |
@STARTDATE | date | IN | Start date |
@ENDDATE | date | IN | End date |
Definition
Copy
CREATE procedure dbo.USP_DATALIST_PROGRAMCALENDAR_SPECIALEVENTS
(
@INCLUDEINACTIVE bit = 0,
@ONLYSHOWUSERSEVENTS bit = 0,
@CURRENTAPPUSERID uniqueidentifier = null,
@SECURITYFEATUREID uniqueidentifier = null,
@SECURITYFEATURETYPE tinyint = null,
@SITEID uniqueidentifier = null,
@STARTDATE date = null,
@ENDDATE date = null
)
as
set nocount on;
if @ONLYSHOWUSERSEVENTS = 1
select
EVENT.ID,
EVENT.NAME,
EVENT.DESCRIPTION,
EVENT.STARTDATE,
EVENT.STARTTIME,
EVENT.ENDDATE,
EVENT.ENDTIME
from
dbo.EVENT
inner join dbo.EVENTCOORDINATOR on EVENTCOORDINATOR.EVENTID = EVENT.ID
where
(
(@INCLUDEINACTIVE = 1)
or
(ISACTIVE = 1)
)
and
(
(@STARTDATE is null)
or
(EVENT.STARTDATE between @STARTDATE and @ENDDATE)
)
and
(
(@SITEID is null)
or
(EVENT.ID in(select EVENTID from dbo.EVENTSITE where EVENTSITE.SITEID = @SITEID))
)
and (select count(*) from dbo.UFN_SITEID_MAPFROM_EVENTID(EVENT.ID) as EVENTSITE where (dbo.UFN_APPUSER_ISSYSADMIN(@CURRENTAPPUSERID) = 1 or exists (select 1 from dbo.UFN_SITESFORUSERONFEATURE(@CURRENTAPPUSERID,@SECURITYFEATUREID,@SECURITYFEATURETYPE) where SITEID=[EVENTSITE].[SITEID] or (SITEID is null and [EVENTSITE].[SITEID] is null)))) > 0
and EVENT.PROGRAMID is null
and EVENTCOORDINATOR.CONSTITUENTID = dbo.UFN_CONSTITUENT_GETIDFROMAPPUSERID(@CURRENTAPPUSERID)
and EVENT.HIDEFROMCALENDAR = 0
order by
EVENT.NAME;
else
select
EVENT.ID,
EVENT.NAME,
EVENT.DESCRIPTION,
EVENT.STARTDATE,
EVENT.STARTTIME,
EVENT.ENDDATE,
EVENT.ENDTIME
from
dbo.EVENT
where
(
(@INCLUDEINACTIVE = 1)
or
(ISACTIVE = 1)
)
and
(
(@STARTDATE is null)
or
(EVENT.STARTDATE between @STARTDATE and @ENDDATE)
)
and
(
(@SITEID is null)
or
(EVENT.ID in(select EVENTID from dbo.EVENTSITE where EVENTSITE.SITEID = @SITEID))
)
and (select count(*) from dbo.UFN_SITEID_MAPFROM_EVENTID(EVENT.ID) as EVENTSITE where (dbo.UFN_APPUSER_ISSYSADMIN(@CURRENTAPPUSERID) = 1 or exists (select 1 from dbo.UFN_SITESFORUSERONFEATURE(@CURRENTAPPUSERID,@SECURITYFEATUREID,@SECURITYFEATURETYPE) where SITEID=[EVENTSITE].[SITEID] or (SITEID is null and [EVENTSITE].[SITEID] is null)))) > 0
and EVENT.PROGRAMID is null
and EVENT.HIDEFROMCALENDAR = 0
order by
EVENT.NAME;