<%# Copyright (C) 2019-2024 The Sirpdboy Team luci-theme-material: Copyright 2015 Lutty Yang luci-theme-bootstrap: Copyright 2008 Steven Barth Copyright 2008 Jo-Philipp Wich Copyright 2012 David Menting MUI: https://github.com/muicss/mui Licensed to the public under the Apache License 2.0 -%> <% local ver = require "luci.version" local sys = require "luci.sys" local util = require "luci.util" local http = require "luci.http" local disp = require "luci.dispatcher" local json = require "luci.jsonc" local fs = require "nixio.fs" local nutil = require "nixio.util" local uci = require 'luci.model.uci'.cursor() local urlencode = luci.http.protocol and luci.http.protocol.urlencode or luci.util.urlencode local boardinfo = util.ubus("system", "board") or { } local node = disp.context.dispatched local path = table.concat(disp.context.path, "-") function glob(...) local iter, code, msg = fs.glob(...) if iter then return nutil.consume(iter) else return nil, code, msg end end function getExtension(str) return str:match(".+%.(%w+)$") end http.prepare_content("text/html; charset=UTF-8") local dark_css = fs.readfile('/www/luci-static/kucat/css/dark.css') local bar='/cgi-bin/luci/admin/' local mode = 'light' local home = '' local user = '' local setbar = "1" local bgqs = '1' local ssr = "" local gohome = bar .. 'status/' ..home local gouser = bar .. 'system/' ..user local gossr = bar .. 'services/' ..ssr local background = '0' local fontd = '1.2rem' local fontz = '0.92rem' local fontx = '0.875rem' local primary_rgbbody = '248,248,248' local primary_rgbm = '45,102,147' local primary_rgbm_ts = '0.8' local primary_rgbs = '132,188,218' local primary_rgbs_ts = '0.1' local primary_opacity = '0' local bkuse = '0' local bk_use='rgba(var(--primary-rgbbody),1)' local loginbk_use = 'background: linear-gradient(0deg, rgba(var(--primary-rgbm), 1) 0%, rgba(var(--primary-rgbbody), 1) 100%)' local bklock = '1' local dayword = '0' local kucat = '' if fs.access('/etc/config/advancedplus') then kucat = 'advancedplus' elseif fs.access('/etc/config/kucat') then kucat = 'kucat' end if (kucat and kucat ~= '') then primary_rgbbody = uci:get_first(kucat, 'basic', 'primary_rgbbody') primary_rgbm = uci:get_first(kucat, 'basic', 'primary_rgbm') primary_rgbm_ts = uci:get_first(kucat, 'basic', 'primary_rgbm_ts') primary_opacity = uci:get_first(kucat, 'basic', 'primary_opacity') primary_rgbs = uci:get_first(kucat, 'basic', 'primary_rgbs') primary_rgbs_ts = uci:get_first(kucat, 'basic', 'primary_rgbs_ts') mode = uci:get_first(kucat, 'basic', 'mode') setbar = uci:get_first(kucat, 'basic', 'setbar') home = uci:get_first(kucat, 'basic', 'gohome') user = uci:get_first(kucat, 'basic', 'gouser') ssr = uci:get_first(kucat, 'basic', 'gossr') gohome = bar .. "status/" .. home gouser = bar .. "system/" .. user gossr = bar .. "services/" .. ssr background = uci:get_first(kucat, 'basic', 'background') bkuse = uci:get_first(kucat, 'basic', 'bkuse') bklock = uci:get_first(kucat, 'basic', 'bklock') fontd = uci:get_first(kucat, 'basic', 'font_d') fontz = uci:get_first(kucat, 'basic', 'font_z') fontx = uci:get_first(kucat, 'basic', 'font_x') bgqs = uci:get_first(kucat, 'basic', 'bgqs') dayword = uci:get_first(kucat, 'basic', 'dayword') end local primary_ufilter = "saturate(150%) contrast(50%) blur(" .. primary_opacity .. "px)" if primary_opacity == '0' then primary_ufilter = 'none' end local bgqs_image = '-webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent)' if bgqs == '1' then bgqs_image = 'rgba(var(--primary-rgbm),var(--primary-rgbm-ts))' end local bg_url = media..'/img/bg1.jpg' if background == '0' then math.randomseed(os.time()) local theme_dir = resource .. '/background/' if not fs.access('/www' .. resource .. '/background/') then local theme_dir = media .. '/background/' end local bgcount = 0 local currentBg = {} local bgs,attr = {} for i, f in ipairs(glob("/www" .. theme_dir .. "*")) do attr = fs.stat(f) if attr then local ext = getExtension(fs.basename(f)) if ext == "jpg" or ext == "png" or ext == "gif" then local bg = {} bg.type = ext bg.url = theme_dir .. fs.basename(f) table.insert(bgs,bg) bgcount = bgcount + 1 end end end if bgcount > 0 then currentBg = bgs[math.random(1,bgcount)] picurl = currentBg.url end else picurl = sys.exec("/usr/libexec/kucat/kucat_wallpaper") end if (picurl and picurl ~= '') then bg_url = picurl end local bg_lock = bg_url if bklock == '0' then math.randomseed(os.time()) local bk_dir = media .. "/bg/" local bkcount = 0 local currentbk = {} local bgs,attr = {} for i, f in ipairs(glob("/www" .. bk_dir .. "*")) do attr = fs.stat(f) if attr then local ext = getExtension(fs.basename(f)) if ext == "jpg" or ext == "png" or ext == "gif" then local bg = {} bg.type = ext bg.url = bk_dir .. fs.basename(f) table.insert(bgs,bg) bkcount = bkcount + 1 end end end if bkcount > 0 then currentbk = bgs[math.random(1,bkcount)] bg_lock = currentbk.url end end if dayword == '1' then showword = sys.exec("/usr/libexec/kucat/kucat_word") end if bkuse == '1' then bk_use='url('..bg_lock..') no-repeat center center fixed' loginbk_use = "background-image:url(" .. bg_url .. ")" end -%> <%=striptags( (boardinfo.hostname or "?") .. ( (node and node.title) and ' - ' .. translate(node.title) or '')) %> - LuCI - LuCI"> - LuCI"> <% if node and node.css then %> <% end -%> node-<%= path %><% else %>node-main-login<% end %>" data-page="<%= pcdata(path) %>" <% if mode ~= 'auto' then %> data-theme = "<%= mode %>" <% end -%> > <% if mode == 'auto' then %> <% end -%>
<%- if luci.sys.process.info("uid") == 0 and luci.sys.user.getuser("root") and not luci.sys.user.getpasswd("root") then -%>

<%:No password set!%>

<%:There is no password set on this router. Please configure a root password to protect the web interface.%>

<%- end -%>