spUserLogin

Parameters

Parameter Parameter Type Mode Description
@ClientsID int IN
@UserName nvarchar(50) IN
@Password nvarchar(255) IN
@ClientUsersID int INOUT
@LastSuccess datetime INOUT
@NumFails int INOUT
@MembershipRefreshedOn datetime INOUT

Definition

Copy


        CREATE      Procedure [dbo].[spUserLogin]
(
    @ClientsID int,
    @UserName nvarchar(50),
    @Password nvarchar(255),
    @ClientUsersID int OUTPUT,
    @LastSuccess datetime OUTPUT,
    @NumFails int OUTPUT,    
    @MembershipRefreshedOn datetime OUTPUT
)
AS
declare @TempPass nvarchar(255)
SELECT top 1 @UserName = Username,@TempPass=[Password], @ClientUsersID = ID,@LastSuccess=DateLastLogin,@NumFails=NumFailedAttempts, @MembershipRefreshedOn=MembershipRefreshedOn
FROM dbo.ClientUsers 
WHERE ([Username] = @Username) AND (ClientsID = @ClientsID) And Deleted = 0
if (COALESCE(@ClientUsersID,0)>0
  begin
    if (@Password=@TempPass)
      begin
        UPDATE ClientUsers SET DateLastLogin=getutcdate(), NumFailedAttempts=0 WHERE ID=@ClientUsersID
      end
    else
      begin
        UPDATE ClientUsers SET NumFailedAttempts=COALESCE(@NumFails,0)+1 WHERE ID=@ClientUsersID
        select @UserName=NULL,@ClientUsersID=NULL,@LastSuccess=NULL,@NumFails=0,@MembershipRefreshedOn=NULL
      end
    end