update 2023-06-09 23:35:16

This commit is contained in:
github-actions[bot] 2023-06-09 23:35:16 +08:00
parent 2f0edadbe7
commit baa11cb6ba
31 changed files with 1106 additions and 1019 deletions

View File

@ -1,14 +1,14 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=luci-app-argon-config
PKG_VERSION:=0.9
PKG_RELEASE:=20220424
PKG_VERSION:=1.0
PKG_RELEASE:=20230608
PKG_MAINTAINER:=jerrykuku <jerrykuku@qq.com>
LUCI_TITLE:=LuCI page for Argon Config
LUCI_TITLE:=LuCI app for Argon theme configuration
LUCI_PKGARCH:=all
LUCI_DEPENDS:=+luci-compat +luci-theme-argon +luci-lib-ipkg +luci-theme-argon
LUCI_DEPENDS:=+luci-theme-argon
define Package/$(PKG_NAME)/conffiles
/etc/config/argon

View File

@ -0,0 +1,186 @@
'use strict';
'require form';
'require fs';
'require rpc';
'require uci';
'require ui';
'require view';
var callSystemInfo = rpc.declare({
object: 'system',
method: 'info'
});
var callRemoveArgon = rpc.declare({
object: 'luci.argon',
method: 'remove',
params: ['filename'],
expect: { '': {} }
});
var callRenameArgon = rpc.declare({
object: 'luci.argon',
method: 'rename',
params: ['newname'],
expect: { '': {} }
});
var bg_path = '/www/luci-static/argon/background/';
var trans_set = [0, 0.1, 0.2, 0.3, 0.4,
0.5, 0.6, 0.7, 0.8, 0.9, 1 ];
return view.extend({
load: function() {
return Promise.all([
uci.load('argon'),
L.resolveDefault(callSystemInfo(), {}),
L.resolveDefault(fs.list(bg_path), {})
]);
},
render: function(data) {
var m, s, o;
m = new form.Map('argon', _('Argon theme configuration'),
_('Here you can set the blur and transparency of the login page of argon theme, and manage the background pictures and videos. Chrome is recommended.'));
s = m.section(form.TypedSection, 'global', _('Theme configuration'));
s.addremove = false;
s.anonymous = true;
o = s.option(form.ListValue, 'online_wallpaper', _('Wallpaper source'));
o.value('none', _('Built-in'));
o.value('bing', _('Bing'));
o.value('unsplash', _('Unsplash'));
o.value('wallhaven', _('Wallhaven'));
o.default = 'bing';
o.rmempty = false;
o = s.option(form.ListValue, 'mode', _('Theme mode'));
o.value('normal', _('Follow system'));
o.value('light', _('Light mode'));
o.value('dark', _('Dark mode'));
o.default = 'normal';
o.rmempty = false;
o = s.option(form.Value, 'primary', _('[Light mode] Primary Color'), _('A HEX color (default: #5e72e4).'))
o.default = '#5e72e4';
o.rmempty = false;
o.validate = function(section_id, value) {
if (section_id)
return /(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(value) ||
_('Expecting: %s').format(_('valid HEX color value'));
return true;
}
o = s.option(form.ListValue, 'transparency', _('[Light mode] Transparency'),
_('0 transparent - 1 opaque (suggest: transparent: 0 or translucent preset: 0.5).'));
for (var i of trans_set)
o.value(i);
o.default = '0.5';
o.rmempty = false;
o = s.option(form.Value, 'blur', _('[Light mode] Frosted Glass Radius'),
_('Larger value will more blurred (suggest: clear: 1 or blur preset: 10).'));
o.datatype = 'ufloat';
o.default = '10';
o.rmempty = false;
o = s.option(form.Value, 'dark_primary', _('[Dark mode] Primary Color'),
_('A HEX Color (default: #483d8b).'))
o.default = '#483d8b';
o.rmempty = false;
o.validate = function(section_id, value) {
if (section_id)
return /(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(value) ||
_('Expecting: %s').format(_('valid HEX color value'));
return true;
}
o = s.option(form.ListValue, 'transparency_dark', _('[Dark mode] Transparency'),
_('0 transparent - 1 opaque (suggest: black translucent preset: 0.5).'));
for (var i of trans_set)
o.value(i);
o.default = '0.5';
o.rmempty = false;
o = s.option(form.Value, 'blur_dark', _('[Dark mode] Frosted Glass Radius'),
_('Larger value will more blurred (suggest: clear: 1 or blur preset: 10).'))
o.datatype = 'ufloat';
o.default = '10';
o.rmempty = false;
o = s.option(form.Button, '_save', _('Save settings'));
o.inputstyle = 'apply';
o.inputtitle = _('Save current settings');
o.onclick = function() {
ui.changes.apply(true);
return this.map.save(null, true);
}
s = m.section(form.TypedSection, null, _('Upload background (available space: %1024.2mB)')
.format(data[1].root.avail * 1024),
_('You can upload files such as gif/jpg/mp4/png/webm/webp files, to change the login page background.'));
s.addremove = false;
s.anonymous = true;
o = s.option(form.Button, '_upload_bg', _('Upload background'),
_('Files will be uploaded to <code>%s</code>.').format(bg_path));
o.inputstyle = 'action';
o.inputtitle = _('Upload...');
o.onclick = function(ev, section_id) {
var file = '/tmp/argon_background.tmp';
return ui.uploadFile(file, ev.target).then(function(res) {
return L.resolveDefault(callRenameArgon(res.name), {}).then(function(ret) {
if (ret.result === 0)
return location.reload();
else {
ui.addNotification(null, E('p', _('Failed to upload file: %s.').format(res.name)));
return L.resolveDefault(fs.remove(file), {});
}
});
})
.catch(function(e) { ui.addNotification(null, E('p', e.message)); });
};
o.modalonly = true;
s = m.section(form.TableSection);
s.render = function() {
var tbl = E('table', { 'class': 'table cbi-section-table' },
E('tr', { 'class': 'tr table-titles' }, [
E('th', { 'class': 'th' }, [ _('Filename') ]),
E('th', { 'class': 'th' }, [ _('Modified date') ]),
E('th', { 'class': 'th' }, [ _('Size') ]),
E('th', { 'class': 'th' }, [ _('Action') ])
])
);
cbi_update_table(tbl, data[2].map(L.bind(function(file) {
return [
file.name,
new Date(file.mtime * 1000).toLocaleString(),
String.format('%1024.2mB', file.size),
E('button', {
'class': 'btn cbi-button cbi-button-remove',
'click': ui.createHandlerFn(this, function() {
return L.resolveDefault(callRemoveArgon(file.name), {})
.then(function() { return location.reload(); });
})
}, [ _('Delete') ])
];
}, this)), E('em', _('No files found.')));
return E('div', { 'class': 'cbi-map', 'id': 'cbi-filelist' }, [
E('h3', _('Background file list')),
tbl
]);
};
return m.render();
},
handleSaveApply: null,
handleSave: null,
handleReset: null
});

View File

@ -1,10 +0,0 @@
module("luci.controller.argon-config", package.seeall)
function index()
if not nixio.fs.access('/www/luci-static/argon/css/cascade.css') then
return
end
local page = entry({"admin", "system", "argon-config"}, form("argon-config"), _("Argon Config"), 90)
page.acl_depends = { "luci-app-argon-config" }
end

View File

@ -1,217 +0,0 @@
local nxfs = require 'nixio.fs'
local wa = require 'luci.tools.webadmin'
local opkg = require 'luci.model.ipkg'
local sys = require 'luci.sys'
local http = require 'luci.http'
local nutil = require 'nixio.util'
local name = 'argon'
local uci = require 'luci.model.uci'.cursor()
local fstat = nxfs.statvfs(opkg.overlay_root())
local space_total = fstat and fstat.blocks or 0
local space_free = fstat and fstat.bfree or 0
local space_used = space_total - space_free
local free_byte = space_free * fstat.frsize
local primary, dark_primary, blur_radius, blur_radius_dark, blur_opacity, mode
if nxfs.access('/etc/config/argon') then
primary = uci:get_first('argon', 'global', 'primary')
dark_primary = uci:get_first('argon', 'global', 'dark_primary')
blur_radius = uci:get_first('argon', 'global', 'blur')
blur_radius_dark = uci:get_first('argon', 'global', 'blur_dark')
blur_opacity = uci:get_first('argon', 'global', 'transparency')
blur_opacity_dark = uci:get_first('argon', 'global', 'transparency_dark')
mode = uci:get_first('argon', 'global', 'mode')
bing_background = uci:get_first('argon', 'global', 'bing_background')
end
function glob(...)
local iter, code, msg = nxfs.glob(...)
if iter then
return nutil.consume(iter)
else
return nil, code, msg
end
end
local transparency_sets = {
0,
0.1,
0.2,
0.3,
0.4,
0.5,
0.6,
0.7,
0.8,
0.9,
1
}
-- [[ 模糊设置 ]]--
br = SimpleForm('config', translate('Argon Config'), translate('Here you can set the blur and transparency of the login page of argon theme, and manage the background pictures and videos.[Chrome is recommended]'))
br.reset = false
br.submit = false
s = br:section(SimpleSection)
o = s:option(ListValue, 'bing_background', translate('Wallpaper Source'))
o:value('0', translate('Built-in'))
o:value('1', translate('Bing Wallpapers'))
o.default = bing_background
o.rmempty = false
o = s:option(ListValue, 'mode', translate('Theme mode'))
o:value('normal', translate('Follow System'))
o:value('light', translate('Force Light'))
o:value('dark', translate('Force Dark'))
o.default = mode
o.rmempty = false
o.description = translate('You can choose Theme color mode here')
o = s:option(Value, 'primary', translate('[Light mode] Primary Color'), translate('A HEX Color ; ( Default: #5e72e4 )'))
o.default = primary
o.datatype = ufloat
o.rmempty = false
o = s:option(ListValue, 'transparency', translate('[Light mode] Transparency'), translate('0 transparent - 1 opaque ; ( Suggest: transparent: 0 or translucent preset: 0.5 )'))
for _, v in ipairs(transparency_sets) do
o:value(v)
end
o.default = blur_opacity
o.datatype = ufloat
o.rmempty = false
o = s:option(Value, 'blur', translate('[Light mode] Frosted Glass Radius'), translate('Larger value will more blurred ; ( Suggest: clear: 1 or blur preset: 10 )'))
o.default = blur_radius
o.datatype = ufloat
o.rmempty = false
o = s:option(Value, 'dark_primary', translate('[Dark mode] Primary Color'), translate('A HEX Color ; ( Default: #483d8b )'))
o.default = dark_primary
o.datatype = ufloat
o.rmempty = false
o = s:option(ListValue, 'transparency_dark', translate('[Dark mode] Transparency'), translate('0 transparent - 1 opaque ; ( Suggest: Black translucent preset: 0.5 )'))
for _, v in ipairs(transparency_sets) do
o:value(v)
end
o.default = blur_opacity_dark
o.datatype = ufloat
o.rmempty = false
o = s:option(Value, 'blur_dark', translate('[Dark mode] Frosted Glass Radius'), translate('Larger value will more blurred ; ( Suggest: clear: 1 or blur preset: 10 )'))
o.default = blur_radius_dark
o.datatype = ufloat
o.rmempty = false
o = s:option(Button, 'save', translate('Save Changes'))
o.inputstyle = 'reload'
function br.handle(self, state, data)
if (state == FORM_VALID and data.blur ~= nil and data.blur_dark ~= nil and data.transparency ~= nil and data.transparency_dark ~= nil and data.mode ~= nil) then
nxfs.writefile('/tmp/aaa', data)
for key, value in pairs(data) do
uci:set('argon','@global[0]',key,value)
end
uci:commit('argon')
end
return true
end
ful = SimpleForm('upload', translate('Upload (Free: ') .. wa.byte_format(free_byte) .. ')', translate("You can upload files such as jpg,png,gif,webp,mp4,webm files, To change the login page background."))
ful.reset = false
ful.submit = false
sul = ful:section(SimpleSection, '', translate("Upload file to '/www/luci-static/argon/background/'"))
fu = sul:option(FileUpload, '')
fu.template = 'argon-config/other_upload'
um = sul:option(DummyValue, '', nil)
um.template = 'argon-config/other_dvalue'
local dir, fd
dir = '/www/luci-static/argon/background/'
nxfs.mkdir(dir)
http.setfilehandler(
function(meta, chunk, eof)
if not fd then
if not meta then
return
end
if meta and chunk then
fd = nixio.open(dir .. meta.file, 'w')
end
if not fd then
um.value = translate('Create upload file error.')
return
end
end
if chunk and fd then
fd:write(chunk)
end
if eof and fd then
fd:close()
fd = nil
um.value = translate('File saved to') .. ' "/www/luci-static/argon/background/' .. meta.file .. '"'
end
end
)
if http.formvalue('upload') then
local f = http.formvalue('ulfile')
if #f <= 0 then
um.value = translate('No specify upload file.')
end
end
local function getSizeStr(size)
local i = 0
local byteUnits = {' kB', ' MB', ' GB', ' TB'}
repeat
size = size / 1024
i = i + 1
until (size <= 1024)
return string.format('%.1f', size) .. byteUnits[i]
end
local inits, attr = {}
for i, f in ipairs(glob(dir .. '*')) do
attr = nxfs.stat(f)
if attr then
inits[i] = {}
inits[i].name = nxfs.basename(f)
inits[i].mtime = os.date('%Y-%m-%d %H:%M:%S', attr.mtime)
inits[i].modestr = attr.modestr
inits[i].size = getSizeStr(attr.size)
inits[i].remove = 0
inits[i].install = false
end
end
form = SimpleForm('filelist', translate('Background file list'), nil)
form.reset = false
form.submit = false
tb = form:section(Table, inits)
nm = tb:option(DummyValue, 'name', translate('File name'))
mt = tb:option(DummyValue, 'mtime', translate('Modify time'))
sz = tb:option(DummyValue, 'size', translate('Size'))
btnrm = tb:option(Button, 'remove', translate('Remove'))
btnrm.render = function(self, section, scope)
self.inputstyle = 'remove'
Button.render(self, section, scope)
end
btnrm.write = function(self, section)
local v = nxfs.unlink(dir .. nxfs.basename(inits[section].name))
if v then
table.remove(inits, section)
end
return v
end
return br, ful, form

View File

@ -1,7 +0,0 @@
<%+cbi/valueheader%>
<% if self:cfgvalue(section) ~= false then %>
<input class="cbi-button cbi-input-<%=self.inputstyle or "button" %>" style="display: <%= display %>" type="submit"<%= attr("name", cbid) .. attr("id", cbid) .. attr("value", self.inputtitle or self.title)%> />
<% else %>
-
<% end %>
<%+cbi/valuefooter%>

View File

@ -1,8 +0,0 @@
<%+cbi/valueheader%>
<span style="color: red">
<%
local val = self:cfgvalue(section) or self.default or ""
write(pcdata(val))
%>
</span>
<%+cbi/valuefooter%>

View File

@ -1,5 +0,0 @@
<%+cbi/valueheader%>
<label class="cbi-value" style="display:inline-block; width: 130px" for="ulfile"><%:Choose local file:%></label>
<input class="cbi-input-file" style="width: 400px" type="file" id="ulfile" name="ulfile" accept="image/png, image/jpeg, image/gif, image/webp, video/mp4, video/webm"/>
<input type="submit" class="btn cbi-button cbi-input-apply" name="upload" value="<%:Upload%>" />
<%+cbi/valuefooter%>

View File

@ -12,168 +12,274 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 3.0.1\n"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:97
msgid "0 transparent - 1 opaque ; ( Suggest: Black translucent preset: 0.5 )"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:102
msgid "0 transparent - 1 opaque (suggest: black translucent preset: 0.5)."
msgstr ""
"0 transparente - 1 opaco; (Sugerencia: negro translúcido preestablecido: 0.5)"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:79
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:78
msgid ""
"0 transparent - 1 opaque ; ( Suggest: transparent: 0 or translucent preset: "
"0.5 )"
"0 transparent - 1 opaque (suggest: transparent: 0 or translucent preset: "
"0.5)."
msgstr ""
"0 transparente - 1 opaco; (Sugerencia: transparente: 0 o translúcido "
"preestablecido: 0.5)"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:92
msgid "A HEX Color ; ( Default: #483d8b )"
msgstr "Un color HEX; (Predeterminado: #483d8b)"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:91
msgid "A HEX Color (default: #483d8b)."
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:72
msgid "A HEX Color ; ( Default: #5e72e4 )"
msgstr "Un color HEX; (Predeterminado: #5e72e4)"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:67
msgid "A HEX color (default: #5e72e4)."
msgstr ""
#: applications/luci-app-argon-config/luasrc/controller/argon-config.lua:8
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:53
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:155
msgid "Action"
msgstr ""
#: applications/luci-app-argon-config/root/usr/share/luci/menu.d/luci-app-argon-config.json:3
msgid "Argon Config"
msgstr "Configuración de Argon"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:195
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:45
msgid "Argon theme configuration"
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:175
msgid "Background file list"
msgstr "Lista de archivos de fondo"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:60
msgid "Bing Wallpapers"
msgstr "Fondos de Bing"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:54
msgid "Bing"
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:59
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:53
msgid "Built-in"
msgstr "Integrado"
#: applications/luci-app-argon-config/luasrc/view/argon-config/other_upload.htm:2
msgid "Choose local file:"
msgstr "Elija un archivo local:"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:63
msgid "Dark mode"
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:149
msgid "Create upload file error."
msgstr "Crear archivo de error de carga."
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:170
msgid "Delete"
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:200
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:73
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:97
msgid "Expecting: %s"
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:139
msgid "Failed to upload file: %s."
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:152
msgid "Filename"
msgstr "Nombre del archivo"
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:159
msgid "File saved to"
msgstr "Archivo guardado en"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:129
msgid "Files will be uploaded to <code>%s</code>."
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:65
msgid "Follow System"
msgstr "Seguir el sistema"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:67
msgid "Force Dark"
msgstr "Forzar oscuro"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:66
msgid "Force Light"
msgstr "Forzar claro"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:61
msgid "Follow system"
msgstr ""
#: applications/luci-app-argon-config/root/usr/share/rpcd/acl.d/luci-app-argon-config.json:3
msgid "Grant UCI access for luci-app-argon-config"
msgstr "Otorgar acceso UCI para luci-app-argon-config"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:53
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:46
msgid ""
"Here you can set the blur and transparency of the login page of argon theme, "
"and manage the background pictures and videos.[Chrome is recommended]"
"and manage the background pictures and videos. Chrome is recommended."
msgstr ""
"Aquí puede configurar el desenfoque y la transparencia de la página de "
"inicio de sesión del tema argon y administrar las imágenes de fondo y los "
"videos. [Se recomienda Chrome]"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:87
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:105
msgid ""
"Larger value will more blurred ; ( Suggest: clear: 1 or blur preset: 10 )"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:85
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:109
msgid "Larger value will more blurred (suggest: clear: 1 or blur preset: 10)."
msgstr ""
"El valor más grande se verá más borroso; (Sugerencia: claro: 1 o desenfoque "
"predeterminado: 10)"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:201
msgid "Modify time"
msgstr "Modificar la hora"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:62
msgid "Light mode"
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:167
msgid "No specify upload file."
msgstr "No especificar archivo de carga."
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:153
msgid "Modified date"
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:203
msgid "Remove"
msgstr "Eliminar"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:172
msgid "No files found."
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:110
msgid "Save Changes"
msgstr "Guardar cambios"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:116
msgid "Save current settings"
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:202
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:114
msgid "Save settings"
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:154
msgid "Size"
msgstr "Tamaño"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:64
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:48
msgid "Theme configuration"
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:60
msgid "Theme mode"
msgstr "Modo del tema"
#: applications/luci-app-argon-config/luasrc/view/argon-config/other_upload.htm:4
msgid "Upload"
msgstr "Cargar"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:124
msgid "Upload (Free:"
msgstr "Cargar (Libre:"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:128
msgid "Upload file to '/www/luci-static/argon/background/'"
msgstr "Subir archivo a '/www/luci-static/argon/background/'"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:58
msgid "Wallpaper Source"
msgstr "Fuente del fondo de pantalla"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:70
msgid "You can choose Theme color mode here"
msgstr "Puede elegir el modo de color del tema aquí"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:124
msgid ""
"You can upload files such as jpg,png,gif,webp,mp4,webm files, To change the login page "
"background."
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:55
msgid "Unsplash"
msgstr ""
"Puede cargar archivos como jpg, png, gif, webp, mp4, webm, para cambiar el fondo de la "
"página de inicio de sesión."
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:105
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:128
msgid "Upload background"
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:122
msgid "Upload background (available space: %1024.2mB)"
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:131
msgid "Upload..."
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:56
msgid "Wallhaven"
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:52
msgid "Wallpaper source"
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:124
msgid ""
"You can upload files such as gif/jpg/mp4/png/webm/webp files, to change the "
"login page background."
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:108
msgid "[Dark mode] Frosted Glass Radius"
msgstr "[Modo oscuro] Radio de vidrio esmerilado"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:92
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:90
msgid "[Dark mode] Primary Color"
msgstr "[Modo oscuro] Color primario"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:97
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:101
msgid "[Dark mode] Transparency"
msgstr "[Modo oscuro] Transparencia"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:87
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:84
msgid "[Light mode] Frosted Glass Radius"
msgstr "[Modo claro] Radio de vidrio esmerilado"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:72
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:67
msgid "[Light mode] Primary Color"
msgstr "[Modo claro] Color primario"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:79
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:77
msgid "[Light mode] Transparency"
msgstr "[Modo claro] Transparencia"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:73
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:97
msgid "valid HEX color value"
msgstr ""
#~ msgid ""
#~ "0 transparent - 1 opaque ; ( Suggest: Black translucent preset: 0.5 )"
#~ msgstr ""
#~ "0 transparente - 1 opaco; (Sugerencia: negro translúcido preestablecido: "
#~ "0.5)"
#~ msgid ""
#~ "0 transparent - 1 opaque ; ( Suggest: transparent: 0 or translucent "
#~ "preset: 0.5 )"
#~ msgstr ""
#~ "0 transparente - 1 opaco; (Sugerencia: transparente: 0 o translúcido "
#~ "preestablecido: 0.5)"
#~ msgid "A HEX Color ; ( Default: #483d8b )"
#~ msgstr "Un color HEX; (Predeterminado: #483d8b)"
#~ msgid "A HEX Color ; ( Default: #5e72e4 )"
#~ msgstr "Un color HEX; (Predeterminado: #5e72e4)"
#~ msgid "Bing Wallpapers"
#~ msgstr "Fondos de Bing"
#~ msgid "Choose local file:"
#~ msgstr "Elija un archivo local:"
#~ msgid "Create upload file error."
#~ msgstr "Crear archivo de error de carga."
#~ msgid "File name"
#~ msgstr "Nombre del archivo"
#~ msgid "File saved to"
#~ msgstr "Archivo guardado en"
#~ msgid "Follow System"
#~ msgstr "Seguir el sistema"
#~ msgid "Force Dark"
#~ msgstr "Forzar oscuro"
#~ msgid "Force Light"
#~ msgstr "Forzar claro"
#~ msgid ""
#~ "Here you can set the blur and transparency of the login page of argon "
#~ "theme, and manage the background pictures and videos.[Chrome is "
#~ "recommended]"
#~ msgstr ""
#~ "Aquí puede configurar el desenfoque y la transparencia de la página de "
#~ "inicio de sesión del tema argon y administrar las imágenes de fondo y los "
#~ "videos. [Se recomienda Chrome]"
#~ msgid ""
#~ "Larger value will more blurred ; ( Suggest: clear: 1 or blur preset: 10 )"
#~ msgstr ""
#~ "El valor más grande se verá más borroso; (Sugerencia: claro: 1 o "
#~ "desenfoque predeterminado: 10)"
#~ msgid "Modify time"
#~ msgstr "Modificar la hora"
#~ msgid "No specify upload file."
#~ msgstr "No especificar archivo de carga."
#~ msgid "Remove"
#~ msgstr "Eliminar"
#~ msgid "Save Changes"
#~ msgstr "Guardar cambios"
#~ msgid "Upload"
#~ msgstr "Cargar"
#~ msgid "Upload (Free:"
#~ msgstr "Cargar (Libre:"
#~ msgid "Upload file to '/www/luci-static/argon/background/'"
#~ msgstr "Subir archivo a '/www/luci-static/argon/background/'"
#~ msgid "Wallpaper Source"
#~ msgstr "Fuente del fondo de pantalla"
#~ msgid "You can choose Theme color mode here"
#~ msgstr "Puede elegir el modo de color del tema aquí"
#~ msgid ""
#~ "You can upload files such as jpg,png,gif,webp,mp4,webm files, To change "
#~ "the login page background."
#~ msgstr ""
#~ "Puede cargar archivos como jpg, png, gif, webp, mp4, webm, para cambiar "
#~ "el fondo de la página de inicio de sesión."
#~ msgid "Luci Argon theme config"
#~ msgstr "Configuración del tema Luci Argon"

View File

@ -1,155 +1,179 @@
msgid ""
msgstr "Content-Type: text/plain; charset=UTF-8"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:97
msgid "0 transparent - 1 opaque ; ( Suggest: Black translucent preset: 0.5 )"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:102
msgid "0 transparent - 1 opaque (suggest: black translucent preset: 0.5)."
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:79
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:78
msgid ""
"0 transparent - 1 opaque ; ( Suggest: transparent: 0 or translucent preset: "
"0.5 )"
"0 transparent - 1 opaque (suggest: transparent: 0 or translucent preset: "
"0.5)."
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:92
msgid "A HEX Color ; ( Default: #483d8b )"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:91
msgid "A HEX Color (default: #483d8b)."
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:72
msgid "A HEX Color ; ( Default: #5e72e4 )"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:67
msgid "A HEX color (default: #5e72e4)."
msgstr ""
#: applications/luci-app-argon-config/luasrc/controller/argon-config.lua:8
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:53
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:155
msgid "Action"
msgstr ""
#: applications/luci-app-argon-config/root/usr/share/luci/menu.d/luci-app-argon-config.json:3
msgid "Argon Config"
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:195
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:45
msgid "Argon theme configuration"
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:175
msgid "Background file list"
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:60
msgid "Bing Wallpapers"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:54
msgid "Bing"
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:59
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:53
msgid "Built-in"
msgstr ""
#: applications/luci-app-argon-config/luasrc/view/argon-config/other_upload.htm:2
msgid "Choose local file:"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:63
msgid "Dark mode"
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:149
msgid "Create upload file error."
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:170
msgid "Delete"
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:200
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:73
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:97
msgid "Expecting: %s"
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:139
msgid "Failed to upload file: %s."
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:152
msgid "Filename"
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:159
msgid "File saved to"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:129
msgid "Files will be uploaded to <code>%s</code>."
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:65
msgid "Follow System"
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:67
msgid "Force Dark"
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:66
msgid "Force Light"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:61
msgid "Follow system"
msgstr ""
#: applications/luci-app-argon-config/root/usr/share/rpcd/acl.d/luci-app-argon-config.json:3
msgid "Grant UCI access for luci-app-argon-config"
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:53
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:46
msgid ""
"Here you can set the blur and transparency of the login page of argon theme, "
"and manage the background pictures and videos.[Chrome is recommended]"
"and manage the background pictures and videos. Chrome is recommended."
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:87
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:105
msgid ""
"Larger value will more blurred ; ( Suggest: clear: 1 or blur preset: 10 )"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:85
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:109
msgid "Larger value will more blurred (suggest: clear: 1 or blur preset: 10)."
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:201
msgid "Modify time"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:62
msgid "Light mode"
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:167
msgid "No specify upload file."
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:153
msgid "Modified date"
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:203
msgid "Remove"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:172
msgid "No files found."
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:110
msgid "Save Changes"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:116
msgid "Save current settings"
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:202
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:114
msgid "Save settings"
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:154
msgid "Size"
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:64
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:48
msgid "Theme configuration"
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:60
msgid "Theme mode"
msgstr ""
#: applications/luci-app-argon-config/luasrc/view/argon-config/other_upload.htm:4
msgid "Upload"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:55
msgid "Unsplash"
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:124
msgid "Upload (Free:"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:128
msgid "Upload background"
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:128
msgid "Upload file to '/www/luci-static/argon/background/'"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:122
msgid "Upload background (available space: %1024.2mB)"
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:58
msgid "Wallpaper Source"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:131
msgid "Upload..."
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:70
msgid "You can choose Theme color mode here"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:56
msgid "Wallhaven"
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:124
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:52
msgid "Wallpaper source"
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:124
msgid ""
"You can upload files such as jpg,png,gif,webp,mp4,webm files, To change the login page "
"background."
"You can upload files such as gif/jpg/mp4/png/webm/webp files, to change the "
"login page background."
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:105
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:108
msgid "[Dark mode] Frosted Glass Radius"
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:92
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:90
msgid "[Dark mode] Primary Color"
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:97
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:101
msgid "[Dark mode] Transparency"
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:87
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:84
msgid "[Light mode] Frosted Glass Radius"
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:72
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:67
msgid "[Light mode] Primary Color"
msgstr ""
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:79
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:77
msgid "[Light mode] Transparency"
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:73
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:97
msgid "valid HEX color value"
msgstr ""

View File

@ -0,0 +1 @@
zh_Hans

View File

@ -1,129 +0,0 @@
msgid ""
msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Project-Id-Version: \n"
"POT-Creation-Date: \n"
"PO-Revision-Date: \n"
"Last-Translator: dingpengyu <jerrykuku@gmail.com>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: zh_CN\n"
"X-Generator: Poedit 2.3.1\n"
msgid "Argon Config"
msgstr "Argon 主题设置"
msgid "Here you can set the blur and transparency of the login page of argon theme, and manage the background pictures and videos.[Chrome is recommended]"
msgstr "在这里你可以设置argon 主题的登录页面的模糊和透明度,并管理背景图片与视频。[建议使用 Chrome]"
msgid "Wallpaper Source"
msgstr "壁纸来源"
msgid "Built-in"
msgstr "内建"
msgid "Bing Wallpapers"
msgstr "Bing 壁纸"
msgid "Theme mode"
msgstr "主题模式"
msgid "Follow System"
msgstr "跟随系统"
msgid "Force Light"
msgstr "强制亮色"
msgid "Force Dark"
msgstr "强制暗色"
msgid "You can choose Theme color mode here"
msgstr "你可以选择喜欢的主题模式"
msgid "[Light mode] Primary Color"
msgstr "[亮色模式] 主色调"
msgid "[Dark mode] Primary Color"
msgstr "[暗色模式] 主色调"
msgid "A HEX Color ; ( Default: #5e72e4 )"
msgstr "十六进制颜色值 ( 预设为:#5e72e4 )"
msgid "A HEX Color ; ( Default: #483d8b )"
msgstr "十六进制颜色值 ( 预设为:#483d8b )"
msgid "[Light mode] Transparency"
msgstr "[亮色模式] 透明度"
msgid "[Dark mode] Transparency"
msgstr "[暗色模式] 透明度"
msgid "0 transparent - 1 opaque ; ( Suggest: transparent: 0 or translucent preset: 0.5 )"
msgstr "0最透明 - 1不透明 ; ( 建议: 透明 0 或 半透明预设 0.5 )"
msgid "0 transparent - 1 opaque ; ( Suggest: Black translucent preset: 0.5 )"
msgstr "0最透明 - 1不透明 ; ( 建议: 黑色半透明 0.5 )"
msgid "[Light mode] Frosted Glass Radius"
msgstr "[亮色模式] 毛玻璃模糊半径"
msgid "[Dark mode] Frosted Glass Radius"
msgstr "[暗色模式] 毛玻璃模糊半径"
msgid "Larger value will more blurred ; ( Suggest: clear: 1 or blur preset: 10 )"
msgstr "值越大越模糊; ( 建议: 清透 1 或 模糊预设 10 )"
msgid "You can upload files such as jpg,png,gif,webp,mp4,webm files, To change the login page background."
msgstr "你可以上传jpg、png、gif、webp或mp4、webm文件以创建自己喜欢的登录界面"
msgid "Save Changes"
msgstr "保存更改"
msgid "Choose local file:"
msgstr "选择本地文件:"
msgid "Couldn't open file:"
msgstr "无法打开文件:"
msgid "Create upload file error."
msgstr "创建上传文件失败。"
msgid "File name"
msgstr "文件名"
msgid "File saved to"
msgstr "文件保存到"
msgid "FileTransfer"
msgstr "文件传输"
msgid "Install"
msgstr "安装"
msgid "Attributes"
msgstr "属性"
msgid "Modify time"
msgstr "修改时间"
msgid "No specify upload file."
msgstr "未指定上传文件。"
msgid "Path on Route:"
msgstr "路由根目录:"
msgid "Remove"
msgstr "移除"
msgid "Size"
msgstr "大小"
msgid "Upload (Free:"
msgstr "上传 (剩余空间:"
msgid "Background file list"
msgstr "背景文件列表"
msgid "Upload file to '/www/luci-static/argon/background/'"
msgstr "文件将上传到'/www/luci-static/argon/background/'"

View File

@ -1,165 +0,0 @@
msgid ""
msgstr ""
"Project-Id-Version: \n"
"POT-Creation-Date: \n"
"PO-Revision-Date: \n"
"Last-Translator: Victor Tseng <palatis@gmail.com>\n"
"Language-Team: \n"
"Language: zh_TW\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 3.2.2\n"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:97
msgid "0 transparent - 1 opaque ; ( Suggest: Black translucent preset: 0.5 )"
msgstr "0 全透明 - 1 不透明(建議:黑色半透明 0.5"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:79
msgid ""
"0 transparent - 1 opaque ; ( Suggest: transparent: 0 or translucent preset: 0.5 )"
msgstr "0 全透明 - 1 不透明(建議:全透明 0或半透明 0.5"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:92
msgid "A HEX Color ; ( Default: #483d8b )"
msgstr "十六進制顏色(預設 #483d8b"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:72
msgid "A HEX Color ; ( Default: #5e72e4 )"
msgstr "十六進制顏色(預設 #5e72e4"
#: applications/luci-app-argon-config/luasrc/controller/argon-config.lua:8
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:53
msgid "Argon Config"
msgstr "Argon 設定"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:195
msgid "Background file list"
msgstr "背景檔案清單"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:60
msgid "Bing Wallpapers"
msgstr "必應桌布"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:59
msgid "Built-in"
msgstr "內建"
#: applications/luci-app-argon-config/luasrc/view/argon-config/other_upload.htm:2
msgid "Choose local file:"
msgstr "選擇本地檔案:"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:149
msgid "Create upload file error."
msgstr "建立上傳檔案錯誤。"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:200
msgid "File name"
msgstr "檔案名稱"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:159
msgid "File saved to"
msgstr "檔案已儲存至"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:65
msgid "Follow System"
msgstr "跟隨系統配色"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:67
msgid "Force Dark"
msgstr "強制深色"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:66
msgid "Force Light"
msgstr "強制淺色"
#: applications/luci-app-argon-config/root/usr/share/rpcd/acl.d/luci-app-argon-config.json:3
msgid "Grant UCI access for luci-app-argon-config"
msgstr "為 luci-app-argon-config 授予 UCI 權限"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:53
msgid ""
"Here you can set the blur and transparency of the login page of argon theme, and "
"manage the background pictures and videos.[Chrome is recommended]"
msgstr ""
"您可以在此設定登入畫面的模糊度、透明度、以及管理背景圖片與影片(推薦使用 "
"Chrome。"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:87
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:105
msgid "Larger value will more blurred ; ( Suggest: clear: 1 or blur preset: 10 )"
msgstr "數值越大越模糊(建議:清晰 1或模糊程度 10"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:201
msgid "Modify time"
msgstr "修改時間"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:167
msgid "No specify upload file."
msgstr "沒有選擇要上傳的檔案。"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:203
msgid "Remove"
msgstr "移除"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:110
msgid "Save Changes"
msgstr "保存變更"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:202
msgid "Size"
msgstr "容量"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:64
msgid "Theme mode"
msgstr "佈景主題模式"
#: applications/luci-app-argon-config/luasrc/view/argon-config/other_upload.htm:4
msgid "Upload"
msgstr "上傳"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:124
msgid "Upload (Free:"
msgstr "上傳(剩餘空間:"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:128
msgid "Upload file to '/www/luci-static/argon/background/'"
msgstr "上傳檔案至「/www/luci-static/argon/background」"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:58
msgid "Wallpaper Source"
msgstr "桌布來源"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:70
msgid "You can choose Theme color mode here"
msgstr "您可以在此選擇佈景主題的顏色模式"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:124
msgid ""
"You can upload files such as jpg,png,gif,mp4,webm files, To change the login page "
"background."
msgstr "您可以上傳諸如 jpg、png、gif、mp4、webm 等類型的檔案來更換登入畫面的背景。"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:105
msgid "[Dark mode] Frosted Glass Radius"
msgstr "《深色模式》模糊效果半徑"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:92
msgid "[Dark mode] Primary Color"
msgstr "《深色模式》主色彩"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:97
msgid "[Dark mode] Transparency"
msgstr "《深色模式》透明度"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:87
msgid "[Light mode] Frosted Glass Radius"
msgstr "《淺色模式》模糊效果半徑"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:72
msgid "[Light mode] Primary Color"
msgstr "《淺色模式》主色彩"
#: applications/luci-app-argon-config/luasrc/model/cbi/argon-config.lua:79
msgid "[Light mode] Transparency"
msgstr "《淺色模式》透明度"

View File

@ -1 +0,0 @@
zh-cn

View File

@ -0,0 +1,192 @@
msgid ""
msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Project-Id-Version: \n"
"POT-Creation-Date: \n"
"PO-Revision-Date: \n"
"Last-Translator: dingpengyu <jerrykuku@gmail.com>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Transfer-Encoding: 8bit\n"
"Language: zh_CN\n"
"X-Generator: Poedit 2.3.1\n"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:102
msgid "0 transparent - 1 opaque (suggest: black translucent preset: 0.5)."
msgstr "0 最透明 - 1 不透明(建议:黑色半透明 0.5"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:78
msgid ""
"0 transparent - 1 opaque (suggest: transparent: 0 or translucent preset: "
"0.5)."
msgstr "0 最透明 - 1 不透明(建议: 透明 0 或 半透明预设 0.5)。"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:91
msgid "A HEX Color (default: #483d8b)."
msgstr "十六进制颜色值(预设为:#483d8b。"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:67
msgid "A HEX color (default: #5e72e4)."
msgstr "十六进制颜色值(预设为:#5e72e4。"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:155
msgid "Action"
msgstr "操作"
#: applications/luci-app-argon-config/root/usr/share/luci/menu.d/luci-app-argon-config.json:3
msgid "Argon Config"
msgstr "Argon 主题设置"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:45
msgid "Argon theme configuration"
msgstr "Argon 主题设置"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:175
msgid "Background file list"
msgstr "背景文件列表"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:54
msgid "Bing"
msgstr "Bing"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:53
msgid "Built-in"
msgstr "内建"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:63
msgid "Dark mode"
msgstr "暗黑模式"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:170
msgid "Delete"
msgstr "删除"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:73
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:97
msgid "Expecting: %s"
msgstr "请输入:%s"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:139
msgid "Failed to upload file: %s."
msgstr "上传文件失败:%s。"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:152
msgid "Filename"
msgstr "文件名"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:129
msgid "Files will be uploaded to <code>%s</code>."
msgstr "文件将被上传至<code>%s</code>。"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:61
msgid "Follow system"
msgstr "跟随系统"
#: applications/luci-app-argon-config/root/usr/share/rpcd/acl.d/luci-app-argon-config.json:3
msgid "Grant UCI access for luci-app-argon-config"
msgstr "授予 luci-app-argon-config 访问 UCI 配置的权限"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:46
msgid ""
"Here you can set the blur and transparency of the login page of argon theme, "
"and manage the background pictures and videos. Chrome is recommended."
msgstr ""
"在这里你可以设置argon 主题的登录页面的模糊和透明度,并管理背景图片与视频。推"
"荐使用 Chrome。"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:85
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:109
msgid "Larger value will more blurred (suggest: clear: 1 or blur preset: 10)."
msgstr "值越大越模糊(建议:清透 1 或 模糊预设 10"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:62
msgid "Light mode"
msgstr "亮色模式"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:153
msgid "Modified date"
msgstr "修改时间"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:172
msgid "No files found."
msgstr "没有找到文件。"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:116
msgid "Save current settings"
msgstr "保存当前设置"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:114
msgid "Save settings"
msgstr "保存设置"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:154
msgid "Size"
msgstr "大小"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:48
msgid "Theme configuration"
msgstr "主题配置"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:60
msgid "Theme mode"
msgstr "主题模式"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:55
msgid "Unsplash"
msgstr "Unsplash"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:128
msgid "Upload background"
msgstr "上传背景"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:122
msgid "Upload background (available space: %1024.2mB)"
msgstr "上传背景(可用空间:%1024.2mB"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:131
msgid "Upload..."
msgstr "上传..."
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:56
msgid "Wallhaven"
msgstr "Wallhaven"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:52
msgid "Wallpaper source"
msgstr "壁纸来源"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:124
msgid ""
"You can upload files such as gif/jpg/mp4/png/webm/webp files, to change the "
"login page background."
msgstr ""
"你可以上传 gif/jpg/mp4/png/webm/webp 等格式的文件,以创建自己喜欢的登录界面。"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:108
msgid "[Dark mode] Frosted Glass Radius"
msgstr "[暗色模式] 毛玻璃模糊半径"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:90
msgid "[Dark mode] Primary Color"
msgstr "[暗色模式] 主色调"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:101
msgid "[Dark mode] Transparency"
msgstr "[暗色模式] 透明度"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:84
msgid "[Light mode] Frosted Glass Radius"
msgstr "[亮色模式] 毛玻璃模糊半径"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:67
msgid "[Light mode] Primary Color"
msgstr "[亮色模式] 主色调"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:77
msgid "[Light mode] Transparency"
msgstr "[亮色模式] 透明度"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:73
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:97
msgid "valid HEX color value"
msgstr "有效十六进制颜色值"

View File

@ -1 +0,0 @@
zh-tw

View File

@ -0,0 +1,273 @@
msgid ""
msgstr ""
"Project-Id-Version: \n"
"POT-Creation-Date: \n"
"PO-Revision-Date: \n"
"Last-Translator: Victor Tseng <palatis@gmail.com>\n"
"Language-Team: \n"
"Language: zh_TW\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 3.2.2\n"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:102
msgid "0 transparent - 1 opaque (suggest: black translucent preset: 0.5)."
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:78
msgid ""
"0 transparent - 1 opaque (suggest: transparent: 0 or translucent preset: "
"0.5)."
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:91
msgid "A HEX Color (default: #483d8b)."
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:67
msgid "A HEX color (default: #5e72e4)."
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:155
msgid "Action"
msgstr ""
#: applications/luci-app-argon-config/root/usr/share/luci/menu.d/luci-app-argon-config.json:3
msgid "Argon Config"
msgstr "Argon 設定"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:45
msgid "Argon theme configuration"
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:175
msgid "Background file list"
msgstr "背景檔案清單"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:54
msgid "Bing"
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:53
msgid "Built-in"
msgstr "內建"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:63
msgid "Dark mode"
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:170
msgid "Delete"
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:73
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:97
msgid "Expecting: %s"
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:139
msgid "Failed to upload file: %s."
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:152
msgid "Filename"
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:129
msgid "Files will be uploaded to <code>%s</code>."
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:61
msgid "Follow system"
msgstr ""
#: applications/luci-app-argon-config/root/usr/share/rpcd/acl.d/luci-app-argon-config.json:3
msgid "Grant UCI access for luci-app-argon-config"
msgstr "為 luci-app-argon-config 授予 UCI 權限"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:46
msgid ""
"Here you can set the blur and transparency of the login page of argon theme, "
"and manage the background pictures and videos. Chrome is recommended."
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:85
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:109
msgid "Larger value will more blurred (suggest: clear: 1 or blur preset: 10)."
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:62
msgid "Light mode"
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:153
msgid "Modified date"
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:172
msgid "No files found."
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:116
msgid "Save current settings"
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:114
msgid "Save settings"
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:154
msgid "Size"
msgstr "容量"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:48
msgid "Theme configuration"
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:60
msgid "Theme mode"
msgstr "佈景主題模式"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:55
msgid "Unsplash"
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:128
msgid "Upload background"
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:122
msgid "Upload background (available space: %1024.2mB)"
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:131
msgid "Upload..."
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:56
msgid "Wallhaven"
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:52
msgid "Wallpaper source"
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:124
msgid ""
"You can upload files such as gif/jpg/mp4/png/webm/webp files, to change the "
"login page background."
msgstr ""
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:108
msgid "[Dark mode] Frosted Glass Radius"
msgstr "《深色模式》模糊效果半徑"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:90
msgid "[Dark mode] Primary Color"
msgstr "《深色模式》主色彩"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:101
msgid "[Dark mode] Transparency"
msgstr "《深色模式》透明度"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:84
msgid "[Light mode] Frosted Glass Radius"
msgstr "《淺色模式》模糊效果半徑"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:67
msgid "[Light mode] Primary Color"
msgstr "《淺色模式》主色彩"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:77
msgid "[Light mode] Transparency"
msgstr "《淺色模式》透明度"
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:73
#: applications/luci-app-argon-config/htdocs/luci-static/resources/view/argon-config.js:97
msgid "valid HEX color value"
msgstr ""
#~ msgid ""
#~ "0 transparent - 1 opaque ; ( Suggest: Black translucent preset: 0.5 )"
#~ msgstr "0 全透明 - 1 不透明(建議:黑色半透明 0.5"
#~ msgid ""
#~ "0 transparent - 1 opaque ; ( Suggest: transparent: 0 or translucent "
#~ "preset: 0.5 )"
#~ msgstr "0 全透明 - 1 不透明(建議:全透明 0或半透明 0.5"
#~ msgid "A HEX Color ; ( Default: #483d8b )"
#~ msgstr "十六進制顏色(預設 #483d8b"
#~ msgid "A HEX Color ; ( Default: #5e72e4 )"
#~ msgstr "十六進制顏色(預設 #5e72e4"
#~ msgid "Bing Wallpapers"
#~ msgstr "必應桌布"
#~ msgid "Choose local file:"
#~ msgstr "選擇本地檔案:"
#~ msgid "Create upload file error."
#~ msgstr "建立上傳檔案錯誤。"
#~ msgid "File name"
#~ msgstr "檔案名稱"
#~ msgid "File saved to"
#~ msgstr "檔案已儲存至"
#~ msgid "Follow System"
#~ msgstr "跟隨系統配色"
#~ msgid "Force Dark"
#~ msgstr "強制深色"
#~ msgid "Force Light"
#~ msgstr "強制淺色"
#~ msgid ""
#~ "Here you can set the blur and transparency of the login page of argon "
#~ "theme, and manage the background pictures and videos.[Chrome is "
#~ "recommended]"
#~ msgstr ""
#~ "您可以在此設定登入畫面的模糊度、透明度、以及管理背景圖片與影片(推薦使用 "
#~ "Chrome。"
#~ msgid ""
#~ "Larger value will more blurred ; ( Suggest: clear: 1 or blur preset: 10 )"
#~ msgstr "數值越大越模糊(建議:清晰 1或模糊程度 10"
#~ msgid "Modify time"
#~ msgstr "修改時間"
#~ msgid "No specify upload file."
#~ msgstr "沒有選擇要上傳的檔案。"
#~ msgid "Remove"
#~ msgstr "移除"
#~ msgid "Save Changes"
#~ msgstr "保存變更"
#~ msgid "Upload"
#~ msgstr "上傳"
#~ msgid "Upload (Free:"
#~ msgstr "上傳(剩餘空間:"
#~ msgid "Upload file to '/www/luci-static/argon/background/'"
#~ msgstr "上傳檔案至「/www/luci-static/argon/background」"
#~ msgid "Wallpaper Source"
#~ msgstr "桌布來源"
#~ msgid "You can choose Theme color mode here"
#~ msgstr "您可以在此選擇佈景主題的顏色模式"
#~ msgid ""
#~ "You can upload files such as jpg,png,gif,mp4,webm files, To change the "
#~ "login page background."
#~ msgstr ""
#~ "您可以上傳諸如 jpg、png、gif、mp4、webm 等類型的檔案來更換登入畫面的背景。"

View File

@ -1,9 +1,10 @@
config global
option primary '#5e72e4'
option dark_primary '#483d8b'
option blur '10'
option blur_dark '10'
option transparency '0.5'
option transparency_dark '0.5'
option blur '0'
option blur_dark '0'
option transparency '0.3'
option transparency_dark '0.3'
option mode 'normal'
option bing_background '0'
option online_wallpaper 'bing'

View File

@ -1,6 +1,14 @@
#!/bin/sh
sed -i 's/cbi.submit\"] = true/cbi.submit\"] = \"1\"/g' /usr/lib/lua/luci/dispatcher.lua
bing_background="$(uci -q get "argon.@global[0].bing_background")"
[ -n "$bing_background" ] || exit 0
if [ "$bing_background" = "1" ]; then
uci -q set "argon.@global[0].online_wallpaper"="bing"
else
uci -q set "argon.@global[0].online_wallpaper"="none"
fi
uci -q delete "argon.@global[0].bing_background"
uci -q commit "argon"
rm -f /tmp/luci-indexcache
exit 0

View File

@ -0,0 +1,56 @@
#!/bin/sh
. /lib/functions.sh
. /usr/share/libubox/jshn.sh
readonly bg_path="/www/luci-static/argon/background"
readonly tmp_path="/tmp/argon_background.tmp"
case "$1" in
"list")
json_init
json_add_object "remove"
json_add_string "filename" "filename"
json_close_object
json_add_object "rename"
json_add_string "newname" "filename"
json_close_object
json_dump
json_cleanup
;;
"call")
case "$2" in
"remove")
read -r input
json_load "$input"
json_get_var filename "filename"
json_cleanup
if dirname "$filename" | grep -q ".."; then
echo '{ "result": 255 }'
exit 255
fi
rm -f "$bg_path/$filename"
echo '{ "result": 0 }'
;;
"rename")
read -r input
json_load "$input"
json_get_var newname "newname"
json_cleanup
if dirname "$newname" | grep -q ".."; then
echo '{ "result": 255 }'
exit 255
fi
if mv "$tmp_path" "$bg_path/$newname" 2>"/dev/null"; then
echo '{ "result": 0 }'
else
echo '{ "result": 1 }'
fi
;;
esac
;;
esac

View File

@ -0,0 +1,14 @@
{
"admin/system/argon-config": {
"title": "Argon Config",
"order": 90,
"action": {
"type": "view",
"path": "argon-config"
},
"depends": {
"acl": [ "luci-app-argon-config" ],
"uci": { "argon": true }
}
}
}

View File

@ -2,9 +2,19 @@
"luci-app-argon-config": {
"description": "Grant UCI access for luci-app-argon-config",
"read": {
"file": {
"/www/luci-static/argon/background/*": [ "list" ]
},
"ubus": {
"luci.argon": [ "remove", "rename" ],
"system": [ "info" ]
},
"uci": [ "argon" ]
},
"write": {
"file": {
"/tmp/argon_background.tmp": [ "write" ]
},
"uci": [ "argon" ]
}
}

View File

@ -5,7 +5,7 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=luci-app-passwall2
PKG_VERSION:=1.16-3
PKG_VERSION:=1.16-5
PKG_RELEASE:=
PKG_CONFIG_DEPENDS:= \

View File

@ -331,6 +331,9 @@ msgstr "黑洞"
msgid "Default Preproxy"
msgstr "默认前置代理"
msgid "There are no available nodes, please add or subscribe nodes first."
msgstr "没有可用节点,请先添加或订阅节点。"
msgid "No shunt rules? Click me to go to add."
msgstr "没有分流规则?点我前往去添加。"

View File

@ -64,23 +64,3 @@ restart() {
$APP_FILE start
unset_lock
}
disable() {
rm -f "$IPKG_INSTROOT"/etc/rc.d/S??zzz_${CONFIG}
rm -f "$IPKG_INSTROOT"/etc/rc.d/K??zzz_${CONFIG}
}
enable() {
err=1
[ "$START" ] && \
ln -sf "../init.d/${CONFIG}" "$IPKG_INSTROOT/etc/rc.d/S${START}zzz_${CONFIG}" && \
err=0
[ "$STOP" ] && \
ln -sf "../init.d/${CONFIG}" "$IPKG_INSTROOT/etc/rc.d/K${STOP}zzz_${CONFIG}" && \
err=0
return $err
}
enabled() {
[ -x "$IPKG_INSTROOT/etc/rc.d/S${START}zzz_${CONFIG}" ]
}

View File

@ -811,7 +811,7 @@ del_firewall_rule() {
ip -6 rule del fwmark 1 table 100 2>/dev/null
ip -6 route del local ::/0 dev lo table 100 2>/dev/null
echolog "删除相关防火墙规则完成。"
$DIR/app.sh echolog "删除相关防火墙规则完成。"
}
flush_ipset() {

View File

@ -149,11 +149,35 @@ get_action_chain_name() {
}
gen_lanlist() {
cat $RULES_PATH/lanlist_ipv4 | tr -s '\n' | grep -v "^#"
cat <<-EOF
0.0.0.0/8
10.0.0.0/8
100.64.0.0/10
127.0.0.0/8
169.254.0.0/16
172.16.0.0/12
192.168.0.0/16
224.0.0.0/4
240.0.0.0/4
EOF
}
gen_lanlist_6() {
cat $RULES_PATH/lanlist_ipv6 | tr -s '\n' | grep -v "^#"
cat <<-EOF
::/128
::1/128
::ffff:0:0/96
::ffff:0:0:0/96
64:ff9b::/96
100::/64
2001::/32
2001:20::/28
2001:db8::/32
2002::/16
fc00::/7
fe80::/10
ff00::/8
EOF
}
get_wan_ip() {
@ -437,7 +461,7 @@ filter_node() {
for _ipt in 4 6; do
[ "$_ipt" == "4" ] && _ip_type=ip4 && _set_name=$NFTSET_VPSLIST
[ "$_ipt" == "6" ] && _ip_type=ip6 && _set_name=$NFTSET_VPSLIST6
nft "list chain inet fw4 $nft_output_chain" | grep -q "${address}:${port}"
nft "list chain inet fw4 $nft_output_chain" 2>/dev/null | grep -q "${address}:${port}"
if [ $? -ne 0 ]; then
unset dst_rule
local dst_rule="jump PSW2_RULE"
@ -809,7 +833,7 @@ add_firewall_rule() {
del_firewall_rule() {
for nft in "input" "forward" "dstnat" "srcnat" "nat_output" "mangle_prerouting" "mangle_output"; do
local handles=$(nft -a list chain inet fw4 ${nft} | grep -E "PSW2" | awk -F '# handle ' '{print$2}')
local handles=$(nft -a list chain inet fw4 ${nft} 2>/dev/null | grep -E "PSW2" | awk -F '# handle ' '{print$2}')
for handle in $handles; do
nft delete rule inet fw4 ${nft} handle ${handle} 2>/dev/null
done
@ -836,7 +860,7 @@ del_firewall_rule() {
destroy_nftset $NFTSET_VPSLIST6
destroy_nftset $NFTSET_WHITELIST6
echolog "删除相关防火墙规则完成。"
$DIR/app.sh echolog "删除相关防火墙规则完成。"
}
flush_nftset() {

View File

@ -7,6 +7,13 @@
- Fixed the issue where some colors were out of control in dark mode.
- Fixed the problem where the local startup script textarea could not be scrolled in the startup item.
- Fixed the problem where the Passwall node list button was misaligned.
- Fixed the text overflow problem in dynlist
- Support wallpaper from Unsplashargon
- Fix menu style mis-match on macOS+Chrome
- Fixed the issue of the login page icon becoming larger
- Support wallpaper from wallhaven
> open footer links in new tab
- Remake theme icon
## v2.3 [ 2023.04.03 ]

View File

@ -7,6 +7,13 @@
- 修复了暗色模式下个别颜色不受控制的问题
- 修复了启动项--本地启动脚本文本框不能滑动的问题
- 修复了Passwall节点列表按钮错位的问题
- 修复在dynlist中的文本溢出问题
- 登录页面 支持自来 Unsplash 的在线壁纸
- 修复在macOS的Chrome中,菜单的style异常
- 修复在登录页面中,主题图标变大的问题
- 登录页面 支持自来 wallhaven 的在线壁纸
> 打开页脚链接时使用新标签页
- 重制主题图标
## v2.3 [ 2023.04.03 ]

View File

@ -9,9 +9,9 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=openssl
PKG_BASE:=1.1.1
PKG_BUGFIX:=t
PKG_BUGFIX:=u
PKG_VERSION:=$(PKG_BASE)$(PKG_BUGFIX)
PKG_RELEASE:=3
PKG_RELEASE:=1
PKG_USE_MIPS16:=0
PKG_BUILD_PARALLEL:=1
@ -25,7 +25,7 @@ PKG_SOURCE_URL:= \
ftp://ftp.pca.dfn.de/pub/tools/net/openssl/source/ \
ftp://ftp.pca.dfn.de/pub/tools/net/openssl/source/old/$(PKG_BASE)/
PKG_HASH:=8dee9b24bdb1dcbf0c3d1e9b02fb8f6bf22165e807f45adeb7c9677536859d3b
PKG_HASH:=e2f8d84b523eecd06c7be7626830370300fbcc15386bf5142d72758f6963ebc6
PKG_LICENSE:=OpenSSL
PKG_LICENSE_FILES:=LICENSE

View File

@ -1,214 +0,0 @@
From 879f7080d7e141f415c79eaa3a8ac4a3dad0348b Mon Sep 17 00:00:00 2001
From: Pauli <pauli@openssl.org>
Date: Wed, 8 Mar 2023 15:28:20 +1100
Subject: [PATCH] x509: excessive resource use verifying policy constraints
A security vulnerability has been identified in all supported versions
of OpenSSL related to the verification of X.509 certificate chains
that include policy constraints. Attackers may be able to exploit this
vulnerability by creating a malicious certificate chain that triggers
exponential use of computational resources, leading to a denial-of-service
(DoS) attack on affected systems.
Fixes CVE-2023-0464
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Shane Lontis <shane.lontis@oracle.com>
(Merged from https://github.com/openssl/openssl/pull/20569)
diff --git a/crypto/x509v3/pcy_local.h b/crypto/x509v3/pcy_local.h
index 5daf78de45..344aa06765 100644
--- a/crypto/x509v3/pcy_local.h
+++ b/crypto/x509v3/pcy_local.h
@@ -111,6 +111,11 @@ struct X509_POLICY_LEVEL_st {
};
struct X509_POLICY_TREE_st {
+ /* The number of nodes in the tree */
+ size_t node_count;
+ /* The maximum number of nodes in the tree */
+ size_t node_maximum;
+
/* This is the tree 'level' data */
X509_POLICY_LEVEL *levels;
int nlevel;
@@ -159,7 +164,8 @@ X509_POLICY_NODE *tree_find_sk(STACK_OF(X509_POLICY_NODE) *sk,
X509_POLICY_NODE *level_add_node(X509_POLICY_LEVEL *level,
X509_POLICY_DATA *data,
X509_POLICY_NODE *parent,
- X509_POLICY_TREE *tree);
+ X509_POLICY_TREE *tree,
+ int extra_data);
void policy_node_free(X509_POLICY_NODE *node);
int policy_node_match(const X509_POLICY_LEVEL *lvl,
const X509_POLICY_NODE *node, const ASN1_OBJECT *oid);
diff --git a/crypto/x509v3/pcy_node.c b/crypto/x509v3/pcy_node.c
index e2d7b15322..d574fb9d66 100644
--- a/crypto/x509v3/pcy_node.c
+++ b/crypto/x509v3/pcy_node.c
@@ -59,10 +59,15 @@ X509_POLICY_NODE *level_find_node(const X509_POLICY_LEVEL *level,
X509_POLICY_NODE *level_add_node(X509_POLICY_LEVEL *level,
X509_POLICY_DATA *data,
X509_POLICY_NODE *parent,
- X509_POLICY_TREE *tree)
+ X509_POLICY_TREE *tree,
+ int extra_data)
{
X509_POLICY_NODE *node;
+ /* Verify that the tree isn't too large. This mitigates CVE-2023-0464 */
+ if (tree->node_maximum > 0 && tree->node_count >= tree->node_maximum)
+ return NULL;
+
node = OPENSSL_zalloc(sizeof(*node));
if (node == NULL) {
X509V3err(X509V3_F_LEVEL_ADD_NODE, ERR_R_MALLOC_FAILURE);
@@ -70,7 +75,7 @@ X509_POLICY_NODE *level_add_node(X509_POLICY_LEVEL *level,
}
node->data = data;
node->parent = parent;
- if (level) {
+ if (level != NULL) {
if (OBJ_obj2nid(data->valid_policy) == NID_any_policy) {
if (level->anyPolicy)
goto node_error;
@@ -90,7 +95,7 @@ X509_POLICY_NODE *level_add_node(X509_POLICY_LEVEL *level,
}
}
- if (tree) {
+ if (extra_data) {
if (tree->extra_data == NULL)
tree->extra_data = sk_X509_POLICY_DATA_new_null();
if (tree->extra_data == NULL){
@@ -103,6 +108,7 @@ X509_POLICY_NODE *level_add_node(X509_POLICY_LEVEL *level,
}
}
+ tree->node_count++;
if (parent)
parent->nchild++;
diff --git a/crypto/x509v3/pcy_tree.c b/crypto/x509v3/pcy_tree.c
index 6e8322cbc5..6c7fd35405 100644
--- a/crypto/x509v3/pcy_tree.c
+++ b/crypto/x509v3/pcy_tree.c
@@ -13,6 +13,18 @@
#include "pcy_local.h"
+/*
+ * If the maximum number of nodes in the policy tree isn't defined, set it to
+ * a generous default of 1000 nodes.
+ *
+ * Defining this to be zero means unlimited policy tree growth which opens the
+ * door on CVE-2023-0464.
+ */
+
+#ifndef OPENSSL_POLICY_TREE_NODES_MAX
+# define OPENSSL_POLICY_TREE_NODES_MAX 1000
+#endif
+
/*
* Enable this to print out the complete policy tree at various point during
* evaluation.
@@ -168,6 +180,9 @@ static int tree_init(X509_POLICY_TREE **ptree, STACK_OF(X509) *certs,
return X509_PCY_TREE_INTERNAL;
}
+ /* Limit the growth of the tree to mitigate CVE-2023-0464 */
+ tree->node_maximum = OPENSSL_POLICY_TREE_NODES_MAX;
+
/*
* http://tools.ietf.org/html/rfc5280#section-6.1.2, figure 3.
*
@@ -184,7 +199,7 @@ static int tree_init(X509_POLICY_TREE **ptree, STACK_OF(X509) *certs,
level = tree->levels;
if ((data = policy_data_new(NULL, OBJ_nid2obj(NID_any_policy), 0)) == NULL)
goto bad_tree;
- if (level_add_node(level, data, NULL, tree) == NULL) {
+ if (level_add_node(level, data, NULL, tree, 1) == NULL) {
policy_data_free(data);
goto bad_tree;
}
@@ -243,7 +258,8 @@ static int tree_init(X509_POLICY_TREE **ptree, STACK_OF(X509) *certs,
* Return value: 1 on success, 0 otherwise
*/
static int tree_link_matching_nodes(X509_POLICY_LEVEL *curr,
- X509_POLICY_DATA *data)
+ X509_POLICY_DATA *data,
+ X509_POLICY_TREE *tree)
{
X509_POLICY_LEVEL *last = curr - 1;
int i, matched = 0;
@@ -253,13 +269,13 @@ static int tree_link_matching_nodes(X509_POLICY_LEVEL *curr,
X509_POLICY_NODE *node = sk_X509_POLICY_NODE_value(last->nodes, i);
if (policy_node_match(last, node, data->valid_policy)) {
- if (level_add_node(curr, data, node, NULL) == NULL)
+ if (level_add_node(curr, data, node, tree, 0) == NULL)
return 0;
matched = 1;
}
}
if (!matched && last->anyPolicy) {
- if (level_add_node(curr, data, last->anyPolicy, NULL) == NULL)
+ if (level_add_node(curr, data, last->anyPolicy, tree, 0) == NULL)
return 0;
}
return 1;
@@ -272,7 +288,8 @@ static int tree_link_matching_nodes(X509_POLICY_LEVEL *curr,
* Return value: 1 on success, 0 otherwise.
*/
static int tree_link_nodes(X509_POLICY_LEVEL *curr,
- const X509_POLICY_CACHE *cache)
+ const X509_POLICY_CACHE *cache,
+ X509_POLICY_TREE *tree)
{
int i;
@@ -280,7 +297,7 @@ static int tree_link_nodes(X509_POLICY_LEVEL *curr,
X509_POLICY_DATA *data = sk_X509_POLICY_DATA_value(cache->data, i);
/* Look for matching nodes in previous level */
- if (!tree_link_matching_nodes(curr, data))
+ if (!tree_link_matching_nodes(curr, data, tree))
return 0;
}
return 1;
@@ -311,7 +328,7 @@ static int tree_add_unmatched(X509_POLICY_LEVEL *curr,
/* Curr may not have anyPolicy */
data->qualifier_set = cache->anyPolicy->qualifier_set;
data->flags |= POLICY_DATA_FLAG_SHARED_QUALIFIERS;
- if (level_add_node(curr, data, node, tree) == NULL) {
+ if (level_add_node(curr, data, node, tree, 1) == NULL) {
policy_data_free(data);
return 0;
}
@@ -373,7 +390,7 @@ static int tree_link_any(X509_POLICY_LEVEL *curr,
}
/* Finally add link to anyPolicy */
if (last->anyPolicy &&
- level_add_node(curr, cache->anyPolicy, last->anyPolicy, NULL) == NULL)
+ level_add_node(curr, cache->anyPolicy, last->anyPolicy, tree, 0) == NULL)
return 0;
return 1;
}
@@ -555,7 +572,7 @@ static int tree_calculate_user_set(X509_POLICY_TREE *tree,
extra->qualifier_set = anyPolicy->data->qualifier_set;
extra->flags = POLICY_DATA_FLAG_SHARED_QUALIFIERS
| POLICY_DATA_FLAG_EXTRA_NODE;
- node = level_add_node(NULL, extra, anyPolicy->parent, tree);
+ node = level_add_node(NULL, extra, anyPolicy->parent, tree, 1);
}
if (!tree->user_policies) {
tree->user_policies = sk_X509_POLICY_NODE_new_null();
@@ -582,7 +599,7 @@ static int tree_evaluate(X509_POLICY_TREE *tree)
for (i = 1; i < tree->nlevel; i++, curr++) {
cache = policy_cache_set(curr->cert);
- if (!tree_link_nodes(curr, cache))
+ if (!tree_link_nodes(curr, cache, tree))
return X509_PCY_TREE_INTERNAL;
if (!(curr->flags & X509_V_FLAG_INHIBIT_ANY)

View File

@ -1,48 +0,0 @@
From b013765abfa80036dc779dd0e50602c57bb3bf95 Mon Sep 17 00:00:00 2001
From: Matt Caswell <matt@openssl.org>
Date: Tue, 7 Mar 2023 16:52:55 +0000
Subject: [PATCH] Ensure that EXFLAG_INVALID_POLICY is checked even in leaf
certs
Even though we check the leaf cert to confirm it is valid, we
later ignored the invalid flag and did not notice that the leaf
cert was bad.
Fixes: CVE-2023-0465
Reviewed-by: Hugo Landau <hlandau@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/20588)
diff --git a/crypto/x509/x509_vfy.c b/crypto/x509/x509_vfy.c
index 925fbb5412..1dfe4f9f31 100644
--- a/crypto/x509/x509_vfy.c
+++ b/crypto/x509/x509_vfy.c
@@ -1649,18 +1649,25 @@ static int check_policy(X509_STORE_CTX *ctx)
}
/* Invalid or inconsistent extensions */
if (ret == X509_PCY_TREE_INVALID) {
- int i;
+ int i, cbcalled = 0;
/* Locate certificates with bad extensions and notify callback. */
- for (i = 1; i < sk_X509_num(ctx->chain); i++) {
+ for (i = 0; i < sk_X509_num(ctx->chain); i++) {
X509 *x = sk_X509_value(ctx->chain, i);
if (!(x->ex_flags & EXFLAG_INVALID_POLICY))
continue;
+ cbcalled = 1;
if (!verify_cb_cert(ctx, x, i,
X509_V_ERR_INVALID_POLICY_EXTENSION))
return 0;
}
+ if (!cbcalled) {
+ /* Should not be able to get here */
+ X509err(X509_F_CHECK_POLICY, ERR_R_INTERNAL_ERROR);
+ return 0;
+ }
+ /* The callback ignored the error so we return success */
return 1;
}
if (ret == X509_PCY_TREE_FAILURE) {