diff options
author | Jo-Philipp Wich <jow@openwrt.org> | 2014-12-03 15:17:05 +0100 |
---|---|---|
committer | Jo-Philipp Wich <jow@openwrt.org> | 2015-01-08 16:26:20 +0100 |
commit | 1bb4822dca6113f73e3bc89e2acf15935e6f8e92 (patch) | |
tree | 35e16f100466e4e00657199b38bb3d87d52bf73f /applications/luci-minidlna/luasrc | |
parent | 9edd0e46c3f880727738ce8ca6ff1c8b85f99ef4 (diff) |
Rework LuCI build system
* Rename subdirectories to their repective OpenWrt package names
* Make each LuCI module its own standalone package
* Deploy a shared luci.mk which is used by each module Makefile
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
Diffstat (limited to 'applications/luci-minidlna/luasrc')
4 files changed, 0 insertions, 263 deletions
diff --git a/applications/luci-minidlna/luasrc/controller/minidlna.lua b/applications/luci-minidlna/luasrc/controller/minidlna.lua deleted file mode 100644 index 606cf6d7b4..0000000000 --- a/applications/luci-minidlna/luasrc/controller/minidlna.lua +++ /dev/null @@ -1,57 +0,0 @@ ---[[ -LuCI - Lua Configuration Interface - miniDLNA support - -Copyright 2012 Gabor Juhos <juhosg@openwrt.org> - -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$ -]]-- - -module("luci.controller.minidlna", package.seeall) - -function index() - if not nixio.fs.access("/etc/config/minidlna") then - return - end - - local page - - page = entry({"admin", "services", "minidlna"}, cbi("minidlna"), _("miniDLNA")) - page.dependent = true - - entry({"admin", "services", "minidlna_status"}, call("minidlna_status")) -end - -function minidlna_status() - local sys = require "luci.sys" - local uci = require "luci.model.uci".cursor() - local port = tonumber(uci:get_first("minidlna", "minidlna", "port")) - - local status = { - running = (sys.call("pidof minidlna >/dev/null") == 0), - audio = 0, - video = 0, - image = 0 - } - - if status.running then - local fd = sys.httpget("http://127.0.0.1:%d/" % (port or 8200), true) - if fd then - local html = fd:read("*a") - if html then - status.audio = (tonumber(html:match("Audio files</td><td>(%d+)")) or 0) - status.video = (tonumber(html:match("Video files</td><td>(%d+)")) or 0) - status.image = (tonumber(html:match("Image files</td><td>(%d+)")) or 0) - end - fd:close() - end - end - - luci.http.prepare_content("application/json") - luci.http.write_json(status) -end diff --git a/applications/luci-minidlna/luasrc/model/cbi/minidlna.lua b/applications/luci-minidlna/luasrc/model/cbi/minidlna.lua deleted file mode 100644 index 41e2826ee7..0000000000 --- a/applications/luci-minidlna/luasrc/model/cbi/minidlna.lua +++ /dev/null @@ -1,176 +0,0 @@ ---[[ -LuCI - Lua Configuration Interface - miniDLNA support - -Copyright 2012 Gabor Juhos <juhosg@openwrt.org> - -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 m, s, o - -m = Map("minidlna", translate("miniDLNA"), - translate("MiniDLNA is server software with the aim of being fully compliant with DLNA/UPnP-AV clients.")) - -m:section(SimpleSection).template = "minidlna_status" - -s = m:section(TypedSection, "minidlna", "miniDLNA Settings") -s.addremove = false -s.anonymous = true - -s:tab("general", translate("General Settings")) -s:tab("advanced", translate("Advanced Settings")) - -o = s:taboption("general", Flag, "enabled", translate("Enable:")) -o.rmempty = false - -function o.cfgvalue(self, section) - return luci.sys.init.enabled("minidlna") and self.enabled or self.disabled -end - -function o.write(self, section, value) - if value == "1" then - luci.sys.init.enable("minidlna") - luci.sys.call("/etc/init.d/minidlna start >/dev/null") - else - luci.sys.call("/etc/init.d/minidlna stop >/dev/null") - luci.sys.init.disable("minidlna") - end - - return Flag.write(self, section, value) -end - -o = s:taboption("general", Value, "port", translate("Port:"), - translate("Port for HTTP (descriptions, SOAP, media transfer) traffic.")) -o.datatype = "port" -o.default = 8200 - - -o = s:taboption("general", Value, "interface", translate("Interfaces:"), - translate("Network interfaces to serve.")) - -o.template = "cbi/network_ifacelist" -o.widget = "checkbox" -o.nocreate = true - -function o.cfgvalue(self, section) - local rv = { } - local val = Value.cfgvalue(self, section) - if val then - local ifc - for ifc in val:gmatch("[^,%s]+") do - rv[#rv+1] = ifc - end - end - return rv -end - -function o.write(self, section, value) - local rv = { } - local ifc - for ifc in luci.util.imatch(value) do - rv[#rv+1] = ifc - end - Value.write(self, section, table.concat(rv, ",")) -end - - -o = s:taboption("general", Value, "friendly_name", translate("Friendly name:"), - translate("Set this if you want to customize the name that shows up on your clients.")) -o.rmempty = true -o.placeholder = "OpenWrt DLNA Server" - -o = s:taboption("advanced", Value, "db_dir", translate("Database directory:"), - translate("Set this if you would like to specify the directory where you want MiniDLNA to store its database and album art cache.")) -o.rmempty = true -o.placeholder = "/var/cache/minidlna" - -o = s:taboption("advanced", Value, "log_dir", translate("Log directory:"), - translate("Set this if you would like to specify the directory where you want MiniDLNA to store its log file.")) -o.rmempty = true -o.placeholder = "/var/log" - -s:taboption("advanced", Flag, "inotify", translate("Enable inotify:"), - translate("Set this to enable inotify monitoring to automatically discover new files.")) - -s:taboption("advanced", Flag, "enable_tivo", translate("Enable TIVO:"), - translate("Set this to enable support for streaming .jpg and .mp3 files to a TiVo supporting HMO.")) -o.rmempty = true - -o = s:taboption("advanced", Flag, "strict_dlna", translate("Strict to DLNA standard:"), - translate("Set this to strictly adhere to DLNA standards. This will allow server-side downscaling of very large JPEG images, which may hurt JPEG serving performance on (at least) Sony DLNA products.")) -o.rmempty = true - -o = s:taboption("advanced", Value, "presentation_url", translate("Presentation URL:")) -o.rmempty = true -o.placeholder = "http://192.168.1.1/" - -o = s:taboption("advanced", Value, "notify_interval", translate("Notify interval:"), - translate("Notify interval in seconds.")) -o.datatype = "uinteger" -o.placeholder = 900 - -o = s:taboption("advanced", Value, "serial", translate("Announced serial number:"), - translate("Serial number the miniDLNA daemon will report to clients in its XML description.")) -o.placeholder = "12345678" - -s:taboption("advanced", Value, "model_number", translate("Announced model number:"), - translate("Model number the miniDLNA daemon will report to clients in its XML description.")) -o.placholder = "1" - -o = s:taboption("advanced", Value, "minissdpsocket", translate("miniSSDP socket:"), - translate("Specify the path to the MiniSSDPd socket.")) -o.rmempty = true -o.placeholder = "/var/run/minissdpd.sock" - -o = s:taboption("general", ListValue, "root_container", translate("Root container:")) -o:value(".", translate("Standard container")) -o:value("B", translate("Browse directory")) -o:value("M", translate("Music")) -o:value("V", translate("Video")) -o:value("P", translate("Pictures")) - - -s:taboption("general", DynamicList, "media_dir", translate("Media directories:"), - translate("Set this to the directory you want scanned. If you want to restrict the directory to a specific content type, you can prepend the type ('A' for audio, 'V' for video, 'P' for images), followed by a comma, to the directory (eg. media_dir=A,/mnt/media/Music). Multiple directories can be specified.")) - - -o = s:taboption("general", DynamicList, "album_art_names", translate("Album art names:"), - translate("This is a list of file names to check for when searching for album art.")) -o.rmempty = true -o.placeholder = "Cover.jpg" - -function o.cfgvalue(self, section) - local rv = { } - - local val = Value.cfgvalue(self, section) - if type(val) == "table" then - val = table.concat(val, "/") - elseif not val then - val = "" - end - - local file - for file in val:gmatch("[^/%s]+") do - rv[#rv+1] = file - end - - return rv -end - -function o.write(self, section, value) - local rv = { } - local file - for file in luci.util.imatch(value) do - rv[#rv+1] = file - end - Value.write(self, section, table.concat(rv, "/")) -end - - -return m diff --git a/applications/luci-minidlna/luasrc/view/admin_status/index/minidlna.htm b/applications/luci-minidlna/luasrc/view/admin_status/index/minidlna.htm deleted file mode 100644 index b2feeb2efd..0000000000 --- a/applications/luci-minidlna/luasrc/view/admin_status/index/minidlna.htm +++ /dev/null @@ -1 +0,0 @@ -<%+minidlna_status%> diff --git a/applications/luci-minidlna/luasrc/view/minidlna_status.htm b/applications/luci-minidlna/luasrc/view/minidlna_status.htm deleted file mode 100644 index 098a72a073..0000000000 --- a/applications/luci-minidlna/luasrc/view/minidlna_status.htm +++ /dev/null @@ -1,29 +0,0 @@ -<script type="text/javascript">//<![CDATA[ - XHR.poll(5, '<%=luci.dispatcher.build_url("admin/services/minidlna_status")%>', null, - function(x, st) - { - var tb = document.getElementById('minidlna_status'); - if (st && tb) - { - if (st.running) - { - tb.innerHTML = String.format( - '<%:The miniDLNA service is active, serving %d audio, %d video and %d image files.%>', - st.audio, st.video, st.image - ); - } - else - { - tb.innerHTML = '<em><%:The miniDLNA service is not running.%></em>'; - } - } - } - ); -//]]></script> - -<fieldset class="cbi-section"> - <legend><%:miniDLNA Status%></legend> - <p id="minidlna_status"> - <em><%:Collecting data...%></em> - </p> -</fieldset> |