summaryrefslogtreecommitdiffhomepage
path: root/applications/luci-app-wifischedule
diff options
context:
space:
mode:
Diffstat (limited to 'applications/luci-app-wifischedule')
-rw-r--r--applications/luci-app-wifischedule/luasrc/controller/wifischedule/wifi_schedule.lua28
-rw-r--r--applications/luci-app-wifischedule/luasrc/model/cbi/wifischedule/wifi_schedule.lua78
-rw-r--r--applications/luci-app-wifischedule/luasrc/view/wifischedule/file_viewer.htm2
-rw-r--r--applications/luci-app-wifischedule/po/ja/wifischedule.po12
-rw-r--r--applications/luci-app-wifischedule/po/templates/wifischedule.pot8
-rw-r--r--applications/luci-app-wifischedule/po/zh-cn/wifischedule.po24
6 files changed, 79 insertions, 73 deletions
diff --git a/applications/luci-app-wifischedule/luasrc/controller/wifischedule/wifi_schedule.lua b/applications/luci-app-wifischedule/luasrc/controller/wifischedule/wifi_schedule.lua
index 4743453a1d..261cf36d0f 100644
--- a/applications/luci-app-wifischedule/luasrc/controller/wifischedule/wifi_schedule.lua
+++ b/applications/luci-app-wifischedule/luasrc/controller/wifischedule/wifi_schedule.lua
@@ -12,21 +12,31 @@
--
-- Author: Nils Koenig <openwrt@newk.it>
-module("luci.controller.wifischedule.wifi_schedule", package.seeall)
+module("luci.controller.wifischedule.wifi_schedule", package.seeall)
+
+local fs = require "nixio.fs"
+local sys = require "luci.sys"
+local template = require "luci.template"
+local i18n = require "luci.i18n"
function index()
- entry({"admin", "wifi_schedule"}, firstchild(), _("Wifi Schedule"), 60).dependent=false
- entry({"admin", "wifi_schedule", "tab_from_cbi"}, cbi("wifischedule/wifi_schedule"), _("Schedule"), 1)
- entry({"admin", "wifi_schedule", "wifi_schedule"}, call("wifi_schedule_log"), _("View Logfile"), 2)
- entry({"admin", "wifi_schedule", "cronjob"}, call("view_crontab"), _("View Cron Jobs"), 3)
+ if not nixio.fs.access("/etc/config/wifi_schedule") then
+ return
+ end
+ entry({"admin", "services", "wifi_schedule"}, firstchild(), _("Wifi Schedule"), 60).dependent=false
+ entry({"admin", "services", "wifi_schedule", "tab_from_cbi"}, cbi("wifischedule/wifi_schedule"), _("Schedule"), 1)
+ entry({"admin", "services", "wifi_schedule", "wifi_schedule"}, call("wifi_schedule_log"), _("View Logfile"), 2)
+ entry({"admin", "services", "wifi_schedule", "cronjob"}, call("view_crontab"), _("View Cron Jobs"), 3)
end
function wifi_schedule_log()
- local logfile = luci.sys.exec("cat /tmp/log/wifi_schedule.log")
- luci.template.render("wifischedule/file_viewer", {title="Wifi Schedule Logfile", content=logfile})
+ local logfile = fs.readfile("/tmp/log/wifi_schedule.log") or ""
+ template.render("wifischedule/file_viewer",
+ {title = i18n.translate("Wifi Schedule Logfile"), content = logfile})
end
function view_crontab()
- local crontab = luci.sys.exec("cat /etc/crontabs/root")
- luci.template.render("wifischedule/file_viewer", {title="Cron Jobs", content=crontab})
+ local crontab = fs.readfile("/etc/crontabs/root") or ""
+ template.render("wifischedule/file_viewer",
+ {title = i18n.translate("Cron Jobs"), content = crontab})
end
diff --git a/applications/luci-app-wifischedule/luasrc/model/cbi/wifischedule/wifi_schedule.lua b/applications/luci-app-wifischedule/luasrc/model/cbi/wifischedule/wifi_schedule.lua
index 7c7f1b50e5..1d301219a8 100644
--- a/applications/luci-app-wifischedule/luasrc/model/cbi/wifischedule/wifi_schedule.lua
+++ b/applications/luci-app-wifischedule/luasrc/model/cbi/wifischedule/wifi_schedule.lua
@@ -12,15 +12,11 @@
--
-- Author: Nils Koenig <openwrt@newk.it>
-function file_exists(name)
- local f=io.open(name,"r")
- if f~=nil then io.close(f) return true else return false end
-end
-
+local fs = require "nixio.fs"
+local sys = require "luci.sys"
function time_validator(self, value, desc)
if value ~= nil then
-
h_str, m_str = string.match(value, "^(%d%d?):(%d%d?)$")
h = tonumber(h_str)
m = tonumber(m_str)
@@ -32,16 +28,16 @@ function time_validator(self, value, desc)
m <= 59) then
return value
end
- end
- return nil, translate("The value '" .. desc .. "' is invalid")
+ end
+ return nil, translatef("The value %s is invalid", desc)
end
-- -------------------------------------------------------------------------------------------------
-- BEGIN Map
-m = Map("wifi_schedule", translate("Wifi Schedule"), translate("Defines a schedule when to turn on and off wifi."))
+m = Map("wifi_schedule", translate("Wifi Schedule"), translate("Defines a schedule when to turn on and off wifi."))
function m.on_commit(self)
- luci.sys.exec("/usr/bin/wifi_schedule.sh cron")
+ sys.exec("/usr/bin/wifi_schedule.sh cron")
end
-- END Map
@@ -54,13 +50,13 @@ global_section.anonymous = true
-- BEGIN Global Enable Checkbox
global_enable = global_section:option(Flag, "enabled", translate("Enable Wifi Schedule"))
-global_enable.optional=false;
-global_enable.rmempty = false;
+global_enable.optional = false
+global_enable.rmempty = false
function global_enable.validate(self, value, global_section)
if value == "1" then
- if ( file_exists("/sbin/wifi") and
- file_exists("/usr/bin/wifi_schedule.sh") )then
+ if ( fs.access("/sbin/wifi") and
+ fs.access("/usr/bin/wifi_schedule.sh") )then
return value
else
return nil, translate("Could not find required /usr/bin/wifi_schedule.sh or /sbin/wifi")
@@ -71,39 +67,38 @@ function global_enable.validate(self, value, global_section)
end
-- END Global Enable Checkbox
-
-- BEGIN Global Logging Checkbox
global_logging = global_section:option(Flag, "logging", translate("Enable logging"))
-global_logging.optional=false;
-global_logging.rmempty = false;
+global_logging.optional = false
+global_logging.rmempty = false
global_logging.default = 0
-- END Global Enable Checkbox
-- BEGIN Global Activate WiFi Button
enable_wifi = global_section:option(Button, "enable_wifi", translate("Activate wifi"))
function enable_wifi.write()
- luci.sys.exec("/usr/bin/wifi_schedule.sh start manual")
+ sys.exec("/usr/bin/wifi_schedule.sh start manual")
end
-- END Global Activate Wifi Button
-- BEGIN Global Disable WiFi Gracefully Button
disable_wifi_gracefully = global_section:option(Button, "disable_wifi_gracefully", translate("Disable wifi gracefully"))
function disable_wifi_gracefully.write()
- luci.sys.exec("/usr/bin/wifi_schedule.sh stop manual")
+ sys.exec("/usr/bin/wifi_schedule.sh stop manual")
end
--- END Global Disable Wifi Gracefully Button
+-- END Global Disable Wifi Gracefully Button
-- BEGIN Disable WiFi Forced Button
disable_wifi_forced = global_section:option(Button, "disable_wifi_forced", translate("Disabled wifi forced"))
function disable_wifi_forced.write()
- luci.sys.exec("/usr/bin/wifi_schedule.sh forcestop manual")
+ sys.exec("/usr/bin/wifi_schedule.sh forcestop manual")
end
-- END Global Disable WiFi Forced Button
-- BEGIN Global Unload Modules Checkbox
global_unload_modules = global_section:option(Flag, "unload_modules", translate("Unload Modules (experimental; saves more power)"))
-global_unload_modules.optional = false;
-global_unload_modules.rmempty = false;
+global_unload_modules.optional = false
+global_unload_modules.rmempty = false
global_unload_modules.default = 0
-- END Global Unload Modules Checkbox
@@ -111,13 +106,13 @@ global_unload_modules.default = 0
-- BEGIN Modules
modules = global_section:option(TextValue, "modules", "")
modules:depends("unload_modules", global_unload_modules.enabled);
-modules.wrap = "off"
-modules.rows = 10
+modules.wrap = "off"
+modules.rows = 10
function modules.cfgvalue(self, section)
- mod=uci.get("wifi_schedule", section, "modules")
+ mod = uci.get("wifi_schedule", section, "modules")
if mod == nil then
- mod=""
+ mod = ""
end
return mod:gsub(" ", "\r\n")
end
@@ -131,28 +126,27 @@ function modules.write(self, section, value)
end
-- END Modules
--- BEGIN Determine Modules
+-- BEGIN Determine Modules
determine_modules = global_section:option(Button, "determine_modules", translate("Determine Modules Automatically"))
determine_modules:depends("unload_modules", global_unload_modules.enabled);
function determine_modules.write(self, section)
- output = luci.sys.exec("/usr/bin/wifi_schedule.sh getmodules")
+ output = sys.exec("/usr/bin/wifi_schedule.sh getmodules")
modules:write(section, output)
end
-- END Determine Modules
-
-- BEGIN Section
d = m:section(TypedSection, "entry", translate("Schedule events"))
-d.addremove = true
+d.addremove = true
--d.anonymous = true
-- END Section
-- BEGIN Enable Checkbox
c = d:option(Flag, "enabled", translate("Enable"))
-c.optional=false; c.rmempty = false;
+c.optional = false
+c.rmempty = false
-- END Enable Checkbox
-
-- BEGIN Day(s) of Week
dow = d:option(MultiValue, "daysofweek", translate("Day(s) of Week"))
dow.optional = false
@@ -168,8 +162,8 @@ dow:value("Sunday", translate("Sunday"))
-- BEGIN Start Wifi Dropdown
starttime = d:option(Value, "starttime", translate("Start WiFi"))
-starttime.optional=false;
-starttime.rmempty = false;
+starttime.optional = false
+starttime.rmempty = false
starttime:value("00:00")
starttime:value("01:00")
starttime:value("02:00")
@@ -198,14 +192,12 @@ starttime:value("23:00")
function starttime.validate(self, value, d)
return time_validator(self, value, translate("Start Time"))
end
-
-- END Start Wifi Dropdown
-
-- BEGIN Stop Wifi Dropdown
-stoptime = d:option(Value, "stoptime", translate("Stop WiFi"))
-stoptime.optional=false;
-stoptime.rmempty = false;
+stoptime = d:option(Value, "stoptime", translate("Stop WiFi"))
+stoptime.optional = false
+stoptime.rmempty = false
stoptime:value("00:00")
stoptime:value("01:00")
stoptime:value("02:00")
@@ -236,15 +228,14 @@ function stoptime.validate(self, value, d)
end
-- END Stop Wifi Dropdown
-
-- BEGIN Force Wifi Stop Checkbox
force_wifi = d:option(Flag, "forcewifidown", translate("Force disabling wifi even if stations associated"))
force_wifi.default = false
-force_wifi.rmempty = false;
+force_wifi.rmempty = false
function force_wifi.validate(self, value, d)
if value == "0" then
- if file_exists("/usr/bin/iwinfo") then
+ if fs.access("/usr/bin/iwinfo") then
return value
else
return nil, translate("Could not find required programm /usr/bin/iwinfo")
@@ -255,5 +246,4 @@ function force_wifi.validate(self, value, d)
end
-- END Force Wifi Checkbox
-
return m
diff --git a/applications/luci-app-wifischedule/luasrc/view/wifischedule/file_viewer.htm b/applications/luci-app-wifischedule/luasrc/view/wifischedule/file_viewer.htm
index 2c7beba45f..f67a2bea99 100644
--- a/applications/luci-app-wifischedule/luasrc/view/wifischedule/file_viewer.htm
+++ b/applications/luci-app-wifischedule/luasrc/view/wifischedule/file_viewer.htm
@@ -15,7 +15,7 @@ Author: Nils Koenig <openwrt@newk.it>
-%>
<%+header%>
-<h2 name="title"><%=translate(title)%></h2>
+<h2 name="title"><%=title%></h2>
<div id="content_fileviewer">
<textarea style="width: 100%" readonly="readonly" wrap="off" rows="<%=content:cmatch("\n")+1%>" id="content_id"><%=content:pcdata()%></textarea>
</div>
diff --git a/applications/luci-app-wifischedule/po/ja/wifischedule.po b/applications/luci-app-wifischedule/po/ja/wifischedule.po
index 52ec06d1cb..2bf2613fb8 100644
--- a/applications/luci-app-wifischedule/po/ja/wifischedule.po
+++ b/applications/luci-app-wifischedule/po/ja/wifischedule.po
@@ -22,6 +22,9 @@ msgstr ""
msgid "Could not find required programm /usr/bin/iwinfo"
msgstr "必須のプログラム /usr/bin/iwinfo が見つかりませんでした。"
+msgid "Cron Jobs"
+msgstr "Cronジョブ"
+
msgid "Day(s) of Week"
msgstr "曜日"
@@ -82,7 +85,7 @@ msgstr "WiFiの停止"
msgid "Sunday"
msgstr "日曜日"
-msgid "The value '"
+msgid "The value %s is invalid"
msgstr ""
msgid "Thursday"
@@ -106,8 +109,5 @@ msgstr "水曜日"
msgid "Wifi Schedule"
msgstr "WiFi スケジュール"
-#~ msgid "Cron Jobs"
-#~ msgstr "Cronジョブ"
-
-#~ msgid "Wifi Schedule Logfile"
-#~ msgstr "WiFiスケジュール ログファイル"
+msgid "Wifi Schedule Logfile"
+msgstr "WiFiスケジュール ログファイル"
diff --git a/applications/luci-app-wifischedule/po/templates/wifischedule.pot b/applications/luci-app-wifischedule/po/templates/wifischedule.pot
index 62ce9f5cfb..639c432e5e 100644
--- a/applications/luci-app-wifischedule/po/templates/wifischedule.pot
+++ b/applications/luci-app-wifischedule/po/templates/wifischedule.pot
@@ -10,6 +10,9 @@ msgstr ""
msgid "Could not find required programm /usr/bin/iwinfo"
msgstr ""
+msgid "Cron Jobs"
+msgstr ""
+
msgid "Day(s) of Week"
msgstr ""
@@ -70,7 +73,7 @@ msgstr ""
msgid "Sunday"
msgstr ""
-msgid "The value '"
+msgid "The value %s is invalid"
msgstr ""
msgid "Thursday"
@@ -93,3 +96,6 @@ msgstr ""
msgid "Wifi Schedule"
msgstr ""
+
+msgid "Wifi Schedule Logfile"
+msgstr ""
diff --git a/applications/luci-app-wifischedule/po/zh-cn/wifischedule.po b/applications/luci-app-wifischedule/po/zh-cn/wifischedule.po
index 858e42bf27..ab3a8d0bf3 100644
--- a/applications/luci-app-wifischedule/po/zh-cn/wifischedule.po
+++ b/applications/luci-app-wifischedule/po/zh-cn/wifischedule.po
@@ -10,11 +10,14 @@ msgstr "无法找到必需的 /usr/bin/wifi_schedule.sh 或 /sbin/wifi"
msgid "Could not find required programm /usr/bin/iwinfo"
msgstr "无法找到必需程序:/usr/bin/iwinfo"
+msgid "Cron Jobs"
+msgstr "计划任务"
+
msgid "Day(s) of Week"
msgstr "星期"
msgid "Defines a schedule when to turn on and off wifi."
-msgstr "定义打开和关闭 WiFi 的时间表"
+msgstr "定义自动打开和关闭 WiFi 的计划表"
msgid "Determine Modules Automatically"
msgstr "自动确定模块"
@@ -29,7 +32,7 @@ msgid "Enable"
msgstr "启用"
msgid "Enable Wifi Schedule"
-msgstr "启用 WiFi 时间表"
+msgstr "启用 WiFi 计划"
msgid "Enable logging"
msgstr "启用日志"
@@ -50,7 +53,7 @@ msgid "Saturday"
msgstr "星期六"
msgid "Schedule"
-msgstr "时间表"
+msgstr "计划表"
msgid "Schedule events"
msgstr "计划事件"
@@ -70,8 +73,8 @@ msgstr "关闭 WiFi"
msgid "Sunday"
msgstr "星期日"
-msgid "The value '"
-msgstr ""
+msgid "The value %s is invalid"
+msgstr "%s 的值无效"
msgid "Thursday"
msgstr "星期四"
@@ -80,7 +83,7 @@ msgid "Tuesday"
msgstr "星期二"
msgid "Unload Modules (experimental; saves more power)"
-msgstr "取消加载模块(实验性的,节省更多电量)"
+msgstr "卸载模块(实验性的,节省更多电量)"
msgid "View Cron Jobs"
msgstr "查看计划任务"
@@ -92,10 +95,7 @@ msgid "Wednesday"
msgstr "星期三"
msgid "Wifi Schedule"
-msgstr "WiFi 时间表"
-
-#~ msgid "Cron Jobs"
-#~ msgstr "计划任务"
+msgstr "WiFi 计划"
-#~ msgid "Wifi Schedule Logfile"
-#~ msgstr "WiFi 时间表日志文件"
+msgid "Wifi Schedule Logfile"
+msgstr "WiFi 计划日志文件"