2023-07-19 17:12:14 (UTC-03:00)
Marcel Rodrigues <marcelgmr@gmail.com>
make get_user() a Cogit method
diff --git a/cogit/cogit.lua b/cogit/cogit.lua index d47cc25..becf486 100644 --- a/cogit/cogit.lua +++ b/cogit/cogit.lua @@ -77,18 +77,6 @@ function Cogit:finish() self.initialized = false end -local function get_user(cookies) - local session_id = cookies["sid"] - if session_id == nil then - return nil - end - local uname = sessions[session_id] - if uname == nil then - return nil - end - return conf.users[uname] -end - function Cogit:run() self:init() self:log(LOG_INFO, "server running on port "..self.conf.port) @@ -109,14 +97,26 @@ function Cogit:log(level, msg) end end +function Cogit:get_user(cookies) + local session_id = cookies["sid"] + if session_id == nil then + return nil + end + local uname = sessions[session_id] + if uname == nil then + return nil + end + return self.conf.users[uname] +end + function Cogit:routes() - conf = self.conf + local conf = self.conf title = conf.title sessions = self.sessions return { {"GET", "/?", function (req) - local user = get_user(req.cookies) + local user = self:get_user(req.cookies) local gnames = {} self:scan() for gname in pairs(self.groups) do @@ -129,7 +129,7 @@ function Cogit:routes() end}, {"GET", "/login", function (req) - local user = get_user(req.cookies) + local user = self:get_user(req.cookies) if user ~= nil then -- already logged in return "/", 303 else @@ -174,7 +174,7 @@ function Cogit:routes() end}, {"GET", "/group/([%w_-]+)", function (req, gname) - local user = get_user(req.cookies) + local user = self:get_user(req.cookies) if not allowed(user, gname) then return "/login", 303 end @@ -187,7 +187,7 @@ function Cogit:routes() end}, {"GET", "/group/([%w_-]+)/repo/([%w_-]+)", function (req, gname, rname) - local user = get_user(req.cookies) + local user = self:get_user(req.cookies) if not allowed(user, gname) then return "/login", 303 end @@ -202,7 +202,7 @@ function Cogit:routes() end}, {"GET", "/group/([%w_-]+)/repo/([%w_-]+)/history/([%w_-]+)", function (req, gname, rname, first) - local user = get_user(req.cookies) + local user = self:get_user(req.cookies) if not allowed(user, gname) then return "/login", 303 end @@ -217,7 +217,7 @@ function Cogit:routes() end}, {"GET", "/group/([%w_-]+)/repo/([%w_-]+)/commit/([%w_-]+)", function (req, gname, rname, cid) - local user = get_user(req.cookies) + local user = self:get_user(req.cookies) if not allowed(user, gname) then return "/login", 303 end @@ -235,7 +235,7 @@ function Cogit:routes() end}, {"GET", "/group/([%w_-]+)/repo/([%w_-]+)/commit/([%w_-]+)/tree/(.*)", function (req, gname, rname, cid, path) - local user = get_user(req.cookies) + local user = self:get_user(req.cookies) if not allowed(user, gname) then return "/login", 303 end