f50858f4d719c69ccd274b1567ffc463ec0be92b
[project/luci.git] / modules / admin-mini / luasrc / controller / mini / index.lua
1 --[[
2 LuCI - Lua Configuration Interface
3
4 Copyright 2008 Steven Barth <steven@midlink.org>
5 Copyright 2008 Jo-Philipp Wich <xm@leipzig.freifunk.net>
6
7 Licensed under the Apache License, Version 2.0 (the "License");
8 you may not use this file except in compliance with the License.
9 You may obtain a copy of the License at
10
11 http://www.apache.org/licenses/LICENSE-2.0
12
13 $Id$
14 ]]--
15
16 module("luci.controller.mini.index", package.seeall)
17
18 function index()
19 luci.i18n.loadc("admin-core")
20 local i18n = luci.i18n.translate
21
22 local root = node()
23 if not root.lock then
24 root.target = alias("mini")
25 root.index = true
26 end
27
28 entry({"about"}, template("about")).i18n = "admin-core"
29
30 local page = entry({"mini"}, alias("mini", "index"), i18n("Essentials"), 10)
31 page.i18n = "admin-core"
32 page.sysauth = "root"
33 page.sysauth_authenticator = "htmlauth"
34 page.index = true
35
36 entry({"mini", "index"}, alias("mini", "index", "index"), i18n("Overview"), 10).index = true
37 entry({"mini", "index", "index"}, form("mini/index"), i18n("General"), 1).ignoreindex = true
38 entry({"mini", "index", "luci"}, cbi("mini/luci", {autoapply=true}), i18n("Settings"), 10)
39 entry({"mini", "index", "logout"}, call("action_logout"), i18n("Logout"))
40 end
41
42 function action_logout()
43 local dsp = require "luci.dispatcher"
44 local sauth = require "luci.sauth"
45 if dsp.context.authsession then
46 sauth.kill(dsp.context.authsession)
47 dsp.context.urltoken.stok = nil
48 end
49
50 luci.http.header("Set-Cookie", "sysauth=; path=" .. dsp.build_url())
51 luci.http.redirect(luci.dispatcher.build_url())
52 end