+++ /dev/null
-#
-# Copyright (C) 2008-2014 The LuCI Team <luci@lists.subsignal.org>
-# Copyright (C) 2018 Rosy Song <rosysong@rosinson.com>
-#
-# This is free software, licensed under the Apache License, Version 2.0 .
-#
-
-include $(TOPDIR)/rules.mk
-
-LUCI_TITLE:=LuCI Support for Rosy File Server
-LUCI_DEPENDS:=+luci-compat +luci-base +rosy-file-server
-
-include ../../luci.mk
-
-# call BuildPackage - OpenWrt buildroot signature
+++ /dev/null
--- Copyright 2018 Rosy Song <rosysong@rosinson.com>
--- Licensed to the public under the Apache License 2.0.
-
-local uci = require "luci.model.uci".cursor()
-local dis = uci:get("rosyfs", "default", "disabled")
-
-local targets = {}
-local server_root = luci.http.formvalue("server_root") or "/www/rosyfs-share/"
-local buffer = io.popen("/bin/busybox ls -ahLlp %s" % server_root)
-if dis ~= '1' and buffer then
- for l in buffer:lines() do
- local _p, i, u, g, sz, mm, dd, tt, nm = l:match(
- "^([^%s]+)%s+([^%s]+)%s+([^%s]+)%s+([^%s]+)%s+([^%s]+)%s+([^%s]+)%s+([^%s]+)%s+([^%s]+)%s+(.+)"
- )
- local p = _p and string.sub(_p, 1, 1) or nil
- if p and (p == '-' or p == 'd') and nm and (nm ~= "./") and
- not (server_root == "/www/rosyfs-share/" and nm == "../") and
- not (server_root == "/www/rosyfs-share/" and nm == "rosyfs-share/") then
- targets[nm] = {
- ['type'] = p,
- ['size'] = sz,
- ['last'] = "%s %s %s" % { mm, dd, tt },
- ['name'] = nm
- }
- end
- end
-end
-
-local title = uci:get("rosyfs", "default", "title") or nil
-
-m = SimpleForm("rosyfs", title or translate("Rosy File Server"), translate("This is rosy file server for luci.<br /><strong>Note: targets will be mapped at /www/rosyfs-share !</strong>"))
-m.reset = false
-m.submit = false
-
-
-s = m:section(Table, targets)
-
-t = s:option(DummyValue, "type", translate("Type"))
-
-n = s:option(DummyValue, "name", translate("Name"))
-n.rawhtml = true
-
-function n.cfgvalue(self, section)
- local v = DummyValue.cfgvalue(self, section)
- local hv = (v == "../") and "Parent Directory" or v
- local t = targets[v]['type']
-
- if t and t ~='d' then
- -- File
- return translatef("<a href='%s%s'>%s</a>",
- string.sub(server_root, 5, #server_root), hv, hv);
- elseif t then
- -- Directory
- if v == "../" then
- local dir = luci.util.trim(luci.util.exec("dirname " .. server_root))
-
- if dir ~= "/" then dir = dir .. "/" end
-
- return translatef("<a href='%s?server_root=%s'>%s</a>",
- luci.dispatcher.build_url("httpfs/rosy-file-server"), dir, hv)
- else
- return translatef("<a href='%s?server_root=%s%s'>%s</a>",
- luci.dispatcher.build_url("httpfs/rosy-file-server"),
- server_root, hv, hv)
- end
- end
-end
-
-l = s:option(DummyValue, "last", translate("Last Modified"))
-sz = s:option(DummyValue, "size", translate("Size"))
-
-return m
+++ /dev/null
--- Copyright 2019 Rosy Song <rosysong@rosinson.com>
--- Licensed to the public under the Apache License 2.0.
-
-local uci = require("luci.model.uci").cursor()
-local dis = uci:get("rosyfs", "default", "disabled")
-local tgt = uci:get("rosyfs", "default", "target")
-local tlt = uci:get("rosyfs", "default", "title")
-
-m = Map("rosyfs", translate("Rosy File Server Settings"))
-
-s = m:section(TypedSection, "rosyfs", nil)
-s.addremove = false
-s.anonymous = true
-
-e = s:option(Flag, "disabled", translate("Disable"), translate("Disable Rosy File Server"))
-e.default = dis or e.disabled
-e.rmempty = false
-
-a = s:option(Value, "target", translate("Target"), translate("Specify path to be mapped"))
-a.default = tgt or "/www"
-a.datatype = "directory"
-
-t = s:option(Value, "title", translate("Title"), translate("Title to be shown"))
-t.default = tlt or "Rosy File Server"
-
-return m
+++ /dev/null
-msgid ""
-msgstr "Content-Type: text/plain; charset=UTF-8"
-
-#: applications/luci-app-rosy-file-server/luasrc/model/cbi/rosy-file-server/rosy-file-server.lua:50
-msgid "<a href='%s%s'>%s</a>"
-msgstr ""
-
-#: applications/luci-app-rosy-file-server/luasrc/model/cbi/rosy-file-server/rosy-file-server.lua:62
-msgid "<a href='%s?server_root=%s%s'>%s</a>"
-msgstr ""
-
-#: applications/luci-app-rosy-file-server/luasrc/model/cbi/rosy-file-server/rosy-file-server.lua:59
-msgid "<a href='%s?server_root=%s'>%s</a>"
-msgstr ""
-
-#: applications/luci-app-rosy-file-server/luasrc/model/cbi/rosy-file-server/rosyfs.lua:15
-msgid "Disable"
-msgstr ""
-
-#: applications/luci-app-rosy-file-server/luasrc/model/cbi/rosy-file-server/rosyfs.lua:15
-msgid "Disable Rosy File Server"
-msgstr ""
-
-#: applications/luci-app-rosy-file-server/root/usr/share/rpcd/acl.d/luci-app-rosy-file-server.json:3
-msgid "Grant UCI access for luci-app-rosy-file-server"
-msgstr ""
-
-#: applications/luci-app-rosy-file-server/luasrc/model/cbi/rosy-file-server/rosy-file-server.lua:69
-msgid "Last Modified"
-msgstr ""
-
-#: applications/luci-app-rosy-file-server/luasrc/model/cbi/rosy-file-server/rosy-file-server.lua:40
-msgid "Name"
-msgstr ""
-
-#: applications/luci-app-rosy-file-server/luasrc/model/cbi/rosy-file-server/rosy-file-server.lua:31
-#: applications/luci-app-rosy-file-server/root/usr/share/luci/menu.d/luci-app-rosy-file-server.json:3
-#: applications/luci-app-rosy-file-server/root/usr/share/luci/menu.d/luci-app-rosy-file-server.json:17
-#: applications/luci-app-rosy-file-server/root/usr/share/luci/menu.d/luci-app-rosy-file-server.json:27
-msgid "Rosy File Server"
-msgstr ""
-
-#: applications/luci-app-rosy-file-server/luasrc/model/cbi/rosy-file-server/rosyfs.lua:9
-msgid "Rosy File Server Settings"
-msgstr ""
-
-#: applications/luci-app-rosy-file-server/luasrc/model/cbi/rosy-file-server/rosy-file-server.lua:70
-msgid "Size"
-msgstr ""
-
-#: applications/luci-app-rosy-file-server/luasrc/model/cbi/rosy-file-server/rosyfs.lua:19
-msgid "Specify path to be mapped"
-msgstr ""
-
-#: applications/luci-app-rosy-file-server/luasrc/model/cbi/rosy-file-server/rosyfs.lua:19
-msgid "Target"
-msgstr ""
-
-#: applications/luci-app-rosy-file-server/luasrc/model/cbi/rosy-file-server/rosy-file-server.lua:31
-msgid ""
-"This is rosy file server for luci.<br /><strong>Note: targets will be mapped "
-"at /www/rosyfs-share !</strong>"
-msgstr ""
-
-#: applications/luci-app-rosy-file-server/luasrc/model/cbi/rosy-file-server/rosyfs.lua:23
-msgid "Title"
-msgstr ""
-
-#: applications/luci-app-rosy-file-server/luasrc/model/cbi/rosy-file-server/rosyfs.lua:23
-msgid "Title to be shown"
-msgstr ""
-
-#: applications/luci-app-rosy-file-server/luasrc/model/cbi/rosy-file-server/rosy-file-server.lua:38
-msgid "Type"
-msgstr ""
+++ /dev/null
-{
- "httpfs": {
- "title": "Rosy File Server",
- "order": 5,
- "setuser": "root",
- "setgroup": "root",
- "action": {
- "type": "firstchild"
- },
- "depends": {
- "acl": [ "luci-app-rosy-file-server" ],
- "uci": { "rosyfs": true }
- }
- },
-
- "httpfs/rosy-file-server": {
- "title": "Rosy File Server",
- "order": 1,
- "action": {
- "type": "form",
- "path": "rosy-file-server/rosy-file-server",
- "post": { "cbi.submit": true }
- }
- },
-
- "admin/services/rosyfs": {
- "title": "Rosy File Server",
- "order": 61,
- "action": {
- "type": "cbi",
- "path": "rosy-file-server/rosyfs",
- "post": { "cbi.submit": true }
- }
- }
-}
+++ /dev/null
-{
- "luci-app-rosy-file-server": {
- "description": "Grant UCI access for luci-app-rosy-file-server",
- "read": {
- "uci": [ "rosyfs" ]
- },
- "write": {
- "uci": [ "rosyfs" ]
- }
- }
-}