Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local subscriptions = {}
- local DS = game:GetService("DataStoreService"):GetDataStore("SubscriptionStorage")
- local HTTP = game:GetService("HttpService")
- --Authorization--
- local b='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'
- function enc(data)
- return ((data:gsub('.', function(x)
- local r,b='',x:byte()
- for i=8,1,-1 do r=r..(b%2^i-b%2^(i-1)>0 and '1' or '0') end
- return r;
- end)..'0000'):gsub('%d%d%d?%d?%d?%d?', function(x)
- if (#x < 6) then return '' end
- local c=0
- for i=1,6 do c=c+(x:sub(i,i)=='1' and 2^(6-i) or 0) end
- return b:sub(c+1,c+1)
- end)..({ '', '==', '=' })[#data%3+1])
- end
- local userName = game:GetService("ServerStorage").SubscriptionsUsername.Value
- local password = game:GetService("ServerStorage").SubscriptionsPassword.Value
- local AuthorizationBase64String = enc(userName..":"..password)
- --Main Functions--
- --Create New Subscription--
- function subscriptions.Create(playerID, validFor, indentityName)
- local creationTable = {
- plrID = playerID,
- subscriptionName = indentityName,
- validDays = validFor,
- gameID = game.GameId,
- Cancelled = false
- }
- local jsonTableToSend = HTTP:JSONEncode(creationTable)
- local Status = HTTP:PostAsync("https://subscriber-roblox.herokuapp.com/create-subscription", jsonTableToSend, Enum.HttpContentType.ApplicationJson, false, { ["Authorization"] = "Basic "..AuthorizationBase64String })
- return Status
- end
- --Retrieve A Subscription--
- function subscriptions.Retrieve(playerID, indentityName)
- local gID = game.GameId
- local Status = HTTP:GetAsync("https://subscriber-roblox.herokuapp.com/retrieve-subscription/"..gID.."/"..indentityName.."/"..playerID, true, { ["Authorization"] = "Basic "..AuthorizationBase64String })
- return Status
- end
- --Cancel A Subscription--
- function subscriptions.Cancel(playerID, indentityName)
- local creationTable = {
- plrID = playerID,
- subscriptionName = indentityName,
- gameID = game.GameId,
- Cancelled = true
- }
- local jsonTableToSend = HTTP:JSONEncode(creationTable)
- local Status = HTTP:PostAsync("https://subscriber-roblox.herokuapp.com/cancel-subscription", jsonTableToSend, Enum.HttpContentType.ApplicationJson, false,{ ["Authorization"] = "Basic "..AuthorizationBase64String })
- return Status
- end
- return subscriptions
Add Comment
Please, Sign In to add comment