|
4
|
1 local Luan = require "luan:Luan.luan"
|
|
|
2 local error = Luan.error
|
|
5
|
3 local Html = require "luan:Html.luan"
|
|
|
4 local url_encode = Html.url_encode or error()
|
|
4
|
5 local Http = require "luan:http/Http.luan"
|
|
5
|
6 local Config = require "site:/lib/Config.luan"
|
|
|
7 local Logging = require "luan:logging/Logging.luan"
|
|
|
8 local logger = Logging.logger "login1.red"
|
|
4
|
9
|
|
|
10
|
|
|
11 return function()
|
|
5
|
12 local config = Config.get()
|
|
|
13 local request = Http.request
|
|
|
14 local redirect_uri = request.scheme.."://"..request.headers["Host"].."/login2.red"
|
|
|
15 local scope = "identify"
|
|
|
16 local url = "https://discord.com/api/oauth2/authorize?client_id="..config.discord.client_id.."&redirect_uri="..url_encode(redirect_uri).."&response_type=code&scope="..url_encode(scope)
|
|
|
17 -- logger.info(url)
|
|
|
18 Http.response.send_redirect(url)
|
|
4
|
19 end
|