modules/admin-full: Added crontab configuration page
authorSteven Barth <steven@midlink.org>
Sun, 17 Aug 2008 13:49:19 +0000 (13:49 +0000)
committerSteven Barth <steven@midlink.org>
Sun, 17 Aug 2008 13:49:19 +0000 (13:49 +0000)
i18n/english/luasrc/i18n/admin-core.en.lua
i18n/german/luasrc/i18n/admin-core.de.lua
modules/admin-full/luasrc/controller/admin/services.lua
modules/admin-full/luasrc/model/cbi/admin_services/crontab.lua [new file with mode: 0644]

index c516b31..ed69e01 100644 (file)
@@ -275,4 +275,7 @@ process_kill = "Kill"
 
 mem_cached = "cached"
 mem_buffered = "buffered"
-mem_free = "free"
\ No newline at end of file
+mem_free = "free"
+
+a_s_crontab = "Scheduled Tasks"
+a_s_crontab1 = "This is the system crontab in which scheduled tasks can be defined."
\ No newline at end of file
index 449d86f..2fcb8fb 100644 (file)
@@ -350,4 +350,9 @@ process_kill = "Töten"
 
 mem_cached = "gecached"
 mem_buffered = "gepuffert"
-mem_free = "frei"
\ No newline at end of file
+mem_free = "frei"
+
+a_s_crontab = "Geplante Aufgaben"
+a_s_crontab1 = "Dies ist die System-Crontab in der geplante Aufgaben definiert werden können."
+
+a_w_nasid = "NAS ID"
\ No newline at end of file
index 59defbb..ea87585 100644 (file)
@@ -16,6 +16,11 @@ module("luci.controller.admin.services", package.seeall)
 function index()
        luci.i18n.loadc("admin-core")
        local i18n = luci.i18n.translate
+       
+       local page  = node("admin", "services", "crontab")
+       page.target = form("admin_services/crontab")
+       page.title  = i18n("a_s_crontab")
+       page.order  = 50
 
        local page  = node("admin", "services")
        page.target = template("admin_services/index")
diff --git a/modules/admin-full/luasrc/model/cbi/admin_services/crontab.lua b/modules/admin-full/luasrc/model/cbi/admin_services/crontab.lua
new file mode 100644 (file)
index 0000000..7a9750f
--- /dev/null
@@ -0,0 +1,35 @@
+--[[
+LuCI - Lua Configuration Interface
+
+Copyright 2008 Steven Barth <steven@midlink.org>
+Copyright 2008 Jo-Philipp Wich <xm@leipzig.freifunk.net>
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+$Id$
+]]--
+local cronfile = "/etc/crontabs/root" 
+
+f = SimpleForm("crontab", translate("a_s_crontab"), translate("a_s_crontab1"))
+
+t = f:field(TextValue, "crons")
+t.rmempty = true
+t.rows = 10
+function t.cfgvalue()
+       return luci.fs.readfile(cronfile) or ""
+end
+
+function f.handle(self, state, data)
+       if state == FORM_VALID then
+               if data.crons then
+                       luci.fs.writefile(cronfile, data.crons)
+               end
+       end
+       return true
+end
+
+return f
\ No newline at end of file