USP_DATALIST_VIEWABLEUSERALBUMS

Return a list of album IDs that the viewer is allowed to see.

Parameters

Parameter Parameter Type Mode Description
@ALBUMOWNERNETACCOUNTID int IN Album Owner NetAccount ID
@VIEWERNETACCOUNTID int IN Album Viewer NetAccount ID

Definition

Copy



CREATE procedure dbo.USP_DATALIST_VIEWABLEUSERALBUMS(@ALBUMOWNERNETACCOUNTID int, @VIEWERNETACCOUNTID int)
as
    set nocount on;

    declare @FriendID int;
    execute @FriendID = fnGetNetAccountRelationID @ViewerNetAccountID, @AlbumOwnerNetAccountID;
    declare @ClientUsersID int;
    select @ClientUsersID = ClientUsersID from dbo.NetAccount where ID = @AlbumOwnerNetAccountID;
    declare @Confirmed bit;
    select @Confirmed = Confirmation from dbo.NetAccountRelation where ID = @FriendID;

    if @Confirmed = 0
        select @FriendID = 0;

    if @FriendID > 0
    BEGIN
        select distinct album.ID from dbo.ImageAlbum album
        inner join dbo.ImageAlbum_Images images
            on images.ImageAlbumID = album.ID
        where (album.OwnerUserID = @ClientUsersID) and ((album.Security = 0) OR (album.Security = 1)) and album.Deleted=0 and album.AlbumType = 1;            
    END
    else
    BEGIN
        select distinct album.ID from dbo.ImageAlbum album
        inner join dbo.ImageAlbum_Images images
            on images.ImageAlbumID = album.ID
        where (album.OwnerUserID = @ClientUsersID) and (album.Security = 0) and album.Deleted=0 and album.AlbumType = 1;
    END