ALTER PROCEDURE [dbo].[Add_Donation]
-- @in_CustomerID int,
@in_Email VARCHAR(128),
@in_GamePoints INT,
@in_GameDollars INT,
@in_ItemID INT,
@in_Quantity INT
AS
BEGIN
DECLARE @in_CustomerID INT
SELECT @in_CustomerID = CustomerID FROM Accounts WHERE email = @in_Email
-- Add GC
IF(@in_GamePoints > 0) BEGIN
UPDATE UsersData SET GamePoints=(GamePoints+@in_GamePoints) WHERE CustomerID=@in_CustomerID
END
-- Add Money
IF(@in_GameDollars > 0) BEGIN
UPDATE UsersData SET GameDollars=(GameDollars+@in_GameDollars) WHERE CustomerID=@in_CustomerID
END
DECLARE @accountType INT
SELECT @accountType=AccountType FROM UsersData WHERE CustomerID=@in_CustomerID
-- Add Legend
IF (@accountType = 2 AND @in_GamePoints >= 50000 AND @in_GameDollars >= 50000) BEGIN
UPDATE UsersData SET
AccountType=0
WHERE CustomerID=@in_CustomerID
END
-- Add Item to global inventory
IF(@in_ItemID != 0 AND @in_Quantity != 0) BEGIN
INSERT INTO UsersInventory (CustomerID,CharID,BackpackSlot,ItemID,LeasedUntil,Quantity,Var1,Var2)
VALUES (@in_CustomerID,0,0,@in_ItemID,getdate(),@in_Quantity,-1,-1)
END
-- Insert to Donation_Log
IF(@in_GamePoints > 0 OR @in_GameDollars > 0 OR @in_ItemID != 0 AND @in_Quantity != 0) BEGIN
INSERT INTO Donation_Log (CustomerID,Email,GamePoints,GameDollars,ItemID, Quantity, TIME)
VALUES (@in_CustomerID, @in_Email, @in_GamePoints, @in_GameDollars, @in_ItemID, @in_Quantity, GETDATE())
END
END